:root {
  --navy: #0B1F33;
  --blue: #1F4E79;
  --teal: #0F766E;
  --bg: #F8FAFC;
  --line: #CBD5E1;
  --text: #0F172A;
  --muted: #64748B;
  --green: #DCFCE7;
  --amber: #FEF3C7;
  --red: #FEE2E2;
}
* { box-sizing: border-box; }
body { margin:0; font-family: Arial, Helvetica, sans-serif; background: var(--bg); color: var(--text); }
.header { background: var(--navy); color:white; padding:18px 24px; display:flex; justify-content:space-between; align-items:center; }
.header h1 { margin:0; font-size:22px; }
.header span { color:#CBD5E1; font-size:13px; }
.container { padding:20px 24px 48px; max-width: 1600px; margin:0 auto; }
.tabs { display:flex; gap:8px; margin:0 0 16px; flex-wrap:wrap; }
.tabs button { border:1px solid var(--line); background:white; padding:10px 14px; border-radius:8px; cursor:pointer; font-weight:600; }
.tabs button.active { background: var(--blue); color:white; border-color: var(--blue); }
.grid { display:grid; grid-template-columns: repeat(6, minmax(160px,1fr)); gap:12px; margin-bottom:18px; }
.card { background:white; border:1px solid var(--line); border-radius:12px; padding:14px; box-shadow:0 1px 2px rgba(15,23,42,.04); }
.card .label { color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.04em; }
.card .value { font-size:26px; font-weight:800; margin-top:6px; }
.rag { display:inline-block; padding:4px 10px; border-radius:999px; font-weight:700; font-size:12px; }
.rag.Green { background:var(--green); color:#166534; }
.rag.Amber { background:var(--amber); color:#92400E; }
.rag.Red { background:var(--red); color:#991B1B; }
.filters { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px; }
.filters input,.filters select { padding:9px 10px; border:1px solid var(--line); border-radius:8px; background:white; }
.table-wrap { background:white; border:1px solid var(--line); border-radius:12px; overflow:auto; }
table { width:100%; border-collapse:collapse; font-size:13px; }
th,td { border-bottom:1px solid #E2E8F0; padding:10px; vertical-align:top; }
th { background:#E2E8F0; text-align:left; white-space:nowrap; }
td.small { white-space:nowrap; }
td.work { min-width:280px; }
.inline-edit input,.inline-edit select { width:100%; padding:7px; border:1px solid var(--line); border-radius:6px; }
.inline-edit button, .action-link { background: var(--teal); color:white; border:0; padding:8px 10px; border-radius:6px; cursor:pointer; text-decoration:none; display:inline-block; }
.section-title { font-size:18px; font-weight:800; margin:24px 0 10px; }
.note { color:var(--muted); font-size:13px; margin-bottom:12px; }
.footer { color:var(--muted); font-size:12px; margin-top:24px; }
@media (max-width: 900px) { .grid { grid-template-columns: repeat(2, minmax(160px,1fr)); } }
.login-shell { min-height:100vh; display:flex; align-items:center; justify-content:center; padding:24px; background:linear-gradient(135deg,#0B1F33,#1F4E79); }
.login-card { width:100%; max-width:420px; background:white; border-radius:18px; padding:28px; box-shadow:0 24px 70px rgba(0,0,0,.22); }
.login-brand { color:var(--blue); font-weight:800; text-transform:uppercase; font-size:12px; letter-spacing:.08em; }
.login-card h1 { margin:8px 0 8px; font-size:26px; color:var(--navy); }
.login-sub,.login-note { color:var(--muted); font-size:13px; line-height:1.45; }
.login-card label { display:block; margin:14px 0 6px; font-weight:700; font-size:13px; }
.login-card input { width:100%; padding:11px 12px; border:1px solid var(--line); border-radius:10px; font-size:15px; }
button.primary, button.secondary { border:0; padding:11px 12px; border-radius:10px; font-weight:800; cursor:pointer; margin-top:14px; }
button.primary { background:var(--blue); color:white; }
button.secondary { background:#E2E8F0; color:var(--navy); }
button.full { width:100%; display:block; }
button:disabled { opacity:.55; cursor:not-allowed; }
.login-message { margin-top:14px; background:#F1F5F9; border:1px solid var(--line); border-radius:10px; padding:10px; font-size:13px; color:var(--navy); }
.userbar { display:flex; align-items:center; gap:12px; }
.userbar button { background:white; color:var(--navy); border:0; padding:8px 10px; border-radius:8px; cursor:pointer; font-weight:700; }
.toast { background:#ECFEFF; border:1px solid #67E8F9; color:#155E75; border-radius:10px; padding:10px 12px; margin:0 0 12px; font-size:13px; font-weight:700; }

/* Elegant expandable tracker layout */
.header { box-shadow:0 8px 24px rgba(11,31,51,.18); }
.header h1 { letter-spacing:-.02em; }
.container { padding-top:22px; }
.panel-filters { background:#FFFFFF; border:1px solid #E2E8F0; border-radius:16px; padding:12px; box-shadow:0 8px 24px rgba(15,23,42,.04); align-items:center; }
.panel-filters input { min-width:300px; }
.elegant-table { border-radius:18px; box-shadow:0 14px 38px rgba(15,23,42,.06); overflow:auto; }
.elegant-table table { min-width:1180px; border-collapse:separate; border-spacing:0; }
.elegant-table th { background:#F1F5F9; color:#334155; font-size:11px; letter-spacing:.07em; text-transform:uppercase; padding:12px 14px; border-bottom:1px solid #CBD5E1; }
.elegant-table td { padding:12px 14px; border-bottom:1px solid #E2E8F0; }
.compact-row { cursor:pointer; background:#fff; transition:background .16s ease, box-shadow .16s ease; }
.compact-row:hover { background:#F8FAFC; }
.compact-row.open { background:#F0F9FF; }
.expand-cell { width:48px; text-align:center; }
.expand-btn { width:30px; height:30px; border-radius:10px; border:1px solid #CBD5E1; background:#FFFFFF; color:#1F4E79; font-size:22px; line-height:23px; font-weight:900; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }
.expand-btn:hover { background:#DBEAFE; border-color:#93C5FD; }
.id-cell strong,.module-cell strong,.work-title strong { display:block; color:#0F172A; font-weight:800; }
.id-cell span,.module-cell span,.work-title span { display:block; margin-top:3px; color:#64748B; font-size:12px; line-height:1.3; }
.work-title { min-width:330px; max-width:460px; }
.work-title span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:420px; }
.summary-chip { display:inline-flex; flex-direction:column; gap:2px; background:#F8FAFC; border:1px solid #E2E8F0; border-radius:10px; padding:6px 9px; margin:0 6px 6px 0; min-width:86px; vertical-align:top; }
.summary-chip-label { color:#64748B; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.summary-chip-value { color:#0F172A; font-size:12px; font-weight:700; line-height:1.25; }
.summary-chip.danger { background:#FEF2F2; border-color:#FECACA; }
.summary-chip.danger .summary-chip-value { color:#991B1B; }
.status-pill,.bucket-pill { display:inline-flex; align-items:center; border-radius:999px; padding:5px 9px; font-size:12px; font-weight:800; margin:0 6px 6px 0; }
.status-pill { background:#E0F2FE; color:#075985; }
.bucket-pill { background:#F1F5F9; color:#334155; }
.dirty-dot { display:block; width:max-content; margin-top:6px; background:#FFF7ED; color:#C2410C; border:1px solid #FDBA74; border-radius:999px; padding:3px 8px; font-size:11px; font-weight:800; }
.detail-row td { background:#F8FAFC; padding:0 14px 18px 62px; }
.detail-panel { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr); gap:18px; background:#FFFFFF; border:1px solid #CBD5E1; border-top:0; border-radius:0 0 18px 18px; padding:18px; box-shadow:inset 4px 0 0 #1F4E79; }
.detail-title { font-size:15px; font-weight:900; color:#0B1F33; margin-bottom:10px; }
.small-title { margin-top:18px; }
.detail-meta { margin-bottom:8px; }
.detail-text { color:#334155; font-size:13px; line-height:1.55; white-space:pre-wrap; background:#F8FAFC; border:1px dashed #CBD5E1; border-radius:14px; padding:12px; }
.phase-grid { display:grid; grid-template-columns:repeat(3,minmax(150px,1fr)); gap:8px; }
.phase-tile { background:#F8FAFC; border:1px solid #E2E8F0; border-radius:12px; padding:9px 10px; }
.phase-label { color:#1F4E79; font-size:12px; font-weight:900; }
.phase-dates { color:#475569; font-size:12px; margin-top:3px; }
.edit-card { background:linear-gradient(180deg,#F8FAFC,#FFFFFF); border:1px solid #CBD5E1; border-radius:16px; padding:16px; align-self:start; box-shadow:0 12px 28px rgba(15,23,42,.06); }
.edit-title { font-size:15px; font-weight:900; color:#0B1F33; margin-bottom:12px; }
.edit-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.edit-field { display:block; margin:0; }
.edit-field span { display:block; color:#64748B; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; margin-bottom:5px; }
.edit-field input,.edit-field select { height:38px; }
.edit-field:nth-child(5),.edit-field:nth-child(6) { grid-column:span 2; }
.edit-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:14px; }
.small-btn { margin:0!important; padding:9px 12px!important; border-radius:10px!important; }
@media (max-width: 1100px) {
  .detail-panel { grid-template-columns:1fr; padding:14px; }
  .detail-row td { padding-left:14px; }
  .phase-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 700px) {
  .panel-filters input { min-width:100%; }
  .phase-grid,.edit-grid { grid-template-columns:1fr; }
  .edit-field:nth-child(5),.edit-field:nth-child(6) { grid-column:span 1; }
}


/* Dashboard v2 analytics */
.dashboard-hero {
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:stretch;
  background:linear-gradient(135deg,#0B1F33,#1F4E79);
  color:#FFFFFF;
  border-radius:20px;
  padding:24px;
  margin-bottom:18px;
  box-shadow:0 18px 44px rgba(15,23,42,.16);
}
.dashboard-hero h2 { margin:4px 0 8px; font-size:24px; letter-spacing:-.02em; }
.dashboard-hero p { margin:0; color:#DDEBFA; max-width:920px; line-height:1.55; font-size:14px; }
.eyebrow { color:#93E4D3; font-size:12px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.hero-rag { min-width:170px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); border-radius:16px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; }
.hero-rag .rag { font-size:18px; padding:7px 18px; }
.hero-rag span:last-child { font-size:12px; color:#DDEBFA; }

.kpi-card .kpi-sub { color:var(--muted); font-size:11px; margin-top:6px; line-height:1.35; }
.analytics-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(360px,.6fr); gap:16px; margin:16px 0; }
.analytics-card { background:#FFFFFF; border:1px solid #D9E3EF; border-radius:18px; padding:16px; box-shadow:0 14px 34px rgba(15,23,42,.06); overflow:hidden; }
.analytics-card.wide { min-width:0; }
.legend { display:flex; gap:14px; color:#475569; font-size:12px; font-weight:800; margin:-4px 0 12px; }
.legend span::before { content:""; display:inline-block; width:18px; height:7px; border-radius:99px; margin-right:6px; vertical-align:middle; }
.legend-planned::before { background:#93C5FD; }
.legend-actual::before { background:#0F766E; }

.dual-row { display:grid; grid-template-columns:220px minmax(280px,1fr) 82px; gap:14px; align-items:center; padding:10px 0; border-bottom:1px solid #EEF2F7; }
.dual-row:last-child { border-bottom:0; }
.dual-label strong { display:block; font-size:13px; color:#0F172A; }
.dual-label span { display:block; color:#64748B; font-size:11px; margin-top:3px; line-height:1.35; }
.bar-box { display:flex; flex-direction:column; gap:6px; }
.bar-line { position:relative; height:18px; min-width:34px; border-radius:999px; display:flex; align-items:center; justify-content:flex-end; transition:width .2s ease; }
.bar-line span { font-size:10px; font-weight:900; color:#0F172A; padding-right:6px; }
.bar-line.planned { background:#DBEAFE; border:1px solid #93C5FD; }
.bar-line.actual { background:#CCFBF1; border:1px solid #2DD4BF; }
.dual-right { text-align:right; }
.mini-count { display:grid; grid-template-columns:1fr 130px 38px; gap:10px; align-items:center; padding:8px 0; border-bottom:1px solid #EEF2F7; font-size:13px; }
.mini-count:last-child { border-bottom:0; }
.mini-count span { color:#334155; font-weight:700; }
.mini-track { background:#E2E8F0; border-radius:999px; height:8px; overflow:hidden; }
.mini-track div { background:#1F4E79; height:8px; border-radius:999px; }
.mini-count b { text-align:right; color:#0F172A; }
.analytics-card hr { border:0; border-top:1px dashed #CBD5E1; margin:10px 0; }

.module-cards { display:grid; grid-template-columns:repeat(4,minmax(220px,1fr)); gap:12px; }
.module-card { background:#FFFFFF; border:1px solid #D9E3EF; border-radius:16px; padding:14px; box-shadow:0 10px 26px rgba(15,23,42,.05); }
.module-head { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:10px; }
.module-head strong { color:#0B1F33; }
.module-bars { display:grid; gap:5px; font-size:12px; color:#334155; font-weight:700; }
.module-foot { margin-top:10px; padding-top:10px; border-top:1px dashed #CBD5E1; font-size:11px; color:#64748B; line-height:1.4; }

.responsibility-grid { display:grid; grid-template-columns:repeat(3,minmax(260px,1fr)); gap:12px; margin-bottom:18px; }
.resp-card { background:#FFFFFF; border:1px solid #D9E3EF; border-radius:16px; padding:14px; box-shadow:0 10px 26px rgba(15,23,42,.05); }
.resp-card strong { display:block; color:#0B1F33; margin-bottom:5px; }
.resp-card > span { display:block; color:#64748B; font-size:12px; margin-bottom:10px; }
.resp-metrics { display:flex; flex-wrap:wrap; gap:6px; }
.pill { display:inline-flex; border-radius:999px; padding:5px 9px; font-size:11px; font-weight:900; background:#F1F5F9; color:#334155; margin:0 4px 6px 0; }
.pill.red { background:#FEE2E2; color:#991B1B; }
.pill.amber { background:#FEF3C7; color:#92400E; }
.pill.blue { background:#DBEAFE; color:#1E3A8A; }
.pill.grey { background:#E2E8F0; color:#334155; }

.phase-table table { min-width:1320px; }
.phase-row .work-title span { white-space:normal; }
.phase-detail-panel { grid-template-columns:minmax(0,1.25fr) minmax(420px,.75fr); }
.io-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.io-block { min-width:0; }
.io-title { font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; color:#1F4E79; margin:10px 0 6px; }
.io-block .detail-text { max-height:210px; overflow:auto; }
.phase-detail-row .edit-grid { grid-template-columns:1fr 1fr; }
.phase-detail-row .edit-field:nth-child(5),
.phase-detail-row .edit-field:nth-child(6),
.phase-detail-row .edit-field:nth-child(7),
.phase-detail-row .edit-field:nth-child(8),
.phase-detail-row .edit-field:nth-child(10),
.phase-detail-row .edit-field:nth-child(11) { grid-column:span 2; }

@media (max-width: 1300px) {
  .grid { grid-template-columns: repeat(4, minmax(160px,1fr)); }
  .analytics-grid { grid-template-columns:1fr; }
  .module-cards { grid-template-columns:repeat(3,minmax(220px,1fr)); }
  .responsibility-grid { grid-template-columns:repeat(2,minmax(260px,1fr)); }
}
@media (max-width: 900px) {
  .dashboard-hero { flex-direction:column; }
  .dual-row { grid-template-columns:1fr; }
  .module-cards { grid-template-columns:1fr; }
  .responsibility-grid { grid-template-columns:1fr; }
  .io-grid { grid-template-columns:1fr; }
}

/* ==========================================================
   Modern UX Refresh v3 — clean cockpit UI, chip filters, cards
   ========================================================== */
:root {
  --bg: #f3f7fb;
  --surface: rgba(255,255,255,.86);
  --surface-solid: #ffffff;
  --ink: #0b1220;
  --muted: #667085;
  --soft: #eef4fb;
  --line: #d7e2ee;
  --primary: #155e75;
  --primary-2: #0f766e;
  --accent: #2dd4bf;
  --shadow: 0 18px 48px rgba(15, 23, 42, .08);
  --shadow-soft: 0 10px 28px rgba(15, 23, 42, .055);
  --radius-xl: 24px;
  --radius-lg: 18px;
  --radius-md: 12px;
}
html { scroll-behavior: smooth; }
body {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  color: var(--ink);
  background:
    radial-gradient(circle at top left, rgba(45, 212, 191, .18), transparent 30rem),
    radial-gradient(circle at 85% 0%, rgba(59, 130, 246, .14), transparent 34rem),
    linear-gradient(180deg, #f8fbff 0%, #eef5fb 100%);
}
.header {
  position: sticky;
  top: 0;
  z-index: 30;
  padding: 18px 28px;
  background:
    linear-gradient(135deg, rgba(8, 27, 45, .98), rgba(13, 65, 82, .96)),
    radial-gradient(circle at 20% 0%, rgba(45,212,191,.24), transparent 30rem);
  border-bottom: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 18px 52px rgba(15,23,42,.20);
  backdrop-filter: blur(18px);
}
.header h1 {
  font-size: 20px;
  font-weight: 850;
  letter-spacing: -.035em;
}
.header span { color: rgba(255,255,255,.72); }
.userbar {
  padding: 6px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.08);
  border-radius: 999px;
}
.userbar span { padding-left: 12px; font-weight: 650; }
.userbar button {
  border-radius: 999px;
  padding: 9px 14px;
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
}
.container {
  max-width: 1520px;
  padding: 22px 26px 56px;
}
.workspace-top {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom: 18px;
}
.modern-tabs {
  padding: 6px;
  background: rgba(255,255,255,.76);
  border: 1px solid rgba(215,226,238,.9);
  border-radius: 999px;
  box-shadow: var(--shadow-soft);
  backdrop-filter: blur(12px);
}
.modern-tabs button,
.tabs button {
  border: 0;
  background: transparent;
  color: #344054;
  padding: 11px 16px;
  border-radius: 999px;
  font-weight: 800;
  letter-spacing: -.01em;
  transition: all .18s ease;
}
.modern-tabs button:hover,
.tabs button:hover { background: #eef6fb; transform: translateY(-1px); }
.modern-tabs button.active,
.tabs button.active {
  background: linear-gradient(135deg, #0f766e, #155e75);
  color:#fff;
  box-shadow: 0 10px 24px rgba(15, 118, 110, .26);
}
.scope-toolbar {
  min-width: 340px;
  display:flex;
  align-items:center;
  gap:12px;
  background: rgba(255,255,255,.76);
  border:1px solid rgba(215,226,238,.94);
  border-radius: 20px;
  padding: 10px 12px;
  box-shadow: var(--shadow-soft);
  backdrop-filter: blur(12px);
}
.scope-hint {
  white-space: nowrap;
  font-size: 12px;
  font-weight: 800;
  color: #667085;
  padding: 8px 10px;
  border-left: 1px solid #d7e2ee;
}
.dashboard-hero {
  position: relative;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.14);
  background:
    radial-gradient(circle at 15% 10%, rgba(45,212,191,.28), transparent 23rem),
    radial-gradient(circle at 88% 0%, rgba(59,130,246,.22), transparent 24rem),
    linear-gradient(135deg, #071827, #0f3b46 58%, #0f766e);
  border-radius: 28px;
  padding: 28px;
  box-shadow: 0 24px 70px rgba(15,23,42,.20);
}
.dashboard-hero:after {
  content:"";
  position:absolute;
  right:-70px;
  top:-70px;
  width:220px;
  height:220px;
  border-radius:999px;
  border: 34px solid rgba(255,255,255,.07);
}
.dashboard-hero h2 {
  font-size: 28px;
  line-height: 1.16;
  max-width: 940px;
}
.eyebrow {
  color:#99f6e4;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.16);
  display: inline-flex;
  width: fit-content;
  padding: 6px 10px;
  border-radius: 999px;
}
.hero-rag {
  min-width: 190px;
  backdrop-filter: blur(12px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16);
}
.grid {
  grid-template-columns: repeat(6, minmax(160px, 1fr));
  gap: 14px;
}
.card,
.analytics-card,
.module-card,
.resp-card,
.panel-filters,
.table-wrap {
  border: 1px solid rgba(215,226,238,.95);
  background: var(--surface);
  box-shadow: var(--shadow-soft);
  backdrop-filter: blur(12px);
}
.card { border-radius: 20px; padding: 16px; }
.kpi-card { position:relative; overflow:hidden; }
.kpi-card:before {
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:4px;
  height:100%;
  background: linear-gradient(180deg, #2dd4bf, #60a5fa);
  opacity:.75;
}
.card .label { font-size:11px; font-weight:850; color:#667085; }
.card .value { font-size:28px; letter-spacing:-.04em; }
.rag {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding: 6px 11px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.55);
}
.rag.Green { background:#dcfce7; color:#166534; }
.rag.Amber { background:#fef3c7; color:#92400e; }
.rag.Red { background:#fee2e2; color:#991b1b; }
.rag.Green:before { content:"●"; color:#22c55e; }
.rag.Amber:before { content:"●"; color:#f59e0b; }
.rag.Red:before { content:"●"; color:#ef4444; }
.modern-filters {
  display:block;
  border-radius: 24px;
  padding: 14px;
  margin-bottom: 14px;
}
.filter-topline {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom: 12px;
}
.search-wrap {
  flex:1;
  min-width: 280px;
  display:flex;
  align-items:center;
  gap:9px;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius: 16px;
  padding: 0 12px;
  box-shadow: inset 0 1px 0 rgba(15,23,42,.02);
}
.search-wrap span { color:#94a3b8; font-size:18px; font-weight:900; }
.search-wrap input {
  min-width: 0!important;
  width: 100%;
  height: 44px;
  border:0!important;
  outline:0;
  background:transparent;
  padding: 0!important;
  font-size: 14px;
}
.filter-rows { display:flex; flex-direction:column; gap:10px; }
.chip-filter {
  display:flex;
  align-items:flex-start;
  gap:10px;
  flex-wrap:wrap;
}
.chip-filter-label {
  width: 92px;
  min-width:92px;
  height: 34px;
  display:flex;
  align-items:center;
  color:#667085;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.chip-filter.compact .chip-filter-label { width:auto; min-width:auto; }
.chip-options { display:flex; flex-wrap:wrap; gap:7px; min-width:0; flex:1; }
.chip-btn {
  border: 1px solid #d7e2ee;
  background: #fff;
  color: #344054;
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 12px;
  line-height:1;
  font-weight: 850;
  cursor: pointer;
  transition: all .16s ease;
}
.chip-btn:hover {
  transform: translateY(-1px);
  border-color:#99f6e4;
  background:#f0fdfa;
}
.chip-btn.active {
  color:#fff;
  border-color: transparent;
  background: linear-gradient(135deg, #0f766e, #155e75);
  box-shadow: 0 10px 22px rgba(15,118,110,.22);
}
.chip-btn.green.active { background: linear-gradient(135deg, #16a34a, #15803d); }
.chip-btn.amber.active { background: linear-gradient(135deg, #d97706, #b45309); }
.chip-btn.red.active { background: linear-gradient(135deg, #dc2626, #991b1b); }
.export-btn,
.action-link {
  border-radius: 14px!important;
  padding: 12px 16px!important;
  font-weight: 900!important;
  background: linear-gradient(135deg, #0f766e, #155e75)!important;
  box-shadow: 0 12px 24px rgba(15,118,110,.18);
}
.note {
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(215,226,238,.8);
  border-radius: 14px;
  padding: 10px 12px;
  color: #667085;
}
.elegant-table {
  border-radius: 24px;
  box-shadow: var(--shadow);
  overflow:auto;
}
.elegant-table table { border-spacing:0 0; }
.elegant-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #edf3f9;
  color: #475467;
  font-weight: 900;
  padding: 13px 14px;
}
.elegant-table td {
  padding: 14px;
  background: rgba(255,255,255,.92);
}
.compact-row:hover td { background:#f8fcff; }
.compact-row.open td { background:#eff9ff; }
.expand-btn {
  border-radius: 999px;
  background:#fff;
  color:#0f766e;
  box-shadow: 0 8px 18px rgba(15,23,42,.06);
}
.summary-chip,
.status-pill,
.bucket-pill,
.pill {
  border: 1px solid rgba(215,226,238,.95);
  box-shadow: 0 4px 10px rgba(15,23,42,.035);
}
.status-pill { background:#e0f2fe; color:#0369a1; }
.bucket-pill { background:#f1f5f9; color:#475467; }
.detail-panel {
  border-radius: 0 0 24px 24px;
  border-color: #d7e2ee;
  box-shadow: inset 5px 0 0 #2dd4bf, 0 18px 40px rgba(15,23,42,.06);
}
.edit-card {
  border-radius: 22px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border-color:#d7e2ee;
}
.edit-field input,
.edit-field select,
.filters input,
.filters select,
.login-card input {
  border-radius: 12px;
  border-color:#d7e2ee;
}
button.primary,
button.secondary,
.small-btn {
  border-radius: 14px!important;
}
button.primary { background: linear-gradient(135deg, #0f766e, #155e75); }
button.secondary { background:#eef4fb; }
.analytics-grid { gap:18px; }
.analytics-card { border-radius: 24px; padding: 18px; }
.dual-row { grid-template-columns: 230px minmax(280px,1fr) 92px; }
.bar-line { height: 20px; }
.bar-line.planned { background:#dbeafe; border-color:#93c5fd; }
.bar-line.actual { background:#ccfbf1; border-color:#5eead4; }
.mini-track { height: 10px; background:#e7eef6; }
.mini-track div { height: 10px; background: linear-gradient(90deg,#0f766e,#2dd4bf); }
.module-cards { gap:14px; }
.module-card,
.resp-card { border-radius: 22px; transition: all .16s ease; }
.module-card:hover,
.resp-card:hover { transform: translateY(-2px); box-shadow: var(--shadow); }
.footer {
  text-align:center;
  margin-top: 30px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.52);
  border: 1px solid rgba(215,226,238,.8);
}
.login-shell {
  background:
    radial-gradient(circle at 12% 12%, rgba(45,212,191,.26), transparent 28rem),
    radial-gradient(circle at 90% 5%, rgba(59,130,246,.25), transparent 28rem),
    linear-gradient(135deg,#071827,#0f3b46 58%,#0f766e);
}
.login-card {
  border: 1px solid rgba(255,255,255,.42);
  box-shadow: 0 28px 80px rgba(0,0,0,.25);
}
.login-brand {
  display:inline-flex;
  border-radius:999px;
  padding:6px 10px;
  background:#ecfeff;
  color:#155e75;
}
@media (max-width: 1220px) {
  .workspace-top { flex-direction:column; }
  .scope-toolbar { min-width:0; width:100%; }
  .grid { grid-template-columns: repeat(3, minmax(160px,1fr)); }
}
@media (max-width: 760px) {
  .header { align-items:flex-start; flex-direction:column; gap:12px; }
  .userbar { width:100%; justify-content:space-between; }
  .grid { grid-template-columns: repeat(2, minmax(140px,1fr)); }
  .filter-topline { flex-direction:column; align-items:stretch; }
  .chip-filter { display:block; }
  .chip-filter-label { width:auto; min-width:0; height:auto; margin-bottom:8px; }
  .scope-toolbar { display:block; }
  .scope-hint { border-left:0; border-top:1px solid #d7e2ee; margin-top:8px; }
}

/* ==========================================================
   Enterprise dashboard — compact, executive, chart-led UI
   ========================================================== */
body {
  background:
    radial-gradient(circle at 8% -10%, rgba(20, 184, 166, .16), transparent 26rem),
    radial-gradient(circle at 95% 0%, rgba(59, 130, 246, .12), transparent 24rem),
    linear-gradient(180deg, #f7fbff 0%, #eef4f8 100%);
}
.header.compact-header,
.header {
  min-height: unset !important;
  padding: 14px 28px !important;
  background: rgba(7, 27, 51, .96) !important;
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 14px 35px rgba(2, 8, 23, .16);
}
.header h1 { font-size: 20px !important; line-height: 1.15; margin: 0 0 3px 0 !important; letter-spacing: -.02em; }
.header span { font-size: 12px !important; opacity: .88; }
.userbar { gap: 10px !important; align-items: center; }
.userbar button { border-radius: 999px !important; padding: 8px 14px !important; font-weight: 800; }
.container { max-width: 1480px !important; padding: 18px 24px 36px !important; }
.workspace-top {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  position: sticky; top: 0; z-index: 20;
  padding: 10px 12px; margin-bottom: 16px;
  border: 1px solid rgba(207, 220, 234, .9);
  border-radius: 18px;
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(18px);
  box-shadow: 0 12px 32px rgba(15, 23, 42, .06);
}
.modern-tabs { display:flex; gap:6px; flex-wrap:nowrap; overflow-x:auto; padding:0; margin:0; }
.modern-tabs button {
  border: 0 !important;
  background: transparent !important;
  color: #334155 !important;
  padding: 10px 14px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  white-space: nowrap;
}
.modern-tabs button.active {
  background: linear-gradient(135deg, #0f766e, #155e75) !important;
  color: #fff !important;
  box-shadow: 0 10px 25px rgba(15, 118, 110, .25);
}
.scope-toolbar { display:flex; align-items:center; gap:10px; min-width: 340px; justify-content:flex-end; }
.scope-hint { font-size: 12px; color:#64748b; white-space:nowrap; }
.scope-toolbar .chip-filter { margin:0; }
.scope-toolbar .chip-filter-label { display:none; }
.scope-toolbar .chip-options { background:#eef6fb; border-radius: 999px; padding: 4px; border: 1px solid #dbe7f3; }
.scope-toolbar .chip-btn { padding: 8px 13px !important; border-radius: 999px !important; }
.scope-ribbon {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding: 16px 18px; margin-bottom: 14px;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(240,253,250,.92));
  border: 1px solid #dce9f5;
  border-radius: 20px;
  box-shadow: 0 16px 42px rgba(15, 23, 42, .06);
}
.scope-ribbon strong { display:block; font-size: 22px; letter-spacing:-.03em; }
.scope-ribbon span { display:block; color:#667085; margin-top:3px; font-size:13px; }
.scope-badge {
  padding: 10px 14px; border-radius: 999px;
  background: #062c45; color:#e9fbff; font-weight: 900; font-size: 13px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.12);
}
.metric-grid.compact, .metric-grid {
  display:grid; grid-template-columns: repeat(6, minmax(150px, 1fr)); gap: 12px; margin: 12px 0 16px;
}
.metric-card {
  background: rgba(255,255,255,.9);
  border: 1px solid #dbe7f3;
  border-radius: 18px;
  padding: 15px 15px 13px;
  box-shadow: 0 10px 26px rgba(15,23,42,.055);
  min-height: 92px;
}
.metric-card.danger { border-color: rgba(239,68,68,.25); background: linear-gradient(180deg,#fff,#fff7f7); }
.metric-card.ok { border-color: rgba(34,197,94,.22); background: linear-gradient(180deg,#fff,#f6fff8); }
.metric-label { color:#64748b; text-transform:uppercase; letter-spacing:.06em; font-size:11px; font-weight:900; }
.metric-value { margin-top:8px; font-size:28px; line-height:1; font-weight:950; letter-spacing:-.04em; color:#071b33; }
.metric-sub { margin-top:8px; font-size:12px; color:#64748b; }
.rag-kpi .metric-value { font-size:16px; }
.rag-summary-grid {
  display:grid; grid-template-columns: repeat(4, minmax(180px, 1fr)); gap: 12px; margin: 8px 0 12px;
}
.rag-counter {
  border-radius: 20px; padding: 15px 16px;
  border: 1px solid #dbe7f3;
  background:#fff; box-shadow: 0 12px 28px rgba(15,23,42,.055);
}
.rag-counter.green { background: linear-gradient(135deg,#f0fdf4,#ffffff); border-color:#bbf7d0; }
.rag-counter.amber { background: linear-gradient(135deg,#fffbeb,#ffffff); border-color:#fde68a; }
.rag-counter.red { background: linear-gradient(135deg,#fef2f2,#ffffff); border-color:#fecaca; }
.rag-counter-top { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.rag-counter-top span { color:#475569; font-weight:900; font-size:13px; }
.rag-counter-top b { font-size:32px; letter-spacing:-.04em; }
.rag-counter-split { margin-top:8px; display:flex; gap:8px; flex-wrap:wrap; }
.rag-counter-split span { background:rgba(255,255,255,.7); border:1px solid rgba(148,163,184,.25); border-radius:999px; padding:5px 8px; font-size:12px; color:#475569; }
.chart-grid { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 14px 0; }
.chart-grid.top { grid-template-columns: 1.05fr 1.25fr 1.2fr; }
.chart-grid.wide-left { grid-template-columns: 2fr 1fr; }
.chart-card {
  background: rgba(255,255,255,.92);
  border:1px solid #dbe7f3;
  border-radius: 22px;
  padding: 16px;
  box-shadow: 0 16px 42px rgba(15, 23, 42, .065);
  overflow:hidden;
}
.chart-card.full { grid-column: 1 / -1; }
.chart-card.wide { min-height: 360px; }
.chart-card-head { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom: 12px; }
.chart-card h3 { margin:0; font-size:16px; letter-spacing:-.02em; color:#0f172a; }
.chart-card p { margin:4px 0 0; color:#64748b; font-size:12px; line-height:1.4; }
.donut-wrap { display:flex; align-items:center; justify-content:center; gap:20px; min-height:210px; }
.donut {
  width: 170px; height: 170px; border-radius:50%;
  background: conic-gradient(#22c55e 0 calc(var(--green) * 1%), #f59e0b calc(var(--green) * 1%) calc((var(--green) + var(--amber)) * 1%), #ef4444 calc((var(--green) + var(--amber)) * 1%) 100%);
  display:grid; place-items:center; box-shadow: inset 0 0 0 1px rgba(0,0,0,.04), 0 18px 36px rgba(15,23,42,.10);
}
.donut-hole { width: 108px; height:108px; border-radius:50%; background:#fff; display:grid; place-items:center; align-content:center; box-shadow: inset 0 0 0 1px #e5edf6; }
.donut-hole strong { font-size:28px; letter-spacing:-.04em; }
.donut-hole span { font-size:12px; color:#64748b; font-weight:800; }
.donut-legend { display:grid; gap:10px; min-width:120px; }
.donut-legend span { font-size:13px; font-weight:850; color:#334155; display:flex; align-items:center; gap:8px; }
.donut-legend span::before { content:''; width:10px; height:10px; border-radius:50%; display:inline-block; }
.green-dot::before { background:#22c55e; } .amber-dot::before { background:#f59e0b; } .red-dot::before { background:#ef4444; }
.progress-compare { display:grid; grid-template-columns: 1fr 1fr 1fr; align-items:center; gap:14px; min-height:210px; }
.progress-ring {
  --pct: 0;
  width: 132px; height:132px; border-radius:50%; margin:auto;
  background: conic-gradient(#0ea5e9 0 calc(var(--pct) * 1%), #e6eef7 0 100%);
  display:grid; place-items:center; align-content:center; position:relative;
}
.progress-ring::after { content:''; position:absolute; inset:13px; border-radius:50%; background:#fff; box-shadow: inset 0 0 0 1px #e5edf6; }
.progress-ring strong, .progress-ring span { position:relative; z-index:1; }
.progress-ring strong { font-size:24px; letter-spacing:-.04em; }
.progress-ring span { color:#64748b; font-size:12px; font-weight:850; }
.actual-ring { background: conic-gradient(#0f766e 0 calc(var(--pct) * 1%), #e6eef7 0 100%); }
.variance-tile { border-radius:18px; background:#f8fafc; border:1px solid #e3edf7; padding:16px; text-align:center; }
.variance-tile span { display:block; color:#64748b; font-weight:900; font-size:12px; text-transform:uppercase; letter-spacing:.05em; }
.variance-tile b { display:block; margin:8px 0; font-size:32px; letter-spacing:-.05em; }
.variance-tile small { color:#64748b; }
.bar-list { display:grid; gap:10px; }
.bar-list-row { display:grid; grid-template-columns: 145px 1fr 44px; gap:10px; align-items:center; }
.bar-list-label { color:#334155; font-size:13px; font-weight:800; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bar-list-track { height:11px; background:#edf3f8; border-radius:999px; overflow:hidden; }
.bar-list-track span { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#0f766e,#38bdf8); }
.bar-list-row b { font-size:13px; text-align:right; color:#0f172a; }
.module-rag-chart { display:grid; gap:12px; max-height:520px; overflow:auto; padding-right:4px; }
.module-rag-row { display:grid; grid-template-columns: 118px minmax(170px,1fr) 132px; gap:12px; align-items:center; padding:10px; border-radius:16px; background:#f8fbfe; border:1px solid #e4edf6; }
.module-rag-label strong { display:block; font-size:13px; }
.module-rag-label span { color:#64748b; font-size:12px; }
.stacked-rag { display:flex; height:12px; border-radius:999px; overflow:hidden; background:#e5edf6; }
.stacked-rag .seg { display:block; min-width: 2px; }
.stacked-rag .green { background:#22c55e; }
.stacked-rag .amber { background:#f59e0b; }
.stacked-rag .red { background:#ef4444; }
.module-rag-counts { display:flex; gap:5px; align-items:center; justify-content:flex-end; }
.module-rag-counts .g,.module-rag-counts .a,.module-rag-counts .r { min-width:24px; text-align:center; border-radius:999px; padding:3px 6px; font-size:11px; font-weight:900; }
.module-rag-counts .g { background:#dcfce7; color:#166534; } .module-rag-counts .a { background:#fef3c7; color:#92400e; } .module-rag-counts .r { background:#fee2e2; color:#991b1b; }
.dual-row { grid-template-columns: 210px 1fr 72px !important; gap:14px !important; padding:10px 0 !important; border-bottom:1px solid #eef3f8; }
.dual-row:last-child { border-bottom:0; }
.dual-label strong { font-size:13px; }
.dual-label span { color:#64748b; font-size:12px; }
.bar-box { gap:5px; }
.bar-line { height:18px !important; border-radius:999px !important; }
.bar-line span { font-size:10px !important; }
.responsibility-modern { display:grid; gap:10px; }
.resp-line { display:grid; grid-template-columns: 260px minmax(180px,1fr) 320px; gap:12px; align-items:center; padding:10px 12px; border-radius:16px; background:#f8fbfe; border:1px solid #e4edf6; }
.resp-name strong { display:block; }
.resp-name span { color:#64748b; font-size:12px; }
.resp-badges { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.empty-state { color:#64748b; background:#f8fafc; border:1px dashed #cbd5e1; border-radius:16px; padding:18px; text-align:center; }
.panel-filters.modern-filters {
  background:rgba(255,255,255,.9) !important;
  border:1px solid #dbe7f3 !important;
  border-radius:20px !important;
  box-shadow:0 12px 30px rgba(15,23,42,.055) !important;
  padding:12px !important;
  display:grid !important;
  gap:10px !important;
}
.filter-topline { display:flex; align-items:center; gap:12px; justify-content:space-between; }
.search-wrap { flex:1; display:flex; align-items:center; gap:8px; background:#f8fbfe; border:1px solid #dbe7f3; border-radius:999px; padding:0 12px; min-width:280px; }
.search-wrap span { color:#64748b; font-weight:900; }
.search-wrap input { border:0 !important; background:transparent !important; box-shadow:none !important; width:100%; min-height:42px; outline:0; }
.export-btn { border-radius:999px !important; padding:11px 15px !important; white-space:nowrap; }
.filter-rows {
  display:flex !important;
  gap:10px !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  padding:2px 0 4px !important;
}
.chip-filter { display:flex; align-items:center; gap:7px; background:#f8fbfe; border:1px solid #dbe7f3; padding:5px; border-radius:999px; white-space:nowrap; }
.chip-filter-label { font-size:11px !important; font-weight:950 !important; color:#64748b !important; text-transform:uppercase; letter-spacing:.05em; padding-left:7px; }
.chip-options { display:flex; gap:4px; align-items:center; flex-wrap:nowrap; }
.chip-btn {
  border:0 !important; background:transparent !important; color:#475569 !important;
  padding:8px 11px !important; border-radius:999px !important;
  font-size:12px !important; font-weight:900 !important; box-shadow:none !important;
}
.chip-btn.active { background:#071b33 !important; color:#fff !important; }
.chip-btn.green.active { background:#16a34a !important; } .chip-btn.amber.active { background:#d97706 !important; } .chip-btn.red.active { background:#dc2626 !important; }
.elegant-table table { border-collapse:separate !important; border-spacing:0 8px !important; }
.elegant-table thead th { background:transparent !important; border:0 !important; color:#64748b !important; font-size:11px !important; text-transform:uppercase; letter-spacing:.05em; }
.elegant-table tbody tr.compact-row { box-shadow:0 8px 24px rgba(15,23,42,.04); }
.elegant-table tbody tr.compact-row td { background:#fff !important; border-top:1px solid #e6eef7 !important; border-bottom:1px solid #e6eef7 !important; }
.elegant-table tbody tr.compact-row td:first-child { border-left:1px solid #e6eef7 !important; border-radius:14px 0 0 14px; }
.elegant-table tbody tr.compact-row td:last-child { border-right:1px solid #e6eef7 !important; border-radius:0 14px 14px 0; }
.loading-panel { background:#fff; border:1px solid #dbe7f3; border-radius:20px; padding:24px; color:#64748b; }
.footer { color:#64748b !important; text-align:center; margin-top:22px; }
@media (max-width: 1180px) {
  .metric-grid.compact, .metric-grid { grid-template-columns: repeat(3, 1fr); }
  .chart-grid, .chart-grid.top, .chart-grid.wide-left { grid-template-columns:1fr; }
  .resp-line { grid-template-columns:1fr; }
  .workspace-top { flex-direction:column; align-items:stretch; }
  .scope-toolbar { justify-content:flex-start; min-width:0; }
}
@media (max-width: 720px) {
  .container { padding:14px !important; }
  .header { padding:12px 16px !important; flex-direction:column; align-items:flex-start !important; gap:8px; }
  .metric-grid.compact, .metric-grid, .rag-summary-grid { grid-template-columns:1fr; }
  .progress-compare, .donut-wrap { grid-template-columns:1fr; flex-direction:column; }
  .filter-topline { flex-direction:column; align-items:stretch; }
  .search-wrap { min-width:0; }
  .module-rag-row { grid-template-columns:1fr; }
  .dual-row { grid-template-columns:1fr !important; }
}

/* === V5 readability + multiselect refinement === */
.refined-filters {
  padding: 16px;
  border-radius: 22px;
}
.filter-topline {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.toolbar-actions {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.select-filter-grid {
  display:grid;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  gap:14px;
  margin-top:14px;
}
.select-filter-grid-three {
  grid-template-columns: repeat(3, minmax(220px, 1fr));
}
.multi-select {
  position:relative;
}
.multi-select-label {
  display:block;
  margin:0 0 7px;
  color:#64748b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.multi-select-trigger {
  width:100%;
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:0 14px;
  box-shadow:0 8px 22px rgba(15,23,42,.04);
  color:#0f172a;
  cursor:pointer;
}
.multi-select-trigger.open,
.multi-select-trigger:hover {
  border-color:#93c5fd;
  box-shadow:0 12px 26px rgba(59,130,246,.12);
}
.multi-select-summary {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:700;
}
.multi-select-caret { color:#64748b; font-size:16px; }
.multi-select-menu {
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 8px);
  z-index:25;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:16px;
  box-shadow:0 24px 48px rgba(15,23,42,.14);
  padding:10px;
  max-height:280px;
  overflow:auto;
}
.multi-select-actions {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:4px 4px 10px;
  margin-bottom:6px;
  border-bottom:1px solid #edf2f7;
  color:#64748b;
  font-size:12px;
  font-weight:700;
}
.multi-select-actions button {
  border:0;
  background:#eff6ff;
  color:#1d4ed8;
  border-radius:999px;
  padding:6px 10px;
  font-weight:800;
  cursor:pointer;
}
.multi-select-option {
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 8px;
  border-radius:10px;
  cursor:pointer;
  color:#0f172a;
  font-size:14px;
}
.multi-select-option:hover { background:#f8fafc; }
.multi-select-option input { accent-color:#0f766e; width:16px; height:16px; }

.scope-toolbar {
  gap:14px;
  flex-wrap:wrap;
}
.scope-toolbar .chip-filter {
  background:#ffffffcc;
  border:1px solid #d9e3ef;
  padding:6px;
}

.modern-detail-panel {
  grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr);
  gap:22px;
  padding:22px;
}
.detail-meta-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.detail-meta-grid .summary-chip {
  margin:0;
  min-width:0;
  padding:10px 12px;
  border-radius:14px;
}
.detail-subtitle {
  color:#64748b;
  font-size:13px;
  font-weight:700;
  margin:-4px 0 12px;
}
.modern-io-grid {
  gap:14px;
}
.io-block .detail-text {
  background:#fbfdff;
  min-height:120px;
  padding:14px;
  line-height:1.65;
}
.modern-edit-card {
  border-radius:20px;
  padding:18px;
  position:sticky;
  top:88px;
}
.edit-section-label {
  margin:2px 0 10px;
  color:#1f4e79;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.compact-edit-grid {
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.edit-field textarea,
.edit-field input,
.edit-field select {
  width:100%;
  border:1px solid #d5dee8;
  border-radius:12px;
  padding:10px 12px;
  background:#fff;
  font:inherit;
  color:#0f172a;
  box-shadow: inset 0 1px 2px rgba(15,23,42,.02);
}
.edit-field textarea {
  min-height:88px;
  resize:vertical;
}
.sticky-actions {
  position:sticky;
  bottom:0;
  background:linear-gradient(180deg, rgba(255,255,255,.72), #fff 35%);
  padding-top:10px;
}
.phase-detail-row .compact-edit-grid:last-of-type .edit-field:last-child,
.phase-detail-row .compact-edit-grid:last-of-type .edit-field:nth-child(2) {
  grid-column:span 2;
}
.compact-edit-grid .edit-field:nth-child(5),
.compact-edit-grid .edit-field:nth-child(6) {
  grid-column:span 2;
}
.summary-chip-value { word-break: break-word; }

@media (max-width: 1200px) {
  .select-filter-grid-three { grid-template-columns: 1fr 1fr; }
  .modern-detail-panel { grid-template-columns:1fr; }
  .modern-edit-card { position:relative; top:auto; }
}
@media (max-width: 800px) {
  .select-filter-grid,
  .select-filter-grid-three,
  .detail-meta-grid,
  .compact-edit-grid {
    grid-template-columns:1fr;
  }
  .phase-detail-row .compact-edit-grid:last-of-type .edit-field:last-child,
  .phase-detail-row .compact-edit-grid:last-of-type .edit-field:nth-child(2),
  .compact-edit-grid .edit-field:nth-child(5),
  .compact-edit-grid .edit-field:nth-child(6) {
    grid-column:span 1;
  }
}

/* === V6 dropdown visibility and CND filters === */
.panel-filters,
.modern-filters,
.refined-filters {
  position: relative;
  overflow: visible !important;
  z-index: 80;
}
.refined-filters:focus-within {
  z-index: 5000;
}
.multi-select {
  position: relative;
  z-index: 100;
}
.multi-select:focus-within {
  z-index: 10000;
}
.multi-select-menu {
  z-index: 20000 !important;
  overflow: auto;
}
.elegant-table,
.table-wrap,
.note {
  position: relative;
  z-index: 1;
}
.cnd-filters {
  margin-bottom: 14px;
}
.cnd-select-grid {
  grid-template-columns: minmax(240px,1fr) minmax(260px,1fr) minmax(180px,.7fr) minmax(180px,.7fr);
}
.date-filter-field {
  display:block;
}
.date-filter-field span {
  display:block;
  margin:0 0 7px;
  color:#64748b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.date-filter-field input {
  width:100%;
  min-height:46px;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:0 14px;
  background:#fff;
  font:inherit;
  font-weight:700;
  color:#0f172a;
  box-shadow:0 8px 22px rgba(15,23,42,.04);
}
.date-filter-field input:hover,
.date-filter-field input:focus {
  outline:none;
  border-color:#93c5fd;
  box-shadow:0 12px 26px rgba(59,130,246,.12);
}
.cnd-section-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#ffffff;
  border:1px solid #d9e3ef;
  border-radius:16px;
  padding:12px 16px;
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
.cnd-section-title b {
  background:#eef6ff;
  color:#1f4e79;
  border-radius:999px;
  padding:5px 10px;
  font-size:12px;
}
.cnd-table {
  margin-top:10px;
  margin-bottom:18px;
}
@media (max-width: 1100px) {
  .cnd-select-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .cnd-select-grid { grid-template-columns: 1fr; }
}

/* === V7 cleanup: remove duplicate release filter, fix multiselect checkbox layout === */
.multi-select-menu {
  min-width: 100%;
  width: max-content;
  max-width: min(420px, 92vw);
}
.multi-select-option {
  justify-content:flex-start !important;
  text-align:left !important;
  gap:10px !important;
}
.multi-select-option input[type="checkbox"] {
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  flex:0 0 16px !important;
  margin:0 !important;
  padding:0 !important;
  box-shadow:none !important;
  border-radius:3px !important;
}
.multi-select-option span {
  flex:1 1 auto;
  text-align:left !important;
  white-space:nowrap;
}
.cnd-filters .toolbar-actions {
  justify-content:flex-end;
}
@media (max-width: 900px) {
  .multi-select-menu { width:100%; max-width:100%; }
}


/* Enterprise section*/
.search-wrap input:focus,
.edit-field input:focus,
.edit-field textarea:focus,
.edit-field select:focus,
.multi-select-trigger:focus {
  outline: none;
  border-color: #38bdf8 !important;
  box-shadow: 0 0 0 4px rgba(56,189,248,.14) !important;
}

/* Enterprise section*/
.pmo-schedule-shell {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);
  gap:18px;
  margin-top:14px;
}
.pmo-card {
  background:rgba(255,255,255,.92);
  border:1px solid #d9e3ef;
  border-radius:22px;
  box-shadow:0 18px 44px rgba(15,23,42,.07);
  padding:18px;
  margin-bottom:16px;
}
.pmo-hero-card h2 { margin:6px 0 8px; font-size:24px; letter-spacing:-.035em; }
.pmo-hero-card p { color:#64748b; margin:0 0 14px; line-height:1.55; }
.pmo-structure-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.pmo-structure-grid span {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:999px;
  padding:8px 11px;
  font-size:12px;
  font-weight:800;
  color:#334155;
}
.pmo-card-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
}
.pmo-card-head h3 { margin:0; font-size:17px; }
.pmo-card-head span { color:#64748b; font-size:12px; font-weight:800; }
.meeting-list { display:grid; gap:12px; }
.meeting-item {
  background:#fbfdff;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:14px;
}
.meeting-item strong { display:block; color:#0f172a; margin-bottom:4px; }
.meeting-item span { color:#64748b; font-size:12px; font-weight:700; }
.meeting-item p { color:#475569; line-height:1.5; margin:9px 0 0; font-size:13px; }
.meeting-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:10px; }
.meeting-actions a { color:#0f766e; font-weight:900; text-decoration:none; }
.meeting-pill {
  display:inline-flex;
  border-radius:999px;
  padding:5px 9px;
  font-size:11px;
  font-weight:900;
  background:#eef2ff;
  color:#3730a3;
}
.meeting-pill.completed,.meeting-pill.scheduled,.meeting-pill.teams-link-created { background:#dcfce7; color:#166534; }
.meeting-pill.draft,.meeting-pill.not-created { background:#fef3c7; color:#92400e; }
.scheduler-card .edit-field:nth-child(1),
.scheduler-card .edit-field:nth-child(6),
.scheduler-card .edit-field:nth-child(7),
.scheduler-card .edit-field:nth-child(8) { grid-column:span 2; }
.schedule-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.agenda-preview {
  margin-top:12px;
  background:#f8fafc;
  border:1px dashed #cbd5e1;
  border-radius:16px;
  padding:13px 15px;
}
.agenda-preview strong { display:block; margin-bottom:8px; color:#0f172a; }
.agenda-preview ol { margin:0; padding-left:20px; color:#475569; line-height:1.55; }
.pmo-tracker-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  margin-top:16px;
}
.pmo-track-card {
  background:#fff;
  border:1px solid #d9e3ef;
  border-radius:22px;
  box-shadow:0 14px 38px rgba(15,23,42,.06);
  overflow:hidden;
}
.pmo-track-title {
  padding:15px 18px;
  font-weight:900;
  background:linear-gradient(180deg,#fbfdff,#f1f7fd);
  border-bottom:1px solid #e2e8f0;
}
.pmo-mini-table-wrap { overflow:auto; }
.pmo-mini-table { width:100%; min-width:920px; border-collapse:collapse; }
.pmo-mini-table th { background:#f8fafc; color:#64748b; font-size:11px; text-transform:uppercase; letter-spacing:.06em; }
.pmo-mini-table td,.pmo-mini-table th { padding:11px 12px; border-bottom:1px solid #eef2f7; vertical-align:top; }
.pmo-mini-table td { color:#0f172a; line-height:1.45; }
@media (max-width:1100px){
  .pmo-schedule-shell { grid-template-columns:1fr; }
  .scheduler-card .edit-field:nth-child(1),
  .scheduler-card .edit-field:nth-child(6),
  .scheduler-card .edit-field:nth-child(7),
  .scheduler-card .edit-field:nth-child(8) { grid-column:span 1; }
}
@media (max-width:760px){
  .pmo-structure-grid,.schedule-grid { grid-template-columns:1fr; }
}


/* Enterprise section*/
.login-logos {
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:space-between;
  margin-bottom:18px;
}
.login-logo-box {
  flex:1;
  height:58px;
  border:1px solid #d7e2ee;
  background:#fff;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  box-shadow:0 10px 28px rgba(15,23,42,.08);
}
.login-logo-box.dark { background:#071b33; border-color:#12385a; }
.login-logo-box img { max-width:150px; max-height:38px; object-fit:contain; }

.header-brand {
  display:flex;
  align-items:center;
  gap:16px;
}
.header-logo {
  width:96px;
  height:46px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8px;
  border:1px solid rgba(255,255,255,.14);
}
.header-logo.dark { background:rgba(4,18,15,.72); }
.header-logo.light { background:#fff; }
.header-logo img { max-width:100%; max-height:30px; object-fit:contain; }

.pmo-command {
  display:grid;
  gap:14px;
  margin-bottom:18px;
}
.pmo-brand-banner {
  display:grid;
  grid-template-columns:190px 1fr 190px;
  gap:18px;
  align-items:center;
  background:linear-gradient(135deg,#061a16,#0f3a35);
  border:1px solid rgba(255,255,255,.15);
  border-radius:24px;
  padding:22px;
  box-shadow:0 22px 60px rgba(15,23,42,.14);
}
.pmo-logo-block {
  height:86px;
  border-radius:18px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid rgba(255,255,255,.14);
}
.pmo-logo-block.swomb { background:rgba(4,18,15,.72); }
.pmo-logo-block.kh { background:#fff; }
.pmo-logo-block span {
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#b6d7c5;
}
.pmo-logo-block.kh span { color:#64748b; }
.pmo-logo-block img { max-width:150px; max-height:40px; object-fit:contain; }
.pmo-title-block h2 { color:#fff; margin:0 0 8px; font-size:26px; letter-spacing:-.04em; }
.pmo-title-block p { color:#dcefe6; margin:0; line-height:1.55; }

.pmo-mode-tabs {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  background:#ffffffd9;
  border:1px solid #d7e2ee;
  border-radius:999px;
  padding:7px;
  width:max-content;
  max-width:100%;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.pmo-mode-tabs button {
  border:0;
  background:transparent;
  color:#334155;
  padding:10px 14px;
  border-radius:999px;
  font-weight:850;
  cursor:pointer;
}
.pmo-mode-tabs button.active { background:#0f766e; color:#fff; }

.pmo-two-col {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.55fr);
  gap:18px;
  margin-bottom:18px;
}
.wide-left-pmo { grid-template-columns:minmax(0,1.2fr) minmax(340px,.45fr); }
.pmo-card {
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:22px;
  padding:18px;
  box-shadow:0 18px 45px rgba(15,23,42,.07);
}
.pmo-card-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.pmo-card-head h3 { margin:0; font-size:18px; color:#0b1220; letter-spacing:-.02em; }
.pmo-card-head span { color:#64748b; font-size:12px; font-weight:800; }

.pmo-flow-card {
  display:grid;
  gap:6px;
}
.pmo-flow-step {
  display:flex;
  align-items:center;
  gap:10px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:10px;
}
.pmo-flow-step span {
  width:28px;
  height:28px;
  border-radius:999px;
  background:#0f766e;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
}
.pmo-flow-step strong { font-size:13px; color:#0f172a; }
.pmo-flow-arrow { color:#0f766e; font-weight:900; padding-left:13px; }

.meeting-selector-card { margin-bottom:18px; }
.meeting-strip {
  display:flex;
  gap:10px;
  overflow:auto;
  padding-bottom:4px;
}
.meeting-chip {
  min-width:235px;
  border:1px solid #d7e2ee;
  background:#f8fbfe;
  border-radius:16px;
  padding:12px;
  text-align:left;
  cursor:pointer;
  display:grid;
  gap:6px;
}
.meeting-chip.active {
  background:#ecfdf5;
  border-color:#5eead4;
  box-shadow:0 12px 26px rgba(15,118,110,.13);
}
.meeting-chip strong { font-size:13px; color:#0f766e; }
.meeting-chip span { font-size:12px; color:#334155; line-height:1.3; }
.meeting-chip em { font-size:11px; color:#1d4ed8; font-style:normal; font-weight:900; }

.meeting-meta-grid,
.tracker-form-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.section-editor-list {
  display:grid;
  gap:14px;
}
.section-editor {
  border:1px solid #e2e8f0;
  background:#fbfdff;
  border-radius:18px;
  padding:14px;
}
.section-editor-head {
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin-bottom:10px;
}
.section-editor-head strong { color:#064e3b; }
.section-editor-head span { color:#64748b; font-size:12px; line-height:1.4; }

.carry-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:16px;
}
.carry-card {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:14px;
  display:grid;
  gap:4px;
}
.carry-card strong { font-size:11px; color:#64748b; letter-spacing:.08em; }
.carry-card b { font-size:28px; color:#0f766e; }
.carry-card span { font-size:12px; color:#64748b; }
.meeting-actions.vertical { display:grid; gap:9px; }
.primary-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  padding:10px 12px;
  background:#ecfeff;
  border:1px solid #67e8f9;
  color:#155e75;
  font-weight:900;
  text-decoration:none;
}

.trace-list {
  margin:0;
  padding-left:20px;
  display:grid;
  gap:10px;
  color:#334155;
  line-height:1.5;
}
.pmo-help { color:#64748b; line-height:1.5; }
.micro-btn {
  border:0;
  border-radius:999px;
  padding:6px 10px;
  background:#fee2e2;
  color:#991b1b;
  font-weight:900;
  cursor:pointer;
}
.closed-label {
  font-size:11px;
  font-weight:900;
  color:#166534;
  background:#dcfce7;
  padding:5px 9px;
  border-radius:999px;
}

@media (max-width: 1100px) {
  .pmo-brand-banner,
  .pmo-two-col,
  .wide-left-pmo {
    grid-template-columns:1fr;
  }
  .pmo-logo-block {
    height:68px;
  }
  .meeting-meta-grid,
  .tracker-form-grid {
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px) {
  .header-brand { flex-wrap:wrap; }
  .header-logo { display:none; }
  .pmo-mode-tabs { border-radius:18px; width:100%; }
  .pmo-mode-tabs button { flex:1; }
}


/* Enterprise section*/
.login-logo-box:not(.dark),
.pmo-logo-block.kh,
.header-logo.light {
  background: linear-gradient(135deg, #effdf5, #ffffff) !important;
  border-color: #b7e4c7 !important;
}
.login-logo-box:not(.dark) img,
.pmo-logo-block.kh img,
.header-logo.light img {
  filter: none;
}

.pmo-brand-banner {
  grid-template-columns: minmax(210px, .7fr) minmax(420px, 2.2fr) minmax(210px, .7fr) !important;
  align-items: stretch !important;
}
.pmo-title-block {
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}
.pmo-title-block h2 {
  white-space:nowrap;
}
.pmo-title-block p {
  max-width:100%;
}
.pmo-logo-block {
  min-width:0;
}
.pmo-logo-block img {
  max-width:170px !important;
}

.schedule-grid,
.meeting-meta-grid,
.tracker-form-grid {
  grid-template-columns: repeat(4, minmax(180px, 1fr)) !important;
}
.schedule-grid .edit-field:nth-child(6),
.schedule-grid .edit-field:nth-child(7),
.schedule-grid .edit-field:nth-child(8),
.tracker-form-grid .edit-field:last-child,
.meeting-meta-grid .edit-field:nth-child(6) {
  grid-column: span 2;
}

.pmo-dashboard-shell {
  display:grid;
  gap:18px;
  margin-bottom:18px;
}
.pmo-dashboard-kpis {
  display:grid;
  grid-template-columns: repeat(6, minmax(150px, 1fr));
  gap:12px;
}
.pmo-dash-kpi {
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:18px;
  padding:14px;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
  display:grid;
  gap:4px;
}
.pmo-dash-kpi span {
  color:#64748b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.pmo-dash-kpi b {
  color:#071b33;
  font-size:28px;
}
.pmo-dash-kpi small {
  color:#64748b;
  font-weight:700;
}
.pmo-dash-kpi.teal { border-color:#99f6e4; background:#f0fdfa; }
.pmo-dash-kpi.blue { border-color:#bfdbfe; background:#eff6ff; }
.pmo-dash-kpi.red { border-color:#fecaca; background:#fef2f2; }
.pmo-dash-kpi.amber { border-color:#fde68a; background:#fffbeb; }
.pmo-dash-kpi.green { border-color:#bbf7d0; background:#f0fdf4; }

.pmo-dash-filter-panel {
  display:grid;
  grid-template-columns: minmax(340px,2fr) minmax(130px,.65fr) minmax(150px,.75fr) minmax(130px,.6fr) minmax(160px,.8fr) minmax(240px,1.2fr);
  gap:10px;
  align-items:center;
  background:#ffffffd9;
  border:1px solid #d7e2ee;
  border-radius:22px;
  padding:12px;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.pmo-dash-filter-panel select,
.pmo-dash-filter-panel input {
  height:46px;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:0 12px;
  background:#fff;
  font-weight:700;
  color:#0f172a;
}
.pmo-dash-grid {
  display:grid;
  grid-template-columns: minmax(0,1.2fr) minmax(380px,.8fr);
  gap:18px;
}
.pmo-status-bars {
  display:grid;
  gap:10px;
}
.pmo-status-row {
  display:grid;
  grid-template-columns:130px 1fr 36px;
  gap:10px;
  align-items:center;
}
.pmo-status-row span {
  color:#334155;
  font-weight:800;
  font-size:13px;
}
.pmo-status-track {
  height:10px;
  background:#e2e8f0;
  border-radius:999px;
  overflow:hidden;
}
.pmo-status-track i {
  display:block;
  height:100%;
  background:#0f766e;
  border-radius:999px;
}
.pmo-status-row b {
  text-align:right;
}
.trace-metrics {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.pmo-dashboard-table td:nth-child(3) {
  min-width:340px;
}
.pmo-dashboard-table td:nth-child(7) {
  min-width:220px;
}

@media (max-width: 1300px) {
  .pmo-dashboard-kpis { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
  .pmo-dash-filter-panel { grid-template-columns: repeat(3, minmax(180px,1fr)); }
  .schedule-grid,
  .meeting-meta-grid,
  .tracker-form-grid { grid-template-columns: repeat(2, minmax(180px, 1fr)) !important; }
}
@media (max-width: 900px) {
  .pmo-brand-banner,
  .pmo-dash-grid { grid-template-columns:1fr !important; }
  .pmo-title-block h2 { white-space:normal; }
  .pmo-dashboard-kpis,
  .pmo-dash-filter-panel,
  .trace-metrics,
  .schedule-grid,
  .meeting-meta-grid,
  .tracker-form-grid { grid-template-columns:1fr !important; }
  .schedule-grid .edit-field:nth-child(6),
  .schedule-grid .edit-field:nth-child(7),
  .schedule-grid .edit-field:nth-child(8),
  .tracker-form-grid .edit-field:last-child,
  .meeting-meta-grid .edit-field:nth-child(6) { grid-column:span 1; }
}


/* Enterprise section*/
.plan-top-card {
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:18px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  border-radius:24px;
  padding:22px 24px;
  margin-bottom:16px;
  box-shadow:0 20px 54px rgba(15,23,42,.16);
}
.plan-top-card h2 { margin:0 0 8px; font-size:25px; letter-spacing:-.04em; }
.plan-top-card p { margin:0; color:#dcefe6; line-height:1.55; }
.plan-range {
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  padding:14px;
  display:grid;
  gap:6px;
}
.plan-range span { color:#b6d7c5; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.plan-range b { font-size:15px; }

.gantt-filters {
  margin-bottom:16px;
}
.gantt-select-grid {
  grid-template-columns: minmax(260px,1.4fr) minmax(220px,.8fr) minmax(220px,.8fr);
}

.resource-dashboard {
  display:grid;
  gap:16px;
  margin-bottom:16px;
}
.resource-kpis {
  display:grid;
  grid-template-columns: repeat(4, minmax(180px,1fr));
  gap:12px;
}
.resource-table-wrap {
  overflow:auto;
}
.resource-table th,
.resource-table td {
  white-space:nowrap;
}
.resource-table td:first-child {
  min-width:220px;
}

.gantt-card {
  overflow:hidden;
}
.gantt-header {
  display:grid;
  grid-template-columns:220px 1fr 220px;
  gap:12px;
  align-items:center;
  color:#64748b;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  padding:8px 4px 14px;
  border-bottom:1px solid #e2e8f0;
}
.gantt-header span:nth-child(2) {
  text-align:center;
}
.gantt-header span:nth-child(3) {
  text-align:right;
}
.gantt-list {
  display:grid;
  gap:0;
  max-height:760px;
  overflow:auto;
}
.gantt-row {
  display:grid;
  grid-template-columns:minmax(320px,.8fr) 160px minmax(360px,1.4fr) 90px;
  gap:14px;
  align-items:center;
  padding:12px 4px;
  border-bottom:1px solid #edf2f7;
}
.gantt-row:hover {
  background:#f8fafc;
}
.gantt-task {
  display:grid;
  gap:3px;
  min-width:0;
}
.gantt-task strong {
  color:#0f172a;
  font-size:13px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.gantt-task span,
.gantt-task em {
  color:#64748b;
  font-size:11px;
  font-style:normal;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.gantt-task em { color:#0f766e; font-weight:800; }
.gantt-dates {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.gantt-dates span {
  background:#f8fafc;
  border:1px solid #dbe7f3;
  border-radius:10px;
  padding:6px 8px;
  font-size:11px;
  font-weight:800;
  color:#334155;
}
.gantt-bar-track {
  position:relative;
  height:24px;
  background:
    repeating-linear-gradient(90deg,#f8fafc 0,#f8fafc 39px,#eef2f7 40px),
    #f8fafc;
  border:1px solid #e2e8f0;
  border-radius:999px;
  overflow:hidden;
}
.gantt-baseline {
  position:absolute;
  top:4px;
  height:14px;
  border-radius:999px;
  background:#cbd5e1;
  box-shadow:0 4px 12px rgba(15,23,42,.08);
  overflow:hidden;
}
.gantt-baseline.green { background:#bbf7d0; }
.gantt-baseline.amber { background:#fde68a; }
.gantt-baseline.red { background:#fecaca; }
.gantt-baseline i {
  display:block;
  height:100%;
  background:#0f766e;
  border-radius:999px;
}
.gantt-baseline.red i { background:#dc2626; }
.gantt-baseline.amber i { background:#d97706; }
.gantt-delay {
  position:absolute;
  top:2px;
  transform:translateX(-50%);
  background:#fee2e2;
  border:1px solid #fecaca;
  color:#991b1b;
  font-size:10px;
  font-weight:900;
  padding:2px 5px;
  border-radius:999px;
}
.gantt-rag {
  display:grid;
  justify-items:start;
  gap:4px;
}
.gantt-rag small {
  color:#64748b;
  font-weight:900;
}

@media (max-width: 1200px) {
  .plan-top-card,
  .gantt-select-grid,
  .resource-kpis {
    grid-template-columns:1fr;
  }
  .gantt-row {
    grid-template-columns:1fr;
  }
  .gantt-header {
    display:none;
  }
}


/* Enterprise section*/
.resource-matrix-hero {
  margin-bottom:16px;
}
.resource-master-grid {
  display:grid;
  grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr);
  gap:16px;
  margin-bottom:16px;
}
.resource-master-list,
.resource-team-list {
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:10px;
  max-height:420px;
  overflow:auto;
  padding-right:4px;
}
.resource-person,
.resource-team {
  display:grid;
  gap:4px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:12px;
}
.resource-person strong,
.resource-team strong {
  color:#0f172a;
  font-size:13px;
}
.resource-person span,
.resource-team span {
  color:#0f766e;
  font-size:12px;
  font-weight:800;
}
.resource-person em,
.resource-team p {
  color:#475569;
  font-size:12px;
  line-height:1.45;
  font-style:normal;
  margin:0;
}
.resource-person b,
.resource-team small {
  color:#64748b;
  font-size:11px;
  line-height:1.45;
}
.assignment-matrix-shell {
  display:grid;
  gap:16px;
}
.assignment-filter-grid {
  display:grid;
  grid-template-columns: 150px 160px minmax(190px,1fr) minmax(190px,1fr) minmax(240px,1.2fr) 160px;
  gap:10px;
  align-items:end;
  margin-bottom:12px;
}
.assignment-bulk-grid {
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) minmax(220px,1fr) 190px;
  gap:10px;
  align-items:end;
  padding-top:12px;
  border-top:1px solid #e2e8f0;
}
.assignment-filter-grid label,
.assignment-bulk-grid label {
  display:grid;
  gap:6px;
}
.assignment-filter-grid label span,
.assignment-bulk-grid label span {
  color:#64748b;
  font-size:11px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.assignment-filter-grid input,
.assignment-filter-grid select,
.assignment-bulk-grid select {
  height:42px;
  border:1px solid #d7e2ee;
  background:#fff;
  border-radius:12px;
  padding:0 10px;
  font-weight:750;
  color:#0f172a;
}
.assign-check {
  display:flex !important;
  grid-template-columns:auto 1fr;
  flex-direction:row;
  align-items:center;
  gap:8px !important;
  height:42px;
  background:#f8fafc;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:0 10px;
}
.assign-check input {
  height:auto;
}
.matrix-table-wrap {
  overflow:auto;
  max-height:720px;
}
.assignment-table th,
.assignment-table td {
  white-space:nowrap;
}
.assignment-table td.assignment-item-title {
  min-width:360px;
  white-space:normal;
}
.assignment-item-title strong {
  display:block;
  color:#0f172a;
  line-height:1.35;
}
.assignment-item-title span {
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:800;
  margin-top:2px;
}
.unassigned-row {
  background:#fff7ed;
}
.suggestion-pill {
  display:inline-flex;
  align-items:center;
  max-width:260px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  padding:6px 9px;
  border-radius:999px;
  background:#ecfdf5;
  border:1px solid #99f6e4;
  color:#0f766e;
  font-size:11px;
  font-weight:900;
}
.micro-btn.teal {
  background:#ccfbf1;
  color:#0f766e;
}

@media (max-width: 1250px) {
  .resource-master-grid,
  .assignment-filter-grid,
  .assignment-bulk-grid {
    grid-template-columns:1fr;
  }
  .resource-master-list,
  .resource-team-list {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.impact-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#14532d);
  color:#fff;
  border-radius:24px;
  padding:22px 24px;
  margin-bottom:16px;
  box-shadow:0 20px 54px rgba(15,23,42,.16);
}
.impact-hero h2 { margin:0 0 8px; font-size:25px; letter-spacing:-.04em; }
.impact-hero p { margin:0; color:#dcefe6; line-height:1.55; }
.impact-hero-actions {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.impact-kpi-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(150px,1fr));
  gap:12px;
  margin-bottom:16px;
}
.impact-kpi {
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:18px;
  padding:14px;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
  display:grid;
  gap:4px;
}
.impact-kpi span {
  color:#64748b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.impact-kpi b { font-size:28px; color:#071b33; }
.impact-kpi small { color:#64748b; font-weight:750; }
.impact-kpi.blue { background:#eff6ff; border-color:#bfdbfe; }
.impact-kpi.red { background:#fef2f2; border-color:#fecaca; }
.impact-kpi.amber { background:#fffbeb; border-color:#fde68a; }
.impact-kpi.green { background:#f0fdf4; border-color:#bbf7d0; }

.impact-two-col {
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
  gap:16px;
  margin-bottom:16px;
}
.dependency-form-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(150px,1fr));
  gap:10px;
}
.dependency-form-grid label {
  display:grid;
  gap:6px;
}
.dependency-form-grid label.wide {
  grid-column:span 4;
}
.dependency-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.dependency-form-grid input,
.dependency-form-grid select {
  height:42px;
  border:1px solid #d7e2ee;
  background:#fff;
  border-radius:12px;
  padding:0 10px;
  font-weight:750;
  color:#0f172a;
  min-width:0;
}
.dependency-list {
  display:grid;
  gap:10px;
  max-height:390px;
  overflow:auto;
}
.dependency-link-card {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:12px;
  display:grid;
  gap:6px;
}
.dependency-link-card div {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.dependency-link-card strong {
  background:#0f766e;
  color:#fff;
  padding:4px 8px;
  border-radius:999px;
  font-size:11px;
}
.dependency-link-card span {
  color:#334155;
  font-size:11px;
  font-weight:900;
}
.dependency-link-card p {
  margin:0;
  color:#334155;
  font-size:12px;
  line-height:1.45;
}
.dependency-link-card em {
  color:#64748b;
  font-size:11px;
  font-style:normal;
  font-weight:800;
}

.impact-filters { margin-bottom:16px; }
.impact-select-grid {
  grid-template-columns:minmax(260px,1.2fr) minmax(180px,.5fr) minmax(220px,.6fr);
}
.impact-table-wrap {
  overflow:auto;
  max-height:760px;
}
.impact-table th,
.impact-table td {
  white-space:nowrap;
}
.impact-table tr.critical {
  background:#fff1f2;
}
.impact-table tr.near-critical {
  background:#fffbeb;
}
.impact-item {
  min-width:360px;
  white-space:normal !important;
}
.impact-item strong {
  display:block;
  color:#0f172a;
  line-height:1.35;
}
.impact-item span {
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:800;
  margin-top:2px;
}
.criticality-pill {
  display:inline-flex;
  border-radius:999px;
  padding:6px 9px;
  font-size:11px;
  font-weight:900;
  background:#e2e8f0;
  color:#334155;
}
.criticality-pill.critical {
  background:#fee2e2;
  color:#991b1b;
}
.criticality-pill.near-critical {
  background:#fef3c7;
  color:#92400e;
}
.criticality-pill.normal {
  background:#dcfce7;
  color:#166534;
}
.date-stack {
  display:grid;
  gap:6px;
}
.date-stack input {
  height:34px;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 8px;
  font-size:12px;
  font-weight:750;
  min-width:136px;
}

@media (max-width: 1250px) {
  .impact-hero,
  .impact-two-col,
  .impact-select-grid {
    grid-template-columns:1fr;
  }
  .impact-kpi-grid {
    grid-template-columns:repeat(2,minmax(150px,1fr));
  }
  .dependency-form-grid {
    grid-template-columns:1fr;
  }
  .dependency-form-grid label.wide {
    grid-column:span 1;
  }
}
@media (max-width: 760px) {
  .impact-kpi-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
html, body, #root {
  width:100%;
  max-width:none;
  overflow-x:hidden;
}
.container {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:14px 12px 42px !important;
  box-sizing:border-box;
}
.header.compact-header {
  width:100% !important;
  box-sizing:border-box;
  padding-left:16px !important;
  padding-right:16px !important;
}
.workspace-top {
  width:100%;
  box-sizing:border-box;
  align-items:center !important;
}
.modern-tabs {
  flex-wrap:nowrap !important;
  overflow-x:auto;
  overflow-y:hidden;
  max-width:calc(100vw - 360px);
  scrollbar-width:thin;
}
.modern-tabs button,
.tabs button,
.chip-filter button,
.rag,
.pill,
.meeting-pill,
.suggestion-pill,
.criticality-pill,
.closed-label,
.micro-btn,
.small-btn {
  white-space:nowrap !important;
}
.full-width-panel {
  width:100%;
  box-sizing:border-box;
}
.table-wrap,
.pmo-mini-table-wrap,
.matrix-table-wrap,
.impact-table-wrap,
.resource-table-wrap,
.gantt-list,
.tree-table-card {
  width:100%;
  max-width:100%;
  overflow:auto !important;
}
table,
.pmo-mini-table,
.assignment-table,
.impact-table,
.resource-table {
  width:max-content;
  min-width:100%;
}
th, td,
.pmo-mini-table th,
.pmo-mini-table td {
  white-space:nowrap !important;
  vertical-align:middle !important;
}
td.work,
.assignment-table td.assignment-item-title,
.impact-item,
.gantt-task strong,
.gantt-task span,
.gantt-task em {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.no-wrap-row {
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  overflow-x:auto;
}

/* Tree hero and summary */
.tree-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  border-radius:22px;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.16);
}
.tree-hero h2 {
  margin:0 0 8px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tree-hero p {
  margin:0;
  color:#dcefe6;
  line-height:1.5;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tree-actions {
  display:flex;
  gap:10px;
  flex-wrap:nowrap;
}
.tree-summary-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(145px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.tree-summary-card {
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:16px;
  padding:12px 14px;
  box-shadow:0 10px 26px rgba(15,23,42,.06);
  display:grid;
  gap:4px;
  min-width:0;
}
.tree-summary-card span {
  color:#64748b;
  font-size:10px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.tree-summary-card b {
  font-size:24px;
  color:#071b33;
  white-space:nowrap;
}
.tree-summary-card small {
  color:#64748b;
  font-size:11px;
  font-weight:750;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tree-summary-card.blue { background:#eff6ff; border-color:#bfdbfe; }
.tree-summary-card.teal { background:#f0fdfa; border-color:#99f6e4; }
.tree-summary-card.green { background:#f0fdf4; border-color:#bbf7d0; }
.tree-summary-card.amber { background:#fffbeb; border-color:#fde68a; }
.tree-summary-card.red { background:#fef2f2; border-color:#fecaca; }

/* Tree filters */
.tree-filters {
  margin-bottom:14px;
}
.tree-select-grid {
  grid-template-columns:minmax(320px,1.35fr) minmax(220px,.75fr) minmax(240px,.8fr) !important;
}

/* Hierarchical grid */
.tree-table-card {
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:20px;
  box-shadow:0 18px 45px rgba(15,23,42,.07);
}
.tree-grid-header,
.tree-row {
  display:grid;
  grid-template-columns:minmax(480px,1.6fr) 88px 110px 64px 74px 82px 82px 82px 84px 70px 78px 88px 170px 210px;
  min-width:1680px;
  align-items:center;
}
.tree-grid-header {
  position:sticky;
  top:0;
  z-index:5;
  background:#064e3b;
  color:#fff;
  border-top-left-radius:20px;
  border-top-right-radius:20px;
}
.tree-grid-body {
  max-height:780px;
  overflow:auto;
}
.tree-row {
  border-bottom:1px solid #e8eef5;
  background:#fff;
}
.tree-row:hover {
  background:#f8fafc;
}
.tree-row.type-release {
  background:#ecfdf5;
  font-weight:900;
}
.tree-row.type-module {
  background:#f8fafc;
  font-weight:850;
}
.tree-row.type-wbs {
  background:#fff;
}
.tree-row.type-phase {
  background:#ffffff;
  color:#334155;
}
.tree-cell {
  min-width:0;
  padding:10px 10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  border-right:1px solid #eef2f7;
  font-size:12px;
}
.tree-cell.head {
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  border-right:1px solid rgba(255,255,255,.16);
}
.tree-cell.num {
  text-align:right;
  font-variant-numeric:tabular-nums;
  font-weight:850;
}
.tree-cell.nowrap {
  white-space:nowrap;
}
.tree-name {
  display:flex;
  align-items:center;
  gap:8px;
}
.tree-name strong {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  min-width:0;
}
.tree-name em {
  color:#64748b;
  font-size:11px;
  font-style:normal;
  font-weight:800;
  white-space:nowrap;
}
.tree-toggle,
.tree-toggle-spacer {
  width:24px;
  min-width:24px;
  height:24px;
  border-radius:8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.tree-toggle {
  border:1px solid #cbd5e1;
  background:#fff;
  color:#0f766e;
  font-weight:900;
  cursor:pointer;
}
.tree-toggle-spacer {
  background:transparent;
}
.tree-type {
  font-size:10px;
  font-weight:900;
  color:#0f766e;
  background:#ccfbf1;
  border:1px solid #99f6e4;
  border-radius:999px;
  padding:4px 7px;
  white-space:nowrap;
}
.tree-row.type-release .tree-type {
  color:#fff;
  background:#0f766e;
  border-color:#0f766e;
}
.tree-row.type-module .tree-type {
  color:#1d4ed8;
  background:#dbeafe;
  border-color:#bfdbfe;
}
.tree-row.type-phase .tree-type {
  color:#475569;
  background:#f1f5f9;
  border-color:#e2e8f0;
}
.variance.good { color:#166534; }
.variance.bad { color:#991b1b; }

/* Prevent chip/text wrapping in dense visual areas */
.tree-table-card .rag,
.impact-table .rag,
.assignment-table .rag,
.resource-table .rag,
.gantt-rag .rag {
  display:inline-flex;
  min-width:max-content;
}

/* Wider layout for existing grids */
.pmo-brand-banner,
.impact-hero,
.plan-top-card,
.resource-matrix-hero {
  width:100%;
  box-sizing:border-box;
}
.pmo-dashboard-kpis,
.resource-kpis,
.impact-kpi-grid,
.tree-summary-grid {
  overflow-x:auto;
}
.pmo-dashboard-kpis > *,
.resource-kpis > *,
.impact-kpi-grid > *,
.tree-summary-grid > * {
  min-width:145px;
}
.pmo-dash-filter-panel,
.assignment-filter-grid,
.assignment-bulk-grid,
.dependency-form-grid,
.gantt-select-grid,
.impact-select-grid,
.tree-select-grid {
  width:100%;
}

/* Keep cards from wasting side space */
.pmo-card,
.gantt-card,
.impact-table-card,
.assignment-table-card {
  width:100%;
  box-sizing:border-box;
}

@media (max-width: 1300px) {
  .modern-tabs { max-width:100%; }
  .workspace-top { flex-direction:column; align-items:stretch !important; }
  .scope-toolbar { justify-content:flex-start; overflow-x:auto; }
  .tree-hero { grid-template-columns:1fr; }
  .tree-hero h2,
  .tree-hero p { white-space:normal; }
  .tree-summary-grid { grid-template-columns:repeat(4,minmax(145px,1fr)); }
}
@media (max-width: 760px) {
  .container { padding:10px 8px 32px !important; }
  .tree-summary-grid { grid-template-columns:repeat(2,minmax(145px,1fr)); }
}


/* Enterprise section*/
.row-select-cell {
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.row-select-cell input[type="checkbox"] {
  width:16px;
  height:16px;
  accent-color:#0f766e;
}
.quick-cell {
  min-width:118px;
  white-space:nowrap !important;
}

.bulk-update-bar {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:12px;
  align-items:center;
  background:#ffffff;
  border:1px solid #d7e2ee;
  border-radius:18px;
  padding:10px 12px;
  margin:10px 0 12px;
  box-shadow:0 10px 26px rgba(15,23,42,.05);
}
.bulk-left {
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.bulk-count {
  display:inline-flex;
  align-items:center;
  height:34px;
  border-radius:999px;
  background:#ecfdf5;
  border:1px solid #99f6e4;
  color:#0f766e;
  padding:0 10px;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
.bulk-controls {
  display:flex;
  align-items:center;
  gap:8px;
  overflow-x:auto;
  overflow-y:hidden;
  white-space:nowrap;
  padding-bottom:2px;
}
.bulk-controls select,
.bulk-controls input {
  height:38px;
  min-width:138px;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:0 10px;
  font-weight:750;
  color:#0f172a;
  background:#fff;
}
.bulk-controls input[placeholder="Remarks add/replace"] {
  min-width:220px;
}
.bulk-controls .primary {
  min-width:150px;
}

/* Quick drawer */
.drawer-backdrop {
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.36);
  z-index:9998;
  display:flex;
  justify-content:flex-end;
  backdrop-filter:blur(3px);
}
.quick-drawer {
  width:min(560px, 96vw);
  height:100vh;
  overflow:auto;
  background:#ffffff;
  border-left:1px solid #d7e2ee;
  box-shadow:-24px 0 60px rgba(15,23,42,.24);
  padding:0;
  display:flex;
  flex-direction:column;
}
.drawer-head {
  position:sticky;
  top:0;
  z-index:2;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 40px;
  gap:14px;
  align-items:start;
}
.drawer-head span {
  display:inline-flex;
  width:max-content;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#bbf7d0;
  border:1px solid rgba(187,247,208,.35);
  border-radius:999px;
  padding:5px 8px;
  margin-bottom:8px;
  white-space:nowrap;
}
.drawer-head h3 {
  margin:0;
  font-size:22px;
  letter-spacing:-.03em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.drawer-head p {
  margin:5px 0 0;
  color:#dcefe6;
  line-height:1.45;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.drawer-close {
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.12);
  color:#fff;
  border-radius:12px;
  cursor:pointer;
  font-size:22px;
  line-height:1;
}
.drawer-section {
  padding:18px 22px 0;
}
.drawer-section h4 {
  margin:0 0 12px;
  color:#0f172a;
  font-size:14px;
  font-weight:950;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.drawer-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.drawer-section .edit-field {
  margin:0;
}
.drawer-section .edit-field label,
.drawer-section .edit-field span {
  white-space:nowrap;
}
.drawer-section input,
.drawer-section select,
.drawer-section textarea {
  width:100%;
  box-sizing:border-box;
}
.drawer-summary {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  padding:18px 22px 0;
}
.drawer-summary .summary-chip {
  min-width:0;
}
.drawer-actions {
  position:sticky;
  bottom:0;
  margin-top:auto;
  background:#fff;
  border-top:1px solid #e2e8f0;
  padding:14px 22px;
  display:flex;
  justify-content:flex-end;
  gap:10px;
  box-shadow:0 -10px 28px rgba(15,23,42,.06);
}

/* WBS and Phase table wide layout refinement */
.elegant-table table {
  min-width:1420px;
}
.phase-table table {
  min-width:1560px;
}
.elegant-table th,
.elegant-table td {
  white-space:nowrap !important;
}
.elegant-table .work-title,
.elegant-table .id-cell,
.elegant-table .module-cell {
  max-width:420px;
}
.elegant-table .work-title strong,
.elegant-table .work-title span,
.elegant-table .id-cell strong,
.elegant-table .id-cell span,
.elegant-table .module-cell strong,
.elegant-table .module-cell span {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
  display:block;
}
.elegant-table .summary-chip,
.detail-meta .summary-chip,
.drawer-summary .summary-chip {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}

@media (max-width: 1100px) {
  .bulk-update-bar {
    grid-template-columns:1fr;
  }
  .drawer-grid {
    grid-template-columns:1fr;
  }
  .drawer-summary {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* Enterprise section*/

/* Full-width content discipline */
.container {
  padding-left:8px !important;
  padding-right:8px !important;
}
.workspace-top,
.panel-filters,
.table-wrap,
.elegant-table,
.pmo-card,
.tree-table-card,
.schedule-board,
.schedule-group-card,
.cnd-table,
.bulk-update-bar {
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
}
.cnd-table table,
.elegant-table table,
.pmo-mini-table,
.schedule-table {
  width:100% !important;
  min-width:100% !important;
}
.cnd-table table {
  table-layout:fixed;
}
.cnd-table th:nth-child(4),
.cnd-table td:nth-child(4),
.cnd-table th:nth-child(9),
.cnd-table td:nth-child(9) {
  width:auto;
}
.cnd-table td.work,
.cnd-table td,
.cnd-table th {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cnd-table td.work {
  max-width:none !important;
}

/* Reduce over-rounded visual style across controls and cards */
:root {
  --control-radius-v19: 10px;
  --panel-radius-v19: 14px;
  --card-radius-v19: 16px;
}
.login-card,
.panel-filters,
.table-wrap,
.elegant-table,
.pmo-card,
.tree-table-card,
.schedule-group-card,
.schedule-view-hero,
.tree-hero,
.impact-hero,
.plan-top-card,
.resource-matrix-hero,
.bulk-update-bar,
.pmo-command,
.workspace-top,
.pmo-brand-banner,
.pmo-dash-filter-panel,
.assignment-filter-grid,
.resource-person,
.resource-team,
.dependency-link-card,
.quick-drawer {
  border-radius:var(--card-radius-v19) !important;
}
.modern-tabs,
.scope-toolbar,
.chip-filter,
.chip-filter button,
.tabs button,
.modern-tabs button,
.search-wrap,
.search-wrap input,
input,
select,
textarea,
button,
.action-link,
.export-btn,
.primary,
.secondary,
.small-btn,
.micro-btn,
.expand-btn,
.rag,
.pill,
.status-pill,
.bucket-pill,
.summary-chip,
.meeting-pill,
.closed-label,
.suggestion-pill,
.criticality-pill,
.bulk-count,
.tree-type,
.tree-toggle,
.drawer-close,
.login-logo-box,
.header-logo,
.date-filter-field,
.multi-select-control,
.dropdown-panel,
.dropdown-option,
.pmo-logo-block,
.plan-range {
  border-radius:var(--control-radius-v19) !important;
}
.pmo-flow-step,
.pmo-flow-card,
.tree-summary-card,
.impact-kpi,
.pmo-dash-kpi {
  border-radius:12px !important;
}

/* Keep tabs compact and spanning horizontally */
.modern-tabs {
  flex:1 1 auto;
  max-width:none !important;
}
.modern-tabs button {
  padding:10px 14px !important;
}
.scope-toolbar {
  flex:0 0 auto;
}

/* Schedule View */
.schedule-view-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.16);
}
.schedule-view-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-view-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-view-mode {
  display:flex;
  gap:8px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  padding:6px;
  border-radius:12px;
  white-space:nowrap;
}
.schedule-view-mode button {
  height:36px;
  border:0;
  background:transparent;
  color:#dcefe6;
  padding:0 12px;
  font-weight:900;
  cursor:pointer;
}
.schedule-view-mode button.active {
  background:#fff;
  color:#0f172a;
}
.schedule-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(145px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.schedule-view-filters {
  margin-bottom:14px;
}
.schedule-select-grid {
  grid-template-columns:minmax(320px,1.4fr) minmax(220px,.75fr) minmax(240px,.8fr) !important;
}
.schedule-board {
  display:grid;
  gap:14px;
}
.schedule-group-card {
  background:#fff;
  border:1px solid #d7e2ee;
  box-shadow:0 14px 36px rgba(15,23,42,.06);
  overflow:hidden;
}
.schedule-group-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:14px 16px;
  background:#f8fafc;
  border-bottom:1px solid #e2e8f0;
}
.schedule-group-head h3 {
  margin:0;
  font-size:18px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-group-head span {
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-group-badges {
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.schedule-group-badges b {
  display:inline-flex;
  background:#eef2ff;
  border:1px solid #dbeafe;
  color:#334155;
  padding:6px 8px;
  border-radius:10px;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}
.schedule-table-wrap {
  width:100%;
  overflow:auto;
}
.schedule-table {
  border-collapse:collapse;
  table-layout:fixed;
}
.schedule-table th,
.schedule-table td {
  border-bottom:1px solid #e8eef5;
  padding:10px 12px;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-table th {
  color:#64748b;
  font-size:10px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  background:#fff;
}
.schedule-table th:nth-child(5),
.schedule-table td:nth-child(5) {
  width:260px;
}
.schedule-item-title {
  font-weight:850;
  color:#0f172a;
}

/* Existing WBS / Phase tables should use full available width */
.elegant-table table {
  table-layout:fixed;
}
.elegant-table th,
.elegant-table td {
  overflow:hidden;
  text-overflow:ellipsis;
}
.elegant-table th:nth-child(4),
.elegant-table td:nth-child(4) {
  width:28%;
}
.elegant-table th:nth-child(9),
.elegant-table td:nth-child(9) {
  width:120px;
}
.phase-table th:nth-child(4),
.phase-table td:nth-child(4) {
  width:25%;
}

/* Compact card style */
.compact-row td {
  padding-top:9px !important;
  padding-bottom:9px !important;
}
.summary-chip {
  min-height:34px !important;
}
.rag,
.status-pill,
.bucket-pill,
.pill {
  min-height:26px;
  display:inline-flex;
  align-items:center;
}

/* Avoid giant empty right area in current/next/delay cards */
.cnd-table td:nth-child(4),
.cnd-table th:nth-child(4) { width:24%; }
.cnd-table td:nth-child(9),
.cnd-table th:nth-child(9) { width:28%; }

@media (max-width:1300px) {
  .schedule-view-hero,
  .schedule-group-head,
  .schedule-select-grid {
    grid-template-columns:1fr !important;
  }
  .schedule-view-hero p,
  .schedule-view-hero h2,
  .schedule-group-head h3,
  .schedule-group-head span {
    white-space:normal;
  }
  .schedule-kpi-grid {
    grid-template-columns:repeat(3,minmax(145px,1fr));
  }
}
@media (max-width:760px) {
  .container {
    padding-left:6px !important;
    padding-right:6px !important;
  }
  .schedule-kpi-grid {
    grid-template-columns:repeat(2,minmax(145px,1fr));
  }
}


/* Enterprise section*/

/* Fix squeezed first column caused by fixed table layout */
.elegant-table th:first-child,
.elegant-table td:first-child,
.phase-table th:first-child,
.phase-table td:first-child {
  width:92px !important;
  min-width:92px !important;
  max-width:92px !important;
  overflow:visible !important;
  text-overflow:clip !important;
  padding-left:16px !important;
  padding-right:10px !important;
}
.row-select-cell {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:9px !important;
  overflow:visible !important;
  min-width:92px !important;
}
.row-select-cell input[type="checkbox"] {
  flex:0 0 auto !important;
  width:16px !important;
  height:16px !important;
}
.row-select-cell .expand-btn {
  flex:0 0 auto !important;
  width:26px !important;
  min-width:26px !important;
  height:26px !important;
}
.elegant-table table,
.phase-table table {
  table-layout:fixed !important;
}
.elegant-table th:nth-child(2),
.elegant-table td:nth-child(2) {
  width:170px !important;
}
.phase-table th:nth-child(2),
.phase-table td:nth-child(2) {
  width:220px !important;
}

/* Saved Views + History */
.views-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.16);
  border-radius:14px;
}
.views-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.views-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.views-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.views-summary-grid {
  grid-template-columns:repeat(4,minmax(180px,1fr));
}
.views-two-col {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:14px;
  margin-bottom:14px;
}
.views-form-grid,
.history-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:12px;
}
.views-form-grid label,
.history-form-grid label {
  display:grid;
  gap:6px;
}
.views-form-grid label.wide,
.history-form-grid label.wide {
  grid-column:span 2;
}
.views-form-grid span,
.history-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.views-form-grid input,
.views-form-grid select,
.history-form-grid input,
.history-form-grid select,
.history-form-grid textarea,
.history-filter-row select {
  height:40px;
  border:1px solid #d7e2ee;
  background:#fff;
  border-radius:10px;
  padding:0 10px;
  font-weight:750;
  color:#0f172a;
  min-width:0;
}
.history-form-grid textarea {
  height:auto;
  padding:10px;
}
.saved-view-list {
  display:grid;
  gap:10px;
  max-height:430px;
  overflow:auto;
}
.saved-view-card {
  display:grid;
  gap:6px;
  padding:12px;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:12px;
}
.saved-view-card div:first-child {
  display:grid;
  gap:2px;
}
.saved-view-card strong {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.saved-view-card span {
  color:#64748b;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.saved-view-card p {
  margin:0;
  color:#334155;
  font-size:12px;
  line-height:1.4;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.saved-view-actions,
.history-action-row {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
  overflow:auto;
}
.history-action-row {
  justify-content:flex-end;
}
.history-filter-row {
  display:grid;
  grid-template-columns:minmax(320px,1fr) 170px 170px;
  gap:10px;
  align-items:center;
  margin-bottom:12px;
}
.history-table-wrap {
  width:100%;
  overflow:auto;
  max-height:620px;
}
.history-table {
  min-width:1120px !important;
}
.history-table th,
.history-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.history-summary {
  max-width:460px;
}

@media (max-width:1200px) {
  .views-hero,
  .views-two-col,
  .history-filter-row {
    grid-template-columns:1fr;
  }
  .views-hero h2,
  .views-hero p {
    white-space:normal;
  }
}
@media (max-width:760px) {
  .views-summary-grid,
  .views-form-grid,
  .history-form-grid {
    grid-template-columns:1fr;
  }
  .views-form-grid label.wide,
  .history-form-grid label.wide {
    grid-column:span 1;
  }
}


/* Enterprise section*/
body {
  background:#f6f9fc;
}
.container {
  width:100vw !important;
  max-width:100vw !important;
  margin:0 !important;
  padding:8px 8px 36px !important;
  overflow-x:hidden;
}
.header.compact-header {
  position:sticky;
  top:0;
  z-index:100;
}
.workspace-top {
  position:sticky;
  top:78px;
  z-index:80;
  background:rgba(246,249,252,.96);
  backdrop-filter:blur(8px);
  border:1px solid #d7e2ee;
  padding:10px !important;
}
.modern-tabs {
  min-width:0;
  flex:1 1 auto;
}
.modern-tabs button {
  min-width:max-content;
}
.scope-toolbar {
  min-width:max-content;
}
.panel-filters,
.table-wrap,
.elegant-table,
.pmo-card,
.tree-table-card,
.schedule-group-card,
.bulk-update-bar,
.views-hero,
.schedule-view-hero,
.tree-hero,
.impact-hero,
.plan-top-card,
.resource-matrix-hero {
  box-shadow:0 8px 24px rgba(15,23,42,.045) !important;
}
.elegant-table table,
.phase-table table {
  min-width:100% !important;
}
.elegant-table th,
.elegant-table td,
.phase-table th,
.phase-table td {
  box-sizing:border-box;
}
.elegant-table th:first-child,
.elegant-table td:first-child,
.phase-table th:first-child,
.phase-table td:first-child {
  width:96px !important;
  min-width:96px !important;
  max-width:96px !important;
}
.row-select-cell {
  min-width:96px !important;
  width:96px !important;
}
.row-select-cell input[type="checkbox"] {
  margin:0 !important;
}
.quick-cell {
  width:132px !important;
  min-width:132px !important;
}
.quick-cell .micro-btn {
  width:112px;
  justify-content:center;
}
.summary-chip,
.rag,
.pill,
.status-pill,
.bucket-pill,
.micro-btn,
.small-btn,
.saved-view-card,
.resource-person,
.resource-team,
.schedule-group-badges b {
  white-space:nowrap !important;
}
.detail-row td,
.phase-detail-row td {
  white-space:normal !important;
}
.detail-panel,
.phase-detail-panel {
  width:100% !important;
  box-sizing:border-box;
}
.io-grid,
.modern-io-grid {
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
.text-block,
.text-block p,
.text-block pre {
  white-space:pre-wrap !important;
}
.drawer-backdrop {
  z-index:9999 !important;
}
.quick-drawer {
  max-width:96vw;
}
.history-table,
.schedule-table,
.impact-table,
.assignment-table,
.resource-table,
.pmo-mini-table {
  min-width:100% !important;
}
.cnd-table table {
  min-width:100% !important;
}
.footer {
  margin-top:18px;
  text-align:center;
  color:#64748b;
  font-size:12px;
  font-weight:800;
}
@media (max-width: 1100px) {
  .workspace-top {
    top:72px;
  }
  .io-grid,
  .modern-io-grid {
    grid-template-columns:1fr !important;
  }
}


/* Enterprise frame recovery safeguards */

/* Restore stable page flow */
html, body, #root {
  width:100%;
  min-height:100%;
  overflow-x:hidden;
}
body {
  background:#f6f9fc !important;
}

/* Header should stay normal and not create layered blank space */
.header.compact-header {
  position:relative !important;
  top:auto !important;
  z-index:20 !important;
  padding:14px 18px !important;
}

/* Container should be fluid, but not 100vw because that causes scrollbar/offset issues */
.container {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:14px 14px 38px !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}

/* This was the main collapse source: sticky workspace top layered under filters */
.workspace-top {
  position:relative !important;
  top:auto !important;
  z-index:5 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  margin:0 0 14px !important;
  padding:10px 12px !important;
  background:#ffffff !important;
  border:1px solid #d7e2ee !important;
  border-radius:14px !important;
  box-shadow:0 8px 22px rgba(15,23,42,.045) !important;
}

/* Tabs must stay fully visible and never hide behind the filter panel */
.modern-tabs {
  position:relative !important;
  z-index:6 !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:4px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  max-width:calc(100vw - 390px) !important;
  padding:5px !important;
  border-radius:12px !important;
}
.modern-tabs button {
  min-width:max-content !important;
  height:38px !important;
  padding:0 14px !important;
  border-radius:10px !important;
  white-space:nowrap !important;
}
.scope-toolbar {
  position:relative !important;
  z-index:6 !important;
  flex:0 0 auto !important;
  min-width:max-content !important;
  border-radius:12px !important;
}

/* Filters should be below tabs in normal flow */
.panel-filters,
.filters.panel-filters {
  position:relative !important;
  z-index:1 !important;
  margin:0 0 12px !important;
  padding:14px !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 8px 22px rgba(15,23,42,.045) !important;
}

/* Notes and bulk bars in normal flow */
.note {
  position:relative !important;
  z-index:1 !important;
  margin:10px 0 10px !important;
  border-radius:10px !important;
}
.bulk-update-bar {
  position:relative !important;
  z-index:1 !important;
  margin:10px 0 12px !important;
  border-radius:12px !important;
}

/* Restore table cards - no overlapping or hidden top */
.table-wrap,
.elegant-table,
.phase-table,
.cnd-table,
.tree-table-card,
.schedule-group-card,
.pmo-card {
  position:relative !important;
  z-index:1 !important;
  width:100% !important;
  max-width:100% !important;
  border-radius:14px !important;
  overflow:auto !important;
  box-sizing:border-box !important;
}

/* Keep first column visible and not clipped */
.elegant-table table,
.phase-table table {
  width:100% !important;
  min-width:1320px !important;
  table-layout:fixed !important;
}
.phase-table table {
  min-width:1460px !important;
}
.elegant-table th:first-child,
.elegant-table td:first-child,
.phase-table th:first-child,
.phase-table td:first-child {
  width:96px !important;
  min-width:96px !important;
  max-width:96px !important;
  overflow:visible !important;
  text-overflow:clip !important;
  padding-left:16px !important;
  padding-right:10px !important;
}
.row-select-cell {
  width:96px !important;
  min-width:96px !important;
  max-width:96px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:9px !important;
  overflow:visible !important;
}
.row-select-cell input[type="checkbox"] {
  flex:0 0 auto !important;
  width:16px !important;
  height:16px !important;
}
.row-select-cell .expand-btn {
  flex:0 0 auto !important;
  width:26px !important;
  min-width:26px !important;
  height:26px !important;
}

/* Prevent artificial ellipsis dots from breaking the visual hierarchy */
.elegant-table td,
.elegant-table th,
.phase-table td,
.phase-table th {
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  vertical-align:middle !important;
}
.elegant-table td:first-child,
.phase-table td:first-child {
  overflow:visible !important;
}

/* Quick action column protected */
.quick-cell {
  width:134px !important;
  min-width:134px !important;
  max-width:134px !important;
  overflow:visible !important;
}
.quick-cell .micro-btn {
  width:112px !important;
  justify-content:center !important;
}

/* Detail rows should wrap naturally inside detail panel only */
.detail-row td,
.phase-detail-row td {
  white-space:normal !important;
  overflow:visible !important;
}
.detail-panel,
.phase-detail-panel {
  width:100% !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}

/* Radius kept enterprise-like, not circular */
.login-card,
.workspace-top,
.panel-filters,
.table-wrap,
.elegant-table,
.pmo-card,
.tree-table-card,
.schedule-group-card,
.bulk-update-bar,
.views-hero,
.schedule-view-hero,
.tree-hero,
.impact-hero,
.plan-top-card,
.resource-matrix-hero {
  border-radius:14px !important;
}
button,
input,
select,
textarea,
.rag,
.pill,
.status-pill,
.bucket-pill,
.summary-chip,
.micro-btn,
.small-btn,
.action-link,
.search-wrap,
.modern-tabs button,
.chip-filter button,
.scope-toolbar,
.header-logo,
.login-logo-box {
  border-radius:10px !important;
}

/* Current/Next/Delay full-width but stable */
.cnd-table table {
  width:100% !important;
  min-width:1180px !important;
  table-layout:fixed !important;
}
.cnd-table td,
.cnd-table th {
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.cnd-table td:nth-child(4),
.cnd-table th:nth-child(4) { width:25% !important; }
.cnd-table td:nth-child(9),
.cnd-table th:nth-child(9) { width:26% !important; }

/* Header/footer spacing */
.footer {
  margin-top:18px !important;
  padding:10px 0 !important;
}

/* Responsive recovery */
@media (max-width:1300px) {
  .workspace-top {
    flex-direction:column !important;
    align-items:stretch !important;
  }
  .modern-tabs {
    max-width:100% !important;
  }
  .scope-toolbar {
    width:max-content !important;
    max-width:100% !important;
    overflow-x:auto !important;
  }
}


/* Enterprise section*/
.health-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.health-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.health-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.health-actions {
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.health-version-card {
  display:grid;
  grid-template-columns:1.3fr 1fr 1.2fr 1.8fr;
  gap:10px;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:12px;
  margin-bottom:14px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.health-version-card div {
  display:grid;
  gap:4px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:10px;
  min-width:0;
}
.health-version-card span {
  color:#64748b;
  font-size:10px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.health-version-card b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.health-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(145px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.health-kpi {
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
  display:grid;
  gap:4px;
}
.health-kpi span {
  color:#64748b;
  font-size:10px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.health-kpi b {
  font-size:24px;
  color:#071b33;
  white-space:nowrap;
}
.health-kpi small {
  color:#64748b;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.health-kpi.green { background:#f0fdf4; border-color:#bbf7d0; }
.health-kpi.amber { background:#fffbeb; border-color:#fde68a; }
.health-kpi.red { background:#fef2f2; border-color:#fecaca; }
.health-two-col {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:14px;
  margin-bottom:14px;
}
.health-badge-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px;
}
.health-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 8px;
  border-radius:10px;
  font-size:11px;
  font-weight:950;
  white-space:nowrap;
}
.health-badge.ok {
  background:#dcfce7;
  color:#166534;
  border:1px solid #bbf7d0;
}
.health-badge.bad {
  background:#fee2e2;
  color:#991b1b;
  border:1px solid #fecaca;
}
.health-env-list {
  display:grid;
  gap:8px;
}
.health-env-list div {
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:8px 10px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:10px;
}
.health-env-list span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
}
.health-env-list b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rc-checklist {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.rc-checklist div {
  display:flex;
  align-items:center;
  gap:8px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:8px 10px;
  min-width:0;
}
.rc-checklist span {
  color:#0f766e;
  font-weight:950;
}
.rc-checklist b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.health-table-wrap {
  width:100%;
  overflow:auto;
  max-height:680px;
}
.health-table {
  min-width:1180px !important;
}
.health-table th,
.health-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.health-row-warn {
  background:#fff7ed;
}

@media (max-width:1300px) {
  .health-hero,
  .health-version-card,
  .health-two-col {
    grid-template-columns:1fr;
  }
  .health-hero h2,
  .health-hero p {
    white-space:normal;
  }
  .health-kpi-grid {
    grid-template-columns:repeat(3,minmax(145px,1fr));
  }
}
@media (max-width:760px) {
  .health-kpi-grid,
  .health-badge-grid,
  .rc-checklist {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.admin-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.admin-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.admin-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.admin-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.admin-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.admin-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.admin-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.admin-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(145px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.admin-two-col {
  display:grid;
  grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);
  gap:14px;
  align-items:start;
}
.admin-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.admin-form-grid.single {
  grid-template-columns:1fr;
}
.admin-field {
  display:grid;
  gap:6px;
}
.admin-field span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.admin-field input,
.admin-field select,
.admin-field textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.admin-field textarea {
  height:auto;
  min-height:90px;
  padding:10px;
}
.admin-actions {
  display:flex;
  align-items:end;
  justify-content:flex-end;
  grid-column:1 / -1;
  gap:8px;
}
.admin-table-wrap {
  width:100%;
  max-height:690px;
  overflow:auto;
}
.admin-table {
  min-width:980px !important;
}
.admin-table th,
.admin-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.admin-table td:nth-child(5),
.admin-table td:nth-child(6) {
  max-width:320px;
}
.admin-ops {
  display:flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}
.admin-record-list {
  display:grid;
  gap:10px;
  max-height:690px;
  overflow:auto;
}
.admin-record-card {
  display:grid;
  gap:4px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.admin-record-card strong {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.admin-record-card span {
  color:#64748b;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media (max-width:1300px) {
  .admin-hero,
  .admin-two-col {
    grid-template-columns:1fr;
  }
  .admin-hero h2,
  .admin-hero p {
    white-space:normal;
  }
  .admin-kpi-grid {
    grid-template-columns:repeat(3,minmax(145px,1fr));
  }
}
@media (max-width:760px) {
  .admin-form-grid,
  .admin-kpi-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.excel-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.excel-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.excel-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.excel-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.excel-two-col {
  display:grid;
  grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);
  gap:14px;
  margin-bottom:14px;
}
.excel-form-grid {
  display:grid;
  grid-template-columns:1.2fr .8fr .4fr;
  gap:10px;
  align-items:end;
}
.excel-form-grid label {
  display:grid;
  gap:6px;
}
.excel-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.excel-form-grid input,
.excel-form-grid select {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.excel-file-field input {
  padding:8px 10px;
}
.excel-help {
  margin-top:14px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:12px;
}
.excel-help h4 {
  margin:0 0 8px;
  color:#0f172a;
}
.excel-help p {
  margin:6px 0;
  color:#475569;
  font-size:12px;
  line-height:1.45;
}
.excel-preview-summary {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.excel-preview-summary div {
  display:grid;
  gap:4px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:10px;
  min-width:0;
}
.excel-preview-summary span {
  color:#64748b;
  font-size:10px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.excel-preview-summary b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.excel-table-wrap {
  width:100%;
  overflow:auto;
  max-height:640px;
}
.excel-table {
  min-width:1180px !important;
}
.excel-table th,
.excel-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media (max-width:1300px) {
  .excel-hero,
  .excel-two-col,
  .excel-form-grid {
    grid-template-columns:1fr;
  }
  .excel-hero h2,
  .excel-hero p {
    white-space:normal;
  }
}


/* Enterprise section*/
.reports-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.reports-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.reports-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.reports-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.reports-kpi-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(160px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.reports-two-col {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.reports-card-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.report-type-card {
  text-align:left;
  display:grid;
  gap:5px;
  border:1px solid #d7e2ee;
  background:#f8fafc;
  border-radius:12px;
  padding:12px;
  cursor:pointer;
  min-height:92px;
}
.report-type-card strong {
  color:#0f172a;
  font-size:14px;
}
.report-type-card span {
  color:#64748b;
  font-size:12px;
  line-height:1.35;
}
.report-type-card.active {
  background:#ecfdf5;
  border-color:#5eead4;
  box-shadow:0 8px 22px rgba(15,118,110,.12);
}
.reports-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.reports-form-grid label {
  display:grid;
  gap:6px;
}
.reports-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.reports-form-grid select {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.reports-download-box {
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:12px;
}
.reports-download-box small {
  color:#64748b;
  font-weight:800;
}
.reports-table-wrap {
  width:100%;
  overflow:auto;
}
.reports-table {
  min-width:900px !important;
}
.reports-table th,
.reports-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media (max-width:1300px) {
  .reports-hero,
  .reports-two-col {
    grid-template-columns:1fr;
  }
  .reports-hero h2,
  .reports-hero p {
    white-space:normal;
  }
}
@media (max-width:760px) {
  .reports-kpi-grid,
  .reports-card-grid,
  .reports-form-grid {
    grid-template-columns:1fr;
  }
  .reports-download-box {
    align-items:flex-start;
    flex-direction:column;
  }
}


/* Enterprise section*/
.schedule-edit-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.schedule-edit-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-edit-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-edit-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.schedule-edit-kpi-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(160px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.schedule-edit-select-grid {
  grid-template-columns:180px 180px minmax(320px,1fr) !important;
}
.schedule-edit-board {
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
  overflow:auto;
  padding:10px;
  user-select:none;
  touch-action:none;
  margin-bottom:14px;
}
.schedule-edit-timeline-head,
.schedule-edit-row {
  min-width:1240px;
  display:grid;
  grid-template-columns:390px minmax(680px,1fr) 190px;
  gap:10px;
  align-items:center;
}
.schedule-edit-timeline-head {
  position:sticky;
  top:0;
  z-index:2;
  background:#fff;
  border-bottom:1px solid #e2e8f0;
  padding:8px 0 10px;
  margin-bottom:4px;
}
.schedule-edit-axis {
  position:relative;
  height:34px;
  background:repeating-linear-gradient(to right,#f1f5f9 0,#f1f5f9 1px,transparent 1px,transparent 12.5%);
  border:1px solid #e2e8f0;
  border-radius:10px;
}
.schedule-edit-axis span {
  position:absolute;
  top:8px;
  transform:translateX(-50%);
  color:#64748b;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
}
.schedule-edit-row {
  min-height:72px;
  border-bottom:1px solid #eef2f7;
}
.schedule-edit-row.changed {
  background:#fffbeb;
}
.schedule-edit-row-label {
  min-width:0;
  display:grid;
  gap:3px;
  padding:8px;
}
.schedule-edit-row-label b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-edit-row-label span {
  color:#334155;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-edit-row-label small {
  color:#64748b;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.schedule-edit-lane {
  position:relative;
  height:44px;
  background:repeating-linear-gradient(to right,#f8fafc 0,#f8fafc 1px,transparent 1px,transparent 12.5%);
  border:1px solid #e2e8f0;
  border-radius:10px;
}
.schedule-edit-bar {
  position:absolute;
  top:8px;
  height:26px;
  border-radius:9px;
  cursor:grab;
  min-width:28px;
  overflow:visible;
  box-shadow:0 6px 14px rgba(15,23,42,.12);
}
.schedule-edit-bar:active {
  cursor:grabbing;
}
.schedule-edit-bar.green {
  background:#bbf7d0;
  border:1px solid #86efac;
}
.schedule-edit-bar.amber,
.schedule-edit-bar.null,
.schedule-edit-bar.undefined,
.schedule-edit-bar {
  background:#fde68a;
  border:1px solid #fcd34d;
}
.schedule-edit-bar.red {
  background:#fecaca;
  border:1px solid #fca5a5;
}
.schedule-edit-bar i {
  display:block;
  height:100%;
  max-width:100%;
  background:rgba(15,23,42,.18);
  border-radius:8px;
  pointer-events:none;
}
.schedule-handle {
  position:absolute;
  top:-3px;
  width:10px;
  height:32px;
  border:1px solid rgba(15,23,42,.25);
  background:#fff;
  border-radius:6px !important;
  cursor:ew-resize;
  padding:0;
  z-index:2;
}
.schedule-handle.left { left:-5px; }
.schedule-handle.right { right:-5px; }
.schedule-edit-controls {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:6px;
  overflow:auto;
  padding-right:8px;
}
.schedule-change-table-wrap {
  width:100%;
  overflow:auto;
}
.schedule-change-table {
  min-width:980px !important;
}
.schedule-change-table input {
  width:100%;
  height:34px;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 8px;
}
@media (max-width:1300px) {
  .schedule-edit-hero,
  .schedule-edit-select-grid {
    grid-template-columns:1fr !important;
  }
  .schedule-edit-hero h2,
  .schedule-edit-hero p {
    white-space:normal;
  }
  .schedule-edit-kpi-grid {
    grid-template-columns:repeat(2,minmax(160px,1fr));
  }
}
@media (max-width:760px) {
  .schedule-edit-kpi-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.schedule-edit-timeline-head,
.schedule-edit-row {
  grid-template-columns:340px minmax(560px,1fr) 360px !important;
  min-width:1280px !important;
}
.schedule-edit-row {
  min-height:88px !important;
}
.schedule-edit-row-label {
  padding:10px 8px !important;
}
.schedule-edit-lane {
  height:52px !important;
}
.schedule-edit-bar {
  top:10px !important;
  height:32px !important;
  min-width:42px !important;
  border-radius:10px !important;
}
.schedule-edit-bar::after {
  content:"drag";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  font-size:9px;
  font-weight:950;
  color:rgba(15,23,42,.55);
  pointer-events:none;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.schedule-handle {
  top:-6px !important;
  width:18px !important;
  height:44px !important;
  border:2px solid rgba(15,23,42,.22) !important;
  background:#ffffff !important;
  border-radius:8px !important;
  box-shadow:0 4px 10px rgba(15,23,42,.12);
}
.schedule-handle.left { left:-10px !important; }
.schedule-handle.right { right:-10px !important; }
.schedule-handle::after {
  content:"";
  display:block;
  width:4px;
  height:20px;
  margin:10px auto;
  border-left:1px solid #94a3b8;
  border-right:1px solid #94a3b8;
}
.schedule-edit-controls {
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:6px !important;
  align-items:center !important;
  overflow:visible !important;
  padding:6px 8px !important;
}
.schedule-date-inputs {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
}
.schedule-date-inputs label {
  display:grid;
  gap:3px;
}
.schedule-date-inputs span {
  color:#64748b;
  font-size:9px;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.schedule-date-inputs input {
  width:100%;
  height:30px;
  border:1px solid #d7e2ee;
  border-radius:8px;
  padding:0 6px;
  font-size:11px;
  font-weight:800;
  color:#0f172a;
  background:#fff;
}
.schedule-quick-buttons {
  display:flex;
  align-items:center;
  gap:5px;
  overflow:auto;
  white-space:nowrap;
}
.schedule-quick-buttons .micro-btn {
  min-width:48px;
  height:28px;
  padding:0 8px;
  justify-content:center;
}
.schedule-edit-axis {
  height:38px !important;
}
.schedule-edit-axis span {
  top:10px !important;
}
.schedule-edit-row.changed .schedule-date-inputs input {
  border-color:#f59e0b;
  background:#fff7ed;
}
.schedule-change-table input {
  min-width:240px;
}

@media (max-width:1300px) {
  .schedule-edit-timeline-head,
  .schedule-edit-row {
    grid-template-columns:320px minmax(520px,1fr) 340px !important;
  }
}


/* Enterprise section*/
.calendar-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.calendar-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.calendar-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.calendar-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.calendar-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.calendar-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.calendar-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.calendar-kpi-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(160px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.calendar-two-col {
  display:grid;
  grid-template-columns:minmax(430px,.9fr) minmax(0,1.1fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.calendar-rule-list {
  display:grid;
  gap:10px;
}
.calendar-rule-list div {
  display:flex;
  align-items:center;
  gap:9px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.calendar-rule-list span {
  color:#0f766e;
  font-weight:950;
}
.calendar-rule-list b {
  color:#0f172a;
  font-size:12px;
  line-height:1.35;
}
.calendar-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.calendar-field {
  display:grid;
  gap:6px;
}
.calendar-field span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.calendar-field input,
.calendar-field select,
.calendar-field textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.calendar-field textarea {
  height:auto;
  min-height:86px;
  padding:10px;
}
.calendar-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:8px;
}
.calendar-table-wrap {
  width:100%;
  overflow:auto;
  max-height:690px;
}
.calendar-table {
  min-width:980px !important;
}
.calendar-table th,
.calendar-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.calendar-record-list {
  display:grid;
  gap:10px;
  max-height:630px;
  overflow:auto;
}
.calendar-record-card {
  display:grid;
  gap:4px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.calendar-record-card strong {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.calendar-record-card span {
  color:#64748b;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.calendar-result-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.calendar-result-grid div {
  display:grid;
  gap:4px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:12px;
}
.calendar-result-grid span {
  color:#64748b;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.calendar-result-grid b {
  color:#0f172a;
  font-size:14px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Calendar-aware schedule editor */
.schedule-edit-row-label small {
  color:#475569 !important;
}
.schedule-quick-buttons .micro-btn {
  min-width:62px !important;
}
.schedule-edit-row.changed .schedule-edit-row-label small {
  color:#92400e !important;
}

@media (max-width:1300px) {
  .calendar-hero,
  .calendar-two-col {
    grid-template-columns:1fr;
  }
  .calendar-hero h2,
  .calendar-hero p {
    white-space:normal;
  }
  .calendar-kpi-grid {
    grid-template-columns:repeat(2,minmax(160px,1fr));
  }
}
@media (max-width:760px) {
  .calendar-kpi-grid,
  .calendar-form-grid,
  .calendar-result-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.timesheet-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.timesheet-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.timesheet-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.timesheet-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.timesheet-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.timesheet-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.timesheet-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.timesheet-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(145px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.timesheet-filter-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(140px,1fr));
  gap:10px;
}
.timesheet-filter-grid label {
  display:grid;
  gap:6px;
}
.timesheet-filter-grid span,
.timesheet-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.timesheet-filter-grid input,
.timesheet-filter-grid select,
.timesheet-form-grid input,
.timesheet-form-grid select,
.timesheet-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.timesheet-form-grid textarea {
  height:auto;
  min-height:90px;
  padding:10px;
}
.timesheet-two-col {
  display:grid;
  grid-template-columns:minmax(430px,.9fr) minmax(0,1.1fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.timesheet-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.timesheet-form-grid label {
  display:grid;
  gap:6px;
}
.timesheet-form-grid label.wide {
  grid-column:1 / -1;
}
.timesheet-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.timesheet-table-wrap {
  width:100%;
  max-height:720px;
  overflow:auto;
}
.timesheet-table {
  min-width:1120px !important;
}
.timesheet-table th,
.timesheet-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.timesheet-table td:nth-child(3),
.timesheet-table td:nth-child(6) {
  max-width:360px;
}
.timesheet-status {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:4px 8px;
  border-radius:10px;
  font-size:11px;
  font-weight:950;
  border:1px solid #dbeafe;
  background:#eff6ff;
  color:#1d4ed8;
}
.timesheet-status.draft {
  background:#f1f5f9;
  color:#334155;
  border-color:#e2e8f0;
}
.timesheet-status.submitted {
  background:#fffbeb;
  color:#92400e;
  border-color:#fde68a;
}
.timesheet-status.approved {
  background:#dcfce7;
  color:#166534;
  border-color:#bbf7d0;
}
.timesheet-status.rejected {
  background:#fee2e2;
  color:#991b1b;
  border-color:#fecaca;
}
.timesheet-approval-actions {
  display:flex;
  justify-content:flex-end;
  margin-bottom:10px;
}
.timesheet-export-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:12px;
}
.timesheet-export-note {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:12px;
  color:#475569;
  font-size:12px;
  font-weight:800;
}
.timesheet-summary-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.timesheet-summary-grid div {
  display:grid;
  gap:4px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:12px;
}
.timesheet-summary-grid span {
  color:#64748b;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.timesheet-summary-grid b {
  color:#0f172a;
  font-size:22px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

@media (max-width:1350px) {
  .timesheet-hero,
  .timesheet-two-col {
    grid-template-columns:1fr;
  }
  .timesheet-hero h2,
  .timesheet-hero p {
    white-space:normal;
  }
  .timesheet-kpi-grid {
    grid-template-columns:repeat(3,minmax(145px,1fr));
  }
  .timesheet-filter-grid {
    grid-template-columns:repeat(3,minmax(140px,1fr));
  }
}
@media (max-width:760px) {
  .timesheet-kpi-grid,
  .timesheet-filter-grid,
  .timesheet-form-grid,
  .timesheet-summary-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.timesheet-readiness {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:12px 14px;
  margin-bottom:14px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.timesheet-readiness b {
  display:block;
  color:#0f172a;
  font-size:13px;
  margin-bottom:3px;
}
.timesheet-readiness span {
  color:#64748b;
  font-size:12px;
  font-weight:800;
}
.timesheet-readiness-metrics {
  display:flex;
  gap:8px;
  flex-wrap:nowrap;
  overflow:auto;
  white-space:nowrap;
}
.timesheet-readiness-metrics span {
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:4px 8px;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  color:#166534;
  border-radius:10px;
  font-size:11px;
  font-weight:950;
}
.timesheet-table th:first-child,
.timesheet-table td:first-child {
  min-width:92px;
}
.timesheet-table th:nth-child(3),
.timesheet-table td:nth-child(3),
.timesheet-table th:nth-child(6),
.timesheet-table td:nth-child(6) {
  min-width:260px;
}
.timesheet-table th:last-child,
.timesheet-table td:last-child {
  min-width:140px;
  overflow:visible !important;
}
.timesheet-table .micro-btn {
  min-width:62px;
  justify-content:center;
}
.timesheet-form-grid select,
.timesheet-form-grid input,
.timesheet-filter-grid select,
.timesheet-filter-grid input {
  min-height:40px;
}
.timesheet-form-grid select:focus,
.timesheet-form-grid input:focus,
.timesheet-form-grid textarea:focus,
.timesheet-filter-grid select:focus,
.timesheet-filter-grid input:focus {
  outline:2px solid rgba(15,118,110,.18);
  border-color:#0f766e;
}
.timesheet-approval-actions {
  position:sticky;
  top:0;
  z-index:3;
  background:#fff;
  padding:6px 0 10px;
}
@media (max-width:1100px) {
  .timesheet-readiness {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.timesheet-readiness-metrics span:nth-child(3),
.timesheet-readiness-metrics span:nth-child(4) {
  background:#eff6ff;
  border-color:#bfdbfe;
  color:#1d4ed8;
}
.timesheet-form-grid select option {
  font-weight:700;
}
.timesheet-export-note strong {
  color:#0f172a;
}


/* Enterprise section*/
.cost-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.cost-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cost-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cost-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.cost-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.cost-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.cost-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.cost-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(150px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.cost-filter-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(160px,1fr));
  gap:10px;
}
.cost-filter-grid label,
.cost-form-grid label {
  display:grid;
  gap:6px;
}
.cost-filter-grid span,
.cost-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.cost-filter-grid input,
.cost-filter-grid select,
.cost-form-grid input,
.cost-form-grid select,
.cost-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.cost-form-grid textarea {
  height:auto;
  min-height:82px;
  padding:10px;
}
.cost-two-col {
  display:grid;
  grid-template-columns:minmax(430px,.85fr) minmax(0,1.15fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.cost-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.cost-form-grid label.wide {
  grid-column:1 / -1;
}
.cost-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.cost-table-wrap {
  width:100%;
  max-height:720px;
  overflow:auto;
}
.cost-table {
  min-width:1120px !important;
}
.cost-table th,
.cost-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cost-table td:nth-child(1),
.cost-table td:nth-child(3),
.cost-table td:nth-child(5) {
  max-width:340px;
}
.actual-cost-table {
  min-width:1280px !important;
}
.cost-readiness-list {
  display:grid;
  gap:10px;
}
.cost-readiness-list div {
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:10px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.cost-readiness-list span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.cost-readiness-list b {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cost-export-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:12px;
}
.cost-export-note {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:12px;
  color:#475569;
  font-size:12px;
  font-weight:800;
}

@media (max-width:1350px) {
  .cost-hero,
  .cost-two-col {
    grid-template-columns:1fr;
  }
  .cost-hero h2,
  .cost-hero p {
    white-space:normal;
  }
  .cost-kpi-grid {
    grid-template-columns:repeat(3,minmax(150px,1fr));
  }
  .cost-filter-grid {
    grid-template-columns:repeat(2,minmax(160px,1fr));
  }
}
@media (max-width:760px) {
  .cost-kpi-grid,
  .cost-filter-grid,
  .cost-form-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.evm-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.evm-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.evm-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.evm-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.evm-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.evm-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.evm-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.evm-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(150px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.evm-filter-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(160px,1fr));
  gap:10px;
}
.evm-filter-grid label,
.evm-form-grid label {
  display:grid;
  gap:6px;
}
.evm-filter-grid span,
.evm-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.evm-filter-grid input,
.evm-filter-grid select,
.evm-form-grid input,
.evm-form-grid select,
.evm-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.evm-two-col {
  display:grid;
  grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.evm-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.evm-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.evm-table-wrap {
  width:100%;
  max-height:720px;
  overflow:auto;
}
.evm-table {
  min-width:1120px !important;
}
.evm-detail-table {
  min-width:1720px !important;
}
.evm-table th,
.evm-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.evm-table td:nth-child(3) {
  max-width:360px;
}
.evm-health {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:4px 9px;
  border-radius:10px;
  font-size:11px;
  font-weight:950;
  border:1px solid #fde68a;
  background:#fffbeb;
  color:#92400e;
}
.evm-health.green {
  background:#dcfce7;
  color:#166534;
  border-color:#bbf7d0;
}
.evm-health.red {
  background:#fee2e2;
  color:#991b1b;
  border-color:#fecaca;
}
.evm-readiness-list,
.evm-formula-list {
  display:grid;
  gap:10px;
}
.evm-readiness-list div {
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:10px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.evm-readiness-list span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.evm-readiness-list b {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.evm-formula-list div,
.evm-export-note {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
  color:#334155;
  font-size:12px;
  font-weight:850;
}
.evm-export-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:12px;
}
@media (max-width:1350px) {
  .evm-hero,
  .evm-two-col {
    grid-template-columns:1fr;
  }
  .evm-hero h2,
  .evm-hero p {
    white-space:normal;
  }
  .evm-kpi-grid {
    grid-template-columns:repeat(4,minmax(150px,1fr));
  }
  .evm-filter-grid {
    grid-template-columns:repeat(2,minmax(160px,1fr));
  }
}
@media (max-width:760px) {
  .evm-kpi-grid,
  .evm-filter-grid,
  .evm-form-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.leveling-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.leveling-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.leveling-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.leveling-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.leveling-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.leveling-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.leveling-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.leveling-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(150px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.leveling-filter-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(150px,1fr));
  gap:10px;
}
.leveling-filter-grid label,
.leveling-form-grid label {
  display:grid;
  gap:6px;
}
.leveling-filter-grid span,
.leveling-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.leveling-filter-grid input,
.leveling-filter-grid select,
.leveling-form-grid input,
.leveling-form-grid select,
.leveling-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.leveling-two-col {
  display:grid;
  grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.leveling-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.leveling-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.leveling-table-wrap {
  width:100%;
  max-height:720px;
  overflow:auto;
}
.leveling-table {
  min-width:1120px !important;
}
.leveling-workload-table {
  min-width:1320px !important;
}
.leveling-table th,
.leveling-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.level-status {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:4px 9px;
  border-radius:10px;
  font-size:11px;
  font-weight:950;
  border:1px solid #bbf7d0;
  background:#dcfce7;
  color:#166534;
}
.level-status.overloaded {
  background:#fee2e2;
  color:#991b1b;
  border-color:#fecaca;
}
.level-status.near-capacity {
  background:#fffbeb;
  color:#92400e;
  border-color:#fde68a;
}
.level-status.underloaded {
  background:#eff6ff;
  color:#1d4ed8;
  border-color:#bfdbfe;
}
.leveling-readiness-list {
  display:grid;
  gap:10px;
}
.leveling-readiness-list div {
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:10px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.leveling-readiness-list span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.leveling-readiness-list b {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.leveling-card-list {
  display:grid;
  gap:10px;
  max-height:720px;
  overflow:auto;
}
.leveling-suggestion-card {
  display:grid;
  gap:5px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.leveling-suggestion-card strong {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.leveling-suggestion-card span {
  color:#334155;
  font-size:12px;
  font-weight:850;
}
.leveling-suggestion-card small {
  color:#64748b;
  font-size:11px;
  font-weight:850;
}
.leveling-export-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:12px;
}
.leveling-export-note {
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
  color:#334155;
  font-size:12px;
  font-weight:850;
}
@media (max-width:1350px) {
  .leveling-hero,
  .leveling-two-col {
    grid-template-columns:1fr;
  }
  .leveling-hero h2,
  .leveling-hero p {
    white-space:normal;
  }
  .leveling-kpi-grid {
    grid-template-columns:repeat(3,minmax(150px,1fr));
  }
  .leveling-filter-grid {
    grid-template-columns:repeat(2,minmax(150px,1fr));
  }
}
@media (max-width:760px) {
  .leveling-kpi-grid,
  .leveling-filter-grid,
  .leveling-form-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.integrity-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.integrity-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.integrity-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.integrity-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.integrity-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.integrity-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.integrity-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.integrity-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(150px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.integrity-two-col {
  display:grid;
  grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.integrity-readiness-list {
  display:grid;
  gap:10px;
}
.integrity-readiness-list div {
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:10px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.integrity-readiness-list span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.integrity-readiness-list b {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.integrity-report-note {
  display:grid;
  gap:6px;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  border-radius:12px;
  padding:12px;
  color:#166534;
  margin-bottom:12px;
}
.integrity-report-note b {
  color:#064e3b;
}
.integrity-report-note span {
  font-size:12px;
  font-weight:850;
}
.integrity-table-wrap {
  width:100%;
  max-height:720px;
  overflow:auto;
}
.integrity-table {
  min-width:1160px !important;
}
.integrity-rollup-table {
  min-width:1320px !important;
}
.integrity-table th,
.integrity-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.integrity-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.integrity-form-grid label {
  display:grid;
  gap:6px;
}
.integrity-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.integrity-form-grid input,
.integrity-form-grid select {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.integrity-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.integrity-card-list {
  display:grid;
  gap:10px;
  max-height:720px;
  overflow:auto;
}
.integrity-log-card {
  display:grid;
  gap:5px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.integrity-log-card strong {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.integrity-log-card span {
  color:#334155;
  font-size:12px;
  font-weight:850;
}
.integrity-log-card small {
  color:#64748b;
  font-size:11px;
  font-weight:850;
}
@media (max-width:1350px) {
  .integrity-hero,
  .integrity-two-col {
    grid-template-columns:1fr;
  }
  .integrity-hero h2,
  .integrity-hero p {
    white-space:normal;
  }
  .integrity-kpi-grid {
    grid-template-columns:repeat(3,minmax(150px,1fr));
  }
}
@media (max-width:760px) {
  .integrity-kpi-grid,
  .integrity-form-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.delivery-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.delivery-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.delivery-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.delivery-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.delivery-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.delivery-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.delivery-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.delivery-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(150px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.delivery-two-col {
  display:grid;
  grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.delivery-readiness-list {
  display:grid;
  gap:10px;
}
.delivery-readiness-list div {
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:10px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.delivery-readiness-list span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.delivery-readiness-list b {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.delivery-table-wrap {
  width:100%;
  max-height:720px;
  overflow:auto;
}
.delivery-table {
  min-width:1180px !important;
}
.delivery-activity-table,
.delivery-closure-table {
  min-width:1580px !important;
}
.delivery-table th,
.delivery-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.delivery-table td:nth-child(3),
.delivery-table td:nth-child(4),
.delivery-table td:nth-child(9) {
  max-width:360px;
}
.delivery-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.delivery-form-grid label {
  display:grid;
  gap:6px;
}
.delivery-form-grid label.wide {
  grid-column:1 / -1;
}
.delivery-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.delivery-form-grid input,
.delivery-form-grid select,
.delivery-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.delivery-form-grid textarea {
  height:auto;
  min-height:90px;
  padding:10px;
}
.delivery-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
@media (max-width:1350px) {
  .delivery-hero,
  .delivery-two-col {
    grid-template-columns:1fr;
  }
  .delivery-hero h2,
  .delivery-hero p {
    white-space:normal;
  }
  .delivery-kpi-grid {
    grid-template-columns:repeat(4,minmax(150px,1fr));
  }
}
@media (max-width:760px) {
  .delivery-kpi-grid,
  .delivery-form-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.bell-btn {
  position:relative;
  height:34px;
  min-width:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d7e2ee;
  background:#fff;
  border-radius:10px;
  cursor:pointer;
  font-weight:950;
}
.bell-count {
  position:absolute;
  top:-7px;
  right:-7px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#dc2626;
  color:#fff;
  font-size:10px;
  font-weight:950;
  border:2px solid #fff;
}
.rbac-hero,
.notif-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#0f766e);
  color:#fff;
  padding:20px 22px;
  margin-bottom:14px;
  box-shadow:0 20px 54px rgba(15,23,42,.14);
  border-radius:14px;
}
.rbac-hero h2,
.notif-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rbac-hero p,
.notif-hero p {
  margin:0;
  color:#dcefe6;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rbac-hero-actions,
.notif-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.rbac-mode-tabs,
.notif-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.rbac-mode-tabs button,
.notif-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.rbac-mode-tabs button.active,
.notif-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.rbac-kpi-grid,
.notif-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(150px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.rbac-widget-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(220px,1fr));
  gap:12px;
  margin-bottom:14px;
}
.rbac-widget-card {
  min-height:112px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:14px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
  cursor:pointer;
}
.rbac-widget-card:hover {
  border-color:#0f766e;
}
.rbac-widget-card b {
  display:block;
  color:#0f172a;
  margin-bottom:5px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rbac-widget-card span,
.rbac-widget-card small {
  color:#64748b;
  font-size:12px;
  font-weight:850;
}
.rbac-widget-card strong {
  color:#0f766e;
  font-size:28px;
  white-space:nowrap;
}
.rbac-two-col,
.notif-two-col {
  display:grid;
  grid-template-columns:minmax(420px,.85fr) minmax(0,1.15fr);
  gap:14px;
  margin-bottom:14px;
  align-items:start;
}
.rbac-readiness-list {
  display:grid;
  gap:10px;
}
.rbac-readiness-list div {
  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  gap:10px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.rbac-readiness-list span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.rbac-readiness-list b {
  color:#0f172a;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rbac-chip-list {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.rbac-chip {
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1d4ed8;
  border-radius:10px;
  padding:7px 10px;
  font-size:12px;
  font-weight:950;
  cursor:pointer;
}
.rbac-form-grid,
.notif-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.rbac-form-grid label,
.notif-form-grid label {
  display:grid;
  gap:6px;
}
.notif-form-grid label.wide {
  grid-column:1 / -1;
}
.rbac-form-grid span,
.notif-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.rbac-form-grid input,
.rbac-form-grid select,
.notif-form-grid input,
.notif-form-grid select,
.notif-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.notif-form-grid textarea {
  height:auto;
  min-height:90px;
  padding:10px;
}
.rbac-actions,
.notif-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.rbac-warning {
  margin-top:10px;
  background:#fffbeb;
  border:1px solid #fde68a;
  color:#92400e;
  padding:10px 12px;
  border-radius:12px;
  font-weight:850;
  font-size:12px;
}
.rbac-table-wrap,
.notif-table-wrap {
  width:100%;
  max-height:720px;
  overflow:auto;
}
.rbac-table,
.notif-table {
  min-width:980px !important;
}
.rbac-table th,
.rbac-table td,
.notif-table th,
.notif-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.notif-list {
  display:grid;
  gap:10px;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.notif-card {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:11px 12px;
  cursor:pointer;
}
.notif-card.unread {
  background:#eff6ff;
  border-color:#bfdbfe;
}
.notif-card b {
  display:block;
  color:#0f172a;
  margin-bottom:4px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.notif-card span {
  color:#334155;
  font-size:12px;
  font-weight:850;
}
.notif-card small {
  color:#64748b;
  font-size:11px;
  font-weight:850;
  white-space:nowrap;
}
.notif-card-list {
  display:grid;
  gap:10px;
  max-height:620px;
  overflow:auto;
}
.notif-template-card {
  display:grid;
  gap:5px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
  cursor:pointer;
}
.notif-template-card b {
  color:#0f172a;
}
.notif-template-card span,
.notif-template-card small {
  color:#64748b;
  font-size:12px;
  font-weight:850;
}
@media (max-width:1350px) {
  .rbac-hero,
  .notif-hero,
  .rbac-two-col,
  .notif-two-col {
    grid-template-columns:1fr;
  }
  .rbac-hero h2,
  .rbac-hero p,
  .notif-hero h2,
  .notif-hero p {
    white-space:normal;
  }
  .rbac-widget-grid {
    grid-template-columns:repeat(2,minmax(220px,1fr));
  }
  .rbac-kpi-grid,
  .notif-kpi-grid {
    grid-template-columns:repeat(3,minmax(150px,1fr));
  }
}
@media (max-width:760px) {
  .rbac-widget-grid,
  .rbac-kpi-grid,
  .notif-kpi-grid,
  .rbac-form-grid,
  .notif-form-grid {
    grid-template-columns:1fr;
  }
}


/* Enterprise section*/
.rbac-admin-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(420px,1fr));
  gap:14px;
  margin-bottom:14px;
}
.rbac-admin-grid .full-width-card {
  grid-column:1 / -1;
}
.rbac-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:10px;
  min-height:92px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.rbac-report-note {
  display:grid;
  gap:6px;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  border-radius:12px;
  padding:12px;
  color:#166534;
  margin-bottom:12px;
}
.rbac-report-note b {
  color:#064e3b;
}
.rbac-report-note span {
  font-size:12px;
  font-weight:850;
}
.admin-rbac-bridge {
  padding:4px 0;
}
@media (max-width:1200px) {
  .rbac-admin-grid {
    grid-template-columns:1fr;
  }
  .rbac-admin-grid .full-width-card {
    grid-column:auto;
  }
}


/* Enterprise section*/
.rbac-matrix-table {
  min-width:1280px !important;
}
.rbac-admin-grid .full-width-card {
  grid-column:1 / -1;
}
.left-actions {
  justify-content:flex-start !important;
  margin-bottom:12px;
}
.rbac-chip-list .rbac-chip {
  max-width:280px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.notif-mode-tabs button,
.rbac-mode-tabs button {
  flex:0 0 auto;
}
.notif-form-grid select option,
.rbac-form-grid select option {
  font-weight:700;
}
.notif-template-card:hover,
.rbac-widget-card:hover {
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(15,23,42,.075);
}
.email-mode-safe {
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  color:#166534;
}
@media (max-width:1200px) {
  .rbac-admin-grid .full-width-card {
    grid-column:auto;
  }
}


/* Enterprise section*/
.app-frame {
  min-height:100vh;
  display:grid;
  grid-template-columns:264px minmax(0,1fr);
  background:#f4f7fb;
}
.app-frame.sidebar-collapsed {
  grid-template-columns:78px minmax(0,1fr);
}
.app-sidebar {
  position:sticky;
  top:0;
  height:100vh;
  display:flex;
  flex-direction:column;
  background:#0d2438;
  color:#e5f2ff;
  border-right:1px solid rgba(255,255,255,.08);
  box-shadow:12px 0 28px rgba(15,23,42,.12);
  z-index:40;
}
.sidebar-brand {
  min-height:78px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.sidebar-logo {
  width:48px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  background:#081827;
  border:1px solid rgba(255,255,255,.1);
  overflow:hidden;
  flex:0 0 auto;
}
.sidebar-logo img {
  max-width:42px;
  max-height:34px;
  object-fit:contain;
}
.sidebar-brand-text {
  min-width:0;
  display:grid;
  gap:2px;
}
.sidebar-brand-text b {
  color:#fff;
  font-size:16px;
  letter-spacing:.01em;
  white-space:nowrap;
}
.sidebar-brand-text span {
  color:#9fb5c9;
  font-size:11px;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sidebar-toggle {
  position:absolute;
  top:24px;
  right:-13px;
  width:26px;
  height:26px;
  border-radius:999px;
  border:1px solid #cbd5e1;
  background:#fff;
  color:#0f172a;
  box-shadow:0 8px 18px rgba(15,23,42,.18);
  font-weight:950;
  cursor:pointer;
  z-index:45;
}
.side-menu {
  flex:1 1 auto;
  overflow:auto;
  padding:10px 10px 12px;
  display:grid;
  gap:4px;
  align-content:start;
}
.side-menu-bottom {
  flex:0 0 auto;
  padding:10px;
  display:grid;
  gap:4px;
  border-top:1px solid rgba(255,255,255,.08);
}
.side-menu-item {
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  gap:10px;
  border:0;
  border-radius:12px;
  padding:0 11px;
  background:transparent;
  color:#cbddec;
  text-align:left;
  font-weight:900;
  cursor:pointer;
}
.side-menu-item:hover {
  background:rgba(255,255,255,.08);
  color:#fff;
}
.side-menu-item.active {
  background:#0f766e;
  color:#fff;
  box-shadow:0 10px 22px rgba(15,118,110,.22);
}
.side-menu-icon {
  width:24px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  font-size:16px;
  flex:0 0 24px;
}
.side-menu-label {
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:12px;
}
.sidebar-collapsed .side-menu-item {
  justify-content:center;
  padding:0;
}
.app-main {
  min-width:0;
  display:flex;
  flex-direction:column;
}
.app-header {
  position:sticky;
  top:0;
  z-index:35;
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:12px 18px;
  background:#ffffff;
  border-bottom:1px solid #dbe4ef;
  box-shadow:0 8px 24px rgba(15,23,42,.055);
}
.app-header-left {
  min-width:0;
  display:flex;
  align-items:center;
  gap:12px;
}
.kernel-mark {
  width:58px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  border:1px solid #dbe4ef;
  background:#ffffff;
  box-shadow:0 8px 18px rgba(15,23,42,.055);
  overflow:hidden;
  flex:0 0 auto;
}
.kernel-mark img {
  max-width:48px;
  max-height:34px;
  object-fit:contain;
}
.app-title {
  min-width:0;
  display:grid;
  gap:2px;
}
.app-title h1 {
  margin:0;
  color:#0f172a;
  font-size:19px;
  letter-spacing:-.03em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.app-title span {
  color:#64748b;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.app-header-actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex:0 0 auto;
}
.header-release-filter {
  min-width:300px;
}
.header-release-filter .chip-filter {
  margin:0;
}
.header-chat,
.header-bell {
  position:relative;
  height:42px;
  min-width:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d7e2ee;
  background:#fff;
  border-radius:14px;
  cursor:pointer;
  font-weight:950;
  box-shadow:0 8px 18px rgba(15,23,42,.045);
}
.profile-shell {
  position:relative;
}
.profile-button {
  min-width:230px;
  height:46px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid #d7e2ee;
  border-radius:16px;
  background:#fff;
  padding:0 10px;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(15,23,42,.045);
}
.profile-avatar {
  width:32px;
  height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#0f766e;
  color:#fff;
  font-size:13px;
  font-weight:950;
  flex:0 0 auto;
}
.profile-avatar.big {
  width:44px;
  height:44px;
  font-size:17px;
}
.profile-text {
  min-width:0;
  display:grid;
  gap:2px;
  text-align:left;
}
.profile-text b,
.profile-drop-head b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:150px;
}
.profile-text small,
.profile-drop-head small {
  color:#64748b;
  font-size:11px;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:180px;
}
.profile-caret {
  color:#64748b;
  font-weight:950;
  margin-left:auto;
}
.profile-dropdown {
  position:absolute;
  top:54px;
  right:0;
  width:320px;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:16px;
  box-shadow:0 22px 60px rgba(15,23,42,.18);
  padding:12px;
  z-index:60;
}
.profile-drop-head {
  display:flex;
  align-items:center;
  gap:10px;
  padding-bottom:10px;
  border-bottom:1px solid #e2e8f0;
  margin-bottom:10px;
}
.profile-meta {
  display:grid;
  gap:8px;
  margin-bottom:10px;
}
.profile-meta div {
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  gap:8px;
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:7px 9px;
}
.profile-meta span {
  color:#64748b;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.profile-meta b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.profile-dropdown button {
  width:100%;
  height:38px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#0f172a;
  font-weight:900;
  text-align:left;
  padding:0 10px;
  margin-top:6px;
  cursor:pointer;
}
.profile-dropdown button:hover {
  background:#eff6ff;
}
.profile-dropdown .logout-link {
  background:#fff1f2;
  color:#be123c;
}
.app-content {
  min-width:0;
  padding:18px;
}
.frame-footer {
  margin-top:18px;
}
.app-content > .full-width-panel,
.app-content > .dashboard-hero,
.app-content > .panel,
.app-content > .pmo-card {
  max-width:none;
}
@media (max-width:1180px) {
  .app-frame,
  .app-frame.sidebar-collapsed {
    grid-template-columns:78px minmax(0,1fr);
  }
  .sidebar-brand-text,
  .side-menu-label {
    display:none;
  }
  .side-menu-item {
    justify-content:center;
    padding:0;
  }
  .header-release-filter {
    min-width:220px;
  }
  .profile-button {
    min-width:48px;
  }
  .profile-text,
  .profile-caret {
    display:none;
  }
}
@media (max-width:820px) {
  .app-header {
    align-items:flex-start;
    flex-direction:column;
  }
  .app-header-actions {
    width:100%;
    justify-content:space-between;
    flex-wrap:wrap;
  }
  .header-release-filter {
    min-width:100%;
    order:3;
  }
  .profile-dropdown {
    right:0;
    width:290px;
  }
  .app-content {
    padding:12px;
  }
}


/* V29.4.2 Branding and Client Switch Cleanup */
.sidebar-brand.swomb-only {
  justify-content:center;
  padding:12px 8px;
}
.sidebar-brand.swomb-only .sidebar-logo {
  width:52px;
  height:46px;
}
.sidebar-brand.swomb-only .sidebar-logo img {
  max-width:46px;
  max-height:36px;
}
.app-header-left .app-title h1 {
  font-size:20px;
}
.client-switch-shell {
  position:relative;
}
.client-switch-button {
  min-width:220px;
  height:46px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid #d7e2ee;
  border-radius:16px;
  background:#fff;
  padding:0 10px;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(15,23,42,.045);
}
.client-logo {
  width:44px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  border:1px solid #dbe4ef;
  background:#fff;
  overflow:hidden;
  flex:0 0 auto;
}
.client-logo img {
  max-width:38px;
  max-height:26px;
  object-fit:contain;
}
.client-logo.mini {
  width:42px;
  height:32px;
}
.client-switch-text {
  min-width:0;
  display:grid;
  gap:2px;
  text-align:left;
}
.client-switch-text b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:130px;
}
.client-switch-text small {
  color:#64748b;
  font-size:11px;
  font-weight:850;
  white-space:nowrap;
}
.client-switch-dropdown {
  position:absolute;
  top:54px;
  right:0;
  width:310px;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:16px;
  box-shadow:0 22px 60px rgba(15,23,42,.18);
  padding:12px;
  z-index:62;
}
.client-switch-head {
  display:grid;
  gap:3px;
  padding:2px 2px 10px;
  border-bottom:1px solid #e2e8f0;
  margin-bottom:8px;
}
.client-switch-head b {
  color:#0f172a;
  font-size:14px;
}
.client-switch-head span {
  color:#64748b;
  font-size:11px;
  font-weight:850;
}
.client-option {
  width:100%;
  min-height:48px;
  display:flex;
  align-items:center;
  gap:10px;
  border:0;
  border-radius:12px;
  background:#fff;
  color:#0f172a;
  padding:7px 8px;
  cursor:pointer;
  text-align:left;
}
.client-option:hover {
  background:#f8fafc;
}
.client-option.active {
  background:#ecfdf5;
  border:1px solid #bbf7d0;
}
.client-option span:last-child {
  min-width:0;
  display:grid;
  gap:2px;
}
.client-option b {
  font-size:12px;
  color:#0f172a;
}
.client-option small {
  color:#64748b;
  font-size:11px;
  font-weight:850;
}
@media (max-width:1180px) {
  .client-switch-button {
    min-width:52px;
    width:52px;
    justify-content:center;
  }
  .client-switch-text,
  .client-switch-button .profile-caret {
    display:none;
  }
}
@media (max-width:820px) {
  .client-switch-dropdown {
    right:auto;
    left:0;
    width:290px;
  }
}


/* V29.4.3 Elegant Sidebar Visual Polish */
.app-frame {
  grid-template-columns:272px minmax(0,1fr);
}
.app-frame.sidebar-collapsed {
  grid-template-columns:76px minmax(0,1fr);
}
.app-sidebar {
  background:
    radial-gradient(circle at 20% -10%, rgba(20,184,166,.24), transparent 16rem),
    linear-gradient(180deg,#061a2d 0%,#082035 48%,#071827 100%);
  border-right:1px solid rgba(148,163,184,.18);
  box-shadow:12px 0 34px rgba(2,6,23,.22);
}
.sidebar-brand.swomb-only {
  min-height:88px;
  padding:14px 14px 12px;
  justify-content:center;
  border-bottom:1px solid rgba(148,163,184,.14);
}
.sidebar-brand.swomb-only .sidebar-logo {
  width:100%;
  min-width:0;
  height:54px;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(3,20,37,.82),rgba(3,18,33,.96));
  border:1px solid rgba(148,163,184,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 12px 28px rgba(2,6,23,.22);
  padding:8px 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.sidebar-brand.swomb-only .sidebar-logo img {
  width:auto;
  height:34px;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  margin:0 auto;
}
.sidebar-collapsed .sidebar-brand.swomb-only {
  padding:14px 10px 12px;
}
.sidebar-collapsed .sidebar-brand.swomb-only .sidebar-logo {
  width:48px;
  height:46px;
  padding:6px;
}
.sidebar-collapsed .sidebar-brand.swomb-only .sidebar-logo img {
  height:24px;
}
.sidebar-toggle {
  top:28px;
  right:-12px;
  width:24px;
  height:24px;
  border:1px solid rgba(203,213,225,.95);
  color:#0f766e;
}
.side-menu {
  padding:12px 12px 10px;
  gap:0;
  overflow-y:auto;
  scrollbar-width:none;
}
.side-menu::-webkit-scrollbar {
  width:0;
  height:0;
}
.side-menu-section {
  display:grid;
  gap:3px;
  padding:5px 0 10px;
  border-bottom:1px solid rgba(148,163,184,.11);
}
.side-menu-section:last-child {
  border-bottom:0;
}
.side-menu-heading {
  padding:8px 10px 6px;
  color:#78a9bd;
  font-size:10px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.side-menu-item {
  min-height:36px;
  border-radius:11px;
  padding:0 10px;
  color:#c3d6e6;
  opacity:.94;
  transition:background .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.side-menu-item:hover {
  background:rgba(255,255,255,.075);
  color:#fff;
  transform:translateX(1px);
}
.side-menu-item.active {
  background:linear-gradient(135deg,#0f766e,#14b8a6);
  color:#ffffff;
  box-shadow:0 12px 28px rgba(20,184,166,.20), inset 0 1px 0 rgba(255,255,255,.18);
}
.side-menu-icon {
  width:24px;
  height:24px;
  border-radius:8px;
  background:rgba(255,255,255,.055);
  font-size:14px;
}
.side-menu-item.active .side-menu-icon {
  background:rgba(255,255,255,.18);
}
.side-menu-label {
  font-size:12px;
  letter-spacing:-.01em;
}
.side-menu-bottom {
  padding:12px;
  border-top:1px solid rgba(148,163,184,.15);
  background:rgba(2,6,23,.12);
}
.side-menu-bottom .side-menu-item {
  min-height:38px;
}
.sidebar-collapsed .side-menu {
  padding:12px 9px;
}
.sidebar-collapsed .side-menu-section {
  align-items:center;
  border-bottom:0;
  padding:4px 0;
}
.sidebar-collapsed .side-menu-item {
  width:42px;
  height:42px;
  min-height:42px;
  margin:0 auto;
  border-radius:13px;
}
.sidebar-collapsed .side-menu-icon {
  background:transparent;
}
.app-header {
  min-height:74px;
  border-bottom:1px solid #e2e8f0;
}
.app-content {
  padding:16px 18px 20px;
}
.app-content .pmo-card,
.app-content .full-width-panel,
.app-content .dashboard-card,
.app-content .panel {
  border-radius:16px;
}
@media (max-height:840px) {
  .side-menu-item {
    min-height:33px;
  }
  .side-menu-section {
    padding:3px 0 7px;
  }
  .side-menu-heading {
    padding:6px 10px 4px;
  }
}


/* V29.5 Action Driven My Dashboard Engine */
.action-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#062338,#0f766e);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.action-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.action-hero p {
  margin:0;
  color:#d7f5ee;
  font-size:14px;
  font-weight:750;
}
.action-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.action-context-strip {
  display:grid;
  grid-template-columns:1.1fr 1.3fr 1fr .9fr;
  gap:10px;
  padding:10px;
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  margin-bottom:12px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.action-context-strip div {
  display:grid;
  gap:3px;
  padding:9px 11px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  min-width:0;
}
.action-context-strip span {
  color:#64748b;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.action-context-strip b {
  color:#0f172a;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.action-card-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(180px,1fr));
  gap:12px;
  margin-bottom:14px;
}
.action-card {
  min-height:126px;
  display:grid;
  gap:8px;
  text-align:left;
  border:1px solid #dbe4ef;
  border-radius:16px;
  background:#fff;
  padding:14px;
  cursor:pointer;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.action-card:hover,
.action-report-card:hover,
.action-table tbody tr:hover,
.action-bar-row:hover {
  transform:translateY(-1px);
  box-shadow:0 18px 34px rgba(15,23,42,.09);
}
.action-card-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.action-card-head span {
  color:#475569;
  font-size:12px;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.action-card-head b {
  color:#0f172a;
  font-size:31px;
  line-height:1;
}
.action-card small {
  color:#64748b;
  font-size:12px;
  font-weight:850;
}
.action-card em {
  align-self:end;
  font-style:normal;
  color:#0f766e;
  font-size:11px;
  font-weight:950;
}
.action-card.red {
  background:linear-gradient(180deg,#fff,#fff5f5);
  border-color:#fecaca;
}
.action-card.amber {
  background:linear-gradient(180deg,#fff,#fffbeb);
  border-color:#fde68a;
}
.action-card.green {
  background:linear-gradient(180deg,#fff,#f0fdf4);
  border-color:#bbf7d0;
}
.action-card.blue {
  background:linear-gradient(180deg,#fff,#eff6ff);
  border-color:#bfdbfe;
}
.action-layout-two {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.action-table-card,
.action-chart-card {
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  padding:14px;
  min-width:0;
}
.action-section-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.action-section-head h3 {
  margin:0;
  color:#0f172a;
  font-size:16px;
}
.action-section-head span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
}
.action-table-wrap {
  max-height:520px;
  overflow:auto;
}
.action-table {
  min-width:760px !important;
}
.action-table tbody tr {
  cursor:pointer;
  transition:background .15s ease, transform .15s ease;
}
.action-table tbody tr:hover {
  background:#f8fafc;
}
.action-chart-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(260px,1fr));
  gap:14px;
}
.action-bars {
  display:grid;
  gap:10px;
}
.action-bar-row {
  display:grid;
  grid-template-columns:150px minmax(0,1fr) 48px;
  gap:10px;
  align-items:center;
  cursor:pointer;
  padding:6px;
  border-radius:10px;
}
.action-bar-label {
  color:#334155;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.action-bar-track {
  height:10px;
  background:#edf2f7;
  border-radius:999px;
  overflow:hidden;
}
.action-bar-fill {
  height:100%;
  border-radius:999px;
  background:#0f766e;
}
.action-bar-fill.red { background:#ef4444; }
.action-bar-fill.amber { background:#f59e0b; }
.action-bar-fill.green { background:#22c55e; }
.action-bar-fill.blue { background:#3b82f6; }
.action-bar-row b {
  text-align:right;
  color:#0f172a;
  font-size:12px;
}
.action-report-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(260px,1fr));
  gap:14px;
}
.action-report-card {
  display:grid;
  gap:8px;
  text-align:left;
  border:1px solid #dbe4ef;
  border-radius:16px;
  background:#fff;
  padding:16px;
  min-height:126px;
  cursor:pointer;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
}
.action-report-card b {
  color:#0f172a;
  font-size:16px;
}
.action-report-card span {
  color:#64748b;
  font-size:13px;
  font-weight:800;
}
.action-report-card small {
  color:#0f766e;
  font-weight:950;
}
@media (max-width:1500px) {
  .action-card-grid {
    grid-template-columns:repeat(3,minmax(180px,1fr));
  }
  .action-chart-grid,
  .action-report-grid,
  .action-layout-two {
    grid-template-columns:1fr;
  }
}
@media (max-width:860px) {
  .action-hero,
  .action-context-strip {
    grid-template-columns:1fr;
  }
  .action-card-grid {
    grid-template-columns:1fr;
  }
}


/* V29.6 Bug / Defect Tracking Workflow Engine */
.defect-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#081f35,#0f766e);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.defect-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.defect-hero p {
  margin:0;
  color:#d7f5ee;
  font-size:14px;
  font-weight:750;
}
.defect-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.defect-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.defect-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.defect-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.defect-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(140px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.defect-two-col {
  display:grid;
  grid-template-columns:minmax(420px,1fr) minmax(420px,1fr);
  gap:14px;
  align-items:start;
  margin-bottom:14px;
}
.defect-table-wrap {
  width:100%;
  max-height:640px;
  overflow:auto;
}
.defect-table {
  min-width:980px !important;
}
.defect-register-table {
  min-width:1560px !important;
}
.defect-table th,
.defect-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.defect-table tbody tr {
  cursor:pointer;
}
.defect-table tbody tr:hover {
  background:#f8fafc;
}
.defect-focus-list {
  display:grid;
  gap:9px;
}
.defect-focus-list button {
  display:grid;
  grid-template-columns:minmax(0,1fr) 60px;
  gap:8px;
  align-items:center;
  text-align:left;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#f8fafc;
  padding:11px 12px;
  cursor:pointer;
}
.defect-focus-list button:hover {
  border-color:#0f766e;
  background:#ecfdf5;
}
.defect-focus-list span {
  color:#0f172a;
  font-size:13px;
  font-weight:950;
}
.defect-focus-list b {
  text-align:right;
  color:#0f766e;
  font-size:24px;
}
.defect-focus-list small {
  grid-column:1 / -1;
  color:#64748b;
  font-size:12px;
  font-weight:800;
}
.defect-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.defect-form-grid label,
.defect-comment-box {
  display:grid;
  gap:6px;
}
.defect-form-grid label.wide {
  grid-column:1 / -1;
}
.defect-form-grid span,
.defect-comment-box span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.defect-form-grid input,
.defect-form-grid select,
.defect-form-grid textarea,
.defect-comment-box textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  min-height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.defect-form-grid textarea,
.defect-comment-box textarea {
  padding:10px;
  min-height:84px;
}
.defect-actions {
  grid-column:1 / -1;
  display:flex;
  gap:8px;
  justify-content:flex-end;
}
.defect-transition-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-bottom:14px;
}
.defect-status-btn {
  height:36px;
  border:1px solid #d7e2ee;
  background:#fff;
  color:#334155;
  border-radius:10px;
  font-weight:900;
  cursor:pointer;
}
.defect-status-btn.active {
  background:#0f766e;
  color:#fff;
  border-color:#0f766e;
}
.defect-status-btn:disabled {
  opacity:.45;
  cursor:not-allowed;
}
.defect-workflow-flow {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
.defect-flow-step {
  display:flex;
  align-items:center;
  gap:8px;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  color:#065f46;
  border-radius:12px;
  padding:10px 12px;
  font-weight:950;
}
.defect-flow-step span {
  color:#0f766e;
}
.defect-alt-flow {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:16px;
}
.defect-alt-flow span {
  background:#fff7ed;
  border:1px solid #fed7aa;
  color:#9a3412;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:950;
}
.defect-list-card {
  display:grid;
  gap:10px;
  max-height:620px;
  overflow:auto;
}
.defect-note {
  display:grid;
  gap:5px;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:12px;
  padding:10px 12px;
}
.defect-note b {
  color:#0f172a;
}
.defect-note span {
  color:#334155;
  font-size:13px;
  font-weight:800;
}
.defect-note small {
  color:#64748b;
  font-size:11px;
  font-weight:850;
}
@media (max-width:1450px) {
  .defect-kpi-grid {
    grid-template-columns:repeat(4,minmax(140px,1fr));
  }
  .defect-two-col {
    grid-template-columns:1fr;
  }
}
@media (max-width:760px) {
  .defect-kpi-grid,
  .defect-form-grid,
  .defect-transition-grid {
    grid-template-columns:1fr;
  }
  .defect-hero {
    grid-template-columns:1fr;
  }
}


/* V30 DevOps Integration Hub */
.devops-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#071b33,#1d4ed8 56%,#0f766e);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.devops-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.devops-hero p {
  margin:0;
  color:#e0f2fe;
  font-size:14px;
  font-weight:750;
}
.devops-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.devops-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.devops-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.devops-mode-tabs button.active {
  background:#1d4ed8;
  color:#fff;
}
.devops-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(140px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.devops-two-col {
  display:grid;
  grid-template-columns:minmax(420px,1fr) minmax(420px,1fr);
  gap:14px;
  align-items:start;
  margin-bottom:14px;
}
.devops-card-list {
  display:grid;
  gap:9px;
  max-height:620px;
  overflow:auto;
}
.devops-alert {
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:8px;
  align-items:center;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#f8fafc;
  padding:10px 12px;
  cursor:pointer;
  text-align:left;
}
.devops-alert:hover {
  border-color:#1d4ed8;
  background:#eff6ff;
}
.devops-alert b {
  color:#0f172a;
  font-size:12px;
}
.devops-alert span {
  color:#334155;
  font-size:13px;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.devops-alert small {
  grid-column:1 / -1;
  color:#64748b;
  font-size:12px;
  font-weight:800;
}
.devops-alert.red {
  border-color:#fecaca;
  background:#fff5f5;
}
.devops-alert.amber {
  border-color:#fde68a;
  background:#fffbeb;
}
.devops-coverage-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.devops-coverage-grid div,
.devops-note-list div {
  display:grid;
  gap:4px;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:12px;
  padding:10px 12px;
}
.devops-coverage-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.devops-coverage-grid b {
  color:#0f172a;
  font-size:22px;
}
.devops-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.devops-form-grid label {
  display:grid;
  gap:6px;
}
.devops-form-grid label.wide {
  grid-column:1 / -1;
}
.devops-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.devops-form-grid input,
.devops-form-grid select {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  min-height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.devops-actions {
  grid-column:1 / -1;
  display:flex;
  gap:8px;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.devops-table-wrap {
  width:100%;
  max-height:640px;
  overflow:auto;
}
.devops-table {
  min-width:980px !important;
}
.devops-wide-table {
  min-width:1380px !important;
}
.devops-table th,
.devops-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.devops-table tbody tr {
  cursor:pointer;
}
.devops-table tbody tr:hover {
  background:#f8fafc;
}
.devops-note-list {
  display:grid;
  gap:10px;
}
.devops-note-list div {
  color:#334155;
  font-size:13px;
  font-weight:850;
}
@media (max-width:1450px) {
  .devops-kpi-grid {
    grid-template-columns:repeat(4,minmax(140px,1fr));
  }
  .devops-two-col {
    grid-template-columns:1fr;
  }
}
@media (max-width:760px) {
  .devops-kpi-grid,
  .devops-form-grid,
  .devops-hero {
    grid-template-columns:1fr;
  }
}


/* V30.1 Integrity Wiring Orchestrator */
.orchestrator-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#0f766e 56%,#1d4ed8);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.orchestrator-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.orchestrator-hero p {
  margin:0;
  color:#d7f5ee;
  font-size:14px;
  font-weight:750;
}
.orchestrator-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.orchestrator-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.orchestrator-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.orchestrator-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.orchestrator-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(140px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.orchestrator-two-col {
  display:grid;
  grid-template-columns:360px minmax(0,1fr);
  gap:14px;
  align-items:start;
}
.orchestrator-severity-grid {
  display:grid;
  gap:10px;
}
.orchestrator-sev {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:12px;
  padding:11px 12px;
}
.orchestrator-sev span {
  color:#334155;
  font-size:12px;
  font-weight:950;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.orchestrator-sev b {
  color:#0f172a;
  font-size:26px;
}
.orchestrator-sev.red {
  background:#fff5f5;
  border-color:#fecaca;
}
.orchestrator-sev.amber {
  background:#fffbeb;
  border-color:#fde68a;
}
.orchestrator-sev.green {
  background:#f0fdf4;
  border-color:#bbf7d0;
}
.orchestrator-table-card {
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  padding:14px;
}
.orchestrator-table-wrap {
  width:100%;
  max-height:640px;
  overflow:auto;
}
.orchestrator-table {
  min-width:1180px !important;
}
.orchestrator-table th,
.orchestrator-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.orchestrator-table tbody tr {
  cursor:pointer;
}
.orchestrator-table tbody tr:hover {
  background:#f8fafc;
}
@media (max-width:1450px) {
  .orchestrator-kpi-grid {
    grid-template-columns:repeat(4,minmax(140px,1fr));
  }
  .orchestrator-two-col {
    grid-template-columns:1fr;
  }
}
@media (max-width:760px) {
  .orchestrator-kpi-grid,
  .orchestrator-hero {
    grid-template-columns:1fr;
  }
}


/* V30.1.1 Notifications Runtime Hotfix */
.notification-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#0f766e);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.notification-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.notification-hero p {
  margin:0;
  color:#d7f5ee;
  font-size:14px;
  font-weight:750;
}
.notification-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.notification-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.notification-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.notification-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.notification-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(140px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.notification-list {
  display:grid;
  gap:9px;
}
.notification-row {
  display:grid;
  gap:5px;
  text-align:left;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#f8fafc;
  padding:12px 14px;
  cursor:pointer;
}
.notification-row.unread {
  background:#ecfdf5;
  border-color:#99f6e4;
}
.notification-row.red {
  background:#fff5f5;
  border-color:#fecaca;
}
.notification-row.amber {
  background:#fffbeb;
  border-color:#fde68a;
}
.notification-row b {
  color:#0f172a;
}
.notification-row span {
  color:#334155;
  font-size:13px;
  font-weight:800;
}
.notification-row small {
  color:#64748b;
  font-size:11px;
  font-weight:850;
}
.notification-table-wrap {
  width:100%;
  max-height:640px;
  overflow:auto;
}
.notification-table {
  min-width:980px !important;
}
.notification-table th,
.notification-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.notification-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.notification-form-grid label {
  display:grid;
  gap:6px;
}
.notification-form-grid label.wide {
  grid-column:1 / -1;
}
.notification-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.notification-form-grid input,
.notification-form-grid select,
.notification-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  min-height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.notification-form-grid textarea {
  padding:10px;
  min-height:84px;
}
.notification-actions {
  grid-column:1 / -1;
  display:flex;
  gap:8px;
  justify-content:flex-end;
}
@media (max-width:1000px) {
  .notification-kpi-grid,
  .notification-form-grid,
  .notification-hero {
    grid-template-columns:1fr;
  }
}


/* V30.2 Workflow Cascade & Dataflow Chaining */
.cascade-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#0f766e 52%,#1d4ed8);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.cascade-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.cascade-hero p {
  margin:0;
  color:#d7f5ee;
  font-size:14px;
  font-weight:750;
}
.cascade-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.cascade-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.cascade-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.cascade-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.cascade-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(140px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.cascade-two-col {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  align-items:start;
}
.cascade-table-card {
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  padding:14px;
}
.cascade-table-wrap {
  width:100%;
  max-height:640px;
  overflow:auto;
}
.cascade-table {
  min-width:1180px !important;
}
.cascade-table th,
.cascade-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.cascade-table tbody tr {
  cursor:pointer;
}
.cascade-table tbody tr:hover {
  background:#f8fafc;
}
@media (max-width:1450px) {
  .cascade-kpi-grid {
    grid-template-columns:repeat(4,minmax(140px,1fr));
  }
  .cascade-two-col {
    grid-template-columns:1fr;
  }
}
@media (max-width:760px) {
  .cascade-kpi-grid,
  .cascade-hero {
    grid-template-columns:1fr;
  }
}


/* V30.2.2 Action Dashboard Filtered Navigation */
.target-filter-banner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:10px 0 12px;
  padding:10px 12px;
  border:1px solid #99f6e4;
  background:linear-gradient(180deg,#ecfdf5,#f8fafc);
  border-radius:14px;
  box-shadow:0 8px 20px rgba(15,23,42,.045);
}
.target-filter-banner div {
  display:grid;
  gap:2px;
  min-width:0;
}
.target-filter-banner b {
  color:#0f172a;
  font-size:12px;
  font-weight:950;
}
.target-filter-banner span {
  color:#0f766e;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.target-filter-banner button {
  white-space:nowrap;
}


/* V30.2.3 System Navigation Breadcrumbs */
.system-breadcrumb {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 12px;
  padding:9px 12px;
  background:rgba(255,255,255,.92);
  border:1px solid #dbe4ef;
  border-radius:14px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
  min-height:42px;
}
.breadcrumb-left {
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  overflow:hidden;
}
.breadcrumb-right {
  display:flex;
  align-items:center;
  gap:8px;
  flex-shrink:0;
}
.breadcrumb-link,
.breadcrumb-current,
.breadcrumb-filter {
  max-width:260px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:12px;
  font-weight:900;
}
.breadcrumb-link {
  border:0;
  background:transparent;
  color:#0f766e;
  cursor:pointer;
  padding:4px 0;
}
.breadcrumb-link:hover {
  text-decoration:underline;
}
.breadcrumb-current {
  color:#0f172a;
}
.breadcrumb-filter {
  color:#1d4ed8;
  background:#eff6ff;
  border:1px solid #bfdbfe;
  border-radius:999px;
  padding:4px 9px;
  max-width:420px;
}
.breadcrumb-sep {
  color:#94a3b8;
  font-weight:950;
}
.breadcrumb-chip {
  border:1px solid #cbd5e1;
  background:#f8fafc;
  color:#475569;
  border-radius:999px;
  padding:5px 9px;
  font-size:11px;
  font-weight:950;
  white-space:nowrap;
}
.breadcrumb-clear {
  border:1px solid #99f6e4;
  background:#ecfdf5;
  color:#0f766e;
  border-radius:999px;
  padding:5px 10px;
  font-size:11px;
  font-weight:950;
  cursor:pointer;
  white-space:nowrap;
}
.breadcrumb-clear:hover {
  background:#ccfbf1;
}
@media (max-width:960px) {
  .system-breadcrumb {
    align-items:flex-start;
    flex-direction:column;
  }
  .breadcrumb-left {
    flex-wrap:wrap;
  }
  .breadcrumb-right {
    width:100%;
    justify-content:space-between;
  }
  .breadcrumb-link,
  .breadcrumb-current,
  .breadcrumb-filter {
    max-width:100%;
  }
}


/* V30.2.4 Search & Dropdown UX Stabilization */
.app-content,
.panel-filters,
.modern-filters,
.refined-filters,
.select-filter-grid,
.select-filter-grid-three,
.cnd-select-grid,
.leveling-filter-grid,
.devops-form-grid,
.defect-form-grid,
.notification-form-grid {
  overflow: visible !important;
}
.panel-filters,
.modern-filters,
.refined-filters {
  position: relative;
  z-index: 120;
}
.panel-filters:has(.multi-select.open),
.modern-filters:has(.multi-select.open),
.refined-filters:has(.multi-select.open) {
  z-index: 2400;
}
.multi-select {
  position: relative;
  isolation: isolate;
}
.multi-select.open {
  z-index: 2600;
}
.multi-select-menu {
  z-index: 3000 !important;
  max-height: 360px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain;
  background: #fff !important;
  box-shadow: 0 28px 70px rgba(15,23,42,.22), 0 0 0 1px rgba(15,23,42,.04) !important;
}
.multi-select-option {
  min-height: 38px;
}
.table-wrap,
.elegant-table,
.phase-table,
.action-table-card,
.devops-table-wrap,
.defect-table-wrap,
.cascade-table-wrap,
.orchestrator-table-wrap,
.notification-table-wrap {
  position: relative;
  z-index: 1;
}
.search-wrap {
  position: relative;
}
.search-wrap input::placeholder {
  color: #94a3b8;
}
.search-wrap:focus-within {
  border-color: #38bdf8;
  box-shadow: 0 0 0 3px rgba(56,189,248,.18), inset 0 1px 0 rgba(15,23,42,.02);
}
@supports not selector(:has(*)) {
  .multi-select.open .multi-select-menu {
    z-index: 3000 !important;
  }
}


/* V30.3 Production Stability & Smoke Automation */
.global-error-shell {
  min-height:100vh;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#061a2d,#0f766e);
  padding:30px;
}
.global-error-card {
  width:min(760px,96vw);
  background:#fff;
  border-radius:20px;
  padding:28px;
  box-shadow:0 30px 80px rgba(2,6,23,.28);
}
.global-error-card h1 {
  margin:0 0 8px;
  color:#0f172a;
}
.global-error-card p {
  color:#475569;
  font-weight:800;
}
.global-error-card pre {
  max-height:260px;
  overflow:auto;
  background:#0f172a;
  color:#d1fae5;
  border-radius:12px;
  padding:14px;
}
.global-error-card button {
  border:0;
  border-radius:12px;
  background:#0f766e;
  color:#fff;
  font-weight:950;
  padding:11px 16px;
  cursor:pointer;
}
.route-guard-panel {
  background:#fff;
  border:1px solid #fecaca;
  border-radius:18px;
  padding:20px;
  box-shadow:0 12px 34px rgba(15,23,42,.07);
}
.route-guard-panel h2 {
  margin:0 0 8px;
  color:#991b1b;
}
.route-guard-panel p {
  color:#475569;
  font-weight:800;
}
.route-guard-meta {
  display:flex;
  gap:10px;
  align-items:center;
  background:#fff5f5;
  border:1px solid #fecaca;
  border-radius:12px;
  padding:10px;
  margin:12px 0;
}
.route-guard-meta span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
}
.route-guard-meta b {
  color:#0f172a;
}
.production-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#1d4ed8 52%,#0f766e);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.production-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.production-hero p {
  margin:0;
  color:#e0f2fe;
  font-size:14px;
  font-weight:750;
}
.production-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.production-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.production-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.production-mode-tabs button.active {
  background:#1d4ed8;
  color:#fff;
}
.production-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(140px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.production-two-col {
  display:grid;
  grid-template-columns:360px minmax(0,1fr);
  gap:14px;
  align-items:start;
}
.production-readiness-list {
  display:grid;
  gap:10px;
}
.production-readiness-list div {
  display:grid;
  gap:3px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:10px 12px;
}
.production-readiness-list span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.production-readiness-list b {
  color:#0f172a;
  font-size:13px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.production-table-card {
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  padding:14px;
}
.production-table-wrap {
  width:100%;
  max-height:650px;
  overflow:auto;
}
.production-table {
  min-width:1180px !important;
}
.production-table th,
.production-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.json-pre {
  background:#0f172a;
  color:#d1fae5;
  border-radius:14px;
  padding:16px;
  max-height:680px;
  overflow:auto;
  font-size:12px;
}
@media (max-width:1450px) {
  .production-kpi-grid {
    grid-template-columns:repeat(4,minmax(140px,1fr));
  }
  .production-two-col {
    grid-template-columns:1fr;
  }
}
@media (max-width:760px) {
  .production-kpi-grid,
  .production-hero {
    grid-template-columns:1fr;
  }
}


/* V30.4 Azure Blob Evidence Storage Integration */
.evidence-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#0f766e 52%,#1d4ed8);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.evidence-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.evidence-hero p {
  margin:0;
  color:#d7f5ee;
  font-size:14px;
  font-weight:750;
}
.evidence-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.evidence-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.evidence-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.evidence-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.evidence-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(140px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.evidence-filter-grid {
  display:grid;
  grid-template-columns:2fr repeat(6,minmax(120px,1fr));
  gap:10px;
  margin-bottom:12px;
}
.evidence-filter-grid input,
.evidence-filter-grid select,
.evidence-form-grid input,
.evidence-form-grid select,
.evidence-form-grid textarea {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:0 10px;
  min-height:40px;
  background:#fff;
  color:#0f172a;
  font-weight:750;
}
.evidence-form-grid textarea {
  min-height:92px;
  padding:10px;
}
.evidence-two-col {
  display:grid;
  grid-template-columns:minmax(420px,1fr) minmax(420px,1fr);
  gap:14px;
  align-items:start;
}
.evidence-form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.evidence-form-grid label {
  display:grid;
  gap:6px;
}
.evidence-form-grid label.wide {
  grid-column:1 / -1;
}
.evidence-form-grid span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.evidence-actions {
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
}
.evidence-table-wrap {
  width:100%;
  max-height:650px;
  overflow:auto;
}
.evidence-table {
  min-width:1320px !important;
}
.evidence-table th,
.evidence-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.evidence-status {
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:4px 9px;
  font-size:11px;
  font-weight:950;
  background:#f1f5f9;
  color:#334155;
}
.evidence-status.uploaded {
  background:#dcfce7;
  color:#166534;
}
.evidence-status.pending-upload,
.evidence-status.queued {
  background:#fffbeb;
  color:#92400e;
}
.micro-link {
  color:#0f766e;
  font-weight:950;
  text-decoration:none;
}
.micro-link:hover {
  text-decoration:underline;
}
.evidence-category-list,
.evidence-category-grid {
  display:grid;
  gap:10px;
}
.evidence-category-grid {
  grid-template-columns:repeat(3,minmax(240px,1fr));
}
.evidence-category-list div {
  display:grid;
  gap:4px;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:12px;
  padding:10px 12px;
}
.evidence-category-list b,
.evidence-category-grid h3 {
  color:#0f172a;
  margin:0;
}
.evidence-category-list span,
.evidence-category-grid p {
  color:#475569;
  font-size:13px;
  font-weight:750;
}
.evidence-config-note {
  display:grid;
  gap:10px;
}
@media (max-width:1450px) {
  .evidence-kpi-grid {
    grid-template-columns:repeat(3,minmax(140px,1fr));
  }
  .evidence-filter-grid,
  .evidence-two-col,
  .evidence-category-grid {
    grid-template-columns:1fr;
  }
}
@media (max-width:760px) {
  .evidence-kpi-grid,
  .evidence-form-grid,
  .evidence-hero {
    grid-template-columns:1fr;
  }
}


/* V31 Live Connector Enablement */
.connector-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#7c3aed 52%,#0f766e);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.connector-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.connector-hero p {
  margin:0;
  color:#ede9fe;
  font-size:14px;
  font-weight:750;
}
.connector-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.connector-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.connector-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.connector-mode-tabs button.active {
  background:#7c3aed;
  color:#fff;
}
.connector-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(140px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.connector-card-grid,
.connector-config-grid,
.connector-sync-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(230px,1fr));
  gap:14px;
  align-items:stretch;
}
.connector-overview-card,
.connector-status-card,
.connector-config-note {
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  padding:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
}
.connector-icon {
  width:46px;
  height:46px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:#f5f3ff;
  color:#6d28d9;
  font-size:23px;
  font-weight:950;
}
.connector-overview-card h3,
.connector-status-card h3 {
  margin:10px 0 6px;
  color:#0f172a;
}
.connector-overview-card p {
  min-height:76px;
  color:#475569;
  font-size:13px;
  font-weight:760;
}
.connector-overview-card b,
.connector-status-card b {
  display:inline-flex;
  border-radius:999px;
  padding:5px 9px;
  font-size:11px;
  font-weight:950;
}
.connector-overview-card b.green,
.connector-status-card b.green {
  background:#dcfce7;
  color:#166534;
}
.connector-overview-card b.amber,
.connector-status-card b.amber {
  background:#fffbeb;
  color:#92400e;
}
.connector-actions {
  display:flex;
  gap:8px;
  margin-top:12px;
}
.connector-status-card pre {
  max-height:280px;
  overflow:auto;
  background:#0f172a;
  color:#d1fae5;
  border-radius:12px;
  padding:12px;
  font-size:11px;
}
.connector-config-note {
  grid-column:1 / -1;
}
.connector-config-note b {
  color:#0f172a;
}
.connector-config-note p {
  color:#475569;
  font-weight:800;
}
.connector-table-card {
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  padding:14px;
}
.connector-table-wrap {
  width:100%;
  max-height:650px;
  overflow:auto;
}
.connector-table {
  min-width:1180px !important;
}
.connector-table th,
.connector-table td {
  white-space:nowrap !important;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media (max-width:1450px) {
  .connector-kpi-grid {
    grid-template-columns:repeat(3,minmax(140px,1fr));
  }
  .connector-card-grid,
  .connector-config-grid,
  .connector-sync-grid {
    grid-template-columns:repeat(2,minmax(230px,1fr));
  }
}
@media (max-width:760px) {
  .connector-kpi-grid,
  .connector-card-grid,
  .connector-config-grid,
  .connector-sync-grid,
  .connector-hero {
    grid-template-columns:1fr;
  }
}


/* V31.1 Governed RBAC, Export Context & Client UI Completion */
.export-context-card {
  display:grid;
  grid-template-columns:minmax(280px,.55fr) minmax(0,1fr);
  gap:14px;
  align-items:start;
  background:linear-gradient(180deg,#ffffff,#f8fafc);
  border:1px solid #bfdbfe;
  border-radius:16px;
  padding:14px 16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  margin-bottom:14px;
}
.export-context-card b {
  display:block;
  color:#0f172a;
  font-size:14px;
  margin-bottom:4px;
}
.export-context-card span {
  display:block;
  color:#475569;
  font-size:12px;
  font-weight:800;
}
.export-context-card pre {
  margin:0;
  max-height:180px;
  overflow:auto;
  background:#0f172a;
  color:#d1fae5;
  border-radius:12px;
  padding:12px;
  font-size:11px;
}
.completion-strip {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:14px;
}
.completion-strip > div {
  display:grid;
  gap:4px;
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  padding:14px 16px;
  box-shadow:0 10px 24px rgba(15,23,42,.045);
}
.completion-strip b {
  color:#0f172a;
  font-size:13px;
}
.completion-strip span {
  color:#475569;
  font-size:12px;
  font-weight:850;
}
.app-content {
  background:
    radial-gradient(circle at top right, rgba(14,165,233,.045), transparent 28%),
    radial-gradient(circle at bottom left, rgba(15,118,110,.045), transparent 26%);
}
.pmo-card,
.production-table-card,
.connector-table-card,
.evidence-table-wrap,
.route-guard-panel,
.target-filter-banner,
.system-breadcrumb,
.export-context-card {
  backdrop-filter:saturate(120%) blur(0px);
}
.pmo-card-head h3,
.section-title span,
.chart-card-head h3 {
  letter-spacing:-.02em;
}
.status-pill,
.evidence-status,
.breadcrumb-chip,
.summary-chip {
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);
}
@media (max-width:900px) {
  .export-context-card,
  .completion-strip {
    grid-template-columns:1fr;
  }
}


/* V31.2 Listed User Access & Role Action Center Hardening */
.listed-access-strip {
  display:grid;
  grid-template-columns:repeat(4,minmax(160px,1fr));
  gap:10px;
  margin:10px 0 14px;
}
.listed-access-strip > div,
.access-policy-note {
  background:linear-gradient(180deg,#ffffff,#f8fafc);
  border:1px solid #bbf7d0;
  border-radius:14px;
  padding:12px 14px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.listed-access-strip span,
.access-policy-note span {
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.07em;
  margin-bottom:4px;
}
.listed-access-strip b,
.access-policy-note b {
  color:#0f172a;
  font-size:13px;
  font-weight:950;
}
.access-policy-note {
  display:grid;
  gap:8px;
}
.access-policy-note p {
  margin:0;
  color:#475569;
  font-weight:800;
  line-height:1.45;
}
.listed-user-count {
  display:inline-grid;
  grid-template-columns:auto auto;
  gap:10px;
  align-items:center;
  justify-content:start;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  border-radius:999px;
  padding:7px 11px;
}
.listed-user-count span {
  margin:0;
  color:#0f766e;
}
.listed-user-count b {
  color:#166534;
}
@media (max-width:1000px) {
  .listed-access-strip {
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:620px) {
  .listed-access-strip {
    grid-template-columns:1fr;
  }
}


/* V31.3 Communication Trigger & Email Template Hardening */
.communication-coverage-summary {
  display:grid;
  grid-template-columns:repeat(6,minmax(130px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.communication-coverage-summary > div {
  display:grid;
  gap:4px;
  background:linear-gradient(180deg,#ffffff,#f8fafc);
  border:1px solid #bae6fd;
  border-radius:14px;
  padding:12px 14px;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.communication-coverage-summary span {
  color:#64748b;
  font-size:11px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.communication-coverage-summary b {
  color:#0f172a;
  font-size:18px;
  font-weight:950;
}
.notification-mode-tabs button.active {
  box-shadow:0 8px 18px rgba(15,118,110,.20);
}
.notification-table td:nth-child(3),
.notification-table td:nth-child(4),
.notification-table td:nth-child(5) {
  font-weight:850;
}
@media (max-width:1100px) {
  .communication-coverage-summary {
    grid-template-columns:repeat(3,minmax(130px,1fr));
  }
}
@media (max-width:640px) {
  .communication-coverage-summary {
    grid-template-columns:1fr;
  }
}


/* V32 Enterprise UAT & Operational Runbook */
.uat-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#0f766e 52%,#7c3aed);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.uat-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.uat-hero p {
  margin:0;
  color:#e0f2fe;
  font-size:14px;
  font-weight:750;
}
.uat-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.uat-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.uat-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.uat-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.uat-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(135px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.uat-overview-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  align-items:start;
}
.uat-readiness-bar {
  width:100%;
  height:12px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
  margin:12px 0;
}
.uat-readiness-bar div {
  height:100%;
  background:linear-gradient(90deg,#0f766e,#22c55e);
  border-radius:999px;
}
.uat-deferred-list {
  display:grid;
  gap:10px;
}
.uat-deferred-list div {
  display:grid;
  gap:4px;
  background:#fffbeb;
  border:1px solid #fde68a;
  border-radius:12px;
  padding:10px 12px;
}
.uat-deferred-list b {
  color:#92400e;
}
.uat-deferred-list span {
  color:#78350f;
  font-weight:760;
  font-size:12px;
}
.uat-table-card {
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  padding:14px;
}
.uat-table-wrap {
  width:100%;
  max-height:680px;
  overflow:auto;
}
.uat-table {
  min-width:1180px !important;
}
.uat-table th,
.uat-table td {
  white-space:normal !important;
  vertical-align:top;
}
.uat-table select {
  border:1px solid #d7e2ee;
  border-radius:9px;
  padding:7px 9px;
  background:#fff;
  font-weight:850;
}
@media (max-width:1450px) {
  .uat-kpi-grid { grid-template-columns:repeat(4,minmax(135px,1fr)); }
  .uat-overview-grid { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .uat-hero,
  .uat-kpi-grid { grid-template-columns:1fr; }
}


/* V31.4 over V32 Deployment Validation & UAT Readiness */
.deployment-validation-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#1d4ed8 48%,#0f766e);
  color:#fff;
  padding:22px 24px;
  border-radius:18px;
  box-shadow:0 22px 58px rgba(2,6,23,.16);
}
.deployment-validation-hero h2 {
  margin:0 0 6px;
  font-size:25px;
  letter-spacing:-.04em;
}
.deployment-validation-hero p {
  margin:0;
  color:#dbeafe;
  font-size:14px;
  font-weight:750;
}
.deployment-validation-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.deployment-validation-mode-tabs {
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:14px;
  padding:8px;
  margin:12px 0;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.deployment-validation-mode-tabs button {
  height:36px;
  border:0;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  padding:0 12px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}
.deployment-validation-mode-tabs button.active {
  background:#1d4ed8;
  color:#fff;
}
.deployment-validation-kpi-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(135px,1fr));
  gap:10px;
  margin-bottom:14px;
  overflow-x:auto;
}
.deployment-validation-overview-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  align-items:start;
}
.deployment-validation-score {
  width:100%;
  height:12px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
  margin:12px 0;
}
.deployment-validation-score div {
  height:100%;
  background:linear-gradient(90deg,#1d4ed8,#22c55e);
  border-radius:999px;
}
.deployment-validation-coverage {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.deployment-validation-coverage span {
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#eff6ff;
  border:1px solid #bfdbfe;
  color:#1d4ed8;
  font-size:12px;
  font-weight:900;
  padding:7px 10px;
}
.deployment-validation-table-card {
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:16px;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
  padding:14px;
}
.deployment-validation-table-wrap {
  width:100%;
  max-height:700px;
  overflow:auto;
}
.deployment-validation-table {
  min-width:1220px !important;
}
.deployment-validation-table th,
.deployment-validation-table td {
  white-space:normal !important;
  vertical-align:top;
}
.deployment-validation-table select {
  border:1px solid #d7e2ee;
  border-radius:9px;
  padding:7px 9px;
  background:#fff;
  font-weight:850;
}
@media (max-width:1450px) {
  .deployment-validation-kpi-grid { grid-template-columns:repeat(4,minmax(135px,1fr)); }
  .deployment-validation-overview-grid { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .deployment-validation-hero,
  .deployment-validation-kpi-grid { grid-template-columns:1fr; }
}


/* V31.4.1 Menu Visibility & UI Typography Polish Hotfix */
:root {
  --swomb-text: #1e293b;
  --swomb-muted: #64748b;
  --swomb-soft-border: #e2e8f0;
  --swomb-card-shadow: 0 8px 22px rgba(15,23,42,.045);
}

body,
.app-shell,
.app-content,
.panel,
.pmo-card,
.tree-card,
.chart-card,
.table-wrap,
.elegant-table,
.phase-table,
.notification-table,
.defect-table,
.devops-table,
.evidence-table,
.connector-table,
.uat-table,
.deployment-validation-table {
  color: var(--swomb-text);
  font-weight: 400 !important;
  letter-spacing: 0;
  line-height: 1.45;
}

.app-content {
  font-size: 13px;
}

:where(
  .pmo-card p,
  .pmo-card span,
  .pmo-card td,
  .pmo-card li,
  .pmo-card div,
  .elegant-table td,
  .phase-table td,
  .notification-table td,
  .defect-table td,
  .devops-table td,
  .evidence-table td,
  .connector-table td,
  .uat-table td,
  .deployment-validation-table td,
  .production-table td,
  .admin-table td,
  .system-breadcrumb,
  .breadcrumb-current,
  .breadcrumb-filter,
  .target-filter-banner,
  .export-context-card span,
  .completion-strip span,
  .listed-access-strip span,
  .uat-deferred-list span
) {
  font-weight: 500 !important;
}

:where(
  .pmo-card h2,
  .pmo-card h3,
  .chart-card-head h3,
  .pmo-card-head h3,
  .section-title,
  .section-title span,
  .page-title,
  .sidebar-section-title,
  .system-breadcrumb b
) {
  font-weight: 700 !important;
  letter-spacing: -0.015em;
}

:where(
  .summary-card .value,
  .tree-summary-card .value,
  .kpi-value,
  .stat-value,
  .metric-value
) {
  font-weight: 750 !important;
  letter-spacing: -0.025em;
}

:where(
  button,
  .small-btn,
  .primary,
  .secondary,
  .sidebar-menu-btn,
  .breadcrumb-link,
  .breadcrumb-clear,
  .micro-link,
  .status-pill,
  .evidence-status,
  .breadcrumb-chip,
  .summary-chip,
  .multi-select-trigger,
  .multi-select-option,
  select,
  input,
  textarea
) {
  font-weight: 600 !important;
}

:where(
  .elegant-table th,
  .phase-table th,
  .notification-table th,
  .defect-table th,
  .devops-table th,
  .evidence-table th,
  .connector-table th,
  .uat-table th,
  .deployment-validation-table th,
  .production-table th,
  .admin-table th
) {
  font-weight: 650 !important;
  color: #334155 !important;
  background: #f8fafc !important;
  letter-spacing: .02em;
}

:where(
  .pmo-card,
  .production-table-card,
  .connector-table-card,
  .evidence-table-wrap,
  .uat-table-card,
  .deployment-validation-table-card,
  .route-guard-panel,
  .target-filter-banner,
  .system-breadcrumb,
  .export-context-card,
  .completion-strip > div,
  .listed-access-strip > div,
  .access-policy-note,
  .connector-overview-card,
  .connector-status-card
) {
  border-color: var(--swomb-soft-border) !important;
  box-shadow: var(--swomb-card-shadow) !important;
}

:where(.app-header, .modern-header, .topbar) {
  font-weight: 500 !important;
}

:where(.sidebar-menu-btn) {
  min-height: 36px;
  border-radius: 10px;
}

:where(.sidebar-menu-btn span, .sidebar-menu-btn div) {
  font-weight: 550 !important;
}

:where(.sidebar-section-title) {
  font-size: 10px !important;
  font-weight: 650 !important;
  color: #64748b !important;
}

:where(.uat-hero h2, .deployment-validation-hero h2, .connector-hero h2, .evidence-hero h2, .production-hero h2) {
  font-weight: 700 !important;
}

:where(.uat-hero p, .deployment-validation-hero p, .connector-hero p, .evidence-hero p, .production-hero p) {
  font-weight: 500 !important;
}

:where(.uat-mode-tabs button, .deployment-validation-mode-tabs button, .connector-mode-tabs button, .evidence-mode-tabs button, .production-mode-tabs button, .notification-mode-tabs button) {
  font-weight: 600 !important;
}

:where(.json-pre, pre) {
  font-weight: 400 !important;
  line-height: 1.5;
}

:where(.toast) {
  font-weight: 600 !important;
}

:where(.action-context-strip b, .listed-access-strip b, .production-readiness-list b) {
  font-weight: 650 !important;
}

:where(.action-context-strip span, .listed-access-strip span, .production-readiness-list span) {
  font-weight: 550 !important;
}

:where(.pmo-card-head span, .chart-card-head span) {
  font-weight: 500 !important;
  color: var(--swomb-muted) !important;
}

:where(.status-pill.red, .status-pill.amber, .status-pill.green, .status-pill.blue) {
  font-weight: 650 !important;
}

@media (max-width: 900px) {
  .app-content {
    font-size: 12.5px;
  }
}


/* V31.4.2 Enterprise Label + Helvetica UI Refinement */
:root {
  --enterprise-font: "Helvetica Neue", Helvetica, Arial, "Liberation Sans", sans-serif;
  --enterprise-text: #172033;
  --enterprise-muted: #5f6f85;
  --enterprise-soft: #f8fafc;
  --enterprise-border: #e5ebf3;
}

html,
body,
button,
input,
select,
textarea,
table,
.app-shell,
.app-content,
.sidebar,
.topbar,
.system-breadcrumb {
  font-family: var(--enterprise-font) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body,
.app-content,
.pmo-card,
.panel,
.table-wrap,
.elegant-table,
.phase-table,
.notification-table,
.defect-table,
.devops-table,
.evidence-table,
.connector-table,
.uat-table,
.deployment-validation-table {
  color: var(--enterprise-text) !important;
  font-weight: 375 !important;
}

:where(
  .pmo-card p,
  .pmo-card span,
  .pmo-card td,
  .pmo-card li,
  .pmo-card div,
  td,
  .breadcrumb-current,
  .breadcrumb-filter,
  .target-filter-banner,
  .uat-table td,
  .deployment-validation-table td,
  .notification-table td,
  .evidence-table td,
  .connector-table td,
  .defect-table td,
  .devops-table td
) {
  font-weight: 400 !important;
  color: var(--enterprise-text);
}

:where(
  .pmo-card h2,
  .pmo-card h3,
  .pmo-card-head h3,
  .chart-card-head h3,
  .section-title,
  .page-title,
  .uat-hero h2,
  .deployment-validation-hero h2,
  .production-hero h2,
  .evidence-hero h2,
  .connector-hero h2,
  .notification-hero h2
) {
  font-weight: 620 !important;
  letter-spacing: -0.018em !important;
}

:where(
  .uat-hero p,
  .deployment-validation-hero p,
  .production-hero p,
  .evidence-hero p,
  .connector-hero p,
  .notification-hero p,
  .pmo-card-head span,
  .chart-card-head span,
  .breadcrumb-chip,
  .summary-chip,
  .system-breadcrumb span,
  .system-breadcrumb small
) {
  font-weight: 400 !important;
  color: var(--enterprise-muted) !important;
}

:where(
  .tree-summary-card .label,
  .summary-card .label,
  .kpi-label,
  th,
  .sidebar-section-title,
  .listed-access-strip span,
  .action-context-strip span,
  .communication-coverage-summary span
) {
  font-weight: 560 !important;
  letter-spacing: .035em !important;
}

:where(
  .tree-summary-card .value,
  .summary-card .value,
  .kpi-value,
  .stat-value,
  .metric-value
) {
  font-weight: 650 !important;
  letter-spacing: -0.02em !important;
}

:where(
  button,
  .small-btn,
  .primary,
  .secondary,
  .sidebar-menu-btn,
  .uat-mode-tabs button,
  .deployment-validation-mode-tabs button,
  .notification-mode-tabs button,
  .production-mode-tabs button,
  .evidence-mode-tabs button,
  .connector-mode-tabs button
) {
  font-weight: 520 !important;
  letter-spacing: -0.005em !important;
}

:where(
  .status-pill,
  .evidence-status,
  .breadcrumb-chip,
  .summary-chip,
  .micro-link,
  .toast
) {
  font-weight: 550 !important;
}

:where(
  b,
  strong,
  .action-context-strip b,
  .listed-access-strip b,
  .production-readiness-list b,
  .uat-deferred-list b,
  .deployment-validation-coverage span
) {
  font-weight: 590 !important;
}

:where(
  .pmo-card,
  .production-table-card,
  .connector-table-card,
  .uat-table-card,
  .deployment-validation-table-card,
  .export-context-card,
  .completion-strip > div,
  .listed-access-strip > div,
  .access-policy-note,
  .connector-overview-card,
  .connector-status-card
) {
  border-color: var(--enterprise-border) !important;
  box-shadow: 0 6px 18px rgba(15,23,42,.035) !important;
}

:where(
  .elegant-table th,
  .phase-table th,
  .notification-table th,
  .defect-table th,
  .devops-table th,
  .evidence-table th,
  .connector-table th,
  .uat-table th,
  .deployment-validation-table th,
  .production-table th,
  .admin-table th
) {
  font-weight: 560 !important;
  color: #42526a !important;
  background: #f9fbfd !important;
}

:where(
  .elegant-table td,
  .phase-table td,
  .notification-table td,
  .defect-table td,
  .devops-table td,
  .evidence-table td,
  .connector-table td,
  .uat-table td,
  .deployment-validation-table td,
  .production-table td,
  .admin-table td
) {
  font-weight: 390 !important;
  color: #1f2937 !important;
}

:where(.sidebar-menu-btn span, .sidebar-menu-btn div) {
  font-weight: 460 !important;
}

:where(.sidebar-menu-btn.active span, .sidebar-menu-btn.active div) {
  font-weight: 560 !important;
}

:where(input, select, textarea) {
  font-weight: 420 !important;
}

:where(.json-pre, pre, code) {
  font-family: "Helvetica Neue", Helvetica, Arial, "Liberation Sans", sans-serif !important;
  font-weight: 390 !important;
}

.app-content {
  font-size: 13px;
}

.enterprise-project-context-note {
  font-family: var(--enterprise-font) !important;
  font-weight: 400 !important;
}


/* V31.4.3 Fixed Left Sidebar Layout Hotfix */
html,
body,
#root {
  min-height: 100%;
}

body {
  overflow: hidden !important;
}

.app-frame {
  display: block !important;
  min-height: 100vh !important;
  height: 100vh !important;
  overflow: hidden !important;
  background: #f4f7fb;
}

.app-sidebar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 264px !important;
  height: 100vh !important;
  max-height: 100vh !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  z-index: 80 !important;
  transform: translateZ(0);
}

.app-frame.sidebar-collapsed .app-sidebar {
  width: 78px !important;
}

.app-main {
  margin-left: 264px !important;
  width: calc(100vw - 264px) !important;
  height: 100vh !important;
  min-height: 100vh !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  scroll-behavior: smooth;
  background: #f4f7fb;
}

.app-frame.sidebar-collapsed .app-main {
  margin-left: 78px !important;
  width: calc(100vw - 78px) !important;
}

.app-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 60 !important;
}

.system-breadcrumb {
  position: sticky;
  top: 78px;
  z-index: 55;
}

.side-menu {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 7px 9px 8px !important;
  display: grid !important;
  gap: 2px !important;
  align-content: start !important;
}

.side-menu-section {
  gap: 2px !important;
  padding: 3px 0 6px !important;
}

.side-menu-heading {
  padding: 5px 9px 4px !important;
  font-size: 9px !important;
  letter-spacing: .10em !important;
}

.side-menu-item {
  min-height: 31px !important;
  height: 31px !important;
  border-radius: 9px !important;
  padding: 0 9px !important;
  gap: 8px !important;
}

.side-menu-icon {
  width: 22px !important;
  height: 22px !important;
  flex-basis: 22px !important;
  font-size: 13px !important;
  border-radius: 7px !important;
}

.side-menu-label {
  font-size: 11.25px !important;
  line-height: 1.15 !important;
}

.side-menu-bottom {
  flex: 0 0 auto !important;
  padding: 7px 9px 9px !important;
  gap: 3px !important;
  overflow: hidden !important;
  background: rgba(2,6,23,.16) !important;
}

.side-menu-bottom .side-menu-item {
  min-height: 32px !important;
  height: 32px !important;
}

.sidebar-brand {
  min-height: 66px !important;
  padding: 9px 12px !important;
}

.sidebar-logo {
  width: 44px !important;
  height: 38px !important;
}

.sidebar-logo img {
  max-width: 38px !important;
  max-height: 30px !important;
}

.sidebar-toggle {
  top: 20px !important;
}

.sidebar-collapsed .side-menu {
  padding: 8px 8px !important;
}

.sidebar-collapsed .side-menu-item {
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 !important;
}

.sidebar-collapsed .side-menu-bottom {
  padding: 8px !important;
}

@media (max-width: 1180px) {
  .app-sidebar {
    width: 78px !important;
  }
  .app-main,
  .app-frame.sidebar-expanded .app-main,
  .app-frame.sidebar-collapsed .app-main {
    margin-left: 78px !important;
    width: calc(100vw - 78px) !important;
  }
  .side-menu {
    overflow: hidden !important;
  }
}

@media (max-width: 760px) {
  body {
    overflow: auto !important;
  }
  .app-frame {
    height: auto !important;
    min-height: 100vh !important;
    overflow: visible !important;
  }
  .app-sidebar {
    position: sticky !important;
    width: 78px !important;
  }
  .app-main {
    height: auto !important;
    min-height: 100vh !important;
    overflow: visible !important;
    margin-left: 78px !important;
    width: calc(100vw - 78px) !important;
  }
  .system-breadcrumb {
    position: static;
  }
}


/* V31.4.4 ServiceNow-level Enterprise UI Hotfix */
:root {
  --sn-bg: #f6f8fb;
  --sn-card: #ffffff;
  --sn-border: #dfe7ef;
  --sn-border-soft: #eef2f6;
  --sn-text: #172033;
  --sn-muted: #607188;
  --sn-link: #08796f;
  --sn-row: #fbfcfe;
  --sn-row-hover: #f3f7fb;
  --sn-shadow: 0 3px 10px rgba(15,23,42,.035);
}

.app-main,
.app-content {
  background: var(--sn-bg) !important;
}

.app-content {
  padding: 14px 16px 18px !important;
}

.action-hero,
.uat-hero,
.deployment-validation-hero,
.production-hero,
.evidence-hero,
.connector-hero,
.notification-hero {
  min-height: 78px !important;
  padding: 16px 20px !important;
  border-radius: 14px !important;
  box-shadow: var(--sn-shadow) !important;
}

.action-hero h2,
.uat-hero h2,
.deployment-validation-hero h2,
.production-hero h2,
.evidence-hero h2,
.connector-hero h2,
.notification-hero h2 {
  font-size: 21px !important;
  line-height: 1.15 !important;
  font-weight: 620 !important;
  margin-bottom: 5px !important;
}

.action-hero p,
.uat-hero p,
.deployment-validation-hero p,
.production-hero p,
.evidence-hero p,
.connector-hero p,
.notification-hero p {
  font-size: 12.5px !important;
  line-height: 1.35 !important;
}

.action-mode-tabs,
.uat-mode-tabs,
.deployment-validation-mode-tabs,
.production-mode-tabs,
.evidence-mode-tabs,
.connector-mode-tabs,
.notification-mode-tabs {
  padding: 6px !important;
  border-radius: 12px !important;
  gap: 5px !important;
  margin: 10px 0 !important;
  box-shadow: var(--sn-shadow) !important;
}

.action-mode-tabs button,
.uat-mode-tabs button,
.deployment-validation-mode-tabs button,
.production-mode-tabs button,
.evidence-mode-tabs button,
.connector-mode-tabs button,
.notification-mode-tabs button {
  height: 30px !important;
  min-height: 30px !important;
  border-radius: 8px !important;
  padding: 0 11px !important;
  font-size: 11.5px !important;
  font-weight: 520 !important;
}

/* Universal KPI/Card grids */
.action-card-grid,
.tree-summary-grid,
.evidence-kpi-grid,
.connector-kpi-grid,
.uat-kpi-grid,
.deployment-validation-kpi-grid,
.production-kpi-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
  gap: 10px !important;
  align-items: stretch !important;
}

/* ServiceNow-style KPI cards */
.action-card,
.tree-summary-card,
.enterprise-kpi {
  min-height: 96px !important;
  height: 96px !important;
  border-radius: 12px !important;
  padding: 11px 12px !important;
  border: 1px solid var(--sn-border) !important;
  background: linear-gradient(180deg, #fff, #fbfcfe) !important;
  box-shadow: var(--sn-shadow) !important;
  gap: 5px !important;
  overflow: hidden !important;
  position: relative;
}

.action-card:hover,
.tree-summary-card:hover,
.enterprise-kpi:hover {
  transform: none !important;
  box-shadow: 0 7px 18px rgba(15,23,42,.06) !important;
  border-color: #cbd8e6 !important;
}

/* left accent instead of heavy colored blocks */
.action-card.red,
.tree-summary-card.red,
.enterprise-kpi.red {
  border-left: 3px solid #dc2626 !important;
  background: #fff !important;
}
.action-card.amber,
.tree-summary-card.amber,
.enterprise-kpi.amber {
  border-left: 3px solid #d97706 !important;
  background: #fff !important;
}
.action-card.green,
.tree-summary-card.green,
.enterprise-kpi.green {
  border-left: 3px solid #16a34a !important;
  background: #fff !important;
}
.action-card.blue,
.tree-summary-card.blue,
.enterprise-kpi.blue {
  border-left: 3px solid #2563eb !important;
  background: #fff !important;
}
.tree-summary-card.teal,
.enterprise-kpi.teal {
  border-left: 3px solid #0f766e !important;
  background: #fff !important;
}

/* card label/value/subtitle clipping */
.action-card-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 8px !important;
  align-items: start !important;
  min-width: 0 !important;
}

.action-card-head span,
.tree-summary-card span,
.tree-summary-card .kpi-label {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
  max-width: 100% !important;
  color: #44546a !important;
  font-size: 10.5px !important;
  line-height: 1.15 !important;
  font-weight: 610 !important;
  letter-spacing: .045em !important;
}

.action-card-head b,
.action-card-value,
.tree-summary-card b,
.tree-summary-card .kpi-value-text {
  display: block !important;
  max-width: 100% !important;
  min-width: 0 !important;
  color: #111827 !important;
  font-size: clamp(18px, 1.7vw, 26px) !important;
  line-height: 1.02 !important;
  font-weight: 650 !important;
  letter-spacing: -0.025em !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: right !important;
}

.tree-summary-card b,
.tree-summary-card .kpi-value-text {
  text-align: left !important;
  font-size: clamp(17px, 1.65vw, 24px) !important;
}

.action-card small,
.action-card-subtitle,
.tree-summary-card small,
.tree-summary-card .kpi-subtext {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
  color: var(--sn-muted) !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  font-weight: 420 !important;
  max-height: 28px !important;
}

.action-card em {
  align-self: end !important;
  display: block !important;
  color: var(--sn-link) !important;
  font-size: 10.5px !important;
  font-weight: 560 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}

/* Long text cards: let value fit, do not create ugly blocks */
.action-card:has(.action-card-value),
.tree-summary-card:has(.kpi-value-text) {
  container-type: inline-size;
}

@container (max-width: 210px) {
  .action-card-head b,
  .action-card-value,
  .tree-summary-card b,
  .tree-summary-card .kpi-value-text {
    font-size: 18px !important;
  }
}

/* Context strips and table polish */
.action-context-strip,
.listed-access-strip,
.export-context-card,
.completion-strip > div {
  border-radius: 12px !important;
  box-shadow: var(--sn-shadow) !important;
  border-color: var(--sn-border) !important;
}

.action-context-strip div,
.listed-access-strip > div {
  padding: 8px 10px !important;
  border-radius: 10px !important;
}

.action-context-strip span,
.listed-access-strip span {
  font-size: 9.5px !important;
  font-weight: 560 !important;
}

.action-context-strip b,
.listed-access-strip b {
  font-size: 11.5px !important;
  font-weight: 560 !important;
}

.pmo-card,
.action-table-card,
.action-chart-card,
.production-table-card,
.connector-table-card,
.uat-table-card,
.deployment-validation-table-card,
.evidence-table-wrap {
  border-radius: 12px !important;
  box-shadow: var(--sn-shadow) !important;
  border-color: var(--sn-border) !important;
  background: var(--sn-card) !important;
}

.pmo-card-head h3,
.action-section-head h3 {
  font-size: 14.5px !important;
  font-weight: 600 !important;
}

.pmo-card-head span,
.action-section-head span {
  font-size: 11px !important;
  font-weight: 420 !important;
}

.elegant-table th,
.phase-table th,
.notification-table th,
.defect-table th,
.devops-table th,
.evidence-table th,
.connector-table th,
.uat-table th,
.deployment-validation-table th,
.production-table th,
.admin-table th,
.action-table th,
.pmo-mini-table th {
  height: 34px !important;
  padding: 8px 10px !important;
  font-size: 10.5px !important;
  font-weight: 590 !important;
  background: #f7f9fb !important;
  color: #3d4b5f !important;
  border-bottom: 1px solid var(--sn-border-soft) !important;
}

.elegant-table td,
.phase-table td,
.notification-table td,
.defect-table td,
.devops-table td,
.evidence-table td,
.connector-table td,
.uat-table td,
.deployment-validation-table td,
.production-table td,
.admin-table td,
.action-table td,
.pmo-mini-table td {
  padding: 9px 10px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 390 !important;
  border-bottom: 1px solid var(--sn-border-soft) !important;
}

.elegant-table tr:hover td,
.phase-table tr:hover td,
.notification-table tr:hover td,
.defect-table tr:hover td,
.devops-table tr:hover td,
.evidence-table tr:hover td,
.connector-table tr:hover td,
.uat-table tr:hover td,
.deployment-validation-table tr:hover td,
.action-table tr:hover td {
  background: var(--sn-row-hover) !important;
}

/* Huge value fallback: avoid ugly multiline cards */
.action-card-value,
.kpi-value-text {
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

/* Side menu closer to enterprise platform density */
.side-menu-item {
  font-weight: 440 !important;
}
.side-menu-item.active {
  font-weight: 560 !important;
}

/* Responsive enterprise density */
@media (min-width: 1600px) {
  .action-card-grid {
    grid-template-columns: repeat(5, minmax(190px, 1fr)) !important;
  }
}

@media (max-width: 1300px) {
  .action-card-grid,
  .tree-summary-grid,
  .evidence-kpi-grid,
  .connector-kpi-grid,
  .uat-kpi-grid,
  .deployment-validation-kpi-grid,
  .production-kpi-grid {
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)) !important;
  }
  .action-card,
  .tree-summary-card,
  .enterprise-kpi {
    height: 102px !important;
  }
}


/* V31.4.5 Elegant Scrollable Sidebar + ServiceNow UI Refinement */
:root {
  --sn-sidebar-bg: #061827;
  --sn-sidebar-bg-2: #08263a;
  --sn-sidebar-border: rgba(148,163,184,.16);
  --sn-sidebar-active: #0f766e;
  --sn-sidebar-hover: rgba(255,255,255,.075);
  --sn-sidebar-text: #d8e4ef;
  --sn-sidebar-muted: #8fa4b8;
}

/* Keep the sidebar fixed, but allow the middle menu to scroll elegantly */
.app-sidebar {
  background:
    linear-gradient(180deg, rgba(4,23,38,.98), rgba(2,13,25,.98)) !important;
  border-right: 1px solid rgba(148,163,184,.14) !important;
  box-shadow: 12px 0 28px rgba(2,6,23,.14) !important;
  overflow: hidden !important;
}

/* Better brand block */
.sidebar-brand {
  min-height: 74px !important;
  padding: 12px 12px 10px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  border-bottom: 1px solid var(--sn-sidebar-border) !important;
  background:
    radial-gradient(circle at 15% 15%, rgba(20,184,166,.18), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)) !important;
}

.sidebar-logo {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  background:
    linear-gradient(135deg, rgba(15,118,110,.95), rgba(29,78,216,.88)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 8px 18px rgba(2,6,23,.24) !important;
  overflow: hidden !important;
  position: relative;
}

.sidebar-logo img {
  max-width: 34px !important;
  max-height: 24px !important;
  object-fit: contain !important;
  position: relative;
  z-index: 2;
}

.sidebar-logo-mark {
  display: grid;
  place-items: center;
  position: absolute;
  inset: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 680;
  letter-spacing: -.04em;
  z-index: 1;
}

.sidebar-brand-text {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.sidebar-brand-text b {
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 640 !important;
  letter-spacing: .02em !important;
  line-height: 1;
}

.sidebar-brand-text small {
  color: var(--sn-sidebar-muted) !important;
  font-size: 10px !important;
  font-weight: 430 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Elegant inner menu scroll: visible content, invisible/soft scrollbar */
.side-menu {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 9px 9px 10px !important;
  display: block !important;
  overscroll-behavior: contain !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(148,163,184,.32) transparent !important;
  mask-image: linear-gradient(to bottom, transparent 0, black 14px, black calc(100% - 14px), transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, black 14px, black calc(100% - 14px), transparent 100%);
}

.side-menu::-webkit-scrollbar {
  width: 6px;
}
.side-menu::-webkit-scrollbar-track {
  background: transparent;
}
.side-menu::-webkit-scrollbar-thumb {
  background: rgba(148,163,184,.26);
  border-radius: 999px;
}
.side-menu:hover::-webkit-scrollbar-thumb {
  background: rgba(148,163,184,.42);
}

/* Bottom remains fixed, compact and visually separated */
.side-menu-bottom {
  flex: 0 0 auto !important;
  padding: 8px 9px 10px !important;
  gap: 4px !important;
  overflow: hidden !important;
  border-top: 1px solid var(--sn-sidebar-border) !important;
  background:
    linear-gradient(180deg, rgba(2,6,23,.14), rgba(2,6,23,.22)) !important;
  box-shadow: 0 -10px 24px rgba(2,6,23,.10) !important;
}

/* More elegant menu item density */
.side-menu-section {
  padding: 5px 0 8px !important;
  border-bottom: 1px solid rgba(148,163,184,.09) !important;
}
.side-menu-section:last-child {
  border-bottom: 0 !important;
}

.side-menu-heading {
  padding: 8px 9px 5px !important;
  color: #75a2b8 !important;
  font-size: 9.5px !important;
  font-weight: 620 !important;
  letter-spacing: .145em !important;
}

.side-menu-item {
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 9px !important;
  margin: 1px 0 !important;
  border-radius: 10px !important;
  color: var(--sn-sidebar-text) !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  transition: background .14s ease, border-color .14s ease, color .14s ease, transform .14s ease !important;
}

.side-menu-item:hover {
  background: var(--sn-sidebar-hover) !important;
  border-color: rgba(148,163,184,.12) !important;
  transform: none !important;
}

.side-menu-item.active {
  background: linear-gradient(135deg, rgba(15,118,110,.95), rgba(20,184,166,.78)) !important;
  color: #ffffff !important;
  border-color: rgba(153,246,228,.28) !important;
  box-shadow: 0 6px 16px rgba(15,118,110,.18) !important;
}

.side-menu-icon {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  flex-basis: 24px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.065) !important;
  color: inherit !important;
  display: grid !important;
  place-items: center !important;
  font-size: 13px !important;
}

.side-menu-item.active .side-menu-icon {
  background: rgba(255,255,255,.16) !important;
}

.side-menu-label {
  font-size: 11.35px !important;
  line-height: 1.12 !important;
  font-weight: 440 !important;
  color: inherit !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Collapsed sidebar polish */
.sidebar-collapsed .sidebar-brand {
  justify-content: center !important;
  padding: 12px 8px !important;
}
.sidebar-collapsed .sidebar-logo {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
}
.sidebar-collapsed .side-menu {
  padding: 9px 8px !important;
  overflow-y: auto !important;
}
.sidebar-collapsed .side-menu-item {
  width: 42px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  margin: 2px auto !important;
  justify-content: center !important;
}
.sidebar-collapsed .side-menu-icon {
  background: rgba(255,255,255,.065) !important;
}
.sidebar-collapsed .side-menu-bottom {
  padding: 8px !important;
}

/* Improved toggle */
.sidebar-toggle {
  width: 24px !important;
  height: 24px !important;
  right: -12px !important;
  top: 24px !important;
  border: 1px solid #d6e2ef !important;
  background: #ffffff !important;
  color: #0f172a !important;
  box-shadow: 0 6px 14px rgba(15,23,42,.12) !important;
  z-index: 120 !important;
}

/* More elegant main surface */
.app-header {
  backdrop-filter: blur(8px) saturate(120%);
  background: rgba(255,255,255,.93) !important;
}

.system-breadcrumb {
  border-radius: 0 0 12px 12px !important;
  box-shadow: 0 4px 14px rgba(15,23,42,.035) !important;
}

/* ServiceNow-like page cards refinements */
.app-content .full-width-panel,
.app-content .pmo-card,
.action-card,
.tree-summary-card,
.enterprise-kpi {
  border-color: #dfe7ef !important;
}

.action-card-grid,
.tree-summary-grid,
.evidence-kpi-grid,
.connector-kpi-grid,
.uat-kpi-grid,
.deployment-validation-kpi-grid,
.production-kpi-grid {
  gap: 11px !important;
}

/* Cards use smaller values for text-heavy cards */
.action-card-head b,
.action-card-value,
.tree-summary-card b,
.tree-summary-card .kpi-value-text {
  font-size: clamp(17px, 1.45vw, 23px) !important;
}

.action-card-head span,
.tree-summary-card span,
.tree-summary-card .kpi-label {
  font-size: 10.25px !important;
}

.action-card small,
.action-card-subtitle,
.tree-summary-card small,
.tree-summary-card .kpi-subtext {
  font-size: 10.75px !important;
}

/* Avoid over-wide content feeling */
.action-card,
.tree-summary-card,
.enterprise-kpi {
  border-radius: 11px !important;
}

/* Responsive: keep sidebar usable instead of hiding menu */
@media (max-height: 780px) {
  .sidebar-brand {
    min-height: 62px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .side-menu-item {
    height: 31px !important;
    min-height: 31px !important;
  }
  .side-menu-heading {
    padding-top: 6px !important;
    padding-bottom: 3px !important;
  }
  .side-menu-section {
    padding-bottom: 5px !important;
  }
}

@media (max-width: 1180px) {
  .app-sidebar {
    width: 78px !important;
  }
  .side-menu {
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }
  .side-menu-label,
  .side-menu-heading,
  .sidebar-brand-text {
    display: none !important;
  }
}


/* V31.4.6 Logo-only Sidebar Brand Fit Hotfix */
.sidebar-brand.logo-only {
  min-height: 74px !important;
  height: 74px !important;
  padding: 12px 0 !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0 !important;
}

.sidebar-brand.logo-only .sidebar-brand-text {
  display: none !important;
}

.sidebar-brand.logo-only .sidebar-logo {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  padding: 0 !important;
  margin: 0 auto !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, rgba(15,118,110,.95), rgba(29,78,216,.9)) !important;
}

.sidebar-brand.logo-only .sidebar-logo img {
  width: 40px !important;
  height: 40px !important;
  max-width: 40px !important;
  max-height: 40px !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin: auto !important;
}

.sidebar-brand.logo-only .sidebar-logo-mark {
  font-size: 18px !important;
  font-weight: 650 !important;
}

.sidebar-expanded .sidebar-brand.logo-only,
.sidebar-collapsed .sidebar-brand.logo-only {
  justify-content: center !important;
}

.sidebar-expanded .sidebar-brand.logo-only .sidebar-logo,
.sidebar-collapsed .sidebar-brand.logo-only .sidebar-logo {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
}

@media (max-height: 780px) {
  .sidebar-brand.logo-only {
    min-height: 62px !important;
    height: 62px !important;
    padding: 8px 0 !important;
  }
  .sidebar-brand.logo-only .sidebar-logo {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
  }
  .sidebar-brand.logo-only .sidebar-logo img {
    width: 35px !important;
    height: 35px !important;
    max-width: 35px !important;
    max-height: 35px !important;
  }
}


/* V31.4.7 Natural Logo Fit Sidebar Hotfix */
.sidebar-brand.logo-only.natural-logo {
  min-height: 72px !important;
  height: 72px !important;
  padding: 12px 0 !important;
  justify-content: center !important;
  align-items: center !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(20,184,166,.11), transparent 46%),
    linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.01)) !important;
}

.sidebar-brand.logo-only.natural-logo .sidebar-logo {
  width: 96px !important;
  height: 44px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  max-height: 44px !important;
  padding: 0 !important;
  margin: 0 auto !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.sidebar-brand.logo-only.natural-logo .sidebar-logo img {
  width: 92px !important;
  height: 40px !important;
  max-width: 92px !important;
  max-height: 40px !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin: auto !important;
  position: relative !important;
  z-index: 2 !important;
}

.sidebar-brand.logo-only.natural-logo .sidebar-logo-mark {
  display: none;
  position: static !important;
  width: 92px !important;
  height: 38px !important;
  place-items: center !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, rgba(15,118,110,.95), rgba(29,78,216,.86)) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  letter-spacing: .05em !important;
}

.sidebar-collapsed .sidebar-brand.logo-only.natural-logo .sidebar-logo {
  width: 48px !important;
  height: 44px !important;
  min-width: 48px !important;
  max-width: 48px !important;
}

.sidebar-collapsed .sidebar-brand.logo-only.natural-logo .sidebar-logo img {
  width: 42px !important;
  height: 36px !important;
  max-width: 42px !important;
  max-height: 36px !important;
}

.sidebar-collapsed .sidebar-brand.logo-only.natural-logo .sidebar-logo-mark {
  width: 42px !important;
  height: 36px !important;
  font-size: 9px !important;
  letter-spacing: .02em !important;
}

@media (max-height: 780px) {
  .sidebar-brand.logo-only.natural-logo {
    min-height: 62px !important;
    height: 62px !important;
    padding: 8px 0 !important;
  }
  .sidebar-brand.logo-only.natural-logo .sidebar-logo {
    width: 86px !important;
    height: 38px !important;
    min-width: 86px !important;
    max-width: 86px !important;
  }
  .sidebar-brand.logo-only.natural-logo .sidebar-logo img {
    width: 82px !important;
    height: 34px !important;
    max-width: 82px !important;
    max-height: 34px !important;
  }
}


/* V31.5 Attendance, Leave Approval & Timesheet Workflow */
.attendance-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#0f766e 52%,#1d4ed8);
  color:#fff;
  padding:16px 20px;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.attendance-hero h2 {
  margin:0 0 5px;
  font-size:21px;
  line-height:1.15;
  font-weight:620;
  letter-spacing:-.018em;
}
.attendance-hero p {
  margin:0;
  color:#dbeafe;
  font-size:12.5px;
  line-height:1.35;
  font-weight:400;
}
.attendance-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.attendance-mode-tabs {
  display:flex;
  align-items:center;
  gap:5px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:6px;
  margin:10px 0;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.attendance-mode-tabs button {
  height:30px;
  min-height:30px;
  border:0;
  border-radius:8px;
  background:#f8fafc;
  color:#334155;
  padding:0 11px;
  font-size:11.5px;
  font-weight:520;
  cursor:pointer;
}
.attendance-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.attendance-kpi-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.attendance-overview-grid,
.attendance-action-panel,
.attendance-recon,
.attendance-policy-grid {
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.attendance-leave-form {
  display:grid;
  grid-template-columns:minmax(0,720px);
  gap:12px;
}
.attendance-form-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(160px,1fr));
  gap:12px;
  margin:10px 0 14px;
}
.attendance-form-grid label {
  display:grid;
  gap:6px;
  color:#42526a;
  font-size:11px;
  font-weight:560;
}
.attendance-form-grid textarea {
  grid-column:1 / -1;
}
.attendance-form-grid input,
.attendance-form-grid select,
.attendance-form-grid textarea {
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:9px 10px;
  font-size:12px;
  font-weight:420;
  background:#fff;
}
.attendance-table-card {
  background:#fff;
  border:1px solid #dfe7ef;
  border-radius:12px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
  padding:14px;
}
.attendance-table-wrap {
  width:100%;
  max-height:620px;
  overflow:auto;
}
.attendance-table {
  min-width:1080px !important;
}
.attendance-table th {
  height:34px;
  padding:8px 10px;
  font-size:10.5px;
  font-weight:590;
  background:#f7f9fb;
  color:#3d4b5f;
  border-bottom:1px solid #eef2f6;
}
.attendance-table td {
  padding:9px 10px;
  font-size:12px;
  line-height:1.35;
  font-weight:390;
  border-bottom:1px solid #eef2f6;
}
.attendance-table tr:hover td {
  background:#f3f7fb;
}
.row-actions {
  display:flex;
  gap:6px;
  align-items:center;
}
.mini-btn {
  height:26px;
  min-height:26px;
  padding:0 8px;
  border-radius:8px;
  border:0;
  font-size:10.5px;
  font-weight:540;
}
@media (max-width:900px) {
  .attendance-hero,
  .attendance-form-grid {
    grid-template-columns:1fr;
  }
  .attendance-hero-actions {
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}


/* V31.6 Final Integrity Reconciliation */
.final-integrity-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#0f766e 50%,#1d4ed8);
  color:#fff;
  padding:16px 20px;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.final-integrity-hero h2 {
  margin:0 0 5px;
  font-size:21px;
  line-height:1.15;
  font-weight:620;
  letter-spacing:-.018em;
}
.final-integrity-hero p {
  margin:0;
  color:#dbeafe;
  font-size:12.5px;
  line-height:1.35;
  font-weight:400;
}
.final-integrity-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.final-integrity-mode-tabs {
  display:flex;
  align-items:center;
  gap:5px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:6px;
  margin:10px 0;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.final-integrity-mode-tabs button {
  height:30px;
  min-height:30px;
  border:0;
  border-radius:8px;
  background:#f8fafc;
  color:#334155;
  padding:0 11px;
  font-size:11.5px;
  font-weight:520;
  cursor:pointer;
}
.final-integrity-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.final-integrity-kpi-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.final-integrity-overview-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-items:start;
}
.final-integrity-score {
  width:100%;
  height:12px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
  margin:12px 0;
}
.final-integrity-score div {
  height:100%;
  background:linear-gradient(90deg,#0f766e,#22c55e);
  border-radius:999px;
}
.final-ok-box {
  background:#ecfdf5;
  color:#166534;
  border:1px solid #bbf7d0;
  border-radius:12px;
  padding:12px 14px;
  font-weight:560;
}
.final-gap-list {
  display:grid;
  gap:8px;
}
.final-gap-list div {
  background:#fff7ed;
  border:1px solid #fed7aa;
  border-radius:12px;
  padding:10px 12px;
  display:grid;
  gap:3px;
}
.final-gap-list b {
  color:#9a3412;
  font-weight:620;
}
.final-gap-list span {
  color:#7c2d12;
  font-size:12px;
  font-weight:430;
}
.final-integrity-table-card {
  background:#fff;
  border:1px solid #dfe7ef;
  border-radius:12px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
  padding:14px;
}
.final-integrity-table-wrap {
  width:100%;
  max-height:700px;
  overflow:auto;
}
.final-integrity-table {
  min-width:1180px !important;
}
.final-integrity-table th {
  height:34px;
  padding:8px 10px;
  font-size:10.5px;
  font-weight:590;
  background:#f7f9fb;
  color:#3d4b5f;
  border-bottom:1px solid #eef2f6;
}
.final-integrity-table td {
  padding:9px 10px;
  font-size:12px;
  line-height:1.35;
  font-weight:390;
  border-bottom:1px solid #eef2f6;
}
.final-integrity-table tr:hover td {
  background:#f3f7fb;
}
@media (max-width:900px) {
  .final-integrity-hero,
  .final-integrity-overview-grid {
    grid-template-columns:1fr;
  }
  .final-integrity-hero-actions {
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}


/* V31.7 WhatsApp Integration & Notification Placement */
.whatsapp-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#052e2b,#0f766e 52%,#16a34a);
  color:#fff;
  padding:16px 20px;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.whatsapp-hero h2 {
  margin:0 0 5px;
  font-size:21px;
  line-height:1.15;
  font-weight:620;
  letter-spacing:-.018em;
}
.whatsapp-hero p {
  margin:0;
  color:#d1fae5;
  font-size:12.5px;
  line-height:1.35;
  font-weight:400;
}
.whatsapp-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.whatsapp-mode-tabs {
  display:flex;
  align-items:center;
  gap:5px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:6px;
  margin:10px 0;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.whatsapp-mode-tabs button {
  height:30px;
  min-height:30px;
  border:0;
  border-radius:8px;
  background:#f8fafc;
  color:#334155;
  padding:0 11px;
  font-size:11.5px;
  font-weight:520;
  cursor:pointer;
}
.whatsapp-mode-tabs button.active {
  background:#0f766e;
  color:#fff;
}
.whatsapp-kpi-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.whatsapp-overview-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-items:start;
}
.whatsapp-policy-list {
  display:grid;
  gap:8px;
  margin-top:12px;
}
.whatsapp-policy-list div {
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:10px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:9px 10px;
  background:#f8fafc;
}
.whatsapp-policy-list b {
  color:#0f172a;
  font-weight:620;
  font-size:11px;
}
.whatsapp-policy-list span {
  color:#475569;
  font-size:11.5px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.whatsapp-form-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(160px,1fr));
  gap:10px;
  margin:10px 0 14px;
}
.whatsapp-form-grid label {
  display:grid;
  gap:6px;
  color:#42526a;
  font-size:11px;
  font-weight:560;
}
.whatsapp-form-grid label.wide {
  grid-column:1 / -1;
}
.whatsapp-form-grid input,
.whatsapp-form-grid select,
.whatsapp-form-grid textarea {
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:9px 10px;
  font-size:12px;
  font-weight:420;
  background:#fff;
}
.whatsapp-table-card {
  background:#fff;
  border:1px solid #dfe7ef;
  border-radius:12px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
  padding:14px;
}
.whatsapp-table-wrap {
  width:100%;
  max-height:700px;
  overflow:auto;
}
.whatsapp-table {
  min-width:1180px !important;
}
.whatsapp-table th {
  height:34px;
  padding:8px 10px;
  font-size:10.5px;
  font-weight:590;
  background:#f7f9fb;
  color:#3d4b5f;
  border-bottom:1px solid #eef2f6;
}
.whatsapp-table td {
  padding:9px 10px;
  font-size:12px;
  line-height:1.35;
  font-weight:390;
  border-bottom:1px solid #eef2f6;
}
.whatsapp-table tr:hover td {
  background:#f3f7fb;
}
.whatsapp-config-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
@media (max-width:900px) {
  .whatsapp-hero,
  .whatsapp-overview-grid,
  .whatsapp-config-grid,
  .whatsapp-form-grid {
    grid-template-columns:1fr;
  }
  .whatsapp-hero-actions {
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}


/* V31.8 Enterprise Configuration & Connector Control Center */
.enterprise-config-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#061a2d,#1d4ed8 52%,#0f766e);
  color:#fff;
  padding:16px 20px;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.enterprise-config-hero h2 {
  margin:0 0 5px;
  font-size:21px;
  line-height:1.15;
  font-weight:620;
  letter-spacing:-.018em;
}
.enterprise-config-hero p {
  margin:0;
  color:#dbeafe;
  font-size:12.5px;
  line-height:1.35;
  font-weight:400;
}
.enterprise-config-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.enterprise-config-mode-tabs {
  display:flex;
  align-items:center;
  gap:5px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:6px;
  margin:10px 0;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.enterprise-config-mode-tabs button {
  height:30px;
  min-height:30px;
  border:0;
  border-radius:8px;
  background:#f8fafc;
  color:#334155;
  padding:0 11px;
  font-size:11.5px;
  font-weight:520;
  cursor:pointer;
}
.enterprise-config-mode-tabs button.active {
  background:#1d4ed8;
  color:#fff;
}
.enterprise-config-kpi-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.enterprise-config-overview-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-items:start;
}
.enterprise-config-policy-list,
.enterprise-config-pending-list {
  display:grid;
  gap:8px;
  margin-top:12px;
}
.enterprise-config-policy-list div,
.enterprise-config-pending-list div {
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:10px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:9px 10px;
  background:#f8fafc;
}
.enterprise-config-policy-list b,
.enterprise-config-pending-list b {
  color:#0f172a;
  font-weight:620;
  font-size:11px;
}
.enterprise-config-policy-list span,
.enterprise-config-pending-list span {
  color:#475569;
  font-size:11.5px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.enterprise-config-table-card {
  background:#fff;
  border:1px solid #dfe7ef;
  border-radius:12px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
  padding:14px;
}
.enterprise-config-table-wrap {
  width:100%;
  max-height:700px;
  overflow:auto;
}
.enterprise-config-table {
  min-width:1250px !important;
}
.enterprise-config-table th {
  height:34px;
  padding:8px 10px;
  font-size:10.5px;
  font-weight:590;
  background:#f7f9fb;
  color:#3d4b5f;
  border-bottom:1px solid #eef2f6;
}
.enterprise-config-table td {
  padding:9px 10px;
  font-size:12px;
  line-height:1.35;
  font-weight:390;
  border-bottom:1px solid #eef2f6;
}
.enterprise-config-table tr:hover td {
  background:#f3f7fb;
}
.enterprise-config-json-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
@media (max-width:900px) {
  .enterprise-config-hero,
  .enterprise-config-overview-grid,
  .enterprise-config-json-grid {
    grid-template-columns:1fr;
  }
  .enterprise-config-hero-actions {
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}


/* V31.8.1 Sidebar logo behavior hotfix */
.sidebar-brand.brand-switchable {
  min-height: 72px !important;
  height: 72px !important;
  padding: 10px 8px 12px !important;
  justify-content: center !important;
  align-items: center !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(20,184,166,.10), transparent 46%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01)) !important;
}
.sidebar-brand.brand-switchable .sidebar-logo {
  width: calc(100% - 18px) !important;
  max-width: 178px !important;
  min-width: 0 !important;
  height: 42px !important;
  padding: 0 !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}
.sidebar-brand.brand-switchable .sidebar-logo img {
  display: block !important;
  width: 100% !important;
  height: 42px !important;
  object-fit: contain !important;
  object-position: center center !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.18));
}
.sidebar-brand.brand-switchable .sidebar-logo-mark {
  display: none !important;
}
.sidebar-expanded .sidebar-brand.brand-switchable .sidebar-logo-expanded {
  width: 100% !important;
  height: 42px !important;
}
.sidebar-collapsed .sidebar-brand.brand-switchable {
  min-height: 64px !important;
  height: 64px !important;
  padding: 10px 6px !important;
}
.sidebar-collapsed .sidebar-brand.brand-switchable .sidebar-logo {
  width: 44px !important;
  max-width: 44px !important;
  height: 44px !important;
}
.sidebar-collapsed .sidebar-brand.brand-switchable .sidebar-logo img,
.sidebar-collapsed .sidebar-brand.brand-switchable .sidebar-logo-collapsed {
  width: 44px !important;
  height: 44px !important;
  object-fit: contain !important;
}


/* V31.8.2 Breadcrumb home icon cleanup */
.breadcrumb-home {
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  color: #0f766e !important;
  background: rgba(15,118,110,.08) !important;
  border: 1px solid rgba(15,118,110,.14) !important;
}
.breadcrumb-home:hover {
  color: #ffffff !important;
  background: #0f766e !important;
  border-color: #0f766e !important;
}


/* V31.8.3 Sidebar logo full-width + collapsed mark hard override */
.app-frame.sidebar-expanded .sidebar-brand.brand-switchable {
  min-height: 78px !important;
  height: 78px !important;
  width: 100% !important;
  padding: 12px 14px !important;
  justify-content: center !important;
  align-items: center !important;
  overflow: hidden !important;
}
.app-frame.sidebar-expanded .sidebar-brand.brand-switchable .sidebar-logo {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.app-frame.sidebar-expanded .sidebar-brand.brand-switchable .sidebar-logo img.sidebar-logo-expanded {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 48px !important;
  max-height: 48px !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 auto !important;
  filter: drop-shadow(0 2px 5px rgba(0,0,0,.22)) !important;
}
.app-frame.sidebar-collapsed .sidebar-brand.brand-switchable {
  min-height: 68px !important;
  height: 68px !important;
  width: 100% !important;
  padding: 10px 4px !important;
  justify-content: center !important;
  align-items: center !important;
  overflow: visible !important;
}
.app-frame.sidebar-collapsed .sidebar-brand.brand-switchable .sidebar-logo {
  width: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  padding: 0 !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.app-frame.sidebar-collapsed .sidebar-brand.brand-switchable .sidebar-logo img.sidebar-logo-collapsed {
  width: 46px !important;
  max-width: 46px !important;
  height: 52px !important;
  max-height: 52px !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 auto !important;
  filter: drop-shadow(0 2px 5px rgba(0,0,0,.22)) !important;
}
.app-frame.sidebar-expanded .sidebar-brand.brand-switchable .sidebar-logo-mark,
.app-frame.sidebar-collapsed .sidebar-brand.brand-switchable .sidebar-logo-mark {
  display: none !important;
}


/* V31.8.4 Header breadcrumb space optimization */
.app-title h1 {
  display: flex !important;
  align-items: baseline !important;
  gap: 6px !important;
  margin-bottom: 0 !important;
}
.screen-title-accent {
  color: #0f766e !important;
  font-weight: 560 !important;
  font-size: 15px !important;
  letter-spacing: -0.01em !important;
}
.header-breadcrumb {
  margin-top: 5px !important;
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.header-breadcrumb .breadcrumb-left {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}
.header-breadcrumb .breadcrumb-link,
.header-breadcrumb .breadcrumb-current,
.header-breadcrumb .breadcrumb-filter {
  font-size: 11.5px !important;
  line-height: 1.2 !important;
  max-width: 170px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.header-breadcrumb .breadcrumb-home {
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  font-size: 12px !important;
}
.header-breadcrumb .breadcrumb-sep {
  color: #94a3b8 !important;
  font-size: 11px !important;
}
.app-content-no-breadcrumb {
  padding-top: 14px !important;
}


/* V31.8.5 SharePoint Data Backup & Restore Connector */
.sp-backup-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#05304a,#1d4ed8 52%,#0f766e);
  color:#fff;
  padding:16px 20px;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.sp-backup-hero h2 {
  margin:0 0 5px;
  font-size:21px;
  line-height:1.15;
  font-weight:620;
  letter-spacing:-.018em;
}
.sp-backup-hero p {
  margin:0;
  color:#dbeafe;
  font-size:12.5px;
  line-height:1.35;
  font-weight:400;
}
.sp-backup-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.sp-backup-mode-tabs {
  display:flex;
  align-items:center;
  gap:5px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:6px;
  margin:10px 0;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.sp-backup-mode-tabs button {
  height:30px;
  min-height:30px;
  border:0;
  border-radius:8px;
  background:#f8fafc;
  color:#334155;
  padding:0 11px;
  font-size:11.5px;
  font-weight:520;
  cursor:pointer;
}
.sp-backup-mode-tabs button.active {
  background:#1d4ed8;
  color:#fff;
}
.sp-backup-kpi-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.sp-backup-overview-grid,
.sp-backup-restore-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-items:start;
}
.sp-backup-policy-list {
  display:grid;
  gap:8px;
  margin-top:12px;
}
.sp-backup-policy-list div {
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:10px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:9px 10px;
  background:#f8fafc;
}
.sp-backup-policy-list b {
  color:#0f172a;
  font-weight:620;
  font-size:11px;
}
.sp-backup-policy-list span {
  color:#475569;
  font-size:11.5px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sp-backup-table-card {
  background:#fff;
  border:1px solid #dfe7ef;
  border-radius:12px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
  padding:14px;
}
.sp-backup-table-wrap {
  width:100%;
  max-height:700px;
  overflow:auto;
}
.sp-backup-table {
  min-width:1250px !important;
}
.sp-backup-table th {
  height:34px;
  padding:8px 10px;
  font-size:10.5px;
  font-weight:590;
  background:#f7f9fb;
  color:#3d4b5f;
  border-bottom:1px solid #eef2f6;
}
.sp-backup-table td {
  padding:9px 10px;
  font-size:12px;
  line-height:1.35;
  font-weight:390;
  border-bottom:1px solid #eef2f6;
}
.sp-backup-table tr:hover td {
  background:#f3f7fb;
}
.sp-backup-form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:10px 0 14px;
}
.sp-backup-form-grid label {
  display:grid;
  gap:6px;
  color:#42526a;
  font-size:11px;
  font-weight:560;
}
.sp-backup-form-grid label.wide {
  grid-column:1 / -1;
}
.sp-backup-form-grid input,
.sp-backup-form-grid select,
.sp-backup-form-grid textarea {
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:9px 10px;
  font-size:12px;
  font-weight:420;
  background:#fff;
}
.sp-backup-json-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.sp-backup-json-grid .pmo-card:last-child {
  grid-column:1 / -1;
}
.row-actions.wrap {
  flex-wrap:wrap;
}
@media (max-width:900px) {
  .sp-backup-hero,
  .sp-backup-overview-grid,
  .sp-backup-restore-grid,
  .sp-backup-json-grid,
  .sp-backup-form-grid {
    grid-template-columns:1fr;
  }
  .sp-backup-hero-actions {
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}


/* V31.8.6 Record Version Concurrency & Overwrite Guard */
.rv-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#0f172a,#1d4ed8 52%,#0f766e);
  color:#fff;
  padding:16px 20px;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.rv-hero h2 {
  margin:0 0 5px;
  font-size:21px;
  line-height:1.15;
  font-weight:620;
  letter-spacing:-.018em;
}
.rv-hero p {
  margin:0;
  color:#dbeafe;
  font-size:12.5px;
  line-height:1.35;
  font-weight:400;
}
.rv-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.rv-mode-tabs {
  display:flex;
  align-items:center;
  gap:5px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:6px;
  margin:10px 0;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.rv-mode-tabs button {
  height:30px;
  min-height:30px;
  border:0;
  border-radius:8px;
  background:#f8fafc;
  color:#334155;
  padding:0 11px;
  font-size:11.5px;
  font-weight:520;
  cursor:pointer;
}
.rv-mode-tabs button.active {
  background:#1d4ed8;
  color:#fff;
}
.rv-kpi-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.rv-overview-grid,
.rv-test-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-items:start;
}
.rv-policy-list {
  display:grid;
  gap:8px;
  margin-top:12px;
}
.rv-policy-list div {
  display:grid;
  grid-template-columns:105px minmax(0,1fr);
  gap:10px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:9px 10px;
  background:#f8fafc;
}
.rv-policy-list b {
  color:#0f172a;
  font-weight:620;
  font-size:11px;
}
.rv-policy-list span {
  color:#475569;
  font-size:11.5px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.rv-table-card {
  background:#fff;
  border:1px solid #dfe7ef;
  border-radius:12px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
  padding:14px;
}
.rv-table-wrap {
  width:100%;
  max-height:700px;
  overflow:auto;
}
.rv-table {
  min-width:1250px !important;
}
.rv-table th {
  height:34px;
  padding:8px 10px;
  font-size:10.5px;
  font-weight:590;
  background:#f7f9fb;
  color:#3d4b5f;
  border-bottom:1px solid #eef2f6;
}
.rv-table td {
  padding:9px 10px;
  font-size:12px;
  line-height:1.35;
  font-weight:390;
  border-bottom:1px solid #eef2f6;
}
.rv-table tr:hover td {
  background:#f3f7fb;
}
.rv-form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:10px 0 14px;
}
.rv-form-grid label {
  display:grid;
  gap:6px;
  color:#42526a;
  font-size:11px;
  font-weight:560;
}
.rv-form-grid label.wide {
  grid-column:1 / -1;
}
.rv-form-grid input,
.rv-form-grid textarea {
  border:1px solid #d7e2ee;
  border-radius:10px;
  padding:9px 10px;
  font-size:12px;
  font-weight:420;
  background:#fff;
}
.rv-json-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.danger.small-btn {
  background:#dc2626 !important;
  color:#fff !important;
  border-color:#dc2626 !important;
}
@media (max-width:900px) {
  .rv-hero,
  .rv-overview-grid,
  .rv-test-grid,
  .rv-json-grid,
  .rv-form-grid {
    grid-template-columns:1fr;
  }
  .rv-hero-actions {
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}


/* V31.9 Mutation Endpoint Concurrency Adoption */
.mva-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  background:linear-gradient(135deg,#111827,#1d4ed8 52%,#0f766e);
  color:#fff;
  padding:16px 20px;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.mva-hero h2 {
  margin:0 0 5px;
  font-size:21px;
  line-height:1.15;
  font-weight:620;
  letter-spacing:-.018em;
}
.mva-hero p {
  margin:0;
  color:#dbeafe;
  font-size:12.5px;
  line-height:1.35;
  font-weight:400;
}
.mva-hero-actions {
  display:flex;
  gap:8px;
  white-space:nowrap;
}
.mva-mode-tabs {
  display:flex;
  align-items:center;
  gap:5px;
  overflow-x:auto;
  background:#fff;
  border:1px solid #d7e2ee;
  border-radius:12px;
  padding:6px;
  margin:10px 0;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
}
.mva-mode-tabs button {
  height:30px;
  min-height:30px;
  border:0;
  border-radius:8px;
  background:#f8fafc;
  color:#334155;
  padding:0 11px;
  font-size:11.5px;
  font-weight:520;
  cursor:pointer;
}
.mva-mode-tabs button.active {
  background:#1d4ed8;
  color:#fff;
}
.mva-kpi-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.mva-overview-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  align-items:start;
}
.mva-policy-list,
.mva-split-list {
  display:grid;
  gap:8px;
  margin-top:12px;
}
.mva-policy-list div,
.mva-split-list div {
  display:grid;
  grid-template-columns:128px minmax(0,1fr);
  gap:10px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  padding:9px 10px;
  background:#f8fafc;
}
.mva-policy-list b,
.mva-split-list b {
  color:#0f172a;
  font-weight:620;
  font-size:11px;
}
.mva-policy-list span,
.mva-split-list span {
  color:#475569;
  font-size:11.5px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.mva-table-card {
  background:#fff;
  border:1px solid #dfe7ef;
  border-radius:12px;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
  padding:14px;
}
.mva-table-wrap {
  width:100%;
  max-height:700px;
  overflow:auto;
}
.mva-table {
  min-width:1300px !important;
}
.mva-table th {
  height:34px;
  padding:8px 10px;
  font-size:10.5px;
  font-weight:590;
  background:#f7f9fb;
  color:#3d4b5f;
  border-bottom:1px solid #eef2f6;
}
.mva-table td {
  padding:9px 10px;
  font-size:12px;
  line-height:1.35;
  font-weight:390;
  border-bottom:1px solid #eef2f6;
}
.mva-table tr:hover td {
  background:#f3f7fb;
}
.mva-json-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
@media (max-width:900px) {
  .mva-hero,
  .mva-overview-grid,
  .mva-json-grid {
    grid-template-columns:1fr;
  }
  .mva-hero-actions {
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}


/* V31.9.1 Compact header and user favourites menu */
.compact-header-actions {
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-width:0 !important;
}
.release-select-shell {
  position:relative;
}
.release-select {
  height:42px;
  min-width:122px;
  border:1px solid #d6e3f2;
  border-radius:11px;
  background:#ffffff;
  color:#0f172a;
  padding:0 34px 0 13px;
  font-size:12px;
  font-weight:680;
  outline:none;
  box-shadow:0 3px 10px rgba(15,23,42,.035);
  appearance:auto;
}
.release-select:focus {
  border-color:#0f766e;
  box-shadow:0 0 0 3px rgba(15,118,110,.10);
}
.client-switch-button.icon-only,
.profile-button.icon-only,
.header-bell.icon-only,
.header-chat.icon-only,
.favorite-button {
  width:46px !important;
  min-width:46px !important;
  height:46px !important;
  padding:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid #d6e3f2 !important;
  border-radius:12px !important;
  background:#ffffff !important;
  box-shadow:0 3px 10px rgba(15,23,42,.035) !important;
}
.client-switch-button.icon-only .client-logo {
  margin:0 !important;
}
.client-switch-button.icon-only .client-logo img {
  max-width:34px !important;
  max-height:34px !important;
}
.profile-button.icon-only .profile-avatar {
  margin:0 !important;
}
.favorite-shell,
.client-switch-shell,
.profile-shell {
  position:relative;
}
.favorite-button {
  color:#b45309 !important;
  font-size:20px !important;
  line-height:1 !important;
  cursor:pointer !important;
}
.favorite-button:hover,
.client-switch-button.icon-only:hover,
.profile-button.icon-only:hover,
.header-bell.icon-only:hover,
.header-chat.icon-only:hover {
  border-color:#0f766e !important;
  background:#f0fdfa !important;
}
.compact-dropdown.right-align {
  right:0 !important;
  left:auto !important;
  top:calc(100% + 8px) !important;
  z-index:80 !important;
}
.favorite-dropdown {
  position:absolute;
  width:330px;
  max-width:calc(100vw - 28px);
  padding:12px;
  background:#fff;
  border:1px solid #dbe6f2;
  border-radius:16px;
  box-shadow:0 24px 64px rgba(15,23,42,.18);
}
.favorite-drop-head {
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:3px 4px 10px;
  border-bottom:1px solid #edf2f7;
}
.favorite-drop-head b {
  font-size:13px;
  color:#0f172a;
}
.favorite-drop-head small {
  font-size:11px;
  color:#64748b;
}
.favorite-quick-list {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  padding:10px 0;
  max-height:190px;
  overflow:auto;
}
.favorite-quick-item {
  display:flex;
  align-items:center;
  gap:7px;
  border:1px solid #e5edf6;
  background:#f8fafc;
  color:#334155;
  border-radius:11px;
  min-height:34px;
  padding:0 9px;
  text-align:left;
  font-size:11.5px;
  font-weight:540;
  cursor:pointer;
}
.favorite-quick-item:hover,
.favorite-quick-item.active {
  background:#0f766e;
  border-color:#0f766e;
  color:#fff;
}
.favorite-icon {
  width:20px;
  height:20px;
  min-width:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:7px;
  background:rgba(15,118,110,.08);
}
.favorite-quick-item.active .favorite-icon,
.favorite-quick-item:hover .favorite-icon {
  background:rgba(255,255,255,.18);
}
.favorite-config-title {
  padding:8px 4px 6px;
  border-top:1px solid #edf2f7;
  color:#64748b;
  font-size:10.5px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.favorite-config-list {
  display:grid;
  gap:4px;
  max-height:260px;
  overflow:auto;
  padding-right:2px;
}
.favorite-config-row {
  display:flex;
  align-items:center;
  gap:8px;
  min-height:32px;
  padding:5px 7px;
  border-radius:9px;
  cursor:pointer;
  font-size:11.5px;
  color:#334155;
}
.favorite-config-row:hover {
  background:#f1f5f9;
}
.favorite-config-row input {
  accent-color:#0f766e;
}
.favorite-icon.small {
  width:18px;
  height:18px;
  min-width:18px;
  font-size:11px;
}
.app-header-actions .client-switch-text,
.app-header-actions .profile-text,
.app-header-actions .profile-caret {
  display:none !important;
}
.compact-client-shell .client-switch-dropdown,
.compact-profile-shell .profile-dropdown {
  min-width:280px;
}
@media (max-width:900px) {
  .release-select {
    min-width:92px;
    width:96px;
  }
  .compact-header-actions {
    gap:7px !important;
  }
  .client-switch-button.icon-only,
  .profile-button.icon-only,
  .header-bell.icon-only,
  .header-chat.icon-only,
  .favorite-button {
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
  }
  .favorite-dropdown {
    width:300px;
  }
}


/* V31.9.2 quick links panel refinement */
.favorite-dropdown.favorite-dropdown-wide {
  width: 760px;
  max-width: calc(100vw - 36px);
  padding: 14px;
}
.favorite-drop-head-wide {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.favorite-drop-title {
  display:flex;
  flex-direction:column;
  gap:3px;
}
.favorite-head-actions {
  display:flex;
  align-items:center;
  gap:8px;
}
.favorite-head-toggle {
  min-height:36px;
  padding:0 14px;
  border:1px solid #0f766e;
  background:#0f766e;
  color:#fff;
  border-radius:10px;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}
.favorite-head-toggle.secondary {
  background:#fff;
  color:#0f766e;
}
.favorite-quick-pane,
.favorite-config-pane {
  padding-top:12px;
}
.favorite-quick-grid.wide {
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:10px;
}
.favorite-quick-item.wide {
  min-height:46px;
  justify-content:flex-start;
  padding:0 12px;
  white-space:normal;
}
.favorite-config-grid.wide {
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:8px 10px;
}
.favorite-config-row.wide {
  min-height:42px;
  border:1px solid #e5edf6;
  background:#f8fafc;
  padding:8px 10px;
  border-radius:10px;
}
.favorite-config-row.wide:hover {
  background:#eef7f6;
  border-color:#bfdbd7;
}
.favorite-item-label {
  line-height:1.2;
}
/* remove inner scrollbars for quick links / configure pane */
.favorite-dropdown .favorite-quick-list,
.favorite-dropdown .favorite-config-list,
.favorite-dropdown .favorite-quick-grid,
.favorite-dropdown .favorite-config-grid {
  max-height:none !important;
  overflow:visible !important;
}
@media (max-width: 1200px) {
  .favorite-dropdown.favorite-dropdown-wide {
    width: 680px;
  }
}
@media (max-width: 980px) {
  .favorite-dropdown.favorite-dropdown-wide {
    width: 560px;
  }
  .favorite-quick-grid.wide,
  .favorite-config-grid.wide {
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 680px) {
  .favorite-dropdown.favorite-dropdown-wide {
    width: calc(100vw - 22px);
    padding:12px;
  }
  .favorite-drop-head-wide {
    flex-direction:column;
  }
  .favorite-quick-grid.wide,
  .favorite-config-grid.wide {
    grid-template-columns:1fr;
  }
}


/* V31.9.3 PMO Dashboard alignment and grid polish */
.dashboard-align-shell {
  width: 100%;
  max-width: none;
  display: block;
}
.dashboard-align-shell .scope-ribbon {
  margin: 0 0 12px !important;
  min-height: 58px;
  align-items: center;
}
.dashboard-align-shell .rag-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 10px 0 12px !important;
}
.dashboard-align-shell .metric-grid.compact,
.dashboard-align-shell .metric-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 12px 0 !important;
}
.dashboard-align-shell .rag-counter,
.dashboard-align-shell .metric-card,
.dashboard-align-shell .chart-card {
  min-width: 0;
  box-sizing: border-box;
}
.dashboard-align-shell .metric-card {
  min-height: 96px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.dashboard-align-shell .chart-grid {
  width: 100%;
  display: grid;
  gap: 14px !important;
  margin: 12px 0 !important;
  align-items: start !important;
}
.dashboard-align-shell .chart-grid.top {
  grid-template-columns: minmax(280px,.95fr) minmax(340px,1.15fr) minmax(320px,1fr) !important;
}
.dashboard-align-shell .chart-grid.wide-left {
  grid-template-columns: minmax(0,1.72fr) minmax(360px,.78fr) !important;
  align-items: start !important;
}
.dashboard-align-shell .chart-grid:not(.top):not(.wide-left) {
  grid-template-columns: minmax(0,1.1fr) minmax(340px,.9fr) !important;
}
.dashboard-align-shell .chart-card {
  border-radius: 18px !important;
  padding: 14px 16px !important;
  align-self: start !important;
}
.dashboard-align-shell .chart-card.wide {
  min-height: 0 !important;
}
.dashboard-align-shell .chart-card.full {
  width: 100%;
}
.dashboard-align-shell .empty-state {
  min-height: 96px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border: 1px dashed #d6e3f2;
  border-radius: 14px;
  background: #f8fafc;
  color: #64748b;
  padding: 16px;
}
.dashboard-align-shell .dual-row {
  grid-template-columns: minmax(180px,240px) minmax(0,1fr) 76px !important;
}
.dashboard-align-shell .responsibility-modern {
  display: grid;
  gap: 10px;
}
.dashboard-align-shell .resp-line {
  grid-template-columns: minmax(220px, 1fr) minmax(420px, 3fr) auto !important;
  align-items: center;
}
.dashboard-align-shell .resp-badges {
  justify-content: flex-end;
  flex-wrap: wrap;
}
@media (min-width: 1440px) {
  .dashboard-align-shell .chart-grid.wide-left {
    grid-template-columns: minmax(0,1.62fr) minmax(420px,.88fr) !important;
  }
  .dashboard-align-shell .chart-grid.top {
    grid-template-columns: 1fr 1.15fr 1fr !important;
  }
}
@media (max-width: 1280px) {
  .dashboard-align-shell .rag-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .dashboard-align-shell .metric-grid.compact,
  .dashboard-align-shell .metric-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .dashboard-align-shell .chart-grid.top,
  .dashboard-align-shell .chart-grid.wide-left,
  .dashboard-align-shell .chart-grid:not(.top):not(.wide-left) {
    grid-template-columns: 1fr !important;
  }
  .dashboard-align-shell .resp-line {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 720px) {
  .dashboard-align-shell .rag-summary-grid,
  .dashboard-align-shell .metric-grid.compact,
  .dashboard-align-shell .metric-grid {
    grid-template-columns: 1fr !important;
  }
}


/* V31.9.4 profile menu elegance refinement */
.elegant-profile-dropdown {
  width: 360px;
  max-width: calc(100vw - 24px);
  padding: 14px;
  border-radius: 18px;
  box-shadow: 0 26px 72px rgba(15,23,42,.20);
}
.elegant-profile-dropdown .elegant-head {
  align-items: flex-start;
  gap: 12px;
  padding-bottom: 12px;
  margin-bottom: 12px;
}
.profile-head-copy {
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.profile-head-copy b {
  font-size: 15px;
  font-weight: 700;
  color:#0f172a;
  line-height:1.2;
}
.profile-head-copy small {
  font-size: 12px;
  color:#64748b;
  font-weight: 500;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
}
.profile-head-caption {
  margin-top: 4px;
  display:inline-flex;
  align-self:flex-start;
  padding: 4px 8px;
  border-radius: 999px;
  background:#eff6ff;
  color:#0f766e;
  font-size: 11px;
  font-weight: 600;
}
.profile-drop-section-label {
  margin: 2px 0 8px;
  color:#64748b;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:700;
}
.profile-context-list {
  display:grid;
  gap:8px;
  margin-bottom:12px;
}
.profile-context-row {
  display:grid;
  grid-template-columns: 84px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:linear-gradient(180deg,#fbfdff 0%, #f8fafc 100%);
}
.profile-context-row .context-label {
  color:#64748b;
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.profile-context-row .context-value {
  color:#0f172a;
  font-size:13px;
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.profile-action-list {
  display:grid;
  gap:8px;
}
.profile-action-card,
.elegant-logout {
  width:100%;
  min-height:54px;
  display:grid;
  grid-template-columns: 36px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:10px 12px !important;
  border:1px solid #e2e8f0 !important;
  border-radius:12px !important;
  background:#ffffff !important;
  margin-top:0 !important;
}
.profile-action-card:hover {
  background:#f8fbff !important;
  border-color:#cbd5e1 !important;
}
.profile-action-icon {
  width:30px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:#eff6ff;
  color:#0f766e;
  font-size:15px;
  font-weight:700;
}
.profile-action-copy {
  display:flex;
  flex-direction:column;
  min-width:0;
}
.profile-action-copy b {
  color:#0f172a;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
  text-align:left;
}
.profile-action-copy small {
  color:#64748b;
  font-size:11px;
  font-weight:500;
  line-height:1.25;
  text-align:left;
}
.profile-drop-footer {
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid #eef2f7;
}
.elegant-logout {
  background:#fff7f7 !important;
  border-color:#ffe0e0 !important;
}
.elegant-logout .logout-icon {
  background:#ffe7ea;
  color:#be123c;
}
.elegant-logout .profile-action-copy b,
.elegant-logout .profile-action-copy small {
  color:#be123c;
}
@media (max-width: 640px) {
  .elegant-profile-dropdown {
    width: min(360px, calc(100vw - 18px));
    right: -4px;
  }
}


/* V31.9.5 release segment and sidebar grouping refinement */
.release-segment-control {
  height:46px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:0 !important;
  padding:4px !important;
  border:1px solid #d6e3f2 !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#ffffff,#f8fbff) !important;
  box-shadow:0 3px 10px rgba(15,23,42,.035) !important;
  overflow:hidden !important;
}
.release-segment-label {
  height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  padding:0 11px !important;
  border-right:1px solid #e2edf7 !important;
  color:#64748b !important;
  font-size:10px !important;
  font-weight:780 !important;
  letter-spacing:.13em !important;
  white-space:nowrap !important;
}
.release-segment-option {
  height:36px !important;
  min-width:42px !important;
  padding:0 12px !important;
  border:0 !important;
  border-radius:10px !important;
  background:transparent !important;
  color:#334155 !important;
  font-size:12px !important;
  font-weight:720 !important;
  cursor:pointer !important;
  transition:background .14s ease, color .14s ease, box-shadow .14s ease !important;
}
.release-segment-option:hover {
  background:#edf7fb !important;
  color:#0f766e !important;
}
.release-segment-option.active {
  background:linear-gradient(135deg,#0f766e,#14b8a6) !important;
  color:#ffffff !important;
  box-shadow:0 8px 18px rgba(15,118,110,.20) !important;
}
.grouped-side-menu {
  padding-top:8px !important;
}
.grouped-section {
  padding:4px 0 7px !important;
  border-bottom:1px solid rgba(148,163,184,.10) !important;
}
.grouped-section.closed {
  padding-bottom:4px !important;
}
.side-menu-heading-button {
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  border:0 !important;
  background:transparent !important;
  cursor:pointer !important;
  text-align:left !important;
}
.side-menu-heading-button:hover {
  color:#bae6fd !important;
}
.side-menu-heading-left,
.side-menu-heading-right {
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
}
.side-menu-group-icon {
  width:18px !important;
  height:18px !important;
  display:inline-grid !important;
  place-items:center !important;
  border-radius:6px !important;
  background:rgba(255,255,255,.06) !important;
  color:#a7f3d0 !important;
  font-size:11px !important;
  letter-spacing:0 !important;
}
.side-menu-count {
  min-width:18px !important;
  height:18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  background:rgba(15,23,42,.30) !important;
  color:#cbd5e1 !important;
  font-size:10px !important;
  font-weight:760 !important;
  letter-spacing:0 !important;
}
.side-menu-chevron {
  color:#94a3b8 !important;
  font-size:12px !important;
  line-height:1 !important;
  letter-spacing:0 !important;
}
.grouped-side-menu-bottom {
  max-height:42vh !important;
  overflow-y:auto !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(148,163,184,.28) transparent !important;
}
.grouped-side-menu-bottom .grouped-section {
  border-bottom:1px solid rgba(148,163,184,.08) !important;
}
.grouped-side-menu-bottom .grouped-section:last-child {
  border-bottom:0 !important;
}
.sidebar-collapsed .grouped-section {
  padding:2px 0 !important;
  border-bottom:1px solid rgba(148,163,184,.07) !important;
}
.sidebar-collapsed .grouped-section.closed .side-menu-item {
  display:flex !important;
}
.sidebar-collapsed .release-segment-control {
  display:inline-flex !important;
}
@media (max-width:900px) {
  .release-segment-control {
    max-width:100% !important;
  }
  .release-segment-label {
    display:none !important;
  }
  .release-segment-option {
    padding:0 9px !important;
  }
}


/* V31.9.6 FeatherDB / JSONDB registry and indexing foundation */
.jsondb-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(135deg,#f8fbff,#eefdf8);border:1px solid #cfe7ef;border-radius:18px;padding:18px 20px;margin-bottom:14px;}
.jsondb-hero h2{margin:0 0 4px;color:#0f2a3d;}
.jsondb-hero p{margin:0;color:#5f7186;max-width:820px;}
.jsondb-mode-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px;}
.jsondb-mode-tabs button{border:1px solid #d4e3f2;background:#fff;border-radius:999px;padding:8px 13px;font-weight:700;color:#38546c;cursor:pointer;}
.jsondb-mode-tabs button.active{background:#0f766e;color:#fff;border-color:#0f766e;box-shadow:0 8px 18px rgba(15,118,110,.16);}
.jsondb-note-list{margin:4px 0 0;padding-left:18px;color:#516275;line-height:1.7;}
.jsondb-issues-pre{white-space:pre-wrap;background:#0f172a;color:#e2e8f0;border-radius:14px;padding:14px;max-height:420px;overflow:auto;font-size:12px;}
.sidebar-collapsed .side-menu-icon[title="FeatherDB Health"]{font-size:16px;}

/* V31.9.7 FeatherDB query engine/read API refinement */
.jsondb-mode-tabs button.active{box-shadow:0 8px 18px rgba(15,23,42,.12);}
.health-kpi.purple{border-color:#ddd6fe;background:linear-gradient(180deg,#fff,#f5f3ff);}

/* V31.9.8 FeatherDB safe write / WAL refinement */
.jsondb-mode-tabs button{white-space:nowrap}
.jsondb-issues-pre{max-height:420px;overflow:auto}

/* V31.9.9 FeatherDB integrity / relationship refinement */
.jsondb-mode-tabs button.active{font-weight:800;}
.jsondb-issues-pre{max-height:420px;overflow:auto;}

/* V31.10 FeatherDB admin console */
.jsondb-hero{border-left:4px solid rgba(14,116,144,.55);}
.jsondb-mode-tabs{gap:6px;flex-wrap:wrap;}
.jsondb-mode-tabs button{white-space:nowrap;}
.jsondb-note-list li{margin-bottom:6px;}

/* V31.12 FeatherDB write adoption: uses existing FeatherDB console card/table styling. */


/* V31.13 strict record-version conflict modal */
.strict-conflict-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;}
.strict-conflict-modal{width:min(760px,96vw);max-height:88vh;overflow:auto;background:#fff;border:1px solid rgba(15,23,42,.14);border-radius:22px;box-shadow:0 24px 60px rgba(15,23,42,.28);padding:22px;}
.strict-conflict-modal-polished{width:min(720px,94vw);padding:24px 26px;overflow:auto;}
.strict-conflict-title-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px;}
.strict-conflict-kicker{display:inline-flex;align-items:center;border-radius:999px;background:#fff7ed;color:#9a3412;font-weight:800;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;margin-bottom:8px;}
.strict-conflict-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;}
.strict-conflict-summary-cell{border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;padding:10px 12px;min-width:0;}
.strict-conflict-summary-cell span{display:block;color:#64748b;font-weight:800;font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;}
.strict-conflict-summary-cell b{display:block;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.strict-conflict-admin-override{margin-top:12px;border:1px solid #fed7aa;background:#fff7ed;border-radius:14px;padding:10px 12px;}
.strict-conflict-admin-override summary{cursor:pointer;font-weight:800;color:#9a3412;}
.strict-conflict-admin-override label{display:block;margin-top:10px;}
.strict-conflict-admin-override label span{display:block;font-size:12px;font-weight:800;color:#7c2d12;margin-bottom:6px;}
.strict-conflict-admin-override textarea{width:100%;border:1px solid #fdba74;border-radius:10px;padding:9px 10px;background:#fff;}
.strict-conflict-actions{position:sticky;bottom:-24px;background:linear-gradient(180deg,rgba(255,255,255,.88),#fff);padding-top:12px;margin-top:12px;}
@media(max-width:760px){.strict-conflict-summary-grid{grid-template-columns:1fr}.strict-conflict-modal-polished{padding:18px}}
.strict-conflict-modal p{color:#475569;line-height:1.55;margin:10px 0 14px;}
.strict-conflict-details{margin-top:12px;border:1px solid #e2e8f0;border-radius:14px;padding:10px 12px;background:#f8fafc;}
.strict-conflict-details summary{cursor:pointer;font-weight:700;color:#334155;}


/* V31.14 user adoption action center and role home */
.action-center-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#f8fbff,#eef7ff);border:1px solid #d9e9f7;border-radius:18px;padding:20px 22px;box-shadow:0 12px 30px rgba(15,54,92,.06)}
.action-center-hero h2{margin:0 0 6px;color:#0f2742;font-size:24px}.action-center-hero p{margin:0;color:#506274}.action-center-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.action-center-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:12px;margin:14px 0}.action-center-kpi{background:white;border:1px solid #e4edf5;border-radius:16px;padding:14px;box-shadow:0 8px 18px rgba(15,54,92,.05)}.action-center-kpi span{display:block;font-size:12px;color:#64748b}.action-center-kpi b{display:block;font-size:26px;color:#0f2742;margin-top:4px}.action-center-kpi small{display:block;color:#64748b;margin-top:3px}.action-center-kpi.red{border-color:#fecaca}.action-center-kpi.amber{border-color:#fde68a}.action-center-kpi.blue{border-color:#bfdbfe}.action-center-kpi.green{border-color:#bbf7d0}
.action-card-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:14px}.governance-action-card{background:#fff;border:1px solid #e5edf5;border-radius:16px;padding:14px;box-shadow:0 8px 22px rgba(15,54,92,.05);display:flex;flex-direction:column;gap:8px}.governance-action-card.red{border-color:#fecaca;background:#fff8f8}.governance-action-card.amber{border-color:#fde68a;background:#fffdf5}.governance-action-card.blue{border-color:#bfdbfe;background:#f8fbff}.governance-action-card.green{border-color:#bbf7d0;background:#f7fff9}.action-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.governance-action-card h4{margin:0;color:#0f2742}.governance-action-card p{margin:0;color:#516271;line-height:1.4}.action-card-meta{display:flex;gap:6px;flex-wrap:wrap}.action-card-meta span{font-size:11px;background:#f1f5f9;border-radius:999px;padding:4px 8px;color:#475569}.status-pill{border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700;background:#e2e8f0;color:#334155}.status-pill.red{background:#fee2e2;color:#991b1b}.status-pill.amber{background:#fef3c7;color:#92400e}.status-pill.blue{background:#dbeafe;color:#1d4ed8}.status-pill.green{background:#dcfce7;color:#166534}.action-center-table td{vertical-align:top}.role-home-strip{display:grid;grid-template-columns:1.6fr 2fr 1.3fr;gap:16px;align-items:center;border:1px solid #dbeafe;background:linear-gradient(135deg,#ffffff,#f4f9ff);border-radius:18px;padding:16px 18px}.role-home-title span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#2563eb;font-weight:800}.role-home-title h3{margin:3px 0;color:#0f2742}.role-home-title p{margin:0;color:#536372}.role-home-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.role-home-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:10px}.role-home-card span{display:block;font-size:11px;color:#64748b}.role-home-card b{display:block;font-size:20px;color:#0f2742}.role-home-card.red{border-color:#fecaca}.role-home-card.amber{border-color:#fde68a}.role-home-card.blue{border-color:#bfdbfe}.role-home-card.green{border-color:#bbf7d0}.role-home-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:1100px){.action-center-kpi-grid{grid-template-columns:repeat(3,1fr)}.action-card-grid{grid-template-columns:repeat(2,1fr)}.role-home-strip{grid-template-columns:1fr}.role-home-actions{justify-content:flex-start}}@media(max-width:720px){.action-center-hero{flex-direction:column;align-items:flex-start}.action-center-kpi-grid,.action-card-grid,.role-home-cards{grid-template-columns:1fr}}

/* V31.15 guided governance workflows */
.guided-workflow-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#ffffff,#f1fff8);border:1px solid #cdeee1;border-radius:18px;padding:20px 22px;box-shadow:0 12px 30px rgba(15,118,110,.07)}
.guided-workflow-hero h2{margin:0 0 6px;color:#0f2f2b;font-size:24px}.guided-workflow-hero p{margin:0;color:#506274;max-width:880px}.workflow-kpi{background:#fff;border:1px solid #e4edf5;border-radius:16px;padding:14px;box-shadow:0 8px 18px rgba(15,54,92,.05)}.workflow-kpi span{display:block;font-size:12px;color:#64748b}.workflow-kpi b{display:block;font-size:25px;color:#0f2742;margin-top:4px}.workflow-kpi small{display:block;color:#64748b;margin-top:3px}.workflow-kpi.red{border-color:#fecaca}.workflow-kpi.amber{border-color:#fde68a}.workflow-kpi.blue{border-color:#bfdbfe}.workflow-kpi.green{border-color:#bbf7d0}
.workflow-tabs{display:flex;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:10px;margin-bottom:14px}.workflow-tabs button{border:1px solid #d4e3f2;background:#fff;border-radius:999px;padding:8px 13px;font-weight:750;color:#38546c;cursor:pointer}.workflow-tabs button.active{background:#0f766e;color:#fff;border-color:#0f766e;box-shadow:0 8px 18px rgba(15,118,110,.16)}
.workflow-detail-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:14px;margin-bottom:14px}.workflow-detail-card,.workflow-metrics-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:16px;box-shadow:0 8px 22px rgba(15,54,92,.05)}.workflow-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.workflow-title-row h3{margin:0;color:#0f2742}.workflow-detail-card p{color:#516271;line-height:1.5}.workflow-progress-track{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:14px}.workflow-progress-fill{height:100%;border-radius:999px;background:#3b82f6}.workflow-progress-fill.green{background:#16a34a}.workflow-progress-fill.amber{background:#d97706}.workflow-progress-fill.red{background:#dc2626}.workflow-progress-fill.blue{background:#2563eb}
.workflow-signal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.workflow-signal{border:1px solid #e2e8f0;border-radius:13px;background:#f8fafc;padding:9px}.workflow-signal span{display:block;font-size:11px;color:#64748b}.workflow-signal b{display:block;font-size:18px;color:#0f2742}.workflow-step-list{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:14px;box-shadow:0 8px 22px rgba(15,54,92,.05)}.workflow-step{display:grid;grid-template-columns:52px 1fr auto;gap:14px;align-items:center;border:1px solid #e5edf5;border-radius:16px;padding:13px;margin-top:10px;background:#fff}.workflow-step.red{border-color:#fecaca;background:#fff8f8}.workflow-step.amber{border-color:#fde68a;background:#fffdf5}.workflow-step.blue{border-color:#bfdbfe;background:#f8fbff}.workflow-step.green{border-color:#bbf7d0;background:#f7fff9}.workflow-step-index{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#f1f5f9;color:#0f2742;font-weight:850}.workflow-step-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.workflow-step-head h4{margin:0;color:#0f2742}.workflow-step-main p{margin:6px 0;color:#516271}.workflow-step-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1000px){.workflow-detail-grid{grid-template-columns:1fr}.workflow-step{grid-template-columns:42px 1fr}.workflow-step-actions{grid-column:2;justify-content:flex-start}}@media(max-width:720px){.guided-workflow-hero{flex-direction:column;align-items:flex-start}.workflow-signal-grid{grid-template-columns:1fr}.workflow-step{grid-template-columns:1fr}.workflow-step-index{display:none}.workflow-step-actions{grid-column:auto}}

/* V31.16 Evidence Capture From Anywhere */
.evidence-capture-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px;
  border:1px solid rgba(37,99,235,.16);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(239,246,255,.96),rgba(236,253,245,.9));
}
.evidence-capture-hero h2 { margin:0 0 4px 0; color:#0f172a; }
.evidence-capture-hero p { margin:0; color:#475569; max-width:920px; }
.evidence-capture-kpi-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(140px,1fr));
  gap:12px;
  margin:14px 0;
}
.evidence-capture-kpi {
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
  border-radius:16px;
  padding:14px;
  box-shadow:0 10px 28px rgba(15,23,42,.06);
  min-height:92px;
}
.evidence-capture-kpi span { display:block; font-size:12px; color:#64748b; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.evidence-capture-kpi b { display:block; font-size:24px; color:#0f172a; margin:6px 0 2px; }
.evidence-capture-kpi small { color:#64748b; }
.evidence-capture-kpi.red { border-color:rgba(220,38,38,.24); background:#fff7f7; }
.evidence-capture-kpi.amber { border-color:rgba(217,119,6,.24); background:#fffbeb; }
.evidence-capture-kpi.green { border-color:rgba(22,163,74,.22); background:#f0fdf4; }
.evidence-capture-kpi.blue { border-color:rgba(37,99,235,.22); background:#eff6ff; }
.evidence-gap-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:12px;
}
.evidence-gap-card {
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  padding:14px;
  box-shadow:0 10px 30px rgba(15,23,42,.06);
}
.evidence-gap-card.red { border-color:rgba(220,38,38,.28); }
.evidence-gap-card.amber { border-color:rgba(217,119,6,.28); }
.evidence-gap-card h4 { margin:8px 0 6px; color:#0f172a; }
.evidence-gap-card p { margin:0 0 10px; color:#475569; }
.action-card-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.micro-action { margin-left:6px; }
@media (max-width: 1200px) {
  .evidence-capture-kpi-grid { grid-template-columns:repeat(3,minmax(140px,1fr)); }
}
@media (max-width: 760px) {
  .evidence-capture-hero { flex-direction:column; align-items:flex-start; }
  .evidence-capture-kpi-grid { grid-template-columns:1fr; }
}

/* V31.17 Notification Center & Governance Alerts */
.governance-alert-hero{background:linear-gradient(135deg,#f7fbff,#eef8f7);border:1px solid rgba(18,65,105,.12)}
.governance-alert-kpis .tree-summary-card{min-height:96px}
.governance-alert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:16px}
.governance-alert-card{background:#fff;border:1px solid #dbe7ef;border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(15,40,70,.06);display:flex;flex-direction:column;gap:10px;min-height:210px}
.governance-alert-card.red{border-left:5px solid #c0392b}.governance-alert-card.amber{border-left:5px solid #c78b16}.governance-alert-card.blue{border-left:5px solid #2675b8}.governance-alert-card.green{border-left:5px solid #1f8b62}
.governance-alert-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.governance-alert-card h3{margin:0;font-size:15px;color:#16324f}.governance-alert-card p{margin:0;color:#4c6378;line-height:1.45;font-size:13px}.governance-alert-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.governance-alert-meta span{background:#f3f7fa;border:1px solid #dce8ef;border-radius:999px;padding:4px 8px;font-size:11px;color:#486070}.governance-alert-actions{display:flex;gap:8px;flex-wrap:wrap}.alert-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;border:1px solid transparent}.alert-chip.red{color:#8a1e16;background:#fff2f0;border-color:#ffd1cb}.alert-chip.amber{color:#825306;background:#fff8e7;border-color:#ffe3a3}.alert-chip.blue{color:#174f80;background:#eef7ff;border-color:#cbe6ff}.alert-chip.green{color:#17603f;background:#eefaf5;border-color:#c6eadb}.governance-alert-table td{vertical-align:top}.governance-policy-box{margin-top:14px;background:#f7fafc;border:1px solid #dbe7ef;border-radius:14px;padding:14px}.governance-policy-box h4{margin:0 0 10px;color:#17324d}.governance-policy-box ul{margin:0;padding-left:18px;color:#405b70;line-height:1.55}


/* V31.18 One-Click Governance Report Packs */
.report-pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:14px}
.report-pack-card{background:#fff;border:1px solid #dbe4ef;border-radius:16px;padding:14px;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.report-pack-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.report-pack-card-head h3{margin:0 0 5px;color:#071b33;font-size:16px}.report-pack-card-head p{margin:0;color:#64748b;font-size:12px;line-height:1.45}
.report-pack-tone{border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;border:1px solid #dbe4ef;white-space:nowrap}.report-pack-tone.red{background:#fff1f2;color:#991b1b;border-color:#fecdd3}.report-pack-tone.amber{background:#fffbeb;color:#92400e;border-color:#fde68a}.report-pack-tone.green{background:#ecfdf5;color:#166534;border-color:#bbf7d0}.report-pack-tone.blue{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.report-pack-meta{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.report-pack-meta span{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:4px 8px;font-size:11px;color:#475569}
.report-pack-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.report-pack-message{margin-top:10px;font-size:12px;color:#475569;background:#f8fafc;border-left:3px solid #38bdf8;padding:8px;border-radius:8px}


/* V31.19 Client onboarding layer */
.onboarding-hero { border-left: 4px solid rgba(14, 165, 233, 0.55); }
.clean-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.clean-list li { display: grid; gap: 3px; padding: 10px 12px; border: 1px solid rgba(15, 23, 42, 0.08); border-radius: 12px; background: rgba(255,255,255,0.72); }
.clean-list li span { color: #64748b; font-size: 12px; }


/* V31.19.3 Admin Human Readable Data Renderer */
.human-data-panel{background:#fff;border:1px solid #dbe7f3;border-radius:16px;padding:14px;margin-top:10px;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.human-data-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;color:#0f2742}
.human-data-head span{font-size:12px;color:#64748b}
.human-kv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.human-kv{border:1px solid #e5edf6;background:#f8fbff;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:4px;min-height:62px}
.human-kv span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:700}.human-kv b{font-size:14px;color:#0f2742;word-break:break-word}
.human-table-wrap{margin-top:8px}.human-table td{vertical-align:top}.human-chip-list{display:flex;flex-wrap:wrap;gap:8px}.human-chip{padding:6px 10px;border-radius:999px;background:#eef6ff;border:1px solid #cfe2f5;font-size:12px;color:#17466e}
.human-checklist{display:flex;flex-direction:column;gap:8px}.human-check-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;border:1px solid #e6eef8;background:#fbfdff;border-radius:12px;padding:10px}.human-check-index{width:26px;height:26px;border-radius:50%;background:#eaf4ff;color:#0f5f9c;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:12px}.human-check-row small{display:block;color:#64748b;margin-top:3px}
.human-timeline{display:flex;flex-direction:column;gap:8px}.human-time-row{display:grid;grid-template-columns:18px 1fr;gap:8px;border-left:2px solid #d8e8f7;padding:0 0 8px 8px}.human-time-dot{width:10px;height:10px;background:#2f80ed;border-radius:50%;margin-top:5px;margin-left:-14px}.human-time-row small{display:block;color:#64748b;margin-top:3px}
.human-section-stack{display:flex;flex-direction:column;gap:12px}.human-subsection{border:1px dashed #dce8f4;border-radius:12px;padding:10px;background:#fcfdff}.human-subsection h4{margin:0 0 8px;color:#163553;font-size:13px}.human-empty{border:1px dashed #d4e2f1;border-radius:12px;padding:12px;color:#64748b;background:#fbfdff}.human-more{font-size:12px;color:#64748b;margin-top:6px}.human-raw-debug{margin-top:10px}.collapsed-json{max-height:260px;overflow:auto;background:#0f172a;color:#dbeafe;border-radius:12px;padding:12px;font-size:12px}


/* V31.19.4 User Experience Onboarding Tuning */
.ux-welcome-panel,.ux-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(135deg,#eef9ff,#f6fff8);border:1px solid #cfe7f5;border-radius:18px;padding:18px;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.ux-welcome-panel h2,.ux-hero h2{margin:4px 0 6px;color:#0f2742}.ux-welcome-panel p,.ux-hero p{margin:0;color:#425466;max-width:780px}.ux-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#0f766e;font-weight:800}.ux-welcome-actions,.ux-action-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ux-empty-state{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.ux-empty-state p{margin:0;color:#64748b}.workflow-step.blue{border-left-color:#2f80ed}.workflow-step.green{border-left-color:#1f9d55}.workflow-step.amber{border-left-color:#d97706}.workflow-step.red{border-left-color:#dc2626}


/* V31.19.5 Admin Visual Rendering Elegance */
.human-data-panel.elegant-renderer{
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
  border:1px solid #d8e6f3;
  border-radius:18px;
  padding:16px;
  margin-top:10px;
  box-shadow:0 16px 42px rgba(15,23,42,.055);
}
.human-data-panel.elegant-renderer .human-data-head{
  padding:0 0 12px;
  margin-bottom:14px;
  border-bottom:1px solid #eef4fb;
}
.human-summary-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.human-summary-item{
  background:linear-gradient(180deg,#f8fbff,#ffffff);
  border:1px solid #e1ebf6;
  border-radius:14px;
  padding:11px 12px;
  min-height:62px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:4px;
}
.human-summary-item span,
.human-description-block span{
  color:#64748b;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.human-summary-item b{font-size:15px;color:#0f2742;line-height:1.2;word-break:break-word}.tone-green{color:#047857!important}.tone-amber{color:#b45309!important}.tone-red{color:#be123c!important}.tone-blue{color:#0f5f9c!important}.tone-neutral{color:#475569!important}
.human-spec-shell{display:flex;flex-direction:column;gap:12px}.human-spec-table-wrap{border:1px solid #deebf7;border-radius:16px;overflow:hidden;background:#fff}.human-spec-table{width:100%;border-collapse:collapse;font-size:13px}.human-spec-table th{background:#f2f7fd;color:#475569;text-transform:uppercase;letter-spacing:.06em;font-size:11px;text-align:left;padding:11px 12px;border-bottom:1px solid #deebf7}.human-spec-table td{padding:12px;border-bottom:1px solid #edf3fa;vertical-align:top;color:#1e293b}.human-spec-table tr:last-child td{border-bottom:0}.human-spec-table tr:hover td{background:#fbfdff}.human-prop{font-weight:800;color:#0f2742;min-width:180px}.human-val{min-width:210px}.human-value{font-size:13px;color:#0f172a;line-height:1.35;word-break:break-word}.human-meaning{color:#64748b;line-height:1.45}.human-description-block{border-left:4px solid #0f766e;background:#f0fdfa;border-radius:14px;padding:12px 14px;color:#134e4a}.human-description-block p{margin:4px 0 0;line-height:1.52;color:#134e4a;font-weight:600}.human-rule-table-wrap{border:1px solid #deebf7;border-radius:16px;overflow:hidden;background:#fff}.human-rule-table{width:100%;border-collapse:collapse;font-size:13px}.human-rule-table th{background:#f2f7fd;color:#475569;text-transform:uppercase;letter-spacing:.06em;font-size:11px;text-align:left;padding:11px 12px;border-bottom:1px solid #deebf7}.human-rule-table td{padding:12px;border-bottom:1px solid #edf3fa;vertical-align:top}.human-rule-table b{display:block;color:#0f2742;line-height:1.35}.human-rule-table small{display:block;margin-top:3px;color:#64748b}.human-number{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#eaf4ff;color:#0f5f9c;font-weight:900}.human-action-matrix{border:1px solid #dbeafe;background:#f8fbff;border-radius:16px;padding:12px}.human-action-matrix h4{margin:0 0 10px;color:#0f2742}.elegant-section{border:1px solid #e0ebf6!important;border-radius:16px!important;padding:0!important;background:#fff!important;overflow:hidden}.elegant-section summary{cursor:pointer;list-style:none;padding:12px 14px;background:#f8fbff;color:#0f2742;font-weight:800;border-bottom:1px solid #edf3fa}.elegant-section summary::-webkit-details-marker{display:none}.elegant-section summary:after{content:'⌄';float:right;color:#64748b}.elegant-section[open] summary:after{content:'⌃'}.elegant-section > *:not(summary){margin:12px}.human-table.human-elegant-table th{background:#f2f7fd!important;color:#475569!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.06em!important}.human-table.human-elegant-table td{background:#fff}.human-table.human-elegant-table tr:hover td{background:#fbfdff}.human-checklist.elegant .human-check-row{border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.035)}.human-chip{background:#eef6ff;border-color:#cfe2f5}.human-raw-debug{margin-top:12px;border-top:1px dashed #dbe7f3;padding-top:10px}.developer-toggle{background:#eef4f8!important;color:#31536f!important;border-color:#d8e6f3!important}.collapsed-json{max-height:260px;overflow:auto;background:#0f172a;color:#dbeafe;border-radius:12px;padding:12px;font-size:12px}.reports-two-col .human-data-panel.elegant-renderer{height:100%;box-sizing:border-box}@media(max-width:900px){.human-spec-table,.human-rule-table{font-size:12px}.human-prop,.human-val{min-width:0}.human-spec-table th:nth-child(3),.human-spec-table td:nth-child(3){display:none}}


/* V31.19.6 Session Management Stability Framework */
.session-stability-banner{margin:12px 18px 0 18px;padding:12px 14px;border:1px solid #bfdbfe;background:linear-gradient(135deg,#eff6ff,#ffffff);border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 10px 24px rgba(15,23,42,.06)}
.session-stability-banner b{display:block;color:#0f172a;margin-bottom:2px}.session-stability-banner span{color:#334155;font-size:13px}.session-stability-banner small{display:block;color:#64748b;margin-top:2px}.session-banner-actions{display:flex;gap:8px;align-items:center}.session-banner-actions .ghost{border:0;background:transparent;color:#64748b;padding:8px 10px;cursor:pointer}.session-banner-actions .ghost:hover{color:#0f766e}.session-stability-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}


.foundation-score-line{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin:8px 0 12px;border-radius:14px;background:#f7fbff;border:1px solid #dbeafe;color:#24415f}.foundation-score-line b{font-size:18px;color:#0f766e}.foundation-check-table td{vertical-align:top}.human-elevated-card{box-shadow:0 12px 30px rgba(15,23,42,.06)}


/* V31.19.8 Attendance Header Check-in / Check-out UX */
.header-attendance-control {
  min-width:178px;
  height:46px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:6px 7px 6px 12px;
  border:1px solid #d6e3f2;
  border-radius:14px;
  background:linear-gradient(135deg,#ffffff,#f8fafc);
  box-shadow:0 3px 10px rgba(15,23,42,.04);
}
.header-attendance-control.checked_in {
  border-color:#f59e0b;
  background:linear-gradient(135deg,#fff7ed,#ffffff 58%,#fffbeb);
}
.header-attendance-control.checked_out {
  border-color:#bfdbfe;
  background:linear-gradient(135deg,#eff6ff,#ffffff 58%,#f8fafc);
}
.header-attendance-control.not_checked_in {
  border-color:#bbf7d0;
  background:linear-gradient(135deg,#f0fdf4,#ffffff 60%,#f8fafc);
}
.header-attendance-control.wide {
  height:auto;
  min-height:68px;
  min-width:330px;
  max-width:100%;
  padding:12px 14px;
  justify-content:space-between;
}
.header-attendance-meta {
  min-width:0;
  display:grid;
  gap:1px;
}
.header-attendance-label {
  color:#64748b;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.header-attendance-clock {
  color:#0f172a;
  font-size:15px;
  font-weight:950;
  letter-spacing:-.02em;
  white-space:nowrap;
}
.header-attendance-meta small {
  color:#64748b;
  font-size:11px;
  font-weight:520;
}
.header-attendance-btn {
  white-space:nowrap;
  min-width:78px;
}
button.danger,
.danger.small-btn,
.danger.mini-btn {
  border:0 !important;
  background:#dc2626 !important;
  color:#fff !important;
}
button.danger:hover,
.danger.small-btn:hover,
.danger.mini-btn:hover {
  background:#b91c1c !important;
}
.attendance-checkout-backdrop {
  position:fixed;
  inset:0;
  z-index:140;
  display:grid;
  place-items:center;
  background:rgba(15,23,42,.46);
  backdrop-filter:blur(4px);
  padding:24px;
}
.attendance-checkout-modal {
  width:min(760px, calc(100vw - 36px));
  max-height:calc(100vh - 42px);
  overflow:auto;
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:22px;
  box-shadow:0 30px 90px rgba(15,23,42,.28);
  padding:18px;
}
.attendance-checkout-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding-bottom:12px;
  border-bottom:1px solid #eef2f6;
}
.attendance-checkout-head h3 {
  margin:0 0 4px;
  color:#0f172a;
  font-size:22px;
  letter-spacing:-.035em;
}
.attendance-checkout-head p {
  margin:0;
  color:#64748b;
  font-size:13px;
  line-height:1.45;
}
.attendance-checkout-summary {
  display:grid;
  grid-template-columns:repeat(3,minmax(120px,1fr));
  gap:10px;
  padding:14px 0;
}
.attendance-checkout-summary div {
  border:1px solid #e5edf6;
  border-radius:14px;
  background:#f8fafc;
  padding:11px 12px;
  display:grid;
  gap:3px;
}
.attendance-checkout-summary span {
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:#64748b;
}
.attendance-checkout-summary b {
  color:#0f172a;
  font-size:16px;
}
.attendance-checkout-form {
  display:grid;
  gap:12px;
}
.attendance-checkout-form label {
  display:grid;
  gap:6px;
  color:#42526a;
  font-size:12px;
  font-weight:760;
}
.attendance-checkout-form input,
.attendance-checkout-form select,
.attendance-checkout-form textarea {
  width:100%;
  border:1px solid #d7e2ee;
  border-radius:12px;
  background:#fff;
  padding:10px 11px;
  color:#0f172a;
  font-size:13px;
  outline:none;
}
.attendance-checkout-form input:focus,
.attendance-checkout-form select:focus,
.attendance-checkout-form textarea:focus {
  border-color:#0f766e;
  box-shadow:0 0 0 3px rgba(15,118,110,.10);
}
.attendance-checkout-grid {
  display:grid;
  grid-template-columns:1fr 1fr minmax(120px,.7fr);
  gap:10px;
  align-items:end;
}
.attendance-check-row {
  display:flex !important;
  grid-template-columns:none !important;
  align-items:center;
  gap:9px !important;
  font-size:13px !important;
  color:#334155 !important;
}
.attendance-check-row input {
  width:auto !important;
  accent-color:#0f766e;
}
.attendance-check-row.compact {
  min-height:42px;
  padding:0 4px;
}
.attendance-checkout-note {
  border:1px dashed #cbd5e1;
  border-radius:14px;
  background:#f8fafc;
  color:#64748b;
  padding:12px 13px;
  font-size:13px;
}
.attendance-checkout-actions {
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding-top:16px;
  margin-top:4px;
  border-top:1px solid #eef2f6;
}
@media (max-width:1100px) {
  .header-attendance-control:not(.wide) { min-width:136px; }
  .header-attendance-label { display:none; }
}
@media (max-width:860px) {
  .header-attendance-control:not(.wide) { display:none; }
  .attendance-checkout-summary,
  .attendance-checkout-grid { grid-template-columns:1fr; }
}


/* V31.19.9 Mobile responsive UI + OTP mail stability repair */
.login-message.warning{border-color:#fde68a;background:#fffbeb;color:#7c2d12;font-weight:700;line-height:1.45}.login-delivery-panel{margin-top:10px;border:1px solid #dbeafe;background:#f8fbff;border-radius:12px;padding:10px 12px;color:#17314d}.login-delivery-panel b{display:block;margin-bottom:6px;color:#0f2742}.login-delivery-row{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid #e5effa;padding:6px 0}.login-delivery-row:first-of-type{border-top:0}.login-delivery-panel small{display:block;color:#64748b;line-height:1.35;margin-top:5px}.notice.subtle{background:#f8fafc;border-color:#e2e8f0;color:#475569}.responsive-login-shell{min-height:100svh}.responsive-login-card{width:min(430px,calc(100vw - 32px));box-sizing:border-box}.reports-table-wrap,.human-spec-table-wrap,.human-rule-table-wrap,.human-table-wrap{overflow-x:auto}.panel,.human-data-panel,.reports-table-wrap{max-width:100%;box-sizing:border-box}.topbar,.topbar-actions,.release-segmented-control{min-width:0}.topbar-actions{flex-wrap:wrap}.release-segmented-control{overflow-x:auto}.modal-card,.attendance-checkout-card{max-width:calc(100vw - 28px)}
@media (max-width:980px){
  .app-shell{grid-template-columns:86px 1fr}.sidebar:not(.collapsed){position:fixed;z-index:50;left:0;top:0;bottom:0;width:min(82vw,320px);box-shadow:0 18px 60px rgba(2,18,38,.28)}
  .content{padding:12px}.topbar{gap:10px;align-items:flex-start;flex-direction:column}.topbar-actions{width:100%;justify-content:flex-start}.breadcrumb-shell{width:100%;overflow:hidden}.release-segmented-control{width:100%;justify-content:flex-start}.grid.two,.grid.three,.reports-two-col{grid-template-columns:1fr!important}.kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-title{gap:10px;align-items:flex-start;flex-direction:column}.panel-title>div{display:flex;gap:8px;flex-wrap:wrap}.attendance-header-widget{width:100%;justify-content:space-between}.human-spec-table{min-width:680px}.human-rule-table{min-width:620px}.reports-table,.pmo-mini-table{min-width:760px}.mode-tabs{overflow-x:auto;white-space:nowrap;padding-bottom:4px}
}
@media (max-width:680px){
  body{overflow-x:hidden}.login-shell{padding:16px}.login-card{padding:22px 18px;border-radius:18px}.login-logos{grid-template-columns:1fr 1fr;gap:8px}.login-logo-box{height:54px}.login-card h1{font-size:23px;line-height:1.15}.login-sub{font-size:12px}.login-card input,.login-card button{min-height:44px}.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;max-height:none}.sidebar.collapsed{display:none}.content{padding:10px}.topbar{border-radius:0;margin:-10px -10px 10px;padding:10px}.topbar h1{font-size:18px}.topbar-actions .icon-button,.topbar-actions button{min-height:38px}.kpi-row,.role-home-cards,.action-center-kpi-grid{grid-template-columns:1fr!important}.human-summary-strip{grid-template-columns:1fr!important}.human-spec-table th:nth-child(3),.human-spec-table td:nth-child(3){display:table-cell}.human-spec-table,.human-rule-table{min-width:560px}.modal-card{border-radius:16px;padding:14px}.attendance-checkout-grid{grid-template-columns:1fr!important}.login-delivery-row{align-items:flex-start;flex-direction:column}.panel{padding:12px;border-radius:16px}.human-data-panel{padding:12px;border-radius:16px}.mode-tabs button{padding:8px 10px}
}
@media (max-width:480px){
  .login-card{width:calc(100vw - 22px);padding:18px 14px}.login-logos{grid-template-columns:1fr}.login-logo-box{height:48px}.login-card h1{font-size:21px}.login-brand{font-size:11px}.content{padding:8px}.topbar{margin:-8px -8px 8px}.release-segmented-control button{padding:8px 10px}.human-spec-table,.human-rule-table,.reports-table,.pmo-mini-table{min-width:520px}.kpi-card b{font-size:20px}.sidebar-scroll-area{max-height:52vh;overflow:auto}
}

.header-chat { color:#0f766e; }
.chat-count { background:#0f766e; }

/* V31.19.17 Enterprise Native Customer Chat Center */
.ci-hero {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:26px 28px;
  border-radius:20px;
  background:linear-gradient(120deg,#062b3d,#0f766e 78%);
  color:#fff;
  box-shadow:0 18px 46px rgba(2,18,38,.16);
}
.ci-hero h2 { margin:4px 0 6px; font-size:26px; line-height:1.1; }
.ci-hero p { margin:0; color:rgba(255,255,255,.86); font-weight:700; max-width:860px; }
.ci-eyebrow { display:inline-flex; letter-spacing:.12em; font-size:11px; font-weight:900; color:#99f6e4; }
.ci-hero-actions { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.ci-kpi-row { display:grid; grid-template-columns:repeat(5,minmax(150px,1fr)); gap:12px; margin:12px 0; }
.ci-chat-shell {
  display:grid;
  grid-template-columns:330px minmax(0,1fr) 320px;
  min-height:670px;
  overflow:hidden;
  border:1px solid #d9e7f2;
  background:#f8fbff;
  border-radius:20px;
  box-shadow:0 14px 40px rgba(15,23,42,.08);
}
.ci-thread-list,
.ci-chat-right {
  background:#fff;
  border-right:1px solid #e4edf5;
  min-width:0;
}
.ci-chat-right { border-right:0; border-left:1px solid #e4edf5; }
.ci-list-head,
.ci-chat-head,
.ci-panel-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:16px;
  border-bottom:1px solid #edf2f7;
}
.ci-list-head h3,
.ci-panel-head h3,
.ci-chat-head h3 { margin:0; color:#0f172a; }
.ci-list-head small,
.ci-panel-head p,
.ci-chat-title-block p { margin:2px 0 0; color:#64748b; font-size:12px; font-weight:800; }
.ci-search { padding:12px 14px 8px; }
.ci-search input,
.ci-filter-row select,
.ci-context-section select,
.ci-context-section textarea,
.ci-compose-grid input,
.ci-compose-grid select,
.ci-compose-grid textarea,
.ci-composer textarea,
.ci-inbound-capture textarea {
  width:100%;
  border:1px solid #d8e5ef;
  background:#fff;
  border-radius:12px;
  padding:10px 12px;
  font-size:13px;
  color:#0f172a;
  outline:none;
  box-sizing:border-box;
}
.ci-search input:focus,
.ci-filter-row select:focus,
.ci-context-section select:focus,
.ci-context-section textarea:focus,
.ci-compose-grid input:focus,
.ci-compose-grid select:focus,
.ci-compose-grid textarea:focus,
.ci-composer textarea:focus,
.ci-inbound-capture textarea:focus {
  border-color:#0f766e;
  box-shadow:0 0 0 3px rgba(15,118,110,.10);
}
.ci-state-filters { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; padding:0 14px 10px; }
.ci-state-filter {
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:12px;
  padding:8px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  color:#334155;
  cursor:pointer;
}
.ci-state-filter span { font-size:10px; font-weight:900; text-transform:uppercase; }
.ci-state-filter b { font-size:16px; color:#0f172a; }
.ci-state-filter.active { border-color:#0f766e; background:#ecfdf5; color:#0f766e; }
.ci-filter-row { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:0 14px 12px; }
.ci-thread-scroll { padding:6px 10px 14px; max-height:520px; overflow:auto; }
.ci-thread-card {
  width:100%;
  text-align:left;
  border:1px solid #e5edf5;
  background:#fff;
  border-radius:16px;
  padding:12px;
  margin:0 0 9px;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(15,23,42,.04);
  transition:.15s ease;
}
.ci-thread-card:hover { transform:translateY(-1px); border-color:#b8d8e8; box-shadow:0 12px 28px rgba(15,23,42,.08); }
.ci-thread-card.active { border-color:#0f766e; box-shadow:0 0 0 3px rgba(15,118,110,.10), 0 12px 26px rgba(15,23,42,.08); }
.ci-thread-card.reply-needed { border-left:4px solid #ef4444; }
.ci-thread-card.sent { border-left:4px solid #2563eb; }
.ci-thread-card.seen { border-left:4px solid #16a34a; }
.ci-thread-top { display:flex; gap:10px; align-items:flex-start; }
.ci-avatar {
  width:34px; height:34px; min-width:34px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#0f766e,#0e7490);
  color:#fff;
  font-weight:900;
  box-shadow:0 6px 16px rgba(15,118,110,.22);
}
.ci-avatar.big { width:46px; height:46px; min-width:46px; font-size:18px; }
.ci-thread-title { min-width:0; flex:1; }
.ci-thread-title b { display:block; color:#0f172a; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ci-thread-title small { display:block; color:#64748b; margin-top:2px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ci-thread-card p { color:#475569; font-size:12px; line-height:1.45; margin:9px 0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.ci-thread-meta { display:flex; justify-content:space-between; gap:8px; color:#64748b; font-size:11px; font-weight:800; }
.ci-chat-main { display:flex; flex-direction:column; min-width:0; background:linear-gradient(180deg,#f8fbff,#eef7fb); }
.ci-chat-title-block { display:flex; align-items:center; gap:12px; min-width:0; }
.ci-chat-title-block h3 { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:520px; }
.ci-state-actions { display:flex; gap:8px; flex-wrap:wrap; }
.ci-state-btn {
  border:1px solid #d8e5ef;
  border-radius:999px;
  padding:8px 12px;
  background:#fff;
  color:#334155;
  font-weight:900;
  cursor:pointer;
}
.ci-state-btn.active.reply-needed { background:#fee2e2; color:#991b1b; border-color:#fecaca; }
.ci-state-btn.active.sent { background:#dbeafe; color:#1d4ed8; border-color:#bfdbfe; }
.ci-state-btn.active.seen { background:#dcfce7; color:#166534; border-color:#bbf7d0; }
.ci-transcript {
  flex:1;
  padding:18px 20px;
  overflow:auto;
  min-height:330px;
  background-image:radial-gradient(circle at 12px 12px, rgba(15,118,110,.06) 1.5px, transparent 1.5px);
  background-size:28px 28px;
}
.ci-message { display:flex; margin-bottom:14px; }
.ci-message.outbound { justify-content:flex-end; }
.ci-message.inbound { justify-content:flex-start; }
.ci-message.internal { justify-content:center; }
.ci-bubble {
  max-width:min(78%,760px);
  border:1px solid #dde9f2;
  border-radius:18px;
  padding:12px 14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(15,23,42,.06);
}
.ci-message.outbound .ci-bubble { background:#0f766e; color:#fff; border-color:#0f766e; border-bottom-right-radius:5px; }
.ci-message.inbound .ci-bubble { background:#fff; color:#0f172a; border-bottom-left-radius:5px; }
.ci-message.internal .ci-bubble { background:#fffbeb; color:#7c2d12; border-color:#fde68a; max-width:90%; }
.ci-msg-meta { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:6px; font-size:11px; }
.ci-msg-meta b { font-size:12px; }
.ci-msg-meta span { opacity:.78; font-weight:800; }
.ci-bubble p { margin:0; white-space:pre-wrap; line-height:1.45; }
.ci-bubble small { display:block; margin-top:8px; opacity:.8; font-weight:900; }
.ci-composer {
  border-top:1px solid #dce8f2;
  background:#fff;
  padding:14px 16px;
}
.ci-composer-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:9px; }
.ci-inbound-capture { display:grid; grid-template-columns:1fr auto; gap:10px; margin-top:10px; align-items:end; }
.ci-empty-chat,
.ci-empty-thread {
  border:1px dashed #cbd5e1;
  background:rgba(255,255,255,.7);
  border-radius:16px;
  padding:20px;
  color:#64748b;
  display:flex;
  flex-direction:column;
  gap:4px;
  align-items:center;
  justify-content:center;
  min-height:180px;
  text-align:center;
}
.ci-empty-chat b { color:#0f172a; }
.ci-context-panel { padding:16px; max-height:670px; overflow:auto; }
.ci-context-section { border:1px solid #e3edf5; background:#fff; border-radius:16px; padding:14px; margin-bottom:12px; box-shadow:0 8px 20px rgba(15,23,42,.04); }
.ci-context-section h4 { margin:0 0 10px; color:#0f172a; }
.ci-context-section p { color:#64748b; font-size:12px; line-height:1.45; margin:8px 0 0; }
.ci-context-row { display:flex; justify-content:space-between; gap:10px; padding:8px 0; border-bottom:1px solid #eef2f6; font-size:12px; }
.ci-context-row:last-child { border-bottom:0; }
.ci-context-row span { color:#64748b; font-weight:900; }
.ci-context-row b { color:#0f172a; text-align:right; }
.ci-note-mini { border-top:1px solid #eef2f6; padding:9px 0; }
.ci-note-mini:first-of-type { border-top:0; }
.ci-note-mini b { color:#0f172a; }
.ci-note-mini p { margin:4px 0; color:#334155; }
.ci-note-mini small { color:#64748b; font-size:11px; }
.wide-btn { width:100%; margin-top:9px; }
.ci-safe-badge { background:#ecfdf5; color:#0f766e; border:1px solid #bbf7d0; padding:7px 10px; border-radius:999px; font-size:11px; font-weight:900; }
.ci-new-chat-card { padding:0; background:#fff; min-height:100%; }
.ci-compose-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:18px; }
.ci-compose-grid label { display:flex; flex-direction:column; gap:6px; color:#64748b; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.05em; }
.ci-compose-grid label.wide { grid-column:1/-1; }
.ci-compose-grid .message-box textarea { min-height:140px; }
.ci-compose-actions { grid-column:1/-1; display:flex; justify-content:flex-end; gap:9px; padding-top:4px; }
.ci-audit-strip {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:14px 18px;
  border:1px solid #dbeafe;
  background:#f8fbff;
  border-radius:16px;
  color:#334155;
}
.ci-audit-strip b { display:block; color:#0f172a; }
.ci-audit-strip span { color:#64748b; font-size:12px; }
@media (max-width:1320px) {
  .ci-chat-shell { grid-template-columns:300px minmax(0,1fr); }
  .ci-chat-right { grid-column:1/-1; border-left:0; border-top:1px solid #e4edf5; }
  .ci-context-panel { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; max-height:none; }
  .ci-context-section { margin-bottom:0; }
}
@media (max-width:960px) {
  .ci-hero { align-items:flex-start; flex-direction:column; }
  .ci-kpi-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ci-chat-shell { grid-template-columns:1fr; }
  .ci-thread-scroll { max-height:320px; }
  .ci-chat-right { border-top:1px solid #e4edf5; }
  .ci-context-panel { grid-template-columns:1fr; }
  .ci-compose-grid { grid-template-columns:1fr; }
  .ci-inbound-capture { grid-template-columns:1fr; }
}
@media (max-width:620px) {
  .ci-kpi-row { grid-template-columns:1fr; }
  .ci-hero { padding:18px; border-radius:16px; }
  .ci-chat-head { align-items:flex-start; flex-direction:column; }
  .ci-bubble { max-width:94%; }
  .ci-filter-row { grid-template-columns:1fr; }
  .ci-state-filters { grid-template-columns:1fr; }
  .ci-audit-strip { align-items:flex-start; flex-direction:column; }
}


/* V31.19.18 Teams/Cliq-style Native Chat Simplification */
.ci-hero.compact { padding:18px 22px; border-radius:18px; background:linear-gradient(120deg,#082f49,#0f766e); }
.ci-hero.compact h2 { font-size:23px; }
.ci-hero.compact p { font-size:13px; max-width:1000px; }
.ci-chat-shell.teams-shell { grid-template-columns:320px minmax(0,1fr) 300px; min-height:720px; }
.ci-chat-shell.teams-shell .ci-thread-list { background:#f8fafc; }
.ci-chat-shell.teams-shell .ci-chat-main { background:#f7fbff; }
.ci-chat-head.teams-like { background:#fff; position:sticky; top:0; z-index:2; }
.ci-chat-head.teams-like .ci-state-actions { margin-left:auto; }
.ci-subject-inline { color:#334155; font-weight:900; }
.teams-feed { min-height:420px; background-image:linear-gradient(180deg,rgba(15,118,110,.03),rgba(37,99,235,.03)); background-size:auto; }
.teams-composer { border-top:1px solid #dbe7f2; box-shadow:0 -12px 26px rgba(15,23,42,.04); }
.teams-composer textarea { min-height:76px; border-radius:16px; }
.ci-start-chat-card { background:#fff; min-height:100%; display:flex; flex-direction:column; }
.ci-panel-head.compact { padding:18px 20px; }
.ci-target-type-row { display:flex; gap:8px; flex-wrap:wrap; padding:14px 18px; border-bottom:1px solid #eef2f7; background:#f8fbff; }
.ci-target-chip { border:1px solid #dbe7f2; background:#fff; color:#334155; border-radius:999px; padding:8px 12px; font-weight:900; font-size:12px; cursor:pointer; }
.ci-target-chip.active { background:#0f766e; border-color:#0f766e; color:#fff; box-shadow:0 8px 18px rgba(15,118,110,.18); }
.ci-simple-form { display:grid; grid-template-columns:1fr; gap:12px; padding:18px; }
.ci-simple-form label { display:flex; flex-direction:column; gap:6px; color:#64748b; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.05em; }
.ci-simple-form input, .ci-simple-form select, .ci-simple-form textarea,
.ci-quote-picker select { width:100%; border:1px solid #d8e5ef; background:#fff; border-radius:12px; padding:10px 12px; font-size:13px; color:#0f172a; outline:none; box-sizing:border-box; }
.ci-simple-form textarea { min-height:150px; }
.ci-quote-bar { display:flex; gap:8px; align-items:center; flex-wrap:wrap; padding:0; color:#475569; font-size:12px; }
.ci-quote-bar.compact { padding:0 0 8px; }
.ci-quote-bar b { color:#0f172a; font-size:12px; }
.ci-quote-chip { border:1px solid #cfe4ee; background:#f8fafc; color:#0f4f58; border-radius:999px; padding:6px 10px; font-weight:900; font-size:11px; cursor:pointer; max-width:220px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ci-quote-chip:hover { border-color:#0f766e; background:#ecfdf5; color:#0f766e; }
.ci-quote-chip.strong { background:#e0f2fe; border-color:#7dd3fc; color:#075985; }
.ci-quote-picker { display:grid; grid-template-columns:130px 1fr auto; gap:8px; align-items:center; margin-bottom:8px; }
.ci-filter-row.single { grid-template-columns:1fr; }
.ci-context-panel { background:#fff; }
.ci-context-section h4 { font-size:13px; }
.ci-thread-card .pill { font-size:10px; }
.ci-message.outbound .ci-bubble { background:#0f766e; }
.ci-message.inbound .ci-bubble { background:#fff; }
@media (max-width:1320px){ .ci-chat-shell.teams-shell { grid-template-columns:300px minmax(0,1fr); } }
@media (max-width:960px){ .ci-chat-shell.teams-shell { grid-template-columns:1fr; } .ci-quote-picker { grid-template-columns:1fr; } }

/* V31.19.19 - Enterprise Native Chat redesign: Teams/Cliq-style shell */
.ci19-hero{
  display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px!important;
  background:linear-gradient(112deg,#052f46 0%,#08796d 100%)!important;color:#fff!important;border:0!important;border-radius:18px!important;
  box-shadow:0 16px 36px rgba(5,47,70,.16)!important;
}
.ci19-hero span{font-size:11px;font-weight:900;letter-spacing:.12em;opacity:.86;text-transform:uppercase;}
.ci19-hero h2{margin:3px 0 5px!important;color:#fff!important;font-size:26px!important;line-height:1.1!important;}
.ci19-hero p{margin:0!important;color:rgba(255,255,255,.86)!important;font-size:13px!important;}
.ci19-hero-actions{display:flex;gap:10px;align-items:center;white-space:nowrap;}
.ci19-shell{
  display:grid;grid-template-columns:320px minmax(0,1fr);gap:0;padding:0!important;overflow:hidden;
  min-height:690px;border-radius:18px!important;background:#fff!important;border:1px solid #d8e5ef!important;
  box-shadow:0 18px 44px rgba(15,31,51,.08)!important;
}
.ci19-shell:has(.ci19-details){grid-template-columns:320px minmax(0,1fr) 300px;}
.ci19-left{background:#f8fbfd;border-right:1px solid #d9e7f1;display:flex;flex-direction:column;min-width:0;}
.ci19-left-head{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 16px 10px;border-bottom:1px solid #e6eef5;}
.ci19-left-head h3{font-size:16px;margin:0;color:#102238;}
.ci19-left-head small{color:#60738a;font-weight:700;}
.ci19-search{padding:12px 14px 8px;}
.ci19-search input{width:100%;height:38px;border:1px solid #cfddea;border-radius:12px;padding:0 12px;background:#fff;color:#102238;outline:none;}
.ci19-search input:focus{border-color:#0e8e82;box-shadow:0 0 0 3px rgba(14,142,130,.12);}
.ci19-state-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:6px 14px 12px;}
.ci19-state-strip button{border:1px solid #d7e4ee;background:#fff;border-radius:12px;padding:8px;text-align:left;color:#18334d;cursor:pointer;transition:.15s ease;}
.ci19-state-strip button b{display:block;font-size:17px;line-height:1;color:#0f253b;}
.ci19-state-strip button span{display:block;margin-top:5px;font-size:10px;font-weight:800;text-transform:uppercase;color:#647990;}
.ci19-state-strip button.active{border-color:#0c8b80;background:#eafaf7;box-shadow:0 0 0 2px rgba(12,139,128,.10) inset;}
.ci19-nav{display:flex;gap:7px;overflow:auto;padding:0 14px 12px;border-bottom:1px solid #e7eef5;}
.ci19-nav-chip{flex:0 0 auto;border:1px solid #d7e4ee;background:#fff;color:#29435e;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:6px;cursor:pointer;}
.ci19-nav-chip.active{background:#0b8278;color:#fff;border-color:#0b8278;}
.ci19-thread-scroll{overflow:auto;padding:12px 10px 18px;display:flex;flex-direction:column;gap:10px;}
.ci19-thread-card{width:100%;border:1px solid #dce8f2;background:#fff;border-radius:16px;padding:12px;display:flex;gap:10px;align-items:flex-start;text-align:left;cursor:pointer;color:#102238;transition:.16s ease;}
.ci19-thread-card:hover{border-color:#9ccfc9;box-shadow:0 10px 22px rgba(16,34,56,.08);transform:translateY(-1px);}
.ci19-thread-card.active{border-color:#0c8b80;box-shadow:0 0 0 3px rgba(12,139,128,.14),0 12px 28px rgba(16,34,56,.10);}
.ci19-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;background:#0b8278;color:#fff;flex:0 0 auto;box-shadow:0 8px 16px rgba(11,130,120,.18);}
.ci19-avatar.big{width:46px;height:46px;font-size:18px;}
.ci19-avatar.reply-needed{background:#d93636;}
.ci19-avatar.seen{background:#128a5a;}
.ci19-avatar.sent{background:#2865d8;}
.ci19-thread-body{min-width:0;flex:1;}
.ci19-thread-row{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.ci19-thread-row b{font-size:13px;color:#102238;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:158px;}
.ci19-thread-sub{font-size:11px;color:#60738a;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ci19-thread-card p{font-size:12px;color:#2f465f;margin:8px 0 7px;line-height:1.35;}
.ci19-thread-meta{display:flex;justify-content:space-between;gap:7px;color:#60738a;font-size:10.5px;font-weight:700;}
.ci19-main{min-width:0;display:flex;flex-direction:column;background:linear-gradient(#f7fbfe,#eef6fb);position:relative;}
.ci19-chat-header{min-height:76px;padding:14px 18px;border-bottom:1px solid #dbe8f2;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:space-between;gap:14px;}
.ci19-chat-id{display:flex;align-items:center;gap:12px;min-width:0;}
.ci19-chat-id h2{font-size:18px;color:#102238;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:640px;}
.ci19-chat-id p{margin:0;color:#60738a;font-size:12px;font-weight:700;}
.ci19-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.ci19-state-action{border:1px solid #d7e4ee;background:#fff;color:#24415d;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;cursor:pointer;}
.ci19-state-action.active{background:#eaf8f6;border-color:#0b8278;color:#07685f;}
.ci19-message-area{flex:1;overflow:auto;padding:26px 28px 20px;background-image:radial-gradient(circle at 1px 1px,rgba(20,74,101,.08) 1px,transparent 0);background-size:18px 18px;}
.ci19-msg{display:flex;margin:10px 0;}
.ci19-msg.mine{justify-content:flex-end;}
.ci19-msg.theirs{justify-content:flex-start;}
.ci19-msg-bubble{max-width:min(690px,74%);border:1px solid #d6e4ee;background:#fff;border-radius:18px 18px 18px 6px;padding:12px 14px;box-shadow:0 10px 20px rgba(16,34,56,.06);}
.ci19-msg.mine .ci19-msg-bubble{background:#0b8278;color:#fff;border-color:#0b8278;border-radius:18px 18px 6px 18px;box-shadow:0 10px 20px rgba(11,130,120,.14);}
.ci19-msg-meta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:6px;font-size:11px;}
.ci19-msg-meta b{color:#0f253b;}
.ci19-msg.mine .ci19-msg-meta b,.ci19-msg.mine .ci19-msg-meta span,.ci19-msg.mine small{color:rgba(255,255,255,.86);}
.ci19-msg-meta span{color:#6a7c91;font-weight:700;}
.ci19-msg-bubble p{margin:0;line-height:1.45;font-size:13px;color:#102238;white-space:pre-wrap;word-break:break-word;}
.ci19-msg.mine .ci19-msg-bubble p{color:#fff;}
.ci19-msg-bubble small{display:block;margin-top:8px;font-size:10.5px;font-weight:800;color:#60738a;}
.ci19-composer{border-top:1px solid #d9e7f1;background:#fff;padding:12px 16px 14px;}
.ci19-compose-tools{display:flex;align-items:center;gap:8px;margin-bottom:9px;}
.ci19-compose-tools select{height:34px;border:1px solid #d1dfeb;border-radius:10px;background:#fff;color:#233b55;padding:0 10px;min-width:150px;max-width:320px;}
.ci19-tool,.ci19-link-btn{border:1px solid #d7e4ee;background:#f3f8fb;color:#24415d;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:800;cursor:pointer;}
.ci19-tool:hover,.ci19-link-btn:hover{background:#e8f3f7;}
.ci19-link-btn.danger{color:#b72727;background:#fff5f5;border-color:#ffd4d4;}
.ci19-input-row{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:10px;align-items:stretch;}
.ci19-input-row textarea{width:100%;resize:vertical;border:1px solid #cfddea;border-radius:14px;padding:12px 13px;outline:none;font-size:13px;color:#102238;background:#fff;}
.ci19-input-row textarea:focus{border-color:#0b8278;box-shadow:0 0 0 3px rgba(11,130,120,.12);}
.ci19-send-btn{border:0;border-radius:14px;background:#0b8278;color:#fff;font-weight:900;cursor:pointer;box-shadow:0 10px 20px rgba(11,130,120,.18);}
.ci19-send-btn:disabled{background:#bdd2d4;cursor:not-allowed;box-shadow:none;}
.ci19-underbar{display:flex;justify-content:flex-end;gap:8px;margin-top:8px;}
.ci19-start-panel{max-width:940px;margin:22px auto;padding:24px;border:1px solid #dbe8f2;background:#fff;border-radius:18px;box-shadow:0 14px 30px rgba(16,34,56,.08);}
.ci19-start-head h3{font-size:22px;margin:0 0 4px;color:#102238;}
.ci19-start-head p{margin:0 0 18px;color:#60738a;}
.ci19-target-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px;}
.ci19-target-card{border:1px solid #d7e4ee;background:#f9fcfe;border-radius:16px;padding:14px 10px;text-align:left;cursor:pointer;min-height:96px;color:#102238;}
.ci19-target-card span{font-size:20px;display:block;margin-bottom:8px;}
.ci19-target-card b{display:block;font-size:13px;}
.ci19-target-card small{display:block;color:#60738a;font-size:10.5px;margin-top:5px;line-height:1.25;}
.ci19-target-card.active{background:#eaf8f6;border-color:#0b8278;box-shadow:0 0 0 3px rgba(11,130,120,.10);}
.ci19-start-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.ci19-start-form label{display:flex;flex-direction:column;gap:6px;}
.ci19-start-form label span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#647990;}
.ci19-start-form input,.ci19-start-form select,.ci19-start-form textarea{border:1px solid #cfddea;border-radius:12px;padding:11px 12px;outline:none;background:#fff;color:#102238;}
.ci19-start-form input:focus,.ci19-start-form select:focus,.ci19-start-form textarea:focus{border-color:#0b8278;box-shadow:0 0 0 3px rgba(11,130,120,.12);}
.ci19-message-field{grid-column:1/-1;}
.ci19-start-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:4px;}
.ci19-details{border-left:1px solid #d9e7f1;background:#fbfdff;padding:14px;overflow:auto;}
.ci19-details-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.ci19-details-head h3{margin:0;color:#102238;font-size:16px;}
.ci19-detail-card{border:1px solid #dce8f2;background:#fff;border-radius:15px;padding:12px;margin-bottom:10px;display:flex;flex-direction:column;gap:7px;}
.ci19-detail-card small{font-size:10px;font-weight:900;text-transform:uppercase;color:#647990;letter-spacing:.05em;}
.ci19-detail-card b{font-size:13px;color:#102238;}
.ci19-detail-card select,.ci19-detail-card textarea{width:100%;border:1px solid #cfddea;border-radius:11px;padding:10px;background:#fff;color:#102238;}
.ci19-note{font-size:12px;color:#2f465f;margin:5px 0;line-height:1.35;}
.ci19-empty-main{height:100%;display:flex;align-items:center;justify-content:center;text-align:center;color:#60738a;padding:40px;}
.ci19-empty-main h3{color:#102238;margin:0 0 8px;font-size:22px;}
.ci19-empty-main p{margin:0 0 14px;max-width:520px;line-height:1.4;}
.ci19-empty-list{padding:18px;color:#60738a;text-align:center;border:1px dashed #cbdbe8;border-radius:14px;background:#fff;}
.ci19-footer-strip{display:flex;gap:6px;align-items:center;padding:12px 16px!important;color:#60738a;background:#fff!important;border:1px solid #dbe8f2!important;border-radius:16px!important;}
@media (max-width: 1280px){.ci19-shell,.ci19-shell:has(.ci19-details){grid-template-columns:280px minmax(0,1fr);} .ci19-details{display:none}.ci19-target-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width: 900px){.ci19-shell,.ci19-shell:has(.ci19-details){grid-template-columns:1fr}.ci19-left{max-height:360px;border-right:0;border-bottom:1px solid #d9e7f1}.ci19-target-grid{grid-template-columns:repeat(2,1fr)}.ci19-start-form{grid-template-columns:1fr}.ci19-msg-bubble{max-width:92%}.ci19-hero{flex-direction:column;align-items:flex-start}.ci19-chat-header{flex-direction:column;align-items:flex-start}.ci19-input-row{grid-template-columns:1fr}.ci19-send-btn{height:44px}.ci19-compose-tools{flex-wrap:wrap}}

/* V31.19.20 FeatherDB Enterprise Foundation */
.fedb20-hero{
  display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
  padding:22px 24px;border:1px solid rgba(15,23,42,.08);border-radius:20px;
  background:linear-gradient(135deg,#f8fafc 0%,#eefdf8 48%,#eff6ff 100%);
  box-shadow:0 14px 38px rgba(15,23,42,.08);margin-bottom:16px
}
.fedb20-hero span{font-size:11px;font-weight:800;letter-spacing:.14em;color:#0f766e;text-transform:uppercase}
.fedb20-hero h2{margin:6px 0 8px;color:#0f172a;font-size:26px;line-height:1.1}
.fedb20-hero p{margin:0;max-width:860px;color:#475569;font-size:14px;line-height:1.55}
.fedb20-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:360px}
.fedb20-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
.fedb20-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:10px;margin-bottom:16px;border-radius:16px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.fedb20-tabs button{border:1px solid #dbeafe;background:#f8fafc;color:#334155;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer}
.fedb20-tabs button.active{background:#0f766e;color:#fff;border-color:#0f766e;box-shadow:0 8px 18px rgba(15,118,110,.22)}
.fedb20-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fedb20-domain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.fedb20-domain-grid span{display:flex;align-items:center;justify-content:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px;font-weight:800;color:#0f172a;text-transform:capitalize}
.fedb20-table-wrap{overflow:auto;max-height:520px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}
.fedb20-table th{position:sticky;top:0;background:#f8fafc;z-index:1}
.fedb20-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;white-space:nowrap}
.fedb20-badge.green{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.fedb20-badge.amber{border-color:#fde68a;background:#fffbeb;color:#b45309}.fedb20-badge.red{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.fedb20-badge.teal{border-color:#99f6e4;background:#f0fdfa;color:#0f766e}
.fedb20-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fedb20-form label{display:flex;flex-direction:column;gap:6px}.fedb20-form label span{font-size:12px;font-weight:800;color:#475569}.fedb20-form input,.fedb20-form select,.fedb20-form textarea{border:1px solid #cbd5e1;border-radius:12px;padding:9px 11px;background:#fff;color:#0f172a}.fedb20-form .wide{grid-column:1/-1}.fedb20-action-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
@media (max-width: 1100px){.fedb20-hero{flex-direction:column}.fedb20-hero-actions{min-width:0;justify-content:flex-start}.fedb20-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.fedb20-grid.two{grid-template-columns:1fr}.fedb20-domain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 640px){.fedb20-kpis{grid-template-columns:1fr}.fedb20-domain-grid{grid-template-columns:1fr}.fedb20-form{grid-template-columns:1fr}}


/* V31.19.21 - Chat workspace space optimization and compact toolbar */
.ci19-hero,
.ci19-footer-strip { display:none !important; }
.ci21-space-mode.ci19-shell{
  margin-top:0!important;
  border-radius:14px!important;
  min-height:calc(100vh - 210px)!important;
  height:calc(100vh - 210px)!important;
  max-height:calc(100vh - 210px)!important;
  box-shadow:0 10px 28px rgba(15,31,51,.07)!important;
}
.ci21-space-mode .ci19-left-head{
  padding:10px 12px 8px!important;
  align-items:center!important;
}
.ci21-left-head h3{font-size:15px!important;line-height:1.1!important;}
.ci21-left-head small{font-size:11px!important;}
.ci21-left-actions{display:flex;align-items:center;gap:6px;}
.ci21-mini-btn{
  width:30px;height:30px;border-radius:10px;border:1px solid #d7e4ee;background:#fff;color:#22415b;
  display:inline-flex;align-items:center;justify-content:center;font-weight:900;cursor:pointer;
}
.ci21-mini-btn.primary{background:#0b8278;border-color:#0b8278;color:#fff;box-shadow:0 8px 15px rgba(11,130,120,.16);}
.ci21-mini-btn:hover{background:#eef7fb;}
.ci21-mini-btn.primary:hover{background:#076b63;}
.ci21-space-mode .ci19-search{padding:8px 10px 6px!important;}
.ci21-space-mode .ci19-search input{height:32px!important;border-radius:10px!important;font-size:12px!important;}
.ci21-space-mode .ci19-state-strip{gap:6px;padding:5px 10px 8px!important;}
.ci21-space-mode .ci19-state-strip button{padding:6px 7px!important;border-radius:10px!important;}
.ci21-space-mode .ci19-state-strip button b{font-size:15px!important;}
.ci21-space-mode .ci19-state-strip button span{font-size:9px!important;margin-top:3px!important;}
.ci21-space-mode .ci19-nav{padding:0 10px 8px!important;gap:6px!important;}
.ci21-space-mode .ci19-nav-chip{padding:6px 9px!important;font-size:11px!important;}
.ci21-space-mode .ci19-thread-scroll{padding:8px 8px 12px!important;gap:8px!important;}
.ci21-space-mode .ci19-thread-card{padding:9px!important;border-radius:13px!important;gap:8px!important;}
.ci21-space-mode .ci19-avatar{width:30px;height:30px;font-size:12px;}
.ci21-space-mode .ci19-avatar.big{width:38px;height:38px;font-size:16px;}
.ci21-space-mode .ci19-thread-card p{font-size:11.5px!important;margin:5px 0 5px!important;line-height:1.28!important;}
.ci21-space-mode .ci19-thread-row b{font-size:12.5px!important;max-width:162px!important;}
.ci21-space-mode .ci19-thread-sub{font-size:10.5px!important;}
.ci21-space-mode .ci19-thread-meta{font-size:10px!important;}
.ci21-space-mode .ci19-chat-header{min-height:58px!important;padding:8px 14px!important;gap:10px!important;}
.ci21-space-mode .ci19-chat-id{gap:10px!important;}
.ci21-space-mode .ci19-chat-id h2{font-size:16px!important;margin-bottom:2px!important;max-width:760px!important;}
.ci21-space-mode .ci19-chat-id p{font-size:11px!important;}
.ci21-space-mode .ci19-header-actions{gap:6px!important;}
.ci21-space-mode .ci19-state-action{padding:6px 10px!important;font-size:11px!important;}
.ci21-space-mode .ci19-message-area{padding:16px 22px 14px!important;}
.ci21-space-mode .ci19-msg{margin:8px 0!important;}
.ci21-space-mode .ci19-msg-bubble{padding:10px 12px!important;border-radius:15px 15px 15px 5px!important;}
.ci21-space-mode .ci19-msg.mine .ci19-msg-bubble{border-radius:15px 15px 5px 15px!important;}
.ci21-space-mode .ci19-msg-bubble p{font-size:12.5px!important;line-height:1.38!important;}
.ci21-space-mode .ci19-msg-meta{margin-bottom:4px!important;font-size:10.5px!important;}
.ci21-space-mode .ci19-msg-bubble small{margin-top:5px!important;font-size:10px!important;}
.ci21-space-mode .ci19-composer{padding:8px 10px 8px!important;}
.ci21-space-mode .ci19-compose-tools{gap:6px!important;margin-bottom:6px!important;}
.ci21-space-mode .ci19-compose-tools select{height:30px!important;border-radius:9px!important;font-size:11.5px!important;min-width:130px!important;}
.ci21-space-mode .ci19-tool,
.ci21-space-mode .ci19-link-btn{padding:6px 9px!important;border-radius:9px!important;font-size:11px!important;}
.ci21-space-mode .ci19-input-row{grid-template-columns:minmax(0,1fr) 68px!important;gap:8px!important;}
.ci21-space-mode .ci19-input-row textarea{min-height:56px!important;padding:10px 11px!important;border-radius:12px!important;font-size:12.5px!important;}
.ci21-space-mode .ci19-send-btn{border-radius:12px!important;font-size:12px!important;}
.ci21-space-mode .ci19-underbar{margin-top:6px!important;gap:6px!important;}
.ci21-space-mode .ci19-details{padding:10px!important;}
.ci21-space-mode .ci19-detail-card{padding:10px!important;border-radius:12px!important;margin-bottom:8px!important;}
@media (max-width: 900px){
  .ci21-space-mode.ci19-shell{height:auto!important;max-height:none!important;min-height:calc(100vh - 180px)!important;}
}

/* V31.19.22 - Chat list overflow elimination and enterprise fit polish */
.ci21-space-mode .ci19-left,
.ci21-space-mode .ci19-thread-scroll,
.ci21-space-mode .ci19-thread-card,
.ci21-space-mode .ci19-thread-body,
.ci21-space-mode .ci19-thread-row,
.ci21-space-mode .ci19-thread-sub,
.ci21-space-mode .ci19-thread-meta,
.ci21-space-mode .ci19-search,
.ci21-space-mode .ci19-state-strip,
.ci21-space-mode .ci19-nav{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.ci21-space-mode .ci19-nav{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
  overflow:hidden!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  padding:0 10px 8px!important;
  border-bottom:1px solid #e7eef5!important;
}
.ci21-space-mode .ci19-nav::-webkit-scrollbar{display:none!important;}
.ci21-space-mode .ci19-nav-chip{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  justify-content:center!important;
  padding:6px 7px!important;
  font-size:10.5px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.ci21-space-mode .ci19-nav-chip span{
  flex:0 0 auto!important;
  margin:0!important;
}
.ci21-space-mode .ci19-thread-scroll{
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
.ci21-space-mode .ci19-thread-card{
  overflow:hidden!important;
}
.ci21-space-mode .ci19-thread-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
}
.ci21-space-mode .ci19-thread-row b{
  max-width:none!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.ci21-space-mode .ci19-thread-row .pill,
.ci21-space-mode .ci19-thread-row [class*="pill"]{
  max-width:82px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.ci21-space-mode .ci19-thread-card p{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
}
.ci21-space-mode .ci19-thread-sub,
.ci21-space-mode .ci19-thread-meta span{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.ci21-space-mode .ci19-thread-meta{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
}
.ci21-space-mode .ci19-left *{
  scrollbar-width:none;
}
.ci21-space-mode .ci19-left *::-webkit-scrollbar:horizontal{height:0!important;display:none!important;}
@media (max-width:1280px){
  .ci21-space-mode .ci19-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}


/* V31.19.23 - Chat UI Product Quality Baseline
   Goal: improve visible enterprise chat workspace without changing data/API behavior. */
.app-main:has(.ci21-space-mode) .app-header{
  min-height:62px!important;
  padding:8px 14px!important;
  gap:10px!important;
}
.app-main:has(.ci21-space-mode) .app-title h1{
  font-size:17px!important;
  line-height:1.15!important;
}
.app-main:has(.ci21-space-mode) .header-breadcrumb{
  display:none!important;
}
.app-main:has(.ci21-space-mode) .app-header-actions{
  gap:7px!important;
}
.app-main:has(.ci21-space-mode) .header-attendance-control{
  min-height:42px!important;
}
.app-content:has(.ci21-space-mode){
  height:calc(100vh - 62px)!important;
  overflow:hidden!important;
  padding:10px 12px 8px!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
}
.app-content:has(.ci21-space-mode) .frame-footer{
  display:none!important;
}
.ci21-space-mode.ci19-shell{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  border-radius:16px!important;
  overflow:hidden!important;
  grid-template-columns:minmax(286px,304px) minmax(0,1fr)!important;
  background:#ffffff!important;
}
.ci21-space-mode.ci19-shell:has(.ci19-details){
  grid-template-columns:minmax(286px,304px) minmax(0,1fr) minmax(270px,304px)!important;
}
.ci21-space-mode .ci19-left{
  min-height:0!important;
  overflow:hidden!important;
  background:#fbfdff!important;
}
.ci21-space-mode .ci19-left-head{
  min-height:44px!important;
  padding:8px 10px 6px!important;
  border-bottom:1px solid #e7eef5!important;
}
.ci21-left-head h3{
  margin:0!important;
  font-size:14px!important;
}
.ci21-left-head small{
  font-size:10.5px!important;
}
.ci21-mini-btn{
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
}
.ci21-space-mode .ci19-search{
  padding:7px 9px 5px!important;
}
.ci21-space-mode .ci19-search input{
  height:31px!important;
  border-radius:10px!important;
}
.ci21-space-mode .ci19-state-strip{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  padding:4px 9px 6px!important;
  gap:6px!important;
}
.ci21-space-mode .ci19-state-strip button{
  min-height:38px!important;
  padding:4px 6px!important;
  border-radius:10px!important;
}
.ci21-space-mode .ci19-state-strip button b{
  font-size:14px!important;
  line-height:1!important;
}
.ci21-space-mode .ci19-state-strip button span{
  font-size:8.8px!important;
  line-height:1.05!important;
  margin-top:2px!important;
}
.ci21-space-mode .ci19-nav{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  padding:0 9px 7px!important;
  gap:5px!important;
  border-bottom:1px solid #e7eef5!important;
}
.ci21-space-mode .ci19-nav-chip{
  min-height:25px!important;
  padding:5px 6px!important;
  border-radius:999px!important;
  font-size:10px!important;
}
.ci21-space-mode .ci19-thread-scroll{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:8px 7px 10px!important;
  gap:7px!important;
}
.ci21-space-mode .ci19-thread-card{
  padding:8px!important;
  gap:8px!important;
  border-radius:14px!important;
  min-height:auto!important;
}
.ci21-space-mode .ci19-thread-card.active{
  box-shadow:inset 3px 0 0 #0b8278,0 8px 18px rgba(16,34,56,.08)!important;
}
.ci21-space-mode .ci19-thread-card:hover{
  transform:none!important;
}
.ci21-space-mode .ci19-avatar{
  width:28px!important;
  height:28px!important;
  font-size:11px!important;
}
.ci21-space-mode .ci19-thread-row b{
  font-size:12px!important;
  line-height:1.15!important;
}
.ci21-space-mode .ci19-thread-sub{
  font-size:10px!important;
  margin-top:2px!important;
}
.ci21-space-mode .ci19-thread-card p{
  font-size:11px!important;
  line-height:1.25!important;
  margin:4px 0!important;
  -webkit-line-clamp:2!important;
}
.ci21-space-mode .ci19-thread-meta{
  font-size:9.7px!important;
  line-height:1.1!important;
}
.ci21-space-mode .ci19-thread-row .pill,
.ci21-space-mode .ci19-thread-row [class*="pill"]{
  font-size:10px!important;
  padding:3px 7px!important;
  max-width:72px!important;
}
.ci21-space-mode .ci19-main{
  min-height:0!important;
  overflow:hidden!important;
  background:#f7fbff!important;
}
.ci21-space-mode .ci19-chat-header{
  min-height:52px!important;
  padding:7px 13px!important;
  border-bottom:1px solid #dce8f2!important;
}
.ci21-space-mode .ci19-chat-id .ci19-avatar.big{
  width:36px!important;
  height:36px!important;
  font-size:15px!important;
}
.ci21-space-mode .ci19-chat-id h2{
  font-size:15.5px!important;
  max-width:720px!important;
  margin:0 0 1px!important;
}
.ci21-space-mode .ci19-chat-id p{
  font-size:10.5px!important;
  max-width:720px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.ci21-space-mode .ci19-header-actions{
  gap:5px!important;
}
.ci21-space-mode .ci19-state-action,
.ci21-space-mode .ci19-header-actions .small-btn,
.ci21-space-mode .ci19-header-actions .secondary{
  padding:5px 9px!important;
  font-size:10.5px!important;
  border-radius:999px!important;
}
.ci21-space-mode .ci19-message-area{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:14px 18px 12px!important;
  background-color:#f5fbff!important;
  background-image:radial-gradient(circle at 1px 1px,rgba(20,74,101,.055) 1px,transparent 0)!important;
  background-size:18px 18px!important;
}
.ci21-space-mode .ci19-msg{
  margin:7px 0!important;
}
.ci21-space-mode .ci19-msg-bubble{
  max-width:min(660px,72%)!important;
  padding:9px 11px!important;
  box-shadow:0 6px 14px rgba(16,34,56,.055)!important;
}
.ci21-space-mode .ci19-msg-bubble p{
  font-size:12px!important;
  line-height:1.34!important;
}
.ci21-space-mode .ci19-msg-meta{
  font-size:10px!important;
  margin-bottom:4px!important;
}
.ci21-space-mode .ci19-msg-bubble small{
  margin-top:4px!important;
  font-size:9.8px!important;
}
.ci21-space-mode .ci19-composer{
  flex:0 0 auto!important;
  padding:7px 9px 7px!important;
  border-top:1px solid #dce8f2!important;
  background:#ffffff!important;
}
.ci21-space-mode .ci19-compose-tools{
  display:grid!important;
  grid-template-columns:auto minmax(112px,150px) minmax(0,1fr) auto!important;
  gap:6px!important;
  margin-bottom:6px!important;
  align-items:center!important;
}
.ci21-space-mode .ci19-compose-tools select{
  width:100%!important;
  min-width:0!important;
  height:29px!important;
  font-size:11px!important;
  border-radius:9px!important;
}
.ci21-space-mode .ci19-tool,
.ci21-space-mode .ci19-link-btn{
  height:29px!important;
  padding:0 9px!important;
  font-size:10.8px!important;
  border-radius:9px!important;
  white-space:nowrap!important;
}
.ci21-space-mode .ci19-input-row{
  grid-template-columns:minmax(0,1fr) 64px!important;
  gap:8px!important;
}
.ci21-space-mode .ci19-input-row textarea{
  min-height:48px!important;
  height:48px!important;
  max-height:92px!important;
  padding:9px 10px!important;
  font-size:12px!important;
  border-radius:12px!important;
}
.ci21-space-mode .ci19-send-btn{
  min-height:48px!important;
  border-radius:12px!important;
  font-size:12px!important;
}
.ci21-space-mode .ci19-underbar{
  margin-top:5px!important;
  gap:5px!important;
}
.ci21-space-mode .ci19-underbar .ci19-link-btn{
  height:27px!important;
  font-size:10.5px!important;
}
.ci21-space-mode .ci19-details{
  min-height:0!important;
  overflow:auto!important;
  padding:10px!important;
  background:#fbfdff!important;
}
@media (max-width:1280px){
  .ci21-space-mode.ci19-shell,
  .ci21-space-mode.ci19-shell:has(.ci19-details){
    grid-template-columns:minmax(270px,292px) minmax(0,1fr)!important;
  }
  .ci21-space-mode .ci19-details{display:none!important;}
  .ci21-space-mode .ci19-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media (max-width:900px){
  .app-content:has(.ci21-space-mode){height:auto!important;overflow:auto!important;padding:8px!important;}
  .ci21-space-mode.ci19-shell{height:auto!important;min-height:calc(100vh - 140px)!important;grid-template-columns:1fr!important;}
  .ci21-space-mode .ci19-left{max-height:300px!important;border-bottom:1px solid #d9e7f1!important;}
  .ci21-space-mode .ci19-compose-tools{grid-template-columns:1fr 1fr!important;}
  .ci21-space-mode .ci19-input-row{grid-template-columns:1fr!important;}
  .ci21-space-mode .ci19-send-btn{height:42px!important;min-height:42px!important;}
}

/* V31.19.24.2 FeatherDB Enterprise console polish: remove inner horizontal scrollbars and improve readability */
.fedb20-grid.fedb24-foundation{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
}
.fedb20-grid.fedb24-foundation .pmo-card{max-width:100%;overflow:hidden;}
.fedb20-grid.fedb24-foundation .fedb20-domain-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.fedb20-grid.fedb24-foundation .human-spec-table-wrap,
.fedb20-grid.fedb24-foundation .human-rule-table-wrap,
.fedb20-grid.fedb24-foundation .reports-table-wrap,
.fedb20-grid.fedb24-foundation .human-table-wrap{
  overflow-x:hidden!important;
  max-width:100%;
}
.fedb20-grid.fedb24-foundation .human-spec-table,
.fedb20-grid.fedb24-foundation .human-rule-table,
.fedb20-grid.fedb24-foundation .reports-table,
.fedb20-grid.fedb24-foundation .pmo-mini-table{
  min-width:0!important;
  width:100%!important;
  table-layout:fixed;
}
.fedb20-grid.fedb24-foundation .human-spec-table th,
.fedb20-grid.fedb24-foundation .human-spec-table td,
.fedb20-grid.fedb24-foundation .pmo-mini-table th,
.fedb20-grid.fedb24-foundation .pmo-mini-table td{
  white-space:normal!important;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.fedb20-grid.fedb24-foundation .human-spec-table th:nth-child(1),
.fedb20-grid.fedb24-foundation .human-spec-table td:nth-child(1){width:24%;}
.fedb20-grid.fedb24-foundation .human-spec-table th:nth-child(2),
.fedb20-grid.fedb24-foundation .human-spec-table td:nth-child(2){width:28%;}
.fedb20-grid.fedb24-foundation .human-spec-table th:nth-child(3),
.fedb20-grid.fedb24-foundation .human-spec-table td:nth-child(3){width:48%;}
.fedb20-grid.fedb24-foundation .human-prop,
.fedb20-grid.fedb24-foundation .human-val{min-width:0!important;}
.fedb20-grid.fedb24-foundation .human-meaning{font-size:12px;color:#475569;line-height:1.4;}
.fedb20-grid.fedb24-foundation .human-value{overflow-wrap:anywhere;word-break:break-word;}
.fedb20-grid.fedb24-foundation .human-data-panel.elegant-renderer{max-width:100%;overflow:hidden;}
.fedb20-grid.fedb24-foundation details.elegant-section{max-width:100%;overflow:hidden;}
.fedb20-table-wrap{overflow-y:auto;overflow-x:hidden;}
.fedb20-table{table-layout:fixed;min-width:0!important;width:100%;}
.fedb20-table th,.fedb20-table td{white-space:normal!important;overflow-wrap:anywhere;word-break:break-word;}
@media (max-width: 1200px){
  .fedb20-grid.fedb24-foundation .fedb20-domain-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 720px){
  .fedb20-grid.fedb24-foundation .fedb20-domain-grid{grid-template-columns:1fr;}
  .fedb20-grid.fedb24-foundation .human-spec-table th:nth-child(3),
  .fedb20-grid.fedb24-foundation .human-spec-table td:nth-child(3){display:none;}
}

/* V31.19.26 - Chat-to-Work conversion compact enterprise controls */
.ci26-convert-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px;padding-top:7px;border-top:1px solid rgba(148,163,184,.22);opacity:.18;transition:opacity .16s ease}
.ci19-msg-bubble:hover .ci26-convert-bar{opacity:1}
.ci26-convert-bar span{font-size:10px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.04em}
.ci26-convert-btn{border:1px solid #dbeafe;background:#f8fafc;color:#0f4662;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;line-height:1;cursor:pointer;max-width:96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ci26-convert-btn:hover{background:#ecfeff;border-color:#14b8a6;color:#0f766e}
.ci26-linked-mini{display:flex;flex-direction:column;gap:4px;margin:7px 0 2px 0}
.ci26-linked-mini span{display:block;max-width:100%;padding:4px 7px;border-radius:9px;background:rgba(219,234,254,.75);border:1px solid rgba(96,165,250,.22);color:#1e3a8a;font-size:10px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ci26-work-card p{margin:5px 0;color:#475569;font-size:12px}
.ci26-work-link{display:flex;align-items:center;gap:6px;justify-content:space-between;border:1px solid #e2e8f0;border-radius:10px;padding:7px 8px;background:#f8fafc;line-height:1.25}
.ci26-work-link b{color:#0f766e;white-space:nowrap}
.ci26-work-link span{font-size:10px;border-radius:999px;padding:2px 6px;background:#e0f2fe;color:#075985;font-weight:800;white-space:nowrap}
@media (max-width: 1180px){.ci26-convert-bar{opacity:1}.ci26-convert-btn{padding:4px 7px;font-size:9px}}

/* V31.19.27 - My Work Command Center using FeatherDB Core */
.my-work-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#f8fbff,#eef7ff);border:1px solid #d9e8f7;border-radius:18px;padding:18px 20px;box-shadow:0 14px 32px rgba(15,23,42,.08)}
.my-work-hero h2{margin:0;color:#12324a;font-size:24px;letter-spacing:-.02em}.my-work-hero p{margin:6px 0 0;color:#526579;max-width:780px;line-height:1.45}
.my-work-kpi-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:12px;margin:14px 0}.my-work-kpi{border:1px solid #dce8f4;background:#fff;border-radius:16px;padding:13px 14px;text-align:left;box-shadow:0 10px 22px rgba(15,23,42,.06);cursor:pointer;min-height:82px}.my-work-kpi span{display:block;color:#587084;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.my-work-kpi b{display:block;font-size:25px;color:#172b3a;margin-top:4px}.my-work-kpi small{display:block;color:#728397;margin-top:2px}.my-work-kpi.active{outline:2px solid #0d7fb8;background:#f4fbff}.my-work-kpi.red{border-color:#ffc9c9}.my-work-kpi.amber{border-color:#ffe5ad}.my-work-kpi.green{border-color:#bfe8cf}.my-work-kpi.blue{border-color:#c9e3ff}
.my-work-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid #e2ebf3;border-radius:16px;padding:10px 12px}.my-work-filter-bar .rbac-mode-tabs{margin:0;flex-wrap:wrap}.my-work-filter-bar input{min-width:260px;max-width:420px;width:34%;border:1px solid #d9e4ef;border-radius:12px;padding:10px 12px}
.my-work-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.my-work-card{background:#fff;border:1px solid #dfe9f3;border-radius:18px;padding:15px;box-shadow:0 12px 26px rgba(15,23,42,.07);min-width:0}.my-work-card h4{margin:10px 0 6px;font-size:15px;color:#182f45;line-height:1.25}.my-work-card p{margin:0;color:#5b6f82;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.my-work-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.my-work-card.red{border-left:4px solid #dc2626}.my-work-card.amber{border-left:4px solid #d97706}.my-work-card.green{border-left:4px solid #16a34a}.my-work-card.blue{border-left:4px solid #0284c7}
.my-work-table td{vertical-align:top}.my-work-table .muted{max-width:520px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.my-work-tech-note{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:12px 14px;color:#4b6074;margin-top:14px}
@media (max-width:1180px){.my-work-kpi-grid{grid-template-columns:repeat(4,minmax(120px,1fr))}.my-work-top-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.my-work-hero{flex-direction:column;align-items:flex-start}.my-work-filter-bar{flex-direction:column;align-items:stretch}.my-work-filter-bar input{width:100%;max-width:none}}
@media (max-width:760px){.my-work-kpi-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.my-work-top-grid{grid-template-columns:1fr}}

/* V31.19.28 Plan Intelligence / Baseline / Variance */
.plan-intel-hero {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:14px 16px;
  border:1px solid #DDE7F0;
  border-radius:18px;
  background:linear-gradient(135deg,#F8FBFF,#EFF8F7);
  box-shadow:0 8px 24px rgba(15,35,55,.06);
}
.plan-intel-hero h2 { margin:0 0 4px; font-size:20px; color:#0B1F33; }
.plan-intel-hero p { margin:0; color:#587083; font-size:13px; max-width:760px; }
.plan-kpi-grid { display:grid; grid-template-columns:repeat(7,minmax(120px,1fr)); gap:10px; margin:12px 0; }
.plan-kpi {
  text-align:left;
  border:1px solid #DDE7F0;
  border-radius:16px;
  background:#FFFFFF;
  padding:10px 12px;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(15,35,55,.05);
  min-width:0;
}
.plan-kpi span { display:block; font-size:11px; color:#607488; font-weight:700; text-transform:uppercase; letter-spacing:.04em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.plan-kpi b { display:block; font-size:24px; color:#0B1F33; line-height:1.1; margin-top:2px; }
.plan-kpi small { display:block; color:#7B8FA1; margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.plan-kpi.active { outline:2px solid #0F766E; background:#F0FDFA; }
.plan-kpi.red b { color:#B42318; } .plan-kpi.amber b { color:#B54708; } .plan-kpi.green b { color:#047857; } .plan-kpi.blue b { color:#1F4E79; }
.plan-intel-grid { display:grid; grid-template-columns:minmax(430px,1.1fr) minmax(360px,.9fr); gap:14px; align-items:start; min-width:0; }
.plan-intel-main,.plan-intel-detail { min-width:0; }
.plan-toolbar { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.plan-toolbar .rbac-mode-tabs { flex:1; overflow:hidden; flex-wrap:wrap; }
.plan-toolbar input { width:280px; max-width:38%; border:1px solid #DDE7F0; border-radius:12px; padding:9px 10px; }
.plan-item-list { display:grid; gap:8px; max-height:62vh; overflow:auto; padding-right:2px; }
.plan-item-row {
  text-align:left;
  border:1px solid #DDE7F0;
  border-radius:14px;
  background:#FFFFFF;
  padding:10px 12px;
  cursor:pointer;
  min-width:0;
}
.plan-item-row:hover,.plan-item-row.active { border-color:#0F766E; box-shadow:0 8px 22px rgba(15,118,110,.10); }
.plan-item-row.red { border-left:4px solid #D92D20; }
.plan-item-row.amber { border-left:4px solid #F79009; }
.plan-item-row.green { border-left:4px solid #12B76A; }
.plan-item-row.blue { border-left:4px solid #2E90FA; }
.plan-row-head { display:flex; gap:8px; align-items:center; min-width:0; }
.plan-row-head b { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#0B1F33; }
.plan-row-head em { font-style:normal; font-weight:800; color:#334E68; }
.plan-item-row h4 { margin:7px 0 5px; font-size:14px; color:#0B1F33; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.plan-row-meta { display:flex; gap:6px; flex-wrap:wrap; }
.plan-row-meta span { font-size:11px; color:#607488; background:#F4F8FB; border-radius:999px; padding:3px 7px; max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.plan-detail-card,.plan-form-card { border:1px solid #DDE7F0; background:#FFFFFF; border-radius:16px; padding:12px; margin-bottom:10px; box-shadow:0 6px 18px rgba(15,35,55,.05); min-width:0; }
.plan-detail-metrics { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.plan-detail-metrics div { background:#F8FAFC; border:1px solid #E7EEF5; border-radius:12px; padding:9px; min-width:0; }
.plan-detail-metrics span { display:block; font-size:11px; color:#607488; text-transform:uppercase; letter-spacing:.04em; }
.plan-detail-metrics b { display:block; color:#0B1F33; margin-top:2px; word-break:break-word; }
.plan-detail-metrics small { display:block; color:#7B8FA1; margin-top:3px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.plan-form-card h3 { margin:0 0 10px; font-size:15px; color:#0B1F33; }
.plan-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.plan-form-grid label { display:flex; flex-direction:column; gap:4px; font-size:12px; color:#526D82; font-weight:700; min-width:0; }
.plan-form-grid label.wide { grid-column:1/-1; }
.plan-form-grid input,.plan-form-grid select { border:1px solid #DDE7F0; border-radius:10px; padding:8px 9px; min-width:0; }
.plan-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.plan-rollup-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px; margin-top:12px; }
.plan-rollup-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:8px; align-items:center; padding:7px 0; border-bottom:1px solid #EDF2F7; }
.plan-rollup-row b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.plan-rollup-row span,.plan-rollup-row em { font-style:normal; color:#607488; font-size:12px; white-space:nowrap; }
@media (max-width:1200px){ .plan-kpi-grid{grid-template-columns:repeat(4,minmax(120px,1fr));} .plan-intel-grid{grid-template-columns:1fr;} .plan-rollup-grid{grid-template-columns:1fr;} .plan-toolbar{flex-direction:column;align-items:stretch;} .plan-toolbar input{max-width:none;width:100%;} }
@media (max-width:720px){ .plan-kpi-grid{grid-template-columns:repeat(2,minmax(120px,1fr));} .plan-detail-metrics,.plan-form-grid{grid-template-columns:1fr;} .plan-intel-hero{flex-direction:column;align-items:stretch;} }

/* V31.19.29 Meeting Hub / PMO Control usability enhancements */
.meeting-hub-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(135deg,#f7fffc,#eef9ff);border:1px solid #d7efe8;border-radius:18px;padding:18px 20px;margin-bottom:14px;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.meeting-hub-hero h2{margin:0 0 6px;font-size:24px;color:#102033}.meeting-hub-hero p{margin:0;color:#53657d;max-width:850px}.meeting-hub-kpi-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:10px;margin-bottom:14px}.meeting-hub-kpi{background:#fff;border:1px solid #dbe7f2;border-radius:14px;text-align:left;padding:12px 13px;min-height:78px;box-shadow:0 8px 20px rgba(15,23,42,.04);cursor:pointer}.meeting-hub-kpi span{display:block;text-transform:uppercase;font-size:11px;font-weight:800;color:#52637a;letter-spacing:.04em}.meeting-hub-kpi b{display:block;font-size:24px;margin-top:5px;color:#0f172a}.meeting-hub-kpi small{display:block;margin-top:3px;color:#64748b}.meeting-hub-kpi.active{border-color:#0f8f7e;box-shadow:0 0 0 2px rgba(15,143,126,.14)}.meeting-hub-kpi.red{border-left:4px solid #ef4444}.meeting-hub-kpi.amber{border-left:4px solid #f59e0b}.meeting-hub-kpi.green{border-left:4px solid #22c55e}.meeting-hub-kpi.blue{border-left:4px solid #3b82f6}.meeting-hub-tabs{display:flex;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid #dbe7f2;border-radius:16px;padding:10px;margin-bottom:14px}.meeting-hub-tabs button{border:1px solid #d7e2ef;background:#f8fafc;border-radius:10px;padding:9px 13px;color:#334155;cursor:pointer}.meeting-hub-tabs button.active{background:#0f8f7e;color:#fff;border-color:#0f8f7e}.meeting-hub-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px}.meeting-hub-left{background:#fff;border:1px solid #dbe7f2;border-radius:16px;padding:12px;max-height:720px;overflow:auto}.meeting-list-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.meeting-list-head h3{margin:0;font-size:16px}.meeting-list-head span{font-size:12px;color:#64748b}.meeting-list-item{display:block;width:100%;text-align:left;border:1px solid #e2e8f0;background:#fff;border-radius:14px;padding:12px;margin-bottom:10px;cursor:pointer}.meeting-list-item.active{border-color:#0f8f7e;background:#f0fdfa;box-shadow:0 0 0 2px rgba(15,143,126,.1)}.meeting-list-item b{display:block;color:#102033;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-list-item span,.meeting-list-item small{display:block;color:#64748b;margin-top:4px}.meeting-hub-main{background:#fff;border:1px solid #dbe7f2;border-radius:16px;padding:16px;min-height:560px}.meeting-hub-section h3{margin:0 0 12px}.meeting-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.meeting-form-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;text-transform:uppercase;font-weight:800;color:#64748b}.meeting-form-grid label.wide{grid-column:1/-1}.meeting-form-grid input,.meeting-form-grid textarea,.meeting-form-grid select{width:100%;border:1px solid #d6e2ee;border-radius:10px;padding:10px 11px;font-size:14px;text-transform:none;color:#0f172a;background:#fff}.agenda-editor-card,.minute-card,.raid-mini-block{border:1px solid #dbe7f2;border-radius:14px;padding:13px;margin-bottom:12px;background:#fbfdff}.agenda-editor-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.agenda-editor-card textarea{width:100%;border:1px solid #d6e2ee;border-radius:10px;padding:10px;margin-top:8px}.agenda-actions{display:flex;gap:8px;margin-top:8px}.minute-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-top:14px}.minute-card b{display:block;color:#0f172a}.minute-card p{margin:6px 0;color:#475569}.raid-mini-block h4{margin:0 0 8px}.raid-row{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #e5edf5;padding:8px 0}.raid-row b{color:#0f172a}.raid-row span{color:#64748b;white-space:nowrap}.meeting-hub-section .plan-actions{margin-top:12px}@media(max-width:1100px){.meeting-hub-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-hub-layout{grid-template-columns:1fr}.meeting-hub-left{max-height:none}.meeting-form-grid{grid-template-columns:1fr}}

/* V31.19.29.1 PMO Control compact metrics + space optimization
   UI-only safety patch: no behavior/data/API changes. */
.meeting-hub-hero{
  padding:12px 16px !important;
  margin-bottom:10px !important;
  border-radius:15px !important;
  min-height:auto !important;
}
.meeting-hub-hero h2{
  font-size:20px !important;
  margin:0 0 3px !important;
  line-height:1.15 !important;
}
.meeting-hub-hero p{
  font-size:12px !important;
  line-height:1.35 !important;
  max-width:780px !important;
}
.meeting-hub-hero .plan-actions,
.meeting-hub-hero > div:last-child{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
}
.meeting-hub-kpi-grid{
  grid-template-columns:repeat(7,minmax(104px,1fr)) !important;
  gap:8px !important;
  margin-bottom:10px !important;
}
.meeting-hub-kpi{
  min-height:54px !important;
  padding:8px 10px !important;
  border-radius:11px !important;
  box-shadow:0 5px 14px rgba(15,23,42,.035) !important;
}
.meeting-hub-kpi span{
  font-size:9.5px !important;
  line-height:1.1 !important;
  letter-spacing:.035em !important;
}
.meeting-hub-kpi b{
  font-size:19px !important;
  line-height:1.05 !important;
  margin-top:3px !important;
}
.meeting-hub-kpi small{
  font-size:10.5px !important;
  line-height:1.15 !important;
  margin-top:2px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.meeting-hub-tabs{
  padding:7px !important;
  gap:6px !important;
  border-radius:13px !important;
  margin-bottom:10px !important;
}
.meeting-hub-tabs button{
  padding:6px 10px !important;
  border-radius:9px !important;
  font-size:12px !important;
  min-height:30px !important;
}
.meeting-hub-layout{
  grid-template-columns:280px minmax(0,1fr) !important;
  gap:10px !important;
}
.meeting-hub-left{
  padding:10px !important;
  border-radius:14px !important;
  max-height:650px !important;
}
.meeting-list-item{
  padding:9px 10px !important;
  border-radius:12px !important;
  margin-bottom:8px !important;
}
.meeting-list-item b{font-size:13px !important;}
.meeting-list-item span,.meeting-list-item small{font-size:11.5px !important;margin-top:3px !important;}
.meeting-hub-main{
  padding:12px !important;
  border-radius:14px !important;
  min-height:500px !important;
}
.meeting-hub-section h3{margin-bottom:9px !important;font-size:16px !important;}
.meeting-form-grid{gap:9px !important;}
.meeting-form-grid input,.meeting-form-grid textarea,.meeting-form-grid select{
  padding:8px 10px !important;
  border-radius:9px !important;
  font-size:13px !important;
}
.agenda-editor-card,.minute-card,.raid-mini-block{
  padding:10px !important;
  border-radius:12px !important;
  margin-bottom:9px !important;
}
.minute-list{gap:8px !important;margin-top:10px !important;}
.raid-row{padding:6px 0 !important;}
@media(max-width:1300px){
  .meeting-hub-kpi-grid{grid-template-columns:repeat(4,minmax(110px,1fr)) !important;}
}
@media(max-width:1100px){
  .meeting-hub-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .meeting-hub-layout{grid-template-columns:1fr !important;}
}

/* V31.19.29.5 PMO Control unified workspace */
.meeting-hub-hero.compact{padding:14px 18px;margin-bottom:10px;min-height:auto;align-items:center}
.meeting-hub-hero.compact h2{font-size:20px;margin:0 0 4px}
.meeting-hub-hero.compact p{font-size:12px;margin:0;line-height:1.35}
.meeting-hub-kpi-grid.compact{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:8px;margin:8px 0 10px}
.meeting-hub-kpi.compact{min-height:58px;padding:9px 12px;text-align:left;border-radius:10px}
.meeting-hub-kpi.compact span{font-size:10px;letter-spacing:.04em;text-transform:uppercase}
.meeting-hub-kpi.compact b{font-size:20px;line-height:1.1;display:block;margin:2px 0}
.meeting-hub-kpi.compact small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.meeting-hub-layout.unified{display:grid;grid-template-columns:260px minmax(0,1fr);gap:10px;min-height:560px;padding:10px}
.meeting-hub-main.unified{display:flex;flex-direction:column;gap:10px;min-width:0}
.meeting-context-strip{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #dbe8f7;background:#f8fbff;border-radius:12px;padding:12px 14px}
.meeting-context-strip h3{margin:0 0 4px;font-size:17px;color:#102033}
.meeting-context-strip p{margin:0;color:#5c6b82;font-size:12px}
.meeting-context-meta{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end;align-items:center;color:#4d5d73;font-size:12px}
.meeting-context-meta span:not(.status-pill){padding:5px 8px;border:1px solid #dbe7f6;border-radius:999px;background:#fff}
.meeting-hub-tabs.inline{display:flex;flex-wrap:wrap;gap:7px;background:#fff;border:1px solid #dde8f4;border-radius:12px;padding:8px}
.meeting-hub-tabs.inline button{height:32px;padding:0 12px;border-radius:8px;border:1px solid #cfdceb;background:#f8fbff;color:#334761;font-size:12px}
.meeting-hub-tabs.inline button.active{background:#07877d;color:#fff;border-color:#07877d}
.meeting-workspace-section{border:1px solid #dbe7f2;background:#fff;border-radius:14px;padding:14px;min-height:360px;overflow:hidden}
.meeting-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #edf3f8;margin-bottom:12px}
.meeting-section-title h3{margin:0;font-size:18px;color:#102033}
.meeting-section-title p{margin:4px 0 0;color:#65738a;font-size:12px}
.meeting-section-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.pmo-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pmo-overview-card{border:1px solid #dfeaf5;background:#f9fbfe;border-radius:12px;padding:12px;min-height:88px}
.pmo-overview-card h4{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#536982}
.pmo-overview-card p{margin:0;font-size:13px;line-height:1.45;color:#172436}
.pmo-discussion-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:12px;align-items:start}
.agenda-editor-card.compact{padding:10px;margin-bottom:8px;border-radius:12px}
.meeting-form-grid.single{grid-template-columns:1fr;gap:8px}
.minute-list.compact{margin-top:12px;max-height:260px;overflow:auto}
.pmo-convert-buttons{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}
.tiny-btn{font-size:11px;padding:4px 8px;border-radius:999px;min-height:24px}
.raid-row.enhanced{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #edf2f6}
.raid-row.enhanced b{display:block;line-height:1.35}
.raid-row.enhanced span{font-size:12px;color:#63738a}
.pmo-work-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:12px}
.pmo-work-source-card,.pmo-work-linked-card{border:1px solid #dce8f4;border-radius:12px;background:#fbfdff;padding:10px;margin-bottom:8px;display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.pmo-work-source-card b,.pmo-work-linked-card b{display:block;color:#12243a;font-size:13px;line-height:1.35}
.pmo-work-source-card small,.pmo-work-linked-card span{display:block;color:#607087;font-size:12px;margin-top:4px}
.meeting-list-item b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block}
@media(max-width:1200px){.meeting-hub-kpi-grid.compact{grid-template-columns:repeat(3,1fr)}.meeting-hub-layout.unified{grid-template-columns:1fr}.pmo-discussion-grid,.pmo-work-grid,.pmo-overview-grid{grid-template-columns:1fr}.raid-row.enhanced,.pmo-work-source-card,.pmo-work-linked-card{grid-template-columns:1fr;display:block}}

/* V31.19.30.0 stable baseline executive certificate polish */
.baseline-certificate {
  background: linear-gradient(135deg, #f8fffd 0%, #ffffff 52%, #eef7ff 100%);
  border: 1px solid #cfe3ea;
  border-radius: 18px;
  padding: 22px;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
}
.baseline-cert-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}
.baseline-cert-kicker {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  border-radius: 999px;
  background: #e6fffb;
  color: #0f766e;
  font-weight: 800;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.baseline-cert-head h2 {
  margin: 10px 0 6px;
  font-size: clamp(22px, 2.2vw, 34px);
  color: #0f172a;
  letter-spacing: -.03em;
}
.baseline-cert-head p {
  margin: 0;
  max-width: 850px;
  color: #64748b;
  line-height: 1.5;
}
.baseline-cert-badge {
  min-width: 104px;
  text-align: center;
  border-radius: 16px;
  padding: 14px 16px;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: .08em;
  border: 1px solid #dbeafe;
}
.baseline-cert-badge.ready { background: #dcfce7; color: #166534; border-color: #86efac; }
.baseline-cert-badge.pending { background: #fff7ed; color: #9a3412; border-color: #fed7aa; }
.baseline-cert-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  gap: 12px;
}
.baseline-cert-field {
  background: rgba(255,255,255,.92);
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  padding: 13px 14px;
  min-width: 0;
}
.baseline-cert-field span {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  color: #64748b;
  font-weight: 800;
  letter-spacing: .07em;
  margin-bottom: 6px;
}
.baseline-cert-field b {
  display: block;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.baseline-cert-actions,
.baseline-tile-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.baseline-tile-grid { margin-bottom: 16px; }
.baseline-status-tile {
  flex: 1 1 180px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-left: 4px solid #94a3b8;
  border-radius: 14px;
  padding: 16px;
  box-shadow: 0 8px 18px rgba(15,23,42,.05);
}
.baseline-status-tile.green { border-left-color: #22c55e; }
.baseline-status-tile.amber { border-left-color: #f59e0b; }
.baseline-status-tile span { display:block; font-size:11px; text-transform:uppercase; letter-spacing:.07em; color:#64748b; font-weight:800; }
.baseline-status-tile b { display:block; margin-top:6px; color:#0f172a; font-size:18px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.baseline-timeline { display:flex; flex-direction:column; gap:12px; }
.baseline-timeline-row { display:flex; gap:12px; align-items:flex-start; padding:12px; border-radius:14px; background:#f8fafc; border:1px solid #e2e8f0; }
.baseline-step-dot { width:28px; height:28px; border-radius:50%; display:inline-grid; place-items:center; font-weight:900; background:#e2e8f0; color:#475569; flex:0 0 auto; }
.baseline-timeline-row.pass .baseline-step-dot { background:#dcfce7; color:#166534; }
.baseline-timeline-row b { display:block; color:#0f172a; }
.baseline-timeline-row small { display:block; margin-top:2px; color:#64748b; }
.baseline-check-list { display:grid; gap:10px; }
.baseline-check-list div { display:grid; grid-template-columns: 36px 1fr auto; gap:10px; align-items:center; padding:12px; background:#f8fafc; border:1px solid #e2e8f0; border-radius:14px; }
.baseline-check-no { display:inline-grid; place-items:center; width:26px; height:26px; background:#e0f2fe; color:#0369a1; border-radius:50%; font-weight:800; }
.baseline-check-list b { color:#0f172a; }
.baseline-check-list em { font-style:normal; color:#475569; background:#eef6ff; border:1px solid #dbeafe; border-radius:999px; padding:4px 8px; max-width:280px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.developer-details { background:#fff; border:1px solid #dbe4ea; border-radius:16px; padding:14px 18px; }
.developer-details summary { cursor:pointer; color:#0f766e; font-weight:900; }
.developer-details[open] summary { margin-bottom:14px; }
@media (max-width: 900px) {
  .baseline-cert-head { flex-direction: column; }
  .baseline-cert-grid { grid-template-columns: 1fr; }
  .baseline-check-list div { grid-template-columns: 32px 1fr; }
  .baseline-check-list em { grid-column: 2; }
}

/* V31.19.30.7 — WhatsApp-style contextual work conversion menus */
.ci-message-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;position:relative;}
.ci-message-footer small{margin-top:0!important;}
.ci-message-action-zone{position:relative;display:flex;align-items:center;justify-content:flex-end;min-width:30px;}
.ci-work-menu-trigger,.pmo-work-menu-trigger{width:28px;height:28px;border:1px solid rgba(148,163,184,.32);background:rgba(255,255,255,.78);color:#334155;border-radius:999px;font-weight:900;font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 14px rgba(15,23,42,.06);}
.ci19-msg.mine .ci-work-menu-trigger{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.32);color:#fff;}
.ci-work-menu-trigger:hover,.pmo-work-menu-trigger:hover{background:#f0fdfa;border-color:#14b8a6;color:#0f766e;}
.ci19-msg.mine .ci-work-menu-trigger:hover{background:rgba(255,255,255,.28);color:#fff;}
.ci-work-popover,.pmo-work-popover{position:absolute;right:0;top:32px;z-index:80;min-width:230px;background:#fff;border:1px solid #dbe7f2;border-radius:14px;box-shadow:0 18px 44px rgba(15,23,42,.18);padding:8px;display:none;color:#0f172a;}
.ci-work-popover.open,.pmo-work-popover.open{display:block;}
.ci19-msg.theirs .ci-work-popover{right:auto;left:0;}
.ci-work-popover-title,.pmo-work-popover-title{padding:8px 10px 7px;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#64748b;border-bottom:1px solid #edf2f7;margin-bottom:6px;}
.ci-work-menu-item,.pmo-work-menu-item{width:100%;display:flex;align-items:center;gap:9px;border:0;background:#fff;color:#12243a;text-align:left;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:800;cursor:pointer;}
.ci-work-menu-item:hover,.pmo-work-menu-item:hover{background:#ecfeff;color:#0f766e;}
.ci-work-menu-icon,.pmo-work-menu-icon{width:22px;height:22px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#f1f5f9;color:#0f766e;font-size:12px;}
.ci26-convert-bar.legacy-hidden,.pmo-convert-buttons.legacy-hidden{display:none!important;}
.pmo-work-menu-wrap{position:relative;display:flex;align-items:center;justify-content:flex-end;min-width:32px;}
.pmo-work-popover{right:0;top:34px;}
.agenda-actions{align-items:center;}
.raid-row.enhanced{align-items:flex-start;}
.pmo-work-source-card{position:relative;}
.ci26-linked-mini{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;}
.ci26-linked-mini span{display:inline-flex;align-items:center;max-width:100%;border-radius:999px;background:#e0f2fe;color:#075985;padding:4px 8px;font-size:10.5px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ci19-msg.mine .ci26-linked-mini span{background:rgba(255,255,255,.22);color:#fff;}
@media(max-width:900px){.ci-work-popover,.pmo-work-popover{min-width:210px;right:0;}.ci19-msg.theirs .ci-work-popover{left:0;right:auto;}}

/* V31.19.31.2 Plan Execution Spine Foundation */
.plan-spine-shell .page-hero{
  align-items:flex-start;
  gap:18px;
}
.plan-spine-filters{
  display:grid;
  grid-template-columns:minmax(260px,1.5fr) repeat(4,minmax(130px,0.7fr));
  gap:10px;
  margin:14px 0;
}
.plan-spine-filters input,
.plan-spine-filters select{
  min-height:38px;
  border:1px solid rgba(15,23,42,.12);
  border-radius:12px;
  background:#fff;
  padding:8px 10px;
}
.plan-spine-readiness{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:10px;
  margin:12px 0;
}
.readiness-row{
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
  border-radius:14px;
  padding:12px;
  display:grid;
  gap:4px;
  box-shadow:0 8px 20px rgba(15,23,42,.04);
}
.readiness-row span{font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.04em;}
.readiness-row small{color:#64748b;line-height:1.35;}
.readiness-row.green{border-color:rgba(22,163,74,.25);background:#f0fdf4;}
.readiness-row.amber{border-color:rgba(245,158,11,.25);background:#fffbeb;}
.readiness-row.red{border-color:rgba(220,38,38,.25);background:#fef2f2;}
.readiness-row.blue{border-color:rgba(37,99,235,.22);background:#eff6ff;}
.plan-spine-tree{
  display:grid;
  gap:12px;
}
.plan-tree-card{
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  background:#fff;
  padding:12px;
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
.plan-tree-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-bottom:8px;
  border-bottom:1px solid rgba(15,23,42,.08);
}
.plan-tree-head b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.plan-tree-head span{color:#64748b;font-size:12px;}
.plan-tree-phase{
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto auto;
  gap:10px;
  align-items:center;
  padding:8px 0;
  border-bottom:1px dashed rgba(15,23,42,.07);
}
.plan-tree-phase:last-child{border-bottom:0;}
.plan-tree-phase span{color:#64748b;font-size:12px;}
@media (max-width: 920px){
  .plan-spine-filters{grid-template-columns:1fr 1fr;}
  .plan-tree-head{align-items:flex-start;flex-direction:column;}
  .plan-tree-phase{grid-template-columns:1fr;}
}


/* V31.19.31.4 Release Plan Board timeline + evidence upload polish */
.release-plan-board{background:#fff;border:1px solid #e4e7ec;border-radius:18px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.06);}
.release-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;}
.release-board-head h3{margin:0 0 4px;font-size:18px;color:#101828;}
.release-board-head p{margin:0;color:#667085;font-size:13px;}
.release-board-legend{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.rag-dot{font-size:11px;font-weight:800;padding:6px 9px;border-radius:999px;border:1px solid #e4e7ec;background:#f8fafc;color:#344054;}
.rag-dot.blue{background:#eff8ff;color:#175cd3;border-color:#b2ddff}.rag-dot.gray{background:#f2f4f7;color:#475467}.rag-dot.green{background:#ecfdf3;color:#067647;border-color:#abefc6}.rag-dot.amber{background:#fffaeb;color:#b54708;border-color:#fedf89}.rag-dot.red{background:#fef3f2;color:#b42318;border-color:#fecdca}
.release-board-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px;}
.release-board-quickfilters{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px;}
.release-board-quickfilters button{border:1px solid #d0d5dd;background:#fff;border-radius:999px;padding:6px 12px;font-weight:700;color:#344054;cursor:pointer;}
.release-board-quickfilters button.active{background:#0b5cab;color:#fff;border-color:#0b5cab;}
.timeline-scale{display:grid;grid-template-columns:repeat(5,1fr);color:#98a2b3;font-size:11px;font-weight:800;text-transform:uppercase;border-bottom:1px solid #e4e7ec;padding:8px 0;margin-bottom:8px;}
.timeline-scale span:nth-child(n+2){text-align:center}.timeline-scale span:last-child{text-align:right}
.timeline-list{display:flex;flex-direction:column;gap:8px;max-height:620px;overflow:auto;padding-right:4px;}
.timeline-row{display:grid;grid-template-columns:minmax(220px,320px) 1fr minmax(220px,300px);gap:12px;align-items:center;background:#f8fafc;border:1px solid #eef2f6;border-radius:14px;padding:10px;}
.timeline-row-meta{min-width:0}.timeline-row-meta b{display:block;font-size:12px;color:#344054}.timeline-row-meta span{display:block;font-size:13px;color:#101828;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-row-meta small{display:block;color:#667085;font-size:11px;margin-top:3px;}
.timeline-track{position:relative;height:26px;border-radius:999px;background:linear-gradient(90deg,#f2f4f7,#fff);border:1px solid #eaecf0;overflow:hidden;}
.timeline-bar{position:absolute;top:3px;height:18px;border-radius:999px;min-width:16px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:900;box-shadow:0 2px 8px rgba(15,23,42,.12);}
.timeline-bar.blue{background:#1570ef}.timeline-bar.gray{background:#667085}.timeline-bar.green{background:#12b76a}.timeline-bar.amber{background:#f79009}.timeline-bar.red{background:#f04438}
.timeline-row-flags{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap;font-size:11px;color:#475467;}
.plan-evidence-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.plan-upload-btn input{display:none!important}.plan-upload-btn{cursor:pointer;display:inline-flex;align-items:center;gap:4px;}
@media(max-width:980px){.timeline-row{grid-template-columns:1fr}.timeline-row-flags{justify-content:flex-start}.release-board-head{flex-direction:column}.release-board-legend{justify-content:flex-start}}

/* V31.19.31.4 - Plan board detail drawer and evidence review queue */
.timeline-row{cursor:pointer;transition:transform .12s ease, box-shadow .12s ease, background .12s ease;}
.timeline-row:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,23,42,.10);background:#fff;}
.elegant-table tbody tr{cursor:pointer;}
.elegant-table tbody tr:hover{background:#f8fafc;}
.plan-review-queue{margin-top:14px;}
.plan-detail-overlay{position:fixed;inset:0;background:rgba(15,23,42,.32);z-index:9000;display:flex;justify-content:flex-end;backdrop-filter:blur(2px);}
.plan-detail-drawer{width:min(720px,96vw);height:100vh;background:#fff;box-shadow:-24px 0 60px rgba(15,23,42,.25);padding:18px;overflow:auto;border-left:1px solid #e5e7eb;}
.plan-detail-drawer-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid #e5e7eb;padding-bottom:14px;margin-bottom:14px;}
.plan-detail-drawer-head h3{margin:2px 0 4px;font-size:1.15rem;color:#0f172a;}
.plan-detail-drawer-head p{margin:0;color:#64748b;font-size:.82rem;}
.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800;color:#2563eb;}
.icon-btn{border:0;background:#f1f5f9;border-radius:999px;width:32px;height:32px;font-size:20px;line-height:1;cursor:pointer;color:#334155;}
.icon-btn:hover{background:#e2e8f0;}
.drawer-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px;}
.drawer-section{border:1px solid #e5e7eb;border-radius:14px;padding:12px;margin:12px 0;background:#fbfdff;}
.drawer-section h4{margin:0 0 8px;color:#0f172a;font-size:.94rem;}
.drawer-row{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;border-top:1px solid #eef2f7;padding:9px 0;}
.drawer-row:first-of-type{border-top:0;}
.drawer-row span{font-size:.82rem;color:#64748b;}
.drawer-row.evidence{display:grid;grid-template-columns:1fr auto;align-items:center;}
.closure-mini{display:flex;gap:10px;align-items:center;margin-bottom:8px;}
.drawer-blocker{margin:6px 0;padding:8px;border-radius:10px;background:#fff1f2;color:#9f1239;font-size:.82rem;}
.drawer-comment,.drawer-event{margin:7px 0;padding:8px;border-radius:10px;background:#fff;color:#475569;font-size:.82rem;border:1px solid #eef2f7;}
.danger-soft{border-color:#fecaca!important;color:#b91c1c!important;background:#fff5f5!important;}
.danger-soft:hover{background:#fee2e2!important;}
.pill.warn{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa;}
.pill.neutral{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;}
.pill.ok{background:#ecfdf5;color:#047857;border:1px solid #bbf7d0;}
.pill.danger{background:#fff1f2;color:#be123c;border:1px solid #fecdd3;}
@media (max-width: 760px){.plan-detail-drawer{width:100vw;padding:14px}.drawer-metrics{grid-template-columns:1fr}.drawer-row.evidence{grid-template-columns:1fr}.plan-evidence-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}}


/* V31.19.31.6 - Plan Spine usability rescue and executive density polish
   Purpose: convert the noisy Plan Execution Spine screen into a usable operating board.
   No data/API behavior removed. Only layout, density, filters and readability are corrected. */
.plan-spine-shell{--ps-border:#e5edf5;--ps-muted:#64748b;--ps-text:#0f172a;--ps-panel:#fff;--ps-soft:#f8fafc;}
.plan-spine-shell .page-hero{padding:12px 14px!important;border-radius:16px!important;margin-bottom:10px!important;background:linear-gradient(135deg,#ffffff,#f8fbff)!important;border:1px solid var(--ps-border)!important;box-shadow:0 10px 24px rgba(15,23,42,.045)!important;align-items:center!important;}
.plan-spine-shell .page-hero h2{font-size:20px!important;line-height:1.15!important;margin:0 0 4px!important;}
.plan-spine-shell .page-hero p{font-size:12.5px!important;line-height:1.35!important;margin:0!important;color:#475569!important;max-width:920px!important;}
.plan-spine-shell .hero-actions{gap:8px!important;align-items:center!important;}
.plan-spine-shell .hero-actions .small-btn{height:32px!important;padding:6px 12px!important;font-size:12px!important;border-radius:999px!important;}

/* Top score cards: keep only executive density, remove bulky diagnostic feel */
.plan-spine-shell .tree-summary-grid{display:grid!important;grid-template-columns:repeat(6,minmax(130px,1fr))!important;gap:8px!important;margin:8px 0 10px!important;}
.plan-spine-shell .tree-summary-grid .tree-summary-card,
.plan-spine-shell .tree-summary-grid > div{min-height:78px!important;padding:10px 12px!important;border-radius:13px!important;box-shadow:0 6px 16px rgba(15,23,42,.035)!important;}
.plan-spine-shell .tree-summary-grid b{font-size:22px!important;line-height:1.1!important;}
.plan-spine-shell .tree-summary-grid span,
.plan-spine-shell .tree-summary-grid small{font-size:10.5px!important;line-height:1.2!important;}
.plan-spine-shell .tree-summary-grid small{display:block!important;max-height:28px!important;overflow:hidden!important;color:#64748b!important;}

/* Readiness cards were overwhelming. Show them as a compact status ribbon. */
.plan-spine-shell .plan-spine-readiness{display:flex!important;gap:6px!important;overflow-x:auto!important;margin:6px 0 10px!important;padding:2px 0 6px!important;scrollbar-width:thin!important;}
.plan-spine-shell .readiness-row{min-width:180px!important;max-width:210px!important;min-height:50px!important;padding:7px 9px!important;border-radius:12px!important;box-shadow:none!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto auto!important;gap:2px 8px!important;align-items:center!important;}
.plan-spine-shell .readiness-row b{font-size:12px!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.plan-spine-shell .readiness-row span{font-size:10px!important;text-align:right!important;}
.plan-spine-shell .readiness-row small{grid-column:1 / -1!important;font-size:10.5px!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}

/* Filter bar: one compact command row instead of huge stacked controls. */
.plan-spine-shell .plan-spine-filters{display:grid!important;grid-template-columns:minmax(280px,1.6fr) repeat(5,minmax(120px,.7fr))!important;gap:8px!important;margin:8px 0 10px!important;align-items:center!important;}
.plan-spine-shell .plan-spine-filters input,
.plan-spine-shell .plan-spine-filters select{height:34px!important;min-height:34px!important;border-radius:10px!important;padding:6px 10px!important;font-size:12px!important;background:#fff!important;}

/* Tabs: make them a stable command bar, not a heavy button farm. */
.plan-spine-shell > .rbac-mode-tabs{position:sticky!important;top:0!important;z-index:35!important;background:rgba(248,250,252,.96)!important;backdrop-filter:blur(8px)!important;border:1px solid var(--ps-border)!important;border-radius:14px!important;padding:7px!important;margin:8px 0 10px!important;display:flex!important;gap:6px!important;overflow-x:auto!important;box-shadow:0 8px 24px rgba(15,23,42,.05)!important;}
.plan-spine-shell > .rbac-mode-tabs button{height:32px!important;border-radius:10px!important;padding:6px 12px!important;font-size:12px!important;white-space:nowrap!important;background:#f1f5f9!important;border:1px solid transparent!important;color:#334155!important;}
.plan-spine-shell > .rbac-mode-tabs button.active{background:#0f766e!important;color:#fff!important;box-shadow:0 4px 12px rgba(15,118,110,.20)!important;}

/* Release board: make actual timeline visible and useful. */
.plan-spine-shell .release-plan-board{padding:14px!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(15,23,42,.05)!important;}
.plan-spine-shell .release-board-head{align-items:center!important;margin-bottom:10px!important;}
.plan-spine-shell .release-board-head h3{font-size:17px!important;margin-bottom:2px!important;}
.plan-spine-shell .release-board-head p{font-size:12px!important;}
.plan-spine-shell .release-board-kpis{grid-template-columns:repeat(5,minmax(130px,1fr))!important;gap:8px!important;margin-bottom:10px!important;}
.plan-spine-shell .release-board-quickfilters{margin:4px 0 10px!important;gap:6px!important;}
.plan-spine-shell .release-board-quickfilters button{height:28px!important;padding:5px 11px!important;font-size:11.5px!important;}
.plan-spine-shell .timeline-scale{padding:6px 0!important;margin-bottom:6px!important;font-size:10px!important;}
.plan-spine-shell .timeline-list{max-height:calc(100vh - 360px)!important;min-height:280px!important;gap:6px!important;overflow:auto!important;padding-right:6px!important;}
.plan-spine-shell .timeline-row{grid-template-columns:minmax(250px,330px) 1fr minmax(190px,260px)!important;gap:10px!important;padding:8px 10px!important;border-radius:12px!important;background:#fff!important;}
.plan-spine-shell .timeline-row-meta b{font-size:11px!important;color:#475569!important;}
.plan-spine-shell .timeline-row-meta span{font-size:12.5px!important;}
.plan-spine-shell .timeline-row-meta small{font-size:10.5px!important;}
.plan-spine-shell .timeline-track{height:24px!important;background:linear-gradient(90deg,#f8fafc,#eef6ff)!important;}
.plan-spine-shell .timeline-bar{top:3px!important;height:16px!important;font-size:9.5px!important;}
.plan-spine-shell .timeline-row-flags{font-size:10.5px!important;gap:4px!important;}
.plan-spine-shell .timeline-row:hover{transform:none!important;background:#f8fbff!important;box-shadow:0 8px 18px rgba(15,23,42,.07)!important;}

/* Tree view: reduce giant blank whitespace. */
.plan-spine-shell .plan-spine-tree{gap:10px!important;}
.plan-spine-shell .plan-tree-card{padding:10px 12px!important;border-radius:14px!important;box-shadow:0 6px 18px rgba(15,23,42,.04)!important;}
.plan-spine-shell .plan-tree-head{padding-bottom:7px!important;}
.plan-spine-shell .plan-tree-phase{grid-template-columns:minmax(210px,1.2fr) 130px 72px!important;min-height:34px!important;padding:6px 0!important;}
.plan-spine-shell .plan-tree-phase b{font-size:12px!important;}
.plan-spine-shell .plan-tree-phase span{font-size:11px!important;}

/* Tables: stop text collision and keep important columns readable. */
.plan-spine-shell .table-wrap{border-radius:14px!important;border:1px solid var(--ps-border)!important;overflow:auto!important;background:#fff!important;}
.plan-spine-shell .elegant-table table,
.plan-spine-shell .table-wrap table{min-width:1120px!important;border-collapse:separate!important;border-spacing:0!important;table-layout:auto!important;}
.plan-spine-shell .table-wrap th{position:sticky!important;top:0!important;z-index:3!important;background:#f8fafc!important;color:#64748b!important;font-size:11px!important;letter-spacing:.03em!important;text-transform:uppercase!important;padding:10px 12px!important;white-space:nowrap!important;border-bottom:1px solid #e5edf5!important;}
.plan-spine-shell .table-wrap td{font-size:12px!important;padding:10px 12px!important;vertical-align:middle!important;white-space:nowrap!important;max-width:260px!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.plan-spine-shell .table-wrap td.work{white-space:normal!important;min-width:260px!important;max-width:420px!important;line-height:1.3!important;}
.plan-spine-shell .table-wrap tbody tr:nth-child(even){background:#f8fbff!important;}
.plan-spine-shell .table-wrap tbody tr:hover{background:#eef6ff!important;}
.plan-spine-shell .table-wrap .secondary.mini{height:30px!important;padding:5px 10px!important;border-radius:999px!important;}

/* Evidence queue and drawer polish. */
.plan-spine-shell .plan-review-queue{padding:14px!important;border-radius:16px!important;}
.plan-detail-drawer{width:min(680px,92vw)!important;padding:16px!important;}
.plan-detail-drawer .drawer-section{border:1px solid #e5edf5!important;border-radius:14px!important;padding:10px 12px!important;margin:10px 0!important;background:#fff!important;}
.plan-detail-drawer .drawer-section h4{font-size:13px!important;margin:0 0 8px!important;color:#0f172a!important;}
.plan-detail-drawer .drawer-row{gap:8px!important;padding:8px 0!important;border-bottom:1px dashed #e5edf5!important;}
.plan-detail-drawer .drawer-row:last-child{border-bottom:0!important;}

@media(max-width:1280px){
  .plan-spine-shell .tree-summary-grid{grid-template-columns:repeat(3,minmax(140px,1fr))!important;}
  .plan-spine-shell .release-board-kpis{grid-template-columns:repeat(3,minmax(140px,1fr))!important;}
  .plan-spine-shell .plan-spine-filters{grid-template-columns:1fr 1fr 1fr!important;}
}
@media(max-width:900px){
  .plan-spine-shell .tree-summary-grid{grid-template-columns:repeat(2,minmax(130px,1fr))!important;}
  .plan-spine-shell .release-board-kpis{grid-template-columns:repeat(2,minmax(130px,1fr))!important;}
  .plan-spine-shell .plan-spine-filters{grid-template-columns:1fr!important;}
  .plan-spine-shell .timeline-row{grid-template-columns:1fr!important;}
}

/* V31.19.31.6: Enterprise Plan Spine performance and business-screen cleanup */
.plan-spine-shell .plan-spine-readiness{display:none!important;}
.plan-spine-shell .inline-loading-note{
  margin:6px 0 8px; padding:8px 12px; border:1px solid #dbeafe; background:#eff6ff; color:#1e3a8a;
  border-radius:12px; font-size:12px; font-weight:700;
}
.plan-spine-shell .page-hero .hero-actions .primary.small-btn{display:none!important;}
.plan-spine-shell .tree-summary-grid{grid-template-columns:repeat(6,minmax(132px,1fr))!important;}
.plan-spine-shell .tree-summary-grid .tree-summary-card{min-height:74px!important;}
.plan-spine-shell .release-board-kpis .tree-summary-card{min-height:72px!important;}
.plan-spine-shell .table-wrap table{table-layout:fixed!important;}
.plan-spine-shell .table-wrap td.work{white-space:normal!important;line-height:1.25!important;}
.plan-spine-shell .table-wrap th,
.plan-spine-shell .table-wrap td{overflow:hidden;text-overflow:ellipsis;}

/* V31.20.1 — Plan Spine shell cleanup: elegant summary-first execution board */
.plan-spine-shell{
  background:linear-gradient(180deg,#f7fbff 0%,#f8fafc 42%,#ffffff 100%);
  padding-bottom:32px;
}
.plan-spine-shell .page-hero{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(15,23,42,.08);
  background:
    radial-gradient(circle at 8% 20%,rgba(14,165,233,.18),transparent 28%),
    radial-gradient(circle at 92% 10%,rgba(16,185,129,.12),transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,246,255,.88));
  box-shadow:0 18px 48px rgba(15,23,42,.08);
  border-radius:26px;
  align-items:center;
}
.plan-hero-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:5px 11px;
  border-radius:999px;
  background:#e0f2fe;
  color:#0369a1;
  font-weight:800;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.plan-spine-shell .page-hero h2{
  font-size:30px;
  letter-spacing:-.04em;
  color:#0f172a;
  margin:0 0 8px;
}
.plan-spine-shell .page-hero p{
  max-width:820px;
  color:#475569;
  line-height:1.55;
}
.plan-journey-strip{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  margin:12px 0 16px;
}
.plan-journey-step{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:54px;
  padding:10px 12px;
  border-radius:18px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(148,163,184,.20);
  box-shadow:0 8px 22px rgba(15,23,42,.045);
}
.plan-journey-step span{
  width:28px;height:28px;border-radius:10px;
  display:grid;place-items:center;
  background:#0f172a;color:#fff;font-size:11px;font-weight:800;
}
.plan-journey-step b{font-size:12px;color:#1e293b;line-height:1.2;}
.plan-spine-shell .tree-summary-grid{
  grid-template-columns:repeat(6,minmax(150px,1fr));
  gap:10px;
  margin-bottom:14px;
}
.plan-spine-shell .tree-summary-card,
.plan-spine-shell .summary-card{
  border-radius:20px!important;
  border:1px solid rgba(148,163,184,.18)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.045)!important;
}
.plan-spine-filters{
  position:sticky;
  top:0;
  z-index:16;
  display:grid;
  grid-template-columns:minmax(260px,1.8fr) repeat(5,minmax(130px,1fr));
  gap:10px;
  padding:12px;
  margin:10px 0 12px;
  border:1px solid rgba(148,163,184,.20);
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);
  border-radius:20px;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
}
.plan-spine-filters input,
.plan-spine-filters select{
  height:40px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,.35);
  background:#fff;
  font-size:13px;
  padding:0 12px;
}
.plan-primary-tabs{
  position:sticky;
  top:72px;
  z-index:15;
  display:flex!important;
  gap:8px!important;
  overflow:auto;
  padding:10px!important;
  border-radius:20px!important;
  background:rgba(248,250,252,.95)!important;
  border:1px solid rgba(148,163,184,.18)!important;
  box-shadow:0 10px 22px rgba(15,23,42,.05);
}
.plan-primary-tabs button{
  white-space:nowrap;
  border-radius:999px!important;
  padding:8px 13px!important;
  font-size:12px!important;
}
.release-plan-board{
  border-radius:26px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  background:#ffffff!important;
  box-shadow:0 18px 44px rgba(15,23,42,.07)!important;
  padding:16px!important;
}
.release-board-head{
  border-bottom:1px solid rgba(148,163,184,.18);
  padding-bottom:12px;
  margin-bottom:12px;
}
.release-board-head h3{letter-spacing:-.025em;color:#0f172a;}
.release-board-quickfilters{
  display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px;
}
.release-board-quickfilters button{
  border:1px solid rgba(148,163,184,.26);
  background:#fff;
  border-radius:999px;
  padding:7px 12px;
  font-weight:700;
  color:#475569;
}
.release-board-quickfilters button.active{
  background:#0f172a;color:#fff;border-color:#0f172a;
}
.timeline-scale{
  margin-left:320px;
  padding:0 20px 6px;
  color:#94a3b8;
  font-size:11px;
  letter-spacing:.04em;
}
.timeline-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.timeline-row{
  display:grid!important;
  grid-template-columns:300px minmax(280px,1fr) 270px;
  gap:14px;
  align-items:center;
  padding:12px 14px!important;
  min-height:64px;
  border-radius:18px!important;
  border:1px solid rgba(148,163,184,.18)!important;
  background:linear-gradient(180deg,#fff,#fbfdff)!important;
  box-shadow:0 6px 18px rgba(15,23,42,.035);
  cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.timeline-row:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(15,23,42,.08);
  border-color:rgba(14,165,233,.35)!important;
}
.timeline-row-meta b{font-size:12px;color:#0f172a;display:block;margin-bottom:3px;}
.timeline-row-meta span{font-size:13px;color:#334155;font-weight:700;display:block;line-height:1.25;}
.timeline-row-meta small{font-size:11px;color:#64748b;}
.timeline-track{
  height:18px;
  border-radius:999px;
  background:#edf2f7;
  overflow:hidden;
  position:relative;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.06);
}
.timeline-bar{
  top:3px!important;
  height:12px!important;
  border-radius:999px!important;
  box-shadow:0 4px 10px rgba(15,23,42,.16);
}
.timeline-row-flags{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;font-size:11px;color:#64748b;}
.plan-page-control{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin:12px 0 4px;
  padding:10px 12px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.20);
  color:#475569;
  font-size:12px;
  font-weight:700;
}
.plan-page-control div{display:flex;gap:8px;}
.plan-page-control button:disabled{opacity:.42;cursor:not-allowed;}
.inline-loading-note{
  border-radius:16px!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
  border:1px solid #bfdbfe!important;
  padding:10px 12px!important;
  font-weight:800;
}
.plan-spine-shell .table-wrap.elegant-table{
  border-radius:22px;
  border:1px solid rgba(148,163,184,.20);
  box-shadow:0 12px 30px rgba(15,23,42,.045);
}
@media (max-width:1200px){
  .plan-journey-strip{grid-template-columns:repeat(3,1fr);} 
  .plan-spine-filters{grid-template-columns:1fr 1fr;}
  .timeline-row{grid-template-columns:1fr;}
  .timeline-scale{display:none;}
}
@media (max-width:720px){
  .plan-journey-strip{grid-template-columns:1fr;}
  .plan-spine-shell .tree-summary-grid{grid-template-columns:1fr 1fr;}
  .plan-spine-filters{grid-template-columns:1fr;}
}

/* V31.20.2 — Plan Spine visual board finalization */
.plan-spine-shell .page-hero{
  background:linear-gradient(135deg,#ffffff 0%,#f7fbff 48%,#f1fbf8 100%)!important;
  border:1px solid #dbeafe!important;
  box-shadow:0 14px 34px rgba(15,23,42,.055)!important;
}
.plan-spine-shell .plan-journey-strip{
  display:flex!important;gap:8px!important;overflow-x:auto!important;padding:6px 2px 10px!important;margin-bottom:4px!important;
}
.plan-spine-shell .plan-journey-step{
  min-width:138px!important;background:#fff!important;border:1px solid #e5edf5!important;border-radius:14px!important;padding:8px 10px!important;box-shadow:0 6px 18px rgba(15,23,42,.035)!important;
}
.plan-spine-shell .plan-journey-step span{background:#0f766e!important;color:#fff!important;width:22px!important;height:22px!important;border-radius:999px!important;display:inline-grid!important;place-items:center!important;font-size:10px!important;margin-right:7px!important;}
.plan-spine-shell .plan-journey-step b{font-size:11.5px!important;color:#0f172a!important;white-space:nowrap!important;}
.release-board-final{
  padding:0!important;border:1px solid #dbe7f2!important;border-radius:20px!important;background:#f8fafc!important;box-shadow:0 18px 42px rgba(15,23,42,.075)!important;overflow:hidden!important;
}
.release-board-final .release-board-head.final{
  padding:16px 18px 12px!important;background:linear-gradient(135deg,#ffffff,#f6fbff)!important;border-bottom:1px solid #e5edf5!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;
}
.release-board-final .release-board-head h3{font-size:20px!important;margin:2px 0 4px!important;color:#0f172a!important;letter-spacing:-.02em!important;}
.release-board-final .release-board-head p{font-size:12.5px!important;color:#64748b!important;margin:0!important;}
.release-board-command{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:10px 14px!important;background:#fff!important;border-bottom:1px solid #e5edf5!important;}
.release-board-count{display:flex!important;align-items:baseline!important;gap:6px!important;color:#64748b!important;font-size:12px!important;}
.release-board-count b{font-size:18px!important;color:#0f766e!important;}
.release-board-kpis.compact{padding:10px 14px!important;background:#fff!important;border-bottom:1px solid #e5edf5!important;margin:0!important;}
.gantt-board{background:#fff!important;}
.gantt-header{display:grid!important;grid-template-columns:minmax(390px,34%) 1fr!important;position:sticky!important;top:48px!important;z-index:20!important;background:rgba(248,250,252,.98)!important;border-bottom:1px solid #dbe7f2!important;backdrop-filter:blur(8px)!important;}
.gantt-left-head{padding:10px 14px!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.05em!important;color:#64748b!important;font-weight:800!important;border-right:1px solid #dbe7f2!important;}
.gantt-scale{display:grid!important;grid-template-columns:repeat(5,1fr)!important;align-items:center!important;min-height:38px!important;background:repeating-linear-gradient(90deg,#f8fafc 0,#f8fafc calc(20% - 1px),#e5edf5 calc(20% - 1px),#e5edf5 20%)!important;}
.gantt-scale span{font-size:11px!important;color:#64748b!important;text-align:center!important;font-weight:700!important;}
.gantt-list{max-height:calc(100vh - 415px)!important;min-height:360px!important;overflow:auto!important;background:#fff!important;}
.gantt-row{display:grid!important;grid-template-columns:minmax(390px,34%) 1fr!important;min-height:54px!important;border-bottom:1px solid #edf2f7!important;cursor:pointer!important;transition:background .12s ease, box-shadow .12s ease!important;}
.gantt-row:hover{background:#f7fbff!important;box-shadow:inset 3px 0 0 #0f766e!important;}
.gantt-row.type-wbs{background:#fbfdff!important;}
.gantt-row.type-wbs .gantt-left{font-weight:800!important;}
.gantt-row.type-phase .gantt-left{background:#fcfffd!important;}
.gantt-left{display:flex!important;gap:10px!important;align-items:flex-start!important;padding:9px 12px 9px calc(12px + (var(--indent,0) * 18px))!important;border-right:1px solid #edf2f7!important;min-width:0!important;}
.gantt-icon{flex:0 0 22px!important;width:22px!important;height:22px!important;border-radius:999px!important;display:grid!important;place-items:center!important;background:#eef6ff!important;color:#0f766e!important;font-size:12px!important;font-weight:900!important;margin-top:1px!important;}
.gantt-title{min-width:0!important;flex:1!important;}
.gantt-title-line{display:flex!important;align-items:baseline!important;gap:8px!important;min-width:0!important;}
.gantt-title-line b{font-size:12px!important;color:#0f172a!important;white-space:nowrap!important;}
.gantt-title-line span{font-size:13px!important;color:#243043!important;font-weight:700!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.gantt-meta{display:flex!important;gap:5px!important;flex-wrap:wrap!important;margin-top:4px!important;}
.gantt-meta span{font-size:10px!important;color:#64748b!important;background:#f1f5f9!important;border:1px solid #e5edf5!important;border-radius:999px!important;padding:2px 7px!important;max-width:150px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.gantt-right{display:grid!important;grid-template-columns:1fr minmax(250px,32%)!important;gap:10px!important;align-items:center!important;padding:8px 12px!important;min-width:0!important;}
.gantt-track{height:28px!important;border-radius:999px!important;background:repeating-linear-gradient(90deg,#f8fafc 0,#f8fafc calc(20% - 1px),#e5edf5 calc(20% - 1px),#e5edf5 20%)!important;position:relative!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px #e5edf5!important;}
.gantt-today-line{position:absolute!important;left:38%!important;top:0!important;bottom:0!important;width:2px!important;background:rgba(15,118,110,.26)!important;z-index:2!important;}
.gantt-bar{position:absolute!important;top:5px!important;height:18px!important;border-radius:999px!important;min-width:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font-size:10px!important;font-weight:900!important;box-shadow:0 7px 14px rgba(15,23,42,.13)!important;z-index:3!important;}
.gantt-bar.blue{background:#2563eb!important;}.gantt-bar.gray{background:#64748b!important;}.gantt-bar.green{background:#16a34a!important;}.gantt-bar.amber{background:#d97706!important;}.gantt-bar.red{background:#dc2626!important;}
.gantt-flags{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:wrap!important;min-width:0!important;}
.gantt-flags .soft-chip,.gantt-flags .date-chip{font-size:10.5px!important;color:#475569!important;background:#f8fafc!important;border:1px solid #e5edf5!important;border-radius:999px!important;padding:3px 8px!important;white-space:nowrap!important;}
.gantt-row.rag-red{box-shadow:inset 2px 0 0 rgba(220,38,38,.7)!important;}.gantt-row.rag-amber{box-shadow:inset 2px 0 0 rgba(217,119,6,.7)!important;}.gantt-row.rag-green{box-shadow:inset 2px 0 0 rgba(22,163,74,.7)!important;}.gantt-row.rag-blue{box-shadow:inset 2px 0 0 rgba(37,99,235,.7)!important;}.gantt-row.rag-gray{box-shadow:inset 2px 0 0 rgba(100,116,139,.55)!important;}
.plan-detail-drawer{border-radius:22px 0 0 22px!important;background:linear-gradient(180deg,#ffffff,#fbfdff)!important;}
.plan-detail-drawer-head{position:sticky!important;top:0!important;background:rgba(255,255,255,.96)!important;z-index:2!important;backdrop-filter:blur(10px)!important;}
@media(max-width:1100px){.gantt-header,.gantt-row{grid-template-columns:minmax(300px,42%) 1fr!important}.gantt-right{grid-template-columns:1fr!important}.gantt-flags{justify-content:flex-start!important}.gantt-list{max-height:none!important}.release-board-final .release-board-head.final{flex-direction:column!important}.release-board-command{flex-direction:column!important;align-items:flex-start!important}}
@media(max-width:760px){.gantt-header{display:none!important}.gantt-row{display:block!important}.gantt-left{border-right:0!important}.gantt-right{padding:0 12px 12px!important}.gantt-title-line{display:block!important}.gantt-title-line span{display:block!important}.gantt-meta span{max-width:100%!important}.release-board-kpis.compact{display:none!important}}


/* V31.20.3 — Plan Drawer Inline Execution Actions */
.inline-execution-panel {
  background: linear-gradient(135deg, rgba(248,250,252,.98), rgba(239,246,255,.96));
  border: 1px solid rgba(148,163,184,.32);
  border-radius: 18px;
  box-shadow: 0 16px 38px rgba(15,23,42,.07);
}
.drawer-section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}
.drawer-section-title h4 { margin: 0; letter-spacing: -0.01em; }
.drawer-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(240px, 1fr));
  gap: 12px;
}
.drawer-action-card {
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(203,213,225,.72);
  border-radius: 16px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  min-width: 0;
}
.drawer-action-card b {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #334155;
}
.drawer-action-card input,
.drawer-action-card select,
.drawer-action-card textarea {
  width: 100%;
  border: 1px solid rgba(148,163,184,.65);
  border-radius: 11px;
  padding: 9px 10px;
  font-size: 13px;
  background: #fff;
  color: #0f172a;
  outline: none;
}
.drawer-action-card textarea { min-height: 74px; resize: vertical; }
.drawer-action-card input:focus,
.drawer-action-card select:focus,
.drawer-action-card textarea:focus {
  border-color: #2563eb;
  box-shadow: 0 0 0 3px rgba(37,99,235,.12);
}
.drawer-button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.drawer-progress-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
}
@media (max-width: 980px) {
  .drawer-action-grid { grid-template-columns: 1fr; }
  .drawer-section-title { flex-direction: column; }
}

/* V31.20.4 - real governed work records shown in plan drawer */
.plan-workmarks-section .drawer-row.workmark{
  border:1px solid rgba(37,99,235,.16);
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  border-radius:14px;
  padding:12px;
  margin:8px 0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.plan-workmarks-section .drawer-row.workmark b{color:#0f172a;font-weight:800;}
.plan-workmarks-section .drawer-row.workmark span{font-size:12px;color:#64748b;}
.plan-workmarks-section .drawer-button-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.empty-state.compact{padding:12px;border-radius:12px;border:1px dashed #cbd5e1;background:#f8fafc;color:#64748b;font-size:13px;}

/* V31.20.6 — WBS Grid expandable plan list + phase/subphase drawer alignment */
.wbs-grid-screen{display:flex;flex-direction:column;gap:14px;min-width:0}
.wbs-grid-titlebar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid #d8e7f2;border-radius:18px;background:linear-gradient(135deg,#ffffff,#f4fbff);box-shadow:0 14px 34px rgba(15,44,76,.08)}
.wbs-grid-titlebar h3{margin:0 0 4px;font-size:22px;color:#102033}.wbs-grid-titlebar p{margin:0;color:#62738a;font-size:13px}
.wbs-grid-table-wrap{border:1px solid #cfdfeb;border-radius:18px;background:#fff;box-shadow:0 18px 36px rgba(15,44,76,.08);overflow:auto}
.wbs-grid-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;min-width:980px}
.wbs-grid-table th{position:sticky;top:0;z-index:2;text-align:left;background:#f6e7f3;color:#182235;border-bottom:1px solid #b64ba4;padding:12px 14px;font-weight:800}
.wbs-grid-table td{padding:12px 14px;border-bottom:1px solid #ecd4e8;vertical-align:middle;color:#162335}
.wbs-grid-main-row{cursor:pointer;background:#fff;transition:.15s ease}.wbs-grid-main-row:nth-child(4n+1){background:#fcf2fa}.wbs-grid-main-row:hover,.wbs-grid-main-row.expanded{background:#ecfbf8;box-shadow:inset 4px 0 0 #0f9f8b}.wbs-grid-main-row td:first-child{font-size:15px}.wbs-grid-desc{font-weight:650;max-width:420px}
.wbs-grid-expanded-row>td{padding:0!important;background:#f9fbfd;border-bottom:1px solid #b7d4e8!important}
.wbs-expansion-card{padding:18px;background:linear-gradient(180deg,#ffffff,#f7fbff);border-left:4px solid #0f9f8b}
.wbs-expansion-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px;border-bottom:1px solid #dbe9f4;padding-bottom:12px}.wbs-expansion-head h3{margin:0 0 6px;font-size:19px;color:#12233a}.wbs-expansion-head p{margin:0;color:#526882;font-weight:700}
.wbs-feature-phase-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(560px,1.4fr);gap:18px;align-items:start}.wbs-feature-panel,.wbs-phase-panel{background:#fff;border:1px solid #d7e6f0;border-radius:16px;padding:14px;box-shadow:0 10px 24px rgba(15,44,76,.06)}.wbs-feature-panel h4,.wbs-phase-panel h4{margin:0 0 12px;color:#12233a;font-size:15px}
.wbs-feature-line{display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:center;padding:8px 0;border-bottom:1px dashed #e2edf5;font-weight:650}.wbs-feature-line:last-child{border-bottom:0}.wbs-feature-actions{display:inline-flex;gap:5px}.wbs-feature-state{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:12px;font-weight:900}.wbs-feature-state.ok{background:#dcfce7;color:#16803b}.wbs-feature-state.pending{background:#fee2e2;color:#b91c1c}.wbs-phase-table table{min-width:760px}.wbs-phase-table th{background:#f6e7f3;color:#162335}.wbs-phase-table tr{cursor:pointer}.wbs-phase-table tr:hover{background:#f3fbff}.status-soft{display:inline-flex;margin-left:6px;padding:3px 8px;border-radius:999px;background:#eef4fb;color:#38516c;font-size:11px;font-weight:750}.icon-only-btn{border:1px solid #d8e7f2;background:#fff;border-radius:10px;padding:6px 9px;margin-left:6px;cursor:pointer;color:#0f5568;font-weight:800}.icon-only-btn:hover{background:#eefcf8;border-color:#0f9f8b}.drawer-scope-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.drawer-scope-card{border:1px solid #dbe8f2;border-radius:14px;background:#fff;padding:12px;min-width:0}.drawer-scope-card h5{margin:0 0 10px;font-size:12px;letter-spacing:.08em;color:#64748b}.drawer-scope-line{border-top:1px solid #eef4f8;padding:8px 0}.drawer-scope-line:first-of-type{border-top:0}.drawer-scope-line span{display:block;color:#172336;font-weight:650}.drawer-scope-line small{display:block;color:#60758c;margin:4px 0}.scope-board-section{background:linear-gradient(180deg,#f9fcff,#fff)}
@media(max-width:1100px){.wbs-feature-phase-layout{grid-template-columns:1fr}.drawer-scope-columns{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.wbs-grid-titlebar{display:block}.drawer-scope-columns{grid-template-columns:1fr}.wbs-grid-table{min-width:820px}}


/* V31.20.8 Evidence Workspace Finalization */
.plan-evidence-workspace{background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:18px;box-shadow:0 14px 40px rgba(15,23,42,.06)}
.evidence-kpi-strip{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:14px 0}
.evidence-workspace-guidance{display:flex;gap:10px;align-items:center;background:#eef7ff;border:1px solid #cfe8ff;color:#184e77;border-radius:14px;padding:11px 14px;margin:10px 0 14px 0;font-size:13px;line-height:1.4}
.evidence-workspace-table table{min-width:1120px}.evidence-workspace-table td small{display:block;color:#64748b;margin-top:3px}.evidence-provider-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:700;background:#f1f5f9;color:#334155;margin-bottom:4px}.evidence-provider-pill.azure{background:#e0f2fe;color:#075985}.evidence-provider-pill.local{background:#fff7ed;color:#9a3412}.evidence-provider-pill.none{background:#f1f5f9;color:#64748b}.storage-health-mini{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#64748b;font-size:12px}.evidence-review-remarks{color:#991b1b!important;background:#fef2f2;border-radius:8px;padding:3px 6px;margin-top:4px}.plan-evidence-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.plan-evidence-actions .mini{margin:0}.plan-upload-btn input{display:none!important}


/* V31.20.9 compact drawer usability hotfix */
.compact-plan-drawer{width:min(620px,92vw)!important;padding:12px 14px!important;}
.compact-plan-drawer .plan-detail-drawer-head{padding-bottom:8px!important;margin-bottom:8px!important;}
.compact-plan-drawer .plan-detail-drawer-head h3{font-size:1.02rem!important;margin:1px 0 2px!important;line-height:1.2!important;}
.compact-plan-drawer .plan-detail-drawer-head p{font-size:.76rem!important;}
.compact-plan-drawer .drawer-metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin-bottom:8px!important;}
.compact-plan-drawer .drawer-metrics>div{padding:8px 9px!important;border-radius:10px!important;min-height:auto!important;}
.compact-plan-drawer .drawer-metrics span{font-size:10px!important;}
.compact-plan-drawer .drawer-metrics b{font-size:12px!important;line-height:1.2!important;}
.compact-plan-drawer .drawer-metrics small{font-size:10px!important;margin-top:2px!important;}
.compact-plan-drawer .drawer-section{padding:8px 10px!important;margin:8px 0!important;border-radius:12px!important;}
.compact-drawer-title{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-bottom:6px!important;}
.compact-drawer-title h4{margin:0!important;font-size:12px!important;}
.compact-drawer-title .muted{font-size:11px!important;}
.compact-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;}
.compact-actions .drawer-action-card{padding:8px!important;border-radius:12px!important;gap:6px!important;}
.compact-actions .drawer-action-card b{font-size:11px!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#475569!important;}
.compact-actions input,.compact-actions select,.compact-actions textarea{min-height:32px!important;padding:6px 9px!important;font-size:12px!important;border-radius:9px!important;}
.compact-actions textarea{height:54px!important;min-height:54px!important;}
.compact-button-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;}
.compact-actions .mini,.compact-plan-drawer .mini{padding:6px 10px!important;min-height:30px!important;font-size:12px!important;border-radius:10px!important;}
.compact-plan-drawer .drawer-button-row{gap:5px!important;}
.compact-plan-drawer .drawer-progress-row{grid-template-columns:96px 1fr!important;gap:6px!important;margin-top:6px!important;}
.compact-gate-section .drawer-blocker.compact{font-size:11px!important;padding:6px 8px!important;margin:4px 0!important;line-height:1.25!important;}
.compact-more{font-size:11px!important;margin:6px 0 0!important;}
.compact-scope-section .drawer-scope-columns{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;}
.compact-scope-section .drawer-scope-card{padding:8px!important;border-radius:10px!important;}
.compact-scope-section .drawer-scope-card h5{font-size:10px!important;margin-bottom:5px!important;}
.compact-scope-section .drawer-scope-line{padding:5px 0!important;}
.compact-scope-section .drawer-scope-line span{font-size:11px!important;line-height:1.25!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.compact-scope-section .drawer-scope-line small{font-size:10px!important;margin:2px 0 4px!important;}
.compact-evidence-row{grid-template-columns:1fr auto!important;gap:8px!important;padding:7px 0!important;align-items:center!important;}
.compact-evidence-row b{font-size:12px!important;line-height:1.25!important;}
.compact-evidence-row span{font-size:11px!important;color:#64748b!important;}
.compact-evidence-actions{flex-wrap:nowrap!important;gap:5px!important;}
.compact-evidence-actions .mini{white-space:nowrap!important;}
.compact-plan-drawer .drawer-row{padding:6px 0!important;}
.compact-plan-drawer .plan-workmarks-section p.muted{display:none!important;}
.compact-plan-drawer .drawer-comment,.compact-plan-drawer .drawer-event{font-size:11px!important;padding:6px 8px!important;margin:4px 0!important;}
@media(max-width:1100px){.compact-actions{grid-template-columns:1fr!important}.compact-scope-section .drawer-scope-columns{grid-template-columns:1fr 1fr!important}.compact-plan-drawer .drawer-metrics{grid-template-columns:1fr 1fr!important}}
@media(max-width:720px){.compact-plan-drawer{width:100vw!important}.compact-scope-section .drawer-scope-columns{grid-template-columns:1fr!important}.compact-evidence-row{grid-template-columns:1fr!important}.compact-evidence-actions{flex-wrap:wrap!important}}


/* V31.20.10 — Plan Spine screen taxonomy cleanup */
.plan-business-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
  background: rgba(248,250,252,.92);
  border: 1px solid #e5edf5;
  border-radius: 18px;
  margin: 10px 0 8px;
}
.plan-business-tabs button {
  min-width: auto;
  padding: 9px 14px;
  border-radius: 999px;
  font-weight: 800;
}
.plan-business-tabs button.active {
  background: #0f766e;
  color: #fff;
  border-color: #0f766e;
  box-shadow: 0 10px 18px rgba(15,118,110,.16);
}
.plan-board-view-switch {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 8px 12px;
  margin: 0 0 12px;
  border: 1px dashed #cbd5e1;
  border-radius: 14px;
  background: #ffffff;
}
.plan-board-view-switch span {
  color: #475569;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
  margin-right: 4px;
}
.plan-board-view-switch button {
  border: 1px solid #dbe6ee;
  background: #f8fafc;
  color: #233044;
  border-radius: 999px;
  padding: 7px 11px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.plan-board-view-switch button.active {
  background: #e0f2fe;
  color: #075985;
  border-color: #7dd3fc;
}
.plan-board-view-switch small {
  color: #64748b;
  font-size: 12px;
  margin-left: auto;
}
@media (max-width: 900px) {
  .plan-board-view-switch small { width: 100%; margin-left: 0; }
  .plan-business-tabs { overflow-x: auto; flex-wrap: nowrap; }
}


/* V31.20.11 tuple-bound document upload */
.tuple-upload-btn{position:relative;overflow:hidden;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;}
.tuple-document-section{background:linear-gradient(180deg,#ffffff,#f8fbff);border:1px solid #d8e4f2;border-radius:14px;padding:10px 12px;margin:8px 0;}
.tuple-document-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px dashed #cbd8e6;border-radius:12px;padding:8px 10px;background:#fbfdff;}
.tuple-document-row b{display:block;font-size:13px;color:#102033;max-width:340px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tuple-document-row span{display:block;font-size:11px;color:#60708a;margin-top:2px;}
.wbs-grid-table .plan-upload-btn,.wbs-phase-table .plan-upload-btn{height:28px;padding:4px 10px;}
.wbs-grid-table .secondary.mini[disabled],.wbs-phase-table .secondary.mini[disabled]{opacity:.45;cursor:not-allowed;}


/* V31.20.12 — Compact Plan Workbench header and workspace reclaim
   Removes product-debug version badge + workflow cards and puts key metrics in the header right side. */
.plan-spine-shell.compact-workbench-shell{
  padding-top:8px!important;
  background:linear-gradient(180deg,#f8fbff 0%,#ffffff 56%)!important;
}
.plan-spine-shell.compact-workbench-shell .page-hero.plan-workbench-header{
  display:grid!important;
  grid-template-columns:minmax(220px, .9fr) minmax(520px, 2.1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:9px 12px!important;
  margin:0 0 8px!important;
  min-height:72px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%)!important;
  border:1px solid #dbe7f2!important;
  box-shadow:0 8px 20px rgba(15,23,42,.045)!important;
  overflow:visible!important;
}
.plan-spine-shell.compact-workbench-shell .plan-hero-eyebrow{display:none!important;}
.plan-spine-shell.compact-workbench-shell .plan-workbench-title h2{
  font-size:20px!important;
  letter-spacing:-.02em!important;
  margin:0 0 2px!important;
  line-height:1.05!important;
}
.plan-spine-shell.compact-workbench-shell .plan-workbench-title p{
  margin:0!important;
  font-size:11.5px!important;
  color:#64748b!important;
  line-height:1.2!important;
  max-width:none!important;
}
.plan-spine-shell.compact-workbench-shell .plan-header-metrics{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(84px,1fr))!important;
  gap:6px!important;
  align-items:stretch!important;
}
.plan-spine-shell.compact-workbench-shell .plan-header-metric{
  min-height:44px!important;
  padding:6px 8px!important;
  border-radius:11px!important;
  background:#f8fafc!important;
  border:1px solid #e5edf5!important;
  box-shadow:none!important;
}
.plan-spine-shell.compact-workbench-shell .plan-header-metric span{
  display:block!important;
  font-size:9.5px!important;
  line-height:1.1!important;
  color:#64748b!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.plan-spine-shell.compact-workbench-shell .plan-header-metric b{
  display:block!important;
  margin-top:3px!important;
  font-size:16px!important;
  line-height:1!important;
  color:#0f172a!important;
}
.plan-spine-shell.compact-workbench-shell .plan-header-metric.danger b{color:#b91c1c!important;}
.plan-spine-shell.compact-workbench-shell .plan-workbench-actions{
  display:flex!important;
  gap:6px!important;
  justify-content:flex-end!important;
}
.plan-spine-shell.compact-workbench-shell .plan-workbench-actions .small-btn{
  height:30px!important;
  padding:5px 10px!important;
  border-radius:999px!important;
  font-size:11.5px!important;
}
.plan-spine-shell.compact-workbench-shell .plan-journey-strip{display:none!important;}
.plan-spine-shell.compact-workbench-shell > .tree-summary-grid{display:none!important;}
.plan-spine-shell.compact-workbench-shell .plan-spine-filters{
  position:sticky!important;
  top:0!important;
  z-index:30!important;
  grid-template-columns:minmax(280px,1.5fr) repeat(5,minmax(110px,.75fr))!important;
  gap:6px!important;
  padding:8px!important;
  margin:6px 0 6px!important;
  border-radius:13px!important;
  box-shadow:0 6px 16px rgba(15,23,42,.04)!important;
}
.plan-spine-shell.compact-workbench-shell .plan-spine-filters input,
.plan-spine-shell.compact-workbench-shell .plan-spine-filters select{
  height:32px!important;
  min-height:32px!important;
  border-radius:10px!important;
  font-size:12px!important;
  padding:5px 9px!important;
}
.plan-spine-shell.compact-workbench-shell .plan-primary-tabs{
  top:49px!important;
  padding:6px!important;
  margin:6px 0 8px!important;
  border-radius:13px!important;
  gap:5px!important;
  box-shadow:0 6px 14px rgba(15,23,42,.04)!important;
}
.plan-spine-shell.compact-workbench-shell .plan-primary-tabs button{
  height:29px!important;
  padding:5px 10px!important;
  border-radius:10px!important;
  font-size:11.5px!important;
}
.plan-spine-shell.compact-workbench-shell .plan-board-view-switch{
  min-height:34px!important;
  padding:5px 7px!important;
  margin:0 0 7px!important;
  gap:5px!important;
  border-radius:12px!important;
}
.plan-spine-shell.compact-workbench-shell .plan-board-view-switch button{
  height:26px!important;
  padding:4px 9px!important;
  font-size:11px!important;
}
.plan-spine-shell.compact-workbench-shell .plan-board-view-switch small{display:none!important;}
.plan-spine-shell.compact-workbench-shell .wbs-grid-titlebar{
  padding:8px 10px!important;
  min-height:44px!important;
}
.plan-spine-shell.compact-workbench-shell .wbs-grid-titlebar h3{font-size:15px!important;margin:0!important;}
.plan-spine-shell.compact-workbench-shell .wbs-grid-titlebar p{display:none!important;}
.plan-spine-shell.compact-workbench-shell .wbs-grid-table th{padding:8px 10px!important;}
.plan-spine-shell.compact-workbench-shell .wbs-grid-table td{padding:8px 10px!important;}
.plan-spine-shell.compact-workbench-shell .table-wrap{max-height:calc(100vh - 260px)!important;}
.plan-spine-shell.compact-workbench-shell .gantt-list{max-height:calc(100vh - 270px)!important;min-height:420px!important;}
.plan-spine-shell.compact-workbench-shell .plan-review-queue{padding:10px!important;border-radius:14px!important;}
.plan-spine-shell.compact-workbench-shell .plan-review-queue h3{font-size:17px!important;margin-bottom:2px!important;}
.plan-spine-shell.compact-workbench-shell .release-plan-board{padding:10px!important;border-radius:16px!important;}
@media (max-width:1320px){
  .plan-spine-shell.compact-workbench-shell .page-hero.plan-workbench-header{grid-template-columns:1fr!important;}
  .plan-spine-shell.compact-workbench-shell .plan-header-metrics{grid-template-columns:repeat(3,minmax(90px,1fr))!important;}
  .plan-spine-shell.compact-workbench-shell .plan-workbench-actions{justify-content:flex-start!important;}
}
@media (max-width:760px){
  .plan-spine-shell.compact-workbench-shell .plan-header-metrics{grid-template-columns:repeat(2,minmax(90px,1fr))!important;}
  .plan-spine-shell.compact-workbench-shell .plan-spine-filters{grid-template-columns:1fr!important;}
}


/* V31.20.14 — ServiceNow-like compact enterprise workspace standardization */
:root{
  --sn-bg:#f4f6f8;
  --sn-surface:#ffffff;
  --sn-border:#d9e1ea;
  --sn-border-soft:#e8edf3;
  --sn-text:#1f2a37;
  --sn-muted:#607089;
  --sn-teal:#0b7f77;
  --sn-teal-dark:#075f59;
  --sn-blue:#2563eb;
  --sn-danger:#b42318;
  --sn-warn:#b54708;
  --sn-radius:8px;
  --sn-shadow:0 1px 2px rgba(16,24,40,.06);
}
body{background:var(--sn-bg)!important;color:var(--sn-text);}
.main-content,.content-area,.page-content{background:var(--sn-bg)!important;}
.page-shell{padding:10px 14px!important;gap:10px!important;}
.page-shell.compact-workbench-shell{max-width:none!important;}
.page-hero,.panel,.card,.metric-card,.tree-summary-card,.release-plan-board,.wbs-grid-titlebar,.sn-workspace-card{
  border:1px solid var(--sn-border)!important;
  border-radius:var(--sn-radius)!important;
  background:var(--sn-surface)!important;
  box-shadow:var(--sn-shadow)!important;
}
.page-hero{padding:10px 12px!important;margin-bottom:8px!important;min-height:0!important;}
.page-hero h1,.page-hero h2,.page-hero h3{margin:0!important;font-size:18px!important;line-height:1.2!important;color:var(--sn-text)!important;}
.page-hero p{margin:2px 0 0!important;font-size:12px!important;color:var(--sn-muted)!important;}
.plan-workbench-header{display:grid!important;grid-template-columns:minmax(230px,1fr) auto auto!important;align-items:center!important;gap:10px!important;padding:8px 12px!important;background:#fff!important;border-color:#d7e0ea!important;}
.plan-workbench-title h2{font-size:18px!important;margin:0!important;}
.plan-workbench-title p{font-size:12px!important;white-space:nowrap!important;}
.plan-header-metrics{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
.plan-header-metric{min-width:74px!important;height:36px!important;padding:5px 8px!important;border:1px solid var(--sn-border-soft)!important;border-radius:7px!important;background:#f8fafc!important;box-shadow:none!important;}
.plan-header-metric span{display:block!important;font-size:9px!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:var(--sn-muted)!important;line-height:1.1!important;}
.plan-header-metric b{font-size:14px!important;line-height:1.1!important;color:var(--sn-text)!important;}
.plan-header-metric.danger{background:#fff7f7!important;border-color:#ffd7d7!important;}
.plan-workbench-actions{display:flex!important;gap:6px!important;}
.plan-workbench-actions .small-btn,.small-btn{height:30px!important;padding:0 10px!important;border-radius:7px!important;font-size:12px!important;}
.filter-bar,.plan-filter-bar,.plan-spine-filterbar{background:#fff!important;border:1px solid var(--sn-border)!important;border-radius:var(--sn-radius)!important;padding:6px!important;margin:0!important;box-shadow:var(--sn-shadow)!important;}
.filter-bar input,.filter-bar select,.plan-spine-filterbar input,.plan-spine-filterbar select{height:32px!important;border-radius:7px!important;border:1px solid var(--sn-border)!important;background:#fff!important;font-size:12px!important;padding:0 10px!important;}
.rbac-mode-tabs,.plan-primary-tabs,.plan-business-tabs,.plan-board-view-switch{background:#fff!important;border:1px solid var(--sn-border)!important;border-radius:var(--sn-radius)!important;padding:5px!important;gap:5px!important;margin:0 0 8px!important;box-shadow:var(--sn-shadow)!important;}
.rbac-mode-tabs button,.plan-board-view-switch button{height:30px!important;padding:0 12px!important;border-radius:7px!important;border:1px solid transparent!important;background:#f3f6fa!important;color:#334155!important;font-size:12px!important;font-weight:600!important;}
.rbac-mode-tabs button.active,.plan-board-view-switch button.active{background:var(--sn-teal)!important;color:#fff!important;border-color:var(--sn-teal)!important;}
.plan-board-view-switch span{font-size:11px!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#475569!important;font-weight:700!important;margin-right:4px!important;}
.plan-board-view-switch small{margin-left:auto!important;color:var(--sn-muted)!important;font-size:11px!important;}
.table-wrap,.elegant-table,.wbs-grid-table-wrap,.sn-table-wrap{background:#fff!important;border:1px solid var(--sn-border)!important;border-radius:var(--sn-radius)!important;box-shadow:var(--sn-shadow)!important;overflow:auto!important;}
.table-wrap table,.elegant-table table,.wbs-grid-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;font-size:12px!important;}
.table-wrap th,.elegant-table th,.wbs-grid-table th{height:30px!important;padding:7px 10px!important;background:#f7f9fb!important;border-bottom:1px solid var(--sn-border-soft)!important;color:#52637a!important;text-transform:uppercase!important;letter-spacing:.045em!important;font-size:10px!important;font-weight:800!important;white-space:nowrap!important;}
.table-wrap td,.elegant-table td,.wbs-grid-table td{height:38px!important;padding:7px 10px!important;border-bottom:1px solid var(--sn-border-soft)!important;vertical-align:middle!important;color:#263548!important;}
.table-wrap tr:hover td,.elegant-table tr:hover td,.wbs-grid-table tr:hover td{background:#f8fbff!important;}
.wbs-grid-screen{display:flex!important;flex-direction:column!important;gap:8px!important;}
.wbs-grid-titlebar{padding:10px 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;}
.wbs-grid-titlebar h3{font-size:18px!important;margin:0!important;}
.wbs-grid-titlebar p{font-size:12px!important;margin:2px 0 0!important;color:var(--sn-muted)!important;}
.status-soft,.soft-chip,.date-chip,.pill,.status-pill{border-radius:999px!important;padding:3px 8px!important;font-size:11px!important;font-weight:700!important;line-height:1.2!important;display:inline-flex!important;align-items:center!important;gap:4px!important;}
.status-soft{background:#eef2f7!important;color:#475569!important;}
.rag-badge,.rag-pill{border-radius:999px!important;padding:3px 8px!important;font-size:11px!important;font-weight:800!important;}
button.secondary,.secondary,button.mini,.mini,.icon-only-btn{border-radius:7px!important;border:1px solid var(--sn-border)!important;background:#f3f6fa!important;color:#263548!important;font-weight:700!important;}
button.secondary:hover,.secondary:hover,button.mini:hover,.mini:hover,.icon-only-btn:hover{background:#e8f0f8!important;border-color:#c7d5e4!important;}
button:not(.secondary):not(.mini):not(.icon-only-btn).active,.primary-btn{background:var(--sn-teal)!important;border-color:var(--sn-teal)!important;color:#fff!important;}
.sn-workspace-card{padding:10px!important;margin:0!important;}
.sn-card-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:8px!important;border-bottom:1px solid var(--sn-border-soft)!important;padding-bottom:8px!important;}
.sn-card-head h3{margin:0!important;font-size:17px!important;color:var(--sn-text)!important;}
.sn-card-head p{margin:2px 0 0!important;font-size:12px!important;color:var(--sn-muted)!important;}
.sn-summary-pills{display:flex!important;gap:6px!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
.sn-summary-pills span{background:#f3f6fa!important;border:1px solid var(--sn-border-soft)!important;border-radius:999px!important;padding:5px 9px!important;font-size:11px!important;color:#475569!important;}
.sn-summary-pills b{color:var(--sn-text)!important;}
.sn-worklist-section{margin:0 0 10px!important;}
.sn-section-title{display:flex!important;justify-content:space-between!important;align-items:center!important;margin:4px 0 5px!important;color:#334155!important;}
.sn-section-title b{font-size:13px!important;text-transform:uppercase!important;letter-spacing:.03em!important;}
.sn-section-title span{font-size:11px!important;color:var(--sn-muted)!important;}
.sn-type-chip{display:inline-flex!important;border-radius:5px!important;background:#eef6ff!important;color:#175cd3!important;padding:2px 6px!important;font-size:10px!important;font-weight:800!important;margin-right:6px!important;}
.sn-work-title b{font-size:13px!important;display:block!important;color:#1f2a37!important;}
.sn-work-title small,.table-wrap small{display:block!important;color:var(--sn-muted)!important;font-size:11px!important;margin-top:2px!important;}
.sn-empty-row{border:1px dashed var(--sn-border)!important;background:#fbfdff!important;border-radius:7px!important;padding:14px!important;color:var(--sn-muted)!important;font-size:12px!important;}
.plan-page-control{background:#fff!important;border:1px solid var(--sn-border)!important;border-radius:var(--sn-radius)!important;padding:7px 10px!important;margin-top:8px!important;box-shadow:var(--sn-shadow)!important;font-size:12px!important;color:var(--sn-muted)!important;}
.plan-spine-tree{display:block!important;gap:8px!important;}
.plan-tree-card{border:1px solid var(--sn-border)!important;border-radius:var(--sn-radius)!important;background:#fff!important;box-shadow:var(--sn-shadow)!important;margin-bottom:8px!important;padding:8px!important;}
.plan-tree-head{padding-bottom:6px!important;margin-bottom:6px!important;border-bottom:1px solid var(--sn-border-soft)!important;}
.plan-tree-phase{min-height:34px!important;padding:6px 8px!important;border-bottom:1px solid var(--sn-border-soft)!important;display:grid!important;grid-template-columns:150px 1fr auto!important;gap:8px!important;align-items:center!important;}
.plan-detail-drawer,.drawer-panel,.plan-drawer{border-left:1px solid var(--sn-border)!important;box-shadow:-8px 0 24px rgba(15,23,42,.14)!important;}
.drawer-section{border:1px solid var(--sn-border-soft)!important;border-radius:var(--sn-radius)!important;background:#fff!important;margin-bottom:8px!important;padding:9px!important;}
.drawer-section h4{margin:0 0 6px!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.04em!important;color:#334155!important;}
.drawer-row{min-height:34px!important;padding:6px 0!important;border-bottom:1px solid var(--sn-border-soft)!important;}
.app-header,.top-header,.header-bar{box-shadow:0 1px 0 var(--sn-border)!important;border-bottom:1px solid var(--sn-border)!important;background:#fff!important;}
.side-nav,.sidebar,.left-nav{background:#071728!important;}
.inline-loading-note{border:1px solid #bee3f8!important;background:#eff8ff!important;border-radius:7px!important;padding:8px 10px!important;color:#175cd3!important;font-size:12px!important;}
@media (max-width: 1180px){
  .plan-workbench-header{grid-template-columns:1fr!important;}
  .plan-header-metrics{justify-content:flex-start!important;}
  .plan-board-view-switch small{display:none!important;}
}


/* === V31.20.18_UX_STABILIZATION_RESET_COMPACT_NAV_AND_WORKBENCH_TEMPLATE: UX stabilization reset / compact enterprise workbench === */
:root {
  --ux-bg:#f6f8fb;
  --ux-panel:#ffffff;
  --ux-border:#d8e2ee;
  --ux-text:#102033;
  --ux-muted:#5d6f86;
  --ux-primary:#087e74;
  --ux-primary-dark:#055f58;
  --ux-radius:12px;
}
body { background:var(--ux-bg) !important; }
.app-main { background:var(--ux-bg) !important; }
.app-header {
  min-height:54px !important;
  height:54px !important;
  padding:6px 14px !important;
  border-bottom:1px solid var(--ux-border) !important;
  box-shadow:0 1px 4px rgba(16,32,51,.06) !important;
  background:rgba(255,255,255,.96) !important;
}
.app-header-left { min-width:0 !important; flex:1 1 auto !important; }
.compact-product-title h1, .app-title h1 {
  font-size:16px !important;
  line-height:18px !important;
  margin:0 !important;
  font-weight:800 !important;
  color:var(--ux-text) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.screen-title-accent { display:none !important; }
.header-breadcrumb { margin-top:2px !important; font-size:11px !important; line-height:14px !important; color:var(--ux-muted) !important; }
.breadcrumb-left { gap:4px !important; }
.breadcrumb-link, .breadcrumb-current, .breadcrumb-filter { font-size:11px !important; }
.app-header-actions { gap:7px !important; flex-shrink:0 !important; }
.header-attendance-control {
  height:34px !important;
  min-width:118px !important;
  padding:3px 6px 3px 8px !important;
  border-radius:10px !important;
}
.header-attendance-label { font-size:9px !important; letter-spacing:.05em !important; }
.header-attendance-clock { font-size:13px !important; line-height:13px !important; }
.header-attendance-btn { height:26px !important; padding:0 10px !important; font-size:11px !important; }
.release-segment-control, .release-segment, .client-switch-button, .favorite-button, .header-chat, .header-bell, .profile-button {
  min-height:34px !important;
  height:34px !important;
}
.release-segment-control { padding:3px !important; }
.release-segment-control .release-label, .release-label { font-size:10px !important; }
.app-content { padding:10px 14px 10px !important; }
.frame-footer, .footer { margin-top:8px !important; padding:7px !important; font-size:11px !important; }

/* Sidebar: strict, readable information architecture */
.side-menu-section, .sidebar-group { margin-bottom:6px !important; }
.side-menu-group-title, .sidebar-section-title {
  font-size:10px !important;
  letter-spacing:.14em !important;
  padding:8px 10px 5px !important;
  color:#8fb3c5 !important;
}
.side-menu-item { min-height:34px !important; padding:7px 10px !important; border-radius:9px !important; margin:2px 8px !important; }
.side-menu-label { font-size:12px !important; }
.side-menu-icon { width:22px !important; height:22px !important; font-size:12px !important; }

/* Common page template: compact title bar + compact filters + single KPI strip */
.full-width-panel { margin-bottom:10px !important; }
.my-work-hero, .action-hero, .plan-spine-hero, .plan-workbench-hero, .dashboard-hero, .pmo-hero, .schedule-view-hero, .schedule-editor-hero, .tree-hero, .evidence-capture-hero, .evidence-vault-hero, .reports-hero, .ux-hero, .views-hero, .plan-top-card {
  min-height:unset !important;
  padding:12px 16px !important;
  border:1px solid var(--ux-border) !important;
  border-radius:var(--ux-radius) !important;
  background:var(--ux-panel) !important;
  box-shadow:0 2px 8px rgba(16,32,51,.04) !important;
  color:var(--ux-text) !important;
}
.my-work-hero h2, .action-hero h2, .plan-spine-hero h2, .plan-workbench-hero h2, .dashboard-hero h2, .pmo-hero h2, .schedule-view-hero h2, .schedule-editor-hero h2, .tree-hero h2, .evidence-capture-hero h2, .evidence-vault-hero h2, .reports-hero h2, .ux-hero h2, .views-hero h2, .plan-top-card h2 {
  font-size:18px !important;
  line-height:22px !important;
  margin:0 0 2px !important;
  color:var(--ux-text) !important;
}
.my-work-hero p, .action-hero p, .plan-spine-hero p, .plan-workbench-hero p, .dashboard-hero p, .pmo-hero p, .schedule-view-hero p, .schedule-editor-hero p, .tree-hero p, .evidence-capture-hero p, .evidence-vault-hero p, .reports-hero p, .ux-hero p, .views-hero p, .plan-top-card p {
  font-size:12px !important;
  line-height:17px !important;
  margin:0 !important;
  color:var(--ux-muted) !important;
}
.action-center-hero-actions, .views-hero-actions, .schedule-view-mode { gap:6px !important; }

/* Remove decorative / noisy legacy zones from business pages. */
.role-home-strip, .action-context-strip, .my-work-top-grid, .my-work-tech-note, .plan-journey-strip, .plan-workflow-strip, .workflow-journey, .ux-eyebrow { display:none !important; }

/* KPI cards should be filter controls, not decorative dashboards. */
.my-work-kpi-grid, .tree-summary-grid, .action-center-kpi-grid, .schedule-kpi-grid, .plan-compact-metrics, .dashboard-kpi-grid {
  display:grid !important;
  grid-template-columns:repeat(6,minmax(120px,1fr)) !important;
  gap:8px !important;
  margin:8px 0 10px !important;
}
.my-work-kpi, .action-center-kpi, .tree-summary-card, .dashboard-kpi, .plan-metric-chip {
  min-height:58px !important;
  padding:9px 12px !important;
  border:1px solid var(--ux-border) !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:none !important;
  text-align:left !important;
}
.my-work-kpi span, .action-center-kpi span, .tree-summary-card span, .dashboard-kpi span, .plan-metric-chip span {
  font-size:10px !important;
  text-transform:uppercase !important;
  letter-spacing:.07em !important;
  color:#58708c !important;
}
.my-work-kpi b, .action-center-kpi b, .tree-summary-card b, .dashboard-kpi b, .plan-metric-chip b {
  font-size:21px !important;
  line-height:24px !important;
  color:#102033 !important;
}
.my-work-kpi small, .action-center-kpi small, .tree-summary-card small, .dashboard-kpi small, .plan-metric-chip small { font-size:11px !important; color:#64748b !important; }
.my-work-kpi.active, .my-work-kpi:hover, .rbac-mode-tabs button.active, .plan-tab-strip button.active, .plan-board-view-tabs button.active {
  border-color:var(--ux-primary) !important;
  background:#e9f7f5 !important;
  color:#074f4a !important;
}

/* Filter bars and tabs */
.my-work-filter-bar, .plan-filter-bar, .filter-topline, .rbac-mode-tabs, .plan-tab-strip, .plan-board-view-tabs {
  min-height:42px !important;
  padding:7px 10px !important;
  gap:7px !important;
  border:1px solid var(--ux-border) !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:none !important;
}
.my-work-filter-bar input, .plan-filter-bar input, .filter-topline input, .filter-topline select, .plan-filter-bar select, select, input[type="text"], input[type="search"] {
  min-height:34px !important;
  height:34px !important;
  border-radius:9px !important;
  border-color:#cfd9e6 !important;
  font-size:12px !important;
}
.rbac-mode-tabs button, .plan-tab-strip button, .plan-board-view-tabs button, .secondary.small-btn, .primary.small-btn {
  min-height:30px !important;
  height:30px !important;
  padding:0 11px !important;
  border-radius:9px !important;
  font-size:12px !important;
  font-weight:700 !important;
}

/* Tables / queues: workbench first. */
.table-card, .pmo-card, .data-card, .plan-table-shell {
  border:1px solid var(--ux-border) !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 2px 8px rgba(16,32,51,.04) !important;
}
.table-card-title, .pmo-card-head {
  min-height:42px !important;
  padding:10px 14px !important;
  border-bottom:1px solid #e6edf5 !important;
}
.table-card-title h3, .pmo-card-head h3 { font-size:15px !important; margin:0 !important; }
.data-table th, .pmo-mini-table th, .plan-wbs-table th {
  height:34px !important;
  padding:7px 10px !important;
  font-size:10px !important;
  letter-spacing:.07em !important;
  text-transform:uppercase !important;
  background:#f3f6fa !important;
  color:#526980 !important;
}
.data-table td, .pmo-mini-table td, .plan-wbs-table td {
  padding:8px 10px !important;
  font-size:12px !important;
  border-top:1px solid #e9eef5 !important;
}
.status-pill { min-height:22px !important; padding:3px 8px !important; border-radius:999px !important; font-size:11px !important; }

/* Drawers: compact sections only */
.plan-detail-drawer, .quick-drawer {
  width:min(620px, 42vw) !important;
  padding:14px !important;
  border-left:1px solid var(--ux-border) !important;
}
.plan-detail-drawer h2, .quick-drawer h2 { font-size:17px !important; margin:0 0 4px !important; }
.drawer-action-grid, .drawer-summary-grid { gap:8px !important; }
.drawer-action-card, .drawer-summary-card, .compact-drawer-section {
  padding:10px !important;
  border-radius:10px !important;
  border:1px solid #dce6f1 !important;
  background:#fff !important;
}

@media (max-width: 1280px) {
  .my-work-kpi-grid, .tree-summary-grid, .action-center-kpi-grid, .schedule-kpi-grid, .plan-compact-metrics, .dashboard-kpi-grid { grid-template-columns:repeat(3,minmax(120px,1fr)) !important; }
  .plan-detail-drawer, .quick-drawer { width:min(560px, 70vw) !important; }
}


/* === V31.20.19_REAL_FILTER_WIRING_AND_CARD_TO_QUEUE_BEHAVIOR: real filter wiring and card-to-queue behavior === */
.filter-card-strip .filter-card,
.plan-header-metric.filter-card,
.my-work-kpi,
.action-center-kpi {
  cursor:pointer !important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .12s ease !important;
}
.plan-header-metric.filter-card:hover,
.my-work-kpi:hover,
.action-center-kpi:hover {
  border-color:#087e74 !important;
  box-shadow:0 3px 10px rgba(8,126,116,.12) !important;
  transform:translateY(-1px) !important;
}
.plan-header-metric.filter-card.active,
.my-work-kpi.active,
.action-center-kpi.active {
  border-color:#087e74 !important;
  background:#e8f7f5 !important;
  box-shadow:inset 0 0 0 1px rgba(8,126,116,.18) !important;
}
.plan-header-metric.filter-card.active span,
.my-work-kpi.active span { color:#066a62 !important; }
.real-filter-bar { align-items:center !important; }
.real-filter-bar .clear-filter-btn { min-width:64px !important; }
.table-card-title span, .sn-card-head span { color:#5f7188 !important; }
.my-work-filter-bar .rbac-mode-tabs button.active { background:#087e74 !important; color:#fff !important; border-color:#087e74 !important; }
.my-work-filter-bar input { max-width:420px !important; }
.plan-page-control { font-size:12px !important; color:#5f7188 !important; }
.sn-worklist-section .sn-section-title span { color:#60748a !important; }


/* V31.20.20 — restore intelligent capabilities without returning to visual drift */
.app-shell .resource-matrix-hero,
.app-shell .cost-hero,
.app-shell .evm-hero,
.app-shell .leveling-hero,
.app-shell .schedule-hero,
.app-shell .pmo-dashboard-hero,
.app-shell .plan-intelligence-hero {
  min-height: 52px !important;
  padding: 12px 16px !important;
  margin: 8px 0 10px !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg,#052536,#087e74) !important;
  box-shadow: 0 6px 18px rgba(15,23,42,.08) !important;
}
.app-shell .resource-matrix-hero h2,
.app-shell .cost-hero h2,
.app-shell .evm-hero h2,
.app-shell .leveling-hero h2,
.app-shell .schedule-hero h2,
.app-shell .pmo-dashboard-hero h2,
.app-shell .plan-intelligence-hero h2 {font-size:18px!important;line-height:1.15!important;margin:0 0 4px!important;}
.app-shell .resource-matrix-hero p,
.app-shell .cost-hero p,
.app-shell .evm-hero p,
.app-shell .leveling-hero p,
.app-shell .schedule-hero p,
.app-shell .pmo-dashboard-hero p,
.app-shell .plan-intelligence-hero p {font-size:12px!important;margin:0!important;color:rgba(255,255,255,.84)!important;}
.app-shell .resource-master-grid,
.app-shell .cost-layout,
.app-shell .evm-layout,
.app-shell .leveling-layout,
.app-shell .schedule-editor-shell,
.app-shell .schedule-view-shell {gap:10px!important;}
.app-shell .cost-mode-tabs,
.app-shell .leveling-mode-tabs,
.app-shell .evm-mode-tabs,
.app-shell .resource-mode-tabs,
.app-shell .schedule-mode-tabs {padding:8px!important;margin:8px 0!important;border-radius:12px!important;background:#fff!important;border:1px solid #dbe5ef!important;}
.app-shell .resource-kpis,
.app-shell .cost-kpis,
.app-shell .evm-kpis,
.app-shell .leveling-kpis {gap:8px!important;margin:8px 0!important;}
.app-shell .resource-kpis > *,
.app-shell .cost-kpis > *,
.app-shell .evm-kpis > *,
.app-shell .leveling-kpis > * {min-height:60px!important;padding:10px 12px!important;border-radius:12px!important;}


/* V31.20.21 Professional header reset - no decorative/kiddish header icons */
.app-header {
  min-height: 44px !important;
  padding: 6px 12px !important;
  gap: 10px !important;
  align-items: center !important;
  box-shadow: 0 1px 0 rgba(15,23,42,.08) !important;
  border-bottom: 1px solid #dbe4ef !important;
}
.app-header-left { gap: 8px !important; min-width: 0 !important; }
.app-title { gap: 0 !important; }
.app-title h1 { font-size: 15px !important; line-height: 18px !important; letter-spacing: -.01em !important; }
.app-title span { font-size: 11px !important; font-weight: 650 !important; }
.header-breadcrumb { margin: 0 !important; min-height: 16px !important; }
.header-breadcrumb .breadcrumb-left { gap: 4px !important; flex-wrap: nowrap !important; }
.header-breadcrumb .breadcrumb-link,
.header-breadcrumb .breadcrumb-current,
.header-breadcrumb .breadcrumb-filter { font-size: 11px !important; line-height: 15px !important; padding: 0 !important; }
.header-breadcrumb .breadcrumb-home {
  width:auto !important; height:auto !important; min-width:0 !important; border:0 !important; background:transparent !important;
  box-shadow:none !important; color:#0f766e !important; font-weight:700 !important;
}
.app-header-actions.compact-header-actions { gap: 6px !important; }
.header-attendance-control {
  min-width: 112px !important;
  height: 30px !important;
  padding: 3px 4px 3px 8px !important;
  border-radius: 9px !important;
  gap: 6px !important;
  box-shadow: none !important;
  background: #fff !important;
  border-color: #cbd5e1 !important;
}
.header-attendance-label { display:none !important; }
.header-attendance-clock { font-size: 12px !important; line-height: 14px !important; }
.header-attendance-btn { min-width: 54px !important; height: 24px !important; padding: 0 8px !important; border-radius: 7px !important; font-size: 11px !important; }
.release-segment-control.compact-control {
  height: 30px !important;
  min-height: 30px !important;
  padding: 2px !important;
  gap: 2px !important;
  border-radius: 9px !important;
  box-shadow: none !important;
}
.release-segment-label { font-size: 10px !important; letter-spacing: .06em !important; padding: 0 6px !important; }
.release-segment-option { min-height: 24px !important; padding: 0 10px !important; border-radius: 7px !important; font-size: 11px !important; }
.client-switch-button.text-header-action,
.favorite-button.text-header-action,
.header-chat.text-header-action,
.header-bell.text-header-action,
.profile-button.text-header-action {
  height: 30px !important;
  min-width: auto !important;
  padding: 0 10px !important;
  border-radius: 9px !important;
  border: 1px solid #cbd5e1 !important;
  background: #fff !important;
  color: #0f172a !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  box-shadow: none !important;
  display: inline-flex !important;
  gap: 6px !important;
  align-items: center !important;
  justify-content: center !important;
}
.favorite-button.text-header-action { color:#475569 !important; }
.header-chat.text-header-action,
.header-bell.text-header-action { color:#334155 !important; }
.client-switch-button.text-header-action:hover,
.favorite-button.text-header-action:hover,
.header-chat.text-header-action:hover,
.header-bell.text-header-action:hover,
.profile-button.text-header-action:hover { background:#f8fafc !important; border-color:#94a3b8 !important; }
.profile-avatar { width:22px !important; height:22px !important; min-width:22px !important; border-radius:999px !important; font-size:12px !important; }
.profile-text-action { padding: 0 4px !important; }
.inline-count {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:18px !important;
  height:18px !important;
  padding:0 5px !important;
  border-radius:999px !important;
  background:#dc2626 !important;
  color:#fff !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:18px !important;
}
.bell-count { display:none !important; }
.client-logo, .kernel-mark, .profile-caret, .client-switch-text { display:none !important; }
@media (max-width: 1120px) {
  .favorite-button.text-header-action { display:none !important; }
  .header-chat.text-header-action { display:none !important; }
  .release-segment-label { display:none !important; }
}
@media (max-width: 820px) {
  .header-attendance-control { display:none !important; }
  .app-header { padding:6px 8px !important; }
}

/* V31.20.22 — Professional selection states / readable active filters
   Selected items must never use heavy solid green that hides secondary information.
   Active state = subtle background + clear border + left accent + readable text. */
:root{
  --sel-bg:#f0fdfa;
  --sel-bg-strong:#ecfeff;
  --sel-border:#5eead4;
  --sel-accent:#0f766e;
  --sel-text:#0f172a;
  --sel-muted:#475569;
}

/* KPI/action cards: active card is readable, not a filled tile. */
.my-work-kpi.active,
.action-center-kpi.active,
.dashboard-kpi.active,
.tree-summary-card.active,
.plan-metric-chip.active,
.plan-header-metric.filter-card.active,
.filter-card-strip .filter-card.active,
.my-work-kpi.active:hover,
.action-center-kpi.active:hover,
.plan-header-metric.filter-card.active:hover{
  background:var(--sel-bg)!important;
  color:var(--sel-text)!important;
  border-color:var(--sel-border)!important;
  box-shadow:inset 4px 0 0 var(--sel-accent), 0 1px 4px rgba(15,23,42,.06)!important;
  transform:none!important;
}
.my-work-kpi.active span,
.action-center-kpi.active span,
.dashboard-kpi.active span,
.tree-summary-card.active span,
.plan-metric-chip.active span,
.plan-header-metric.filter-card.active span,
.filter-card-strip .filter-card.active span{
  color:#0f766e!important;
}
.my-work-kpi.active b,
.action-center-kpi.active b,
.dashboard-kpi.active b,
.tree-summary-card.active b,
.plan-metric-chip.active b,
.plan-header-metric.filter-card.active b,
.filter-card-strip .filter-card.active b{
  color:var(--sel-text)!important;
}
.my-work-kpi.active small,
.action-center-kpi.active small,
.dashboard-kpi.active small,
.tree-summary-card.active small,
.plan-metric-chip.active small,
.plan-header-metric.filter-card.active small,
.filter-card-strip .filter-card.active small{
  color:var(--sel-muted)!important;
}

/* Filter chips/tabs: active is a professional pill, not heavy block color. */
.rbac-mode-tabs button.active,
.plan-tab-strip button.active,
.plan-board-view-tabs button.active,
.plan-primary-tabs button.active,
.plan-business-tabs button.active,
.plan-board-view-switch button.active,
.my-work-filter-bar .rbac-mode-tabs button.active,
button.filter-chip.active,
.filter-chip.active,
.mode-chip.active,
.view-chip.active{
  background:var(--sel-bg)!important;
  color:#075e56!important;
  border:1px solid var(--sel-border)!important;
  box-shadow:inset 0 0 0 1px rgba(15,118,110,.08)!important;
}
.rbac-mode-tabs button.active:hover,
.plan-tab-strip button.active:hover,
.plan-board-view-tabs button.active:hover,
.plan-primary-tabs button.active:hover,
.plan-business-tabs button.active:hover,
.plan-board-view-switch button.active:hover{
  background:#ccfbf1!important;
  color:#064e3b!important;
}

/* Selected chat/thread rows: keep all text readable. */
.ci-thread-card.active,
.ci19-thread-card.active,
.ci21-space-mode .ci19-thread-card.active,
.chat-thread-card.active,
.chat-list-item.active,
.thread-card.active,
.conversation-card.active{
  background:#f8fffe!important;
  color:var(--sel-text)!important;
  border-color:var(--sel-border)!important;
  box-shadow:inset 4px 0 0 var(--sel-accent), 0 2px 8px rgba(15,23,42,.06)!important;
}
.ci-thread-card.active b,
.ci19-thread-card.active b,
.ci21-space-mode .ci19-thread-card.active b,
.chat-thread-card.active b,
.chat-list-item.active b,
.thread-card.active b,
.conversation-card.active b,
.ci-thread-card.active p,
.ci19-thread-card.active p,
.ci21-space-mode .ci19-thread-card.active p,
.chat-thread-card.active p,
.chat-list-item.active p,
.thread-card.active p,
.conversation-card.active p{
  color:var(--sel-text)!important;
}
.ci-thread-card.active small,
.ci19-thread-card.active small,
.ci21-space-mode .ci19-thread-card.active small,
.chat-thread-card.active small,
.chat-list-item.active small,
.thread-card.active small,
.conversation-card.active small,
.ci-thread-card.active .ci19-thread-sub,
.ci19-thread-card.active .ci19-thread-sub,
.ci21-space-mode .ci19-thread-card.active .ci19-thread-sub,
.ci-thread-card.active .ci19-thread-meta,
.ci19-thread-card.active .ci19-thread-meta,
.ci21-space-mode .ci19-thread-card.active .ci19-thread-meta{
  color:var(--sel-muted)!important;
}

/* Table row selection should be a row accent, not a dark fill. */
tr.active,
tr.selected,
.data-table tr.active,
.data-table tr.selected,
.plan-wbs-table tr.active,
.plan-wbs-table tr.selected,
.sn-work-row.active,
.sn-work-row.selected{
  background:#f8fffe!important;
  color:var(--sel-text)!important;
  box-shadow:inset 4px 0 0 var(--sel-accent)!important;
}
tr.active td,
tr.selected td,
.data-table tr.active td,
.data-table tr.selected td,
.plan-wbs-table tr.active td,
.plan-wbs-table tr.selected td,
.sn-work-row.active td,
.sn-work-row.selected td{
  color:var(--sel-text)!important;
}

/* Keep primary action buttons as primary; this reset only targets selected/filter states. */
.primary-btn,
button.primary,
.btn-primary{
  background:#087e74!important;
  color:#fff!important;
  border-color:#087e74!important;
}


/* ======================================================================
   V31.20.23 — Single Theme Consistency Sweep
   Purpose: force every visible menu/page to use one compact enterprise
   workbench visual grammar. This is intentionally the LAST override.
   ====================================================================== */
:root{
  --dgc-bg:#f4f7fb;
  --dgc-surface:#ffffff;
  --dgc-surface-2:#f8fafc;
  --dgc-border:#dbe5ef;
  --dgc-border-strong:#bfd0e3;
  --dgc-text:#0f1f33;
  --dgc-muted:#5d6f86;
  --dgc-subtle:#71839a;
  --dgc-primary:#0f766e;
  --dgc-primary-2:#115e59;
  --dgc-primary-soft:#e8f7f5;
  --dgc-danger:#b4232a;
  --dgc-danger-soft:#fff1f2;
  --dgc-warning:#b45309;
  --dgc-warning-soft:#fffbeb;
  --dgc-success:#15803d;
  --dgc-success-soft:#f0fdf4;
  --dgc-info:#1d4ed8;
  --dgc-info-soft:#eff6ff;
  --dgc-shadow:0 1px 2px rgba(15,31,51,.04), 0 8px 24px rgba(15,31,51,.05);
  --dgc-radius:10px;
  --dgc-radius-sm:7px;
  --dgc-header-h:48px;
  --dgc-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
html,body,#root{background:var(--dgc-bg)!important;color:var(--dgc-text)!important;font-family:var(--dgc-font)!important;}
body{font-size:13px!important;line-height:1.42!important;}
*{box-sizing:border-box;}

/* Global shell / header: one professional standard */
.app-shell,.app-container,.main-shell,.modern-shell{background:var(--dgc-bg)!important;}
.app-header,.topbar,.global-header,.shell-header,.modern-topbar,.page-header{
  min-height:var(--dgc-header-h)!important;height:auto!important;padding:6px 14px!important;background:var(--dgc-surface)!important;
  border-bottom:1px solid var(--dgc-border)!important;box-shadow:0 1px 0 rgba(15,31,51,.03)!important;
}
.app-header *, .topbar *, .global-header *, .shell-header *, .modern-topbar *, .page-header *{text-shadow:none!important;}
.header-icon-btn,.top-icon,.top-action-icon,.notification-button,.favorite-button,.chat-button,.tenant-logo-chip,.header-action,
.release-switch,.attendance-chip,.working-now-chip,.profile-chip{
  min-height:30px!important;height:30px!important;border-radius:8px!important;background:var(--dgc-surface)!important;
  border:1px solid var(--dgc-border)!important;box-shadow:none!important;color:var(--dgc-text)!important;
  padding:0 10px!important;font-size:12px!important;font-weight:700!important;
}
.working-now-chip,.attendance-chip{border-color:#f59e0b!important;background:#fffbeb!important;color:#7c2d12!important;}
.release-switch .active,.release-pill.active,.segmented-control .active{background:var(--dgc-primary)!important;color:#fff!important;border-color:var(--dgc-primary)!important;}
.profile-chip,.avatar-chip{width:32px!important;height:32px!important;border-radius:999px!important;background:var(--dgc-primary)!important;color:#fff!important;}
.breadcrumb,.breadcrumbs,.page-crumbs{font-size:11px!important;color:var(--dgc-muted)!important;margin:0!important;padding:0!important;gap:5px!important;}
.breadcrumb .home,.breadcrumbs .home,.breadcrumb-icon{background:transparent!important;border:0!important;width:auto!important;height:auto!important;color:var(--dgc-muted)!important;}

/* Sidebar: stop mixed emoji/theme styling */
.sidebar,.side-nav,.app-sidebar,.modern-sidebar{
  background:#071827!important;color:#dbeafe!important;border-right:1px solid rgba(255,255,255,.08)!important;
}
.sidebar-logo,.brand-area{background:transparent!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
.sidebar-section-title,.menu-section-title,.nav-section-label{
  color:#8fb3c8!important;letter-spacing:.14em!important;text-transform:uppercase!important;font-size:10px!important;font-weight:800!important;
}
.menu-item,.sidebar-menu-item,.nav-item,.menu-row{
  min-height:32px!important;border-radius:8px!important;margin:2px 8px!important;padding:7px 10px!important;color:#dbeafe!important;
  background:transparent!important;border:1px solid transparent!important;box-shadow:none!important;font-size:12px!important;
}
.menu-item.active,.sidebar-menu-item.active,.nav-item.active,.menu-row.active,
.menu-item[aria-current="page"],.sidebar-menu-item[aria-current="page"]{
  background:rgba(15,118,110,.18)!important;border-color:rgba(45,212,191,.24)!important;color:#fff!important;box-shadow:inset 3px 0 0 #2dd4bf!important;
}
.menu-icon,.nav-icon,.sidebar-icon,.menu-symbol{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;width:22px!important;height:22px!important;min-width:22px!important;
  border-radius:6px!important;background:rgba(148,163,184,.10)!important;color:#c7d2fe!important;font-size:10px!important;font-weight:800!important;font-family:var(--dgc-font)!important;
}
.menu-item.active .menu-icon,.sidebar-menu-item.active .menu-icon,.nav-item.active .nav-icon{background:rgba(45,212,191,.18)!important;color:#fff!important;}

/* All page title/hero variants collapse to one standard panel */
.page,.content-area,.page-content,.workspace-content{background:var(--dgc-bg)!important;padding:10px 14px!important;}
.page-hero,.hero,.workbench-hero,.dashboard-hero,.pmo-hero,.pmo-dashboard-hero,.tree-hero,.impact-hero,.notification-hero,
.resource-matrix-hero,.enterprise-hero,.config-hero,.reports-hero,.plan-top-card,.section-hero,.full-width-panel.hero,
[class*="-hero"]{
  background:var(--dgc-surface)!important;background-image:none!important;color:var(--dgc-text)!important;border:1px solid var(--dgc-border)!important;
  border-radius:var(--dgc-radius)!important;box-shadow:var(--dgc-shadow)!important;padding:12px 14px!important;margin:0 0 10px 0!important;min-height:0!important;
}
.page-hero h1,.hero h1,.workbench-hero h1,.dashboard-hero h1,.pmo-hero h1,.tree-hero h1,.impact-hero h1,
.notification-hero h1,.enterprise-hero h1,.config-hero h1,.reports-hero h1,.plan-top-card h1,
.page-hero h2,.hero h2,.workbench-hero h2,.dashboard-hero h2,.pmo-hero h2,.tree-hero h2,.impact-hero h2,
.notification-hero h2,.enterprise-hero h2,.config-hero h2,.reports-hero h2,.plan-top-card h2{
  color:var(--dgc-text)!important;font-size:18px!important;line-height:1.22!important;margin:0 0 3px 0!important;font-weight:800!important;
}
.page-hero p,.hero p,.workbench-hero p,.dashboard-hero p,.pmo-hero p,.tree-hero p,.impact-hero p,
.notification-hero p,.enterprise-hero p,.config-hero p,.reports-hero p,.plan-top-card p{
  color:var(--dgc-muted)!important;font-size:12px!important;margin:0!important;line-height:1.35!important;max-width:960px!important;
}

/* Panels/cards: one card grammar */
.panel,.card,.pmo-card,.chart-card,.production-table-card,.status-table-card,.tree-table-card,.gantt-card,
.assignment-table-card,.meeting-selector-card,.live-minutes-card,.edit-card,.human-elevated-card,.metric-card,
.kpi-card,.tree-summary-card,.impact-kpi,.resource-kpi,.pmo-dash-kpi,.plan-kpi,.enterprise-kpi,
.admin-card,.report-card,.evidence-card,.work-card,.queue-card,.drawer-card{
  background:var(--dgc-surface)!important;background-image:none!important;color:var(--dgc-text)!important;
  border:1px solid var(--dgc-border)!important;border-radius:var(--dgc-radius)!important;box-shadow:var(--dgc-shadow)!important;
}
.metric-card,.kpi-card,.tree-summary-card,.impact-kpi,.resource-kpi,.pmo-dash-kpi,.plan-kpi,.enterprise-kpi{
  padding:11px 13px!important;min-height:64px!important;border-left:3px solid var(--dgc-border-strong)!important;
}
.metric-card.danger,.kpi-card.danger,.tree-summary-card.danger,.impact-kpi.danger,.red,.tone-red{border-left-color:var(--dgc-danger)!important;background:var(--dgc-surface)!important;}
.metric-card.warning,.kpi-card.warning,.tree-summary-card.warning,.impact-kpi.warning,.amber,.tone-amber{border-left-color:var(--dgc-warning)!important;background:var(--dgc-surface)!important;}
.metric-card.ok,.kpi-card.ok,.tree-summary-card.ok,.impact-kpi.ok,.green,.tone-green{border-left-color:var(--dgc-success)!important;background:var(--dgc-surface)!important;}
.metric-label,.kpi-label,.tree-summary-card span,.impact-kpi span,.pmo-dash-kpi span,.resource-kpi span{
  color:#52657c!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-weight:800!important;
}
.metric-value,.kpi-card b,.kpi-value-text,.tree-summary-card b,.impact-kpi b,.pmo-dash-kpi b,.resource-kpi b{
  color:var(--dgc-text)!important;font-size:21px!important;line-height:1.1!important;font-weight:850!important;
}
.metric-sub,.kpi-subtext,.tree-summary-card small,.impact-kpi small,.pmo-dash-kpi small,.resource-kpi small{color:var(--dgc-muted)!important;font-size:11px!important;}

/* Grid and spacing: consistent compact screens */
.kpi-row,.metric-grid,.pmo-dashboard-kpis,.notification-kpi-grid,.impact-kpi-grid,.resource-kpis,.summary-grid,
.plan-summary-grid,.workbench-kpi-grid{
  gap:8px!important;margin:8px 0 10px 0!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
}
.two-col,.content-grid,.dashboard-grid,.admin-grid,.report-grid{gap:10px!important;}
.pmo-card-head,.chart-card-head,.panel-head,.card-head,.section-head{
  padding:10px 12px!important;border-bottom:1px solid var(--dgc-border)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
}
.pmo-card-head h3,.chart-card-head h3,.panel-head h3,.card-head h3,.section-head h3{font-size:14px!important;margin:0!important;color:var(--dgc-text)!important;font-weight:800!important;}
.pmo-card-head span,.chart-card-head span,.panel-head span,.card-head span,.section-head span{font-size:11px!important;color:var(--dgc-muted)!important;}

/* Filter bars */
.filter-bar,.filters,.workbench-filters,.toolbar,.mode-toolbar,.plan-filter-row,.table-toolbar,.control-bar{
  background:var(--dgc-surface)!important;border:1px solid var(--dgc-border)!important;border-radius:var(--dgc-radius)!important;box-shadow:var(--dgc-shadow)!important;
  padding:8px!important;margin:8px 0!important;gap:8px!important;
}
input,select,textarea,.search-input,.form-control{
  border:1px solid #cbd8e6!important;border-radius:8px!important;background:#fff!important;color:var(--dgc-text)!important;min-height:32px!important;font-size:12px!important;box-shadow:none!important;
}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(15,118,110,.16)!important;border-color:var(--dgc-primary)!important;}

/* Buttons, chips and tabs: one selected style. Solid green only for real primary actions. */
button,.btn,.micro-btn,.small-btn,.chip-btn,.tab-btn,.mode-tabs button,.pmo-mode-tabs button,.notification-mode-tabs button,.plan-tab,
.workbench-tab,.compact-tab,.segmented-control button{
  border-radius:8px!important;border:1px solid var(--dgc-border)!important;background:#f8fafc!important;color:#1f3046!important;box-shadow:none!important;
  min-height:30px!important;padding:6px 11px!important;font-size:12px!important;font-weight:750!important;text-shadow:none!important;
}
button:hover,.btn:hover,.micro-btn:hover,.small-btn:hover,.chip-btn:hover,.tab-btn:hover,.mode-tabs button:hover,.plan-tab:hover{background:#eef4fb!important;border-color:#cbd8e6!important;}
button.primary,.btn.primary,.primary,.primary-btn,.small-btn.primary{
  background:var(--dgc-primary)!important;color:#fff!important;border-color:var(--dgc-primary)!important;box-shadow:none!important;
}
button.secondary,.btn.secondary,.secondary{background:#f8fafc!important;color:#1f3046!important;border-color:var(--dgc-border)!important;}
button.danger,.btn.danger{background:var(--dgc-danger-soft)!important;color:var(--dgc-danger)!important;border-color:#fecaca!important;}
button.active,.btn.active,.chip-btn.active,.tab-btn.active,.mode-tabs button.active,.pmo-mode-tabs button.active,.notification-mode-tabs button.active,
.plan-tab.active,.workbench-tab.active,.compact-tab.active,.segmented-control button.active,
.metric-card.active,.kpi-card.active,.work-filter-card.active,.filter-card.active{
  background:var(--dgc-primary-soft)!important;color:var(--dgc-primary-2)!important;border-color:rgba(15,118,110,.38)!important;box-shadow:inset 3px 0 0 var(--dgc-primary)!important;
}
button.active *, .chip-btn.active *, .tab-btn.active *, .metric-card.active *, .kpi-card.active *{color:inherit!important;}

/* Tables: one clean workbench grid */
table,.data-table,.workbench-table,.pmo-table,.plan-table,.admin-table,.report-table{border-collapse:separate!important;border-spacing:0!important;width:100%!important;background:#fff!important;}
th,.table-header,.data-table th,.workbench-table th,.pmo-table th,.plan-table th,.admin-table th{
  background:#f3f7fb!important;color:#52657c!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-size:10px!important;font-weight:850!important;
  border-bottom:1px solid var(--dgc-border)!important;padding:9px 10px!important;
}
td,.data-table td,.workbench-table td,.pmo-table td,.plan-table td,.admin-table td{border-bottom:1px solid #e8eef5!important;padding:10px!important;color:#1f3046!important;font-size:12px!important;vertical-align:middle!important;}
tr:hover td,.table-row:hover{background:#f8fbff!important;}
tr.active td,.table-row.active{background:#f0fdfa!important;box-shadow:inset 3px 0 0 var(--dgc-primary)!important;}

/* Badges and RAG pills */
.badge,.pill,.status-pill,.rag-pill,.tag,.chip,.count-pill{
  border-radius:999px!important;border:1px solid var(--dgc-border)!important;background:#f3f7fb!important;color:#294159!important;font-size:11px!important;font-weight:750!important;padding:3px 8px!important;
}
.badge.red,.pill.red,.status-pill.red,.rag-pill.red,.tag.red{background:var(--dgc-danger-soft)!important;color:var(--dgc-danger)!important;border-color:#fecaca!important;}
.badge.amber,.pill.amber,.status-pill.amber,.rag-pill.amber,.tag.amber{background:var(--dgc-warning-soft)!important;color:var(--dgc-warning)!important;border-color:#fde68a!important;}
.badge.green,.pill.green,.status-pill.green,.rag-pill.green,.tag.green{background:var(--dgc-success-soft)!important;color:var(--dgc-success)!important;border-color:#bbf7d0!important;}
.badge.blue,.pill.blue,.status-pill.blue,.rag-pill.blue,.tag.blue{background:var(--dgc-info-soft)!important;color:var(--dgc-info)!important;border-color:#bfdbfe!important;}

/* Drawer/modal: one right panel standard */
.drawer,.side-drawer,.plan-detail-drawer,.modal-panel,.right-drawer{
  background:#fff!important;border-left:1px solid var(--dgc-border)!important;box-shadow:-12px 0 32px rgba(15,31,51,.14)!important;color:var(--dgc-text)!important;
}
.drawer-header,.side-drawer-header,.plan-drawer-header,.modal-header{padding:12px 14px!important;border-bottom:1px solid var(--dgc-border)!important;background:#fff!important;}
.drawer-body,.side-drawer-body,.plan-drawer-body,.modal-body{padding:12px 14px!important;}
.drawer-section,.plan-drawer-section,.detail-section{border:1px solid var(--dgc-border)!important;border-radius:var(--dgc-radius)!important;background:#fff!important;margin-bottom:10px!important;padding:10px!important;}

/* Specific old theme families normalized */
.pmo-flow-card,.carry-card,.governance-alert-card,.dependency-link-card,.timeline-card,.schedule-card,.evidence-vault-card,
.config-control-card,.readiness-card,.smoke-card,.audit-card,.route-card,.file-health-card,.rollback-card{
  background:#fff!important;background-image:none!important;border:1px solid var(--dgc-border)!important;border-radius:var(--dgc-radius)!important;box-shadow:var(--dgc-shadow)!important;color:var(--dgc-text)!important;
}
.chat-shell,.chat-workspace,.conversation-panel,.chat-thread-list,.chat-message-list{background:#fff!important;border-color:var(--dgc-border)!important;}
.chat-message.sent,.message-bubble.sent{background:var(--dgc-primary)!important;color:#fff!important;border-radius:12px!important;}
.chat-message.received,.message-bubble.received{background:#f8fafc!important;color:var(--dgc-text)!important;border:1px solid var(--dgc-border)!important;border-radius:12px!important;}
.chat-thread.active,.chat-row.active{background:var(--dgc-primary-soft)!important;color:var(--dgc-text)!important;border-color:rgba(15,118,110,.36)!important;box-shadow:inset 3px 0 0 var(--dgc-primary)!important;}
.chat-thread.active *,.chat-row.active *{color:var(--dgc-text)!important;}

/* Remove remaining decorative gradients from most business/admin pages */
.pmo-dashboard-kpis .pmo-dash-kpi,.resource-kpis .resource-kpi,.impact-kpi-grid .impact-kpi,
.notification-kpi-grid .tree-summary-card,.metric-grid .metric-card,.kpi-row .kpi-card{
  background:#fff!important;background-image:none!important;
}
[class*="gradient"], [class*="Gradient"]{background-image:none!important;}

/* Compact responsive behaviour */
@media (max-width: 1100px){
  .kpi-row,.metric-grid,.pmo-dashboard-kpis,.notification-kpi-grid,.impact-kpi-grid,.resource-kpis,.summary-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important;}
  .page,.content-area,.page-content,.workspace-content{padding:8px!important;}
}



/* V31.20.24 — Drawer and Detail Cleanup: professional compact drawer standard */
:root{
  --pd-bg:#f8fafc;
  --pd-surface:#ffffff;
  --pd-border:#d9e3ee;
  --pd-muted:#64748b;
  --pd-text:#0f172a;
  --pd-accent:#0f766e;
  --pd-accent-soft:#e6f6f3;
  --pd-danger:#dc2626;
  --pd-danger-soft:#fff1f2;
  --pd-radius:12px;
  --pd-shadow:0 18px 45px rgba(15,23,42,.16);
}
.professional-detail-overlay.plan-detail-overlay{
  background:rgba(15,23,42,.48) !important;
  backdrop-filter:blur(3px) !important;
}
.professional-detail-drawer.plan-detail-drawer,
.professional-detail-drawer.compact-plan-drawer{
  width:min(760px,46vw) !important;
  max-width:820px !important;
  min-width:640px !important;
  background:var(--pd-bg) !important;
  box-shadow:var(--pd-shadow) !important;
  border-left:1px solid var(--pd-border) !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  color:var(--pd-text) !important;
}
.pd-drawer-head{
  flex:0 0 auto;
  min-height:68px;
  padding:14px 18px 12px !important;
  background:var(--pd-surface);
  border-bottom:1px solid var(--pd-border);
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  position:sticky;
  top:0;
  z-index:4;
}
.pd-title-block .eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#2563eb;font-weight:800;display:block;margin-bottom:4px;}
.pd-title-block h3{font-size:18px;line-height:1.18;margin:0;color:var(--pd-text);font-weight:800;max-width:620px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pd-title-block p{margin:6px 0 0;color:var(--pd-muted);font-size:12px;font-weight:600;}
.pd-close{width:32px!important;height:32px!important;border-radius:10px!important;background:#eef4f9!important;color:#334155!important;border:1px solid #e1e9f2!important;font-size:18px!important;}
.pd-drawer-body{
  padding:12px 14px 18px;
  display:grid;
  gap:10px;
  overflow:auto;
}
.pd-section{
  background:var(--pd-surface);
  border:1px solid var(--pd-border);
  border-radius:var(--pd-radius);
  padding:12px;
  box-shadow:0 2px 8px rgba(15,23,42,.04);
}
.pd-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;}
.pd-section-head h4{margin:0;font-size:13px;color:var(--pd-text);font-weight:850;letter-spacing:.01em;}
.pd-section-head span{display:block;margin-top:2px;color:var(--pd-muted);font-size:11px;font-weight:600;}
.pd-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.pd-mini-metric{border:1px solid #e1eaf4;border-radius:10px;background:#f8fbfd;padding:9px 10px;min-height:62px;}
.pd-mini-metric span{display:block;text-transform:uppercase;letter-spacing:.06em;font-size:10px;color:#64748b;font-weight:800;}
.pd-mini-metric b{display:block;font-size:13px;margin-top:4px;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pd-mini-metric small{display:block;font-size:10px;margin-top:4px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pd-mini-metric.red{border-color:#fecaca;background:#fff7f7;}
.pd-mini-metric.amber{border-color:#fde68a;background:#fffbeb;}
.pd-mini-metric.green{border-color:#bbf7d0;background:#f0fdf4;}
.pd-mini-metric.blue{border-color:#bfdbfe;background:#eff6ff;}
.pd-form-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end;}
.pd-form-grid label{display:grid;gap:4px;margin:0;}
.pd-form-grid label span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:800;}
.pd-form-grid select,.pd-form-grid input,.pd-progress-row input,.pd-comment-form textarea{
  border:1px solid #cbd8e6;border-radius:9px;background:#fff;color:#0f172a;font-size:12px;min-height:34px;padding:7px 9px;outline:none;
}
.pd-form-grid select:focus,.pd-form-grid input:focus,.pd-progress-row input:focus,.pd-comment-form textarea:focus{border-color:#0f766e;box-shadow:0 0 0 3px rgba(15,118,110,.12);}
.pd-form-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;}
.pd-action-row,.pd-row-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.pd-progress-row{display:grid;grid-template-columns:140px auto;gap:8px;align-items:center;margin-top:8px;}
.pd-gate-strip{display:grid;grid-template-columns:auto auto 1fr;gap:6px 10px;align-items:center;background:#f8fafc;border:1px dashed #d5e0ea;border-radius:10px;padding:8px;margin-top:10px;}
.pd-gate-strip small{grid-column:1 / -1;color:#64748b;font-size:11px;line-height:1.35;}
.pd-scope-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px;}
.pd-scope-group{border:1px solid #e2e8f0;border-radius:10px;background:#fbfdff;padding:8px;min-width:0;}
.pd-scope-group-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;}
.pd-scope-group-head b{font-size:10px;letter-spacing:.06em;color:#475569;}
.pd-scope-group-head span{font-size:10px;background:#e8f3ff;border-radius:99px;padding:2px 7px;color:#1e40af;font-weight:800;}
.pd-inline-list{display:grid;gap:6px;margin-top:8px;}
.pd-list-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;border-top:1px solid #e8eef5;padding:8px 0;min-width:0;}
.pd-list-row:first-child{border-top:0;}
.pd-list-row.compact{padding:7px 0;}
.pd-list-row b{display:block;font-size:12px;color:#0f172a;font-weight:800;line-height:1.25;}
.pd-list-row span{display:block;font-size:11px;color:#64748b;line-height:1.3;margin-top:2px;}
.pd-list-row .secondary.mini{white-space:nowrap;}
.pd-doc-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:9px 10px;margin-bottom:8px;}
.pd-doc-row b{display:block;font-size:12px;color:#0f172a;}
.pd-doc-row span{display:block;font-size:11px;color:#64748b;margin-top:2px;}
.pd-comment-form{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start;}
.pd-comment-form textarea{min-height:58px;resize:vertical;}
.pd-more{font-size:11px!important;margin:6px 0 0!important;}
.pd-audit-section .pd-list-row b{font-size:11px;}
.pd-related-work-section .workmark-form{grid-template-columns:minmax(150px,220px) 1fr auto;}
.professional-detail-drawer .drawer-section,
.professional-detail-drawer .inline-execution-panel,
.professional-detail-drawer .scope-board-section,
.professional-detail-drawer .compact-evidence-section,
.professional-detail-drawer .plan-workmarks-section{display:none!important;}
.professional-detail-drawer .primary.mini,
.professional-detail-drawer .secondary.mini,
.professional-detail-drawer .plan-upload-btn{min-height:30px!important;padding:6px 10px!important;border-radius:9px!important;font-size:12px!important;font-weight:750!important;}
.professional-detail-drawer .primary.mini{background:#0f766e!important;border-color:#0f766e!important;color:#fff!important;}
.professional-detail-drawer .secondary.mini{background:#f1f5f9!important;border:1px solid #d7e2ec!important;color:#172033!important;}
.professional-detail-drawer .danger-soft{background:#fff1f2!important;color:#b91c1c!important;border-color:#fecaca!important;}
.professional-detail-drawer .pill.danger{background:#fff1f2;color:#be123c;border-color:#fecaca;}
.professional-detail-drawer .pill.ok{background:#f0fdf4;color:#15803d;border-color:#bbf7d0;}
@media (max-width: 1180px){
  .professional-detail-drawer.plan-detail-drawer{width:min(92vw,760px)!important;min-width:0!important;}
  .pd-mini-grid,.pd-scope-preview{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pd-form-grid,.pd-related-work-section .workmark-form{grid-template-columns:1fr;}
}
@media (max-width: 680px){
  .pd-mini-grid,.pd-scope-preview{grid-template-columns:1fr;}
  .pd-doc-row,.pd-list-row,.pd-comment-form,.pd-progress-row{grid-template-columns:1fr;}
}


/* V31.20.25 - PMO / Reporting Workspace Consolidation */
.pmo-consolidated-workspace{display:flex;flex-direction:column;gap:10px;}
.workbench-titlebar.compact-titlebar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid var(--border,#dbe5ef);border-radius:12px;padding:12px 14px;box-shadow:0 4px 14px rgba(15,23,42,.04);}
.workbench-titlebar.compact-titlebar h2{margin:0;font-size:20px;line-height:1.15;color:#0f172a;}
.workbench-titlebar.compact-titlebar p{margin:4px 0 0;color:#5b6b82;font-size:12px;max-width:920px;}
.titlebar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
.pmo-report-kpi-strip{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:8px;}
.pmo-report-kpi{appearance:none;text-align:left;background:#fff;border:1px solid #dbe5ef;border-radius:10px;padding:10px 12px;box-shadow:0 3px 10px rgba(15,23,42,.035);cursor:pointer;min-height:70px;}
.pmo-report-kpi span{display:block;text-transform:uppercase;letter-spacing:.06em;font-weight:800;font-size:10px;color:#53667f;}
.pmo-report-kpi b{display:block;margin-top:4px;font-size:20px;line-height:1.1;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pmo-report-kpi small{display:block;margin-top:3px;font-size:11px;color:#64748b;}
.pmo-report-kpi.active,.pmo-report-kpi:focus,.pmo-report-kpi:hover{border-color:#0f9488;background:#f0fdfa;outline:none;box-shadow:inset 3px 0 0 #0f9488,0 4px 14px rgba(15,23,42,.06);}
.pmo-report-tabs{background:#fff;border:1px solid #dbe5ef;border-radius:12px;padding:6px;display:flex;gap:6px;align-items:center;}
.pmo-report-tabs button{border:0;background:#f4f7fb;border-radius:8px;padding:8px 12px;font-weight:700;color:#334155;cursor:pointer;}
.pmo-report-tabs button.active{background:#0f9488;color:#fff;}
.pmo-report-mode-body{display:flex;flex-direction:column;gap:10px;}
.pmo-report-mode-body .reports-hero,.pmo-report-mode-body .scope-ribbon,.pmo-report-mode-body .pmo-command{display:none!important;}
.pmo-report-mode-body .reports-kpi-grid,.pmo-report-mode-body .rag-summary-grid,.pmo-report-mode-body .metric-grid.compact{margin-top:0;}
.workbench-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid #dbe5ef;border-radius:12px;padding:12px 14px;}
.workbench-section-head h3{margin:0;font-size:16px;color:#0f172a;}
.workbench-section-head p{margin:3px 0 0;font-size:12px;color:#64748b;}
.pmo-report-mode-body .export-hero,.pmo-report-mode-body .reports-export-hero{display:none!important;}
@media(max-width:1200px){.pmo-report-kpi-strip{grid-template-columns:repeat(3,1fr);} .workbench-titlebar.compact-titlebar{align-items:flex-start;flex-direction:column;} .titlebar-actions{justify-content:flex-start;}}
@media(max-width:760px){.pmo-report-kpi-strip{grid-template-columns:repeat(2,1fr);} .pmo-report-tabs{overflow-x:auto;} }


/* V31.20.26 — Advanced Planning Tools Consistency
   One compact enterprise grammar for Plan Intelligence, Resources, Resource Leveling,
   Attendance/Leave, Timesheet, Cost Tracking, Earned Value, Schedule and Calendar. */
:root{
  --ap-bg:#f6f8fb;
  --ap-surface:#ffffff;
  --ap-border:#dbe5ef;
  --ap-border-2:#e7eef6;
  --ap-text:#102033;
  --ap-muted:#60738a;
  --ap-primary:#0f766e;
  --ap-primary-soft:#e6f6f3;
  --ap-blue:#2563eb;
  --ap-amber:#b45309;
  --ap-red:#dc2626;
  --ap-green:#15803d;
  --ap-shadow:0 4px 14px rgba(15,23,42,.045);
  --ap-radius:12px;
}
.advanced-planning-shell{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  background:transparent!important;
  color:var(--ap-text)!important;
}
.advanced-tool-titlebar.compact-titlebar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  background:var(--ap-surface)!important;
  border:1px solid var(--ap-border)!important;
  border-radius:var(--ap-radius)!important;
  padding:11px 14px!important;
  min-height:62px!important;
  box-shadow:var(--ap-shadow)!important;
}
.advanced-title-copy .eyebrow{
  display:block!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-size:10px!important;
  font-weight:850!important;
  color:#2563eb!important;
  margin-bottom:3px!important;
}
.advanced-title-copy h2{
  margin:0!important;
  font-size:18px!important;
  line-height:1.15!important;
  color:var(--ap-text)!important;
  font-weight:850!important;
}
.advanced-title-copy p{
  margin:4px 0 0!important;
  font-size:12px!important;
  line-height:1.35!important;
  color:var(--ap-muted)!important;
  max-width:980px!important;
}
.advanced-title-actions{display:flex!important;gap:7px!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important;}
.advanced-tool-nav{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  overflow-x:auto!important;
  background:var(--ap-surface)!important;
  border:1px solid var(--ap-border)!important;
  border-radius:var(--ap-radius)!important;
  padding:6px!important;
  box-shadow:var(--ap-shadow)!important;
}
.advanced-tool-nav button{
  flex:0 0 auto!important;
  min-height:30px!important;
  padding:6px 10px!important;
  border-radius:8px!important;
  border:1px solid transparent!important;
  background:#f5f8fb!important;
  color:#334155!important;
  font-size:12px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.advanced-tool-nav button:hover{background:#eef4fa!important;border-color:#d7e3ef!important;}
.advanced-tool-nav button.active{
  background:var(--ap-primary-soft)!important;
  color:#0f5f58!important;
  border-color:rgba(15,118,110,.32)!important;
  box-shadow:inset 3px 0 0 var(--ap-primary)!important;
}
.advanced-tool-body{display:flex!important;flex-direction:column!important;gap:10px!important;}
/* Compress legacy advanced tool heroes instead of letting each page carry a different theme. */
.advanced-tool-body .plan-intel-hero,
.advanced-tool-body .resource-matrix-hero,
.advanced-tool-body .leveling-hero,
.advanced-tool-body .attendance-hero,
.advanced-tool-body .timesheet-hero,
.advanced-tool-body .cost-hero,
.advanced-tool-body .evm-hero,
.advanced-tool-body .schedule-edit-hero,
.advanced-tool-body .calendar-hero,
.advanced-tool-body .tree-hero{
  background:var(--ap-surface)!important;
  background-image:none!important;
  border:1px solid var(--ap-border)!important;
  border-radius:var(--ap-radius)!important;
  box-shadow:var(--ap-shadow)!important;
  padding:10px 12px!important;
  min-height:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0!important;
}
.advanced-tool-body .plan-intel-hero h2,
.advanced-tool-body .resource-matrix-hero h2,
.advanced-tool-body .leveling-hero h2,
.advanced-tool-body .attendance-hero h2,
.advanced-tool-body .timesheet-hero h2,
.advanced-tool-body .cost-hero h2,
.advanced-tool-body .evm-hero h2,
.advanced-tool-body .schedule-edit-hero h2,
.advanced-tool-body .calendar-hero h2,
.advanced-tool-body .tree-hero h2{
  margin:0!important;
  font-size:15px!important;
  line-height:1.2!important;
  color:var(--ap-text)!important;
  font-weight:850!important;
}
.advanced-tool-body .plan-intel-hero p,
.advanced-tool-body .resource-matrix-hero p,
.advanced-tool-body .leveling-hero p,
.advanced-tool-body .attendance-hero p,
.advanced-tool-body .timesheet-hero p,
.advanced-tool-body .cost-hero p,
.advanced-tool-body .evm-hero p,
.advanced-tool-body .schedule-edit-hero p,
.advanced-tool-body .calendar-hero p,
.advanced-tool-body .tree-hero p{
  margin:3px 0 0!important;
  color:var(--ap-muted)!important;
  font-size:12px!important;
  line-height:1.35!important;
  max-width:900px!important;
}
.advanced-tool-body .leveling-hero-actions,
.advanced-tool-body .attendance-hero-actions,
.advanced-tool-body .timesheet-hero-actions,
.advanced-tool-body .cost-hero-actions,
.advanced-tool-body .evm-hero-actions,
.advanced-tool-body .schedule-edit-hero-actions,
.advanced-tool-body .calendar-hero-actions,
.advanced-tool-body .action-center-hero-actions{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
/* All advanced KPI strips share the same compact card model. */
.advanced-tool-body .leveling-kpi-grid,
.advanced-tool-body .evm-kpi-grid,
.advanced-tool-body .cost-kpi-grid,
.advanced-tool-body .attendance-kpi-grid,
.advanced-tool-body .timesheet-kpi-grid,
.advanced-tool-body .resource-kpis,
.advanced-tool-body .metric-grid,
.advanced-tool-body .summary-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;
  gap:8px!important;
  margin:0!important;
}
.advanced-tool-body .tree-summary-card,
.advanced-tool-body .pmo-dash-kpi,
.advanced-tool-body .resource-kpi,
.advanced-tool-body .metric-card,
.advanced-tool-body .kpi-card,
.advanced-tool-body .pmo-report-kpi{
  background:var(--ap-surface)!important;
  background-image:none!important;
  border:1px solid var(--ap-border)!important;
  border-radius:10px!important;
  box-shadow:var(--ap-shadow)!important;
  padding:9px 10px!important;
  min-height:62px!important;
  color:var(--ap-text)!important;
}
.advanced-tool-body .tree-summary-card span,
.advanced-tool-body .pmo-dash-kpi span,
.advanced-tool-body .resource-kpi span,
.advanced-tool-body .metric-card span,
.advanced-tool-body .kpi-card span{
  color:var(--ap-muted)!important;
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  font-weight:850!important;
}
.advanced-tool-body .tree-summary-card b,
.advanced-tool-body .pmo-dash-kpi b,
.advanced-tool-body .resource-kpi b,
.advanced-tool-body .metric-card b,
.advanced-tool-body .kpi-card b{
  color:var(--ap-text)!important;
  font-size:20px!important;
  line-height:1.1!important;
  margin-top:4px!important;
}
/* Mode tabs, filters, tables and forms become uniform across advanced pages. */
.advanced-tool-body .leveling-mode-tabs,
.advanced-tool-body .evm-mode-tabs,
.advanced-tool-body .cost-mode-tabs,
.advanced-tool-body .attendance-mode-tabs,
.advanced-tool-body .timesheet-mode-tabs,
.advanced-tool-body .calendar-mode-tabs,
.advanced-tool-body .schedule-mode-tabs{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  background:var(--ap-surface)!important;
  border:1px solid var(--ap-border)!important;
  border-radius:var(--ap-radius)!important;
  padding:6px!important;
  box-shadow:var(--ap-shadow)!important;
  overflow-x:auto!important;
  margin:0!important;
}
.advanced-tool-body .leveling-mode-tabs button,
.advanced-tool-body .evm-mode-tabs button,
.advanced-tool-body .cost-mode-tabs button,
.advanced-tool-body .attendance-mode-tabs button,
.advanced-tool-body .timesheet-mode-tabs button,
.advanced-tool-body .calendar-mode-tabs button,
.advanced-tool-body .schedule-mode-tabs button{
  background:#f5f8fb!important;
  border:1px solid transparent!important;
  color:#334155!important;
  border-radius:8px!important;
  min-height:30px!important;
  padding:6px 10px!important;
  font-size:12px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.advanced-tool-body .leveling-mode-tabs button.active,
.advanced-tool-body .evm-mode-tabs button.active,
.advanced-tool-body .cost-mode-tabs button.active,
.advanced-tool-body .attendance-mode-tabs button.active,
.advanced-tool-body .timesheet-mode-tabs button.active,
.advanced-tool-body .calendar-mode-tabs button.active,
.advanced-tool-body .schedule-mode-tabs button.active{
  background:var(--ap-primary-soft)!important;
  color:#0f5f58!important;
  border-color:rgba(15,118,110,.32)!important;
  box-shadow:inset 3px 0 0 var(--ap-primary)!important;
}
.advanced-tool-body .filters,
.advanced-tool-body .panel-filters,
.advanced-tool-body .modern-filters,
.advanced-tool-body .leveling-filters,
.advanced-tool-body .evm-filters,
.advanced-tool-body .cost-filters,
.advanced-tool-body .attendance-filters,
.advanced-tool-body .timesheet-filters,
.advanced-tool-body .assignment-filter-grid,
.advanced-tool-body .assignment-bulk-grid{
  background:var(--ap-surface)!important;
  border:1px solid var(--ap-border)!important;
  border-radius:var(--ap-radius)!important;
  box-shadow:var(--ap-shadow)!important;
  padding:8px!important;
  margin:0!important;
  gap:8px!important;
}
.advanced-tool-body .leveling-filter-grid,
.advanced-tool-body .evm-filter-grid,
.advanced-tool-body .cost-filter-grid,
.advanced-tool-body .attendance-filter-grid,
.advanced-tool-body .timesheet-filter-grid,
.advanced-tool-body .assignment-filter-grid,
.advanced-tool-body .assignment-bulk-grid,
.advanced-tool-body .leveling-form-grid,
.advanced-tool-body .cost-form-grid,
.advanced-tool-body .evm-form-grid,
.advanced-tool-body .calendar-form-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:8px!important;
}
.advanced-tool-body label span{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-weight:850!important;color:var(--ap-muted)!important;}
.advanced-tool-body input,
.advanced-tool-body select,
.advanced-tool-body textarea{
  min-height:32px!important;
  border:1px solid #cbd8e6!important;
  border-radius:8px!important;
  background:#fff!important;
  font-size:12px!important;
  color:var(--ap-text)!important;
  box-shadow:none!important;
}
.advanced-tool-body .pmo-card,
.advanced-tool-body .chart-card,
.advanced-tool-body .panel-card,
.advanced-tool-body .assignment-table-card,
.advanced-tool-body .full-width-panel{
  background:var(--ap-surface)!important;
  background-image:none!important;
  border:1px solid var(--ap-border)!important;
  border-radius:var(--ap-radius)!important;
  box-shadow:var(--ap-shadow)!important;
  padding:10px!important;
  margin:0!important;
  color:var(--ap-text)!important;
}
.advanced-tool-body .pmo-card-head,
.advanced-tool-body .card-head,
.advanced-tool-body .panel-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:0 0 8px 0!important;
  margin:0 0 8px 0!important;
  border-bottom:1px solid var(--ap-border-2)!important;
}
.advanced-tool-body .pmo-card-head h3,
.advanced-tool-body .card-head h3,
.advanced-tool-body .panel-head h3{font-size:14px!important;margin:0!important;color:var(--ap-text)!important;font-weight:850!important;}
.advanced-tool-body .pmo-card-head span,
.advanced-tool-body .card-head span,
.advanced-tool-body .panel-head span{font-size:11px!important;color:var(--ap-muted)!important;}
.advanced-tool-body .pmo-mini-table,
.advanced-tool-body .resource-table,
.advanced-tool-body .leveling-table,
.advanced-tool-body .cost-table,
.advanced-tool-body .evm-table,
.advanced-tool-body .assignment-table,
.advanced-tool-body table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  background:#fff!important;
}
.advanced-tool-body th{
  background:#f3f7fb!important;
  color:#52657c!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  font-size:10px!important;
  font-weight:850!important;
  padding:8px 9px!important;
  border-bottom:1px solid var(--ap-border)!important;
}
.advanced-tool-body td{
  color:#1f3046!important;
  font-size:12px!important;
  padding:8px 9px!important;
  border-bottom:1px solid var(--ap-border-2)!important;
  vertical-align:middle!important;
}
.advanced-tool-body tr:hover td{background:#f8fbff!important;}
.advanced-tool-body .leveling-two-col,
.advanced-tool-body .cost-two-col,
.advanced-tool-body .evm-two-col,
.advanced-tool-body .calendar-two-col,
.advanced-tool-body .attendance-two-col,
.advanced-tool-body .timesheet-two-col,
.advanced-tool-body .resource-master-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:10px!important;
}
.advanced-tool-body .level-status,
.advanced-tool-body .rag-pill,
.advanced-tool-body .status-pill,
.advanced-tool-body .badge,
.advanced-tool-body .pill{
  border-radius:999px!important;
  padding:3px 8px!important;
  border:1px solid var(--ap-border)!important;
  font-size:11px!important;
  font-weight:800!important;
  background:#f3f7fb!important;
  color:#334155!important;
}
.advanced-tool-body .level-status.overloaded,
.advanced-tool-body .rag-pill.red,
.advanced-tool-body .status-pill.red{background:#fff1f2!important;color:#b91c1c!important;border-color:#fecaca!important;}
.advanced-tool-body .level-status.near-capacity,
.advanced-tool-body .rag-pill.amber,
.advanced-tool-body .status-pill.amber{background:#fffbeb!important;color:#92400e!important;border-color:#fde68a!important;}
.advanced-tool-body .level-status.balanced,
.advanced-tool-body .rag-pill.green,
.advanced-tool-body .status-pill.green{background:#f0fdf4!important;color:#166534!important;border-color:#bbf7d0!important;}
@media(max-width:1200px){
  .advanced-tool-titlebar.compact-titlebar{align-items:flex-start!important;flex-direction:column!important;}
  .advanced-title-actions{justify-content:flex-start!important;}
  .advanced-tool-body .leveling-two-col,
  .advanced-tool-body .cost-two-col,
  .advanced-tool-body .evm-two-col,
  .advanced-tool-body .calendar-two-col,
  .advanced-tool-body .attendance-two-col,
  .advanced-tool-body .timesheet-two-col,
  .advanced-tool-body .resource-master-grid{grid-template-columns:1fr!important;}
}
@media(max-width:760px){
  .advanced-tool-body .plan-intel-hero,
  .advanced-tool-body .resource-matrix-hero,
  .advanced-tool-body .leveling-hero,
  .advanced-tool-body .attendance-hero,
  .advanced-tool-body .timesheet-hero,
  .advanced-tool-body .cost-hero,
  .advanced-tool-body .evm-hero,
  .advanced-tool-body .schedule-edit-hero,
  .advanced-tool-body .calendar-hero{align-items:flex-start!important;flex-direction:column!important;}
}

/* =====================================================================
   V31.20.27 — End-to-End Role Journey QA
   Purpose: compact QA workbench consistent with the single enterprise theme.
   ===================================================================== */
.role-journey-qa{display:flex;flex-direction:column;gap:12px;}
.qa-titlebar{align-items:flex-start;}
.qa-kpi-strip{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;}
.qa-kpi-card{text-align:left;min-height:58px;cursor:default;}
.qa-kpi-card span{display:block;font-size:11px;color:var(--muted,#64748b);font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.qa-kpi-card b{display:block;margin-top:4px;font-size:18px;color:var(--ink,#0f172a);}
.qa-mode-tabs{margin:0;}
.qa-journey-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px;}
.qa-journey-card,.qa-count-card{background:#fff;border:1px solid #dbe3ef;border-radius:14px;box-shadow:0 8px 24px rgba(15,23,42,.05);padding:14px;}
.qa-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px;}
.qa-card-head h3{margin:2px 0 0;font-size:15px;line-height:1.2;color:#0f172a;}
.qa-journey-card p{margin:0 0 10px;color:#475569;font-size:13px;line-height:1.4;}
.qa-meta-row{display:grid;grid-template-columns:auto 1fr auto 64px;gap:8px;align-items:center;background:#f8fafc;border:1px solid #e5edf7;border-radius:10px;padding:8px 10px;margin-bottom:10px;font-size:12px;}
.qa-meta-row span{color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.qa-meta-row b{color:#0f172a;}
.qa-step-list{margin:0 0 10px 18px;padding:0;color:#334155;font-size:12px;line-height:1.45;}
.qa-step-list li{margin:2px 0;}
.qa-check-list{border-top:1px solid #e5edf7;padding-top:8px;display:flex;flex-direction:column;gap:6px;}
.qa-check-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;font-size:12px;}
.qa-status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800;line-height:1;border:1px solid transparent;white-space:nowrap;}
.qa-status-green{color:#047857;background:#ecfdf5;border-color:#bbf7d0;}
.qa-status-amber{color:#92400e;background:#fffbeb;border-color:#fde68a;}
.qa-status-red{color:#b91c1c;background:#fef2f2;border-color:#fecaca;}
.qa-table-wrap{background:#fff;border:1px solid #dbe3ef;border-radius:14px;box-shadow:0 8px 24px rgba(15,23,42,.05);overflow:auto;}
.qa-table{width:100%;border-collapse:collapse;}
.qa-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc;border-bottom:1px solid #e5edf7;padding:9px 10px;text-align:left;}
.qa-table td{font-size:12px;color:#334155;border-bottom:1px solid #eef2f7;padding:9px 10px;vertical-align:top;}
.qa-finding-list{display:flex;flex-direction:column;gap:8px;}
.qa-finding{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dbe3ef;border-radius:12px;padding:10px 12px;font-size:13px;color:#334155;}
.qa-finding.amber{border-left:4px solid #f59e0b;}
.qa-finding.red{border-left:4px solid #ef4444;}
.qa-finding.green{border-left:4px solid #10b981;}
.qa-count-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;}
.qa-count-card span{display:block;font-size:11px;color:#64748b;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.qa-count-card b{display:block;margin-top:5px;color:#0f172a;font-size:20px;}
@media(max-width:980px){.qa-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr));}.qa-journey-grid{grid-template-columns:1fr;}.qa-meta-row{grid-template-columns:1fr 1fr;}}


/* V31.20.28 — Final Smoke / Deploy Candidate */
.final-smoke-workbench{display:flex;flex-direction:column;gap:12px;}
.final-smoke-titlebar{border:1px solid var(--sn-border,#d7dee8);background:#fff;border-radius:12px;padding:14px 16px;}
.final-smoke-kpi-strip{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;}
.final-smoke-kpi{text-align:left;min-height:58px;}
.final-smoke-kpi span{display:block;font-size:11px;color:#5d6b7b;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;}
.final-smoke-kpi b{font-size:18px;color:#12263a;}
.final-smoke-tabs{margin:0;}
.final-smoke-table{background:#fff;border:1px solid var(--sn-border,#d7dee8);border-radius:12px;overflow:auto;}
.final-smoke-status{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700;border:1px solid #d7dee8;background:#f7f9fb;color:#334155;white-space:nowrap;}
.final-smoke-status-green{border-color:#b8d9c7;background:#eefaf3;color:#12623a;}
.final-smoke-status-amber{border-color:#f3d28a;background:#fff8e6;color:#8a5a00;}
.final-smoke-status-red{border-color:#f0b7b7;background:#fff1f1;color:#a12222;}
.final-smoke-count-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;}
.final-smoke-count-card{border:1px solid var(--sn-border,#d7dee8);background:#fff;border-radius:12px;padding:12px;display:flex;justify-content:space-between;gap:10px;align-items:center;}
.final-smoke-count-card span{font-size:12px;color:#5d6b7b;}
.final-smoke-count-card b{font-size:18px;color:#12263a;}
.final-smoke-notes{border:1px solid var(--sn-border,#d7dee8);background:#fff;border-radius:12px;padding:14px 16px;}
.final-smoke-notes h3{margin:0 0 8px;font-size:15px;}
.final-smoke-notes ul{margin:0 0 10px 18px;padding:0;}
.final-smoke-notes li{margin:6px 0;color:#334155;}
@media(max-width:1100px){.final-smoke-kpi-strip{grid-template-columns:repeat(3,1fr);}}
@media(max-width:720px){.final-smoke-kpi-strip{grid-template-columns:repeat(2,1fr);}}


/* V31.20.29 — Executive polish and action reliability visual sweep */
:root{
  --v2929-bg:#f5f7fa;
  --v2929-surface:#ffffff;
  --v2929-border:#d9e2ec;
  --v2929-text:#102033;
  --v2929-muted:#5f7285;
  --v2929-accent:#0f766e;
  --v2929-accent-soft:#eefaf7;
  --v2929-danger:#b42318;
  --v2929-warning:#b7791f;
}
/* Professional single-line utility header: no childish bubble toolbar, no overlap */
.app-header,.topbar,.global-header,.shell-header,.modern-topbar,.page-header{
  min-height:38px!important;
  height:auto!important;
  padding:4px 10px!important;
  border-radius:0!important;
  background:#fff!important;
  border-bottom:1px solid var(--v2929-border)!important;
  box-shadow:none!important;
}
.app-header-left{gap:6px!important;min-width:0!important;}
.app-header-left h1,.topbar h1{font-size:15px!important;line-height:18px!important;margin:0!important;color:var(--v2929-text)!important;font-weight:800!important;}
.app-header-actions,.topbar-actions,.compact-header-actions{
  gap:5px!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  min-width:0!important;
}
/* remove noisy shortcut/client chips from header; routes remain available through sidebar/profile */
.client-switch-button.text-header-action,.favorite-button.text-header-action{display:none!important;}
.text-header-action,.header-chat.text-header-action,.header-bell.text-header-action,.profile-button.text-header-action,
.release-segmented-control,.attendance-header-widget{
  min-height:26px!important;height:28px!important;border-radius:7px!important;padding:3px 8px!important;
  font-size:11px!important;font-weight:700!important;box-shadow:none!important;background:#fff!important;border:1px solid var(--v2929-border)!important;color:#24364a!important;
}
.release-segmented-control{padding:0!important;overflow:hidden!important;display:inline-flex!important;}
.release-segmented-control span,.release-segmented-control label{font-size:10px!important;padding:0 7px!important;letter-spacing:.08em!important;color:#64748b!important;}
.release-segmented-control button{height:28px!important;padding:0 10px!important;border-radius:0!important;font-size:11px!important;}
.release-segmented-control button.active{background:var(--v2929-accent)!important;color:#fff!important;}
.attendance-header-widget .attendance-time{font-size:12px!important;font-weight:800!important;color:#102033!important;}
.attendance-header-widget .attendance-label,.attendance-header-widget small{display:none!important;}
.attendance-header-widget button,.attendance-header-widget .attendance-action{height:24px!important;padding:0 8px!important;border-radius:6px!important;font-size:11px!important;}
.inline-count{min-width:16px!important;height:16px!important;line-height:16px!important;font-size:10px!important;right:2px!important;top:-5px!important;}
.profile-avatar{width:22px!important;height:22px!important;font-size:11px!important;border-radius:50%!important;background:var(--v2929-accent)!important;color:#fff!important;}
.breadcrumb-shell,.breadcrumb{font-size:11px!important;line-height:16px!important;margin:0!important;color:#496176!important;}
/* Workbench title bars: no hero banners, no excessive vertical space */
.full-width-panel,.workbench-titlebar,.compact-titlebar,.my-work-hero,.reports-hero,.notification-hero,.advanced-tool-hero,.pmo-card,.panel{
  border-radius:9px!important;border:1px solid var(--v2929-border)!important;background:#fff!important;box-shadow:none!important;
}
.workbench-titlebar,.compact-titlebar,.my-work-hero,.reports-hero,.notification-hero,.advanced-tool-hero{
  padding:10px 12px!important;margin:8px 0!important;min-height:0!important;align-items:center!important;
}
.workbench-titlebar h2,.compact-titlebar h2,.my-work-hero h2,.reports-hero h2,.notification-hero h2,.advanced-tool-hero h2{
  font-size:17px!important;line-height:21px!important;margin:0 0 2px!important;color:var(--v2929-text)!important;
}
.workbench-titlebar p,.compact-titlebar p,.my-work-hero p,.reports-hero p,.notification-hero p,.advanced-tool-hero p{
  font-size:12px!important;line-height:16px!important;margin:0!important;color:var(--v2929-muted)!important;
}
.titlebar-actions,.notification-hero-actions,.reports-hero-actions,.action-center-hero-actions{gap:6px!important;}
/* consistent metric boxes */
.my-work-kpi-grid,.tree-summary-grid,.action-center-kpi-grid,.schedule-kpi-grid,.plan-compact-metrics,.dashboard-kpi-grid,.reports-kpi-grid,.notification-kpi-grid,.pmo-report-kpi-strip{
  display:grid!important;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;gap:8px!important;margin:8px 0!important;
}
.my-work-kpi,.action-center-kpi,.tree-summary-card,.dashboard-kpi,.plan-metric-chip,.metric-card,.pmo-report-kpi{
  min-height:56px!important;padding:9px 11px!important;border-radius:8px!important;border:1px solid var(--v2929-border)!important;background:#fff!important;box-shadow:none!important;text-align:left!important;color:var(--v2929-text)!important;
}
.my-work-kpi span,.action-center-kpi span,.tree-summary-card span,.dashboard-kpi span,.plan-metric-chip span,.metric-card span,.pmo-report-kpi span{
  font-size:10px!important;line-height:12px!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#60758a!important;font-weight:800!important;
}
.my-work-kpi b,.action-center-kpi b,.tree-summary-card b,.dashboard-kpi b,.plan-metric-chip b,.metric-card b,.pmo-report-kpi b{
  font-size:18px!important;line-height:21px!important;margin-top:2px!important;color:var(--v2929-text)!important;font-weight:800!important;
}
.my-work-kpi small,.action-center-kpi small,.tree-summary-card small,.dashboard-kpi small,.plan-metric-chip small,.metric-card small,.pmo-report-kpi small{
  font-size:10px!important;line-height:13px!important;color:var(--v2929-muted)!important;
}
.my-work-kpi.active,.metric-card.active,.pmo-report-kpi.active,.filter-card.active,.tree-summary-card.active{
  background:var(--v2929-accent-soft)!important;border-color:#7cc7bd!important;box-shadow:inset 3px 0 0 var(--v2929-accent)!important;color:var(--v2929-text)!important;outline:none!important;
}
.my-work-kpi.active span,.my-work-kpi.active b,.my-work-kpi.active small,
.metric-card.active span,.metric-card.active b,.metric-card.active small{color:inherit!important;}
/* filters/tabs compact */
.my-work-filter-bar,.filter-bar,.plan-filter-bar,.workspace-tabs,.rbac-mode-tabs,.production-mode-tabs,.notification-mode-tabs{
  padding:6px!important;gap:6px!important;border-radius:8px!important;background:#fff!important;border:1px solid var(--v2929-border)!important;box-shadow:none!important;
}
.rbac-mode-tabs button,.workspace-tabs button,.production-mode-tabs button,.notification-mode-tabs button,.plan-board-view-switch button,
.secondary.small-btn,.secondary.mini,.primary.small-btn,.primary.mini,.micro-btn{
  min-height:26px!important;height:auto!important;padding:5px 9px!important;border-radius:7px!important;font-size:11px!important;line-height:14px!important;font-weight:700!important;box-shadow:none!important;
}
.rbac-mode-tabs button.active,.workspace-tabs button.active,.production-mode-tabs button.active,.notification-mode-tabs button.active,.plan-board-view-switch button.active{
  background:var(--v2929-accent-soft)!important;color:#075e58!important;border:1px solid #8ed6cc!important;box-shadow:inset 3px 0 0 var(--v2929-accent)!important;
}
.primary.small-btn,.primary.mini,.micro-btn.teal{background:var(--v2929-accent)!important;color:#fff!important;border-color:var(--v2929-accent)!important;}
/* One table grammar across all screens */
.sn-table-wrap,.reports-table-wrap,.notification-table-wrap,.table-card,.pmo-card .reports-table-wrap{border-radius:8px!important;border:1px solid var(--v2929-border)!important;background:#fff!important;box-shadow:none!important;overflow:auto!important;}
table,.pmo-mini-table,.reports-table,.notification-table,.sn-table{border-collapse:collapse!important;width:100%!important;background:#fff!important;}
th,.pmo-mini-table th,.reports-table th,.notification-table th,.sn-table th{
  height:32px!important;background:#f4f7fb!important;color:#52677b!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.05em!important;border-bottom:1px solid var(--v2929-border)!important;padding:7px 10px!important;
}
td,.pmo-mini-table td,.reports-table td,.notification-table td,.sn-table td{
  padding:8px 10px!important;border-bottom:1px solid #e8eef5!important;font-size:12px!important;color:#1f3348!important;vertical-align:middle!important;
}
tr:hover td{background:#f8fbfd!important;}
/* Alerts: never mega cards in business view */
.governance-alert-grid{display:none!important;}
.governance-alert-card{min-height:0!important;padding:10px!important;border-radius:8px!important;box-shadow:none!important;}
.notification-table-wrap{max-height:calc(100vh - 300px)!important;}
/* Report context: business-readable, no raw leadership JSON */
.leadership-export-context pre,.pmo-reporting-workspace pre{display:none!important;}
.report-context-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:8px!important;margin-top:8px!important;}
.report-context-pill{border:1px solid var(--v2929-border);border-radius:8px;background:#f8fafc;padding:8px 10px;}
.report-context-pill span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:800;}
.report-context-pill b{display:block;font-size:13px;color:#102033;margin-top:2px;}
/* Drawer/layout consistency */
.plan-detail-drawer,.drawer,.side-drawer{border-radius:10px 0 0 10px!important;box-shadow:-8px 0 24px rgba(15,23,42,.12)!important;}
.pd-section,.drawer-section{border:1px solid var(--v2929-border)!important;border-radius:8px!important;background:#fff!important;padding:10px!important;margin-bottom:8px!important;}
/* Desktop content density */
.content,.app-content{background:var(--v2929-bg)!important;padding:8px 12px!important;}
.footer.frame-footer{display:none!important;}
@media(max-width:1200px){
  .app-header-actions .header-chat.text-header-action{display:none!important;}
  .my-work-kpi-grid,.tree-summary-grid,.action-center-kpi-grid,.schedule-kpi-grid,.plan-compact-metrics,.dashboard-kpi-grid,.reports-kpi-grid,.notification-kpi-grid,.pmo-report-kpi-strip{grid-template-columns:repeat(3,minmax(150px,1fr))!important;}
}


/* V31.20.30 — latest-version sync UI polish, drawer overflow guard and compact enterprise grids */
:root{--v3029-surface:#ffffff;--v3029-bg:#f6f8fb;--v3029-border:#d8e2ee;--v3029-soft:#eef4f8;--v3029-text:#102033;--v3029-muted:#64748b;--v3029-accent:#0f8b7f;--v3029-danger:#dc2626;}
.app-main{background:var(--v3029-bg)!important;}
.app-header{height:40px!important;min-height:40px!important;padding:4px 10px!important;border-bottom:1px solid var(--v3029-border)!important;background:#fff!important;box-shadow:none!important;}
.app-title h1,.compact-product-title h1{font-size:14px!important;line-height:16px!important;font-weight:800!important;margin:0!important;color:var(--v3029-text)!important;}
.header-breadcrumb{font-size:10px!important;line-height:12px!important;margin:0!important;color:var(--v3029-muted)!important;}
.app-header-actions.compact-header-actions{gap:4px!important;align-items:center!important;}
.favorite-button.text-header-action,.client-switch-button.text-header-action{display:none!important;}
.header-chat.text-header-action,.header-bell.text-header-action,.profile-button.text-header-action,.release-segment-control,.release-segmented-control,.header-attendance-control{height:26px!important;min-height:26px!important;border-radius:7px!important;font-size:11px!important;box-shadow:none!important;}
.header-chat.text-header-action,.header-bell.text-header-action{padding:0 8px!important;}
.profile-avatar{width:22px!important;height:22px!important;font-size:11px!important;}
.header-attendance-control{padding:2px 4px!important;gap:4px!important;}
.header-attendance-clock{font-size:11px!important;}
.header-attendance-btn{height:22px!important;padding:0 8px!important;border-radius:6px!important;font-size:10px!important;}
.release-segment-control,.release-segmented-control{gap:0!important;padding:0!important;overflow:hidden!important;}
.release-segment-control button,.release-segmented-control button{height:24px!important;min-width:42px!important;padding:0 8px!important;border-radius:0!important;font-size:10px!important;}
.page-hero,.my-work-hero,.reports-hero,.notification-hero,.advanced-tool-hero,.admin-hero,.pmo-report-titlebar,.full-width-panel{border:1px solid var(--v3029-border)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;}
.page-hero,.my-work-hero,.reports-hero,.notification-hero{padding:10px 12px!important;margin-bottom:8px!important;min-height:0!important;}
.page-hero h2,.my-work-hero h2,.reports-hero h2,.notification-hero h2,.workbench-section-head h3{font-size:16px!important;line-height:20px!important;margin:0!important;color:var(--v3029-text)!important;}
.page-hero p,.my-work-hero p,.reports-hero p,.notification-hero p,.workbench-section-head p{font-size:11px!important;line-height:15px!important;color:var(--v3029-muted)!important;margin:2px 0 0!important;}
.my-work-kpi-grid,.pmo-report-kpi-strip,.notification-kpi-grid,.reports-kpi-grid,.plan-header-metrics{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(155px,1fr))!important;gap:6px!important;margin:6px 0!important;}
.metric-card,.my-work-kpi,.tree-summary-card,.pmo-report-kpi,.plan-header-metric{min-height:54px!important;padding:8px 10px!important;border:1px solid var(--v3029-border)!important;border-left:3px solid #cbd5e1!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;color:var(--v3029-text)!important;text-align:left!important;}
.metric-card.active,.my-work-kpi.active,.plan-header-metric.active,.filter-card.active{background:#eefaf8!important;border-color:#99d8d0!important;border-left-color:var(--v3029-accent)!important;color:var(--v3029-text)!important;box-shadow:inset 0 0 0 1px rgba(15,139,127,.12)!important;}
.metric-card span,.my-work-kpi span,.tree-summary-card span,.pmo-report-kpi span,.plan-header-metric span{font-size:10px!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:#52657b!important;line-height:12px!important;}
.metric-card b,.my-work-kpi b,.tree-summary-card b,.pmo-report-kpi b,.plan-header-metric b{font-size:20px!important;line-height:22px!important;color:var(--v3029-text)!important;}
.metric-card small,.my-work-kpi small,.tree-summary-card small,.pmo-report-kpi small,.plan-header-metric small{font-size:10px!important;color:#64748b!important;}
.rbac-mode-tabs,.workspace-tabs,.notification-mode-tabs,.plan-primary-tabs,.plan-board-view-switch{gap:4px!important;padding:6px!important;border:1px solid var(--v3029-border)!important;border-radius:9px!important;background:#fff!important;margin:6px 0!important;}
.rbac-mode-tabs button,.workspace-tabs button,.notification-mode-tabs button,.plan-board-view-switch button{height:26px!important;padding:0 10px!important;border-radius:7px!important;background:#f3f6fa!important;border:1px solid transparent!important;color:#24364a!important;font-size:11px!important;font-weight:700!important;}
.rbac-mode-tabs button.active,.workspace-tabs button.active,.notification-mode-tabs button.active,.plan-board-view-switch button.active{background:#e7f7f5!important;border-color:#8fd2cb!important;color:#075e55!important;}
.table-card,.pmo-card,.export-context-card{border:1px solid var(--v3029-border)!important;border-radius:10px!important;box-shadow:none!important;background:#fff!important;}
.data-table,.pmo-mini-table,.reports-table,.notification-table,.my-work-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;font-size:12px!important;}
.data-table th,.pmo-mini-table th,.reports-table th,.notification-table th,.my-work-table th{height:30px!important;padding:7px 9px!important;background:#f3f6fa!important;color:#52657b!important;text-transform:uppercase!important;font-size:10px!important;letter-spacing:.04em!important;border-bottom:1px solid var(--v3029-border)!important;}
.data-table td,.pmo-mini-table td,.reports-table td,.notification-table td,.my-work-table td{padding:8px 9px!important;border-bottom:1px solid #e8eef5!important;color:#172235!important;vertical-align:middle!important;}
.status-pill,.alert-chip,.pill{border-radius:999px!important;padding:2px 7px!important;font-size:10px!important;font-weight:800!important;line-height:16px!important;background:#f1f5f9!important;color:#334155!important;border:1px solid #d8e2ee!important;}
.primary.small-btn,.primary.mini,.secondary.small-btn,.secondary.mini,.micro-action,.small-btn{height:28px!important;border-radius:7px!important;padding:0 10px!important;font-size:11px!important;font-weight:800!important;box-shadow:none!important;}
.plan-detail-overlay.professional-detail-overlay{align-items:stretch!important;justify-content:flex-end!important;background:rgba(15,23,42,.45)!important;overflow:hidden!important;}
.plan-detail-drawer.professional-detail-drawer,.compact-plan-drawer{width:min(660px,calc(100vw - 300px))!important;max-width:min(660px,calc(100vw - 300px))!important;height:100vh!important;max-height:100vh!important;border-radius:0!important;overflow:hidden!important;background:#fff!important;box-shadow:-10px 0 30px rgba(15,23,42,.16)!important;}
.plan-detail-drawer *,.compact-plan-drawer *{box-sizing:border-box!important;min-width:0!important;}
.pd-drawer-body{height:calc(100vh - 58px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding:10px 12px 18px!important;}
.pd-drawer-body::-webkit-scrollbar{width:8px!important;height:0!important;}
.pd-drawer-body::-webkit-scrollbar-thumb{background:#cbd5e1!important;border-radius:999px!important;}
.plan-detail-drawer{overflow-x:hidden!important;}
.plan-detail-drawer .pd-form-grid,.plan-detail-drawer .pd-summary-grid,.plan-detail-drawer .pd-scope-preview{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:8px!important;}
.plan-detail-drawer select,.plan-detail-drawer input,.plan-detail-drawer textarea{max-width:100%!important;width:100%!important;}
.pd-section{padding:10px!important;margin:8px 0!important;border:1px solid var(--v3029-border)!important;border-radius:9px!important;background:#fff!important;overflow:hidden!important;}
.pd-list-row,.pd-doc-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important;overflow:hidden!important;}
.pd-row-actions{display:flex!important;gap:4px!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
.governance-alert-card{display:none!important;}
.governance-alert-table{display:table!important;}
.leadership-export-context pre,.leadership-export-context code,.pmo-report-mode-body pre.json-pre{display:none!important;}
.my-work-top-grid{display:none!important;}
.my-work-tech-note{display:none!important;}
.notification-kpi-grid .tree-summary-card,.governance-alert-kpis .tree-summary-card{min-height:52px!important;}
@media(max-width:900px){.plan-detail-drawer.professional-detail-drawer,.compact-plan-drawer{width:100vw!important;max-width:100vw!important}.app-header-actions.compact-header-actions .header-chat.text-header-action,.app-header-actions.compact-header-actions .favorite-button.text-header-action{display:none!important}.my-work-kpi-grid,.pmo-report-kpi-strip,.notification-kpi-grid,.reports-kpi-grid{grid-template-columns:repeat(2,minmax(120px,1fr))!important}}

/* V31.20.31 — Action feedback, pending control state and uniform icon system */
:root{
  --swomb-icon-size:22px;
  --swomb-icon-bg:#eef5f8;
  --swomb-icon-border:#d7e5ed;
  --swomb-icon-fg:#0f5f66;
  --swomb-accent:#0f8f82;
  --swomb-accent-soft:#e9fbf8;
  --swomb-text:#0f1f33;
  --swomb-muted:#5f6f82;
  --swomb-line:#dbe6ee;
}
.app-icon-glyph,
.side-menu-icon,
.side-menu-group-icon,
.favorite-icon,
.profile-action-icon,
.header-action-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:var(--swomb-icon-size) !important;
  height:var(--swomb-icon-size) !important;
  min-width:var(--swomb-icon-size) !important;
  border-radius:8px !important;
  border:1px solid rgba(215,229,237,.72) !important;
  background:rgba(238,245,248,.92) !important;
  color:var(--swomb-icon-fg) !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  text-align:center !important;
}
.side-menu-item.active .side-menu-icon,
.side-menu-heading-button:hover .side-menu-group-icon,
.favorite-quick-item.active .favorite-icon{
  background:var(--swomb-accent-soft) !important;
  border-color:#8eddd3 !important;
  color:#076e64 !important;
}
.side-menu-item{gap:10px !important;}
.side-menu-heading-left{gap:10px !important;align-items:center !important;}
.side-menu-icon .app-icon-glyph,
.side-menu-group-icon .app-icon-glyph,
.favorite-icon .app-icon-glyph{border:0 !important;background:transparent !important;width:100% !important;height:100% !important;min-width:100% !important;}
.app-header-actions .text-header-action,
.compact-header-actions .text-header-action,
.client-switch-button.text-header-action,
.favorite-button.text-header-action,
.header-chat.text-header-action,
.header-bell.text-header-action,
.profile-text-action{
  height:32px !important;
  min-height:32px !important;
  padding:0 9px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  border:1px solid var(--swomb-line) !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--swomb-text) !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}
.app-header-actions .header-action-icon{
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  border-radius:6px !important;
  font-size:11px !important;
}
.app-header-actions .inline-count{
  position:static !important;
  transform:none !important;
  min-width:17px !important;
  height:17px !important;
  line-height:17px !important;
  padding:0 5px !important;
  margin-left:0 !important;
  border-radius:999px !important;
  background:#ef2d2d !important;
  color:#fff !important;
  font-size:10px !important;
  font-weight:900 !important;
}
.profile-avatar{width:22px !important;height:22px !important;min-width:22px !important;border-radius:999px !important;}
.global-toast-region{
  position:fixed !important;
  top:72px !important;
  right:24px !important;
  z-index:99999 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  pointer-events:none !important;
}
.global-toast{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-width:280px !important;
  max-width:430px !important;
  padding:11px 14px !important;
  border-radius:12px !important;
  border:1px solid var(--swomb-line) !important;
  background:#fff !important;
  box-shadow:0 18px 45px rgba(15,31,51,.16) !important;
  color:var(--swomb-text) !important;
  font-size:13px !important;
  font-weight:800 !important;
}
.global-toast-success{border-left:4px solid #16a34a !important;}
.global-toast-error{border-left:4px solid #dc2626 !important;}
.global-toast-pending{border-left:4px solid #0f8f82 !important;}
.global-toast-info{border-left:4px solid #2563eb !important;}
.toast-status-dot{
  width:9px !important;height:9px !important;border-radius:999px !important;background:#0f8f82 !important;display:inline-flex !important;flex:0 0 auto !important;
}
.global-toast-error .toast-status-dot{background:#dc2626 !important;}
.global-toast-success .toast-status-dot{background:#16a34a !important;}
.toast-spinner{
  width:14px !important;
  height:14px !important;
  border-radius:999px !important;
  border:2px solid #cfe7e4 !important;
  border-top-color:#0f8f82 !important;
  animation:swombSpin .8s linear infinite !important;
  flex:0 0 auto !important;
}
@keyframes swombSpin{to{transform:rotate(360deg)}}
button.swomb-action-pending,
button:disabled.swomb-action-pending{
  opacity:.72 !important;
  cursor:wait !important;
  pointer-events:none !important;
  position:relative !important;
}
button.swomb-action-pending::after{
  content:'' !important;
  width:11px !important;
  height:11px !important;
  margin-left:6px !important;
  border-radius:999px !important;
  border:2px solid rgba(15,143,130,.25) !important;
  border-top-color:#0f8f82 !important;
  display:inline-block !important;
  vertical-align:-2px !important;
  animation:swombSpin .8s linear infinite !important;
}
.metric-card.active,
.kpi-card.active,
.summary-card.active,
.work-filter-card.active{
  background:#f7fffd !important;
  border-color:#79d7cf !important;
  color:var(--swomb-text) !important;
}
.metric-card.active *,
.kpi-card.active *,
.summary-card.active *,
.work-filter-card.active *{color:inherit !important;}
.drawer-panel,
.plan-detail-drawer,
.side-drawer{
  overflow-x:hidden !important;
}
.drawer-panel *,.plan-detail-drawer *,.side-drawer *{max-width:100% !important;box-sizing:border-box !important;}

/* ======================================================================
   V31.20.32 — Drawer Viewport Realignment and Zero Horizontal Overflow
   Purpose: remove the broken sideways drawer, clipped controls and heavy blur
   shown during live QA. Right drawer must be a stable viewport panel with
   vertical content flow only; no bottom scrollbar, no clipped action area.
   ====================================================================== */
:root{
  --dgc-drawer-width: min(720px, calc(100vw - 300px));
  --dgc-drawer-head-h: 70px;
}
body:has(.plan-detail-overlay.professional-detail-overlay){
  overflow:hidden !important;
}
.plan-detail-overlay.professional-detail-overlay{
  position:fixed !important;
  inset:0 !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:flex-end !important;
  z-index:9990 !important;
  background:rgba(15,23,42,.22) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  overflow:hidden !important;
  overscroll-behavior:contain !important;
}
.plan-detail-drawer.professional-detail-drawer,
.plan-detail-drawer.compact-plan-drawer.professional-detail-drawer{
  position:relative !important;
  flex:0 0 var(--dgc-drawer-width) !important;
  width:var(--dgc-drawer-width) !important;
  max-width:var(--dgc-drawer-width) !important;
  min-width:0 !important;
  height:100dvh !important;
  max-height:100dvh !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:0 !important;
  border-left:1px solid #d8e2ee !important;
  background:#fff !important;
  box-shadow:-12px 0 28px rgba(15,23,42,.18) !important;
  overflow:hidden !important;
  transform:none !important;
  contain:layout paint !important;
}
.plan-detail-drawer.professional-detail-drawer *,
.plan-detail-drawer.compact-plan-drawer.professional-detail-drawer *{
  box-sizing:border-box !important;
  min-width:0 !important;
  max-width:100% !important;
}
.pd-drawer-head{
  height:var(--dgc-drawer-head-h) !important;
  min-height:var(--dgc-drawer-head-h) !important;
  max-height:var(--dgc-drawer-head-h) !important;
  padding:12px 18px !important;
  border-bottom:1px solid #e5edf5 !important;
  background:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  position:sticky !important;
  top:0 !important;
  z-index:2 !important;
}
.pd-title-block{min-width:0 !important;flex:1 1 auto !important;}
.pd-title-block .eyebrow{font-size:10px !important;line-height:1 !important;color:#2563eb !important;font-weight:900 !important;text-transform:uppercase !important;letter-spacing:.07em !important;}
.pd-title-block h3{
  max-width:100% !important;
  margin:4px 0 2px !important;
  font-size:16px !important;
  line-height:1.2 !important;
  color:#0f172a !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.pd-title-block p{margin:0 !important;font-size:11px !important;color:#52677c !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;}
.pd-close{flex:0 0 32px !important;width:32px !important;height:32px !important;border-radius:10px !important;}
.pd-drawer-body{
  height:calc(100dvh - var(--dgc-drawer-head-h)) !important;
  max-height:calc(100dvh - var(--dgc-drawer-head-h)) !important;
  width:100% !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding:12px 14px 18px !important;
  scrollbar-width:thin !important;
  scrollbar-color:#cbd5e1 transparent !important;
}
.pd-drawer-body::-webkit-scrollbar{width:8px !important;height:0 !important;}
.pd-drawer-body::-webkit-scrollbar-track{background:transparent !important;}
.pd-drawer-body::-webkit-scrollbar-thumb{background:#cbd5e1 !important;border-radius:999px !important;}
.pd-section{
  width:100% !important;
  overflow:hidden !important;
  border:1px solid #dbe5ef !important;
  border-radius:12px !important;
  background:#fff !important;
  padding:10px 12px !important;
  margin:0 0 10px !important;
  box-shadow:none !important;
}
.pd-section-head{display:flex !important;align-items:flex-start !important;justify-content:space-between !important;gap:10px !important;margin-bottom:8px !important;}
.pd-section-head h4{margin:0 !important;font-size:13px !important;line-height:1.2 !important;text-transform:none !important;letter-spacing:0 !important;color:#0f172a !important;}
.pd-section-head span{font-size:11px !important;color:#64748b !important;}
.pd-mini-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:8px !important;width:100% !important;}
.pd-mini-metric{min-width:0 !important;padding:8px 9px !important;border:1px solid #dbe5ef !important;border-radius:10px !important;background:#f8fafc !important;}
.pd-mini-metric span{font-size:10px !important;line-height:1 !important;color:#64748b !important;letter-spacing:.04em !important;text-transform:uppercase !important;font-weight:900 !important;}
.pd-mini-metric b{font-size:12px !important;line-height:1.15 !important;margin-top:4px !important;color:#0f172a !important;}
.pd-mini-metric small{font-size:10px !important;line-height:1.2 !important;color:#64748b !important;}
.pd-form-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto !important;
  gap:8px !important;
  align-items:end !important;
  width:100% !important;
}
.pd-form-grid label{display:flex !important;flex-direction:column !important;gap:5px !important;min-width:0 !important;}
.pd-form-grid label span{font-size:10px !important;color:#64748b !important;text-transform:uppercase !important;letter-spacing:.05em !important;font-weight:900 !important;}
.pd-form-grid select,.pd-form-grid input,.pd-form-grid textarea,.pd-comment-form textarea,.pd-progress-row input{
  width:100% !important;
  min-width:0 !important;
  height:34px !important;
  padding:7px 9px !important;
  border:1px solid #cfdce8 !important;
  border-radius:9px !important;
  background:#fff !important;
  color:#0f172a !important;
  font-size:12px !important;
  line-height:1.2 !important;
}
.pd-form-grid textarea,.pd-comment-form textarea{height:50px !important;resize:vertical !important;}
.pd-form-actions{display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:6px !important;min-width:118px !important;width:auto !important;}
.pd-form-actions .mini{width:auto !important;white-space:nowrap !important;}
.pd-action-row{display:flex !important;align-items:center !important;gap:6px !important;flex-wrap:wrap !important;width:100% !important;}
.pd-progress-row{display:grid !important;grid-template-columns:96px minmax(0,1fr) !important;gap:8px !important;align-items:center !important;margin-top:8px !important;width:100% !important;}
.pd-progress-row .mini{width:100% !important;}
.pd-scope-preview{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:8px !important;margin-top:8px !important;width:100% !important;overflow:hidden !important;}
.pd-scope-group{min-width:0 !important;border:1px solid #e5edf5 !important;border-radius:10px !important;background:#fbfdff !important;padding:8px !important;overflow:hidden !important;}
.pd-scope-group-head{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:6px !important;margin-bottom:5px !important;}
.pd-scope-group-head b{font-size:10px !important;letter-spacing:.04em !important;text-transform:uppercase !important;color:#52677c !important;}
.pd-doc-row,.pd-list-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:8px !important;
  align-items:center !important;
  width:100% !important;
  overflow:hidden !important;
  padding:7px 0 !important;
  border-bottom:1px solid #eef3f7 !important;
}
.pd-doc-row b,.pd-list-row b{display:block !important;font-size:12px !important;line-height:1.25 !important;white-space:normal !important;overflow-wrap:anywhere !important;color:#0f172a !important;}
.pd-doc-row span,.pd-list-row span{display:block !important;font-size:11px !important;line-height:1.25 !important;color:#64748b !important;white-space:normal !important;overflow-wrap:anywhere !important;}
.pd-row-actions{display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:5px !important;flex-wrap:wrap !important;max-width:210px !important;}
.pd-row-actions .mini,.pd-action-row .mini,.pd-section-head .mini,.pd-form-actions .mini{
  min-height:30px !important;
  height:30px !important;
  padding:5px 9px !important;
  border-radius:9px !important;
  font-size:11px !important;
  line-height:1 !important;
}
.pd-comment-form{display:grid !important;grid-template-columns:minmax(0,1fr) auto !important;gap:8px !important;align-items:end !important;width:100% !important;}
.pd-gate-strip{display:flex !important;align-items:center !important;gap:6px !important;flex-wrap:wrap !important;margin-top:8px !important;overflow:hidden !important;}
.pd-gate-strip small{max-width:100% !important;white-space:normal !important;overflow-wrap:anywhere !important;}
.plan-detail-drawer table,.plan-detail-drawer .table-wrap,.plan-detail-drawer .wbs-grid-table-wrap{max-width:100% !important;overflow-x:hidden !important;}
.plan-detail-drawer .pd-inline-list{width:100% !important;overflow:hidden !important;}
@media(max-width:1180px){
  :root{--dgc-drawer-width:min(680px, calc(100vw - 260px));}
  .pd-mini-grid,.pd-scope-preview{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .pd-form-grid{grid-template-columns:1fr 1fr !important;}
  .pd-form-actions{grid-column:1 / -1 !important;justify-content:flex-end !important;}
}
@media(max-width:820px){
  :root{--dgc-drawer-width:100vw;}
  .pd-form-grid,.pd-comment-form,.pd-progress-row,.pd-doc-row,.pd-list-row{grid-template-columns:1fr !important;}
  .pd-row-actions,.pd-form-actions{max-width:none !important;justify-content:flex-start !important;}
}

/* ======================================================================
   V31.20.33 — Targeted Header Spacing and Non-Filled Card Selection
   Scope: only fix the regression called out in live QA.
   - Do not change navigation.
   - Do not add/remove capability icons.
   - Do not use filled green KPI/card selection.
   - Give header controls breathing room without making the header tall.
   ====================================================================== */
:root{
  --dgc33-accent:#0f766e;
  --dgc33-accent-soft:#f2fbfa;
  --dgc33-accent-border:#73cfc5;
  --dgc33-border:#dbe6ee;
  --dgc33-text:#102033;
  --dgc33-muted:#5e7187;
}

/* Header: compact, but not cramped or touching. */
.app-header,
.topbar,
.global-header,
.shell-header,
.modern-topbar,
.page-header{
  min-height:50px!important;
  padding:7px 14px!important;
  gap:12px!important;
  align-items:center!important;
  background:#fff!important;
  border-bottom:1px solid var(--dgc33-border)!important;
  box-shadow:0 1px 0 rgba(15,23,42,.04)!important;
}
.app-header-left,
.topbar-left,
.global-header-left{
  gap:8px!important;
  min-width:0!important;
}
.app-header-actions,
.topbar-actions,
.compact-header-actions{
  gap:8px!important;
  column-gap:8px!important;
  row-gap:6px!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
}
.app-header-actions > *,
.compact-header-actions > *,
.topbar-actions > *{
  margin:0!important;
  position:relative!important;
  flex:0 0 auto!important;
}
.header-attendance-control,
.attendance-header-widget,
.release-segment-control.compact-control,
.release-segmented-control,
.client-switch-button.text-header-action,
.favorite-button.text-header-action,
.header-chat.text-header-action,
.header-bell.text-header-action,
.profile-button.text-header-action,
.profile-text-action,
.text-header-action{
  height:31px!important;
  min-height:31px!important;
  padding:0 10px!important;
  border-radius:9px!important;
  gap:6px!important;
  border:1px solid #cfdbe8!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#13283d!important;
}
.release-segment-control.compact-control,
.release-segmented-control{
  padding:2px!important;
  gap:2px!important;
}
.release-segment-option,
.release-segmented-control button{
  min-height:25px!important;
  height:25px!important;
  padding:0 11px!important;
  border-radius:7px!important;
}
.header-action-icon,
.app-header-actions .header-action-icon{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  margin-right:2px!important;
}
.profile-avatar{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
}
.inline-count{
  margin-left:3px!important;
}

/* KPI/filter cards: active selection must never become a filled green block. */
.my-work-kpi.active,
.my-work-kpi.active:hover,
.action-center-kpi.active,
.action-center-kpi.active:hover,
.metric-card.active,
.metric-card.active:hover,
.kpi-card.active,
.kpi-card.active:hover,
.summary-card.active,
.summary-card.active:hover,
.tree-summary-card.active,
.tree-summary-card.active:hover,
.dashboard-kpi.active,
.dashboard-kpi.active:hover,
.plan-metric-chip.active,
.plan-metric-chip.active:hover,
.plan-header-metric.active,
.plan-header-metric.active:hover,
.plan-header-metric.filter-card.active,
.plan-header-metric.filter-card.active:hover,
.filter-card.active,
.filter-card.active:hover,
.work-filter-card.active,
.work-filter-card.active:hover,
.sn-kpi-card.active,
.sn-kpi-card.active:hover{
  background:#fff!important;
  background-image:none!important;
  color:var(--dgc33-text)!important;
  border-color:var(--dgc33-accent-border)!important;
  border-left:4px solid var(--dgc33-accent)!important;
  box-shadow:inset 0 0 0 1px rgba(15,118,110,.12),0 1px 3px rgba(15,23,42,.05)!important;
  transform:none!important;
  outline:none!important;
}
.my-work-kpi.active *,
.action-center-kpi.active *,
.metric-card.active *,
.kpi-card.active *,
.summary-card.active *,
.tree-summary-card.active *,
.dashboard-kpi.active *,
.plan-metric-chip.active *,
.plan-header-metric.active *,
.filter-card.active *,
.work-filter-card.active *,
.sn-kpi-card.active *{
  color:var(--dgc33-text)!important;
}
.my-work-kpi.active span,
.action-center-kpi.active span,
.metric-card.active span,
.kpi-card.active span,
.summary-card.active span,
.tree-summary-card.active span,
.dashboard-kpi.active span,
.plan-metric-chip.active span,
.plan-header-metric.active span,
.filter-card.active span,
.work-filter-card.active span,
.sn-kpi-card.active span{
  color:var(--dgc33-muted)!important;
}
.my-work-kpi.active small,
.action-center-kpi.active small,
.metric-card.active small,
.kpi-card.active small,
.summary-card.active small,
.tree-summary-card.active small,
.dashboard-kpi.active small,
.plan-metric-chip.active small,
.plan-header-metric.active small,
.filter-card.active small,
.work-filter-card.active small,
.sn-kpi-card.active small{
  color:var(--dgc33-muted)!important;
}
.my-work-kpi.active::before,
.action-center-kpi.active::before,
.metric-card.active::before,
.kpi-card.active::before,
.summary-card.active::before,
.tree-summary-card.active::before,
.dashboard-kpi.active::before,
.plan-metric-chip.active::before,
.plan-header-metric.active::before,
.filter-card.active::before,
.work-filter-card.active::before,
.sn-kpi-card.active::before{
  display:none!important;
}

/* Icons stay restored, but only as compact aligned helpers; no oversized decorative treatment. */
.side-menu-icon,
.side-menu-group-icon,
.favorite-icon,
.header-action-icon,
.app-icon-glyph{
  opacity:1!important;
  flex:0 0 auto!important;
  vertical-align:middle!important;
}
.side-menu-item,
.side-menu-heading-left{
  align-items:center!important;
}


/* ======================================================================
   V31.20.34 — Cross-Screen Card Highlight Consistency
   Targeted CSS-only pass.
   Principle: KPI/metric/work cards never use filled selection. Across My Work,
   Plan Workbench, PMO/Reporting, Alerts, Admin, Readiness and Advanced Tools,
   selected cards use the same white card + teal left accent + readable text.
   Tabs/chips/primary buttons may remain solid because they are controls, not cards.
   ====================================================================== */
:root{
  --dgc34-card-bg:#ffffff;
  --dgc34-card-active-bg:#ffffff;
  --dgc34-card-border:#dbe6ee;
  --dgc34-card-active-border:#74cfc5;
  --dgc34-card-accent:#0f766e;
  --dgc34-card-text:#102033;
  --dgc34-card-muted:#5f7389;
  --dgc34-card-shadow:0 1px 2px rgba(15,23,42,.04);
}

/* Standard card base across all workspaces. */
.my-work-kpi,
.action-center-kpi,
.metric-card,
.kpi-card,
.summary-card,
.tree-summary-card,
.dashboard-kpi,
.plan-metric-chip,
.plan-header-metric,
.filter-card,
.work-filter-card,
.sn-kpi-card,
.pmo-report-kpi,
.pmo-dash-kpi,
.plan-kpi,
.meeting-hub-kpi,
.impact-kpi,
.resource-kpi,
.pd-mini-metric,
.qa-kpi-card,
.final-smoke-kpi,
.notification-kpi-grid > *,
.reports-kpi-grid > *,
.pmo-report-kpi-strip > *,
.plan-compact-metrics > *,
.release-board-kpis > *,
.evidence-kpi-strip > *,
.admin-summary-card,
.enterprise-kpi{
  background:var(--dgc34-card-bg)!important;
  background-color:var(--dgc34-card-bg)!important;
  background-image:none!important;
  color:var(--dgc34-card-text)!important;
  border:1px solid var(--dgc34-card-border)!important;
  border-left:3px solid var(--dgc34-card-border)!important;
  box-shadow:var(--dgc34-card-shadow)!important;
  text-shadow:none!important;
}

/* One active/highlight style for cards everywhere. No filled green card states. */
.my-work-kpi.active,
.my-work-kpi[aria-pressed="true"],
.action-center-kpi.active,
.action-center-kpi[aria-pressed="true"],
.metric-card.active,
.metric-card[aria-pressed="true"],
.kpi-card.active,
.kpi-card[aria-pressed="true"],
.summary-card.active,
.summary-card[aria-pressed="true"],
.tree-summary-card.active,
.tree-summary-card[aria-pressed="true"],
.dashboard-kpi.active,
.dashboard-kpi[aria-pressed="true"],
.plan-metric-chip.active,
.plan-metric-chip[aria-pressed="true"],
.plan-header-metric.active,
.plan-header-metric[aria-pressed="true"],
.plan-header-metric.filter-card.active,
button.plan-header-metric.filter-card.active,
.filter-card.active,
.filter-card[aria-pressed="true"],
.work-filter-card.active,
.work-filter-card[aria-pressed="true"],
.sn-kpi-card.active,
.sn-kpi-card[aria-pressed="true"],
.pmo-report-kpi.active,
.pmo-report-kpi[aria-pressed="true"],
.pmo-dash-kpi.active,
.pmo-dash-kpi[aria-pressed="true"],
.plan-kpi.active,
.plan-kpi[aria-pressed="true"],
.meeting-hub-kpi.active,
.meeting-hub-kpi[aria-pressed="true"],
.impact-kpi.active,
.impact-kpi[aria-pressed="true"],
.resource-kpi.active,
.resource-kpi[aria-pressed="true"],
.pd-mini-metric.active,
.pd-mini-metric[aria-pressed="true"],
.qa-kpi-card.active,
.final-smoke-kpi.active,
.notification-kpi-grid > .active,
.reports-kpi-grid > .active,
.pmo-report-kpi-strip > .active,
.plan-compact-metrics > .active,
.release-board-kpis > .active,
.evidence-kpi-strip > .active,
.admin-summary-card.active,
.enterprise-kpi.active{
  background:var(--dgc34-card-active-bg)!important;
  background-color:var(--dgc34-card-active-bg)!important;
  background-image:none!important;
  color:var(--dgc34-card-text)!important;
  border-color:var(--dgc34-card-active-border)!important;
  border-left:4px solid var(--dgc34-card-accent)!important;
  box-shadow:inset 0 0 0 1px rgba(15,118,110,.11),0 1px 3px rgba(15,23,42,.05)!important;
  outline:2px solid rgba(15,118,110,.08)!important;
  outline-offset:0!important;
  transform:none!important;
}

/* Active card text never becomes white/greyed-out. */
.my-work-kpi.active *,
.action-center-kpi.active *,
.metric-card.active *,
.kpi-card.active *,
.summary-card.active *,
.tree-summary-card.active *,
.dashboard-kpi.active *,
.plan-metric-chip.active *,
.plan-header-metric.active *,
.filter-card.active *,
.work-filter-card.active *,
.sn-kpi-card.active *,
.pmo-report-kpi.active *,
.pmo-dash-kpi.active *,
.plan-kpi.active *,
.meeting-hub-kpi.active *,
.impact-kpi.active *,
.resource-kpi.active *,
.pd-mini-metric.active *,
.qa-kpi-card.active *,
.final-smoke-kpi.active *,
.enterprise-kpi.active *{
  color:var(--dgc34-card-text)!important;
  text-shadow:none!important;
}
.my-work-kpi.active span,
.my-work-kpi.active small,
.action-center-kpi.active span,
.action-center-kpi.active small,
.metric-card.active span,
.metric-card.active small,
.kpi-card.active span,
.kpi-card.active small,
.summary-card.active span,
.summary-card.active small,
.tree-summary-card.active span,
.tree-summary-card.active small,
.dashboard-kpi.active span,
.dashboard-kpi.active small,
.plan-metric-chip.active span,
.plan-metric-chip.active small,
.plan-header-metric.active span,
.plan-header-metric.active small,
.filter-card.active span,
.filter-card.active small,
.work-filter-card.active span,
.work-filter-card.active small,
.sn-kpi-card.active span,
.sn-kpi-card.active small,
.pmo-report-kpi.active span,
.pmo-report-kpi.active small,
.pmo-dash-kpi.active span,
.pmo-dash-kpi.active small,
.plan-kpi.active span,
.plan-kpi.active small,
.meeting-hub-kpi.active span,
.meeting-hub-kpi.active small,
.impact-kpi.active span,
.impact-kpi.active small,
.resource-kpi.active span,
.resource-kpi.active small,
.pd-mini-metric.active span,
.pd-mini-metric.active small,
.qa-kpi-card.active span,
.qa-kpi-card.active small,
.final-smoke-kpi.active span,
.final-smoke-kpi.active small,
.enterprise-kpi.active span,
.enterprise-kpi.active small{
  color:var(--dgc34-card-muted)!important;
}
.my-work-kpi.active b,
.action-center-kpi.active b,
.metric-card.active b,
.kpi-card.active b,
.summary-card.active b,
.tree-summary-card.active b,
.dashboard-kpi.active b,
.plan-metric-chip.active b,
.plan-header-metric.active b,
.filter-card.active b,
.work-filter-card.active b,
.sn-kpi-card.active b,
.pmo-report-kpi.active b,
.pmo-dash-kpi.active b,
.plan-kpi.active b,
.meeting-hub-kpi.active b,
.impact-kpi.active b,
.resource-kpi.active b,
.pd-mini-metric.active b,
.qa-kpi-card.active b,
.final-smoke-kpi.active b,
.enterprise-kpi.active b{
  color:var(--dgc34-card-text)!important;
}

/* Keep tone information as a thin side accent only. Never fill the card. */
.my-work-kpi.danger:not(.active),
.metric-card.danger:not(.active),
.kpi-card.danger:not(.active),
.pmo-report-kpi.danger:not(.active),
.plan-header-metric.danger:not(.active),
.tree-summary-card.danger:not(.active){border-left-color:#ef4444!important;background:#fff!important;}
.my-work-kpi.warning:not(.active),
.metric-card.warning:not(.active),
.kpi-card.warning:not(.active),
.pmo-report-kpi.warning:not(.active),
.plan-header-metric.warning:not(.active),
.tree-summary-card.warning:not(.active){border-left-color:#f59e0b!important;background:#fff!important;}
.my-work-kpi.ok:not(.active),
.metric-card.ok:not(.active),
.kpi-card.ok:not(.active),
.pmo-report-kpi.ok:not(.active),
.plan-header-metric.ok:not(.active),
.tree-summary-card.ok:not(.active){border-left-color:#22c55e!important;background:#fff!important;}

/* Card pseudo decorations from older themes are suppressed so the card grammar stays uniform. */
.my-work-kpi::before,
.action-center-kpi::before,
.metric-card::before,
.kpi-card::before,
.summary-card::before,
.tree-summary-card::before,
.dashboard-kpi::before,
.plan-metric-chip::before,
.plan-header-metric::before,
.filter-card::before,
.work-filter-card::before,
.sn-kpi-card::before,
.pmo-report-kpi::before,
.pmo-dash-kpi::before,
.plan-kpi::before,
.meeting-hub-kpi::before,
.impact-kpi::before,
.resource-kpi::before,
.pd-mini-metric::before,
.qa-kpi-card::before,
.final-smoke-kpi::before,
.enterprise-kpi::before{
  display:none!important;
  content:none!important;
}

/* Selected non-card controls remain compact teal pills; this avoids confusing cards and tabs. */
.workspace-tabs button.active,
.rbac-mode-tabs button.active,
.production-mode-tabs button.active,
.notification-mode-tabs button.active,
.plan-board-view-switch button.active,
.mode-tabs button.active,
.pmo-mode-tabs button.active,
.tab-btn.active,
.chip-btn.active,
.plan-tab.active,
.workbench-tab.active,
.compact-tab.active{
  background:#0f766e!important;
  background-color:#0f766e!important;
  color:#fff!important;
  border-color:#0f766e!important;
  border-left:1px solid #0f766e!important;
  box-shadow:none!important;
}
.workspace-tabs button.active *,
.rbac-mode-tabs button.active *,
.production-mode-tabs button.active *,
.notification-mode-tabs button.active *,
.plan-board-view-switch button.active *,
.mode-tabs button.active *,
.pmo-mode-tabs button.active *,
.tab-btn.active *,
.chip-btn.active *,
.plan-tab.active *,
.workbench-tab.active *,
.compact-tab.active *{color:#fff!important;}

/* V31.20.35 — WBS expansion single-column, no nested scrollbars */
.wbs-expansion-single{
  padding:14px 16px !important;
  background:#fff !important;
  border-left:3px solid var(--sn-accent,#0f8f83) !important;
  overflow:visible !important;
  max-width:100% !important;
}
.wbs-expansion-single .wbs-expansion-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding-bottom:10px !important;
  margin-bottom:10px !important;
  border-bottom:1px solid var(--sn-border-soft,#e8eef5) !important;
}
.wbs-expansion-single .wbs-expansion-head h3{
  font-size:16px !important;
  line-height:1.25 !important;
  margin:0 0 4px !important;
  color:#132238 !important;
}
.wbs-expansion-single .wbs-expansion-head p{
  margin:0 !important;
  font-size:12px !important;
  color:#64758a !important;
}
.wbs-feature-phase-layout{grid-template-columns:1fr !important;display:flex !important;flex-direction:column !important;gap:10px !important;}
.wbs-feature-panel-top,.wbs-phase-panel-bottom{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  border:1px solid var(--sn-border,#d9e5ef) !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:none !important;
  padding:12px !important;
  overflow:visible !important;
}
.wbs-section-heading{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  margin-bottom:8px !important;
}
.wbs-section-heading h4{margin:0 !important;font-size:13px !important;color:#132238 !important;letter-spacing:0 !important;}
.wbs-section-heading small{font-size:11px !important;color:#66758a !important;white-space:nowrap !important;}
.wbs-feature-list-compact{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) !important;
  gap:6px 10px !important;
  max-width:100% !important;
}
.wbs-feature-chip{
  display:flex !important;
  align-items:flex-start !important;
  gap:6px !important;
  padding:7px 9px !important;
  min-width:0 !important;
  border:1px solid #e7eef5 !important;
  border-radius:9px !important;
  background:#fbfdff !important;
  color:#223246 !important;
  font-size:12px !important;
  line-height:1.3 !important;
  font-weight:600 !important;
}
.wbs-feature-chip b{color:#0f756c !important;white-space:nowrap !important;}
.wbs-feature-chip span{min-width:0 !important;overflow:hidden !important;text-overflow:ellipsis !important;}
.wbs-phase-panel-bottom .no-inner-scroll,
.wbs-phase-panel-bottom .wbs-phase-table{
  overflow:visible !important;
  max-height:none !important;
  width:100% !important;
  max-width:100% !important;
}
.wbs-phase-compact-table{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
}
.wbs-phase-compact-table th,
.wbs-phase-compact-table td{
  white-space:normal !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  height:34px !important;
  padding:7px 8px !important;
  font-size:12px !important;
}
.wbs-phase-compact-table th:nth-child(1){width:28% !important;}
.wbs-phase-compact-table th:nth-child(2){width:18% !important;}
.wbs-phase-compact-table th:nth-child(3){width:18% !important;}
.wbs-phase-compact-table th:nth-child(4){width:20% !important;}
.wbs-phase-compact-table th:nth-child(5){width:16% !important;}
.phase-title-cell b{display:block !important;font-size:12px !important;color:#172336 !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
.phase-title-cell small{display:block !important;margin-top:2px !important;color:#697a90 !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
.phase-action-cell{display:flex !important;align-items:center !important;gap:5px !important;flex-wrap:wrap !important;overflow:visible !important;}
.phase-action-cell .secondary.mini,.phase-action-cell .plan-upload-btn,.phase-action-cell .icon-only-btn{
  margin:0 !important;
  height:26px !important;
  padding:4px 8px !important;
  font-size:11px !important;
}
.wbs-grid-expanded-row .table-wrap,
.wbs-grid-expanded-row .wbs-phase-table,
.wbs-grid-expanded-row .wbs-phase-panel,
.wbs-grid-expanded-row .wbs-feature-panel{
  overflow-x:hidden !important;
}
.wbs-grid-expanded-row>td{overflow:visible !important;}
@media(max-width:1180px){
  .wbs-phase-compact-table th:nth-child(4),.wbs-phase-compact-table td:nth-child(4){display:none !important;}
  .wbs-phase-compact-table th:nth-child(1){width:34% !important;}
  .wbs-phase-compact-table th:nth-child(2){width:22% !important;}
  .wbs-phase-compact-table th:nth-child(3){width:22% !important;}
  .wbs-phase-compact-table th:nth-child(5){width:22% !important;}
}
@media(max-width:760px){
  .wbs-expansion-single .wbs-expansion-head{align-items:flex-start !important;flex-direction:column !important;}
  .wbs-feature-list-compact{grid-template-columns:1fr !important;}
  .wbs-phase-compact-table th:nth-child(2),.wbs-phase-compact-table td:nth-child(2){display:none !important;}
  .wbs-phase-compact-table th:nth-child(1){width:42% !important;}
  .wbs-phase-compact-table th:nth-child(3){width:28% !important;}
  .wbs-phase-compact-table th:nth-child(5){width:30% !important;}
}

/* ======================================================================
   V31.20.36 — Header Action Spacing and Responsive Control Separation
   Scope: targeted header fix only. No navigation/feature/card/drawer changes.
   Keeps icons, adds breathing room, prevents cramped/truncated header actions.
   ====================================================================== */
:root{
  --dgc36-header-border:#dbe6ee;
  --dgc36-header-text:#102033;
  --dgc36-header-muted:#52687f;
  --dgc36-header-accent:#0f766e;
}
.app-header,
.topbar,
.global-header,
.shell-header,
.modern-topbar,
.page-header{
  min-height:58px!important;
  padding:10px 18px!important;
  gap:16px!important;
  align-items:center!important;
  overflow:visible!important;
  background:#fff!important;
  border-bottom:1px solid var(--dgc36-header-border)!important;
}
.app-header-left,
.topbar-left,
.global-header-left{
  min-width:220px!important;
  flex:1 1 auto!important;
  gap:10px!important;
  overflow:hidden!important;
}
.app-header-actions,
.topbar-actions,
.compact-header-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  column-gap:10px!important;
  row-gap:8px!important;
  flex:0 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  padding-left:10px!important;
  overflow:visible!important;
}
.app-header-actions > *,
.compact-header-actions > *,
.topbar-actions > *{
  flex:0 0 auto!important;
  margin-left:0!important;
  margin-right:0!important;
}
.header-attendance-control,
.attendance-header-widget,
.release-segment-control.compact-control,
.release-segmented-control,
.client-switch-button.text-header-action,
.favorite-button.text-header-action,
.header-chat.text-header-action,
.header-bell.text-header-action,
.profile-button.text-header-action,
.profile-text-action,
.text-header-action{
  height:34px!important;
  min-height:34px!important;
  padding:0 12px!important;
  border-radius:10px!important;
  gap:7px!important;
  border:1px solid #cbd8e6!important;
  background:#fff!important;
  box-shadow:0 1px 0 rgba(15,23,42,.03)!important;
  color:var(--dgc36-header-text)!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.header-attendance-control,
.attendance-header-widget{
  min-width:132px!important;
  justify-content:space-between!important;
}
.release-segment-control.compact-control,
.release-segmented-control{
  height:34px!important;
  padding:3px!important;
  gap:3px!important;
  min-width:222px!important;
}
.release-segment-label,
.release-segment-control .release-label,
.release-label{
  padding:0 8px!important;
  font-size:10px!important;
  letter-spacing:.09em!important;
  color:var(--dgc36-header-muted)!important;
  white-space:nowrap!important;
}
.release-segment-option,
.release-segmented-control button{
  height:28px!important;
  min-height:28px!important;
  min-width:46px!important;
  padding:0 12px!important;
  border-radius:8px!important;
  font-size:11px!important;
  white-space:nowrap!important;
}
.release-segment-option.active,
.release-segmented-control button.active{
  background:var(--dgc36-header-accent)!important;
  color:#fff!important;
  border-color:var(--dgc36-header-accent)!important;
}
.client-switch-button.text-header-action{
  min-width:44px!important;
  justify-content:center!important;
}
.favorite-button.text-header-action,
.header-chat.text-header-action,
.header-bell.text-header-action{
  min-width:76px!important;
  justify-content:center!important;
}
.profile-button.text-header-action,
.profile-text-action{
  min-width:42px!important;
  padding:0 8px!important;
  justify-content:center!important;
}
.header-action-icon,
.app-header-actions .header-action-icon{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
}
.header-action-label,
.app-header-actions .header-action-label{
  display:inline-block!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  line-height:1!important;
}
.app-header-actions .inline-count,
.inline-count{
  position:static!important;
  transform:none!important;
  margin-left:1px!important;
  flex:0 0 auto!important;
}
@media(max-width:1500px){
  .app-header,.topbar,.global-header,.shell-header,.modern-topbar,.page-header{padding:9px 14px!important;gap:12px!important;}
  .app-header-actions,.topbar-actions,.compact-header-actions{gap:8px!important;column-gap:8px!important;}
  .release-segment-control.compact-control,.release-segmented-control{min-width:200px!important;}
  .favorite-button.text-header-action,.header-chat.text-header-action,.header-bell.text-header-action{min-width:42px!important;padding:0 10px!important;}
  .favorite-button.text-header-action .header-action-label,
  .header-chat.text-header-action .header-action-label,
  .header-bell.text-header-action .header-action-label{display:none!important;}
}
@media(max-width:1200px){
  .app-header-actions,.topbar-actions,.compact-header-actions{flex-wrap:wrap!important;}
  .release-segment-label,.release-segment-control .release-label,.release-label{display:none!important;}
  .release-segment-control.compact-control,.release-segmented-control{min-width:146px!important;}
}

/* ======================================================================
   V31.20.37 — Header Utility Rail Alignment and Label Noise Cleanup
   Scope: targeted header-only fix. Keeps icons, removes cramped text labels.
   ====================================================================== */
:root{
  --dgc37-header-height:54px;
  --dgc37-control-h:34px;
  --dgc37-control-gap:12px;
  --dgc37-border:#cddbea;
  --dgc37-text:#0f2236;
  --dgc37-muted:#5b6f86;
  --dgc37-teal:#0f766e;
  --dgc37-soft:#f8fbfd;
}
.app-header{
  min-height:var(--dgc37-header-height)!important;
  height:auto!important;
  padding:8px 20px!important;
  gap:18px!important;
  align-items:center!important;
  overflow:visible!important;
}
.app-header-left{
  min-width:260px!important;
  flex:1 1 auto!important;
  overflow:hidden!important;
}
.app-header .app-title h1,
.app-title.compact-product-title h1{
  line-height:18px!important;
  margin:0 0 2px 0!important;
}
.app-header-actions.compact-header-actions,
.compact-header-actions{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:var(--dgc37-control-gap)!important;
  column-gap:var(--dgc37-control-gap)!important;
  flex-wrap:nowrap!important;
  overflow:visible!important;
  white-space:nowrap!important;
  padding-left:14px!important;
}
.compact-header-actions > *{flex:0 0 auto!important;}
.header-attendance-control,
.attendance-header-widget{
  height:var(--dgc37-control-h)!important;
  min-height:var(--dgc37-control-h)!important;
  min-width:142px!important;
  padding:0 6px 0 12px!important;
  border-radius:11px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  background:#fff!important;
  border:1px solid var(--dgc37-border)!important;
}
.header-attendance-label{display:none!important;}
.header-attendance-clock{font-size:13px!important;line-height:1!important;color:var(--dgc37-text)!important;}
.header-attendance-btn{height:28px!important;min-height:28px!important;padding:0 12px!important;border-radius:8px!important;font-size:12px!important;}
.release-segment-control.compact-control,
.release-segmented-control{
  height:var(--dgc37-control-h)!important;
  min-height:var(--dgc37-control-h)!important;
  min-width:232px!important;
  padding:3px!important;
  border-radius:11px!important;
  gap:3px!important;
  background:#fff!important;
  border:1px solid var(--dgc37-border)!important;
}
.release-segment-label,.release-segment-control .release-label,.release-label{
  min-width:auto!important;
  padding:0 9px!important;
  font-size:10px!important;
  letter-spacing:.11em!important;
  color:var(--dgc37-muted)!important;
}
.release-segment-option,.release-segmented-control button{
  height:28px!important;
  min-height:28px!important;
  min-width:50px!important;
  padding:0 12px!important;
  border-radius:8px!important;
  font-size:12px!important;
}
.client-switch-button.text-header-action,
.favorite-button.text-header-action,
.header-chat.text-header-action,
.header-bell.text-header-action,
.profile-button.text-header-action,
.profile-text-action{
  height:var(--dgc37-control-h)!important;
  min-height:var(--dgc37-control-h)!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  padding:0!important;
  border-radius:11px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  position:relative!important;
  background:#fff!important;
  border:1px solid var(--dgc37-border)!important;
  box-shadow:0 1px 0 rgba(15,23,42,.03)!important;
  overflow:visible!important;
}
/* Keep client as KH text; utility buttons as icon-only. */
.client-switch-button.text-header-action .header-action-icon{display:none!important;}
.client-switch-button.text-header-action .header-action-label{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-weight:800!important;
  color:var(--dgc37-text)!important;
  font-size:12px!important;
  line-height:1!important;
}
.favorite-button.text-header-action .header-action-label,
.header-chat.text-header-action .header-action-label,
.header-bell.text-header-action .header-action-label{display:none!important;}
.favorite-button.text-header-action .header-action-icon,
.header-chat.text-header-action .header-action-icon,
.header-bell.text-header-action .header-action-icon{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  margin:0!important;
  color:#24425f!important;
}
.profile-button.text-header-action .profile-avatar,
.profile-text-action .profile-avatar{
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:var(--dgc37-teal)!important;
  color:#fff!important;
  font-weight:800!important;
  font-size:12px!important;
}
.header-bell.text-header-action .inline-count,
.header-chat.text-header-action .inline-count{
  position:absolute!important;
  top:-7px!important;
  right:-7px!important;
  min-width:18px!important;
  height:18px!important;
  padding:0 5px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  border:2px solid #fff!important;
  border-radius:999px!important;
  background:#dc2626!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1!important;
  transform:none!important;
}
.text-header-action:hover,
.client-switch-button.text-header-action:hover,
.favorite-button.text-header-action:hover,
.header-chat.text-header-action:hover,
.header-bell.text-header-action:hover,
.profile-button.text-header-action:hover{
  background:var(--dgc37-soft)!important;
  border-color:#9fb4ca!important;
}
/* Prevent the utility cluster from visually touching the release control. */
.release-segment-control.compact-control + .client-switch-shell,
.release-segmented-control + .client-switch-shell{margin-left:4px!important;}
@media(max-width:1320px){
  .app-header{padding:8px 14px!important;gap:12px!important;}
  .compact-header-actions{gap:8px!important;column-gap:8px!important;padding-left:8px!important;}
  .release-segment-control.compact-control,.release-segmented-control{min-width:188px!important;}
  .release-segment-label,.release-segment-control .release-label,.release-label{display:none!important;}
  .header-attendance-control,.attendance-header-widget{min-width:128px!important;}
}
@media(max-width:1120px){
  .app-header-actions.compact-header-actions,.compact-header-actions{gap:6px!important;}
  .header-attendance-control,.attendance-header-widget{min-width:112px!important;}
  .release-segment-control.compact-control,.release-segmented-control{min-width:150px!important;}
}

/* V31.20.38 — Client-ready plan detail action drawer
   Targeted drawer-only pass: convert the drawer from a long scrolling form into
   a client-usable action console with fixed summary, next-action prompt and
   section tabs. No navigation/API/capability changes. */
:root{
  --drawer-width-client: min(760px, calc(100vw - 280px));
  --drawer-surface: #ffffff;
  --drawer-border: #d8e4ef;
  --drawer-muted: #5f7390;
  --drawer-ink: #10233f;
}
.plan-detail-overlay.professional-detail-overlay{
  background: rgba(16,32,48,.28) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}
.plan-detail-drawer.compact-plan-drawer.professional-detail-drawer{
  width: var(--drawer-width-client) !important;
  max-width: var(--drawer-width-client) !important;
  min-width: 620px !important;
  height: calc(100vh - 22px) !important;
  max-height: calc(100vh - 22px) !important;
  margin: 11px 12px 11px auto !important;
  border-radius: 18px !important;
  border: 1px solid var(--drawer-border) !important;
  box-shadow: 0 22px 60px rgba(15, 35, 60, .22) !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  background: var(--drawer-surface) !important;
}
.pd-drawer-head{
  min-height: 64px !important;
  padding: 14px 18px 12px !important;
  border-bottom: 1px solid var(--drawer-border) !important;
  background: #fff !important;
  flex: 0 0 auto !important;
}
.pd-title-block .eyebrow{
  letter-spacing: .08em !important;
  color: #2563eb !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}
.pd-title-block h3{
  margin: 4px 0 2px !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  color: var(--drawer-ink) !important;
}
.pd-title-block p{
  margin: 0 !important;
  color: var(--drawer-muted) !important;
  font-size: 12px !important;
}
.pd-client-drawer-body{
  padding: 12px 14px 14px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  background: #f8fbfe !important;
}
.pd-client-drawer-body *{
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.pd-client-summary{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: 8px !important;
  flex: 0 0 auto !important;
}
.pd-client-summary .pd-mini-metric{
  padding: 10px 11px !important;
  min-height: 70px !important;
  border-radius: 12px !important;
  background: #fff !important;
  border: 1px solid var(--drawer-border) !important;
  overflow: hidden !important;
}
.pd-client-summary .pd-mini-metric span{
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  color: var(--drawer-muted) !important;
  font-weight: 800 !important;
}
.pd-client-summary .pd-mini-metric b{
  display: block !important;
  margin-top: 4px !important;
  font-size: 14px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  color: var(--drawer-ink) !important;
}
.pd-client-summary .pd-mini-metric small{
  display: block !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  color: var(--drawer-muted) !important;
}
.pd-next-action{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 10px 12px !important;
  border: 1px solid #c8e6dc !important;
  border-radius: 13px !important;
  background: #eefbf7 !important;
  flex: 0 0 auto !important;
}
.pd-next-action b{
  display: block !important;
  color: var(--drawer-ink) !important;
}
.pd-next-action span{
  color: #51657f !important;
  font-size: 12px !important;
}
.pd-section-tabs{
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 6px !important;
  border-radius: 13px !important;
  background: #fff !important;
  border: 1px solid var(--drawer-border) !important;
  flex: 0 0 auto !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}
.pd-section-tabs .pd-tab{
  appearance: none !important;
  border: 1px solid #e1eaf3 !important;
  background: #f4f7fb !important;
  border-radius: 10px !important;
  color: #223653 !important;
  min-height: 34px !important;
  padding: 7px 11px !important;
  display: inline-flex !important;
  gap: 7px !important;
  align-items: center !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
.pd-section-tabs .pd-tab span{
  background: #e9f1f8 !important;
  border-radius: 999px !important;
  padding: 1px 6px !important;
  font-size: 11px !important;
  color: #526982 !important;
}
.pd-section-tabs .pd-tab.active{
  background: #fff !important;
  border-color: #0f8b7f !important;
  box-shadow: inset 3px 0 0 #0f8b7f, 0 3px 12px rgba(15,139,127,.10) !important;
  color: #092f2b !important;
}
.pd-panel{
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  overflow: visible !important;
}
.pd-panel-grid.two{
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  gap: 10px !important;
}
.pd-section{
  border: 1px solid var(--drawer-border) !important;
  border-radius: 13px !important;
  background: #fff !important;
  padding: 12px !important;
  overflow: visible !important;
  box-shadow: none !important;
}
.pd-section-head{
  margin-bottom: 10px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid #e9f0f7 !important;
}
.pd-section-head h4{
  font-size: 13px !important;
  color: var(--drawer-ink) !important;
  margin: 0 0 2px !important;
}
.pd-section-head span{
  font-size: 11px !important;
  color: var(--drawer-muted) !important;
}
.pd-form-grid,
.pd-form-grid.workmark-form{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 9px !important;
}
.pd-form-grid label span{
  display: block !important;
  margin-bottom: 4px !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  color: var(--drawer-muted) !important;
  text-transform: uppercase !important;
}
.pd-form-grid input,
.pd-form-grid select,
.pd-comment-form textarea,
.pd-progress-row input{
  width: 100% !important;
  max-width: 100% !important;
  border-radius: 9px !important;
  border: 1px solid #cddbea !important;
  min-height: 36px !important;
}
.pd-form-actions{
  grid-column: 1/-1 !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
}
.pd-action-row,
.pd-row-actions{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  overflow: visible !important;
}
.pd-progress-row{
  display: grid !important;
  grid-template-columns: 120px minmax(0,1fr) !important;
  gap: 8px !important;
  margin-top: 9px !important;
}
.pd-gate-strip{
  margin-top: 9px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  align-items: center !important;
  background: #f8fafc !important;
  border: 1px dashed #d8e4ef !important;
  border-radius: 10px !important;
  padding: 8px !important;
}
.pd-gate-strip small{
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}
.pd-scope-preview{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: 8px !important;
}
.pd-scope-group{
  border: 1px solid #e2ebf4 !important;
  border-radius: 11px !important;
  padding: 9px !important;
  background: #fbfdff !important;
  overflow: hidden !important;
}
.pd-scope-group-head{
  display: flex !important;
  justify-content: space-between !important;
  margin-bottom: 6px !important;
  text-transform: uppercase !important;
  color: var(--drawer-muted) !important;
  font-size: 10px !important;
}
.pd-doc-row,
.pd-list-row{
  display: flex !important;
  justify-content: space-between !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 9px 0 !important;
  border-bottom: 1px solid #eef3f8 !important;
  overflow: visible !important;
}
.pd-doc-row b,
.pd-list-row b,
.pd-doc-row span,
.pd-list-row span{
  overflow-wrap: anywhere !important;
}
.pd-inline-list{
  max-height: none !important;
  overflow: visible !important;
}
.pd-comment-form{
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  gap: 8px !important;
  align-items: end !important;
}
.pd-comment-form textarea{
  min-height: 82px !important;
  resize: vertical !important;
}
.plan-detail-drawer .secondary.mini,
.plan-detail-drawer .primary.mini,
.plan-detail-drawer .small-btn{
  white-space: nowrap !important;
  min-height: 32px !important;
  border-radius: 9px !important;
}
@media (max-width: 1120px){
  .plan-detail-drawer.compact-plan-drawer.professional-detail-drawer{
    width: min(720px, calc(100vw - 28px)) !important;
    max-width: calc(100vw - 28px) !important;
    min-width: 0 !important;
  }
  .pd-client-summary{grid-template-columns: repeat(2, minmax(0,1fr)) !important;}
  .pd-panel-grid.two{grid-template-columns: 1fr !important;}
  .pd-scope-preview{grid-template-columns: repeat(2, minmax(0,1fr)) !important;}
}
@media (max-width: 760px){
  .plan-detail-drawer.compact-plan-drawer.professional-detail-drawer{
    margin: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    border-radius: 0 !important;
  }
  .pd-client-summary,
  .pd-scope-preview,
  .pd-form-grid,
  .pd-form-grid.workmark-form,
  .pd-progress-row,
  .pd-comment-form{grid-template-columns: 1fr !important;}
  .pd-next-action{align-items: flex-start !important; flex-direction: column !important;}
}

/* V31.20.39 — Breadcrumb Plain Text Link Cleanup
   Breadcrumbs must read like navigation text, not boxed chips. */
.app-header .header-breadcrumb,
.header-breadcrumb{
  display:flex !important;
  align-items:center !important;
  min-height:18px !important;
  margin:2px 0 0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.header-breadcrumb .breadcrumb-left{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  min-width:0 !important;
}
.header-breadcrumb .breadcrumb-link,
.header-breadcrumb .breadcrumb-home,
.header-breadcrumb button.breadcrumb-link,
.header-breadcrumb button.breadcrumb-home{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline !important;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  max-width:180px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  color:#0f766e !important;
  font-size:11px !important;
  line-height:16px !important;
  font-weight:650 !important;
  letter-spacing:0 !important;
  text-decoration:none !important;
  cursor:pointer !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  vertical-align:baseline !important;
}
.header-breadcrumb .breadcrumb-link:hover,
.header-breadcrumb .breadcrumb-home:hover,
.header-breadcrumb button.breadcrumb-link:hover,
.header-breadcrumb button.breadcrumb-home:hover{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#0b5f59 !important;
  text-decoration:underline !important;
  text-underline-offset:2px !important;
}
.header-breadcrumb .breadcrumb-current,
.header-breadcrumb .breadcrumb-filter{
  display:inline !important;
  width:auto !important;
  min-width:0 !important;
  max-width:220px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#475569 !important;
  font-size:11px !important;
  line-height:16px !important;
  font-weight:600 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.header-breadcrumb .breadcrumb-filter{
  color:#2563eb !important;
  font-weight:650 !important;
}
.header-breadcrumb .breadcrumb-sep{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#94a3b8 !important;
  font-size:11px !important;
  line-height:16px !important;
  font-weight:700 !important;
}
/* Keep any breadcrumb chip usage out of the global header. Chips can still be used elsewhere. */
.header-breadcrumb .breadcrumb-chip{
  border:0 !important;
  background:transparent !important;
  padding:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

/* ======================================================================
   V31.20.40 — Forced Card Highlight Normalization
   Issue: some active card styles from older visual layers still rendered as
   filled green blocks, making text unreadable. This final tail layer forces
   card-like active states to stay white with a teal accent. Tabs/chips and
   primary buttons are intentionally excluded.
   ====================================================================== */
:root{
  --dgc40-card-bg:#ffffff;
  --dgc40-card-text:#0f172a;
  --dgc40-card-muted:#52677c;
  --dgc40-card-border:#cfe3ef;
  --dgc40-card-active-border:#72cbc2;
  --dgc40-card-accent:#0f766e;
  --dgc40-card-shadow:0 1px 3px rgba(15,23,42,.06), inset 4px 0 0 #0f766e;
}

/* Card-like active states only. Do not include tab/chip/mode/release controls. */
:is(
  .my-work-kpi,
  .action-center-kpi,
  .metric-card,
  .kpi-card,
  .summary-card,
  .tree-summary-card,
  .dashboard-kpi,
  .plan-metric-chip,
  .plan-header-metric,
  .filter-card,
  .work-filter-card,
  .sn-kpi-card,
  .pmo-report-kpi,
  .pmo-dash-kpi,
  .plan-kpi,
  .meeting-hub-kpi,
  .impact-kpi,
  .resource-kpi,
  .pd-mini-metric,
  .qa-kpi-card,
  .final-smoke-kpi,
  .admin-summary-card,
  .enterprise-kpi,
  .report-type-card,
  .ci19-thread-card,
  .ci19-target-card,
  .workflow-step,
  .human-elevated-card,
  .export-context-card,
  .pmo-card,
  .notification-card,
  .alert-card,
  .card
).active,
:is(
  .my-work-kpi,
  .action-center-kpi,
  .metric-card,
  .kpi-card,
  .summary-card,
  .tree-summary-card,
  .dashboard-kpi,
  .plan-metric-chip,
  .plan-header-metric,
  .filter-card,
  .work-filter-card,
  .sn-kpi-card,
  .pmo-report-kpi,
  .pmo-dash-kpi,
  .plan-kpi,
  .meeting-hub-kpi,
  .impact-kpi,
  .resource-kpi,
  .pd-mini-metric,
  .qa-kpi-card,
  .final-smoke-kpi,
  .admin-summary-card,
  .enterprise-kpi,
  .report-type-card,
  .ci19-thread-card,
  .ci19-target-card,
  .workflow-step,
  .human-elevated-card,
  .export-context-card,
  .pmo-card,
  .notification-card,
  .alert-card,
  .card
)[aria-pressed="true"],
:is(
  .my-work-kpi,
  .action-center-kpi,
  .metric-card,
  .kpi-card,
  .summary-card,
  .tree-summary-card,
  .dashboard-kpi,
  .plan-metric-chip,
  .plan-header-metric,
  .filter-card,
  .work-filter-card,
  .sn-kpi-card,
  .pmo-report-kpi,
  .pmo-dash-kpi,
  .plan-kpi,
  .meeting-hub-kpi,
  .impact-kpi,
  .resource-kpi,
  .pd-mini-metric,
  .qa-kpi-card,
  .final-smoke-kpi,
  .admin-summary-card,
  .enterprise-kpi,
  .report-type-card,
  .ci19-thread-card,
  .ci19-target-card,
  .workflow-step,
  .human-elevated-card,
  .export-context-card,
  .pmo-card,
  .notification-card,
  .alert-card,
  .card
).selected,
:is(
  .my-work-kpi,
  .action-center-kpi,
  .metric-card,
  .kpi-card,
  .summary-card,
  .tree-summary-card,
  .dashboard-kpi,
  .plan-metric-chip,
  .plan-header-metric,
  .filter-card,
  .work-filter-card,
  .sn-kpi-card,
  .pmo-report-kpi,
  .pmo-dash-kpi,
  .plan-kpi,
  .meeting-hub-kpi,
  .impact-kpi,
  .resource-kpi,
  .pd-mini-metric,
  .qa-kpi-card,
  .final-smoke-kpi,
  .admin-summary-card,
  .enterprise-kpi,
  .report-type-card,
  .ci19-thread-card,
  .ci19-target-card,
  .workflow-step,
  .human-elevated-card,
  .export-context-card,
  .pmo-card,
  .notification-card,
  .alert-card,
  .card
).is-active{
  background:var(--dgc40-card-bg) !important;
  background-color:var(--dgc40-card-bg) !important;
  background-image:none !important;
  color:var(--dgc40-card-text) !important;
  border-color:var(--dgc40-card-active-border) !important;
  border-left:4px solid var(--dgc40-card-accent) !important;
  box-shadow:var(--dgc40-card-shadow) !important;
  outline:1px solid rgba(15,118,110,.12) !important;
  text-shadow:none !important;
}

:is(
  .my-work-kpi,
  .action-center-kpi,
  .metric-card,
  .kpi-card,
  .summary-card,
  .tree-summary-card,
  .dashboard-kpi,
  .plan-metric-chip,
  .plan-header-metric,
  .filter-card,
  .work-filter-card,
  .sn-kpi-card,
  .pmo-report-kpi,
  .pmo-dash-kpi,
  .plan-kpi,
  .meeting-hub-kpi,
  .impact-kpi,
  .resource-kpi,
  .pd-mini-metric,
  .qa-kpi-card,
  .final-smoke-kpi,
  .admin-summary-card,
  .enterprise-kpi,
  .report-type-card,
  .ci19-thread-card,
  .ci19-target-card,
  .workflow-step,
  .export-context-card,
  .pmo-card,
  .notification-card,
  .alert-card,
  .card
).active *,
:is(
  .my-work-kpi,
  .action-center-kpi,
  .metric-card,
  .kpi-card,
  .summary-card,
  .tree-summary-card,
  .dashboard-kpi,
  .plan-metric-chip,
  .plan-header-metric,
  .filter-card,
  .work-filter-card,
  .sn-kpi-card,
  .pmo-report-kpi,
  .pmo-dash-kpi,
  .plan-kpi,
  .meeting-hub-kpi,
  .impact-kpi,
  .resource-kpi,
  .pd-mini-metric,
  .qa-kpi-card,
  .final-smoke-kpi,
  .admin-summary-card,
  .enterprise-kpi,
  .report-type-card,
  .ci19-thread-card,
  .ci19-target-card,
  .workflow-step,
  .export-context-card,
  .pmo-card,
  .notification-card,
  .alert-card,
  .card
)[aria-pressed="true"] *{
  color:var(--dgc40-card-text) !important;
  text-shadow:none !important;
}

:is(
  .my-work-kpi,
  .action-center-kpi,
  .metric-card,
  .kpi-card,
  .summary-card,
  .tree-summary-card,
  .dashboard-kpi,
  .plan-metric-chip,
  .plan-header-metric,
  .filter-card,
  .work-filter-card,
  .sn-kpi-card,
  .pmo-report-kpi,
  .pmo-dash-kpi,
  .plan-kpi,
  .meeting-hub-kpi,
  .impact-kpi,
  .resource-kpi,
  .pd-mini-metric,
  .qa-kpi-card,
  .final-smoke-kpi,
  .admin-summary-card,
  .enterprise-kpi,
  .report-type-card,
  .ci19-thread-card,
  .ci19-target-card,
  .workflow-step,
  .export-context-card,
  .pmo-card,
  .notification-card,
  .alert-card,
  .card
).active span,
:is(
  .my-work-kpi,
  .action-center-kpi,
  .metric-card,
  .kpi-card,
  .summary-card,
  .tree-summary-card,
  .dashboard-kpi,
  .plan-metric-chip,
  .plan-header-metric,
  .filter-card,
  .work-filter-card,
  .sn-kpi-card,
  .pmo-report-kpi,
  .pmo-dash-kpi,
  .plan-kpi,
  .meeting-hub-kpi,
  .impact-kpi,
  .resource-kpi,
  .pd-mini-metric,
  .qa-kpi-card,
  .final-smoke-kpi,
  .admin-summary-card,
  .enterprise-kpi,
  .report-type-card,
  .ci19-thread-card,
  .ci19-target-card,
  .workflow-step,
  .export-context-card,
  .pmo-card,
  .notification-card,
  .alert-card,
  .card
).active small{
  color:var(--dgc40-card-muted) !important;
}

/* Extra hard override for Plan Workbench header KPI buttons because they are buttons. */
.plan-spine-shell .filter-card-strip button.plan-header-metric.filter-card.active,
.plan-spine-shell .filter-card-strip button.plan-header-metric.filter-card[aria-pressed="true"]{
  background:#ffffff !important;
  background-color:#ffffff !important;
  background-image:none !important;
  color:#0f172a !important;
  border:1px solid #72cbc2 !important;
  border-left:4px solid #0f766e !important;
  box-shadow:0 1px 3px rgba(15,23,42,.06), inset 4px 0 0 #0f766e !important;
}
.plan-spine-shell .filter-card-strip button.plan-header-metric.filter-card.active *,
.plan-spine-shell .filter-card-strip button.plan-header-metric.filter-card[aria-pressed="true"] *{
  color:#0f172a !important;
}
.plan-spine-shell .filter-card-strip button.plan-header-metric.filter-card.active span,
.plan-spine-shell .filter-card-strip button.plan-header-metric.filter-card[aria-pressed="true"] span{
  color:#52677c !important;
}

/* V31.20.41 — RBAC first-class workspace consistency */
.rbac-access-shell{
  margin-bottom:10px !important;
}
.rbac-access-shell .pmo-reporting-title-row{
  align-items:center !important;
}
.rbac-kpi-strip{
  grid-template-columns:repeat(6,minmax(140px,1fr)) !important;
  gap:10px !important;
}
.rbac-access-tabs{
  margin-top:10px !important;
  padding:8px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  background:#fff !important;
  border:1px solid #d9e5ef !important;
  border-radius:12px !important;
}
.rbac-access-tabs button,
.rbac-mode-tabs button{
  min-height:30px !important;
  padding:7px 12px !important;
  border-radius:9px !important;
  border:1px solid #dce7f0 !important;
  background:#f8fafc !important;
  color:#1e3448 !important;
  font-weight:700 !important;
}
.rbac-access-tabs button.active,
.rbac-mode-tabs button.active{
  background:#e8f7f4 !important;
  color:#075e57 !important;
  border-color:#0f766e !important;
  box-shadow:inset 3px 0 0 #0f766e !important;
}
.rbac-two-col,
.rbac-admin-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:10px 0 !important;
}
.rbac-two-col .full-width-card,
.rbac-admin-grid .full-width-card,
.rbac-two-col .full-width-panel,
.rbac-admin-grid .full-width-panel{
  grid-column:1 / -1 !important;
}
.rbac-form-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}
.rbac-form-grid label,
.rbac-form-grid .wide{
  min-width:0 !important;
}
.rbac-form-grid .wide{
  grid-column:1 / -1 !important;
}
.rbac-form-grid input,
.rbac-form-grid select,
.rbac-form-grid textarea{
  width:100% !important;
  min-width:0 !important;
  border:1px solid #ccdbe8 !important;
  border-radius:10px !important;
  padding:9px 10px !important;
  color:#0f172a !important;
  background:#fff !important;
}
.rbac-actions{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:8px !important;
  grid-column:1 / -1 !important;
}
.rbac-actions.left-actions{justify-content:flex-start !important;}
.rbac-readiness-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
}
.rbac-readiness-list > div{
  display:flex !important;
  justify-content:space-between !important;
  gap:12px !important;
  align-items:center !important;
  background:#f8fafc !important;
  border:1px solid #e1ebf3 !important;
  border-radius:10px !important;
  padding:9px 10px !important;
}
.rbac-readiness-list span{color:#52677c !important;font-weight:700 !important;}
.rbac-readiness-list b{color:#0f172a !important;text-align:right !important;}
.rbac-chip-list{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
}
.rbac-chip{
  border:1px solid #d8e6ef !important;
  background:#f8fafc !important;
  color:#18324a !important;
  border-radius:999px !important;
  padding:7px 10px !important;
  font-weight:700 !important;
}
.rbac-table-wrap{
  max-width:100% !important;
  overflow:auto !important;
}
.rbac-table th,
.rbac-table td{
  white-space:normal !important;
  vertical-align:top !important;
}
@media(max-width:1100px){
  .rbac-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .rbac-two-col,.rbac-admin-grid{grid-template-columns:1fr !important;}
  .rbac-form-grid{grid-template-columns:1fr !important;}
}

/* V31.20.44 — FeatherDB New Standards Runtime UI */
.fedb44-grid{display:grid;gap:14px;width:100%;}
.fedb44-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;align-items:center;}
.fedb44-layer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;}
.fedb44-layer{border:1px solid #dbe7e3;background:#fff;border-left:4px solid #0f766e;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:5px;min-height:74px;}
.fedb44-layer b{text-transform:capitalize;color:#102a43;font-size:13px;}
.fedb44-layer small{color:#5f6f7a;font-size:11px;word-break:break-word;}
.fedb20-tabs button.active{color:#0f3d3a !important;background:#ffffff !important;border-color:#0f766e !important;box-shadow:inset 4px 0 0 #0f766e !important;}

/* V31.20.46 - Persistence Proof UI */
.persistence-proof-panel{
  margin:10px 0 14px;
  border:1px solid rgba(15,118,110,.22);
  border-left:5px solid #0f766e;
  background:#ffffff;
  border-radius:14px;
  box-shadow:0 10px 28px rgba(15,23,42,.08);
  overflow:hidden;
  color:#111827;
}
.persistence-proof-panel.warn{border-left-color:#b45309;border-color:rgba(180,83,9,.28)}
.persistence-proof-panel .proof-main-row{display:flex;align-items:center;gap:12px;padding:12px 14px}
.proof-status-mark{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:#ecfdf5;color:#065f46;font-weight:900;flex:0 0 auto}
.persistence-proof-panel.warn .proof-status-mark{background:#fffbeb;color:#92400e}
.proof-title-block{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.proof-title-block strong{font-size:14px;line-height:1.2;color:#0f172a}
.proof-title-block span{font-size:12px;line-height:1.35;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.proof-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.proof-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:1px;background:#e5e7eb;border-top:1px solid #e5e7eb}
.proof-detail-grid>div{background:#f8fafc;padding:9px 10px;min-width:0;display:flex;flex-direction:column;gap:3px}
.proof-detail-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:700}
.proof-detail-grid b{font-size:12px;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.proof-list{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto;padding-right:2px}
.proof-list-row{border:1px solid #e5e7eb;border-left:4px solid #0f766e;border-radius:10px;background:#fff;padding:9px 10px;display:grid;grid-template-columns:140px 1fr;gap:3px 10px;align-items:center;color:#111827}
.proof-list-row.warn{border-left-color:#b45309;background:#fffbeb}
.proof-list-row b{font-size:12px;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.proof-list-row span{font-size:12px;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.proof-list-row small{grid-column:1/-1;color:#64748b;font-size:11px}
@media (max-width: 1100px){.proof-detail-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.persistence-proof-panel .proof-main-row{align-items:flex-start}.proof-actions{flex-direction:column;align-items:stretch}.proof-title-block span{white-space:normal}}
@media (max-width: 680px){.proof-detail-grid{grid-template-columns:1fr}.proof-list-row{grid-template-columns:1fr}.persistence-proof-panel .proof-main-row{flex-wrap:wrap}.proof-actions{width:100%;flex-direction:row}}

/* V31.20.47 — Graph-Driven Plan Workbench */
.graph-workbench{display:flex;flex-direction:column;gap:14px;overflow:visible!important;background:#fff;border:1px solid #e4edf0;border-radius:18px;padding:16px;box-shadow:0 10px 28px rgba(15,40,50,.06)}
.graph-workbench-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;border-bottom:1px solid #edf3f5;padding-bottom:12px}
.graph-workbench-hero h3{margin:3px 0 4px;color:#102a33;font-size:20px;letter-spacing:-.02em}.graph-workbench-hero p{margin:0;color:#60717a;max-width:820px;line-height:1.45}
.graph-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.graph-layer-strip{display:flex;flex-wrap:wrap;gap:8px;background:#f7fbfc;border:1px solid #e5eef1;border-radius:14px;padding:10px}.graph-layer-strip span{font-size:11px;font-weight:800;color:#2d6570;background:#fff;border:1px solid #dbe9ed;border-radius:999px;padding:6px 10px;text-transform:uppercase;letter-spacing:.03em}
.graph-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.graph-wbs-card{background:#fff;border:1px solid #dfeaed;border-left:5px solid #1b8a94;border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:12px;min-width:0;box-shadow:0 8px 22px rgba(11,48,58,.05)}.graph-wbs-card.rag-red{border-left-color:#dc2626}.graph-wbs-card.rag-amber{border-left-color:#d97706}.graph-wbs-card.rag-green{border-left-color:#059669}.graph-wbs-card.rag-blue{border-left-color:#2563eb}.graph-wbs-card.rag-gray,.graph-wbs-card.rag-grey{border-left-color:#64748b}
.graph-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.graph-card-head h4{margin:4px 0 0;font-size:15px;line-height:1.3;color:#102a33}.graph-ref{font-size:10px;font-weight:800;color:#71838a;text-transform:uppercase;letter-spacing:.05em}.graph-card-meta{display:flex;flex-wrap:wrap;gap:6px}.graph-card-meta span{font-size:11px;color:#42545b;background:#f6fafb;border:1px solid #e4eef1;border-radius:999px;padding:5px 8px}.graph-count-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.graph-count-grid div{background:#f9fcfd;border:1px solid #e5eef1;border-radius:12px;padding:8px;min-width:0}.graph-count-grid b{display:block;color:#102a33;font-size:16px}.graph-count-grid span{font-size:10px;color:#66777f;font-weight:700;text-transform:uppercase}.graph-health-line{display:flex;flex-wrap:wrap;gap:7px}.graph-health-line span{font-size:11px;font-weight:800;border-radius:999px;padding:5px 8px;background:#f6fafb;color:#50636a;border:1px solid #e4eef1}.graph-health-line .red{color:#b91c1c;background:#fff5f5;border-color:#fecaca}.graph-health-line .amber{color:#92400e;background:#fffbeb;border-color:#fde68a}.graph-health-line .green{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.graph-next-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.graph-next-actions b{font-size:12px;color:#102a33}.graph-next-actions span{font-size:12px;background:#eef9fb;border:1px solid #cde9ee;color:#155e66;border-radius:999px;padding:6px 9px}.graph-phase-preview{display:flex;flex-direction:column;gap:6px}.graph-phase-preview>b{font-size:12px;color:#102a33}.graph-link-row{appearance:none;background:#fff;border:1px solid #e2ecef;border-radius:11px;padding:8px 10px;display:flex;justify-content:space-between;gap:10px;align-items:center;text-align:left;cursor:pointer;color:#20343b}.graph-link-row:hover{border-color:#1b8a94;background:#f6fcfd}.graph-card-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;border-top:1px solid #edf3f5;padding-top:10px}
@media(max-width:1400px){.graph-kpi-grid{grid-template-columns:repeat(3,minmax(130px,1fr))}.graph-card-grid{grid-template-columns:1fr}.graph-count-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.graph-workbench-hero{flex-direction:column}.graph-kpi-grid{grid-template-columns:1fr}.graph-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.graph-card-actions{justify-content:stretch}.graph-card-actions button{flex:1}}

/* V31.20.49.13 — guided closure checklist and green completion flow */
.pd-closure-guide{margin-top:12px;border:1px solid #cbd5e1;background:#fff}
.pd-gate-progress{display:grid;gap:7px;margin:4px 0 12px}
.pd-gate-progress-head{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px;color:#475569}
.pd-gate-progress-head b{font-size:13px;color:#0f172a}
.pd-gate-progress-track{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}
.pd-gate-progress-track span{display:block;height:100%;border-radius:999px;background:#0f8b7d;transition:width .2s ease}
.pd-gate-workflow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-bottom:12px}
.pd-gate-workflow span{display:flex;align-items:center;gap:6px;padding:7px;border:1px solid #dbe4ee;border-radius:8px;background:#f8fafc;color:#64748b;font-size:10px;line-height:1.15}
.pd-gate-workflow span b{display:inline-grid;place-items:center;min-width:19px;height:19px;border-radius:50%;background:#e2e8f0;color:#475569;font-size:10px}
.pd-gate-workflow span.done{border-color:#a7f3d0;background:#ecfdf5;color:#065f46}
.pd-gate-workflow span.done b{background:#0f8b7d;color:#fff}
.pd-gate-blocker-list{display:grid;gap:7px;max-height:340px;overflow:auto;padding-right:3px}
.pd-gate-blocker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:9px;background:#fffafa}
.pd-gate-blocker-main{display:flex;gap:9px;align-items:flex-start;min-width:0}
.pd-gate-blocker-main>div{display:grid;gap:3px;min-width:0}
.pd-gate-blocker-main b{font-size:12px;line-height:1.25;color:#1e293b;overflow-wrap:anywhere}
.pd-gate-blocker-main small{font-size:10px;color:#64748b;overflow-wrap:anywhere}
.pd-gate-kind{flex:0 0 auto;padding:3px 6px;border-radius:999px;background:#fee2e2;color:#991b1b;font-weight:700;font-size:9px;text-transform:uppercase;letter-spacing:.04em}
.pd-gate-ready{display:grid;gap:4px;padding:12px;border:1px solid #86efac;border-left:4px solid #16a34a;border-radius:9px;background:#f0fdf4;color:#166534}
.pd-gate-ready b{font-size:13px}.pd-gate-ready span{font-size:11px}
.gate-ready-btn{background:#15803d!important;border-color:#15803d!important}
.gate-blocked-btn{opacity:1!important;background:#fff7ed!important;border-color:#fdba74!important;color:#9a3412!important}
@media(max-width:980px){.pd-gate-workflow{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.pd-gate-workflow{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-gate-blocker-row{grid-template-columns:1fr}.pd-gate-blocker-row button{justify-self:start}}

/* V31.20.49.14 — state-driven, sequential, role-aware Plan workflow + explicit Azure/local storage truth */
.guided-workflow-panel{display:flex;flex-direction:column;gap:12px}
.pd-workflow-shell{border:1px solid #c9dff0;background:#f8fbfe}
.pd-workflow-role{display:flex;align-items:center;gap:8px}
.pd-workflow-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 14px}
.pd-workflow-step{min-height:72px;border:1px solid #d9e3ec;border-radius:10px;background:#f4f7fa;padding:8px;display:flex;gap:8px;align-items:flex-start;opacity:.72}
.pd-workflow-step.done{background:#eef9f5;border-color:#a9ddca;opacity:1}
.pd-workflow-step.current{background:#e9f7f5;border-color:#168a7d;box-shadow:0 0 0 2px rgba(22,138,125,.09);opacity:1}
.pd-workflow-step.locked{background:#f5f6f8;color:#73808c}
.pd-workflow-step-index{width:24px;height:24px;flex:0 0 24px;border-radius:50%;background:#dde5ec;display:grid;place-items:center;font-size:12px;font-weight:800}
.pd-workflow-step.done .pd-workflow-step-index,.pd-workflow-step.current .pd-workflow-step-index{background:#168a7d;color:#fff}
.pd-workflow-step-copy{display:flex;flex-direction:column;min-width:0;gap:2px}
.pd-workflow-step-copy b{font-size:12px;line-height:1.2}
.pd-workflow-step-copy span,.pd-workflow-step-copy small{font-size:10px;line-height:1.25;color:#667481}
.pd-workflow-current{border:1px solid #168a7d;background:#fff;box-shadow:0 4px 14px rgba(11,77,68,.07)}
.pd-workflow-current.ready{border-color:#2f9b67;background:#f4fbf7}
.pd-current-task-list{display:flex;flex-direction:column;gap:8px}
.pd-current-task{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid #e0e7ed;border-radius:9px;background:#fbfcfd}
.pd-current-task>div{display:flex;flex-direction:column;min-width:0;gap:3px}
.pd-current-task b{font-size:12px}.pd-current-task small{font-size:10px;color:#6a7783}
.workflow-next-action{border-left:4px solid #168a7d;background:#effaf7}
.pd-execution-secondary{background:#fbfcfd;border-style:dashed}
.pd-progress-explainer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:10px}
.pd-progress-explainer>div:first-child{display:flex;flex-direction:column;gap:2px}.pd-progress-explainer span{font-size:10px;color:#6b7884}
.pd-scope-section.secondary{opacity:.92}
.pd-storage-truth{border:1px solid #d6e0e8;border-left-width:4px;border-radius:9px;padding:10px 12px;margin:8px 0 12px;display:flex;flex-direction:column;gap:4px;background:#f8fafc}
.pd-storage-truth>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.pd-storage-truth b{font-size:12px}.pd-storage-truth span,.pd-storage-truth small{font-size:10px;color:#667481}
.pd-storage-truth.azure{border-left-color:#1976d2;background:#eef6ff}.pd-storage-truth.local{border-left-color:#d88819;background:#fff8ec}.pd-storage-truth.error{border-left-color:#d13f3f;background:#fff1f1}
.storage-warning{display:block;color:#a45a00!important;margin-top:3px;max-width:430px;white-space:normal}
.workflow-evidence-row{align-items:flex-start}.workflow-evidence-row .pd-row-actions{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1000px){.pd-workflow-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-progress-explainer{align-items:stretch;flex-direction:column}.pd-current-task{align-items:stretch;flex-direction:column}}


/* V31.20.49.15 — compact underlying-scope grid + persistent ownership and delegation */
.pd-ownership-panel{border:1px solid #cbdfee;background:linear-gradient(180deg,#f8fcff 0%,#f3f9fc 100%)}
.pd-ownership-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}
.pd-ownership-cell{appearance:none;border:1px solid #d8e4ec;background:#fff;border-radius:10px;padding:9px 10px;text-align:left;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:3px;color:inherit}
.pd-ownership-cell:hover,.pd-ownership-cell.active{border-color:#0f8a7e;box-shadow:0 0 0 2px rgba(15,138,126,.08)}
.pd-ownership-cell:disabled{cursor:not-allowed;opacity:.55;background:#f5f7f9}
.pd-ownership-cell span{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#607486;font-weight:700}
.pd-ownership-cell b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pd-ownership-cell small{font-size:10px;color:#718396;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pd-assignment-editor{display:grid;grid-template-columns:140px minmax(190px,1fr) 150px;gap:8px;align-items:end;margin-top:10px;padding:10px;border:1px dashed #b7ccd9;border-radius:10px;background:#fff}
.pd-assignment-editor label{display:flex;flex-direction:column;gap:4px;min-width:0}
.pd-assignment-editor label span{font-size:10px;text-transform:uppercase;color:#607486;font-weight:700}
.pd-assignment-editor select{width:100%;min-width:0}
.pd-assignment-actions{grid-column:1/-1;display:flex;gap:6px;justify-content:flex-end;align-items:center}
.pd-assignment-history{margin-top:8px;border-top:1px solid #dce8ef;padding-top:7px}
.pd-assignment-history summary{cursor:pointer;font-size:11px;font-weight:700;color:#52697b}
.pd-assignment-history-list{display:grid;gap:5px;margin-top:7px}
.pd-assignment-history-row{display:grid;grid-template-columns:150px minmax(0,1fr) 140px;gap:8px;align-items:center;padding:6px 8px;background:#fff;border:1px solid #e2ebf0;border-radius:8px;font-size:11px}
.pd-assignment-history-row small{color:#718396;text-align:right}
.pd-scope-grid-wrap{overflow-x:auto;overflow-y:visible;border:1px solid #d9e4eb;border-radius:10px;background:#fff}
.pd-scope-grid{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:11px}
.pd-scope-grid th{position:sticky;top:0;z-index:1;background:#f3f7fa;color:#5d7182;text-transform:uppercase;letter-spacing:.03em;font-size:9px;padding:8px;border-bottom:1px solid #d9e4eb;text-align:left}
.pd-scope-grid td{padding:8px;border-bottom:1px solid #edf2f5;vertical-align:middle}
.pd-scope-grid tr:last-child td{border-bottom:0}
.pd-scope-grid tr.scope-state-current{background:#f0fbf8}
.pd-scope-grid tr.scope-state-locked{background:#fafbfc;color:#6d7d89}
.pd-scope-grid tr.scope-state-attention{background:#fff8ed}
.pd-scope-grid tr.scope-state-done{background:#f3fbf5}
.pd-scope-grid th:nth-child(1){width:39%}.pd-scope-grid th:nth-child(2){width:12%}.pd-scope-grid th:nth-child(3){width:15%}.pd-scope-grid th:nth-child(4){width:11%}.pd-scope-grid th:nth-child(5){width:10%}.pd-scope-grid th:nth-child(6){width:13%}
.scope-item-cell{display:flex;gap:8px;align-items:flex-start;min-width:0}
.scope-item-cell>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.scope-item-cell b{white-space:normal;line-height:1.25}
.scope-item-cell small{color:#7b8d9a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.scope-type-badge{flex:0 0 auto;border-radius:999px;padding:3px 6px;font-size:8px;font-weight:800;letter-spacing:.04em;background:#e9eef3;color:#425766}
.scope-type-badge.input{background:#ffe4e4;color:#ad3232}.scope-type-badge.activity{background:#e2f1ff;color:#1e6597}.scope-type-badge.output{background:#eee8ff;color:#5d48a2}.scope-type-badge.dependency{background:#fff0d8;color:#8b5e17}
.scope-stage-pill{display:inline-flex;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:800;background:#e9eef3;color:#566a79}
.scope-stage-pill.current{background:#d9f4ed;color:#087266}.scope-stage-pill.done{background:#ddf5e2;color:#23783a}.scope-stage-pill.locked{background:#edf0f3;color:#798895}.scope-stage-pill.attention{background:#fff0d6;color:#9a6200}
.scope-grid-actions{display:flex;gap:4px;justify-content:flex-end;flex-wrap:wrap}
@media(max-width:900px){.pd-ownership-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-assignment-editor{grid-template-columns:1fr 1fr}.pd-assignment-actions{grid-column:1/-1}.pd-scope-grid{min-width:760px}}


/* V31.20.49.16 — evidence waiver state truth + wide workflow drawer */
:root{--drawer-width-client:min(1040px,calc(100vw - 300px));}
.plan-detail-drawer.compact-plan-drawer.professional-detail-drawer{
  width:var(--drawer-width-client)!important;
  max-width:var(--drawer-width-client)!important;
  min-width:860px!important;
}
.pd-scope-grid{font-size:12px!important;table-layout:fixed!important;}
.pd-scope-grid th:nth-child(1){width:38%!important}.pd-scope-grid th:nth-child(2){width:10%!important}.pd-scope-grid th:nth-child(3){width:20%!important}.pd-scope-grid th:nth-child(4){width:10%!important}.pd-scope-grid th:nth-child(5){width:9%!important}.pd-scope-grid th:nth-child(6){width:13%!important}
.pd-scope-grid td{line-height:1.35!important;overflow-wrap:anywhere!important;}
.pd-scope-grid td:nth-child(4),.pd-scope-grid td:nth-child(5){white-space:nowrap!important;}
.pd-scope-grid .scope-grid-actions{display:flex!important;flex-wrap:wrap!important;gap:5px!important;align-items:center!important;}
.workflow-evidence-row.terminal,.pd-list-row.evidence.terminal{background:#f7fbf8!important;border:1px solid #d6eadc!important;border-radius:10px!important;padding:10px!important;margin:6px 0!important;}
.evidence-terminal-truth{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:3px 8px!important;margin-top:5px!important;align-items:center!important;}
.evidence-terminal-truth b{font-size:10px!important;letter-spacing:.07em!important;border-radius:999px!important;padding:3px 7px!important;width:max-content!important;}
.evidence-terminal-truth.waived b{background:#eef2ff!important;color:#4338ca!important}.evidence-terminal-truth.approved b{background:#dcfce7!important;color:#166534!important}
.evidence-terminal-truth span{font-size:11px!important;color:#4b6178!important}.evidence-terminal-truth small{grid-column:1/-1!important;font-size:11px!important;color:#5d6f7f!important;overflow-wrap:anywhere!important;}
.pd-refresh-overlay{position:sticky!important;top:-12px!important;z-index:12!important;display:flex!important;align-items:center!important;gap:8px!important;justify-content:center!important;padding:8px 12px!important;background:rgba(239,250,247,.97)!important;border:1px solid #b9ded4!important;border-radius:10px!important;color:#0f5f57!important;box-shadow:0 5px 16px rgba(15,95,87,.10)!important;}
.pd-refresh-spinner{width:14px!important;height:14px!important;border:2px solid #9bd2c7!important;border-top-color:#0f8b7f!important;border-radius:50%!important;animation:pdspin .8s linear infinite!important;}
@keyframes pdspin{to{transform:rotate(360deg)}}
@media(max-width:1320px){.plan-detail-drawer.compact-plan-drawer.professional-detail-drawer{width:min(900px,calc(100vw - 28px))!important;max-width:calc(100vw - 28px)!important;min-width:0!important;}}
@media(max-width:900px){.plan-detail-drawer.compact-plan-drawer.professional-detail-drawer{width:100vw!important;max-width:100vw!important;min-width:0!important;margin:0!important;border-radius:0!important}.pd-scope-grid{min-width:820px!important;}}

/* V31.20.49.18 — governed bulk stage actions and timesheet draft assist */
.pd-bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin:0 0 10px;border:1px solid #d7e5e2;border-radius:10px;background:#f5fbf9;flex-wrap:wrap}
.pd-select-all,.pd-timesheet-toggle{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#263746;cursor:pointer}
.pd-select-all input,.pd-timesheet-toggle input,.pd-row-check input{width:16px;height:16px;accent-color:#0d8475;cursor:pointer;flex:0 0 auto}
.pd-bulk-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.pd-current-task.selectable{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center}
.pd-current-task.selectable>div{min-width:0}
.pd-current-task.selectable.selected,.workflow-evidence-row.selected{border-color:#0d8475!important;background:#eefaf6!important;box-shadow:0 0 0 1px rgba(13,132,117,.08)}
.pd-row-check{display:flex!important;align-items:center!important;justify-content:center!important;min-width:20px!important}
.pd-timesheet-assist{margin:10px 0 12px;padding:12px;border:1px solid #dbe4ee;border-radius:10px;background:#f8fafc}
.pd-timesheet-fields{display:grid;grid-template-columns:150px 120px minmax(260px,1fr);gap:10px;align-items:end;margin-top:10px}
.pd-timesheet-fields label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:800;color:#5b6d7c;text-transform:uppercase;letter-spacing:.02em}
.pd-timesheet-fields input,.pd-timesheet-fields textarea{width:100%;box-sizing:border-box;border:1px solid #cfdbe5;border-radius:8px;padding:9px 10px;background:#fff;color:#1f2937;font:inherit;text-transform:none;letter-spacing:normal}
.pd-timesheet-fields textarea{min-height:60px;resize:vertical}
.pd-timesheet-gist{grid-column:1/-1;padding:9px 10px;border-left:3px solid #0d8475;background:#eef7f5;border-radius:6px;font-size:11px;line-height:1.45;color:#354a55}
@media(max-width:1100px){.pd-timesheet-fields{grid-template-columns:1fr 1fr}.pd-timesheet-fields label:last-of-type{grid-column:1/-1}}
@media(max-width:700px){.pd-bulk-toolbar{align-items:stretch;flex-direction:column}.pd-bulk-toolbar-actions{justify-content:flex-start}.pd-current-task.selectable{grid-template-columns:24px minmax(0,1fr)}.pd-current-task.selectable .pd-row-actions{grid-column:1/-1;margin-left:24px}.pd-timesheet-fields{grid-template-columns:1fr}.pd-timesheet-fields label:last-of-type{grid-column:auto}}


/* V31.20.49.20 — deterministic bulk commit and evidence response finalization; V31.20.49.19 UI alignment retained */
.plan-detail-drawer .pd-bulk-toolbar{
  display:grid!important;
  grid-template-columns:minmax(220px,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  min-height:54px!important;
  padding:9px 12px!important;
  overflow:hidden!important;
}
.plan-detail-drawer .pd-bulk-select{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  min-width:0!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
}
.plan-detail-drawer .pd-bulk-select-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:1px!important;
  min-width:0!important;
  line-height:1.2!important;
}
.plan-detail-drawer .pd-bulk-select-copy b{
  display:block!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.25!important;
  color:#243746!important;
  white-space:nowrap!important;
}
.plan-detail-drawer .pd-bulk-select-copy span{
  display:block!important;
  margin:0!important;
  font-size:10px!important;
  line-height:1.25!important;
  color:#667889!important;
  white-space:nowrap!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}
.plan-detail-drawer .pd-check-control,
.plan-detail-drawer input.pd-check-control,
.plan-detail-drawer input.pd-row-check{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  display:block!important;
  position:static!important;
  float:none!important;
  inset:auto!important;
  width:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  height:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  margin:0!important;
  padding:0!important;
  flex:0 0 18px!important;
  border-radius:3px!important;
  accent-color:#0d8475!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.plan-detail-drawer .pd-bulk-toolbar-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  min-width:0!important;
  margin:0!important;
}
.plan-detail-drawer .pd-bulk-toolbar-actions .primary{
  min-width:220px!important;
  max-width:100%!important;
  white-space:nowrap!important;
}
.plan-detail-drawer .pd-current-task.selectable{
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr) minmax(150px,max-content)!important;
  align-items:center!important;
  gap:10px!important;
  min-height:64px!important;
  padding:9px 10px!important;
  overflow:hidden!important;
}
.plan-detail-drawer .pd-current-task.selectable>div{
  min-width:0!important;
  width:auto!important;
}
.plan-detail-drawer .pd-current-task.selectable>div b,
.plan-detail-drawer .pd-current-task.selectable>div small{
  overflow-wrap:anywhere!important;
}
.plan-detail-drawer .pd-stage-row-action{
  min-width:150px!important;
  justify-self:end!important;
  white-space:nowrap!important;
}
.plan-detail-drawer .pd-timesheet-assist{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:10px 0 2px!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border:1px solid #d8e4ed!important;
  border-radius:10px!important;
  background:#f8fafc!important;
}
.plan-detail-drawer .pd-timesheet-assist.enabled{
  border-color:#9fd4c9!important;
  background:#fbfefd!important;
}
.plan-detail-drawer .pd-timesheet-assist-head{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  padding:10px 12px!important;
  box-sizing:border-box!important;
  position:static!important;
}
.plan-detail-drawer .pd-timesheet-assist-copy{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:2px!important;
  min-width:0!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
}
.plan-detail-drawer .pd-timesheet-assist-copy b{
  display:block!important;
  margin:0!important;
  color:#203544!important;
  font-size:12px!important;
  line-height:1.3!important;
  white-space:normal!important;
}
.plan-detail-drawer .pd-timesheet-assist-copy span{
  display:block!important;
  margin:0!important;
  color:#657888!important;
  font-size:10px!important;
  line-height:1.35!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}
.plan-detail-drawer .pd-timesheet-fields{
  display:grid!important;
  grid-template-columns:160px 120px minmax(0,1fr)!important;
  align-items:end!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
  padding:0 12px 12px 40px!important;
  box-sizing:border-box!important;
  border-top:1px solid #e3ebf1!important;
}
.plan-detail-drawer .pd-timesheet-fields label{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:5px!important;
  min-width:0!important;
  margin:10px 0 0!important;
  padding:0!important;
  position:static!important;
}
.plan-detail-drawer .pd-timesheet-fields label span{
  display:block!important;
  margin:0!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:800!important;
  color:#5b6d7c!important;
  text-transform:uppercase!important;
  letter-spacing:.03em!important;
  white-space:nowrap!important;
}
.plan-detail-drawer .pd-timesheet-fields input{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:36px!important;
  margin:0!important;
  padding:7px 9px!important;
  box-sizing:border-box!important;
}
.plan-detail-drawer .pd-timesheet-gist{
  grid-column:auto!important;
  align-self:stretch!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:58px!important;
  margin:10px 0 0!important;
  padding:8px 10px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.plan-detail-drawer .pd-timesheet-gist b{
  display:block!important;
  margin:0 0 3px!important;
  color:#0f5f57!important;
  font-size:10px!important;
  line-height:1.2!important;
}
.plan-detail-drawer .pd-timesheet-gist p{
  margin:0!important;
  font-size:10px!important;
  line-height:1.4!important;
  color:#435765!important;
  overflow-wrap:anywhere!important;
}
@media(max-width:1180px){
  .plan-detail-drawer .pd-timesheet-fields{
    grid-template-columns:minmax(140px,1fr) minmax(110px,.7fr)!important;
  }
  .plan-detail-drawer .pd-timesheet-gist{
    grid-column:1/-1!important;
    margin-top:0!important;
  }
}
@media(max-width:760px){
  .plan-detail-drawer .pd-bulk-toolbar{
    grid-template-columns:1fr!important;
    align-items:stretch!important;
  }
  .plan-detail-drawer .pd-bulk-toolbar-actions,
  .plan-detail-drawer .pd-bulk-toolbar-actions .primary{
    width:100%!important;
    min-width:0!important;
  }
  .plan-detail-drawer .pd-current-task.selectable{
    grid-template-columns:20px minmax(0,1fr)!important;
  }
  .plan-detail-drawer .pd-stage-row-action{
    grid-column:1/-1!important;
    width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;
  }
  .plan-detail-drawer .pd-timesheet-fields{
    grid-template-columns:1fr!important;
    padding-left:12px!important;
  }
  .plan-detail-drawer .pd-timesheet-gist{
    grid-column:auto!important;
  }
}

/* V31.20.50.0 — Native Agile Work Management */
.agile-work-shell{display:flex;flex-direction:column;gap:14px}
.agile-hero{align-items:center}
.agile-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px}
.agile-kpi{background:#fff;border:1px solid #dbe5ec;border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;min-height:76px;box-shadow:0 2px 8px rgba(25,55,75,.05)}
.agile-kpi span{font-size:12px;color:#5f7180;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.agile-kpi b{font-size:26px;color:#18384b}.agile-kpi.red{border-left:4px solid #c94a4a}.agile-kpi.amber{border-left:4px solid #d99b28}.agile-kpi.green{border-left:4px solid #2d9b66}.agile-kpi.blue{border-left:4px solid #3186b8}
.agile-tabs{overflow:auto;white-space:nowrap}.agile-filter-bar{display:grid;grid-template-columns:minmax(260px,1fr) 180px 190px auto;gap:10px;align-items:center;background:#fff;border:1px solid #dbe5ec;border-radius:12px;padding:10px}
.agile-filter-bar input,.agile-filter-bar select,.agile-form-card input,.agile-form-card select,.agile-form-card textarea,.agile-export-grid textarea,.agile-sprint-grid input{width:100%;min-width:0}
.agile-table-wrap{overflow:auto;background:#fff;border:1px solid #dbe5ec;border-radius:12px}.agile-table{width:100%;border-collapse:collapse;min-width:980px}.agile-table th{position:sticky;top:0;background:#f4f8fa;color:#415867;font-size:12px;text-align:left;padding:10px;border-bottom:1px solid #dbe5ec;z-index:1}.agile-table td{padding:10px;border-bottom:1px solid #edf2f5;vertical-align:top;font-size:13px}.agile-table tbody tr{cursor:pointer}.agile-table tbody tr:hover{background:#f3faf8}.agile-table td b,.agile-table td small{display:block}.agile-table td small{margin-top:3px;color:#718391}.agile-source-truth{color:#167455!important;font-weight:700}
.agile-overview-grid,.agile-export-grid,.agile-sprint-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.agile-rollup-list{display:grid;gap:7px;max-height:390px;overflow:auto}.agile-rollup-list button{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:10px;align-items:center;text-align:left;background:#f8fbfc;border:1px solid #dce7ec;border-radius:8px;padding:9px}
.agile-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(245px,1fr);gap:10px;overflow:auto;padding-bottom:8px}.agile-board-column{background:#eef4f6;border:1px solid #d8e3e8;border-radius:12px;min-height:420px;max-height:68vh;overflow:auto}.agile-board-column>header{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#e7f0f3;border-bottom:1px solid #d3e0e5;z-index:1}.agile-board-column>div{padding:8px;display:grid;gap:8px}.agile-board-card{display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;background:#fff;border:1px solid #d5e0e5;border-radius:9px;padding:10px;box-shadow:0 2px 6px rgba(29,61,79,.06)}.agile-board-card span{font-weight:600}.agile-board-card small{color:#687c89}.agile-board-card em{align-self:flex-end;font-style:normal;background:#e9f5ef;color:#17734f;border-radius:999px;padding:2px 7px;font-size:11px}
.agile-issue-shell{padding:0!important;overflow:hidden}.agile-issue-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid #dce6eb;background:#f8fbfc}.agile-issue-head h2{margin:3px 0}.agile-issue-head p{margin:0;color:#647785}.agile-issue-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(300px,.8fr);gap:12px;padding:14px;align-items:start}.agile-form-card{background:#fff;border:1px solid #dbe5ec;border-radius:11px;padding:13px;display:flex;flex-direction:column;gap:10px}.agile-form-card h3{margin:0}.agile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.agile-field{display:flex;flex-direction:column;gap:5px;min-width:0}.agile-field>span{font-size:12px;font-weight:700;color:#4b6271}.agile-field:has(textarea){grid-column:1/-1}.agile-actions-card{position:sticky;top:12px}.agile-transition-row{display:flex;gap:7px;flex-wrap:wrap}.agile-worklog-row{display:grid;grid-template-columns:145px 100px minmax(180px,1fr) auto;gap:8px;align-items:center}.agile-activity-list{display:grid;gap:7px;margin-top:8px}.agile-activity-list>div{display:grid;grid-template-columns:150px 1fr auto;gap:8px;border-bottom:1px solid #edf2f5;padding:7px 0}.agile-activity-list span{white-space:normal}
.agile-sprint-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #e5ecef}.agile-sprint-row div{display:flex;flex-direction:column}.agile-sprint-row span{color:#627785}.agile-export-grid .pmo-card,.agile-sprint-grid .pmo-card{display:flex;flex-direction:column;gap:10px}.agile-defects-view{display:flex;flex-direction:column;gap:8px}
.pd-agile-summary{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.pd-agile-summary span{background:#edf6f2;color:#1d6d53;border:1px solid #cbe5d9;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700}.pd-agile-list{display:grid;gap:7px}.pd-agile-list button{display:grid;grid-template-columns:150px minmax(0,1fr) 190px;gap:10px;align-items:center;text-align:left;border:1px solid #dce6eb;background:#fff;border-radius:8px;padding:9px}.pd-agile-list span{white-space:normal}.pd-agile-list small{color:#657985;text-align:right}
@media(max-width:1400px){.agile-kpi-grid{grid-template-columns:repeat(3,1fr)}.agile-issue-grid{grid-template-columns:1fr 1fr}.agile-actions-card{grid-column:1/-1;position:static}}
@media(max-width:900px){.agile-kpi-grid{grid-template-columns:repeat(2,1fr)}.agile-filter-bar{grid-template-columns:1fr}.agile-overview-grid,.agile-export-grid,.agile-sprint-grid,.agile-issue-grid{grid-template-columns:1fr}.agile-form-grid{grid-template-columns:1fr}.agile-worklog-row{grid-template-columns:1fr}.agile-issue-head{flex-direction:column}.pd-agile-list button{grid-template-columns:1fr}.pd-agile-list small{text-align:left}.agile-activity-list>div{grid-template-columns:1fr}}

/* V31.20.50.1 — Compact Agile Workspace and Guided Workflow Test Cycles */
.agile-work-shell{gap:8px}
.agile-hero{min-height:0;padding:10px 14px;gap:12px}
.agile-hero h2{font-size:22px;line-height:1.15;margin:2px 0 3px}
.agile-hero p{font-size:12px;line-height:1.35;margin:0;max-width:860px}
.agile-hero .eyebrow{font-size:10px}
.agile-hero .hero-actions{gap:6px}
.agile-kpi-grid{gap:6px}
.agile-kpi{min-height:50px;border-radius:8px;padding:7px 10px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;box-shadow:none}
.agile-kpi span{font-size:10px;line-height:1.2}
.agile-kpi b{font-size:21px;line-height:1}
.agile-kpi.red,.agile-kpi.amber,.agile-kpi.green,.agile-kpi.blue{border-left-width:3px}
.agile-tabs{min-height:36px;border-radius:8px}
.agile-tabs button{padding:6px 10px!important;min-height:32px;font-size:12px;line-height:1}
.agile-filter-bar{grid-template-columns:minmax(220px,1fr) 150px 160px auto;gap:6px;border-radius:8px;padding:6px}
.agile-filter-bar input,.agile-filter-bar select{height:32px;padding:5px 8px;font-size:12px}
.agile-table-wrap{border-radius:8px}
.agile-table{min-width:900px}
.agile-table th{padding:6px 8px;font-size:10px;line-height:1.15}
.agile-table td{padding:6px 8px;font-size:12px;line-height:1.25}
.agile-table td small{font-size:10px;margin-top:1px}
.agile-overview-grid,.agile-export-grid,.agile-sprint-grid{gap:8px}
.agile-overview-grid .pmo-card,.agile-export-grid .pmo-card,.agile-sprint-grid .pmo-card{padding:10px;border-radius:8px}
.agile-overview-grid h3,.agile-export-grid h3,.agile-sprint-grid h3{font-size:14px;margin:0 0 4px}
.agile-overview-grid p,.agile-export-grid p,.agile-sprint-grid p{font-size:12px;margin:3px 0}
.agile-overview-grid ul{margin:5px 0 0;padding-left:18px;font-size:12px;line-height:1.4}
.agile-rollup-list{gap:4px;max-height:300px}
.agile-rollup-list button{grid-template-columns:minmax(150px,1fr) auto auto;gap:7px;border-radius:6px;padding:6px 8px;font-size:11px}
.agile-board{grid-auto-columns:minmax(210px,1fr);gap:7px;padding-bottom:4px}
.agile-board-column{border-radius:8px;min-height:330px;max-height:66vh}
.agile-board-column>header{padding:7px 9px;font-size:12px}
.agile-board-column>div{padding:5px;gap:5px}
.agile-board-card{gap:3px;border-radius:6px;padding:7px;box-shadow:none;font-size:11px}
.agile-board-card span{font-size:11px;line-height:1.25}
.agile-board-card small{font-size:10px}
.agile-board-card em{padding:1px 5px;font-size:9px}
.agile-issue-head{gap:10px;padding:9px 12px}
.agile-issue-head h2{font-size:19px;line-height:1.15;margin:2px 0}
.agile-issue-head p{font-size:11px;line-height:1.3}
.agile-issue-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1.05fr) minmax(270px,.75fr);gap:8px;padding:8px}
.agile-form-card{border-radius:8px;padding:9px;gap:7px}
.agile-form-card h3{font-size:14px}
.agile-form-card p{font-size:11px;margin:0}
.agile-form-grid{gap:7px}
.agile-field{gap:3px}
.agile-field>span{font-size:10px}
.agile-form-card input,.agile-form-card select{height:31px;padding:4px 7px;font-size:11px}
.agile-form-card textarea{min-height:64px;padding:6px 7px;font-size:11px;line-height:1.3;resize:vertical}
.agile-transition-row{gap:5px}
.agile-transition-row .small-btn{padding:5px 8px;min-height:28px;font-size:10px}
.agile-worklog-row{grid-template-columns:125px 78px minmax(150px,1fr) auto;gap:5px}
.agile-activity-list{gap:4px;margin-top:5px}
.agile-activity-list>div{grid-template-columns:120px 1fr auto;gap:6px;padding:5px 0;font-size:11px}
.agile-sprint-row{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:6px 0;font-size:11px}
.agile-defects-view{gap:5px}
.agile-defects-view h3{font-size:15px;margin:0}
.agile-defects-view p{margin:0;font-size:11px}
.agile-export-grid textarea{min-height:180px;font-size:11px;line-height:1.3}

.agile-cycle-shell{display:flex;flex-direction:column;gap:8px}
.agile-cycle-intro{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid #dbe5ec;border-radius:8px;padding:9px 11px}
.agile-cycle-intro h3{margin:2px 0;font-size:15px;color:#18384b}
.agile-cycle-intro p{margin:0;font-size:11px;line-height:1.35;color:#617582}
.agile-cycle-observed{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:520px}
.agile-cycle-observed span{background:#eef6f4;border:1px solid #d4e8e2;border-radius:999px;color:#23634f;font-size:10px;font-weight:700;padding:3px 7px;white-space:nowrap}
.agile-cycle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.agile-cycle-card{display:flex;flex-direction:column;gap:7px;background:#fff;border:1px solid #dbe5ec;border-radius:8px;padding:9px;min-width:0}
.agile-cycle-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;padding-bottom:6px;border-bottom:1px solid #edf2f5}
.agile-cycle-card>header span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#55707f}
.agile-cycle-card>header b{font-size:12px;color:#18384b}
.agile-cycle-card>header em{font-size:9px;font-style:normal;font-weight:700;color:#227156;background:#eaf6f1;border-radius:999px;padding:2px 6px;white-space:nowrap}
.agile-cycle-card ol{margin:0;padding-left:18px;display:grid;gap:3px;font-size:10.5px;line-height:1.3;color:#344f5f;flex:1}
.agile-cycle-pass{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px;align-items:start;background:#f6faf8;border-left:3px solid #2d9b66;border-radius:5px;padding:6px 7px;font-size:10px;line-height:1.3}
.agile-cycle-pass b{color:#1d694b}
.agile-cycle-card .small-btn{align-self:flex-start;padding:5px 8px;min-height:28px;font-size:10px}
.agile-cycle-wide{grid-column:1/-1}
.agile-cycle-wide ol{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}

@media(max-width:1400px){
  .agile-cycle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .agile-issue-grid{grid-template-columns:1fr 1fr}
  .agile-actions-card{grid-column:1/-1;position:static}
}
@media(max-width:900px){
  .agile-cycle-intro{align-items:flex-start;flex-direction:column}
  .agile-cycle-observed{justify-content:flex-start;max-width:none}
  .agile-cycle-grid{grid-template-columns:1fr}
  .agile-cycle-wide{grid-column:auto}
  .agile-cycle-wide ol{grid-template-columns:1fr}
  .agile-kpi-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:560px){
  .agile-kpi-grid{grid-template-columns:repeat(2,1fr)}
  .agile-kpi{min-height:46px;padding:6px 8px}
  .agile-kpi b{font-size:18px}
}

/* V31.20.50.2 — Compact governed R1 Sprint Plan import and RAG rules. */
.excel-help.compact { padding:10px 12px; }
.excel-help.compact p { margin:3px 0; line-height:1.35; }
.excel-rule-note { margin-top:8px !important; padding:8px 10px; border-left:3px solid #0f766e; background:#f0fdfa; color:#134e4a; }
.excel-preview-summary.r1-summary { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.excel-linkage-status { margin-top:10px; padding:10px 12px; display:grid; gap:3px; border:1px solid #cbd5e1; background:#f8fafc; border-radius:8px; }
.excel-linkage-status b { color:#0f172a; }
.excel-linkage-status span { font-size:13px; color:#0f766e; font-weight:700; }
.excel-linkage-status small { color:#475569; line-height:1.35; }
.rag-rule-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.rag-rule-card { min-height:76px; display:flex; flex-direction:column; align-items:flex-start; gap:7px; padding:10px; border:1px solid #dbe4ee; border-radius:8px; background:#fff; }
.rag-rule-card span:last-child { font-size:12px; line-height:1.35; color:#334155; }
.rag-rule-card.green { border-top:3px solid #16a34a; }
.rag-rule-card.amber { border-top:3px solid #d97706; }
.rag-rule-card.red { border-top:3px solid #dc2626; }
.rag-rule-card.blue { border-top:3px solid #2563eb; }
.rag-rule-card.gray { border-top:3px solid #64748b; }
.excel-error-list { display:grid; gap:6px; }
.excel-error-list > div { padding:8px 10px; background:#fef2f2; border:1px solid #fecaca; border-radius:6px; color:#991b1b; font-size:12px; }
@media (max-width:1100px) {
  .rag-rule-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .excel-preview-summary.r1-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .rag-rule-grid, .excel-preview-summary.r1-summary { grid-template-columns:1fr; }
}

/* V31.20.50.3 — compact Agile header, embedded R1 import, Sprint calendar and sidebar-driven Agile navigation. */
.agile-work-shell{gap:5px}
.agile-hero{display:grid;grid-template-columns:minmax(280px,1fr) auto;align-items:center;gap:10px;padding:7px 10px;min-height:52px;border-radius:8px}
.agile-hero-copy{min-width:0}
.agile-title-row{display:flex;align-items:center;gap:8px;min-width:0}
.agile-title-row h2{font-size:17px;line-height:1.1;margin:0;color:#18384b;white-space:nowrap}
.agile-title-row .eyebrow{font-size:9px;line-height:1;background:#edf6f3;color:#176a50;border:1px solid #cfe6dc;border-radius:999px;padding:3px 7px;letter-spacing:.03em;white-space:nowrap}
.agile-hero-copy p{margin:3px 0 0;font-size:10.5px;line-height:1.2;color:#667b88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:680px}
.agile-header-right{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.agile-header-metrics{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:nowrap}
.agile-metric-chip{display:grid;grid-template-columns:auto auto;align-items:center;gap:4px;min-width:58px;height:27px;padding:3px 6px;background:#fff;border:1px solid #dce6eb;border-radius:6px;border-left-width:3px}
.agile-metric-chip span{font-size:8px;line-height:1;text-transform:uppercase;letter-spacing:.04em;color:#667986;font-weight:800}
.agile-metric-chip b{font-size:13px;line-height:1;color:#17384b}
.agile-metric-chip.blue{border-left-color:#3186b8}.agile-metric-chip.green{border-left-color:#2d9b66}.agile-metric-chip.amber{border-left-color:#d99b28}.agile-metric-chip.red{border-left-color:#c94a4a}
.agile-header-actions{display:flex;align-items:center;gap:4px;white-space:nowrap}
.agile-header-actions .small-btn{min-height:27px;padding:4px 8px;font-size:9.5px}
.agile-tabs{min-height:31px;padding:3px 5px;border-radius:7px}
.agile-tabs button{padding:5px 8px!important;min-height:25px;font-size:10px}
.agile-filter-bar{padding:5px;gap:5px;border-radius:7px}
.agile-filter-bar input,.agile-filter-bar select{height:29px;font-size:10.5px}
.agile-filter-bar .small-btn{min-height:29px;padding:4px 8px;font-size:10px}
.agile-import-alert{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 9px;background:#fff8e7;border:1px solid #ead79d;border-left:4px solid #d99b28;border-radius:7px}
.agile-import-alert>div{display:flex;flex-direction:column;gap:1px;min-width:0}
.agile-import-alert b{font-size:11px;color:#6b4c08}
.agile-import-alert span{font-size:10px;color:#756434;white-space:normal}
.agile-import-alert .small-btn{white-space:nowrap;min-height:28px;padding:4px 9px;font-size:10px}
.agile-board{grid-auto-columns:minmax(185px,1fr);gap:5px;padding-bottom:2px}
.agile-board-column{min-height:300px;border-radius:7px;max-height:70vh}
.agile-board-column>header{padding:6px 8px;font-size:10.5px}
.agile-board-column>div{padding:4px;gap:4px}
.agile-board-card{padding:6px;gap:3px;border-radius:5px;font-size:10px}
.agile-board-card-key{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%}
.agile-board-card-key em{align-self:auto;background:#eef3f6;color:#46616f}
.agile-board-empty{display:flex;align-items:center;justify-content:center;min-height:54px;color:#8a9ba5;font-size:10px;border:1px dashed #ccd9df;border-radius:5px;background:rgba(255,255,255,.45)}
.agile-sprint-grid{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:7px}
.agile-create-sprint-card,.agile-release-calendar-card{padding:8px!important}
.agile-sprint-calendar{display:grid;gap:4px;max-height:360px;overflow:auto}
.agile-sprint-calendar-row{display:grid;grid-template-columns:minmax(150px,1fr) 155px 76px 62px;gap:7px;align-items:center;text-align:left;background:#f8fbfc;border:1px solid #dce7ec;border-radius:6px;padding:6px 7px;font-size:10px}
.agile-sprint-calendar-row>div{display:flex;flex-direction:column;gap:1px;min-width:0}
.agile-sprint-calendar-row b{font-size:10.5px;color:#18384b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agile-sprint-calendar-row small{font-size:9px;color:#6f818c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agile-sprint-calendar-row>span{white-space:nowrap}
.agile-sprint-calendar-row em{font-style:normal;text-align:right;color:#1f6a53;font-weight:700;white-space:nowrap}
.agile-empty-action{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:12px;background:#f8fbfc;border:1px dashed #cddae0;border-radius:7px}
.agile-empty-action b{font-size:12px;color:#19394b}.agile-empty-action span{font-size:10px;color:#657985}
.compact-r1-import-hero{padding:8px 10px!important;min-height:0!important}
.compact-r1-import-hero h2{font-size:17px;margin:0 0 2px}.compact-r1-import-hero p{font-size:10.5px;margin:0}
.compact-r1-import-hero .excel-hero-actions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.compact-r1-import-hero .small-btn{min-height:28px;padding:4px 8px;font-size:9.5px}
.r1-bundled-file-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 7px;margin-bottom:7px;background:#eef7f4;border:1px solid #d0e6de;border-radius:6px}
.r1-bundled-file-row h4,.r1-bundled-file-row p{margin:0}.r1-bundled-file-row h4{font-size:11px}.r1-bundled-file-row p{font-size:9.5px;color:#657985}
.r1-bundled-file-row a{text-decoration:none;white-space:nowrap}
.grouped-side-menu .side-menu-section[data-group="agileDelivery"] .side-menu-item{font-size:11px}
@media(max-width:1450px){
  .agile-hero{grid-template-columns:1fr}
  .agile-header-right{justify-content:space-between}
  .agile-header-metrics{justify-content:flex-start;flex-wrap:wrap}
}
@media(max-width:980px){
  .agile-header-right{align-items:flex-start;flex-direction:column}
  .agile-header-actions{flex-wrap:wrap}
  .agile-sprint-grid{grid-template-columns:1fr}
  .agile-sprint-calendar-row{grid-template-columns:1fr 1fr}
  .agile-title-row{align-items:flex-start;flex-direction:column;gap:3px}
  .agile-hero-copy p{white-space:normal}
  .agile-import-alert{align-items:flex-start;flex-direction:column}
}

/* V31.20.50.4 — CSV-first R1 import and post-commit view rebuild controls. */
.r1-download-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.compact-r1-import-hero .excel-hero-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.compact-r1-import-hero{min-height:0;padding:10px 12px}
.excel-preview-summary.r1-summary{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1100px){.excel-preview-summary.r1-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.r1-download-actions{justify-content:flex-start}}

/* V31.20.50.5 — staged, resumable R1 view finalization recovery UI */
.compact-r1-import-hero .excel-hero-actions{max-width:62%;justify-content:flex-end;align-content:flex-start}
.compact-r1-import-hero .rebuild-resume-btn{border-color:#0f766e;background:#ecfdf5;color:#0f5132;font-weight:700}
.r1-rebuild-status-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0;padding:8px 10px;border:1px solid #79c2b5;border-left:4px solid #0f8b78;border-radius:8px;background:#effcf8;color:#17324d}
.r1-rebuild-status-banner>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.r1-rebuild-status-banner b{font-size:11px}
.r1-rebuild-status-banner span,.r1-rebuild-status-banner small{font-size:10px;color:#536b82}
.r1-rebuild-status-banner .small-btn{flex:0 0 auto;min-height:28px}
@media(max-width:1100px){.compact-r1-import-hero .excel-hero-actions{max-width:100%;justify-content:flex-start}.r1-rebuild-status-banner{align-items:flex-start;flex-direction:column}}

/* V31.20.50.6 — Native Agile large-plan read recovery and bounded rendering */
.agile-load-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:10px 12px;border:1px solid #ef4444;border-left-width:4px;border-radius:10px;background:#fff7f7;color:#7f1d1d}
.agile-load-error>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.agile-load-error b{font-size:12px}.agile-load-error span{font-size:11px;overflow-wrap:anywhere}
.agile-result-limit,.agile-board-limit{padding:7px 9px;font-size:10px;color:#475569;background:#f8fafc;border-top:1px solid #e2e8f0}
.agile-board-limit{position:sticky;bottom:0;border:1px solid #dbe5ea;border-radius:6px;margin:6px;background:#fff}
@media(max-width:900px){.agile-load-error{align-items:flex-start;flex-direction:column}.agile-load-error button{width:100%}}

/* V31.20.50.7 — Plan Workbench-standard compact metric headers and guided attendance start. */
.unified-metric-header{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto auto!important;
  align-items:center!important;
  gap:8px!important;
  min-height:56px!important;
  padding:7px 10px!important;
  margin:0 0 6px!important;
  border:1px solid #d7e0ea!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.unified-header-title{min-width:0!important;overflow:hidden!important;}
.unified-header-title .eyebrow{display:block!important;margin:0 0 2px!important;font-size:8px!important;line-height:10px!important;letter-spacing:.055em!important;text-transform:uppercase!important;color:#2563eb!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.unified-header-title h2{margin:0!important;font-size:17px!important;line-height:20px!important;color:#172235!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.unified-header-title p{margin:1px 0 0!important;font-size:10px!important;line-height:13px!important;color:#64748b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.unified-header-metrics{
  display:flex!important;
  grid-template-columns:none!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:4px!important;
  margin:0!important;
  min-width:0!important;
}
.unified-header-metric{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:auto!important;
  min-width:68px!important;
  max-width:148px!important;
  height:39px!important;
  min-height:39px!important;
  padding:4px 7px!important;
  margin:0!important;
  border:1px solid #dbe4ee!important;
  border-left:3px solid #3b82f6!important;
  border-radius:7px!important;
  background:#f8fafc!important;
  box-shadow:none!important;
  text-align:left!important;
  cursor:default!important;
  overflow:hidden!important;
}
button.unified-header-metric{cursor:pointer!important;}
.unified-header-metric span{display:block!important;font-size:7.5px!important;line-height:9px!important;letter-spacing:.055em!important;text-transform:uppercase!important;color:#52657b!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important;}
.unified-header-metric b{display:block!important;font-size:13px!important;line-height:15px!important;color:#172235!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important;}
.unified-header-metric small{display:block!important;font-size:7.5px!important;line-height:9px!important;color:#64748b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important;}
.unified-header-metric.blue{border-left-color:#3b82f6!important;}
.unified-header-metric.ok,.unified-header-metric.green{border-left-color:#16a34a!important;background:#f7fdf9!important;}
.unified-header-metric.warning,.unified-header-metric.amber{border-left-color:#d97706!important;background:#fffbf3!important;}
.unified-header-metric.danger,.unified-header-metric.red{border-left-color:#dc2626!important;background:#fff8f8!important;}
.unified-header-metric.danger b,.unified-header-metric.red b{color:#b91c1c!important;}
.unified-header-metric.active,.unified-header-metric[aria-pressed="true"]{background:#eaf8f6!important;border-color:#8fd2cb!important;border-left-color:#0f8b7f!important;box-shadow:inset 0 0 0 1px rgba(15,139,127,.10)!important;}
.unified-header-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:4px!important;flex-wrap:nowrap!important;white-space:nowrap!important;margin:0!important;}
.unified-header-actions .small-btn{height:29px!important;min-height:29px!important;padding:0 9px!important;font-size:10px!important;border-radius:7px!important;white-space:nowrap!important;}
.unified-header-actions .header-attendance-control{height:31px!important;min-height:31px!important;min-width:116px!important;width:auto!important;padding:2px 4px!important;gap:3px!important;border-radius:7px!important;}
.unified-header-actions .header-attendance-meta{display:none!important;}
.unified-header-actions .header-attendance-btn{height:25px!important;min-height:25px!important;padding:0 9px!important;font-size:9.5px!important;}
.dense-metrics .unified-header-metric{min-width:62px!important;max-width:112px!important;}
.compact-advanced-shell{display:flex!important;flex-direction:column!important;gap:6px!important;}
.compact-advanced-shell .advanced-tool-nav{margin:0!important;padding:4px!important;min-height:32px!important;border-radius:8px!important;}
.compact-advanced-shell .advanced-tool-nav button{height:25px!important;min-height:25px!important;padding:0 9px!important;font-size:10px!important;}
.compact-advanced-shell .advanced-tool-body{display:flex!important;flex-direction:column!important;gap:6px!important;}
.agile-cycle-start{border-color:#8fd2cb!important;background:#f4fcfa!important;}
.agile-cycle-start header em{background:#dff6f1!important;color:#075e55!important;}

@media(max-width:1450px){
  .unified-metric-header{grid-template-columns:minmax(220px,1fr) auto!important;}
  .unified-header-actions{grid-column:2;}
  .unified-header-metrics{grid-row:1 / span 2;grid-column:2;align-self:start;}
  .unified-header-actions{align-self:end;}
  .unified-header-metric{min-width:62px!important;max-width:112px!important;}
}
@media(max-width:1120px){
  .unified-metric-header{grid-template-columns:1fr!important;align-items:start!important;}
  .unified-header-metrics,.unified-header-actions{grid-column:1!important;grid-row:auto!important;justify-content:flex-start!important;flex-wrap:wrap!important;}
  .unified-header-title p{white-space:normal!important;}
}
@media(max-width:720px){
  .unified-header-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;}
  .unified-header-metric{max-width:none!important;width:100%!important;}
  .unified-header-actions{width:100%!important;}
  .unified-header-actions .small-btn,.unified-header-actions .header-attendance-control{flex:1 1 auto!important;}
}
@media (min-width:1121px) and (max-width:1450px){
  .unified-header-title{grid-column:1!important;grid-row:1 / span 2!important;align-self:center!important;}
  .unified-header-metrics{grid-column:2!important;grid-row:1!important;align-self:end!important;}
  .unified-header-actions{grid-column:2!important;grid-row:2!important;align-self:start!important;}
}
/* V31.21.0 runtime-integrity command feedback */
.runtime-command-indicator{display:flex;align-items:center;gap:8px;margin:8px 0;padding:7px 10px;border:1px solid var(--line,#d9e1ea);border-radius:8px;background:#fff;font-size:12px;box-shadow:0 2px 8px rgba(15,23,42,.06)}
.runtime-command-indicator.queued{background:#f5f9ff}.runtime-command-indicator.completed{background:#f3fbf6}.runtime-command-indicator.failed{background:#fff5f5}
.runtime-command-dot{width:8px;height:8px;border-radius:50%;background:#64748b}.runtime-command-indicator.queued .runtime-command-dot{background:#2563eb}.runtime-command-indicator.completed .runtime-command-dot{background:#16a34a}.runtime-command-indicator.failed .runtime-command-dot{background:#dc2626}
.runtime-command-close{margin-left:auto;border:0;background:transparent;font-size:18px;line-height:1;cursor:pointer;color:#64748b}
/* V31.22.1 Plan-Jira hierarchical execution continuity */
.pd-jira-continuity{border-left:3px solid var(--accent,#2563eb);background:linear-gradient(90deg,rgba(37,99,235,.06),transparent)}
.pd-jira-state-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0}
@media(max-width:900px){.pd-jira-state-grid{grid-template-columns:1fr}}

/* V31.22.2 — Independent Quality Engineering Workbench */
.qe-shell{display:flex;flex-direction:column;gap:14px;min-width:0}.qe-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--border,#d9e0e8);border-radius:14px;background:var(--panel,#fff)}.qe-header h2{margin:3px 0 5px;font-size:22px}.qe-header p{margin:0;color:var(--muted,#667085);max-width:900px}.qe-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--accent,#3157d5)}.qe-tabs{display:flex;gap:7px;overflow-x:auto;padding:4px 1px 8px}.qe-tabs button{white-space:nowrap;border:1px solid var(--border,#d9e0e8);background:var(--panel,#fff);border-radius:9px;padding:8px 11px;font-size:12px;font-weight:700}.qe-tabs button.active{background:var(--accent,#3157d5);color:#fff;border-color:var(--accent,#3157d5)}.qe-dashboard,.qe-workspace-grid{display:grid;gap:14px;min-width:0}.qe-metrics{display:grid;grid-template-columns:repeat(9,minmax(105px,1fr));gap:10px}.qe-metric{border:1px solid var(--border,#d9e0e8);background:var(--panel,#fff);border-radius:12px;padding:12px;min-width:0}.qe-metric span{display:block;color:var(--muted,#667085);font-size:11px}.qe-metric b{display:block;font-size:23px;margin-top:3px}.qe-card{border:1px solid var(--border,#d9e0e8);background:var(--panel,#fff);border-radius:14px;padding:15px;min-width:0}.qe-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.qe-card-head h3,.qe-form-card h3{margin:0}.qe-card-head span{color:var(--muted,#667085);font-size:12px}.qe-form-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px;margin:12px 0}.qe-field{display:flex;flex-direction:column;gap:5px;min-width:0}.qe-field>span{font-size:11px;font-weight:750;color:var(--muted,#667085)}.qe-field input,.qe-field select,.qe-field textarea{width:100%;min-width:0;border:1px solid var(--border,#d9e0e8);border-radius:8px;padding:9px 10px;background:var(--input-bg,#fff);color:inherit}.qe-span-2{grid-column:span 2}.qe-form-actions,.qe-row-actions{display:flex;flex-wrap:wrap;gap:6px}.qe-table-wrap{overflow:auto;max-width:100%}.qe-table{width:100%;border-collapse:collapse;font-size:12px}.qe-table th{position:sticky;top:0;background:var(--panel-muted,#f7f9fc);text-align:left;padding:9px;border-bottom:1px solid var(--border,#d9e0e8);white-space:nowrap}.qe-table td{padding:9px;border-bottom:1px solid var(--border,#e8edf3);vertical-align:top;max-width:330px;word-break:break-word}.qe-table tr:hover td{background:rgba(49,87,213,.035)}.qe-row-actions{min-width:190px}.qe-row-actions button{font-size:10px;padding:5px 7px}.qe-form-card hr{border:0;border-top:1px solid var(--border,#d9e0e8);margin:16px 0}.danger.mini{background:#fff1f1;color:#b42318;border:1px solid #f4b4b4}.qe-linkage-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--border,#d9e0e8);border-left:4px solid var(--accent,#3157d5);border-radius:12px;background:var(--panel,#fff)}.qe-linkage-banner.warning{border-left-color:#b54708;background:#fffbeb}.qe-linkage-banner.ready{border-left-color:#027a48;background:#ecfdf3}.qe-linkage-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.qe-linkage-copy>b{font-size:13px}.qe-linkage-copy>span:last-child{font-size:12px;color:var(--muted,#667085)}.qe-linkage-actions{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}
@media(max-width:1400px){.qe-metrics{grid-template-columns:repeat(5,minmax(110px,1fr))}}@media(max-width:900px){.qe-header{flex-direction:column}.qe-linkage-banner{align-items:flex-start;flex-direction:column}.qe-linkage-actions{justify-content:flex-start}.qe-metrics{grid-template-columns:repeat(2,minmax(120px,1fr))}.qe-form-grid{grid-template-columns:1fr}.qe-span-2{grid-column:span 1}}@media(max-width:560px){.qe-metrics{grid-template-columns:1fr}.qe-card{padding:11px}.qe-header{padding:14px}}

/* V31.22.2 Quality Engineering action-authority summary */
.qe-access-summary{margin-top:6px;font-size:12px;color:var(--muted,#64748b);font-weight:600;letter-spacing:.01em}
.qe-shell button:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.25)}
/* V31.22.5 — Independent Artefact Governance Workbench */
.artefact-governance-shell .qe-kicker{letter-spacing:.08em}.artefact-governance-shell .qe-table-card td:nth-child(5){max-width:28rem;white-space:normal}.artefact-governance-shell .qe-form-card hr{border:0;border-top:1px solid var(--line,#d9dee7);margin:1rem 0}
/* V31.22.6 project context and stage-truth states */
.pd-workflow-step.not_applicable{background:#f7f8fa;border-style:dashed;color:#73808c;opacity:1}
.pd-workflow-step.not_applicable .pd-workflow-step-index{background:#e5e8ec;color:#5e6974}
.pd-workflow-step .workflow-warning{color:#a45b00;font-weight:700}
.project-switch-dropdown{min-width:320px}
.project-context-card{cursor:default}
.project-logo{display:grid;place-items:center;background:#168a7d;color:#fff;border-radius:8px;font-weight:800}
.project-module-list{display:flex;flex-wrap:wrap;gap:5px;padding:8px 10px 12px;max-width:340px}
.project-module-list .pill{font-size:10px}

/* =====================================================================
   V31.22.7 — UI-only header and KPI / metric card consistency layer
   Scope: visual grammar only. No workflow, API, data, permission or storage changes.
   ===================================================================== */
:root{
  --ui227-surface:#ffffff;
  --ui227-surface-soft:#f7f9fc;
  --ui227-border:#d8e1eb;
  --ui227-border-strong:#c8d4e1;
  --ui227-text:#102033;
  --ui227-muted:#607287;
  --ui227-accent:#0f8379;
  --ui227-accent-soft:#eef9f7;
  --ui227-blue:#2563eb;
  --ui227-green:#16855b;
  --ui227-amber:#b7791f;
  --ui227-red:#c13b35;
  --ui227-purple:#7557b8;
  --ui227-radius:10px;
  --ui227-card-min:68px;
  --ui227-shadow:0 1px 2px rgba(16,32,51,.045);
}

/* One workbench/page header grammar across all domains. */
.dgc-ui-v31-22-7 :where(
  .page-hero,.workbench-titlebar,.compact-titlebar,.plan-workbench-header,
  .my-work-hero,.my-work-unified-header,.action-center-hero,.action-hero,
  .plan-spine-hero,.plan-workbench-hero,.plan-intelligence-unified-header,
  .dashboard-hero,.pmo-hero,.pmo-dashboard-hero,.pmo-control-unified-header,
  .pmo-reporting-unified-header,.tree-hero,.impact-hero,.notification-hero,
  .governance-alert-hero,.cascade-hero,.orchestrator-hero,.devops-hero,
  .fedb20-hero,.agile-hero,.defect-hero,.graph-workbench-hero,.delivery-hero,
  .deployment-validation-hero,.uat-hero,.production-hero,.jsondb-hero,
  .reports-hero,.resource-matrix-hero,.calendar-hero,.schedule-edit-hero,
  .schedule-view-hero,.evidence-capture-hero,.evidence-vault-hero,.evidence-hero,
  .health-hero,.integrity-hero,.final-integrity-hero,.sp-backup-hero,.rv-hero,
  .mva-hero,.whatsapp-hero,.excel-hero,.onboarding-hero,.guided-workflow-hero,
  .ux-hero,.views-hero,.final-smoke-titlebar,.qa-titlebar,.qe-header,
  .admin-unified-header,.attendance-unified-header,.connectors-unified-header,
  .cost-unified-header,.enterprise-config-unified-header,.evm-unified-header,
  .leveling-unified-header,.rbac-unified-header,.timesheet-unified-header,
  .compact-r1-import-hero,.advanced-tool-titlebar,.plan-top-card
){
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex-wrap:wrap!important;
  gap:10px 14px!important;
  width:100%!important;
  min-height:66px!important;
  margin:0 0 10px!important;
  padding:11px 14px!important;
  border:1px solid var(--ui227-border)!important;
  border-radius:var(--ui227-radius)!important;
  background:var(--ui227-surface)!important;
  background-image:none!important;
  box-shadow:var(--ui227-shadow)!important;
  color:var(--ui227-text)!important;
  overflow:visible!important;
}
.dgc-ui-v31-22-7 :where(
  .page-hero,.workbench-titlebar,.compact-titlebar,.plan-workbench-header,
  .my-work-hero,.my-work-unified-header,.action-center-hero,.action-hero,
  .plan-spine-hero,.plan-workbench-hero,.plan-intelligence-unified-header,
  .dashboard-hero,.pmo-hero,.pmo-dashboard-hero,.pmo-control-unified-header,
  .pmo-reporting-unified-header,.tree-hero,.impact-hero,.notification-hero,
  .governance-alert-hero,.cascade-hero,.orchestrator-hero,.devops-hero,
  .fedb20-hero,.agile-hero,.defect-hero,.graph-workbench-hero,.delivery-hero,
  .deployment-validation-hero,.uat-hero,.production-hero,.jsondb-hero,
  .reports-hero,.resource-matrix-hero,.calendar-hero,.schedule-edit-hero,
  .schedule-view-hero,.evidence-capture-hero,.evidence-vault-hero,.evidence-hero,
  .health-hero,.integrity-hero,.final-integrity-hero,.sp-backup-hero,.rv-hero,
  .mva-hero,.whatsapp-hero,.excel-hero,.onboarding-hero,.guided-workflow-hero,
  .ux-hero,.views-hero,.final-smoke-titlebar,.qa-titlebar,.qe-header,
  .admin-unified-header,.attendance-unified-header,.connectors-unified-header,
  .cost-unified-header,.enterprise-config-unified-header,.evm-unified-header,
  .leveling-unified-header,.rbac-unified-header,.timesheet-unified-header,
  .compact-r1-import-hero,.advanced-tool-titlebar,.plan-top-card
) > :first-child{
  flex:1 1 320px!important;
  min-width:0!important;
}
.dgc-ui-v31-22-7 :where(
  .page-hero,.workbench-titlebar,.compact-titlebar,.plan-workbench-header,
  .my-work-hero,.my-work-unified-header,.action-center-hero,.action-hero,
  .plan-spine-hero,.plan-workbench-hero,.plan-intelligence-unified-header,
  .dashboard-hero,.pmo-hero,.pmo-dashboard-hero,.pmo-control-unified-header,
  .pmo-reporting-unified-header,.tree-hero,.impact-hero,.notification-hero,
  .governance-alert-hero,.cascade-hero,.orchestrator-hero,.devops-hero,
  .fedb20-hero,.agile-hero,.defect-hero,.graph-workbench-hero,.delivery-hero,
  .deployment-validation-hero,.uat-hero,.production-hero,.jsondb-hero,
  .reports-hero,.resource-matrix-hero,.calendar-hero,.schedule-edit-hero,
  .schedule-view-hero,.evidence-capture-hero,.evidence-vault-hero,.evidence-hero,
  .health-hero,.integrity-hero,.final-integrity-hero,.sp-backup-hero,.rv-hero,
  .mva-hero,.whatsapp-hero,.excel-hero,.onboarding-hero,.guided-workflow-hero,
  .ux-hero,.views-hero,.final-smoke-titlebar,.qa-titlebar,.qe-header,
  .admin-unified-header,.attendance-unified-header,.connectors-unified-header,
  .cost-unified-header,.enterprise-config-unified-header,.evm-unified-header,
  .leveling-unified-header,.rbac-unified-header,.timesheet-unified-header,
  .compact-r1-import-hero,.advanced-tool-titlebar,.plan-top-card
) :where(h1,h2,h3){
  margin:0 0 3px!important;
  font-size:19px!important;
  line-height:1.2!important;
  letter-spacing:-.012em!important;
  color:var(--ui227-text)!important;
  font-weight:800!important;
}
.dgc-ui-v31-22-7 :where(
  .page-hero,.workbench-titlebar,.compact-titlebar,.plan-workbench-header,
  .my-work-hero,.my-work-unified-header,.action-center-hero,.action-hero,
  .plan-spine-hero,.plan-workbench-hero,.plan-intelligence-unified-header,
  .dashboard-hero,.pmo-hero,.pmo-dashboard-hero,.pmo-control-unified-header,
  .pmo-reporting-unified-header,.tree-hero,.impact-hero,.notification-hero,
  .governance-alert-hero,.cascade-hero,.orchestrator-hero,.devops-hero,
  .fedb20-hero,.agile-hero,.defect-hero,.graph-workbench-hero,.delivery-hero,
  .deployment-validation-hero,.uat-hero,.production-hero,.jsondb-hero,
  .reports-hero,.resource-matrix-hero,.calendar-hero,.schedule-edit-hero,
  .schedule-view-hero,.evidence-capture-hero,.evidence-vault-hero,.evidence-hero,
  .health-hero,.integrity-hero,.final-integrity-hero,.sp-backup-hero,.rv-hero,
  .mva-hero,.whatsapp-hero,.excel-hero,.onboarding-hero,.guided-workflow-hero,
  .ux-hero,.views-hero,.final-smoke-titlebar,.qa-titlebar,.qe-header,
  .admin-unified-header,.attendance-unified-header,.connectors-unified-header,
  .cost-unified-header,.enterprise-config-unified-header,.evm-unified-header,
  .leveling-unified-header,.rbac-unified-header,.timesheet-unified-header,
  .compact-r1-import-hero,.advanced-tool-titlebar,.plan-top-card
) p{
  max-width:920px!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.45!important;
  color:var(--ui227-muted)!important;
}
.dgc-ui-v31-22-7 :where(.eyebrow,.qe-kicker,.plan-hero-eyebrow,.unified-header-title > span:first-child){
  display:block!important;
  margin:0 0 3px!important;
  color:var(--ui227-accent)!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.dgc-ui-v31-22-7 :where(.hero-actions,.toolbar-actions,.titlebar-actions,.unified-header-actions,.plan-workbench-actions,
  .notification-hero-actions,.reports-hero-actions,.action-center-hero-actions,.deployment-validation-hero-actions,
  .uat-hero-actions,.production-hero-actions,.devops-hero-actions,.impact-hero-actions,.orchestrator-hero-actions,
  .cascade-hero-actions,.evidence-hero-actions,.final-integrity-hero-actions,.sp-backup-hero-actions,
  .rv-hero-actions,.mva-hero-actions,.whatsapp-hero-actions,.excel-hero-actions,.views-hero-actions){
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0!important;
}

/* Header-embedded metrics are compact chips, not competing KPI cards. */
.dgc-ui-v31-22-7 :where(.plan-header-metrics,.unified-header-metrics,.agile-header-metrics){
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-end!important;
  flex:0 1 auto!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0!important;
  min-width:0!important;
}
.dgc-ui-v31-22-7 :where(.plan-header-metric,.unified-header-metric,.agile-metric-chip){
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:1px!important;
  min-width:78px!important;
  min-height:42px!important;
  height:auto!important;
  margin:0!important;
  padding:6px 9px!important;
  border:1px solid var(--ui227-border)!important;
  border-left:3px solid var(--ui227-border-strong)!important;
  border-radius:8px!important;
  background:var(--ui227-surface-soft)!important;
  background-image:none!important;
  box-shadow:none!important;
  text-align:left!important;
  color:var(--ui227-text)!important;
}
.dgc-ui-v31-22-7 :where(.plan-header-metric,.unified-header-metric,.agile-metric-chip) span{
  margin:0!important;
  color:var(--ui227-muted)!important;
  font-size:9px!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}
.dgc-ui-v31-22-7 :where(.plan-header-metric,.unified-header-metric,.agile-metric-chip) b{
  margin:0!important;
  color:var(--ui227-text)!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:800!important;
}

/* One responsive KPI grid grammar. */
.dgc-ui-v31-22-7 :where(
  .kpi-row,.metric-grid,.summary-grid,.my-work-kpi-grid,.action-center-kpi-grid,
  .tree-summary-grid,.dashboard-kpi-grid,.plan-kpi-grid,.plan-compact-metrics,
  .pmo-dashboard-kpis,.pmo-report-kpi-strip,.notification-kpi-grid,.governance-alert-kpis,
  .impact-kpi-grid,.resource-kpis,.meeting-hub-kpi-grid,.calendar-kpi-grid,
  .cascade-kpi-grid,.defect-kpi-grid,.delivery-kpi-grid,.deployment-validation-kpi-grid,
  .devops-kpi-grid,.evidence-capture-kpi-grid,.evidence-kpi-grid,.evidence-kpi-strip,
  .fedb20-kpis,.final-integrity-kpi-grid,.final-smoke-kpi-strip,.graph-kpi-grid,
  .health-kpi-grid,.integrity-kpi-grid,.mva-kpi-grid,.orchestrator-kpi-grid,
  .production-kpi-grid,.qa-kpi-strip,.release-board-kpis,.reports-kpi-grid,
  .rv-kpi-grid,.schedule-edit-kpi-grid,.schedule-kpi-grid,.sp-backup-kpi-grid,
  .uat-kpi-grid,.whatsapp-kpi-grid,.admin-kpi-grid,.agile-kpi-grid,
  .attendance-kpi-grid,.connector-kpi-grid,.cost-kpi-grid,.enterprise-config-kpi-grid,
  .evm-kpi-grid,.leveling-kpi-grid,.notif-kpi-grid,.rbac-kpi-grid,.rbac-kpi-strip,
  .timesheet-kpi-grid,.workbench-kpi-grid,.qe-metrics,.trace-metrics,.mini-kpi-row,
  .ci-kpi-row,.timesheet-readiness-metrics,.resp-metrics
){
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(138px,1fr))!important;
  align-items:stretch!important;
  gap:8px!important;
  width:100%!important;
  margin:0 0 10px!important;
  padding:0!important;
  overflow:visible!important;
}

/* One KPI/card grammar across all workbenches. */
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,
  .action-center-kpi,.meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,
  .sn-kpi-card,.qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,
  .pd-mini-metric,.rag-kpi
){
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:2px!important;
  min-width:0!important;
  min-height:var(--ui227-card-min)!important;
  height:100%!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid var(--ui227-border)!important;
  border-left:3px solid var(--ui227-border-strong)!important;
  border-radius:9px!important;
  background:var(--ui227-surface)!important;
  background-image:none!important;
  box-shadow:none!important;
  text-align:left!important;
  color:var(--ui227-text)!important;
  overflow:hidden!important;
}
.dgc-ui-v31-22-7 button:where(
  .tree-summary-card,.pmo-dash-kpi,.plan-kpi,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.sn-kpi-card,.qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi
){
  appearance:none!important;
  font:inherit!important;
  cursor:pointer!important;
}
.dgc-ui-v31-22-7 button:where(
  .tree-summary-card,.pmo-dash-kpi,.plan-kpi,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.sn-kpi-card,.qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi
):hover{
  border-color:var(--ui227-border-strong)!important;
  background:#fbfcfe!important;
}
.dgc-ui-v31-22-7 button:where(
  .tree-summary-card,.pmo-dash-kpi,.plan-kpi,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.sn-kpi-card,.qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi
):focus-visible{
  outline:2px solid rgba(15,131,121,.28)!important;
  outline-offset:2px!important;
}
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,
  .action-center-kpi,.meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,
  .sn-kpi-card,.qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,
  .pd-mini-metric,.rag-kpi
) :where(.metric-label,.kpi-label,span:first-child){
  display:block!important;
  max-width:100%!important;
  margin:0!important;
  color:var(--ui227-muted)!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,
  .action-center-kpi,.meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,
  .sn-kpi-card,.qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,
  .pd-mini-metric,.rag-kpi
) :where(.metric-value,.kpi-value,.kpi-value-text,b){
  display:block!important;
  max-width:100%!important;
  margin:1px 0 0!important;
  color:var(--ui227-text)!important;
  font-size:19px!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:-.012em!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,
  .action-center-kpi,.meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,
  .sn-kpi-card,.qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,
  .pd-mini-metric,.rag-kpi
) :where(.metric-sub,.kpi-subtext,small){
  display:block!important;
  max-width:100%!important;
  margin:1px 0 0!important;
  color:var(--ui227-muted)!important;
  font-size:10px!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

/* Semantic tone is always a restrained left rail; never a different card grammar. */
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,.sn-kpi-card,
  .qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,.pd-mini-metric,.rag-kpi,
  .plan-header-metric,.unified-header-metric,.agile-metric-chip
):is(.red,.danger,.tone-red){border-left-color:var(--ui227-red)!important;background:var(--ui227-surface)!important;}
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,.sn-kpi-card,
  .qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,.pd-mini-metric,.rag-kpi,
  .plan-header-metric,.unified-header-metric,.agile-metric-chip
):is(.amber,.warning,.tone-amber){border-left-color:var(--ui227-amber)!important;background:var(--ui227-surface)!important;}
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,.sn-kpi-card,
  .qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,.pd-mini-metric,.rag-kpi,
  .plan-header-metric,.unified-header-metric,.agile-metric-chip
):is(.green,.ok,.tone-green){border-left-color:var(--ui227-green)!important;background:var(--ui227-surface)!important;}
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,.sn-kpi-card,
  .qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,.pd-mini-metric,.rag-kpi,
  .plan-header-metric,.unified-header-metric,.agile-metric-chip
):is(.blue,.tone-blue){border-left-color:var(--ui227-blue)!important;background:var(--ui227-surface)!important;}
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,.sn-kpi-card,
  .qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,.pd-mini-metric,.rag-kpi,
  .plan-header-metric,.unified-header-metric,.agile-metric-chip
):is(.purple,.tone-purple){border-left-color:var(--ui227-purple)!important;background:var(--ui227-surface)!important;}
.dgc-ui-v31-22-7 :where(
  .kpi-card,.metric-card,.tree-summary-card,.enterprise-kpi,.impact-kpi,.resource-kpi,
  .pmo-dash-kpi,.pmo-report-kpi,.plan-kpi,.plan-metric-chip,.my-work-kpi,.action-center-kpi,
  .meeting-hub-kpi,.evidence-capture-kpi,.health-kpi,.workflow-kpi,.sn-kpi-card,
  .qa-kpi-card,.final-smoke-kpi,.dashboard-kpi,.agile-kpi,.qe-metric,.pd-mini-metric,.rag-kpi,
  .plan-header-metric,.unified-header-metric,.agile-metric-chip
).active{
  border-color:#86cfc6!important;
  border-left-color:var(--ui227-accent)!important;
  background:var(--ui227-accent-soft)!important;
  box-shadow:none!important;
  outline:none!important;
}

/* Prevent one-off workbench overrides from reintroducing oversized cards. */
.dgc-ui-v31-22-7 .qe-header{padding:11px 14px!important;border-radius:var(--ui227-radius)!important;}
.dgc-ui-v31-22-7 .qe-header h2{font-size:19px!important;margin:0 0 3px!important;}
.dgc-ui-v31-22-7 .qe-header p{font-size:12px!important;line-height:1.45!important;}
.dgc-ui-v31-22-7 .qe-shell{gap:10px!important;}
.dgc-ui-v31-22-7 .qe-metric{padding:10px 12px!important;min-height:var(--ui227-card-min)!important;border-radius:9px!important;}
.dgc-ui-v31-22-7 .meeting-hub-kpi{min-height:var(--ui227-card-min)!important;padding:10px 12px!important;border-radius:9px!important;}
.dgc-ui-v31-22-7 .pmo-dash-kpi{min-height:var(--ui227-card-min)!important;}
.dgc-ui-v31-22-7 .tree-summary-card{min-height:var(--ui227-card-min)!important;}
.dgc-ui-v31-22-7 .release-board-kpis.compact{grid-template-columns:repeat(auto-fit,minmax(138px,1fr))!important;}

@media(max-width:1180px){
  .dgc-ui-v31-22-7 :where(.plan-header-metrics,.unified-header-metrics,.agile-header-metrics){
    order:3!important;
    flex:1 1 100%!important;
    justify-content:flex-start!important;
  }
  .dgc-ui-v31-22-7 :where(
    .kpi-row,.metric-grid,.summary-grid,.my-work-kpi-grid,.action-center-kpi-grid,
    .tree-summary-grid,.dashboard-kpi-grid,.plan-kpi-grid,.pmo-dashboard-kpis,
    .notification-kpi-grid,.impact-kpi-grid,.resource-kpis,.meeting-hub-kpi-grid,
    .qe-metrics,.qa-kpi-strip,.production-kpi-grid,.deployment-validation-kpi-grid,
    .uat-kpi-grid,.release-board-kpis
  ){grid-template-columns:repeat(auto-fit,minmax(128px,1fr))!important;}
}
@media(max-width:720px){
  .dgc-ui-v31-22-7 :where(
    .page-hero,.workbench-titlebar,.compact-titlebar,.plan-workbench-header,.my-work-hero,
    .my-work-unified-header,.action-center-hero,.plan-workbench-hero,.pmo-hero,
    .pmo-reporting-unified-header,.tree-hero,.notification-hero,.agile-hero,.qe-header,
    .reports-hero,.production-hero,.advanced-tool-titlebar
  ){
    align-items:flex-start!important;
    padding:10px 11px!important;
  }
  .dgc-ui-v31-22-7 :where(.hero-actions,.toolbar-actions,.titlebar-actions,.unified-header-actions,.plan-workbench-actions){
    width:100%!important;
    justify-content:flex-start!important;
  }
  .dgc-ui-v31-22-7 :where(
    .kpi-row,.metric-grid,.summary-grid,.my-work-kpi-grid,.action-center-kpi-grid,
    .tree-summary-grid,.dashboard-kpi-grid,.plan-kpi-grid,.pmo-dashboard-kpis,
    .notification-kpi-grid,.impact-kpi-grid,.resource-kpis,.meeting-hub-kpi-grid,
    .qe-metrics,.qa-kpi-strip,.production-kpi-grid,.deployment-validation-kpi-grid,
    .uat-kpi-grid,.release-board-kpis
  ){grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:430px){
  .dgc-ui-v31-22-7 :where(
    .kpi-row,.metric-grid,.summary-grid,.my-work-kpi-grid,.action-center-kpi-grid,
    .tree-summary-grid,.dashboard-kpi-grid,.plan-kpi-grid,.pmo-dashboard-kpis,
    .notification-kpi-grid,.impact-kpi-grid,.resource-kpis,.meeting-hub-kpi-grid,
    .qe-metrics,.qa-kpi-strip,.production-kpi-grid,.deployment-validation-kpi-grid,
    .uat-kpi-grid,.release-board-kpis
  ){grid-template-columns:1fr!important;}
}
/* V31.22.8 — Epic → Phase → Subphase Jira workflow authority; Plan read-only projection */
.agile-subphase-workflow-card{grid-column:1/-1;border:1px solid #b9d8d3;background:#fbfffe}.agile-subphase-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.agile-workflow-stage-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:.55rem;margin:.8rem 0}.agile-workflow-stage{border:1px solid #d9e2ea;border-radius:.7rem;padding:.55rem;background:#f6f8fb;display:flex;flex-direction:column}.agile-workflow-stage.current{border-color:#128b7c;background:#e8f7f3}.agile-workflow-stage.complete{border-color:#8bd2bd;background:#edfaf5}.agile-workflow-stage.locked{opacity:.72}.agile-workflow-stage.not_applicable{border-style:dashed;color:#6b7280}.agile-subphase-role-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:.55rem}.agile-role-card{padding:.55rem;border:1px solid #dce5ec;border-radius:.65rem;background:#fff}.agile-role-card span,.agile-role-card b{display:block}.agile-role-assign-row{display:grid;grid-template-columns:1fr 1.4fr 1.2fr auto;gap:.55rem;margin:.75rem 0}.agile-workflow-items{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:.75rem}.agile-workflow-group{border:1px solid #dce5ec;border-radius:.75rem;padding:.7rem;background:#fff}.agile-workflow-group h4{margin:0 0 .55rem}.agile-workflow-item{display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.55rem;border-top:1px solid #edf1f5}.agile-workflow-item:first-of-type{border-top:0}.agile-workflow-item div:first-child{min-width:0}.agile-workflow-item b,.agile-workflow-item span{display:block}.agile-workflow-item span{font-size:.76rem;color:#64748b}.agile-workflow-evidence{margin-top:.85rem;border:1px solid #dce5ec;border-radius:.75rem;padding:.7rem;background:#fff}.pd-read-only-panel .notice.info{display:flex;flex-direction:column;gap:.2rem}.pd-readonly-workflows{display:grid;gap:.6rem}.pd-readonly-workflow{border:1px solid #dce5ec;border-radius:.7rem;padding:.7rem}.pd-readonly-workflow>div:first-child{display:flex;justify-content:space-between;gap:.6rem}.pd-workflow-stage-strip{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0}.pd-workflow-stage-strip span{font-size:.72rem;padding:.25rem .4rem;border-radius:.4rem;background:#eef2f7}.pd-workflow-stage-strip span.current{background:#dff6f0;color:#075f54}.pd-workflow-stage-strip span.complete{background:#e8f8ee;color:#176b36}.pd-next-action.read-only{border-color:#74c7b7;background:#ebfaf6}@media(max-width:1100px){.agile-workflow-stage-grid,.agile-subphase-role-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.agile-workflow-items{grid-template-columns:1fr}.agile-role-assign-row{grid-template-columns:1fr 1fr}}
/* V31.22.8.2 — exact Plan → Agile context and active certification scope */
.agile-plan-context-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;margin:10px 0;border:1px solid #86cfc4;border-left:4px solid #078a78;border-radius:10px;background:#f0fbf8}.agile-plan-context-banner>div{display:flex;align-items:center;gap:10px;min-width:0}.agile-plan-context-banner span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exact-context-filter{grid-template-columns:minmax(220px,1fr) repeat(4,minmax(120px,auto)) auto auto}.agile-result-limit{padding:8px 10px;color:#526579}.agile-context-outside-scope{border-color:#edb4a8;background:#fff4f1}
@media(max-width:1100px){.exact-context-filter{grid-template-columns:1fr 1fr}.agile-plan-context-banner{align-items:flex-start;flex-direction:column}.agile-plan-context-banner>div{width:100%;flex-wrap:wrap}}
/* V31.22.9 governed Plan-window Sprint planning and configurable RAG */
.sprint-planning-workbench{display:grid;gap:14px}.sprint-window-form{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}.sprint-window-form label,.rag-config-grid label{display:grid;gap:5px;font-size:12px;font-weight:700}.sprint-window-form label.wide{grid-column:span 2}.sprint-window-form input,.sprint-window-form select,.sprint-move-form input,.sprint-move-form select,.rag-config-grid input{min-height:36px;border:1px solid var(--border,#d7dee8);border-radius:8px;padding:7px 9px;background:var(--surface,#fff);color:inherit}.sprint-preview-shell{margin-top:12px;display:grid;gap:10px}.sprint-move-form{display:grid;grid-template-columns:130px minmax(200px,1.4fr) 150px minmax(180px,1fr) minmax(220px,1.5fr) auto;gap:8px;align-items:end;margin:10px 0 12px}.rag-config-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin:10px 0}.rag-palette-preview{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.rag-palette-preview span{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid;border-radius:999px;font-size:12px;font-weight:800}.rag-simulation{margin-top:10px;padding:10px;border:1px solid var(--border,#d7dee8);border-radius:8px;display:grid;gap:7px}.rag-simulation>div{display:flex;gap:8px;flex-wrap:wrap}.rag-simulation span{background:var(--surface-muted,#f4f6f8);padding:4px 8px;border-radius:999px;font-size:12px}@media(max-width:1100px){.sprint-window-form,.rag-config-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.sprint-move-form{grid-template-columns:1fr 1fr}.sprint-window-form label.wide{grid-column:span 2}}@media(max-width:700px){.sprint-window-form,.rag-config-grid,.sprint-move-form{grid-template-columns:1fr}.sprint-window-form label.wide{grid-column:span 1}}
.rag-policy-identity .wide{grid-column:span 2}.rag-palette-editor{display:grid;gap:8px;margin:10px 0}.rag-palette-row{display:grid;grid-template-columns:80px minmax(170px,1fr) repeat(3,minmax(90px,120px)) minmax(120px,160px);gap:8px;align-items:end;padding:9px;border:1px solid var(--border);border-radius:10px}.rag-palette-row label{display:grid;gap:4px}.rag-palette-row input[type="color"]{width:100%;min-height:34px;padding:2px}.rag-palette-chip{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border:2px solid;border-radius:999px;padding:5px 10px;font-weight:700}@media(max-width:980px){.rag-palette-row{grid-template-columns:1fr 1fr}.rag-policy-identity .wide{grid-column:span 1}}
/* V31.22.9.3 Governed Manual Plan Builder Wizard */
.manual-plan-builder-shell,.manual-plan-builder-stack{display:grid;gap:16px}.manual-plan-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.manual-plan-wizard-steps{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px;margin-top:16px}.manual-plan-wizard-steps button{display:flex;align-items:center;gap:8px;border:1px solid var(--border,#d8dee9);background:var(--surface,#fff);padding:10px 12px;border-radius:10px;text-align:left}.manual-plan-wizard-steps button.active{outline:2px solid var(--primary,#2563eb);background:var(--primary-soft,#eff6ff)}.manual-plan-wizard-steps b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--primary,#2563eb);color:#fff}.manual-plan-status-strip{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:14px;padding:12px;border-radius:10px;background:var(--surface-soft,#f8fafc)}.manual-plan-draft-list{display:flex;flex-wrap:wrap;gap:8px}.manual-plan-draft-list button{display:grid;gap:3px;text-align:left;padding:10px 12px;border:1px solid var(--border,#d8dee9);border-radius:10px;background:var(--surface,#fff)}.manual-plan-draft-list button.active{outline:2px solid var(--primary,#2563eb)}.manual-plan-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.manual-plan-form-grid label{display:grid;gap:6px}.manual-plan-form-grid .wide{grid-column:1/-1}.manual-plan-tree{display:grid;gap:6px;max-height:540px;overflow:auto}.manual-plan-tree-button{display:grid;grid-template-columns:130px 1fr;gap:8px;border:0;border-left:4px solid #94a3b8;background:#f8fafc;padding:9px 10px;border-radius:6px;text-align:left;cursor:pointer}.manual-plan-tree-button.phase{margin-left:18px;border-left-color:#2563eb}.manual-plan-tree-button.subphase{margin-left:36px;border-left-color:#16a34a}.manual-plan-tree-button span{color:#475569}.manual-plan-inline-form{display:grid;gap:8px;margin-top:12px}.manual-plan-validation-list{display:grid;gap:7px;padding-left:20px}.manual-plan-validation-list li{display:grid;gap:2px}.manual-plan-validation-list.errors{color:#991b1b}.manual-plan-validation-list.warnings{color:#92400e}.manual-plan-empty{margin-top:12px;padding:16px;border:1px dashed #94a3b8;border-radius:10px;color:#475569}@media(max-width:900px){.manual-plan-two-col,.manual-plan-form-grid{grid-template-columns:1fr}.manual-plan-wizard-steps{grid-template-columns:1fr}.manual-plan-form-grid .wide{grid-column:auto}}

/* V31.22.9.5 — authoritative bootstrap/context-gated shell */
.workspace-authority-loading{display:flex;flex-direction:column;gap:8px;text-align:center;align-items:center;justify-content:center;min-height:180px}
.context-gated-bootstrap-hero{align-items:center}
.bootstrap-authority-kpis{margin-bottom:12px}
.bootstrap-authority-card{border-left:4px solid #2563eb}
.bootstrap-next-action-card{border:1px solid #bfdbfe;background:#f8fbff}
.bootstrap-sequence-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}
.bootstrap-sequence-line span{border:1px solid #dbe3ee;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;letter-spacing:.02em;background:#fff;color:#64748b}
.bootstrap-sequence-line span.complete{border-color:#86efac;background:#f0fdf4;color:#166534}
.bootstrap-sequence-line span.current{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}
.bootstrap-sequence-line span.locked{opacity:.65}
.bootstrap-step-grid{align-items:start}
.bootstrap-step-card{position:relative;overflow:hidden}
.bootstrap-step-card.current{border-color:#93c5fd;box-shadow:0 0 0 2px rgba(59,130,246,.08)}
.bootstrap-step-card.complete{border-color:#bbf7d0}
.bootstrap-plan-entry{border:1px solid #c7d2fe;background:#f8faff}
.workspace-bootstrap-guard{max-width:760px;margin:40px auto;padding:28px;border:1px solid #bfdbfe;border-radius:16px;background:#f8fbff;text-align:center;box-shadow:0 12px 30px rgba(15,23,42,.08)}
.workspace-bootstrap-guard h2{margin:8px 0}
.workspace-bootstrap-guard p{color:#475569;line-height:1.55}
.workspace-bootstrap-guard-meta{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;text-align:left;margin:20px 0;padding:14px;border-radius:12px;background:#fff;border:1px solid #e2e8f0}
.workspace-bootstrap-guard-meta span{color:#64748b}
@media(max-width:760px){.bootstrap-sequence-line{align-items:stretch;flex-direction:column}.bootstrap-sequence-line span{border-radius:10px}.workspace-bootstrap-guard-meta{grid-template-columns:1fr}}

/* ======================================================================
   V31.22.10.5 — Readiness UI layout correction overlay
   Scope: Session Health, Architecture Foundation, Mail Delivery and
   Mobile Readiness only. Production Stability supplies the reference
   hierarchy: full-width titlebar, KPI strip, tab rail and responsive body.
   ====================================================================== */
.app-content > .readiness-workbench,
.page-content > .readiness-workbench,
.readiness-workbench{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.readiness-workbench{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
}
.readiness-titlebar{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  margin:0!important;
  padding:16px 18px!important;
  border:1px solid #d9e5ef!important;
  border-left:4px solid #0f766e!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 1px 3px rgba(15,23,42,.05)!important;
}
.readiness-title-copy{min-width:0!important;}
.readiness-title-copy .eyebrow{
  display:block!important;
  width:auto!important;
  margin:0 0 5px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#0f766e!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.09em!important;
}
.readiness-title-copy h2{
  margin:0!important;
  color:#102033!important;
  font-size:22px!important;
  line-height:1.25!important;
  letter-spacing:-.025em!important;
}
.readiness-title-copy p{
  max-width:980px!important;
  margin:6px 0 0!important;
  color:#5f7186!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.readiness-title-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
.readiness-title-actions button{white-space:nowrap!important;}
.readiness-notice{margin:0!important;}
.readiness-kpi-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.readiness-kpi-card{
  min-width:0!important;
  min-height:86px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:7px!important;
  padding:13px 15px!important;
  overflow:hidden!important;
  border:1px solid #d9e5ef!important;
  border-left:3px solid #cbd8e5!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 1px 3px rgba(15,23,42,.04)!important;
}
.readiness-kpi-card span{
  display:block!important;
  width:100%!important;
  color:#5f7186!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
  white-space:normal!important;
}
.readiness-kpi-card b{
  display:block!important;
  width:100%!important;
  color:#102033!important;
  font-size:22px!important;
  font-weight:850!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
  overflow-wrap:anywhere!important;
}
.readiness-tabs{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  margin:0!important;
  padding:6px!important;
  overflow-x:auto!important;
  border:1px solid #d9e5ef!important;
  border-radius:11px!important;
  background:#f8fbfd!important;
  box-shadow:none!important;
}
.readiness-tabs button{
  min-height:36px!important;
  margin:0!important;
  padding:8px 13px!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#26384d!important;
  font-size:12px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.readiness-tabs button:hover{background:#edf5f7!important;border-color:#d4e6e7!important;}
.readiness-tabs button.active{background:#0f766e!important;color:#fff!important;border-color:#0f766e!important;}
.readiness-grid{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:grid!important;
  gap:12px!important;
  align-items:start!important;
  margin:0!important;
}
.readiness-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.architecture-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.readiness-single-panel,
.readiness-surface-card,
.readiness-category-card{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.readiness-surface-card,
.readiness-category-card{
  padding:14px!important;
  border:1px solid #d9e5ef!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 1px 3px rgba(15,23,42,.04)!important;
}
.readiness-card-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:10px!important;
  padding-bottom:10px!important;
  border-bottom:1px solid #edf2f7!important;
}
.readiness-card-head h3{
  min-width:0!important;
  margin:0!important;
  color:#172a40!important;
  font-size:15px!important;
  line-height:1.3!important;
}
.readiness-card-head > span{color:#64748b!important;font-size:11px!important;font-weight:800!important;white-space:nowrap!important;}
.readiness-inline-note{margin:12px 0 0!important;}
.readiness-workbench .human-data-panel{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:14px!important;
  overflow:hidden!important;
  border-radius:12px!important;
  box-shadow:0 1px 3px rgba(15,23,42,.04)!important;
}
.readiness-workbench .human-data-head{
  min-width:0!important;
  align-items:flex-start!important;
}
.readiness-workbench .human-data-head b{font-size:15px!important;line-height:1.3!important;}
.readiness-workbench .human-section-stack,
.readiness-workbench .human-spec-shell,
.readiness-workbench .human-subsection,
.readiness-workbench .human-checklist,
.readiness-workbench .human-action-matrix,
.readiness-workbench .human-table-wrap,
.readiness-workbench .human-spec-table-wrap,
.readiness-workbench .human-rule-table-wrap,
.readiness-workbench .readiness-table-wrap{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.readiness-workbench .human-table-wrap,
.readiness-workbench .human-spec-table-wrap,
.readiness-workbench .human-rule-table-wrap,
.readiness-workbench .readiness-table-wrap{overflow-x:auto!important;}
.readiness-workbench .human-summary-strip{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
}
.readiness-workbench .human-spec-table,
.readiness-workbench .human-rule-table,
.readiness-workbench .human-table,
.readiness-workbench .foundation-check-table{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
}
.readiness-workbench .human-spec-table th,
.readiness-workbench .human-spec-table td,
.readiness-workbench .human-rule-table th,
.readiness-workbench .human-rule-table td,
.readiness-workbench .human-table th,
.readiness-workbench .human-table td,
.readiness-workbench .foundation-check-table th,
.readiness-workbench .foundation-check-table td{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  vertical-align:top!important;
}
.readiness-workbench .human-spec-table th:nth-child(1){width:24%!important;}
.readiness-workbench .human-spec-table th:nth-child(2){width:25%!important;}
.readiness-workbench .human-spec-table th:nth-child(3){width:51%!important;}
.readiness-workbench .foundation-check-table th:nth-child(1){width:35%!important;}
.readiness-workbench .foundation-check-table th:nth-child(2){width:18%!important;}
.readiness-workbench .foundation-check-table th:nth-child(3){width:47%!important;}
.readiness-workbench .human-rule-table th:nth-child(1){width:54px!important;}
.readiness-workbench .human-rule-table th:nth-child(3){width:120px!important;}
.readiness-workbench .human-check-row{
  grid-template-columns:34px minmax(0,1fr) auto!important;
  min-width:0!important;
}
.readiness-workbench .human-check-row > div{min-width:0!important;}
.readiness-workbench .human-description-block p,
.readiness-workbench .human-meaning,
.readiness-workbench .human-value{overflow-wrap:anywhere!important;}
.readiness-workbench .foundation-score-line{margin:0 0 10px!important;}

@media (max-width:1180px){
  .readiness-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .readiness-grid-two,
  .architecture-category-grid{grid-template-columns:minmax(0,1fr)!important;}
}
@media (max-width:760px){
  .readiness-titlebar{grid-template-columns:minmax(0,1fr)!important;align-items:start!important;padding:14px!important;}
  .readiness-title-actions{justify-content:flex-start!important;}
  .readiness-kpi-grid{grid-template-columns:minmax(0,1fr)!important;}
  .readiness-kpi-card{min-height:74px!important;}
  .readiness-tabs{flex-wrap:nowrap!important;padding-bottom:7px!important;}
  .readiness-workbench .human-spec-table,
  .readiness-workbench .human-rule-table,
  .readiness-workbench .human-table,
  .readiness-workbench .foundation-check-table{min-width:620px!important;table-layout:auto!important;}
}

/* V31.22.10.13 — governed Release approval and Agile hierarchy workbench */
.manual-plan-approval-workspace{display:grid;gap:14px}.release-approval-header{display:grid;gap:12px}.release-approval-owner{display:flex;align-items:flex-end;gap:6px;flex-direction:column}.release-approval-owner>span{font-size:12px;color:var(--muted,#61758a);max-width:360px;text-align:right}.release-lifecycle-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.release-lifecycle-step{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border,#dbe4ec);border-radius:10px;color:var(--muted,#61758a);background:var(--surface,#fff)}.release-lifecycle-step span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid currentColor}.release-lifecycle-step.complete{color:#087f6d;background:#ecfaf6}.release-lifecycle-step.current{color:#0c6d83;background:#eaf7fb;border-color:#80c9d6}.release-publication-conflict{display:flex;justify-content:space-between;gap:16px;align-items:center}.release-publication-conflict>div:first-child{display:grid;gap:4px}.approval-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:10px}.approval-metric-grid .metric-card{min-height:74px}.manual-plan-approval-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:14px}.approval-checklist{display:grid;gap:8px}.approval-checklist details{border:1px solid var(--border,#dbe4ec);border-radius:10px;background:var(--surface,#fff);overflow:hidden}.approval-checklist summary{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:10px 12px;cursor:pointer}.approval-check{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-weight:700}.approval-check.pass{background:#daf5ec;color:#087f6d}.approval-check.fail{background:#fee9e7;color:#b52d20}.approval-error-list{display:grid;gap:6px;padding:0 12px 10px}.approval-error-list>div{display:grid;grid-template-columns:minmax(140px,.35fr) 1fr;gap:4px 10px;padding:8px;border-radius:8px;background:#fff6f5}.approval-error-list small{grid-column:2;color:var(--muted,#61758a)}.approval-next-action{margin:0;padding:8px 12px;border-top:1px dashed var(--border,#dbe4ec);font-size:12px;color:var(--muted,#61758a)}.approval-review-card{display:grid;gap:10px;align-content:start}.approval-diff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.approval-diff-grid>div{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:9px;border:1px solid var(--border,#dbe4ec);border-radius:9px}.approval-diff-grid small{grid-column:1/-1;color:var(--muted,#61758a)}.approval-diff-grid small.positive{color:#087f6d}.approval-diff-grid small.negative{color:#b52d20}.approval-task-list,.approval-audit-timeline{display:grid;gap:7px}.approval-task{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px;border:1px solid var(--border,#dbe4ec);border-radius:9px}.approval-task>div{display:grid;gap:2px}.approval-task span{font-size:11px;color:var(--muted,#61758a)}.approval-audit-timeline>div{display:grid;grid-template-columns:16px 1fr;gap:8px}.approval-audit-timeline>div>span{color:#0c7f73}.approval-audit-timeline>div>div{display:grid;gap:2px;border-bottom:1px dashed var(--border,#dbe4ec);padding-bottom:7px}.approval-audit-timeline p{margin:2px 0 0;font-size:12px}.approval-actions-panel{display:flex;align-items:center;justify-content:space-between;gap:14px}.approval-hierarchy-tree{max-height:420px;overflow:auto;margin-top:10px}

.agile-hierarchy-workbench{display:grid;gap:10px}.hierarchy-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.hierarchy-toolbar h3{margin:3px 0}.agile-hierarchy-header,.agile-hierarchy-row{display:grid;grid-template-columns:minmax(265px,2fr) minmax(120px,.85fr) minmax(115px,.8fr) minmax(105px,.75fr) 66px 70px minmax(170px,1.15fr) minmax(105px,.7fr) minmax(180px,1.2fr);gap:8px;align-items:center}.agile-hierarchy-header{padding:8px 12px;background:#f1f6f9;border:1px solid var(--border,#dbe4ec);border-radius:9px;color:#425b70;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.hierarchy-tree{display:grid;gap:7px}.hierarchy-branch{border:1px solid var(--border,#dbe4ec);border-radius:10px;background:var(--surface,#fff);overflow:hidden}.hierarchy-branch>summary{list-style:none;cursor:pointer}.hierarchy-branch>summary::-webkit-details-marker{display:none}.hierarchy-branch>summary:before{content:'›';float:left;margin:15px 0 0 8px;font-size:20px;transition:transform .15s}.hierarchy-branch[open]>summary:before{transform:rotate(90deg)}.agile-hierarchy-row{min-height:52px;padding:7px 10px 7px 26px;border-bottom:1px solid transparent}.hierarchy-branch>summary:hover .agile-hierarchy-row,.hierarchy-leaf .agile-hierarchy-row:hover{background:#f7fafc}.hierarchy-children{display:grid;gap:6px;padding:0 7px 7px 14px}.hierarchy-leaf{border:1px solid var(--border,#dbe4ec);border-radius:9px;background:#fff}.hierarchy-item{display:flex;gap:8px;align-items:center;min-width:0}.hierarchy-item>div{display:grid;min-width:0}.hierarchy-item b,.hierarchy-item small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hierarchy-type{flex:none;font-size:9px;font-weight:700;letter-spacing:.05em;color:#0a7569;background:#e5f7f3;border-radius:5px;padding:4px 5px}.type-module .hierarchy-type{color:#59697a;background:#eef2f5}.type-epic .hierarchy-type{color:#6a4b12;background:#fff3d9}.type-phase .hierarchy-type{color:#245d91;background:#e7f1fb}.type-subphase .hierarchy-type{color:#6d3b85;background:#f4eafa}.hierarchy-owner,.hierarchy-stage,.hierarchy-dates{display:grid;gap:2px;min-width:0}.hierarchy-owner b,.hierarchy-owner small,.hierarchy-dates span,.hierarchy-dates small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hierarchy-stage small,.hierarchy-owner small,.hierarchy-dates small{font-size:10px;color:var(--muted,#61758a)}.hierarchy-status{font-size:10px;font-weight:700}.hierarchy-progress{display:grid;gap:4px}.hierarchy-progress-track{height:10px;border-radius:20px;background:#edf1f4;overflow:hidden}.hierarchy-progress-track i{display:block;height:100%;background:var(--accent,#0b8879);border-radius:20px}.hierarchy-blockers{text-align:center}.blocker-count{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:#fee9e7;color:#b52d20}.hierarchy-sprint{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hierarchy-next{display:flex;justify-content:space-between;align-items:center;gap:6px}.hierarchy-next span{font-size:11px;line-height:1.25}.epic-feature-bundle{margin:0 8px 7px 26px;padding:7px 10px;border:1px dashed #bdccd7;border-radius:8px;background:#fbfcfd}.epic-feature-bundle summary{cursor:pointer;font-size:11px;font-weight:700}.epic-feature-bundle ul{display:grid;gap:4px;margin:7px 0 0;padding-left:18px}.epic-feature-bundle li{display:grid;grid-template-columns:minmax(150px,.3fr) 1fr;gap:8px;font-size:11px}

.agile-readonly-identity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.agile-readonly-identity-grid>div{display:grid;gap:3px;padding:9px;border:1px solid var(--border,#dbe4ec);border-radius:8px;background:#f8fafb}.agile-readonly-identity-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#61758a)}.agile-readonly-identity-grid b{word-break:break-word}.agile-subphase-execution-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:3px}

.workflow-role-panel{display:grid;gap:10px;margin-top:10px}.workflow-role-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.workflow-role-panel-head h4{margin:0}.workflow-role-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.workflow-role-card{display:grid;gap:7px;padding:10px;border:1px solid var(--border,#dbe4ec);border-radius:10px;background:#fff}.workflow-role-card.selected{border-color:#0b8879;box-shadow:0 0 0 1px #0b8879 inset}.workflow-role-card.required_now{background:#fff6f5;border-color:#edb5ae}.workflow-role-card-title{display:flex;justify-content:space-between;gap:8px}.workflow-role-card-title>div{display:grid;gap:2px}.workflow-role-card-title small,.workflow-role-person small{font-size:10px;color:var(--muted,#61758a)}.workflow-role-person{display:grid;gap:2px}.role-requirement{align-self:start;padding:3px 5px;border-radius:5px;background:#eef2f5;font-size:8px;font-weight:700;letter-spacing:.03em;white-space:nowrap}.role-requirement.required_now{background:#fee9e7;color:#b52d20}.role-requirement.assigned{background:#e3f7f1;color:#087f6d}.role-requirement.recommended_now{background:#fff3d9;color:#80550c}.workflow-focused-assignment{display:grid;grid-template-columns:minmax(200px,.75fr) minmax(180px,1fr) minmax(180px,1fr) minmax(260px,1.4fr);gap:10px;align-items:end;padding:12px;border:1px solid #80c9d6;border-radius:10px;background:#f2fbfc}.workflow-focused-assignment label{display:grid;gap:4px}.workflow-focused-assignment label span{font-size:11px;font-weight:600}.workflow-focused-assignment .hero-actions{grid-column:1/-1;justify-content:flex-end}

@media(max-width:1250px){.agile-hierarchy-header,.agile-hierarchy-row{grid-template-columns:minmax(230px,2fr) minmax(110px,.8fr) minmax(105px,.75fr) minmax(90px,.65fr) 58px 62px minmax(150px,1fr) minmax(90px,.65fr) minmax(150px,1fr);font-size:11px}.workflow-role-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-plan-approval-grid{grid-template-columns:1fr}}
@media(max-width:900px){.release-lifecycle-strip{grid-template-columns:1fr}.approval-actions-panel,.release-publication-conflict,.hierarchy-toolbar{align-items:stretch;flex-direction:column}.agile-hierarchy-header{display:none}.agile-hierarchy-row{grid-template-columns:1fr 1fr;gap:7px;padding:10px 10px 10px 26px}.hierarchy-item,.hierarchy-next,.hierarchy-dates{grid-column:1/-1}.workflow-focused-assignment{grid-template-columns:1fr 1fr}.agile-readonly-identity-grid{grid-template-columns:1fr}.agile-subphase-execution-fields{grid-template-columns:1fr}.release-approval-owner{align-items:flex-start}.release-approval-owner>span{text-align:left}}
@media(max-width:600px){.workflow-role-card-grid,.approval-diff-grid,.workflow-focused-assignment{grid-template-columns:1fr}.approval-error-list>div{grid-template-columns:1fr}.approval-error-list small{grid-column:1}.approval-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V31.22.10.14 — normalized Subphase controls and governed evidence execution */
.agile-control-normalization-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #d4a23f;border-left-width:4px;border-radius:10px;background:#fff9e9}.agile-control-normalization-banner>div{display:grid;gap:3px}.agile-control-normalization-banner p{margin:0;color:var(--muted,#61758a)}.workflow-action-note{display:grid;gap:5px;margin:10px 0;padding:10px 12px;border:1px solid var(--border,#dbe4ec);border-radius:10px;background:#f8fafb}.workflow-action-note span{font-size:11px;font-weight:700;color:#425b70}.workflow-action-note textarea{width:100%;min-height:58px;resize:vertical;border:1px solid var(--border,#dbe4ec);border-radius:8px;padding:8px 10px;background:#fff;color:inherit}.agile-workflow-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.agile-workflow-group,.agile-workflow-evidence{display:grid;align-content:start;gap:8px;padding:11px;border:1px solid var(--border,#dbe4ec);border-radius:10px;background:#fff}.agile-workflow-group h4,.agile-workflow-evidence h4{margin:0}.agile-workflow-group.empty{background:#f8fafb}.agile-workflow-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid #e1e8ee;border-radius:9px;background:#fbfcfd}.agile-workflow-item>div:first-child{display:grid;gap:3px;min-width:0}.agile-workflow-item>div:first-child b{white-space:normal}.agile-workflow-item>div:first-child span{font-size:10px;color:var(--muted,#61758a);overflow-wrap:anywhere}.agile-workflow-evidence{grid-column:1/-1}.agile-workflow-evidence .agile-workflow-item{background:#f7fbfc}@media(max-width:900px){.agile-control-normalization-banner{align-items:stretch;flex-direction:column}.agile-workflow-items{grid-template-columns:1fr}.agile-workflow-evidence{grid-column:auto}.agile-workflow-item{align-items:stretch;flex-direction:column}}

/* V31.22.10.15 — guided compact Agile hierarchy and Subphase workbench */
.agile-hierarchy-workbench{gap:8px}.hierarchy-toolbar.compact{align-items:center;padding:2px 0}.hierarchy-toolbar.compact h3{margin:1px 0;font-size:16px}.hierarchy-toolbar.compact p{margin:0;font-size:11px}.agile-hierarchy-header,.agile-hierarchy-row{grid-template-columns:minmax(330px,2.35fr) minmax(175px,1.05fr) minmax(165px,.9fr) minmax(180px,1.05fr) minmax(115px,.7fr) minmax(205px,1.15fr);gap:8px}.agile-hierarchy-header{padding:7px 10px}.agile-hierarchy-row{min-height:44px;padding:5px 8px 5px 24px}.hierarchy-branch>summary:before{margin-top:10px}.hierarchy-children{gap:4px;padding:0 5px 5px 10px}.hierarchy-title-line{display:flex;align-items:center;gap:6px;min-width:0}.hierarchy-title-line>b{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feature-count-chip,.my-action-chip{flex:none;padding:2px 5px;border-radius:5px;font-size:8px;font-weight:700;letter-spacing:.03em}.feature-count-chip{color:#6a4b12;background:#fff3d9}.my-action-chip{color:#087f6d;background:#e3f7f1}.agile-hierarchy-row.my-action{background:#f1fbf8;border-left:3px solid #0b8879}.hierarchy-owner-stage{display:grid;gap:2px;min-width:0}.hierarchy-owner-stage>b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hierarchy-owner-stage>div{display:flex;align-items:center;gap:6px}.hierarchy-progress-rag{display:grid;gap:4px}.hierarchy-progress-line{display:flex;align-items:center;gap:6px}.hierarchy-progress-line .rag{padding:2px 6px}.blocker-inline{font-size:9px;font-weight:700;color:#b52d20}.epic-feature-scope{margin:0 6px 5px 24px;border:1px dashed #bdccd7;border-radius:7px;background:#fbfcfd}.epic-feature-scope>summary{display:flex;justify-content:space-between;gap:10px;padding:6px 9px;cursor:pointer;font-size:10px}.epic-feature-scope ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;margin:0;padding:6px 10px 8px 28px;border-top:1px dashed #dbe4ec}.epic-feature-scope li{display:grid;gap:1px;font-size:10px}.epic-feature-scope li small{color:var(--muted,#61758a)}

.agile-guided-issue-mode{gap:8px}.guided-subphase-workbench{display:grid;gap:10px;padding:10px}.guided-subphase-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.guided-subphase-title h2{margin:1px 0 3px;font-size:20px}.guided-context-line{display:flex;flex-wrap:wrap;gap:5px}.guided-context-line span{padding:3px 7px;border-radius:6px;background:#eef3f6;font-size:10px;font-weight:600}.guided-next-action-card{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(190px,auto);align-items:center;gap:14px;padding:12px 14px;border:1px solid #76c5b9;border-left-width:5px;border-radius:11px;background:#f0fbf8}.guided-next-action-copy{display:grid;gap:2px}.guided-next-action-copy h3{margin:0;font-size:17px}.guided-next-action-copy p,.guided-next-action-copy small{margin:0}.guided-next-action-status{display:grid;grid-template-columns:auto auto;align-items:center;gap:4px 8px;text-align:right}.guided-next-action-status>span:last-child{grid-column:1/-1;font-size:10px;color:var(--muted,#61758a)}.guided-primary-action{min-height:38px;padding-inline:16px}.guided-stage-strip{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}.guided-stage-chip{display:grid;gap:1px;min-height:42px;padding:5px 7px;border:1px solid var(--border,#dbe4ec);border-radius:8px;background:#f7f9fb;text-align:left}.guided-stage-chip b{font-size:9px}.guided-stage-chip span{font-size:10px;color:var(--muted,#61758a)}.guided-stage-chip.complete{background:#effaf6;border-color:#b9e1d6}.guided-stage-chip.current{border-color:#0b8879;background:#eaf8f5;box-shadow:0 0 0 1px #0b8879 inset}.guided-stage-chip.locked{opacity:.7}.guided-current-stage-card{display:grid;gap:9px;padding:12px;border:1px solid var(--border,#dbe4ec);border-radius:11px;background:#fff}.guided-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.guided-section-head h3{margin:1px 0;font-size:16px}.guided-section-head p{margin:0}.workflow-action-note.compact{margin:0;padding:7px 9px;grid-template-columns:105px 1fr;align-items:center}.workflow-action-note.compact textarea{min-height:34px;resize:vertical}.guided-stage-list{display:grid;gap:6px}.guided-work-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 9px;border:1px solid #e0e7ed;border-radius:8px;background:#fbfcfd}.guided-work-item.highlight{border-color:#79cabc;background:#f1fbf8}.guided-work-item-copy{display:grid;gap:2px;min-width:0}.guided-work-item-copy b{white-space:normal}.guided-work-item-copy span{font-size:9px;color:var(--muted,#61758a);overflow-wrap:anywhere}.guided-work-item-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.guided-empty-stage,.guided-closure-checklist{display:grid;gap:3px;padding:10px;border-radius:8px;background:#f7f9fb}.guided-empty-stage p{margin:0}.guided-empty-stage.success{background:#effaf6}.guided-secondary-grid{display:grid;gap:7px}.guided-details{border:1px solid var(--border,#dbe4ec);border-radius:9px;background:#fff;overflow:hidden}.guided-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;cursor:pointer}.guided-details>summary>div{display:grid;gap:1px}.guided-details>summary span{font-size:10px;color:var(--muted,#61758a)}.guided-summary-action{font-weight:700;color:#087f6d!important}.guided-details[open]>summary{border-bottom:1px solid var(--border,#dbe4ec);background:#f8fafb}.guided-details>.workflow-role-panel,.guided-details>.guided-plan-grid,.guided-details>.guided-all-stages,.guided-details>.guided-activity-grid{margin:0;padding:10px}.guided-plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.guided-plan-grid>div{display:grid;gap:1px;padding:7px;border-radius:7px;background:#f7f9fb}.guided-plan-grid span{font-size:9px;color:var(--muted,#61758a)}.guided-plan-grid b{font-size:11px;overflow-wrap:anywhere}.guided-edit-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;padding:10px}.guided-all-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.guided-stage-summary{display:grid;gap:2px;padding:7px;border:1px solid var(--border,#dbe4ec);border-radius:7px}.guided-stage-summary span,.guided-stage-summary small{font-size:9px;color:var(--muted,#61758a)}.guided-stage-summary.complete{background:#effaf6}.guided-activity-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:10px}.guided-activity-grid label{display:grid;gap:4px}.guided-activity-grid label>span{font-size:10px;font-weight:600}.guided-activity-history{grid-column:1/-1;display:grid;gap:4px}.guided-activity-history>div{display:grid;grid-template-columns:minmax(140px,.25fr) 1fr auto;gap:8px;padding:5px 0;border-top:1px dashed var(--border,#dbe4ec);font-size:10px}.guided-blocker-panel{margin:0}.guided-details .workflow-role-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.guided-details .workflow-role-card{padding:8px}.guided-details .workflow-focused-assignment{margin:0}
@media(max-width:1250px){.agile-hierarchy-header,.agile-hierarchy-row{grid-template-columns:minmax(285px,2fr) minmax(150px,1fr) minmax(145px,.9fr) minmax(160px,1fr) minmax(95px,.65fr) minmax(170px,1.1fr)}.guided-stage-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.guided-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.guided-details .workflow-role-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.agile-hierarchy-header{display:none}.agile-hierarchy-row{grid-template-columns:1fr 1fr}.hierarchy-item,.hierarchy-next,.hierarchy-dates{grid-column:1/-1}.epic-feature-scope ul{grid-template-columns:1fr}.guided-next-action-card{grid-template-columns:1fr}.guided-next-action-status{text-align:left;justify-self:start}.guided-stage-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.guided-plan-grid,.guided-all-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.guided-activity-grid{grid-template-columns:1fr}.guided-work-item{grid-template-columns:1fr}.guided-work-item-actions{justify-content:flex-start}}
@media(max-width:600px){.guided-subphase-header{align-items:flex-start;flex-direction:column}.guided-plan-grid,.guided-edit-grid,.guided-all-stages,.guided-details .workflow-role-card-grid{grid-template-columns:1fr}.workflow-action-note.compact{grid-template-columns:1fr}}

/* V31.22.10.17 — compact governed Testing and Defects stage */
.guided-testing-stage{display:grid;gap:12px}
.guided-testing-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}
.guided-testing-metrics .metric-card{min-height:62px;padding:9px 11px}
.guided-testing-gates{display:grid;gap:7px}
.guided-testing-gate{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--border,#d9e2ec);border-radius:9px;background:#fff}
.guided-testing-gate.pass{background:#f5fbf8}.guided-testing-gate.fail{background:#fff8f7}
.guided-testing-gate small{display:block;margin-top:2px;color:var(--muted,#667085)}
.testing-waiver-panel{margin-top:2px}
.testing-waiver-panel .guided-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.guided-testing-gate{grid-template-columns:auto minmax(0,1fr)}.guided-testing-gate>span:last-child{grid-column:2}.testing-waiver-panel .guided-form-grid{grid-template-columns:1fr}}

/* V31.22.10.18 integrated guided QA */
.guided-qa-experience{margin-top:16px;border:1px solid var(--line,#dfe5ec);border-radius:14px;padding:14px;background:var(--surface,#fff)}
.guided-qa-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:10px 0}
.guided-qa-failures,.guided-qa-blockers{display:grid;gap:8px}.guided-qa-blockers{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
@media(max-width:720px){.guided-qa-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V31.22.10.19 — authoritative operational linkage, shared blockers and compact conversion guidance */
.operational-linkage-popover{min-width:360px!important;max-width:min(440px,calc(100vw - 32px));padding:10px!important;max-height:min(70vh,620px);overflow:auto}
.operational-scope-field{display:grid;gap:5px;padding:6px 8px}.operational-scope-field>span{font-size:11px;font-weight:800;color:#475569}.operational-scope-field select{width:100%;min-height:36px;border:1px solid #cbd5e1;border-radius:8px;padding:6px 8px;background:#fff;color:#0f172a}
.operational-blocking-toggle{display:flex;align-items:center;gap:8px;margin:6px 8px;padding:8px 10px;border:1px solid #fecaca;background:#fff7f7;border-radius:9px;font-size:12px;font-weight:800;color:#991b1b}.operational-blocking-toggle input{width:16px;height:16px}
.operational-blocking-reason{width:calc(100% - 16px);margin:0 8px 6px;border:1px solid #fca5a5;border-radius:8px;padding:8px;font-size:12px}.operational-linkage-help{display:block;margin:5px 8px 8px;color:#64748b;line-height:1.35}
.operational-linkage-summary-card{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc}.operational-linkage-summary-card>div:first-child{display:grid;gap:3px}.operational-linkage-summary-card b{color:#0f172a}.operational-linkage-summary-card span{font-size:12px;color:#475569}.operational-linkage-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){.operational-linkage-popover{min-width:min(340px,calc(100vw - 24px))!important}.operational-linkage-summary-card{align-items:flex-start;flex-direction:column}.operational-linkage-actions{justify-content:flex-start}}

/* V31.22.10.20 — governed calendar, capacity, cost and EVM integration */
.economics-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px;margin-bottom:12px}
.economics-table td:first-child{min-width:220px}.economics-table td small{display:block;color:var(--muted,#64748b);margin-top:3px}
.leveling-form-grid .full-span{grid-column:1/-1}
@media(max-width:1200px){.economics-kpi-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}}
@media(max-width:720px){.economics-kpi-grid{grid-template-columns:1fr 1fr}}

/* V31.22.10.21 — canonical Feature, Requirement, generated QA and RTM workspace */
.qe-feature-traceability{gap:12px}.qe-feature-traceability .qe-card{min-width:0}.qe-wrap-actions{display:flex;flex-wrap:wrap;gap:8px}.qe-guidance{margin:8px 0 0;padding:8px 10px;border-radius:8px;background:#eef8ff;color:#1e4f78;font-size:12px}.qe-proposal-summary{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.qe-proposal-summary>span{padding:4px 7px;border-radius:999px;background:#eef3f7;font-size:10px;font-weight:700}.qe-proposal-summary .qe-warning{flex-basis:100%;margin:0;padding:7px 9px;border-radius:8px;background:#fff4e5;color:#8a4b08}.qe-feature-traceability .qe-table td{vertical-align:top}.qe-feature-traceability .qe-table td:nth-child(4){max-width:420px;white-space:normal}
/* V31.22.10.22 governed in-flight Plan revision */
.plan-revision-workspace{display:grid;gap:14px}.revision-stage-strip{display:flex;gap:6px;flex-wrap:wrap}.revision-stage{padding:5px 9px;border:1px solid var(--line,#d8dee8);border-radius:999px;font-size:11px;font-weight:700;color:var(--muted,#64748b)}.revision-stage.current{background:var(--accent-soft,#eef4ff);border-color:var(--accent,#2563eb);color:var(--accent,#1d4ed8)}.revision-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:8px}.revision-summary-grid>div{border:1px solid var(--line,#e2e8f0);border-radius:10px;padding:9px;display:grid;gap:3px}.revision-summary-grid span{font-size:11px;color:var(--muted,#64748b)}.revision-summary-grid b{font-size:14px}.revision-impact-table{display:grid;gap:1px;background:var(--line,#e2e8f0);border:1px solid var(--line,#e2e8f0);border-radius:10px;overflow:hidden;margin-top:10px}.revision-impact-head,.revision-impact-row{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(150px,.8fr) minmax(130px,.7fr) minmax(180px,1fr);gap:10px;padding:9px;background:var(--surface,#fff);align-items:center}.revision-impact-head{background:var(--surface-alt,#f8fafc);font-size:11px;text-transform:uppercase}.revision-impact-row{font-size:12px}.revision-impact-row span:first-child{display:grid}.revision-impact-row small{color:var(--muted,#64748b)}@media(max-width:1100px){.revision-summary-grid{grid-template-columns:repeat(3,1fr)}.revision-impact-head,.revision-impact-row{grid-template-columns:1fr}.revision-impact-head{display:none}}
/* V31.22.10.24 executive Plan Workbench drawer */
.executive-plan-drawer{width:min(1180px,94vw);max-width:1180px}.pd-client-drawer-body.executive{padding:12px 16px 22px}.pd-executive-dashboard{border:1px solid #cbdce6;border-radius:14px;background:linear-gradient(135deg,#f8fcff,#f1fbf8);padding:14px}.pd-exec-identity{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.pd-exec-identity h3{margin:3px 0}.pd-exec-identity p{margin:0;color:#64748b}.pd-exec-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}.pd-exec-metric{border:1px solid #dbe6ec;border-radius:10px;background:#fff;padding:9px 10px;min-width:0}.pd-exec-metric span{display:block;color:#64748b;font-size:10px;text-transform:uppercase;font-weight:700}.pd-exec-metric b{display:block;font-size:14px;margin:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-exec-metric small{display:block;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-exec-metric.red{border-color:#fecaca;background:#fff7f7}.pd-exec-metric.amber{border-color:#fde68a;background:#fffdf2}.pd-exec-metric.green{border-color:#bbf7d0;background:#f4fff8}.pd-guided-action{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid #99d5cb;background:#effcf8;border-radius:12px;padding:12px 14px;margin-top:10px}.pd-guided-action.mine{box-shadow:0 0 0 2px rgba(13,148,136,.12)}.pd-guided-action h4{margin:2px 0}.pd-guided-action p{margin:2px 0;color:#475569}.pd-guided-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.executive-tabs{position:sticky;top:0;z-index:2;background:#fff;padding:9px 0;overflow-x:auto;flex-wrap:nowrap}.pd-timeline-tools{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}.pd-family-filters{display:flex;gap:5px;flex-wrap:wrap}.pd-family-filters button{border:1px solid #d7e2e8;background:#f8fafc;border-radius:999px;padding:5px 8px;font-size:10px}.pd-family-filters button.active{background:#0f766e;color:#fff;border-color:#0f766e}.pd-family-filters button span{margin-left:4px;opacity:.75}.pd-timeline-tools input{min-width:270px;max-width:380px}.pd-timeline-list{position:relative;display:flex;flex-direction:column;gap:8px}.pd-timeline-list:before{content:"";position:absolute;left:17px;top:8px;bottom:8px;width:2px;background:#dbe6ec}.pd-timeline-event{display:grid;grid-template-columns:36px 1fr;gap:9px;position:relative}.pd-event-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e0f2fe;color:#075985;font-weight:800;z-index:1}.pd-event-icon.red{background:#fee2e2;color:#991b1b}.pd-event-icon.amber{background:#fef3c7;color:#92400e}.pd-event-icon.green{background:#dcfce7;color:#166534}.pd-event-main{border:1px solid #dbe6ec;background:#fff;border-radius:10px;padding:8px 10px}.pd-event-title-row{display:flex;gap:8px;justify-content:space-between}.pd-event-main p{margin:3px 0;color:#475569}.pd-event-reason{display:block;color:#334155;margin:4px 0}.pd-event-meta{display:flex;flex-wrap:wrap;gap:8px;color:#64748b;font-size:10px;margin-top:5px}.pd-event-file{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pd-event-file code,.pd-ledger-card code{font-size:9px;overflow-wrap:anywhere}.pd-workflow-card-list{display:flex;flex-direction:column;gap:10px}.pd-workflow-card{border:1px solid #dbe6ec;border-radius:12px;padding:11px;background:#fff}.pd-workflow-card-head{display:flex;justify-content:space-between;gap:12px}.pd-workflow-card-head span{display:block;color:#64748b}.pd-workflow-card-meta{display:flex;gap:12px;flex-wrap:wrap;color:#64748b;font-size:11px;margin-top:7px}.pd-compact-source-list{display:grid;grid-template-columns:1fr;gap:5px;margin-top:8px}.pd-compact-source-list>div{display:grid;grid-template-columns:85px 1fr 110px 150px;gap:8px;align-items:center;border-top:1px solid #edf2f5;padding:6px}.pd-ledger-list{display:flex;flex-direction:column;gap:8px}.pd-ledger-card{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);gap:8px;border:1px solid #dbe6ec;border-radius:10px;padding:9px}.pd-ledger-card>div:first-child span{display:block;color:#64748b}.pd-ledger-state{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pd-ledger-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:6px}.pd-quality-kpis,.pd-role-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.pd-role-card{border:1px solid #dbe6ec;border-radius:10px;padding:9px;background:#fff}.pd-role-card span{display:block;text-transform:capitalize;color:#64748b;font-size:10px}.pd-role-card b{display:block;margin-top:3px}.pd-technical-json{max-height:520px;overflow:auto;background:#071826;color:#d7eef7;border-radius:10px;padding:12px;font-size:11px}.pd-timeline-list.compact .pd-event-main{padding:6px 8px}
@media(max-width:1000px){.pd-exec-metric-grid,.pd-quality-kpis,.pd-role-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-guided-action{align-items:flex-start;flex-direction:column}.pd-guided-buttons{justify-content:flex-start}.pd-ledger-card{grid-template-columns:1fr}.pd-compact-source-list>div{grid-template-columns:70px 1fr}.pd-timeline-tools{align-items:stretch;flex-direction:column}.pd-timeline-tools input{max-width:none;width:100%}}

/* V31.22.10.25 execution-window and unified workspace-context controls */
.plan-spine-filter-shell{display:flex;flex-direction:column;gap:8px}
.execution-window-select{min-width:190px}
.execution-date-range{display:flex;align-items:end;gap:10px;padding:10px 12px;border:1px solid #cfe0eb;border-radius:12px;background:#f7fbfd}
.execution-date-range label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;color:#456}
.execution-date-range input{min-width:150px;height:34px;border:1px solid #c8d8e3;border-radius:8px;padding:0 9px;background:#fff}
.date-range-arrow{padding-bottom:8px;color:#738899;font-weight:800}
.workspace-context-shell{position:relative}
.workspace-context-button{display:flex!important;align-items:center;gap:8px;min-width:185px;max-width:260px;padding:5px 9px!important;border:1px solid #c8d8e3!important;border-radius:12px!important;background:#fff!important}
.workspace-context-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#e9f7f4;color:#087d74;font-size:11px;font-weight:900;flex:0 0 auto}
.workspace-context-label{display:flex;flex-direction:column;align-items:flex-start;min-width:0;line-height:1.15}
.workspace-context-label b,.workspace-context-label small{max-width:175px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.workspace-context-label b{font-size:12px;color:#173348}.workspace-context-label small{font-size:10px;color:#687f90;margin-top:2px}
.workspace-context-caret{margin-left:auto;color:#6e8391}
.workspace-context-dropdown{width:min(460px,calc(100vw - 30px));padding:12px;max-height:min(640px,80vh);overflow:auto}
.workspace-context-head{display:block;padding:3px 4px 10px}.workspace-context-head small{display:block;color:#718493;margin-top:3px}
.workspace-context-list{display:flex;flex-direction:column;gap:6px}
.workspace-project-option{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) 24px;align-items:center;gap:9px;text-align:left;border:1px solid #d7e3eb;border-radius:11px;background:#fff;padding:9px;cursor:pointer}
.workspace-project-option:hover{border-color:#75b9b2;background:#f5fbfa}.workspace-project-option.active{border-color:#0e8c82;background:#eaf8f5;box-shadow:0 0 0 1px #0e8c821f}
.workspace-project-logo{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#edf3f7;color:#385467;font-weight:900;font-size:11px}
.workspace-project-copy{display:flex;flex-direction:column;min-width:0}.workspace-project-copy b,.workspace-project-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-project-copy b{font-size:12px;color:#193449}.workspace-project-copy small{font-size:10px;color:#708391;margin-top:3px}
.workspace-project-check{color:#078579;font-size:16px;font-weight:900}
.workspace-context-active-card{margin-top:10px;padding:11px;border:1px solid #cfe1dc;border-radius:12px;background:#f4fbf9}
.workspace-context-active-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.workspace-context-active-title>div{display:flex;flex-direction:column}.workspace-context-active-title small{color:#708391;margin-top:3px}
.workspace-context-modules{margin-top:9px;display:flex;flex-wrap:wrap;gap:6px}
@media(max-width:900px){.workspace-context-button{min-width:48px;max-width:54px}.workspace-context-label,.workspace-context-caret{display:none}.execution-date-range{align-items:stretch;flex-direction:column}.date-range-arrow{display:none}.execution-date-range input{width:100%}}

/* V31.22.10.26 — human execution timeline, full-width drawer and complete team/RBAC */
.plan-detail-drawer.executive-plan-drawer.professional-detail-drawer,
.plan-detail-drawer.compact-plan-drawer.executive-plan-drawer.professional-detail-drawer{
  width:min(1320px,calc(100vw - 24px))!important;
  max-width:min(1320px,calc(100vw - 24px))!important;
  min-width:min(980px,calc(100vw - 24px))!important;
  overflow-x:hidden!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-drawer-body,
.plan-detail-drawer.executive-plan-drawer .pd-client-drawer-body,
.plan-detail-drawer.executive-plan-drawer .pd-panel,
.plan-detail-drawer.executive-plan-drawer .pd-section{
  width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;
}
.plan-detail-drawer.executive-plan-drawer .executive-tabs{
  display:flex!important;flex-wrap:wrap!important;overflow-x:visible!important;white-space:normal!important;gap:6px!important;
}
.plan-detail-drawer.executive-plan-drawer .executive-tabs .pd-tab{flex:0 0 auto!important;max-width:100%!important;white-space:normal!important;}
.plan-detail-drawer.executive-plan-drawer .pd-timeline-event,
.plan-detail-drawer.executive-plan-drawer .pd-event-main,
.plan-detail-drawer.executive-plan-drawer .pd-event-title-row,
.plan-detail-drawer.executive-plan-drawer .pd-event-item,
.plan-detail-drawer.executive-plan-drawer .pd-event-transition,
.plan-detail-drawer.executive-plan-drawer .pd-event-reason,
.plan-detail-drawer.executive-plan-drawer .pd-event-meta,
.plan-detail-drawer.executive-plan-drawer .pd-ledger-card,
.plan-detail-drawer.executive-plan-drawer .pd-workflow-card,
.plan-detail-drawer.executive-plan-drawer .pd-role-card{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;word-break:normal!important;}
.plan-detail-drawer.executive-plan-drawer .pd-event-title-row{align-items:flex-start!important;flex-wrap:wrap!important;}
.plan-detail-drawer.executive-plan-drawer .pd-event-item{margin:4px 0 2px!important;font-size:13px!important;color:#183247!important;}
.plan-detail-drawer.executive-plan-drawer .pd-event-transition{font-weight:700!important;color:#31536b!important;}
.plan-detail-drawer.executive-plan-drawer .verified-audit{color:#087f72!important;font-weight:700!important;}
.plan-detail-drawer.executive-plan-drawer .pd-compact-source-list>div{grid-template-columns:105px minmax(0,1fr) 130px 190px!important;}
.plan-detail-drawer.executive-plan-drawer table{width:100%!important;max-width:100%!important;table-layout:fixed!important;}
.plan-detail-drawer.executive-plan-drawer th,
.plan-detail-drawer.executive-plan-drawer td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;}
.plan-detail-drawer.executive-plan-drawer .pd-technical-json{white-space:pre-wrap!important;overflow-x:hidden!important;word-break:break-word!important;}
.project-team-bootstrap-card{grid-column:1/-1!important;}
.project-team-kpis{grid-template-columns:repeat(6,minmax(0,1fr))!important;display:grid!important;gap:8px!important;}
.project-team-access-details{margin-top:12px!important;}
.project-team-access-details summary{cursor:pointer;font-weight:800;color:#0f766e;padding:8px 0;}
.project-team-access-details td small{display:block;color:#64748b;margin-top:2px;}
@media(max-width:1100px){
  .plan-detail-drawer.executive-plan-drawer.professional-detail-drawer,
  .plan-detail-drawer.compact-plan-drawer.executive-plan-drawer.professional-detail-drawer{width:100vw!important;max-width:100vw!important;min-width:0!important;}
  .project-team-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .plan-detail-drawer.executive-plan-drawer .pd-compact-source-list>div{grid-template-columns:90px minmax(0,1fr)!important;}
}
@media(max-width:700px){.project-team-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}

/* V31.22.10.27 — authoritative execution truth, meaningful dashboard and stable context */
.plan-detail-overlay.professional-detail-overlay{
  padding:4px!important;
  align-items:stretch!important;
  justify-content:flex-end!important;
}
.plan-detail-drawer.executive-plan-drawer.professional-detail-drawer,
.plan-detail-drawer.compact-plan-drawer.executive-plan-drawer.professional-detail-drawer{
  width:min(1680px,calc(100vw - 8px))!important;
  max-width:min(1680px,calc(100vw - 8px))!important;
  min-width:0!important;
  height:calc(100vh - 8px)!important;
  max-height:calc(100vh - 8px)!important;
  overflow:hidden!important;
  border-radius:16px!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-drawer-body{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  max-height:none!important;
  min-height:0!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-section-tabs.executive-tabs{
  position:sticky!important;
  top:0!important;
  z-index:8!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;
  gap:6px!important;
  overflow:visible!important;
  white-space:normal!important;
  background:#fff!important;
  border:1px solid #d9e4eb!important;
  border-radius:12px!important;
  padding:7px!important;
}
.plan-detail-drawer.executive-plan-drawer .executive-tabs .pd-tab{
  width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  justify-content:center!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-panel,
.plan-detail-drawer.executive-plan-drawer .pd-section,
.plan-detail-drawer.executive-plan-drawer .pd-workflow-card-list,
.plan-detail-drawer.executive-plan-drawer .pd-timeline-list,
.plan-detail-drawer.executive-plan-drawer .pd-ledger-list,
.plan-detail-drawer.executive-plan-drawer .pd-compact-source-list,
.plan-detail-drawer.executive-plan-drawer .pd-table-wrap{
  max-height:none!important;
  overflow:visible!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-work-item-table,
.plan-detail-drawer.executive-plan-drawer .pd-workflow-item-grid{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
.plan-detail-drawer.executive-plan-drawer table{
  table-layout:auto!important;
  min-width:0!important;
}
.plan-detail-drawer.executive-plan-drawer th,
.plan-detail-drawer.executive-plan-drawer td{
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-technical-json{
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-exec-metric-grid.meaningful{
  grid-template-columns:repeat(4,minmax(190px,1fr))!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-exec-metric b{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.plan-detail-drawer.executive-plan-drawer .pd-exec-metric small,
.plan-detail-drawer.executive-plan-drawer .pd-metric-detail{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.pd-integrity-banner{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:10px;padding:9px 11px;border-radius:10px;border:1px solid #cfe0e8;background:#f7fbfd}
.pd-integrity-banner.success{border-color:#b9dfd4;background:#f2fbf7;color:#145c4d}.pd-integrity-banner.error{border-color:#f3c1bd;background:#fff7f6;color:#8c2d25}
.pd-business-path{font-size:12px!important;color:#526c7c!important;overflow-wrap:anywhere!important}
.pd-metric-detail{margin:5px 0 0!important;font-size:10px!important;color:#536b7b!important}
.pd-guided-empty{border:1px dashed #c8d8e3;border-radius:12px;padding:18px;background:#fbfdfe}.pd-guided-empty b{display:block;margin-bottom:5px}.pd-guided-empty p{margin:0;color:#617687}
/* Override the legacy icon-sized client button. Context must remain readable. */
.app-header .client-switch-shell.workspace-context-shell{flex:0 1 360px!important;min-width:260px!important;max-width:390px!important}
.app-header .client-switch-button.workspace-context-button.text-header-action{
  width:100%!important;
  min-width:260px!important;
  max-width:390px!important;
  height:auto!important;
  min-height:44px!important;
  padding:5px 10px!important;
  display:flex!important;
  align-items:center!important;
  border-radius:12px!important;
}
.app-header .client-switch-button.workspace-context-button .workspace-context-label{
  display:flex!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.app-header .client-switch-button.workspace-context-button .workspace-context-label b,
.app-header .client-switch-button.workspace-context-button .workspace-context-label small{
  display:block!important;
  max-width:none!important;
  width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  text-align:left!important;
}
.app-header .client-switch-button.workspace-context-button .workspace-context-caret{display:inline!important;flex:0 0 auto!important}
.app-header-actions.compact-header-actions{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important}
@media(max-width:1280px){
  .app-header{align-items:flex-start!important;flex-wrap:wrap!important;gap:8px!important}
  .app-header-actions.compact-header-actions{width:100%!important;justify-content:flex-end!important;flex-wrap:wrap!important}
  .app-header .client-switch-shell.workspace-context-shell{order:-1!important;flex:1 1 360px!important;max-width:none!important}
  .app-header .client-switch-button.workspace-context-button.text-header-action{max-width:none!important}
  .plan-detail-drawer.executive-plan-drawer .pd-exec-metric-grid.meaningful{grid-template-columns:repeat(2,minmax(210px,1fr))!important}
}
@media(max-width:760px){
  .plan-detail-overlay.professional-detail-overlay{padding:0!important}
  .plan-detail-drawer.executive-plan-drawer.professional-detail-drawer{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important}
  .plan-detail-drawer.executive-plan-drawer .pd-exec-metric-grid.meaningful{grid-template-columns:1fr!important}
  .plan-detail-drawer.executive-plan-drawer .pd-section-tabs.executive-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;position:relative!important}
  .app-header .client-switch-shell.workspace-context-shell{min-width:100%!important;max-width:100%!important}
  .app-header .client-switch-button.workspace-context-button.text-header-action{min-width:100%!important;max-width:100%!important}
  .app-header .client-switch-button.workspace-context-button .workspace-context-label{display:flex!important}
}
