/* RISE Workspace V3 rebuild.
   This file intentionally loads after site.css so the approved preview shell wins cleanly. */
@import url("rise-fonts.css");
:root {
  --v3-black: #11283b;
  --v3-navy: #173c52;
  --v3-ink: #162636;
  --v3-muted: #60707d;
  --v3-line: #cfdde4;
  --v3-soft: #f8fbfc;
  --v3-paper: #eef3f4;
  --v3-teal: #35776a;
  --v3-orange: #b85830;
  --v3-gold: #e1aa45;
  --v3-red: #b85830;
}

.rise-assessment-overview {
  border-left: 5px solid #195074 !important;
}

.rise-scale-key {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(120px, 1fr)) !important;
  gap: 8px !important;
  margin-top: 14px !important;
}

.rise-scale-key span {
  min-height: 48px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 10px !important;
  border: 1px solid #cbdde7 !important;
  background: #fff !important;
  color: #43566a !important;
  font-size: 12px !important;
  font-weight: 650 !important;
}

.rise-scale-key strong {
  min-width: 28px !important;
  min-height: 28px !important;
  display: inline-grid !important;
  place-items: center !important;
  background: #0f2f44 !important;
  color: #fff !important;
  font-size: 13px !important;
}

.rise-assessment-section {
  border-left: 5px solid #2f7f6f !important;
}

.rise-question-list {
  display: grid !important;
  gap: 10px !important;
}

.rise-question-card {
  display: grid !important;
  grid-template-columns: minmax(240px, 1fr) minmax(420px, 1.15fr) !important;
  gap: 12px !important;
  align-items: stretch !important;
  padding: 12px !important;
  border: 1px solid #d5e2ea !important;
  background: #fff !important;
}

.rise-question-text {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: start !important;
}

.rise-question-text span {
  min-height: 32px !important;
  display: inline-grid !important;
  place-items: center !important;
  border: 1px solid #cbdde7 !important;
  background: #f4f8fb !important;
  color: #195074 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

.rise-question-text strong {
  color: #0f2f44 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
}

.rise-scale-options {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(72px, 1fr)) !important;
  gap: 6px !important;
}

.rise-scale-option {
  min-width: 0 !important;
  min-height: 64px !important;
  display: grid !important;
  grid-template-rows: auto auto !important;
  align-content: center !important;
  justify-items: center !important;
  gap: 3px !important;
  padding: 8px 6px !important;
  border: 1px solid #cbdde7 !important;
  background: #fbfdff !important;
  color: #0b2238 !important;
  cursor: pointer !important;
}

.rise-scale-option input {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.rise-scale-option span {
  min-width: 28px !important;
  min-height: 28px !important;
  display: inline-grid !important;
  place-items: center !important;
  border: 1px solid #b8ccd8 !important;
  background: #fff !important;
  color: #0f2f44 !important;
  font-weight: 800 !important;
}

.rise-scale-option small {
  max-width: 100% !important;
  color: #43566a !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  line-height: 1.15 !important;
  text-align: center !important;
}

.rise-scale-option:has(input:checked) {
  border-color: #195074 !important;
  background: #e8f2ff !important;
  box-shadow: inset 0 0 0 2px rgba(25, 80, 116, 0.14) !important;
}

.rise-scale-option:has(input:checked) span {
  border-color: #195074 !important;
  background: #195074 !important;
  color: #fff !important;
}

.assessment-report-toolbar {
  align-items: center !important;
}

.assessment-report-toolbar .collection-search {
  grid-template-columns: auto minmax(220px, 360px) auto auto !important;
  margin: 0 !important;
}

.assessment-report-scoreboard {
  margin-top: 4px !important;
}

.event-code-register {
  display: grid !important;
  gap: 16px !important;
}

.event-code-report {
  border: 1px solid #cbdde7 !important;
  border-top: 5px solid #195074 !important;
  background: #fff !important;
  box-shadow: 0 16px 34px rgba(15, 47, 68, 0.06) !important;
}

.event-code-report-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: start !important;
  padding: 16px !important;
  border-bottom: 1px solid #d5e2ea !important;
}

.event-code-report-head h2 {
  margin: 8px 0 4px !important;
  color: #0f2f44 !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
}

.event-code-report-head p {
  margin: 0 !important;
  color: #526575 !important;
  font-weight: 650 !important;
}

.event-code-metrics {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  border-bottom: 1px solid #d5e2ea !important;
}

.event-code-metrics div {
  min-width: 0 !important;
  display: grid !important;
  gap: 4px !important;
  padding: 12px 14px !important;
  border-right: 1px solid #d5e2ea !important;
  background: #fbfdff !important;
}

.event-code-metrics div:last-child {
  border-right: 0 !important;
}

.event-code-metrics span {
  color: #43566a !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

.event-code-metrics strong {
  color: #0f2f44 !important;
  font-size: 20px !important;
  line-height: 1.1 !important;
}

.event-code-metrics small {
  color: #526575 !important;
  font-weight: 650 !important;
}

.event-code-meter {
  height: 10px !important;
  background: #e7eef3 !important;
  border-bottom: 1px solid #d5e2ea !important;
}

.event-code-meter span {
  display: block !important;
  height: 100% !important;
  background: linear-gradient(90deg, #195074, #2f7f6f) !important;
}

.assessment-report-table th,
.assessment-report-table td {
  vertical-align: top !important;
}

@media (max-width: 1020px) {
  .rise-scale-key,
  .event-code-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .rise-question-card {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  .rise-scale-key,
  .rise-scale-options,
  .event-code-metrics,
  .assessment-report-toolbar .collection-search {
    grid-template-columns: 1fr !important;
  }

  .event-code-report-head {
    grid-template-columns: 1fr !important;
  }
}

body:has(.live-workspace) {
  overflow-x: hidden;
  background:
    linear-gradient(135deg, rgba(217, 237, 242, 0.75), transparent 31%),
    linear-gradient(315deg, rgba(243, 211, 141, 0.34), transparent 28%),
    var(--v3-paper);
  color: var(--v3-ink);
  font-family: var(--rise-ui-font);
  font-size: 13px;
  font-weight: 400;
}

.live-workspace,
.live-workspace * {
  box-sizing: border-box;
}

.live-workspace {
  --v3-rail: 0px;
  --v3-top: 126px;
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: var(--v3-top) minmax(0, 1fr) 28px;
  overflow-x: hidden;
  background:
    linear-gradient(135deg, rgba(217, 237, 242, 0.75), transparent 31%),
    linear-gradient(315deg, rgba(243, 211, 141, 0.34), transparent 28%),
    var(--v3-paper);
}

.live-workspace a {
  color: inherit;
}

.live-workspace button,
.live-workspace input,
.live-workspace select,
.live-workspace textarea {
  font: inherit;
}

.live-workspace button,
.live-workspace .button,
.live-workspace input[type="submit"] {
  border-radius: 0;
}

.live-workspace .suitebar {
  grid-column: 1 / -1;
  grid-row: 1;
  height: var(--v3-top);
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 15px;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(53, 119, 106, 0.22), transparent 42%),
    var(--v3-black);
  color: #fff;
  border-bottom: 1px solid #0b1724;
}

.live-workspace .suite-brand {
  flex: 0 1 742px;
  min-width: 320px;
  height: 116px;
  display: flex;
  align-items: center;
  color: #fff;
  text-decoration: none;
}

.live-workspace .workspace-top-banner {
  width: 100%;
  height: 114px;
  display: block;
  object-fit: contain !important;
  object-position: left center;
  border: 0;
  background: transparent;
}

.live-workspace .global-search {
  flex: 1 1 300px;
  min-width: 240px;
  max-width: 760px;
  height: 40px;
  display: grid;
  grid-template-columns: 68px minmax(0, 1fr) auto;
  align-items: center;
  border: 1px solid rgba(207, 221, 228, 0.92);
  background: #f8fbfc;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
}

.live-workspace .global-search span {
  padding-left: 12px;
  color: var(--v3-navy);
  font-weight: 600;
}

.live-workspace .global-search input {
  width: 100%;
  height: 100%;
  min-width: 0;
  border: 0;
  padding: 0 12px;
  background: transparent;
  color: var(--v3-ink);
}

.live-workspace .global-search input::placeholder {
  color: #6b7b88;
}

.live-workspace .search-action {
  min-width: 58px;
  min-height: 40px;
  height: 40px;
  padding: 0 14px;
  border: 0;
  border-left: 1px solid var(--v3-line);
  background: var(--v3-orange);
  color: #fff;
  font-weight: 700;
  box-shadow: none;
}

.live-workspace .suite-actions {
  flex: 0 0 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #fff;
}

.live-workspace .suite-button,
.live-workspace .suite-actions button,
.live-workspace .suite-signout {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
}

.live-workspace .fox-launch-button {
  gap: 6px;
  min-width: 74px;
  padding-inline: 8px 10px;
}

.live-workspace .fox-launch-button img {
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.live-workspace .suite-role {
  display: none;
}

.live-workspace .identity {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
}

.live-workspace .identity-avatar {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--v3-orange);
  color: #fff;
  font-weight: 700;
  border: 2px solid rgba(255, 255, 255, 0.42);
  box-shadow: 0 10px 18px rgba(0, 0, 0, 0.24);
}

.live-workspace .identity-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.live-workspace .identity-avatar img + span {
  display: none;
}

.live-workspace .launcher-backdrop {
  position: fixed;
  inset: var(--v3-top) 0 0;
  z-index: 38;
  display: none;
  background: rgba(15, 23, 42, 0.18);
}

.live-workspace .launcher-backdrop.open {
  display: block;
}

.live-workspace .launcher {
  position: fixed;
  top: var(--v3-top);
  left: 80px;
  right: 14px;
  z-index: 39;
  width: auto;
  max-height: min(42vh, 340px);
  display: none;
  gap: 8px;
  padding: 12px 14px;
  border: 1px solid var(--v3-line);
  background: #f8fbfc;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.2);
  overflow: auto;
}

.live-workspace .launcher.open {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  align-items: stretch;
  align-content: flex-start;
  gap: 8px;
  right: 8px;
  left: 8px;
  max-width: min(1180px, calc(100vw - 16px));
}

.live-workspace .launcher-title {
  grid-column: 1 / -1;
  color: var(--v3-muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.live-workspace .launcher a {
  min-width: 0;
  min-height: 58px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  align-content: center;
  gap: 8px;
  padding: 9px 11px;
  border: 1px solid var(--v3-line);
  background: #fff;
  color: var(--v3-ink);
  text-decoration: none;
  font-weight: 650;
  line-height: 1.15;
  overflow: hidden;
}

.live-workspace .launcher a:hover,
.live-workspace .launcher a:focus-visible {
  border-color: var(--v3-line);
  background: #fff3ec;
}

.live-workspace .launcher img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.live-workspace .rail[hidden] {
  display: none !important;
}

.live-workspace .nav-icon-badge-wrap {
  position: relative;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: fit-content;
  max-width: none !important;
  overflow: visible !important;
  line-height: 0;
  white-space: normal;
}

.live-workspace .nav-icon-badge-wrap > img {
  display: block;
}

.live-workspace .nav-task-badge {
  position: absolute;
  top: -7px;
  right: -10px;
  z-index: 2;
  min-width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 5px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: var(--v3-orange);
  color: #fff;
  box-shadow: 0 2px 7px rgba(15, 35, 54, 0.28);
  font-size: 7px;
  font-weight: 800;
  line-height: 1;
}

.live-workspace .launcher .nav-task-badge {
  top: -8px;
  right: -11px;
}

.live-workspace .menu-popover {
  position: static;
}

.live-workspace .menu-popover > summary {
  list-style: none;
}

.live-workspace .menu-popover > summary::-webkit-details-marker {
  display: none;
}

.live-workspace .menu-popover[open] > summary {
  position: relative;
  z-index: 141;
}

.live-workspace .menu-popover[open].workflow-menu-active > summary {
  outline: 2px solid rgba(184, 88, 48, 0.45);
  outline-offset: 2px;
}

.live-workspace.workflow-active .canvas,
.live-workspace.workflow-active .crm-main {
  overflow: hidden;
}

body:has(.live-workspace) .live-workspace .menu-popover[open].workflow-menu-active > .popover-form,
.live-workspace .menu-popover[open] .popover-form {
  position: fixed !important;
  top: var(--v3-top) !important;
  right: 0 !important;
  bottom: 28px !important;
  left: var(--v3-rail) !important;
  z-index: 140;
  width: auto !important;
  max-width: none !important;
  max-height: none !important;
  min-height: calc(100vh - var(--v3-top) - 28px);
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 28px clamp(18px, 4vw, 54px);
  border: 0;
  border-left: 1px solid var(--v3-line);
  background:
    linear-gradient(135deg, rgba(217, 237, 242, 0.86), transparent 36%),
    linear-gradient(315deg, rgba(243, 211, 141, 0.32), transparent 30%),
    #f8fbfc;
  box-shadow: none;
  overflow: auto;
}

body:has(.live-workspace) .live-workspace.nav-collapsed .menu-popover[open].workflow-menu-active > .popover-form,
.live-workspace.nav-collapsed .menu-popover[open] .popover-form {
  left: 0 !important;
}

.live-workspace .menu-popover[open] .popover-form > label,
.live-workspace .menu-popover[open] .popover-form > input,
.live-workspace .menu-popover[open] .popover-form > select,
.live-workspace .menu-popover[open] .popover-form > textarea,
.live-workspace .menu-popover[open] .popover-form > .form-grid,
.live-workspace .menu-popover[open] .popover-form > .validation-summary,
.live-workspace .menu-popover[open] .popover-form > .checkbox-grid,
.live-workspace .menu-popover[open] .popover-form > button {
  width: min(100%, 980px);
}

.live-workspace .menu-popover[open] .popover-form-header {
  width: min(100%, 980px);
  min-height: 58px;
  align-items: center;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--v3-line);
  color: var(--v3-ink);
}

.live-workspace .menu-popover[open] .popover-form-header strong {
  font-size: 20px;
  font-weight: 650;
}

.live-workspace .workflow-generated-header {
  display: flex;
  justify-content: space-between;
}

.live-workspace .menu-popover[open] .icon-close-button {
  width: 38px;
  height: 38px;
  background: #fff;
}

.live-workspace .menu-popover[open] .wide-popover,
.live-workspace .menu-popover[open] .brand-upload-form,
.live-workspace .menu-popover[open] .document-popover,
.live-workspace .menu-popover[open] .task-create-form,
.live-workspace .menu-popover[open] .schedule-create-form {
  grid-template-columns: none;
}

.live-workspace .field-pill.red,
.live-workspace .warning-chip strong {
  background: #ffe4dc;
  color: #8f2d16;
}

.live-workspace a.view-chip {
  text-decoration: none;
  cursor: pointer;
}

.live-workspace a.view-chip:hover,
.live-workspace a.view-chip:focus-visible {
  border-color: var(--v3-orange);
  background: #fff7f1;
  color: var(--v3-ink);
}

.live-workspace .proposal-reader-panel {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
  padding: 16px;
}

.live-workspace .proposal-reader-form {
  margin: 0;
}

.live-workspace .proposal-reader-result {
  width: min(100%, 980px);
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--v3-line);
  background: rgba(255, 255, 255, 0.82);
}

.live-workspace .proposal-reader-result > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
}

.live-workspace .proposal-reader-result span {
  color: var(--v3-muted);
}

.live-workspace .proposal-reader-result pre {
  max-height: 240px;
  overflow: auto;
  margin: 8px 0 0;
  padding: 12px;
  border: 1px solid var(--v3-line);
  background: #fff;
  color: var(--v3-ink);
  white-space: pre-wrap;
}

.live-workspace .agreements-workspace {
  display: grid;
  gap: 14px;
}

.live-workspace .agreement-header {
  margin-bottom: 0;
}

.live-workspace .agreement-command-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.live-workspace .agreement-command-card {
  min-height: 86px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 4px 12px;
  align-items: start;
  padding: 14px;
  border: 1px solid var(--v3-line);
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 12px 26px rgba(16, 38, 54, 0.06);
}

.live-workspace .agreement-command-card > span {
  grid-row: span 2;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: var(--v3-navy);
  color: #fff;
  font-weight: 800;
}

.live-workspace .agreement-command-card strong {
  color: var(--v3-ink);
  font-size: 14px;
}

.live-workspace .agreement-command-card p {
  margin: 0;
  color: #465a68;
  font-size: 12px;
  line-height: 1.4;
}

.live-workspace .agreement-library-panel {
  padding: 16px;
}

.live-workspace .agreement-library-panel .collection-table,
.live-workspace .agreement-envelope-table {
  table-layout: auto;
}

.live-workspace .agreement-library-panel .agreement-library-table {
  table-layout: fixed;
}

.live-workspace .agreement-library-table th:nth-child(1),
.live-workspace .agreement-library-table td:nth-child(1) {
  width: 18%;
}

.live-workspace .agreement-library-table th:nth-child(2),
.live-workspace .agreement-library-table td:nth-child(2) {
  width: 8%;
}

.live-workspace .agreement-library-table th:nth-child(3),
.live-workspace .agreement-library-table td:nth-child(3) {
  width: 10%;
}

.live-workspace .agreement-library-table th:nth-child(4),
.live-workspace .agreement-library-table td:nth-child(4) {
  width: 20%;
}

.live-workspace .agreement-library-table th:nth-child(5),
.live-workspace .agreement-library-table td:nth-child(5) {
  width: 36%;
}

.live-workspace .agreement-library-table th:nth-child(6),
.live-workspace .agreement-library-table td:nth-child(6) {
  width: 8%;
}

.live-workspace .agreement-library-panel .collection-table th,
.live-workspace .agreement-library-panel .collection-table td,
.live-workspace .agreement-envelope-table th,
.live-workspace .agreement-envelope-table td {
  vertical-align: top;
  white-space: normal;
}

.live-workspace .agreement-library-panel .record-cell strong,
.live-workspace .agreement-envelope-table .record-cell strong {
  display: block;
  max-width: 32rem;
}

.live-workspace .esign-library-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 6px;
  align-items: center;
  min-width: 0;
  max-width: 100%;
}

.live-workspace .esign-send-primary,
.live-workspace .esign-manual-fields {
  display: grid;
  gap: 6px;
  align-items: center;
  min-width: 0;
}

.live-workspace .esign-send-primary {
  grid-template-columns: minmax(150px, 1fr) auto;
}

.live-workspace .esign-manual-fields {
  grid-template-columns: minmax(108px, 1fr) minmax(136px, 1.25fr) 56px auto;
}

.live-workspace .esign-library-form .button {
  min-height: 32px;
  height: 32px;
  padding: 0 10px;
}

.live-workspace .esign-library-form input,
.live-workspace .esign-library-form select {
  min-width: 0;
  height: 32px;
  padding: 5px 8px;
  font-size: 12px;
}

.live-workspace .esign-library-form .signature-page-input {
  text-align: center;
}

.live-workspace .esign-library-form .compact-email-check {
  height: 32px;
  padding: 0 8px;
  gap: 5px;
  border: 1px solid var(--v3-line);
  background: #fff;
  color: var(--v3-ink);
  font-size: 12px;
  white-space: nowrap;
}

.live-workspace .esign-library-form .compact-email-check input {
  width: 14px;
  min-width: 14px;
  height: 14px;
  min-height: 14px;
}

.live-workspace .agreement-library-table .send-envelope-cell {
  padding-top: 8px;
  padding-bottom: 8px;
  min-width: 360px;
}

.live-workspace .agreement-library-table .agreement-row-action {
  white-space: nowrap;
}

.live-workspace .agreement-library-table .agreement-row-action form {
  display: flex;
  justify-content: flex-start;
}

.live-workspace .agreement-library-table .danger-link {
  min-height: 32px;
  padding: 0 8px;
}

.live-workspace .agreement-envelope-table .record-actions {
  flex-wrap: nowrap;
  white-space: nowrap;
}

@media (max-width: 1280px) {
  .live-workspace .agreement-library-table th:nth-child(1),
  .live-workspace .agreement-library-table td:nth-child(1) {
    width: 18%;
  }

  .live-workspace .agreement-library-table th:nth-child(4),
  .live-workspace .agreement-library-table td:nth-child(4) {
    width: 18%;
  }

  .live-workspace .agreement-library-table th:nth-child(5),
  .live-workspace .agreement-library-table td:nth-child(5) {
    width: 38%;
  }

  .live-workspace .esign-manual-fields {
    grid-template-columns: minmax(120px, 1fr) minmax(145px, 1fr);
  }

  .live-workspace .esign-library-form .compact-email-check {
    justify-content: flex-start;
  }
}

@media (max-width: 980px) {
  .live-workspace .agreement-library-panel .agreement-library-table {
    table-layout: auto;
  }

  .live-workspace .agreement-library-table .send-envelope-cell {
    min-width: 320px;
  }

  .live-workspace .esign-send-primary,
  .live-workspace .esign-manual-fields {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Navigation pruning pass: keep reports/export, activity/audit, and operations/admin clear. */
.report-export-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding: 24px 28px;
  border: 1px solid var(--v3-line);
  background: linear-gradient(120deg, #fff, rgba(222, 240, 245, 0.78));
  margin-bottom: 18px;
}

.report-export-hero span,
.lead-workflow-strip span {
  color: var(--v3-teal);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 650;
}

.report-export-hero h2 {
  margin: 6px 0 8px;
  font-size: 24px;
}

.report-export-hero p {
  max-width: 780px;
  margin: 0;
  color: var(--v3-muted);
}

.report-export-actions,
.lead-workflow-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.report-export-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 12px;
}

.report-export-card,
.admin-tool-card,
.lead-workflow-strip {
  border: 1px solid var(--v3-line);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 28px rgba(11, 39, 57, 0.06);
}

.report-export-card {
  min-height: 150px;
  display: grid;
  align-content: space-between;
  gap: 16px;
  padding: 18px;
}

.report-export-card h2 {
  margin: 0 0 6px;
  font-size: 18px;
}

.report-export-card p {
  margin: 0;
  color: var(--v3-muted);
}

.lead-workflow-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr)) auto;
  gap: 12px;
  align-items: stretch;
  padding: 14px;
  margin-bottom: 14px;
}

.lead-workflow-strip > div:not(.lead-workflow-actions) {
  display: grid;
  gap: 5px;
  padding: 12px;
  background: rgba(232, 246, 249, 0.62);
  border-left: 3px solid var(--v3-teal);
}

.lead-workflow-strip span {
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  color: #fff;
  background: var(--v3-teal);
  border-radius: 999px;
  letter-spacing: 0;
}

.lead-workflow-strip strong {
  font-size: 14px;
}

.lead-workflow-strip small {
  color: var(--v3-muted);
}

.lead-workflow-actions {
  align-content: center;
  justify-content: flex-start;
}

.admin-tool-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}

.admin-tool-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px;
  color: inherit;
  text-decoration: none;
}

.admin-tool-card:hover {
  border-color: var(--v3-blue);
}

.admin-tool-card img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.admin-tool-card span {
  display: grid;
  gap: 4px;
}

.admin-tool-card small {
  color: var(--v3-muted);
}

@media (max-width: 980px) {
  .report-export-hero,
  .lead-workflow-strip {
    grid-template-columns: 1fr;
  }

  .report-export-actions,
  .lead-workflow-actions {
    justify-content: flex-start;
  }
}

.print-toolbar {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin: 0 0 16px;
}

.print-report-shell {
  background: #fff;
  border: 1px solid #cbdde7;
  padding: 22px;
  margin-bottom: 36px;
  overflow: visible;
}

.print-report-header {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: flex-start;
  border-bottom: 2px solid #195074;
  padding-bottom: 16px;
  margin-bottom: 16px;
}

.print-report-header > div:first-child {
  min-width: 0;
  max-width: calc(100% - 230px);
}

.print-report-header h1 {
  font-size: clamp(26px, 3vw, 38px);
  margin: 4px 0;
  font-weight: 650;
}

.print-code-line {
  color: #0f756b;
  font-weight: 600;
}

.print-report-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  flex: 0 0 210px;
  color: #5a6775;
  font-size: 12px;
  text-align: right;
}

.print-report-brand-card {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  max-width: 210px;
  padding: 7px 9px;
  border: 1px solid #cbdde7;
  border-radius: 8px;
  background: linear-gradient(90deg, #eef9fb, #fff8e5);
  color: #0b2c49;
  white-space: nowrap;
  box-sizing: border-box;
}

.print-report-brand img {
  width: 70px !important;
  max-width: 70px !important;
  height: 32px !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 0;
  flex: 0 0 auto;
}

.print-report-brand strong {
  font-size: 16px;
  line-height: 1;
  font-weight: 650;
}

.print-report-selector {
  display: flex;
  gap: 12px;
  align-items: flex-end;
  justify-content: space-between;
  background: #f6fbfd;
  border: 1px solid #cbdde7;
  padding: 16px;
  margin-bottom: 16px;
}

.print-report-selector-fields {
  display: grid;
  grid-template-columns: minmax(280px, 1.1fr) minmax(220px, 0.75fr);
  gap: 12px;
  flex: 1 1 auto;
}

.print-report-selector-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex: 0 0 auto;
}

.print-report-selector label {
  display: grid;
  gap: 4px;
  font-weight: 600;
}

.print-report-selector .inline-check {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  line-height: 1.2;
  max-width: 360px;
}

.print-report-selector .inline-check input {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.live-workspace.print-packet-workspace .portal-built-footer,
body.print-packet-page .portal-built-footer {
  display: none !important;
}

.live-workspace.print-packet-workspace .crm-main,
.live-workspace.print-packet-workspace .portal-page-shell,
body.print-packet-page .crm-main,
body.print-packet-page .portal-page-shell {
  padding-bottom: 24px !important;
}

.print-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 0;
}

.print-summary-grid div,
.print-report-section,
.print-participant-cards article {
  border: 1px solid #cbdde7;
  background: #fff;
}

.print-summary-grid div {
  border-top: 4px solid #c45b32;
  padding: 14px;
}

.print-summary-grid span,
.print-summary-grid small {
  display: block;
  color: #5a6775;
}

.print-summary-grid strong {
  display: block;
  color: #0f2f44;
  font-size: 30px;
  margin: 2px 0;
}

.print-report-section {
  padding: 16px;
  margin: 16px 0;
}

.print-report-section h2,
.print-report-section h3 {
  margin-top: 0;
}

.print-two-column {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.print-roster-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.print-roster-table th,
.print-roster-table td {
  border: 1px solid #cbdde7;
  padding: 8px;
  text-align: left;
  vertical-align: top;
}

.print-roster-table th {
  background: #eef6fb;
}

.print-participant-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.print-participant-cards article {
  padding: 14px;
  break-inside: avoid;
}

.print-participant-cards p {
  margin: 6px 0;
}

@media (max-width: 760px) {
  .print-report-header,
  .print-two-column {
    grid-template-columns: 1fr;
    display: grid;
  }

  .print-report-brand {
    align-items: flex-start;
    text-align: left;
  }

  .print-report-header > div:first-child {
    max-width: none;
  }

  .print-report-selector,
  .print-summary-grid,
  .print-participant-cards {
    grid-template-columns: 1fr;
  }
}

/* Responsive chrome repair: keep the V3 header and app strip usable on smaller windows. */
.live-workspace .global-search {
  grid-template-columns: minmax(0, 1fr) 58px !important;
}

.live-workspace .global-search span {
  display: none !important;
}

.live-workspace .global-search input {
  padding-left: 16px !important;
}

.live-workspace .rail,
.live-workspace .rail[hidden] {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: clamp(10px, 1.15vw, 22px) !important;
  min-height: 92px !important;
  padding: 8px 14px 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: thin !important;
  white-space: nowrap !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.live-workspace .rail[hidden] {
  display: none !important;
}

.live-workspace .rail a {
  flex: 0 0 auto !important;
  width: clamp(48px, 4.9vw, 62px) !important;
  min-width: clamp(48px, 4.9vw, 62px) !important;
  min-height: 70px !important;
  display: grid !important;
  grid-template-rows: 40px auto !important;
  justify-items: center !important;
  align-items: start !important;
  gap: 4px !important;
  padding: 2px 0 8px !important;
}

.live-workspace .rail span {
  max-width: 100% !important;
  width: 100% !important;
  display: block !important;
  overflow: hidden !important;
  text-align: center !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: clamp(7.5px, 0.7vw, 9.25px) !important;
  line-height: 1.08 !important;
}

@media (max-width: 1180px) {
  .live-workspace {
    --v3-top: 148px;
  }

  .live-workspace .suitebar {
    height: var(--v3-top) !important;
    grid-template-columns: minmax(360px, 1fr) minmax(220px, auto) !important;
    grid-template-rows: 58px 52px !important;
    gap: 8px 12px !important;
    align-content: center !important;
    padding: 10px 14px !important;
  }

  .live-workspace .suite-brand-banner {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
  }

  .live-workspace .workspace-top-banner {
    max-width: min(100%, 650px) !important;
    height: 58px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .live-workspace .suite-actions {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: auto !important;
    max-width: 100% !important;
    justify-content: flex-end !important;
    align-self: center !important;
    gap: 6px !important;
    overflow: hidden !important;
  }

  .live-workspace .global-search {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    max-width: none !important;
    height: 46px !important;
  }

  .live-workspace .suite-button,
  .live-workspace .suite-actions button,
  .live-workspace .suite-signout {
    min-height: 34px !important;
    padding: 0 10px !important;
    font-size: 12px !important;
  }

  .live-workspace .suite-role {
    display: none !important;
  }

  .live-workspace .identity.identity-photo {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
  }

  .live-workspace .identity-name {
    max-width: 72px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 11px !important;
  }
}

/* Scheduler-integrated management pages */
.live-workspace .management-integration {
  max-width: none;
}

.live-workspace .management-integration .scheduling-detail-hero {
  align-items: stretch;
}

.live-workspace .management-integration .scheduling-hero-actions {
  align-content: start;
  align-items: stretch;
  min-width: min(360px, 100%);
}

.live-workspace .management-integration .scheduling-hero-actions .button,
.live-workspace .management-integration .scheduling-hero-actions summary.button {
  justify-content: center;
  min-height: 42px;
}

.live-workspace .integrated-command-grid {
  grid-template-columns: repeat(5, minmax(150px, 1fr));
}

.live-workspace .session-context-strip {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto auto auto;
  gap: 10px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(15, 65, 95, 0.16);
  background: rgba(255, 255, 255, 0.82);
}

.live-workspace .session-context-strip > div {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.live-workspace .session-context-strip span {
  color: var(--v3-muted);
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.live-workspace .session-context-strip strong {
  color: var(--v3-ink);
  font-size: 1.15rem;
}

.live-workspace .participant-session-table th:first-child,
.live-workspace .participant-session-table td:first-child,
.live-workspace .partner-session-table th:first-child,
.live-workspace .partner-session-table td:first-child {
  min-width: 220px;
}

.live-workspace .integrated-actions {
  align-items: center;
  gap: 6px;
}

.live-workspace .integrated-actions .row-details {
  display: inline-block;
}

.live-workspace .integrated-actions .wide-row-details > div,
.live-workspace .integrated-actions .wide-row-details > form {
  min-width: min(720px, 80vw);
}

.live-workspace .mini-booking-stack {
  display: grid;
  gap: 5px;
  margin-top: 8px;
}

.live-workspace .mini-booking-stack a {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 6px 8px;
  border: 1px solid rgba(15, 65, 95, 0.12);
  background: rgba(238, 247, 250, 0.78);
  color: var(--v3-ink);
  text-decoration: none;
}

.live-workspace .mini-booking-stack span,
.live-workspace .mini-booking-stack small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.live-workspace .participant-detail-integration .success-hub-grid {
  margin-top: 14px;
}

.live-workspace .participant-detail-integration .panel {
  border-top: 4px solid var(--v3-blue);
}

@media (max-width: 1200px) {
  .live-workspace .integrated-command-grid {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }

  .live-workspace .session-context-strip {
    grid-template-columns: 1fr 1fr;
  }

  .live-workspace .session-context-strip > div {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  .live-workspace .integrated-command-grid,
  .live-workspace .session-context-strip {
    grid-template-columns: 1fr;
  }

  .live-workspace .management-integration .scheduling-hero-actions {
    min-width: 0;
  }
}

@media (max-width: 760px) {
  .live-workspace {
    --v3-top: 168px;
  }

  .live-workspace .suitebar {
    grid-template-columns: 1fr auto !important;
    grid-template-rows: 50px 38px 42px !important;
    padding: 8px !important;
  }

  .live-workspace .suite-brand-banner {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
  }

  .live-workspace .workspace-top-banner {
    height: 50px !important;
  }

  .live-workspace .suite-actions {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-content: flex-start !important;
  }

  .live-workspace .global-search {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    height: 40px !important;
    grid-template-columns: minmax(0, 1fr) 50px !important;
  }

  .live-workspace .suite-button,
  .live-workspace .suite-signout,
  .live-workspace .identity-name {
    display: none !important;
  }

  .live-workspace .identity.identity-photo {
    display: inline-flex !important;
  }

  .live-workspace .rail,
  .live-workspace .rail[hidden] {
    min-height: 82px !important;
    padding: 6px 10px 10px !important;
    gap: 12px !important;
  }

  .live-workspace .rail a {
    width: 50px !important;
    min-width: 50px !important;
    grid-template-rows: 34px auto !important;
  }

  .live-workspace .rail a > img,
  .live-workspace .rail a .nav-icon-badge-wrap,
  .live-workspace .rail a .nav-icon-badge-wrap > img {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
  }
}

/* Final mobile shell guardrail: this must stay after every workspace override. */
@media (max-width: 760px) {
  body:has(.live-workspace) {
    overflow-x: hidden !important;
  }

  .live-workspace {
    --v3-top: 136px !important;
    min-height: 100dvh !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: var(--v3-top) minmax(0, 1fr) 28px !important;
    overflow-x: hidden !important;
  }

  .live-workspace .suitebar {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    height: var(--v3-top) !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: 52px 34px 38px !important;
    gap: 4px 8px !important;
    padding: 8px !important;
    overflow: hidden !important;
  }

  .live-workspace .suite-brand,
  .live-workspace .suite-brand-banner {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: min(100%, 430px) !important;
    max-width: 100% !important;
    height: 52px !important;
    min-width: 0 !important;
  }

  .live-workspace .workspace-top-banner {
    width: 100% !important;
    max-width: 100% !important;
    height: 52px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .live-workspace .suite-actions {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
    width: 100% !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
  }

  .live-workspace .suite-actions .suite-button,
  .live-workspace .suite-actions .suite-signout,
  .live-workspace .suite-actions .suite-role,
  .live-workspace .suite-actions .identity strong {
    display: none !important;
  }

  .live-workspace .identity.identity-photo {
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    display: inline-flex !important;
    grid-template-rows: none !important;
  }

  .live-workspace .identity-avatar {
    width: 32px !important;
    height: 32px !important;
  }

  .live-workspace .global-search {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    max-width: none !important;
    height: 38px !important;
    grid-template-columns: minmax(0, 1fr) 48px !important;
  }

  .live-workspace .global-search span {
    display: none !important;
  }

  .live-workspace .search-action {
    width: 48px !important;
    min-height: 38px !important;
    height: 38px !important;
  }

  .live-workspace .nav-edge-toggle {
    position: fixed !important;
    top: calc(var(--v3-top) + 10px) !important;
    left: 10px !important;
    z-index: 70 !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: 0 12px 26px rgba(17, 40, 59, 0.16) !important;
  }

  .live-workspace .nav-edge-toggle img {
    width: 44px !important;
    height: 44px !important;
  }

  .live-workspace .rail {
    position: fixed !important;
    top: var(--v3-top) !important;
    left: 0 !important;
    z-index: 60 !important;
    width: min(300px, calc(100vw - 24px)) !important;
    height: calc(100dvh - var(--v3-top)) !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
    padding: 70px 8px 12px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #f7fbfc !important;
    box-shadow: 18px 0 38px rgba(17, 40, 59, 0.16) !important;
    transform: translateX(0) !important;
  }

  .live-workspace .rail[hidden],
  .live-workspace.nav-hidden .rail,
  .live-workspace.nav-collapsed .rail {
    display: none !important;
  }

  .live-workspace .rail a {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    grid-template-columns: 38px minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    justify-items: start !important;
    place-items: center start !important;
    gap: 8px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .live-workspace .rail a > img,
  .live-workspace .rail a .nav-icon-badge-wrap,
  .live-workspace .rail a .nav-icon-badge-wrap > img,
  .live-workspace .rail a.nav-icon-emphasis > img,
  .live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    min-height: 30px !important;
  }

  .live-workspace .rail span {
    max-width: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .live-workspace .canvas,
  .live-workspace .crm-main,
  .live-workspace .workspace-screen,
  .live-workspace .workspace-screen.active,
  .live-workspace.nav-hidden .canvas,
  .live-workspace.nav-collapsed .canvas {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 14px !important;
  }

  .live-workspace .portal-page-shell {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .live-workspace .portal-built-footer {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
  }
}

/* Final mobile shell guardrail: keep the signed-in workspace from becoming a
   four-row rail layout on phones. */
@media (max-width: 760px) {
  body:has(.live-workspace) {
    overflow-x: hidden !important;
  }

  .live-workspace {
    --v3-top: 136px !important;
    min-height: 100dvh !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: var(--v3-top) minmax(0, 1fr) 28px !important;
    overflow-x: hidden !important;
  }

  .live-workspace .suitebar {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    height: var(--v3-top) !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: 52px 34px 38px !important;
    gap: 4px 8px !important;
    padding: 8px !important;
    overflow: hidden !important;
  }

  .live-workspace .suite-brand,
  .live-workspace .suite-brand-banner {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: min(100%, 430px) !important;
    max-width: 100% !important;
    height: 52px !important;
    min-width: 0 !important;
  }

  .live-workspace .workspace-top-banner {
    width: 100% !important;
    max-width: 100% !important;
    height: 52px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .live-workspace .suite-actions {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
    width: 100% !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
  }

  .live-workspace .suite-actions .suite-button,
  .live-workspace .suite-actions .suite-signout,
  .live-workspace .suite-actions .suite-role,
  .live-workspace .suite-actions .identity strong {
    display: none !important;
  }

  .live-workspace .identity.identity-photo {
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    display: inline-flex !important;
    grid-template-rows: none !important;
  }

  .live-workspace .identity-avatar {
    width: 32px !important;
    height: 32px !important;
  }

  .live-workspace .global-search {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    max-width: none !important;
    height: 38px !important;
    grid-template-columns: minmax(0, 1fr) 48px !important;
  }

  .live-workspace .global-search span {
    display: none !important;
  }

  .live-workspace .search-action {
    width: 48px !important;
    min-height: 38px !important;
    height: 38px !important;
  }

  .live-workspace .nav-edge-toggle {
    position: fixed !important;
    top: calc(var(--v3-top) + 10px) !important;
    left: 10px !important;
    z-index: 70 !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: 0 12px 26px rgba(17, 40, 59, 0.16) !important;
  }

  .live-workspace .nav-edge-toggle img {
    width: 44px !important;
    height: 44px !important;
  }

  .live-workspace .rail {
    position: fixed !important;
    top: var(--v3-top) !important;
    left: 0 !important;
    z-index: 60 !important;
    width: min(300px, calc(100vw - 24px)) !important;
    height: calc(100dvh - var(--v3-top)) !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
    padding: 70px 8px 12px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #f7fbfc !important;
    box-shadow: 18px 0 38px rgba(17, 40, 59, 0.16) !important;
    transform: translateX(0) !important;
  }

  .live-workspace .rail[hidden],
  .live-workspace.nav-hidden .rail,
  .live-workspace.nav-collapsed .rail {
    display: none !important;
  }

  .live-workspace .rail a {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    grid-template-columns: 38px minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    justify-items: start !important;
    place-items: center start !important;
    gap: 8px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .live-workspace .rail a > img,
  .live-workspace .rail a .nav-icon-badge-wrap,
  .live-workspace .rail a .nav-icon-badge-wrap > img,
  .live-workspace .rail a.nav-icon-emphasis > img,
  .live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    min-height: 30px !important;
  }

  .live-workspace .rail span {
    max-width: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .live-workspace .canvas,
  .live-workspace .crm-main,
  .live-workspace .workspace-screen,
  .live-workspace .workspace-screen.active,
  .live-workspace.nav-hidden .canvas,
  .live-workspace.nav-collapsed .canvas {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 14px !important;
  }

  .live-workspace .portal-page-shell {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .live-workspace .portal-built-footer {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
  }
}

.live-workspace .assessment-report-table th,
.live-workspace .assessment-report-table td {
  white-space: normal !important;
  overflow: visible !important;
  box-shadow: none !important;
}

.live-workspace .event-code-metrics strong {
  overflow-wrap: anywhere !important;
}

.participant-form .rise-scale-option input[type="radio"] {
  min-height: 0 !important;
}

.live-workspace .overview-v3 .dashboard-carousel {
  position: relative !important;
  min-height: 260px !important;
  display: block !important;
  padding: 32px !important;
  overflow: hidden !important;
}

.live-workspace .dashboard-carousel-track {
  position: relative;
  min-height: 198px;
  z-index: 1;
}

.live-workspace .dashboard-carousel-slide {
  position: absolute;
  inset: 0;
  max-width: min(980px, 100%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  opacity: 0;
  transform: translateX(18px);
  pointer-events: none;
  transition: opacity 0.28s ease, transform 0.28s ease;
}

.live-workspace .dashboard-carousel-slide.is-active {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}

.live-workspace .dashboard-carousel-slide h1 {
  max-width: 860px;
  margin-bottom: 2px;
}

.live-workspace .dashboard-carousel-slide p:not(.label) {
  max-width: 760px;
}

.live-workspace .dashboard-carousel-nav {
  position: absolute;
  left: 32px;
  bottom: 24px;
  display: flex;
  align-items: center;
  gap: 8px;
  z-index: 2;
}

.live-workspace .dashboard-carousel-nav button {
  width: 34px;
  height: 4px;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(17, 40, 59, 0.22);
  box-shadow: none;
  cursor: pointer;
}

.live-workspace .dashboard-carousel-nav button.is-active {
  background: var(--v3-orange);
}

@media (max-width: 760px) {
  .live-workspace .overview-v3 .dashboard-carousel {
    min-height: 320px !important;
    padding: 24px !important;
  }

  .live-workspace .dashboard-carousel-track {
    min-height: 260px;
  }

  .live-workspace .dashboard-carousel-nav {
    left: 24px;
    bottom: 18px;
  }
}

/* Keep the app icons floating: no visible app-bar container or scrollbar. */
.live-workspace .rail,
.live-workspace .rail[hidden],
.live-workspace.nav-hidden .rail {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  backdrop-filter: none !important;
  scrollbar-width: none !important;
}

.live-workspace .rail::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

.live-workspace .rail a {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.live-workspace .rail a.active {
  background: transparent !important;
  border-bottom-color: var(--v3-orange) !important;
}

/* Final header alignment guard: keep account buttons centered in the banner, not pinned to the top. */
.live-workspace .suitebar {
  display: grid !important;
  grid-template-columns: minmax(430px, 52vw) minmax(360px, 1fr) !important;
  grid-template-rows: 58px 52px !important;
  align-items: center !important;
  gap: 8px 14px !important;
  min-height: 126px !important;
  height: 126px !important;
  padding: 10px 14px !important;
  overflow: hidden !important;
}

.live-workspace .suite-brand-banner {
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
  align-self: center !important;
  min-width: 0 !important;
  height: 112px !important;
}

.live-workspace .workspace-top-banner {
  height: 112px !important;
  max-width: 100% !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.live-workspace .suite-actions {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: end !important;
  justify-self: end !important;
  transform: translateY(6px) !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

.live-workspace .global-search {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;
  width: 100% !important;
  max-width: none !important;
}

@media (max-width: 1180px) {
  .live-workspace .suitebar {
    grid-template-columns: minmax(300px, 1fr) minmax(260px, auto) !important;
    grid-template-rows: 58px 52px !important;
  }

  .live-workspace .suite-actions {
    transform: translateY(4px) !important;
  }
}

@media (max-width: 760px) {
  .live-workspace .suitebar {
    grid-template-columns: 1fr !important;
    grid-template-rows: 54px 38px 42px !important;
    height: 150px !important;
    min-height: 150px !important;
  }

  .live-workspace .suite-brand-banner {
    grid-column: 1 !important;
    grid-row: 1 !important;
    height: 54px !important;
  }

  .live-workspace .workspace-top-banner {
    height: 54px !important;
  }

  .live-workspace .suite-actions {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: start !important;
    transform: none !important;
  }

  .live-workspace .global-search {
    grid-column: 1 !important;
    grid-row: 3 !important;
  }
}

@media print {
  @page {
    margin: 0.45in;
  }

  body,
  .live-workspace {
    background: #fff !important;
  }

  .no-print,
  .suitebar,
  .rail,
  .mobile-bottom-nav,
  .site-footer {
    display: none !important;
  }

  .workspace-main,
  .live-workspace .workspace-main {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }

  .print-report-shell {
    border: 0;
    padding: 0;
  }

  .print-report-header {
    break-after: avoid;
  }

  .print-summary-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .print-two-column,
  .print-participant-cards {
    grid-template-columns: repeat(2, 1fr);
  }

  .page-break-avoid,
  .print-report-section {
    break-inside: avoid;
  }

  .print-roster-table {
    font-size: 11px;
  }
}

@media (max-width: 980px) {
  .live-workspace .agreement-command-grid {
    grid-template-columns: 1fr;
  }
}

.live-workspace .nav-edge-toggle {
  position: fixed;
  top: calc(var(--v3-top) + 10px);
  left: 10px;
  z-index: 41;
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin: 0;
  padding: 0;
  border: 1px solid var(--v3-line);
  background: #fff;
  box-shadow: 0 12px 28px rgba(17, 40, 59, 0.15);
  transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease, background 160ms ease;
}

.live-workspace .nav-edge-toggle:hover,
.live-workspace .nav-edge-toggle:focus-visible {
  background: #fff3ec;
}

.live-workspace .nav-edge-toggle img {
  width: 50px;
  height: 50px;
  object-fit: contain;
}

.live-workspace.nav-toggle-dormant .nav-edge-toggle {
  opacity: 0;
  pointer-events: none;
  transform: translateX(-16px);
  visibility: hidden;
}

.live-workspace .rail {
  display: none !important;
  grid-column: 1;
  grid-row: 2;
  position: sticky;
  top: var(--v3-top);
  height: calc(100vh - var(--v3-top) - 28px);
  overflow-x: hidden;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 1px;
  padding: 52px 7px 8px;
  border-right: 1px solid var(--v3-line);
  background: #f7fbfc;
}

.live-workspace .rail a {
  min-height: 36px;
  display: grid;
  place-items: center;
  gap: 1px;
  border-left: 3px solid transparent;
  color: #0f172a;
  text-decoration: none;
  font-size: 9.4px;
  font-weight: 650;
}

.live-workspace .rail a.active {
  background: #fff3ec;
  border-left-color: var(--v3-orange);
}

.live-workspace .rail img,
.live-workspace .rail .nav-icon-badge-wrap > img {
  width: 25px;
  height: 25px;
  object-fit: contain;
}

.live-workspace .rail a.nav-icon-emphasis > img,
.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
  width: 26px;
  height: 26px;
}

.live-workspace .rail a.nav-brand-link > img {
  width: 26px;
  height: 26px;
}

.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap {
  width: 28px;
  height: 28px;
}

.live-workspace .rail span {
  max-width: 66px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.live-workspace .rail::-webkit-scrollbar {
  width: 6px;
}

.live-workspace .rail::-webkit-scrollbar-thumb {
  background: rgba(17, 40, 59, 0.18);
}

.live-workspace.nav-collapsed {
  grid-template-columns: minmax(0, 1fr);
}

.live-workspace.nav-collapsed .rail {
  opacity: 0;
  pointer-events: none;
  transform: translateX(-100%);
}

.live-workspace.nav-collapsed .canvas {
  grid-column: 1 / -1;
}

.live-workspace.nav-collapsed .nav-edge-toggle {
  position: fixed;
  top: calc(var(--v3-top) + 10px);
  left: 12px;
  z-index: 40;
}

.live-workspace .canvas {
  grid-column: 1 / -1;
  grid-row: 2;
  min-width: 0;
  width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 22px;
}

.portal-social-links {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

.portal-social-links a {
  padding: 2px 8px;
  border: 1px solid var(--v3-line);
  background: #fff;
  color: var(--v3-navy);
  font-weight: 650;
  text-decoration: none;
}

.portal-social-links a:hover,
.portal-social-links a:focus-visible {
  border-color: var(--v3-orange);
  color: var(--v3-orange);
}

.social-page-grid {
  grid-template-columns: minmax(360px, 0.8fr) minmax(520px, 1.2fr);
}

.social-page-form textarea,
.social-post-form textarea {
  min-height: 110px;
}

.social-table td,
.social-table th {
  vertical-align: top;
}

.social-table small {
  color: var(--v3-muted);
}

.social-graphic-preview-link {
  display: inline-grid;
  gap: 6px;
  align-items: start;
  color: var(--v3-blue);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.social-graphic-preview {
  display: block;
  width: 88px;
  height: 88px;
  object-fit: cover;
  border: 1px solid var(--v3-line);
  background: #fff;
}

.live-workspace .portal-page-shell {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  background: transparent;
}

.live-workspace .portal-built-footer {
  grid-column: 1 / -1;
  grid-row: 3;
  min-height: 28px;
  display: grid;
  place-items: center;
  border-top: 1px solid var(--v3-line);
  background: rgba(255, 255, 255, 0.86);
  color: var(--v3-muted);
  font-size: 12px;
}

.live-workspace h1,
.live-workspace h2,
.live-workspace h3 {
  margin-top: 0;
  color: var(--v3-ink);
  font-family: "Segoe UI Variable Display", "Segoe UI Variable Text", "Segoe UI", system-ui, sans-serif;
  font-weight: 640;
  letter-spacing: 0;
}

.live-workspace h1 {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.08;
}

.live-workspace h2 {
  font-size: 17px;
}

.live-workspace p {
  color: #354254;
  line-height: 1.45;
}

.live-workspace .label,
.live-workspace .kicker,
.live-workspace .eyebrow,
.live-workspace .section-kicker {
  margin: 0 0 6px;
  color: var(--v3-navy);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.live-workspace .overview-hero-v3 .dashboard-greeting-label {
  display: block;
  margin: 0 0 14px;
  color: var(--v3-ink);
  font-size: 30px;
  line-height: 1.08;
  font-weight: 650;
  letter-spacing: 0;
  text-transform: none;
}

.overview-v3 {
  display: grid;
  gap: 16px;
}

.overview-v3 a {
  text-decoration: none;
}

.overview-v3 .advanced-hero,
.overview-hero-v3 {
  min-height: 300px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  align-items: center;
  gap: 32px;
  padding: 32px;
  margin: 0;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(17, 40, 59, 0.12);
  background: linear-gradient(110deg, #fff 0%, #fff 58%, #d9edf2 100%);
  box-shadow: 0 18px 50px rgba(17, 40, 59, 0.08);
}

.overview-v3 .advanced-hero::after,
.overview-hero-v3::after {
  content: "";
  position: absolute;
  inset: auto -90px -130px auto;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(184, 88, 48, 0.22), transparent 66%);
  pointer-events: none;
}

.overview-hero-v3 h1 {
  max-width: 980px;
  margin: 0 0 12px;
  font-weight: 640;
}

.overview-hero-v3 p:not(.label) {
  max-width: 920px;
  margin: 0;
  color: #405064;
  font-size: 15px;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.rise-action,
.live-workspace .button,
.live-workspace button,
.live-workspace input[type="submit"] {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border: 1px solid var(--v3-line);
  background: #fff;
  color: var(--v3-ink);
  text-decoration: none;
  font-weight: 650;
  cursor: pointer;
}

.rise-action.primary,
.live-workspace .primary {
  border-color: var(--v3-orange);
  background: var(--v3-orange);
  color: #fff;
}

.rise-action.small {
  min-height: 30px;
  font-size: 12px;
}

.signal-card {
  position: relative;
  z-index: 1;
  min-height: 232px;
  display: grid;
  align-content: center;
  gap: 14px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.8);
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 28px 60px rgba(15, 23, 42, 0.14);
}

.signal-ring {
  width: 104px;
  height: 104px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #fff 0 54%, transparent 55%),
    conic-gradient(var(--v3-teal) 0 var(--score, 92%), #d9edf2 var(--score, 92%) 100%);
  color: var(--v3-ink);
  font-size: 30px;
  font-weight: 700;
}

.signal-card strong,
.signal-card small {
  display: block;
  text-align: center;
}

.signal-card small {
  max-width: 230px;
}

.focus-card {
  text-align: left;
}

.focus-summary {
  display: flex;
  align-items: center;
  gap: 14px;
}

.focus-count {
  width: 64px;
  height: 64px;
  flex: 0 0 64px;
  display: grid;
  place-items: center;
  border-left: 5px solid var(--v3-orange);
  background: #fff;
  color: var(--v3-ink);
  font-size: 30px;
  font-weight: 750;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

.focus-card strong,
.focus-card small {
  display: block;
}

.focus-card small {
  max-width: none;
  color: var(--v3-muted);
}

.focus-list {
  display: grid;
  gap: 8px;
}

.focus-list a,
.focus-empty {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  padding: 9px 10px;
  border: 1px solid var(--v3-line);
  background: rgba(248, 251, 252, 0.92);
  color: var(--v3-ink);
  text-decoration: none;
}

.focus-list a span {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  min-height: 28px;
  background: #e7f2f0;
  color: var(--v3-teal);
  font-weight: 800;
}

.focus-list a.danger span,
.focus-list a.orange span {
  background: #fff0e9;
  color: var(--v3-orange);
}

.focus-list a.green span {
  background: #e8f4ef;
  color: #14733f;
}

.focus-list a.blue span {
  background: #e7f0fb;
  color: #0f65ad;
}

.focus-list a strong {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.focus-list a small {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.focus-empty {
  grid-template-columns: 1fr;
  color: var(--v3-teal);
  font-weight: 750;
  text-align: center;
}

.insight-row,
.priority-strip {
  display: grid;
  gap: 14px;
}

.insight-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.insight-row a,
.insight-row article {
  min-height: 96px;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--v3-line);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}

.insight-icon {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  display: grid;
  place-items: center;
  color: #fff;
  background: var(--v3-teal);
  font-weight: 800;
}

.insight-icon.blue { background: var(--v3-black); }
.insight-icon.green { background: var(--v3-teal); }
.insight-icon.orange { background: var(--v3-orange); }

.insight-row strong,
.insight-row small {
  display: block;
}

.insight-row small {
  margin-top: 4px;
  color: #526174;
}

.priority-strip {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.priority-card,
.priority-strip article {
  min-height: 132px;
  display: grid;
  align-content: start;
  gap: 8px;
  padding: 18px;
  border: 1px solid var(--v3-line);
  border-top: 5px solid var(--v3-navy);
  background: rgba(255, 255, 255, 0.92);
}

.priority-card.danger,
.priority-strip .danger {
  border-top-color: var(--v3-red);
}

.priority-card.green,
.priority-strip .green {
  border-top-color: var(--v3-teal);
}

.priority-card.orange,
.priority-strip .orange {
  border-top-color: var(--v3-gold);
}

.priority-card span,
.priority-card small,
.priority-strip span,
.priority-strip small {
  color: var(--v3-muted);
  font-weight: 650;
}

.priority-card strong,
.priority-strip strong {
  color: #08233f;
  font-size: 38px;
  line-height: 1;
  font-weight: 650;
}

.workbench,
.executive-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
  gap: 16px;
}

.module-card,
.strategy-card,
.detail-pane,
.record-list,
.filter-card,
.attio-panel,
.admin-section,
.compact-list-panel {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--v3-line);
  background: rgba(255, 255, 255, 0.92);
  border-radius: 0;
  box-shadow: 0 12px 30px rgba(17, 40, 59, 0.05);
}

.card-head,
.module-title,
.pane-head,
.attio-panel-title,
.admin-section-header,
.section-heading-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.module-title {
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--v3-line);
}

.timeline {
  display: grid;
  gap: 8px;
}

.timeline a,
.timeline button {
  min-height: 64px;
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--v3-line);
  background: #fff;
  text-align: left;
}

.timeline b {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--v3-teal);
}

.timeline span,
.timeline small {
  display: block;
}

.timeline small {
  color: var(--v3-muted);
  margin-top: 3px;
}

.timeline em {
  color: var(--v3-muted);
  font-style: normal;
  font-weight: 650;
}

.quick-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.quick-grid a,
.quick-grid button {
  min-height: 52px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  text-align: left;
}

.program-map {
  min-height: 130px;
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto 1fr auto;
  align-items: center;
  gap: 8px;
}

.program-map .node,
.node {
  min-width: 96px;
  min-height: 48px;
  display: grid;
  place-items: center;
  padding: 0 10px;
  border: 1px solid var(--v3-line);
  background: #fff;
  font-weight: 650;
}

.program-map .node.strong,
.node.strong {
  border-color: rgba(184, 88, 48, 0.26);
  background: #fff3ec;
  color: #7c2d12;
}

.program-map .line,
.line {
  height: 2px;
  background: linear-gradient(90deg, var(--v3-orange), var(--v3-teal));
}

.snapshot-grid,
.mini-metric-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.snapshot-grid span,
.mini-metric-grid span {
  min-height: 64px;
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--v3-line);
  background: #fff;
  color: var(--v3-muted);
  font-weight: 650;
}

.snapshot-grid strong,
.mini-metric-grid strong {
  color: var(--v3-ink);
  font-size: 24px;
}

.app-dock {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(112px, 1fr));
  border: 1px solid var(--v3-line);
  background: #fff;
}

.app-dock a,
.app-dock button {
  min-height: 86px;
  display: grid;
  place-items: center;
  gap: 3px;
  padding: 10px 8px;
  border: 0;
  border-right: 1px solid var(--v3-line);
  background: #fff;
  color: var(--v3-ink);
  text-align: center;
  text-decoration: none;
}

.app-dock a:last-child,
.app-dock button:last-child {
  border-right: 0;
}

.app-dock img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.app-dock span,
.app-dock small {
  max-width: 180px;
  display: block;
}

.app-dock span {
  font-weight: 700;
}

.app-dock small {
  color: var(--v3-muted);
  line-height: 1.3;
}

.live-workspace .collection-toolbar,
.live-workspace .collection-search,
.live-workspace .filter-tabs,
.live-workspace .view-tabs,
.live-workspace .status-tabs,
.live-workspace .search-row,
.live-workspace .toolbar {
  min-width: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.live-workspace input,
.live-workspace select,
.live-workspace textarea {
  max-width: 100%;
  min-height: 34px;
  border: 1px solid #aab4c3;
  border-radius: 0;
  background: #fff;
}

.live-workspace .collection-table-wrap,
.live-workspace .compact-table-wrap,
.live-workspace .table-scroll {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  border: 1px solid var(--v3-line);
  background: #fff;
}

.live-workspace table,
.live-workspace .collection-table,
.live-workspace .compact-table,
.live-workspace .table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
  border-collapse: collapse;
  background: #fff;
}

.live-workspace th,
.live-workspace td,
.live-workspace .collection-table th,
.live-workspace .collection-table td,
.live-workspace .compact-table th,
.live-workspace .compact-table td {
  padding: 10px 12px;
  border: 1px solid #e5e7eb;
  color: #172033;
  text-align: left;
  vertical-align: top;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.live-workspace th,
.live-workspace .collection-table th,
.live-workspace .compact-table th {
  background: #f8fbfc;
  color: #08233f;
  font-weight: 800;
}

.table-col-resizer {
  position: absolute;
  top: 0;
  right: -4px;
  z-index: 4;
  width: 8px;
  height: 100%;
  cursor: col-resize;
}

/* Scheduling Studio promoted into the V3 workspace shell. */
.live-workspace .scheduling-studio {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.live-workspace .scheduling-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: start;
  padding: 26px 30px;
  border: 1px solid var(--v3-line);
  background:
    linear-gradient(120deg, rgba(255,255,255,0.96), rgba(232, 246, 249, 0.88)),
    #fff;
  box-shadow: 0 18px 42px rgba(17, 40, 59, 0.08);
}

.live-workspace .scheduling-hero .kicker {
  margin-bottom: 8px;
  color: #0f67a5;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.live-workspace .scheduling-hero h1 {
  max-width: 880px;
  margin: 0;
  color: #08233f;
  font-size: clamp(24px, 3vw, 38px);
  line-height: 1.08;
}

.live-workspace .scheduling-hero p {
  max-width: 850px;
  margin: 12px 0 0;
  color: #425268;
  font-size: 15px;
  line-height: 1.55;
}

.live-workspace .scheduling-hero-actions {
  display: flex;
  justify-content: flex-end;
}

.live-workspace .schedule-command-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}

.live-workspace .schedule-command-card {
  min-height: 112px;
  display: grid;
  align-content: start;
  gap: 6px;
  padding: 16px;
  border: 1px solid var(--v3-line);
  border-top: 5px solid var(--v3-navy);
  background: rgba(255,255,255,0.92);
}

.live-workspace .schedule-command-card span,
.live-workspace .schedule-command-card small {
  color: #526174;
  font-weight: 700;
}

.live-workspace .schedule-command-card strong {
  color: #08233f;
  font-size: 30px;
  line-height: 1;
}

.live-workspace .schedule-filter-panel,
.live-workspace .schedule-work-grid > .attio-panel,
.live-workspace .schedule-detail-grid > .attio-panel,
.live-workspace .schedule-side-panel {
  border: 1px solid var(--v3-line);
  background: rgba(255,255,255,0.92);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}

.live-workspace .schedule-filter-panel {
  padding: 14px;
}

.live-workspace .schedule-filter-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) minmax(160px, 0.7fr) minmax(160px, 0.7fr) auto auto;
  gap: 12px;
  align-items: end;
}

.live-workspace .schedule-filter-grid label {
  display: grid;
  gap: 6px;
  color: #08233f;
  font-weight: 700;
}

.live-workspace .schedule-filter-grid .inline-check {
  display: flex;
  align-items: center;
  min-height: 38px;
}

.live-workspace .schedule-filter-actions {
  display: flex;
  gap: 8px;
}

.live-workspace .schedule-type-panel {
  display: grid;
  grid-template-columns: minmax(220px, 0.8fr) minmax(280px, 1.4fr) minmax(280px, 0.9fr);
  gap: 12px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--v3-line);
  background: rgba(255,255,255,0.92);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}

.live-workspace .schedule-type-panel h2 {
  margin: 0 0 4px;
  color: #08233f;
  font-size: 18px;
}

.live-workspace .schedule-type-panel p {
  margin: 0;
  color: var(--v3-muted);
  font-size: 12px;
  line-height: 1.35;
}

.live-workspace .schedule-type-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.live-workspace .schedule-type-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 3px 5px 3px 10px;
  border: 1px solid var(--v3-line);
  background: #f8fbfc;
  color: #08233f;
  font-size: 12px;
  font-weight: 800;
}

.live-workspace .schedule-type-chip .icon-close-button {
  width: 22px;
  height: 22px;
  min-height: 22px;
  padding: 0;
  font-size: 12px;
}

.live-workspace .schedule-type-add {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.live-workspace .schedule-work-grid,
.live-workspace .schedule-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.32fr);
  gap: 16px;
  min-width: 0;
}

.live-workspace .schedule-panel-wide {
  min-width: 0;
}

.live-workspace .schedule-table th,
.live-workspace .schedule-table td {
  font-size: 12px;
}

.live-workspace .record-actions,
.live-workspace .schedule-link-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.live-workspace .schedule-link-stack > div {
  min-width: 100%;
}

.live-workspace .official-link-field {
  width: 100%;
  margin: 8px 0 2px;
  font-size: 12px;
  color: var(--v3-ink);
  background: #f8fafc;
  border: 1px solid var(--v3-line);
}

.live-workspace .smtp-settings-grid .muted-note {
  color: var(--v3-muted);
}

.live-workspace .partner-schedule .schedule-work-grid {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.32fr);
}

@media (max-width: 1180px) {
  .live-workspace .schedule-type-panel {
    grid-template-columns: 1fr;
  }
}

.live-workspace .priority-strip {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

/* Brand Center */
.live-workspace .brand-center-header .object-subtitle {
  margin: 6px 0 0;
  color: var(--v3-muted);
}

.live-workspace .brand-upload-form {
  width: min(760px, 86vw);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.live-workspace .brand-upload-form .full {
  grid-column: 1 / -1;
}

.live-workspace .brand-library-grid {
  display: grid;
  grid-template-columns: minmax(260px, 0.25fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.live-workspace .brand-assets-pane,
.live-workspace .brand-asset-card,
.live-workspace .brand-asset-body {
  min-width: 0;
}

.live-workspace .brand-guidelines-panel {
  position: sticky;
  top: 12px;
}

.live-workspace .brand-guideline {
  border-top: 1px solid var(--v3-line);
  padding: 12px 0;
}

.live-workspace .brand-guideline summary {
  cursor: pointer;
  color: #08233f;
  font-weight: 700;
}

.live-workspace .brand-guideline textarea {
  width: 100%;
  margin: 10px 0;
  resize: vertical;
}

.live-workspace .brand-asset-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  gap: 14px;
}

.live-workspace .brand-asset-card {
  display: grid;
  grid-template-columns: 148px minmax(0, 1fr);
  gap: 14px;
  padding: 14px;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid var(--v3-line);
  box-shadow: 0 16px 34px rgba(17, 40, 59, 0.08);
}

.live-workspace .brand-asset-preview {
  min-height: 132px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(217, 237, 242, 0.75), #fff);
  border: 1px solid #d5e3ea;
}

.live-workspace .brand-asset-preview img {
  width: 100%;
  height: 132px;
  object-fit: contain;
  padding: 10px;
}

.live-workspace .brand-asset-preview span {
  color: var(--v3-navy);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.live-workspace .brand-asset-card h2,
.live-workspace .domain-card h2,
.live-workspace .brand-signature-panel h2 {
  margin: 0;
  font-size: 18px;
}

.live-workspace .brand-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 10px 0;
}

.live-workspace .brand-tags span {
  padding: 4px 7px;
  background: #e7f2f0;
  color: var(--v3-teal);
  border: 1px solid #cae2dc;
  font-size: 11px;
  font-weight: 700;
}

.live-workspace .brand-asset-card dl,
.live-workspace .brand-domain-readonly {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  gap: 7px 10px;
  margin: 10px 0;
}

.live-workspace .brand-asset-card dt,
.live-workspace .brand-domain-readonly dt {
  color: var(--v3-muted);
  font-weight: 800;
}

.live-workspace .brand-asset-card dd,
.live-workspace .brand-domain-readonly dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
}

.live-workspace .brand-two-column,
.live-workspace .brand-email-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.live-workspace .brand-email-layout {
  align-items: start;
}

.live-workspace .signature-preview {
  padding: 18px;
  margin: 12px 0;
  background: #fff;
  border: 1px solid var(--v3-line);
}

.live-workspace .brand-signature-panel textarea {
  width: 100%;
  font-family: Consolas, "Courier New", monospace;
  font-size: 12px;
}

.live-workspace .smartermail-sync-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  padding: 14px;
  border: 1px solid #b7d7e5;
  border-left: 4px solid var(--v3-blue);
  background: #f7fcff;
}

.live-workspace .smartermail-sync-card strong {
  color: var(--v3-navy);
}

.live-workspace .smartermail-sync-card .muted-copy {
  margin: 3px 0 8px;
}

.live-workspace .smartermail-sync-card label {
  margin: 0;
}

.live-workspace .brand-checklist {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.live-workspace .brand-checklist span {
  padding: 10px 12px;
  background: #f8fbfc;
  border-left: 4px solid var(--v3-teal);
}

.live-workspace .domain-card {
  min-width: 0;
}

.live-workspace .domain-form {
  margin-top: 12px;
}

.live-workspace .director-email-settings {
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
}

.live-workspace .director-client-panel {
  grid-column: 1 / -1;
}

.live-workspace .client-identity-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.live-workspace .client-identity-strip > div {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 8px;
  align-items: center;
  padding: 12px;
  background: linear-gradient(135deg, #f8fbfc, #ffffff);
  border: 1px solid var(--v3-line);
}

.live-workspace .client-identity-strip span {
  grid-column: 1 / -1;
  color: var(--v3-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.live-workspace .client-identity-strip code,
.live-workspace .mail-setting-card code,
.live-workspace .director-device-steps code {
  color: #0f3b57;
  font-family: "Cascadia Mono", Consolas, "Courier New", monospace;
  font-size: 12px;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.live-workspace .copy-value {
  min-height: 28px;
  padding: 0 9px;
  border-color: #d7c19e;
  background: #fff7ed;
  color: #8f3c17;
  font-size: 12px;
  font-weight: 800;
}

.live-workspace .copy-value:hover,
.live-workspace .copy-value:focus-visible {
  background: var(--v3-orange);
  color: #ffffff;
}

.live-workspace .mail-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.live-workspace .mail-setting-card {
  min-width: 0;
  padding: 14px;
  background: #ffffff;
  border: 1px solid var(--v3-line);
  border-top: 4px solid var(--v3-orange);
}

.live-workspace .mail-setting-card:nth-child(2) {
  border-top-color: var(--v3-teal);
}

.live-workspace .mail-setting-card:nth-child(3) {
  border-top-color: var(--v3-gold);
}

.live-workspace .mail-setting-card:nth-child(4) {
  border-top-color: #4a8f52;
}

.live-workspace .mail-setting-card h3 {
  margin: 0 0 10px;
  color: var(--v3-navy);
  font-size: 16px;
}

.live-workspace .mail-setting-card dl {
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr);
  gap: 7px 12px;
  margin: 0;
}

.live-workspace .mail-setting-card dt {
  color: var(--v3-muted);
  font-size: 12px;
  font-weight: 800;
}

.live-workspace .mail-setting-card dd {
  min-width: 0;
  margin: 0;
  color: var(--v3-ink);
  font-weight: 650;
  overflow-wrap: anywhere;
}

.live-workspace .director-device-steps {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
  padding: 10px 12px;
  background: #fffaf0;
  border: 1px solid #ead6ab;
  color: #4a3413;
}

.live-workspace .director-device-steps strong {
  color: #8f3c17;
  font-weight: 900;
}

.live-workspace .director-device-steps span {
  min-width: 190px;
  flex: 1 1 220px;
  line-height: 1.35;
}

@media (max-width: 1340px) {
  .live-workspace {
    --v3-top: 126px;
  }

  .live-workspace .suite-brand {
    flex-basis: 500px;
    min-width: 300px;
  }

  .live-workspace .workspace-top-banner {
    height: 92px;
  }

  .live-workspace .suite-actions .identity strong {
    display: none;
  }
}

@media (max-width: 1080px) {
  .live-workspace {
    --v3-top: 132px;
  }

  .live-workspace .suitebar {
    display: grid;
    grid-template-columns: minmax(320px, 1fr) minmax(260px, 0.9fr);
    grid-template-rows: 38px 42px;
    align-content: center;
  }

  .live-workspace .suite-brand {
    grid-column: 1;
    grid-row: 1 / 3;
    width: 100%;
    height: 96px;
  }

  .live-workspace .workspace-top-banner {
    height: 96px;
  }

  .live-workspace .suite-actions {
    grid-column: 2;
    grid-row: 1;
    justify-content: flex-start;
    overflow: hidden;
  }

  .live-workspace .global-search {
    grid-column: 2;
    grid-row: 2;
    max-width: none;
  }

  .overview-v3 .advanced-hero,
  .overview-hero-v3,
  .workbench,
  .executive-grid,
  .brand-library-grid,
  .brand-two-column,
  .brand-email-layout {
    grid-template-columns: 1fr;
  }

  .live-workspace .client-identity-strip,
  .live-workspace .mail-settings-grid {
    grid-template-columns: 1fr;
  }

  .live-workspace .brand-guidelines-panel {
    position: static;
  }

  .insight-row,
  .priority-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .live-workspace {
    --v3-rail: 0;
    --v3-top: 126px;
    grid-template-columns: minmax(0, 1fr);
  }

  .live-workspace .suitebar {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 44px 32px 38px;
    padding: 8px;
  }

  .live-workspace .suite-brand {
    grid-column: 1;
    grid-row: 1;
    width: min(420px, 72vw);
    height: 44px;
    min-width: 0;
  }

  .live-workspace .workspace-top-banner {
    height: 44px;
  }

  .live-workspace .suite-actions {
    grid-column: 1;
    grid-row: 2;
  }

  .live-workspace .suite-actions .suite-signout,
  .live-workspace .suite-actions .identity strong {
    display: none;
  }

.live-workspace .global-search {
    grid-column: 1;
    grid-row: 3;
    min-width: 0;
    height: 38px;
    grid-template-columns: minmax(0, 1fr) 50px;
  }

  .live-workspace .global-search span {
    display: none;
  }

  .live-workspace .search-action {
    min-height: 38px;
    height: 38px;
  }

  .live-workspace .rail {
    position: fixed;
    top: var(--v3-top);
    left: 0;
    z-index: 35;
    width: 76px;
    height: calc(100vh - var(--v3-top));
    transform: translateX(-100%);
    box-shadow: 18px 0 38px rgba(17, 40, 59, 0.16);
  }

  .live-workspace:not(.nav-collapsed) .rail {
    transform: translateX(0);
  }

  .live-workspace .nav-edge-toggle {
    position: fixed;
    top: calc(var(--v3-top) + 10px);
    left: 8px;
    z-index: 40;
  }

  .live-workspace .canvas,
  .live-workspace.nav-collapsed .canvas {
    grid-column: 1;
    padding: 16px;
  }

  .insight-row,
  .priority-strip,
  .snapshot-grid,
  .quick-grid,
  .brand-asset-grid {
    grid-template-columns: 1fr;
  }

  .live-workspace .brand-asset-card {
    grid-template-columns: 1fr;
  }

  .program-map {
    grid-template-columns: 1fr;
  }

.program-map .line {
    display: none;
  }
}

/* Header and profile polish requested after the V3 rollout. */
.live-workspace .global-search {
  flex: 1 1 560px;
  max-width: none;
}

.live-workspace {
  --v3-top: 150px;
}

.live-workspace .suitebar {
  min-height: var(--v3-top);
  align-items: center;
}

.live-workspace .suite-brand {
  flex: 0 1 820px;
  min-width: 520px;
  height: 122px;
}

.live-workspace .workspace-top-banner {
  width: 100%;
  height: 122px;
  object-fit: contain !important;
  object-position: left center;
}

.live-workspace .suite-actions {
  flex: 0 0 auto;
  min-width: 0;
}

.live-workspace .suite-brand,
.live-workspace .suite-brand-banner,
.live-workspace .identity {
  min-width: 0;
}

.live-workspace .identity strong {
  max-width: 156px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.live-workspace .identity-avatar {
  width: 50px;
  height: 50px;
  border: 2px solid rgba(255, 255, 255, 0.46);
}

.live-workspace .identity-avatar.no-photo span {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
}

.profile-page {
  display: grid;
  gap: 18px;
}

.profile-hero,
.profile-edit-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.profile-hero-identity {
  display: flex;
  align-items: center;
  gap: 18px;
  min-width: 0;
}

.profile-hero-photo {
  width: 104px;
  height: 104px;
  flex: 0 0 104px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--v3-line);
  background: #f7fbfc;
  color: var(--v3-navy);
  font-size: 24px;
  font-weight: 720;
}

.profile-hero-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile-hero h1,
.profile-edit-header h1 {
  margin: 0 0 8px;
}

.profile-hero p,
.profile-edit-header p {
  margin: 0;
  color: #405064;
}

.profile-hero-actions,
.profile-form-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.profile-status {
  margin: 0;
}

.profile-detail-grid,
.profile-edit-grid {
  display: grid;
  gap: 16px;
  align-items: start;
}

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

.profile-edit-grid {
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
}

.profile-detail-card-wide {
  grid-column: 1 / -1;
}

.profile-field-list {
  display: grid;
  gap: 10px;
  margin: 0;
}

.profile-field-list div {
  display: grid;
  grid-template-columns: minmax(130px, 0.35fr) minmax(0, 1fr);
  gap: 14px;
  padding: 12px 0;
  border-top: 1px solid var(--v3-line);
}

.profile-field-list div:first-child {
  border-top: 0;
}

.profile-field-list dt {
  color: #637386;
  font-size: 12px;
  font-weight: 720;
}

.profile-field-list dd {
  margin: 0;
  color: var(--v3-ink);
  overflow-wrap: anywhere;
}

.profile-address {
  margin: 0;
  color: var(--v3-ink);
  line-height: 1.6;
}

.profile-photo-panel {
  align-items: start;
}

.profile-photo-preview,
.profile-photo-placeholder {
  width: 132px;
  height: 132px;
}

.profile-photo-cropper {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  margin-top: 10px;
  padding: 14px;
  border: 1px solid var(--v3-line);
  background: #f8fbfc;
}

.profile-photo-cropper[hidden] {
  display: none;
}

.profile-crop-stage {
  width: 240px;
  height: 240px;
  display: grid;
  place-items: center;
  border: 1px solid var(--v3-line);
  background:
    linear-gradient(45deg, #eef3f4 25%, transparent 25%),
    linear-gradient(-45deg, #eef3f4 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, #eef3f4 75%),
    linear-gradient(-45deg, transparent 75%, #eef3f4 75%),
    #fff;
  background-size: 20px 20px;
  background-position: 0 0, 0 10px, 10px -10px, -10px 0;
}

.profile-crop-stage canvas {
  width: 226px;
  height: 226px;
  display: block;
  border-radius: 50%;
}

.profile-crop-controls {
  display: grid;
  gap: 12px;
}

.profile-crop-controls label {
  display: grid;
  gap: 5px;
  color: var(--v3-ink);
  font-weight: 700;
}

.profile-crop-controls input[type="range"] {
  width: 100%;
  accent-color: var(--v3-teal);
}

@media (max-width: 900px) {
  .profile-hero,
  .profile-edit-header {
    display: grid;
    justify-items: start;
  }

  .profile-hero-actions,
  .profile-form-actions {
    width: 100%;
    justify-content: stretch;
  }

  .profile-hero-actions .button,
  .profile-form-actions .button,
  .profile-form-actions button {
    flex: 1 1 160px;
  }

  .profile-detail-grid,
  .profile-edit-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .profile-hero-identity {
    align-items: flex-start;
  }

  .profile-hero-photo {
    width: 78px;
    height: 78px;
    flex-basis: 78px;
    font-size: 18px;
  }

  .profile-field-list div {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

@media (max-width: 1340px) {
  .live-workspace {
    --v3-top: 132px;
  }

  .live-workspace .suite-brand {
    flex-basis: 560px;
    min-width: 360px;
    height: 104px;
  }

  .live-workspace .workspace-top-banner {
    height: 104px;
  }

  .live-workspace .global-search {
    flex-basis: 420px;
  }

  .live-workspace .identity-avatar {
    width: 46px;
    height: 46px;
  }
}

/* V3 approved shell polish. Keep at the end of the shell section so older rebuild
   experiments cannot pull the header, profile block, or app launcher backward. */
.live-workspace {
  --v3-top: 126px;
}

.live-workspace .suitebar {
  display: grid;
  grid-template-columns: minmax(430px, 0.72fr) minmax(420px, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 0 14px;
}

.live-workspace .suite-brand {
  width: 100%;
  min-width: 0;
  max-width: 760px;
  height: 112px;
}

.live-workspace .workspace-top-banner {
  height: 112px;
  object-fit: contain !important;
  object-position: left center;
}

.live-workspace .global-search {
  width: 100%;
  min-width: 0;
  max-width: none;
  height: 48px;
  grid-template-columns: 82px minmax(0, 1fr) 62px;
}

.live-workspace .search-action {
  min-height: 48px;
  height: 48px;
}

.live-workspace .suite-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: end;
  min-width: max-content;
}

.live-workspace .identity.identity-photo {
  width: 74px;
  min-width: 74px;
  display: grid;
  grid-template-rows: 58px auto;
  place-items: center;
  gap: 3px;
  padding: 0;
  overflow: visible;
  text-align: center;
}

.live-workspace .identity.identity-photo .identity-avatar {
  width: 58px;
  height: 58px;
  border: 0;
  box-shadow: none;
  background: #fff;
}

.live-workspace .identity.identity-photo strong {
  max-width: 84px;
  display: block;
  color: #fff;
  font-size: 11px;
  line-height: 1.05;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.live-workspace .nav-edge-toggle {
  top: calc(var(--v3-top) + 12px);
  left: 12px;
  width: 58px;
  height: 58px;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.live-workspace .nav-edge-toggle:hover,
.live-workspace .nav-edge-toggle:focus-visible {
  background: transparent;
}

.live-workspace .nav-edge-toggle img {
  width: 52px;
  height: 52px;
}

.live-workspace .launcher.open {
  top: var(--v3-top);
  left: 0;
  right: 0;
  max-width: none;
  max-height: none;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
  padding: 10px 12px 12px 88px;
  border-left: 0;
  border-right: 0;
}

.live-workspace .launcher a {
  min-height: 54px;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 8px;
  padding: 8px 9px;
}

.live-workspace .launcher img {
  width: 30px;
  height: 30px;
}

.insight-icon.icon-card {
  border: 1px solid var(--v3-line);
  background: #fff;
  color: inherit;
}

.insight-icon.icon-card img {
  width: 36px;
  height: 36px;
  object-fit: contain;
}

@media (max-width: 1180px) {
  .live-workspace {
    --v3-top: 118px;
  }

  .live-workspace .suitebar {
    grid-template-columns: minmax(330px, 0.62fr) minmax(300px, 1fr) auto;
    gap: 8px;
  }

  .live-workspace .suite-brand,
  .live-workspace .workspace-top-banner {
    height: 104px;
  }

  .live-workspace .suite-button {
    padding-inline: 9px;
  }
}

@media (max-width: 860px) {
  .live-workspace {
    --v3-top: auto;
  }

  .live-workspace .suitebar {
    grid-template-columns: 1fr;
    height: auto;
    padding: 10px;
  }

  .live-workspace .suite-brand,
  .live-workspace .workspace-top-banner {
    height: 80px;
  }

  .live-workspace .suite-actions {
    justify-content: start;
    flex-wrap: wrap;
  }

  .live-workspace .launcher.open {
    top: 210px;
    padding-left: 12px;
  }
}

@media (max-width: 760px) {
  .profile-photo-cropper {
    grid-template-columns: 1fr;
  }

  .profile-crop-stage {
    width: 100%;
    max-width: 220px;
  }
}

.task-workspace-header .page-intro {
  margin: 4px 0 0;
  max-width: 780px;
  color: var(--muted);
}

.task-command-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: end;
  margin: 16px 0;
}

.task-filter-bar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) repeat(3, minmax(120px, 160px)) auto auto;
  gap: 10px;
  align-items: end;
}

.task-filter-bar label {
  display: grid;
  gap: 4px;
  font-size: 0.82rem;
  color: var(--muted);
}

.task-filter-bar input,
.task-filter-bar select,
.task-create-form input,
.task-create-form select,
.task-create-form textarea,
.stacked-form input,
.stacked-form select,
.stacked-form textarea,
.inline-form-row input {
  min-width: 0;
  width: 100%;
}

.task-board-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: 10px;
  margin: 14px 0 18px;
}

.task-lane {
  border: 1px solid var(--line);
  background: #fff;
  min-height: 130px;
}

.task-lane header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 10px;
  border-top: 4px solid var(--teal);
  border-bottom: 1px solid var(--line);
  font-weight: 700;
}

.task-lane-in-progress header { border-top-color: var(--blue); }
.task-lane-blocked header { border-top-color: var(--red); }
.task-lane-review header { border-top-color: var(--orange); }
.task-lane-completed header { border-top-color: var(--green); }

.task-card-mini {
  display: grid;
  gap: 3px;
  margin: 8px;
  padding: 9px;
  border: 1px solid var(--line);
  background: #f8fafc;
  color: var(--ink);
  text-decoration: none;
}

.task-card-mini span,
.empty-mini,
.muted {
  color: var(--muted);
}

.empty-mini {
  margin: 10px;
}

.task-management-table {
  table-layout: auto;
}

.task-management-table th,
.task-management-table td {
  white-space: normal;
  overflow-wrap: anywhere;
  vertical-align: top;
}

.task-management-table .record-cell {
  min-width: 220px;
}

.task-labels {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 6px;
}

.task-label {
  display: inline-flex;
  align-items: center;
  border-left: 4px solid var(--label-color, var(--teal));
  background: #eef4f6;
  color: var(--ink);
  padding: 2px 7px;
  font-size: 0.78rem;
  font-weight: 700;
}

.priority-pill,
.task-meta-pill {
  display: inline-flex;
  align-items: center;
  margin: 0 4px 4px 0;
  padding: 3px 7px;
  background: #f1f5f9;
  color: var(--ink);
  font-size: 0.78rem;
  font-weight: 700;
}

.priority-high,
.priority-urgent {
  background: #fff1e8;
  color: #8a2d12;
}

.priority-low {
  background: #e9f7f3;
  color: #0c6b58;
}

.task-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(280px, 0.8fr);
  gap: 16px;
  margin: 16px 0;
}

.detail-card {
  border: 1px solid var(--line);
  background: #fff;
  padding: 16px;
}

.detail-card h2 {
  margin: 0 0 12px;
}

.stacked-form {
  display: grid;
  gap: 12px;
}

.compact-form {
  gap: 8px;
}

.form-grid.two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

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

.checkbox-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
  border: 1px solid var(--line);
  padding: 10px;
}

.checkbox-grid legend {
  font-weight: 700;
}

.task-status-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 14px;
}

.task-status-actions form,
.inline-admin-form {
  margin: 0;
}

.task-status-actions button,
.inline-form-row button,
.stacked-form button {
  width: 100%;
}

.task-facts {
  display: grid;
  gap: 6px;
  margin-top: 12px;
}

.inline-form-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.checklist-list,
.task-comments,
.attachment-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.checklist-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  margin: 0;
  padding: 8px;
  border: 1px solid var(--line);
}

.check-button {
  min-width: 70px;
}

.is-done {
  text-decoration: line-through;
  color: var(--muted);
}

.task-comments article {
  border: 1px solid var(--line);
  padding: 10px;
  background: #f8fafc;
}

.task-comments article span {
  color: var(--muted);
  margin-left: 8px;
  font-size: 0.82rem;
}

.attachment-list a {
  padding: 8px;
  border: 1px solid var(--line);
  background: #f8fafc;
}

.lead-v3-shell {
  display: grid;
  gap: 16px;
}

.lead-compat-hooks {
  display: none;
}

.lead-v3-shell .object-header {
  margin: 0;
  width: 100%;
}

.lead-v3-shell .eyebrow {
  margin: 0 0 6px;
  color: var(--blue);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.lead-v3-shell .metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.lead-v3-shell .metric-card,
.lead-v3-shell .panel-block,
.lead-v3-shell .partners-section,
.lead-v3-shell .suggestions-section {
  border: 1px solid var(--line);
  background: #fff;
}

.lead-v3-shell .metric-card {
  min-height: 92px;
  padding: 16px;
  border-top: 4px solid var(--blue);
}

.lead-v3-shell .metric-card span {
  display: block;
  color: var(--muted);
  font-weight: 800;
}

.lead-v3-shell .metric-card strong {
  display: block;
  margin-top: 10px;
  color: var(--navy);
  font-size: 2rem;
  line-height: 1;
}

.lead-v3-shell .workspace {
  display: grid;
  grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.lead-v3-shell .control-panel,
.lead-v3-shell .main-panel {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.lead-v3-shell .panel-block,
.lead-v3-shell .partners-section,
.lead-v3-shell .suggestions-section {
  padding: 16px;
}

.lead-v3-shell .section-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.lead-v3-shell .section-heading h2 {
  margin: 0;
  color: var(--navy);
  font-size: 1.18rem;
}

.lead-v3-shell .stacked-form,
.lead-v3-shell .two-col,
.lead-v3-shell .button-row {
  display: grid;
  gap: 10px;
}

.lead-v3-shell .two-col {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lead-v3-shell label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 800;
}

.lead-v3-shell input,
.lead-v3-shell select,
.lead-v3-shell textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  padding: 9px 10px;
}

.lead-v3-shell .button-row {
  grid-template-columns: 1fr 1fr;
}

.lead-v3-shell button,
.lead-v3-shell .ghost-button,
.lead-v3-shell .file-button,
.lead-v3-shell .text-button {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--navy);
  padding: 0 12px;
  font-weight: 900;
  text-decoration: none;
}

.lead-v3-shell .primary-button {
  border-color: var(--teal);
  background: var(--teal);
  color: #fff;
}

.lead-v3-shell .full-width {
  width: 100%;
}

.lead-v3-shell .toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(150px, 220px) minmax(150px, 220px);
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  background: #fff;
}

.lead-v3-shell .content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: 14px;
}

.lead-v3-shell .table-shell {
  overflow-x: auto;
  border: 1px solid var(--line);
}

.lead-v3-shell table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
  table-layout: auto;
}

.lead-v3-shell th,
.lead-v3-shell td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
}

.lead-v3-shell td:first-child,
.lead-v3-shell th:first-child {
  white-space: normal;
}

.lead-v3-shell .pill,
.lead-v3-shell .status-pill,
.lead-v3-shell .priority-pill,
.lead-v3-shell .tag {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 7px;
  background: #eaf4f7;
  color: var(--navy);
  font-weight: 900;
}

.lead-v3-shell .suggestion-list,
.lead-v3-shell .rule-list {
  display: grid;
  gap: 10px;
}

.lead-v3-shell .suggestion-card,
.lead-v3-shell .empty-state {
  border: 1px solid var(--line);
  background: #f8fbfc;
  padding: 12px;
}

.lead-v3-shell .card-main {
  display: grid;
  gap: 8px;
}

.lead-v3-shell .card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.lead-v3-shell .source-note,
.lead-v3-shell .brand-status {
  color: var(--muted);
  font-size: 0.8rem;
}

@media (max-width: 1200px) {
  .lead-v3-shell .workspace,
  .lead-v3-shell .content-grid {
    grid-template-columns: 1fr;
  }

  .lead-v3-shell .metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .lead-v3-shell .metrics-grid,
  .lead-v3-shell .toolbar,
  .lead-v3-shell .two-col,
  .lead-v3-shell .button-row {
    grid-template-columns: 1fr;
  }
}

.filter-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(160px, 220px)) auto minmax(0, 1fr);
  gap: 10px;
  align-items: end;
  margin: 0 0 16px;
  padding: 12px;
  border: 1px solid var(--line);
  background: #fff;
}

.filter-row label {
  display: grid;
  gap: 4px;
  font-weight: 700;
}

.filter-note {
  color: var(--muted);
  justify-self: end;
  padding-bottom: 9px;
}

.badge-soft {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  background: #eaf4f7;
  color: var(--navy);
  font-weight: 800;
}

.form-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

@media (max-width: 900px) {
  .filter-row,
  .form-grid-2 {
    grid-template-columns: 1fr;
  }

  .filter-note {
    justify-self: start;
    padding-bottom: 0;
  }
}

@media (max-width: 1100px) {
  .task-command-row,
  .task-detail-grid {
    grid-template-columns: 1fr;
  }

  .task-filter-bar,
  .task-board-strip {
    grid-template-columns: 1fr 1fr;
  }

  .form-grid.two,
  .form-grid.three {
    grid-template-columns: 1fr;
  }
}

.expense-hero {
  margin-bottom: 14px;
}

.expense-metrics {
  margin: 14px 0;
}

.expense-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 14px;
  align-items: start;
}

.expense-side {
  display: grid;
  gap: 14px;
}

.expense-create-grid,
.expense-item-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: end;
}

.expense-create-grid label,
.expense-item-grid label {
  display: grid;
  gap: 5px;
  font-weight: 800;
}

.expense-create-grid .span-2,
.expense-item-grid .span-2 {
  grid-column: span 2;
}

.expense-filter {
  grid-template-columns: minmax(240px, 1fr) 180px auto auto;
}

.expense-report-card {
  border: 1px solid var(--line);
  background: #fff;
  margin-top: 12px;
  padding: 14px;
  box-shadow: 0 10px 28px rgba(9, 37, 56, 0.05);
}

.expense-report-head,
.expense-total-row,
.inline-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.expense-report-head {
  justify-content: space-between;
}

.expense-report-head h3 {
  margin: 0;
}

.expense-report-head p,
.muted {
  color: var(--muted);
}

.expense-total-row {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  padding: 8px 0;
  margin: 10px 0;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 10px;
  background: #edf4f7;
  color: var(--navy);
  font-weight: 900;
}

.status-submitted,
.status-approved {
  background: #e4f5ee;
  color: #08715e;
}

.status-rejected {
  background: #fff0ef;
  color: #a73020;
}

.status-reimbursed {
  background: #eef4ff;
  color: #1b5e9d;
}

.badge-soft.warning {
  background: #fff5df;
  color: #8b4a05;
  margin: 2px;
}

.inline-upload {
  display: grid;
  gap: 6px;
}

.inline-upload input[type="file"] {
  max-width: 180px;
}

.check-row {
  display: flex !important;
  align-items: center;
  gap: 8px;
}

.queue-card,
.category-stack > div {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--line);
  background: #fff;
}

.category-stack {
  display: grid;
  gap: 8px;
}

.category-stack small,
.queue-card span,
.queue-card small {
  color: var(--muted);
}

@media (max-width: 1200px) {
  .expense-grid,
  .expense-create-grid,
  .expense-item-grid,
  .expense-filter {
    grid-template-columns: 1fr;
  }

  .expense-create-grid .span-2,
  .expense-item-grid .span-2 {
    grid-column: auto;
  }
}

/* Final approved V3 publish overrides. This intentionally sits at the end of the
   bundle so imported modules cannot reintroduce V2 header or launcher sizing. */
.live-workspace {
  --v3-top: 126px !important;
  grid-template-rows: var(--v3-top) minmax(0, 1fr) 28px !important;
}

.live-workspace .suitebar {
  height: var(--v3-top) !important;
  display: grid !important;
  grid-template-columns: minmax(430px, 0.72fr) minmax(420px, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 14px !important;
  overflow: hidden !important;
}

.live-workspace .suite-brand {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 760px !important;
  height: 112px !important;
}

.live-workspace .workspace-top-banner {
  width: 100% !important;
  height: 112px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.live-workspace .global-search {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 48px !important;
  grid-template-columns: 82px minmax(0, 1fr) 62px !important;
}

.live-workspace .search-action {
  min-height: 48px !important;
  height: 48px !important;
}

.live-workspace .suite-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  justify-content: end !important;
  min-width: max-content !important;
}

.live-workspace .identity.identity-photo {
  width: 74px !important;
  min-width: 74px !important;
  display: grid !important;
  grid-template-rows: 58px auto !important;
  place-items: center !important;
  gap: 3px !important;
  padding: 0 !important;
  text-align: center !important;
  white-space: normal !important;
}

.live-workspace .identity.identity-photo .identity-avatar {
  width: 58px !important;
  height: 58px !important;
  border: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

.live-workspace .identity.identity-photo strong {
  max-width: 84px !important;
  display: block !important;
  color: #fff !important;
  font-size: 11px !important;
  line-height: 1.05 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.live-workspace .nav-edge-toggle {
  top: calc(var(--v3-top) + 12px) !important;
  left: 12px !important;
  width: 58px !important;
  height: 58px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.live-workspace .nav-edge-toggle:hover,
.live-workspace .nav-edge-toggle:focus-visible {
  background: transparent !important;
}

.live-workspace .nav-edge-toggle img {
  width: 52px !important;
  height: 52px !important;
}

.live-workspace .launcher.open {
  top: var(--v3-top) !important;
  left: 0 !important;
  right: 0 !important;
  max-width: none !important;
  max-height: none !important;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)) !important;
  padding: 10px 12px 12px 88px !important;
  border-left: 0 !important;
  border-right: 0 !important;
}

.live-workspace .launcher a {
  min-height: 54px !important;
  grid-template-columns: 32px minmax(0, 1fr) !important;
  gap: 8px !important;
  padding: 8px 9px !important;
}

.live-workspace .launcher img {
  width: 30px !important;
  height: 30px !important;
}

.insight-icon.icon-card {
  border: 1px solid var(--v3-line) !important;
  background: #fff !important;
  color: inherit !important;
}

.insight-icon.icon-card img {
  width: 36px !important;
  height: 36px !important;
  object-fit: contain !important;
}

@media (max-width: 1180px) {
  .live-workspace {
    --v3-top: 118px !important;
  }

  .live-workspace .suitebar {
    grid-template-columns: minmax(330px, 0.62fr) minmax(300px, 1fr) auto !important;
    gap: 8px !important;
  }

  .live-workspace .suite-brand,
  .live-workspace .workspace-top-banner {
    height: 104px !important;
  }
}

@media (max-width: 860px) {
  .live-workspace {
    --v3-top: 236px !important;
  }

  .live-workspace .suitebar {
    grid-template-columns: 1fr !important;
    height: var(--v3-top) !important;
    padding: 10px !important;
  }

  .live-workspace .suite-brand,
  .live-workspace .workspace-top-banner {
    height: 80px !important;
  }

  .live-workspace .suite-actions {
    justify-content: start !important;
    flex-wrap: wrap !important;
  }

  .live-workspace .launcher.open {
    padding-left: 12px !important;
  }
}

/* Final nav, typography, and table pass requested from the V3 markup review. */
body:has(.live-workspace) {
  font-family: var(--rise-ui-font) !important;
  font-weight: 400 !important;
}

.live-workspace {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: var(--v3-top) auto minmax(0, 1fr) 28px !important;
}

.live-workspace :where(h1, h2, h3, h4, strong, b, th, button, .button, .suite-button, .rise-action, label, .label, .pill, .status-pill) {
  font-weight: 520 !important;
}

.live-workspace :where(h1, .hero-title, .object-title, .portal-title, .section-title, .dashboard-title) {
  font-family: var(--rise-brand-font) !important;
  font-weight: 600 !important;
}

.live-workspace :where(h2, h3, .eyebrow, .suite-tab-label, .nav-caption, .app-caption, th, button, .button, .suite-button, .rise-action, label, .label, .pill, .status-pill) {
  font-family: var(--rise-label-font) !important;
}

.live-workspace h1 {
  font-size: 26px !important;
  letter-spacing: 0 !important;
}

.live-workspace h2 {
  font-size: 17px !important;
  letter-spacing: 0 !important;
}

.live-workspace h3 {
  font-size: 15px !important;
  letter-spacing: 0 !important;
}

.live-workspace .suitebar {
  grid-row: 1 !important;
}

.live-workspace .nav-edge-toggle {
  grid-row: 2 !important;
  position: sticky !important;
  top: var(--v3-top) !important;
  left: 0 !important;
  z-index: 42 !important;
  justify-self: start !important;
  align-self: stretch !important;
  width: 76px !important;
  height: auto !important;
  min-height: 112px !important;
  border: 0 !important;
  background: transparent !important;
}

.live-workspace .rail,
.live-workspace .rail[hidden] {
  grid-column: 1 !important;
  grid-row: 2 !important;
  position: sticky !important;
  top: var(--v3-top) !important;
  z-index: 41 !important;
  height: auto !important;
  min-height: 112px !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  align-content: start !important;
  gap: 0 !important;
  padding: 0 10px 0 76px !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--v3-line) !important;
  background: #f7fbfc !important;
  overflow: hidden !important;
}

.live-workspace .rail[hidden],
.live-workspace.nav-hidden .rail {
  display: none !important;
}

.live-workspace .rail a {
  width: 74px !important;
  min-width: 74px !important;
  min-height: 54px !important;
  display: grid !important;
  place-items: center !important;
  gap: 2px !important;
  padding: 6px 4px !important;
  border-left: 0 !important;
  border-bottom: 3px solid transparent !important;
  font-size: 10px !important;
  line-height: 1.1 !important;
  font-weight: 500 !important;
  text-align: center !important;
}

.live-workspace .rail a.active {
  border-left-color: transparent !important;
  border-bottom-color: var(--v3-orange) !important;
  background: #fff3ec !important;
}

.live-workspace .rail img,
.live-workspace .rail .nav-icon-badge-wrap > img {
  width: 24px !important;
  height: 24px !important;
}

.live-workspace .rail span {
  max-width: 70px !important;
  white-space: normal !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.live-workspace .canvas {
  grid-column: 1 !important;
  grid-row: 3 !important;
  padding: 22px 28px !important;
}

.live-workspace.nav-hidden .canvas {
  grid-row: 2 / 4 !important;
}

.live-workspace .launcher,
.live-workspace .launcher-backdrop {
  display: none !important;
}

.live-workspace table {
  table-layout: fixed !important;
  border-collapse: collapse !important;
}

.live-workspace th,
.live-workspace td {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.live-workspace th.sortable-header {
  position: relative !important;
  cursor: pointer !important;
  padding-right: 24px !important;
  user-select: none !important;
}

.live-workspace th.sortable-header::after {
  content: "\2195" !important;
  position: absolute !important;
  right: 9px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: #748392 !important;
  font-size: 11px !important;
}

.live-workspace th.sortable-header[aria-sort="ascending"]::after {
  content: "\2191" !important;
  color: var(--v3-orange) !important;
}

.live-workspace th.sortable-header[aria-sort="descending"]::after {
  content: "\2193" !important;
  color: var(--v3-orange) !important;
}

.live-workspace .table-col-resizer {
  width: 9px !important;
  right: -4px !important;
}

@media (max-width: 1180px) {
  .live-workspace .rail,
  .live-workspace .rail[hidden] {
    min-height: 112px !important;
    padding-left: 76px !important;
  }

  .live-workspace .rail[hidden],
  .live-workspace.nav-hidden .rail {
    display: none !important;
  }
}

/* Floating app bar polish. */
.live-workspace .rail,
.live-workspace .rail[hidden] {
  min-height: 104px !important;
  padding: 8px 12px 8px 82px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(207, 221, 228, 0.55) !important;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.72), rgba(217, 237, 242, 0.50)),
    rgba(248, 251, 252, 0.42) !important;
  box-shadow: 0 18px 34px rgba(17, 40, 59, 0.10) !important;
  backdrop-filter: blur(13px) saturate(135%) !important;
}

.live-workspace .rail[hidden],
.live-workspace.nav-hidden .rail {
  display: none !important;
}

.live-workspace .rail a {
  width: 80px !important;
  min-width: 80px !important;
  min-height: 64px !important;
  padding: 7px 5px !important;
  border: 1px solid transparent !important;
  border-bottom: 3px solid transparent !important;
  background: rgba(255, 255, 255, 0.14) !important;
}

.live-workspace .rail a:hover,
.live-workspace .rail a:focus-visible {
  border-color: rgba(207, 221, 228, 0.72) !important;
  background: rgba(255, 255, 255, 0.58) !important;
}

.live-workspace .rail a.active {
  border-color: rgba(207, 221, 228, 0.72) !important;
  border-bottom-color: var(--v3-orange) !important;
  background: rgba(255, 243, 236, 0.74) !important;
}

.live-workspace .rail img,
.live-workspace .rail .nav-icon-badge-wrap > img {
  width: 32px !important;
  height: 32px !important;
}

.live-workspace .rail a.nav-icon-emphasis > img,
.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
  width: 34px !important;
  height: 34px !important;
}

.live-workspace .rail span {
  max-width: 76px !important;
  font-size: 10.5px !important;
}

.live-workspace .nav-edge-toggle {
  min-height: 104px !important;
}

.live-workspace .nav-edge-toggle img {
  width: 58px !important;
  height: 58px !important;
  filter: drop-shadow(0 10px 18px rgba(17, 40, 59, 0.18)) !important;
}

/* Floating transparent app rail pass. */
.live-workspace .rail,
.live-workspace .rail[hidden] {
  min-height: 116px !important;
  padding: 9px 14px 10px 88px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(173, 204, 218, 0.38) !important;
  background:
    linear-gradient(90deg, rgba(243, 251, 253, 0.34), rgba(201, 232, 239, 0.24)),
    rgba(255, 255, 255, 0.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.48),
    0 18px 38px rgba(12, 34, 51, 0.10) !important;
  backdrop-filter: blur(16px) saturate(145%) !important;
}

.live-workspace .rail[hidden],
.live-workspace.nav-hidden .rail {
  display: none !important;
}

.live-workspace .rail a {
  width: 86px !important;
  min-width: 86px !important;
  min-height: 66px !important;
  padding: 7px 6px 6px !important;
  border: 1px solid rgba(255, 255, 255, 0) !important;
  border-bottom: 3px solid transparent !important;
  background: rgba(255, 255, 255, 0.10) !important;
  box-shadow: none !important;
}

.live-workspace .rail a:hover,
.live-workspace .rail a:focus-visible {
  border-color: rgba(185, 208, 221, 0.58) !important;
  background: rgba(255, 255, 255, 0.64) !important;
  box-shadow: 0 10px 24px rgba(12, 34, 51, 0.08) !important;
}

.live-workspace .rail a.active {
  border-color: rgba(185, 208, 221, 0.62) !important;
  border-bottom-color: var(--v3-orange) !important;
  background: rgba(255, 244, 238, 0.76) !important;
  box-shadow: 0 10px 24px rgba(12, 34, 51, 0.08) !important;
}

.live-workspace .rail img,
.live-workspace .rail .nav-icon-badge-wrap > img {
  width: 34px !important;
  height: 34px !important;
}

.live-workspace .rail a.nav-icon-emphasis > img,
.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
  width: 36px !important;
  height: 36px !important;
}

.live-workspace .rail span {
  max-width: 82px !important;
  font-size: 10px !important;
  line-height: 1.08 !important;
  font-weight: 500 !important;
}

.live-workspace .nav-edge-toggle {
  min-height: 116px !important;
}

.live-workspace .nav-edge-toggle img {
  width: 62px !important;
  height: 62px !important;
  background: transparent !important;
}

/* One-row floating app rail. */
.live-workspace .rail,
.live-workspace .rail[hidden] {
  min-height: 88px !important;
  padding: 8px 14px 8px 84px !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: clamp(3px, 0.35vw, 8px) !important;
  overflow: hidden !important;
}

.live-workspace .rail[hidden],
.live-workspace.nav-hidden .rail {
  display: none !important;
}

.live-workspace .rail a {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 78px !important;
  min-height: 68px !important;
  padding: 6px 3px 5px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border-radius: 0 !important;
}

.live-workspace .rail img,
.live-workspace .rail .nav-icon-badge-wrap > img {
  width: 35px !important;
  height: 35px !important;
}

.live-workspace .rail a.nav-icon-emphasis > img,
.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
  width: 36px !important;
  height: 36px !important;
}

.live-workspace .rail span {
  max-width: 72px !important;
  font-size: 9px !important;
  line-height: 1.05 !important;
  font-weight: 500 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.live-workspace .nav-edge-toggle {
  min-height: 88px !important;
}

.live-workspace .nav-edge-toggle img {
  width: 58px !important;
  height: 58px !important;
}

/* Fresh V3 floating icons: no tile backing, gentle pop-open motion. */
@keyframes riseAppPop {
  0% {
    opacity: 0;
    transform: translateY(10px) scale(0.72);
  }
  72% {
    opacity: 1;
    transform: translateY(-2px) scale(1.08);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.live-workspace .rail,
.live-workspace .rail[hidden] {
  background: rgba(233, 246, 249, 0.34) !important;
  box-shadow: none !important;
  backdrop-filter: blur(12px) saturate(128%) !important;
}

.live-workspace .rail a {
  border: 0 !important;
  border-bottom: 3px solid transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  animation: riseAppPop 360ms cubic-bezier(.17, .84, .34, 1.25) both !important;
  animation-delay: calc(var(--app-index, 1) * 18ms) !important;
}

.live-workspace .rail a:nth-child(1) { --app-index: 1; }
.live-workspace .rail a:nth-child(2) { --app-index: 2; }
.live-workspace .rail a:nth-child(3) { --app-index: 3; }
.live-workspace .rail a:nth-child(4) { --app-index: 4; }
.live-workspace .rail a:nth-child(5) { --app-index: 5; }
.live-workspace .rail a:nth-child(6) { --app-index: 6; }
.live-workspace .rail a:nth-child(7) { --app-index: 7; }
.live-workspace .rail a:nth-child(8) { --app-index: 8; }
.live-workspace .rail a:nth-child(9) { --app-index: 9; }
.live-workspace .rail a:nth-child(10) { --app-index: 10; }
.live-workspace .rail a:nth-child(11) { --app-index: 11; }
.live-workspace .rail a:nth-child(12) { --app-index: 12; }
.live-workspace .rail a:nth-child(13) { --app-index: 13; }
.live-workspace .rail a:nth-child(14) { --app-index: 14; }
.live-workspace .rail a:nth-child(15) { --app-index: 15; }
.live-workspace .rail a:nth-child(16) { --app-index: 16; }
.live-workspace .rail a:nth-child(17) { --app-index: 17; }
.live-workspace .rail a:nth-child(18) { --app-index: 18; }
.live-workspace .rail a:nth-child(19) { --app-index: 19; }
.live-workspace .rail a:nth-child(20) { --app-index: 20; }

.live-workspace .rail a:hover,
.live-workspace .rail a:focus-visible {
  background: transparent !important;
  box-shadow: none !important;
  transform: translateY(-3px) scale(1.05) !important;
}

.live-workspace .rail a.active {
  border: 0 !important;
  border-bottom: 3px solid var(--v3-orange) !important;
  background: transparent !important;
  box-shadow: none !important;
}

.live-workspace .rail img,
.live-workspace .rail .nav-icon-badge-wrap > img {
  filter: drop-shadow(0 8px 10px rgba(12, 34, 51, 0.16)) !important;
}

@media (prefers-reduced-motion: reduce) {
  .live-workspace .rail a {
    animation: none !important;
  }
}

/* Shell stability: normal pages should never inherit modal dimming, and the footer stays out of the work surface. */
.live-workspace .canvas,
.live-workspace .crm-main,
.live-workspace .workspace-screen,
.live-workspace .workspace-screen.active {
  opacity: 1 !important;
  filter: none !important;
}

.live-workspace .portal-built-footer {
  grid-column: 1 / -1 !important;
  grid-row: 4 !important;
  align-self: end !important;
  z-index: 12 !important;
  background: rgba(255, 255, 255, 0.96) !important;
  pointer-events: none !important;
}

.live-workspace .launcher-backdrop,
.live-workspace .launcher-backdrop.open,
.live-workspace .launcher-backdrop:not(.open),
.live-workspace .launcher:not(.open) {
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.live-workspace .launcher.open {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.live-workspace .launcher-backdrop.open {
  display: block !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Banner-aligned header gradient. */
.live-workspace .suitebar {
  position: relative !important;
  background: linear-gradient(90deg, #000 0%, #071522 34%, #102f49 66%, #195074 100%) !important;
  border-bottom-color: rgba(76, 143, 181, 0.42) !important;
  box-shadow:
    inset 0 1px rgba(255, 255, 255, 0.06),
    0 12px 28px rgba(8, 27, 43, 0.16) !important;
}

.live-workspace .suitebar::after {
  content: "";
  position: absolute;
  left: min(54vw, 760px);
  right: 0;
  top: 0;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(105, 175, 210, 0.08));
  mix-blend-mode: screen;
}

.live-workspace .suitebar > * {
  position: relative;
  z-index: 1;
}

/* Final crisp pass: floating apps, aligned header tools, compact Lead Tracker, and table controls. */
.live-workspace .suitebar {
  grid-template-columns: minmax(360px, 650px) minmax(420px, 1fr) auto !important;
  gap: 14px !important;
  align-items: center !important;
}

.live-workspace .global-search {
  height: 48px !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: 78px minmax(0, 1fr) 62px !important;
  align-items: stretch !important;
  overflow: hidden !important;
}

.live-workspace .global-search span,
.live-workspace .search-action {
  min-height: 48px !important;
  height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.live-workspace .global-search input {
  height: 48px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.live-workspace .search-action {
  align-self: stretch !important;
  border-left: 1px solid rgba(255, 255, 255, 0.22) !important;
}

.live-workspace .suite-actions {
  align-items: center !important;
}

.live-workspace .identity.identity-photo {
  width: 74px !important;
  min-height: 78px !important;
  padding: 0 !important;
  display: grid !important;
  justify-items: center !important;
  align-content: center !important;
  gap: 4px !important;
  background: transparent !important;
  border: 0 !important;
}

.live-workspace .identity-avatar {
  width: 52px !important;
  height: 52px !important;
  border-radius: 0 !important;
}

.live-workspace .identity.identity-photo strong {
  max-width: 74px !important;
  color: #fff !important;
  font-size: 10px !important;
  line-height: 1.05 !important;
  font-weight: 600 !important;
  text-align: center !important;
  white-space: normal !important;
}

.live-workspace .rail,
.live-workspace .rail[hidden] {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  overflow: hidden !important;
}

.live-workspace .rail a {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 3px solid transparent !important;
  box-shadow: none !important;
}

.live-workspace .rail a.active {
  background: transparent !important;
  border-bottom-color: var(--v3-orange) !important;
}

.live-workspace .rail img,
.live-workspace .rail .nav-icon-badge-wrap > img,
.live-workspace .rail a.nav-icon-emphasis > img,
.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
  width: 36px !important;
  height: 36px !important;
  object-fit: contain !important;
}

.live-workspace .rail span {
  font-size: 9.5px !important;
  font-weight: 500 !important;
}

.live-workspace table {
  table-layout: fixed !important;
}

.live-workspace th,
.live-workspace td {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.live-workspace .table-filter-row th {
  padding: 5px !important;
  background: #f8fbfc !important;
}

.live-workspace .table-filter-row input {
  width: 100% !important;
  min-height: 30px !important;
  padding: 5px 7px !important;
  border: 1px solid var(--v3-line) !important;
  background: #fff !important;
  font-size: 12px !important;
}

.lead-v3-shell .object-header {
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
}

.lead-v3-shell .object-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

.lead-v3-shell .lead-import-strip {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  padding: 10px 12px !important;
  border: 1px solid var(--v3-line) !important;
  background: rgba(255, 255, 255, 0.82) !important;
}

.lead-v3-shell .lead-import-strip .brand-status {
  margin-right: auto !important;
  max-width: 420px !important;
  color: var(--v3-muted) !important;
}

.lead-v3-shell .file-button {
  position: relative !important;
  width: auto !important;
  min-width: 150px !important;
  overflow: hidden !important;
}

.lead-v3-shell .file-button input[type="file"] {
  position: absolute !important;
  inset: 0 !important;
  opacity: 0 !important;
  cursor: pointer !important;
}

.lead-v3-shell .workspace {
  grid-template-columns: minmax(280px, 360px) minmax(0, 1fr) !important;
}

.lead-v3-shell .content-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

.lead-v3-shell .suggestions-section,
.lead-v3-shell .partners-section {
  grid-column: 1 / -1 !important;
}

.lead-v3-shell .suggestion-list {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
}

.lead-v3-shell .partners-section .table-shell {
  overflow: hidden !important;
}

.lead-v3-shell .partners-section table {
  min-width: 0 !important;
  width: 100% !important;
}

@media (max-width: 1120px) {
  .live-workspace .suitebar {
    grid-template-columns: minmax(280px, 1fr) !important;
  }

  .live-workspace .global-search,
  .live-workspace .suite-actions {
    width: 100% !important;
  }
}

/* Final UI cleanup pass: make app captions readable, buttons visible, and table resizing obvious. */
.live-workspace .rail,
.live-workspace .rail[hidden] {
  min-height: 92px !important;
  padding-top: 4px !important;
  padding-bottom: 5px !important;
  align-items: flex-start !important;
}

.live-workspace .rail a {
  min-height: 72px !important;
  padding-top: 2px !important;
}

.live-workspace .rail img,
.live-workspace .rail .nav-icon-badge-wrap > img,
.live-workspace .rail a.nav-icon-emphasis > img,
.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
  width: 39px !important;
  height: 39px !important;
}

.live-workspace .rail span {
  font-size: 10.75px !important;
  line-height: 1.05 !important;
}

.live-workspace .lead-v3-shell .object-actions .primary-button,
.lead-v3-shell .object-actions .primary-button,
.lead-v3-shell #createLeadButton {
  background: var(--v3-teal) !important;
  border-color: var(--v3-teal) !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.lead-v3-shell .brand-status,
.lead-v3-shell .portal-built-footer,
.lead-v3-shell .lead-json-compat,
.lead-v3-shell #importFile {
  display: none !important;
}

.lead-v3-shell .lead-import-strip {
  justify-content: flex-end !important;
  min-height: auto !important;
  padding: 14px !important;
}

.live-workspace th.sortable-header {
  padding-right: 28px !important;
}

.live-workspace .table-col-resizer {
  width: 14px !important;
  right: -3px !important;
  top: 0 !important;
  bottom: 0 !important;
  background: linear-gradient(90deg, transparent, rgba(21, 80, 116, 0.38), transparent) !important;
  opacity: 0.82 !important;
  cursor: col-resize !important;
  z-index: 5 !important;
}

.live-workspace .table-col-resizer::after {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  bottom: 8px !important;
  right: 6px !important;
  width: 2px !important;
  background: rgba(21, 80, 116, 0.78) !important;
  border-radius: 2px !important;
}

.live-workspace th.sortable-header:hover .table-col-resizer {
  opacity: 1 !important;
}

/* Tasks icon has a lot of built-in white margin, so it needs a larger box than the other SVGs. */
.live-workspace .rail a.nav-task-link .nav-icon-badge-wrap > img,
.live-workspace .launcher a.nav-task-link .nav-icon-badge-wrap > img {
  width: 42px !important;
  height: 42px !important;
  transform: translateY(-1px) scale(1.02) !important;
  transform-origin: center !important;
}

.live-workspace .rail a.nav-task-link .nav-icon-badge-wrap,
.live-workspace .launcher a.nav-task-link .nav-icon-badge-wrap {
  width: 42px !important;
  height: 42px !important;
  display: inline-grid !important;
  place-items: center !important;
}

/* Keep the fox app handle out of the way while the page is actively moving. */
.live-workspace .nav-edge-toggle {
  transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease !important;
}

.live-workspace.nav-toggle-scrolling .nav-edge-toggle {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateX(-18px) scale(0.92) !important;
}

/* Prevent app captions from being clipped at the bottom of the floating app bar. */
.live-workspace .rail,
.live-workspace .rail[hidden] {
  min-height: 106px !important;
  padding-top: 3px !important;
  padding-bottom: 14px !important;
  overflow: visible !important;
}

.live-workspace .rail a {
  min-height: 82px !important;
  padding-top: 2px !important;
  padding-bottom: 9px !important;
  align-content: center !important;
}

.live-workspace .rail span {
  line-height: 1.18 !important;
  padding-bottom: 1px !important;
}

/* Final app-bar normalization: every workspace app icon uses the same visual box. */
.live-workspace .rail a > img,
.live-workspace .rail a .nav-icon-badge-wrap,
.live-workspace .rail a .nav-icon-badge-wrap > img,
.live-workspace .rail a.nav-icon-emphasis > img,
.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap,
.live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img,
.live-workspace .rail a.nav-task-link .nav-icon-badge-wrap,
.live-workspace .rail a.nav-task-link .nav-icon-badge-wrap > img {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  object-fit: contain !important;
  transform: none !important;
}

.live-workspace .rail a.nav-task-link .nav-task-badge {
  top: -3px !important;
  right: -5px !important;
}

/* Current RISE Workspace assessment experience. */
.public-topbar-focus {
  min-height: 104px !important;
  justify-content: flex-start !important;
  gap: 18px !important;
  padding: 12px 20px !important;
  border-bottom: 3px solid rgba(196, 91, 50, 0.92) !important;
  background: linear-gradient(90deg, #05080a 0%, #0f2f44 46%, rgb(25, 80, 116) 100%) !important;
  color: #fff !important;
}

.public-topbar-focus .locked-brand {
  width: min(620px, calc(100vw - 260px)) !important;
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

.public-topbar-focus .public-focus-banner {
  width: min(460px, 52vw) !important;
  height: 72px !important;
  object-fit: cover !important;
  object-position: left center !important;
  border: 1px solid rgba(205, 228, 236, 0.38) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.22) !important;
}

.public-topbar-focus .brand-copy {
  display: grid !important;
  gap: 2px !important;
  min-width: max-content !important;
}

.public-topbar-focus .brand-copy strong {
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 650 !important;
  line-height: 1.1 !important;
}

.public-topbar-focus .brand-copy small {
  color: rgba(255, 255, 255, 0.78) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}

.portal-landing-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 6px !important;
}

.portal-landing-actions a {
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  border: 1px solid rgba(255, 255, 255, 0.34) !important;
  background: #c45b32 !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  text-decoration: none !important;
}

.portal-landing-actions a:hover,
.portal-landing-actions a:focus {
  background: #f26b21 !important;
  border-color: rgba(255, 255, 255, 0.58) !important;
}

.public-focus-status {
  right: 20px !important;
  min-height: 38px !important;
  padding: 0 14px !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: rgba(255, 255, 255, 0.86) !important;
  font-weight: 600 !important;
}

.public-shell-focus {
  width: min(1180px, calc(100vw - 32px)) !important;
  padding: 30px 0 64px !important;
}

.assessment-access-card,
.assessment-thanks-card {
  max-width: 760px !important;
  margin: 46px auto 0 !important;
  padding: 34px !important;
  border-radius: 0 !important;
  border-color: #c6dce8 !important;
  border-top: 5px solid #c45b32 !important;
  box-shadow: 0 22px 48px rgba(15, 47, 68, 0.08) !important;
}

.participant-flow {
  display: grid !important;
  gap: 18px !important;
}

.participant-event-card,
.participant-assessment-panel,
.assessment-detail-page .card,
.assessment-detail-page .program-score-card,
.assessment-program-grid .program-score-card,
.assessment-command-grid .attio-panel {
  border-radius: 0 !important;
  border-color: #cbdde7 !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 16px 34px rgba(15, 47, 68, 0.06) !important;
}

.participant-event-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 26px 30px !important;
  border: 1px solid #cbdde7 !important;
  border-left: 5px solid #195074 !important;
  background:
    linear-gradient(120deg, rgba(255,255,255,0.96), rgba(232,246,250,0.92)),
    #fff !important;
}

.participant-event-card h1,
.participant-assessment-panel h1,
.assessment-access-card h1,
.assessment-thanks-card h1 {
  max-width: 920px !important;
  color: #0f2f44 !important;
  font-size: clamp(28px, 3vw, 42px) !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  line-height: 1.08 !important;
}

.participant-seat-card {
  min-width: 132px !important;
  min-height: 112px !important;
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  border-left: 5px solid #c45b32 !important;
  background: #fff !important;
  box-shadow: 18px 22px 36px rgba(15, 47, 68, 0.08) !important;
}

.participant-seat-card strong {
  color: #0f2f44 !important;
  font-size: 34px !important;
  line-height: 1 !important;
}

.participant-seat-card span {
  color: #5a6775 !important;
  font-weight: 600 !important;
}

.participant-assessment-panel {
  padding: 30px !important;
  border-top: 5px solid #2f7f6f !important;
}

.participant-form {
  display: grid !important;
  gap: 18px !important;
  margin-top: 22px !important;
}

.participant-form fieldset {
  min-width: 0 !important;
  padding: 18px !important;
  border: 1px solid #d5e2ea !important;
  background: #fbfdff !important;
}

.participant-form legend {
  padding: 0 8px !important;
  color: #0f2f44 !important;
  font-size: 17px !important;
  font-weight: 650 !important;
}

.participant-form label,
.assessment-access-card label {
  color: #0b2238 !important;
  font-weight: 600 !important;
}

.participant-form input,
.participant-form select,
.participant-form textarea,
.assessment-access-card input {
  border-radius: 0 !important;
  border-color: #aebfce !important;
  background: #fff !important;
}

.participant-form input:focus,
.participant-form select:focus,
.participant-form textarea:focus,
.assessment-access-card input:focus {
  border-color: #195074 !important;
  box-shadow: 0 0 0 3px rgba(25, 80, 116, 0.16) !important;
  outline: none !important;
}

.assessment-scale-grid label,
.inline-check-grid .inline-check {
  border-radius: 0 !important;
  border-color: #d5e2ea !important;
  background: #fff !important;
  font-weight: 550 !important;
}

.assessment-help {
  color: #43566a !important;
  font-size: 13px !important;
}

.participant-submit-row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  padding-top: 4px !important;
}

.participant-submit-row button,
.assessment-access-card button,
.assessment-thanks-card .button {
  border-radius: 0 !important;
  background: #0f756b !important;
  border-color: #0f756b !important;
  color: #fff !important;
  font-weight: 650 !important;
}

.participant-submit-row .secondary,
.assessment-thanks-card .secondary {
  background: #fff !important;
  color: #0f2f44 !important;
  border-color: #b8ccd8 !important;
}

.compact-permission-row {
  grid-template-columns: minmax(180px, 240px) minmax(0, 1fr) auto !important;
  align-items: start !important;
}

.compact-permission-options {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
}

.access-multiselect {
  width: 100% !important;
  min-height: 118px !important;
  padding: 8px !important;
  border: 1px solid #b8ccd8 !important;
  border-radius: 0 !important;
  background: #fbfdff !important;
  color: #0b2238 !important;
  font: inherit !important;
  line-height: 1.35 !important;
}

.access-multiselect.slim {
  min-height: 86px !important;
}

.access-multiselect option {
  padding: 7px 9px !important;
  margin: 2px 0 !important;
  border-radius: 0 !important;
}

.access-multiselect option:checked {
  color: #04263f !important;
  background: linear-gradient(90deg, #dceefb, #eef7fc) !important;
  font-weight: 650 !important;
}

.access-help {
  margin: 0 !important;
  color: #43566a !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

.identity-edit-details .stack-admin-form {
  padding-top: 10px !important;
  border-top: 1px solid #d5e2ea !important;
}

.assessment-detail-page .grid,
.assessment-detail-page .form-grid,
.assessment-review-summary,
.assessment-program-grid,
.assessment-command-grid,
.attio-bottom-grid {
  gap: 14px !important;
}

.assessment-detail-page .card {
  padding: 18px !important;
}

.assessment-detail-page .card h2,
.assessment-command-grid h2,
.attio-bottom-grid h2 {
  color: #0f2f44 !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
}

.assessment-table .record-actions {
  gap: 6px !important;
}

@media (max-width: 760px) {
  .public-topbar-focus {
    min-height: 86px !important;
    padding: 10px 12px !important;
  }

  .public-topbar-focus .locked-brand {
    width: calc(100vw - 24px) !important;
  }

  .public-topbar-focus .public-focus-banner {
    width: min(260px, 64vw) !important;
    height: 54px !important;
  }

  .public-topbar-focus .brand-copy,
  .public-focus-status {
    display: none !important;
  }

  .participant-event-card,
  .participant-assessment-panel,
  .assessment-access-card,
  .assessment-thanks-card {
    padding: 20px !important;
  }

  .participant-event-card,
  .form-grid,
  .assessment-scale-grid,
  .inline-check-grid,
  .assessment-program-grid,
  .assessment-command-grid,
  .assessment-review-summary {
    grid-template-columns: 1fr !important;
  }
}

.tool-hero {
  display: grid;
  grid-template-columns: minmax(260px, 420px) minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  padding: 22px 24px;
  margin: 0 0 18px;
  border: 1px solid rgba(25, 80, 116, 0.22);
  background: linear-gradient(112deg, rgba(255, 255, 255, 0.96), rgba(232, 246, 250, 0.84));
  box-shadow: 0 18px 50px rgba(15, 47, 68, 0.08);
}

.app-banner-hero img {
  display: block;
  width: 100%;
  max-height: 94px;
  object-fit: contain;
  object-position: left center;
  background: #0d2f42;
}

.tool-hero-copy {
  min-width: 0;
}

.tool-hero-copy h1 {
  margin: 4px 0 8px;
  color: #062846;
  font-size: clamp(26px, 2.4vw, 42px);
  line-height: 1.05;
  letter-spacing: 0;
  font-weight: 680;
}

.tool-hero-copy p {
  max-width: 820px;
  margin: 0;
  color: #345168;
  line-height: 1.45;
}

.tool-kpi-grid,
.mini-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 0 0 18px;
}

.tool-kpi,
.mini-metric-grid span {
  display: grid;
  gap: 8px;
  min-height: 116px;
  padding: 18px;
  border: 1px solid rgba(25, 80, 116, 0.18);
  border-top: 5px solid #195074;
  background: rgba(255, 255, 255, 0.94);
}

.tool-kpi strong,
.mini-metric-grid strong {
  color: #062846;
  font-size: 34px;
  line-height: 1;
}

.tool-kpi span,
.tool-kpi small,
.mini-metric-grid span {
  color: #506176;
}

.tool-kpi.accent-blue { border-top-color: #1f73b7; }
.tool-kpi.accent-orange { border-top-color: #c85b2f; }
.tool-kpi.accent-green { border-top-color: #2f7d6d; }
.tool-kpi.accent-red { border-top-color: #d92f2f; }

.packet-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.packet-panel {
  min-width: 0;
  padding: 18px;
  border: 1px solid rgba(25, 80, 116, 0.2);
  background: rgba(255, 255, 255, 0.96);
}

.packet-panel.wide {
  grid-column: 1 / -1;
}

.packet-panel-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid rgba(25, 80, 116, 0.15);
}

.packet-panel-title h2 {
  margin: 0;
  color: #062846;
  font-size: 20px;
  line-height: 1.15;
  font-weight: 650;
}

.packet-panel-title a,
.packet-panel-title span {
  color: #195074;
  font-size: 13px;
}

.packet-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.packet-summary div,
.empty-card,
.feed-item {
  border: 1px solid rgba(25, 80, 116, 0.16);
  background: rgba(247, 251, 255, 0.92);
}

.packet-summary div {
  padding: 14px;
}

.packet-summary p {
  margin: 6px 0 0;
}

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

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

.feed-item p {
  margin: 4px 0 0;
  color: #58697a;
}

.agenda-builder-panel {
  padding: 16px;
  margin: 0 0 18px;
  border: 1px solid rgba(25, 80, 116, 0.18);
  background: rgba(255, 255, 255, 0.92);
}

.agenda-builder-form {
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) minmax(220px, 1.6fr) minmax(170px, 0.8fr) auto;
  gap: 14px;
  align-items: end;
}

.agenda-builder-form label {
  display: grid;
  gap: 6px;
  color: #062846;
  font-weight: 650;
}

.agenda-list {
  display: grid;
  gap: 10px;
  padding-left: 22px;
}

.agenda-list li {
  padding: 10px 0;
}

.agenda-list span {
  margin-left: 8px;
  color: #c85b2f;
  font-size: 13px;
  font-weight: 650;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 9px;
  border-radius: 999px;
  color: #123047;
  background: #edf3f8;
}

.status-pill.high {
  color: #7a1f18;
  background: #ffe8dd;
}

.status-pill.medium {
  color: #755014;
  background: #fff4d7;
}

.status-pill.low {
  color: #18533f;
  background: #e5f5ee;
}

.install-pack-panel {
  border-left: 4px solid #195074;
}

@media (max-width: 980px) {
  .tool-hero,
  .agenda-builder-form,
  .packet-summary,
  .tool-kpi-grid,
  .mini-metric-grid,
  .packet-grid {
    grid-template-columns: 1fr;
  }
}

/* Absolute final chrome guard: this must stay at the end so narrow screens do not break the header or app bar. */
.live-workspace .global-search {
  grid-template-columns: minmax(0, 1fr) 58px !important;
}

.live-workspace .global-search span {
  display: none !important;
}

.live-workspace .global-search input {
  padding-left: 16px !important;
}

.live-workspace .rail,
.live-workspace .rail[hidden] {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  justify-content: flex-start !important;
  column-gap: clamp(10px, 1vw, 18px) !important;
  row-gap: 8px !important;
  min-height: 92px !important;
  height: auto !important;
  padding: 8px 16px 12px 112px !important;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  scrollbar-width: none !important;
  white-space: normal !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.live-workspace .rail[hidden] {
  display: none !important;
}

.live-workspace .rail::-webkit-scrollbar {
  display: none !important;
}

.live-workspace .rail a {
  flex: 0 0 clamp(58px, 4.65vw, 72px) !important;
  width: clamp(58px, 4.65vw, 72px) !important;
  min-width: clamp(58px, 4.65vw, 72px) !important;
  min-height: 74px !important;
  display: grid !important;
  grid-template-rows: 42px auto !important;
  justify-items: center !important;
  align-items: start !important;
  gap: 5px !important;
  padding: 2px 0 7px !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

.live-workspace .rail span {
  max-width: 100% !important;
  width: 100% !important;
  display: block !important;
  overflow: hidden !important;
  text-align: center !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: clamp(8px, 0.72vw, 10px) !important;
  line-height: 1.12 !important;
}

.resource-folder-library code {
  font-family: inherit;
  font-size: 0.92em;
  color: #0b3352;
  background: #eef6fb;
  border: 1px solid #c8dbe8;
  padding: 2px 6px;
}

.resource-folder-panel {
  border: 1px solid #c8dbe8;
  background: rgba(255, 255, 255, 0.78);
  margin: 12px 0;
  padding: 0;
}

.resource-folder-panel > summary {
  cursor: pointer;
  font-weight: 600;
  padding: 12px 14px;
}

.resource-folder-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
  padding: 0 14px 14px;
}

.resource-folder-help {
  align-items: start;
  background: #f6fbff;
  border-top: 1px solid #d7e2ec;
  color: #30485d;
  display: grid;
  gap: 4px;
  padding: 12px 14px;
}

.resource-folder-grid.access-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  padding-top: 14px;
}

.resource-folder-option {
  align-items: center;
  border: 1px solid #d7e2ec;
  display: grid;
  gap: 2px 8px;
  grid-template-columns: auto 1fr;
  padding: 9px 10px;
}

.resource-folder-option input {
  grid-row: span 2;
}

.resource-folder-option small {
  color: #5f6f80;
}

.resource-folder-access-card {
  align-items: stretch;
  background: #fff;
  gap: 10px;
  grid-template-columns: 1fr;
}

.resource-folder-card-head {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.resource-folder-card-head .inline-check {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  min-width: 0;
}

.resource-folder-card-head .inline-check span {
  color: #062b49;
  font-weight: 650;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.resource-folder-access-summary {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.resource-folder-access-summary span,
.resource-folder-access-summary strong {
  background: #eef6fb;
  color: #35526b;
  font-size: 0.82rem;
  padding: 3px 7px;
}

.resource-folder-access-summary strong {
  background: #fff4e5;
  color: #8a4509;
}

.resource-folder-groups {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
}

.resource-folder-groups label {
  align-items: center;
  border: 1px solid #e1e9f0;
  display: inline-flex;
  gap: 7px;
  min-width: 0;
  padding: 5px 7px;
}

.resource-folder-groups span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.resource-upload-grid {
  display: grid;
  grid-template-columns: minmax(220px, 320px) 1fr auto;
  gap: 12px;
  padding: 0 14px 14px;
  align-items: end;
}

.resource-upload-grid label {
  display: grid;
  gap: 6px;
}

@media (max-width: 1180px) {
  .live-workspace {
    --v3-top: 148px !important;
  }

  .live-workspace .suitebar {
    height: var(--v3-top) !important;
    grid-template-columns: minmax(360px, 1fr) minmax(220px, auto) !important;
    grid-template-rows: 58px 52px !important;
    gap: 8px 12px !important;
    align-content: center !important;
    padding: 10px 14px !important;
  }

  .live-workspace .suite-brand-banner {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
  }

  .live-workspace .workspace-top-banner {
    max-width: min(100%, 650px) !important;
    height: 58px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .live-workspace .suite-actions {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: auto !important;
    max-width: 100% !important;
    justify-content: flex-end !important;
    align-self: center !important;
    gap: 6px !important;
    overflow: hidden !important;
  }

  .live-workspace .global-search {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    max-width: none !important;
    height: 46px !important;
  }

  .live-workspace .suite-button,
  .live-workspace .suite-actions button,
  .live-workspace .suite-signout {
    min-height: 34px !important;
    padding: 0 10px !important;
    font-size: 12px !important;
  }

  .live-workspace .suite-role {
    display: none !important;
  }

  .live-workspace .identity.identity-photo {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
  }

  .live-workspace .identity-name {
    max-width: 72px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 11px !important;
  }
}

@media (max-width: 760px) {
  .live-workspace {
    --v3-top: 168px !important;
  }

  .live-workspace .suitebar {
    grid-template-columns: 1fr auto !important;
    grid-template-rows: 50px 38px 42px !important;
    padding: 8px !important;
  }

  .live-workspace .suite-brand-banner {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
  }

  .live-workspace .workspace-top-banner {
    height: 50px !important;
  }

  .live-workspace .suite-actions {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-content: flex-start !important;
  }

  .live-workspace .global-search {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    height: 40px !important;
    grid-template-columns: minmax(0, 1fr) 50px !important;
  }

  .live-workspace .suite-button,
  .live-workspace .suite-signout,
  .live-workspace .identity-name {
    display: none !important;
  }

  .live-workspace .identity.identity-photo {
    display: inline-flex !important;
  }

  .live-workspace .rail,
  .live-workspace .rail[hidden] {
    min-height: 82px !important;
    padding: 7px 10px 10px 88px !important;
    flex-wrap: wrap !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    column-gap: 10px !important;
    row-gap: 7px !important;
  }

  .live-workspace .rail a {
    width: 50px !important;
    min-width: 50px !important;
    grid-template-rows: 34px auto !important;
  }

  .live-workspace .rail a > img,
  .live-workspace .rail a .nav-icon-badge-wrap,
  .live-workspace .rail a .nav-icon-badge-wrap > img {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
  }
}

/* Final mobile shell guardrail: keep this after every workspace override. */
@media (max-width: 760px) {
  body:has(.live-workspace) {
    overflow-x: hidden !important;
  }

  .live-workspace {
    --v3-top: 136px !important;
    min-height: 100dvh !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: var(--v3-top) minmax(0, 1fr) 28px !important;
    overflow-x: hidden !important;
  }

  .live-workspace .suitebar {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    height: var(--v3-top) !important;
    min-height: var(--v3-top) !important;
    max-height: var(--v3-top) !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: 50px 30px 36px !important;
    gap: 3px 8px !important;
    padding: 8px !important;
    overflow: hidden !important;
  }

  .live-workspace .suite-brand,
  .live-workspace .suite-brand-banner {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: min(100%, 430px) !important;
    max-width: 100% !important;
    height: 50px !important;
    min-width: 0 !important;
  }

  .live-workspace .workspace-top-banner {
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .live-workspace .suite-actions {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
    width: 100% !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
  }

  .live-workspace .suite-actions .suite-button,
  .live-workspace .suite-actions .suite-signout,
  .live-workspace .suite-actions .suite-role,
  .live-workspace .suite-actions .identity strong {
    display: none !important;
  }

  .live-workspace .identity.identity-photo {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    display: inline-flex !important;
    grid-template-rows: none !important;
  }

  .live-workspace .identity-avatar {
    width: 28px !important;
    height: 28px !important;
  }

  .live-workspace .global-search {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    width: 100% !important;
    max-width: none !important;
    height: 36px !important;
    grid-template-columns: minmax(0, 1fr) 44px !important;
  }

  .live-workspace .global-search span {
    display: none !important;
  }

  .live-workspace .search-action {
    width: 44px !important;
    min-height: 36px !important;
    height: 36px !important;
  }

  .live-workspace .nav-edge-toggle {
    position: fixed !important;
    top: calc(var(--v3-top) + 10px) !important;
    left: auto !important;
    right: 10px !important;
    z-index: 70 !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: 0 12px 26px rgba(17, 40, 59, 0.16) !important;
  }

  .live-workspace .nav-edge-toggle img {
    width: 44px !important;
    height: 44px !important;
  }

  .live-workspace .rail {
    position: fixed !important;
    top: var(--v3-top) !important;
    left: 0 !important;
    z-index: 60 !important;
    width: min(300px, calc(100vw - 24px)) !important;
    height: calc(100dvh - var(--v3-top)) !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
    padding: 70px 8px 12px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #f7fbfc !important;
    box-shadow: 18px 0 38px rgba(17, 40, 59, 0.16) !important;
    transform: translateX(0) !important;
  }

  .live-workspace .rail[hidden],
  .live-workspace.nav-hidden .rail,
  .live-workspace.nav-collapsed .rail {
    display: none !important;
  }

  .live-workspace .rail a {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    grid-template-columns: 38px minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    justify-items: start !important;
    place-items: center start !important;
    gap: 8px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .live-workspace .rail a > img,
  .live-workspace .rail a .nav-icon-badge-wrap,
  .live-workspace .rail a .nav-icon-badge-wrap > img,
  .live-workspace .rail a.nav-icon-emphasis > img,
  .live-workspace .rail a.nav-icon-emphasis .nav-icon-badge-wrap > img {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    min-height: 30px !important;
  }

  .live-workspace .rail span {
    max-width: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .live-workspace .canvas,
  .live-workspace .crm-main,
  .live-workspace .workspace-screen,
  .live-workspace .workspace-screen.active,
  .live-workspace.nav-hidden .canvas,
  .live-workspace.nav-collapsed .canvas {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 14px !important;
  }

  .live-workspace .portal-page-shell {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .live-workspace .portal-built-footer {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    padding: 3px 12px !important;
    overflow: hidden !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
  }

  .live-workspace .portal-social-links {
    display: none !important;
  }
}

/* Final scheduling responsive guardrail: keep schedule boards readable when the window narrows. */
.live-workspace .scheduling-studio,
.live-workspace .schedule-work-grid,
.live-workspace .schedule-detail-grid,
.live-workspace .schedule-panel-wide,
.live-workspace .schedule-side-panel {
  min-width: 0 !important;
}

.live-workspace .schedule-panel-wide {
  overflow: hidden !important;
}

.live-workspace .schedule-panel-wide .compact-table-wrap,
.live-workspace .schedule-panel-wide .collection-table-wrap {
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  -webkit-overflow-scrolling: touch;
}

.live-workspace .schedule-panel-wide .schedule-table {
  width: 100% !important;
  min-width: 860px !important;
  table-layout: auto !important;
}

.live-workspace .schedule-panel-wide .session-board-table {
  min-width: 1260px !important;
}

.live-workspace .schedule-panel-wide .schedule-table th,
.live-workspace .schedule-panel-wide .schedule-table td {
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  text-overflow: clip !important;
  vertical-align: top !important;
}

.live-workspace .schedule-panel-wide .schedule-table td small {
  white-space: normal !important;
}

.live-workspace .schedule-panel-wide .schedule-table .field-pill,
.live-workspace .schedule-panel-wide .schedule-table .funding-type-pill {
  max-width: 100% !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
}

.live-workspace .session-board-table th:nth-child(1),
.live-workspace .session-board-table td:nth-child(1) {
  min-width: 190px !important;
}

.live-workspace .session-board-table th:nth-child(2),
.live-workspace .session-board-table td:nth-child(2) {
  min-width: 180px !important;
}

.live-workspace .session-board-table th:nth-child(3),
.live-workspace .session-board-table td:nth-child(3) {
  min-width: 130px !important;
}

.live-workspace .session-board-table th:nth-child(4),
.live-workspace .session-board-table td:nth-child(4) {
  min-width: 150px !important;
}

.live-workspace .session-board-table th:nth-child(5),
.live-workspace .session-board-table td:nth-child(5) {
  min-width: 125px !important;
}

.live-workspace .session-board-table th:nth-child(6),
.live-workspace .session-board-table td:nth-child(6) {
  min-width: 145px !important;
}

.live-workspace .session-board-table th:nth-child(7),
.live-workspace .session-board-table td:nth-child(7) {
  min-width: 130px !important;
}

.live-workspace .session-board-table th:nth-child(8),
.live-workspace .session-board-table td:nth-child(8) {
  min-width: 130px !important;
}

.live-workspace .session-board-table th:nth-child(9),
.live-workspace .session-board-table td:nth-child(9) {
  min-width: 150px !important;
}

@media (max-width: 1180px) {
  .live-workspace .schedule-work-grid,
  .live-workspace .schedule-detail-grid,
  .live-workspace .partner-schedule .schedule-work-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .live-workspace .schedule-side-panel {
    width: 100% !important;
  }
}

@media (max-width: 760px) {
  .live-workspace .scheduling-hero,
  .live-workspace .scheduling-detail-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    padding: 18px !important;
  }

  .live-workspace .scheduling-hero-actions {
    justify-content: flex-start !important;
  }

  .live-workspace .schedule-command-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .live-workspace .schedule-filter-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .live-workspace .schedule-filter-actions {
    flex-wrap: wrap !important;
  }

  .live-workspace .schedule-panel-wide .compact-table-wrap,
  .live-workspace .schedule-panel-wide .collection-table-wrap {
    overflow-x: visible !important;
    border: 0 !important;
    background: transparent !important;
  }

  .live-workspace .schedule-panel-wide .session-board-table {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    border-collapse: separate !important;
    background: transparent !important;
  }

  .live-workspace .session-board-table thead {
    display: none !important;
  }

  .live-workspace .session-board-table tbody {
    display: grid !important;
    gap: 12px !important;
  }

  .live-workspace .session-board-table tr {
    display: grid !important;
    gap: 9px !important;
    padding: 12px !important;
    border: 1px solid var(--v3-line) !important;
    background: #fff !important;
  }

  .live-workspace .session-board-table td {
    display: grid !important;
    grid-template-columns: minmax(92px, 0.36fr) minmax(0, 1fr) !important;
    gap: 10px !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow-wrap: anywhere !important;
  }

  .live-workspace .session-board-table td:nth-child(n) {
    min-width: 0 !important;
  }

  .live-workspace .session-board-table td::before {
    content: attr(data-label);
    color: #526174;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.25;
    text-transform: uppercase;
  }

  .live-workspace .session-board-table td.empty-table-message,
  .live-workspace .session-board-table td[colspan] {
    display: block !important;
  }

  .live-workspace .session-board-table td.empty-table-message::before,
  .live-workspace .session-board-table td[colspan]::before {
    content: none !important;
  }

  .live-workspace .session-board-table .record-actions {
    align-items: flex-start !important;
  }
}

@media (max-width: 520px) {
  .live-workspace .schedule-command-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .live-workspace .session-board-table td {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 4px !important;
  }
}

/* Final suitebar search sizing: keep it compact without breaking very small phones. */
@media (max-width: 1320px) {
  .live-workspace .global-search {
    justify-self: end !important;
    width: 50% !important;
    min-width: 300px !important;
    max-width: 560px !important;
  }
}

@media (max-width: 760px) {
  .live-workspace .global-search {
    width: 54vw !important;
    min-width: 0 !important;
    max-width: 360px !important;
  }
}

@media (max-width: 520px) {
  .live-workspace .global-search {
    justify-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
  }
}

/* Final narrow header repair: two rows, compact search, profile only. */
@media (max-width: 760px) {
  .live-workspace {
    --v3-top: 116px !important;
    grid-template-rows: var(--v3-top) minmax(0, 1fr) 28px !important;
  }

  .live-workspace .suitebar {
    height: var(--v3-top) !important;
    min-height: var(--v3-top) !important;
    max-height: var(--v3-top) !important;
    grid-template-columns: minmax(0, 1fr) 58px !important;
    grid-template-rows: 54px 40px !important;
    gap: 8px 10px !important;
    align-content: center !important;
    align-items: center !important;
    padding: 8px 10px !important;
    overflow: hidden !important;
  }

  .live-workspace .suite-brand,
  .live-workspace .suite-brand-banner {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: min(430px, 100%) !important;
    height: 54px !important;
    min-width: 0 !important;
    align-self: center !important;
  }

  .live-workspace .workspace-top-banner {
    width: 100% !important;
    height: 54px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .live-workspace .suite-actions {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 54px !important;
    justify-content: flex-end !important;
    align-self: center !important;
    overflow: hidden !important;
  }

  .live-workspace .suite-actions .suite-button,
  .live-workspace .suite-actions .suite-menu,
  .live-workspace .suite-actions .suite-signout,
  .live-workspace .suite-actions .suite-role,
  .live-workspace .identity strong {
    display: none !important;
  }

  .live-workspace .identity.identity-photo {
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    gap: 0 !important;
    overflow: hidden !important;
  }

  .live-workspace .identity.identity-photo .identity-avatar {
    width: 52px !important;
    height: 52px !important;
    background: var(--v3-orange) !important;
    border: 1px solid rgba(255, 255, 255, 0.42) !important;
    box-shadow: none !important;
  }

  .live-workspace .identity-avatar.no-photo span {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    height: 100% !important;
  }

  .live-workspace .identity.identity-photo strong {
    display: none !important;
  }

  .live-workspace .global-search {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    width: min(340px, 50vw) !important;
    min-width: 280px !important;
    max-width: 340px !important;
    height: 40px !important;
    grid-template-columns: minmax(0, 1fr) 50px !important;
  }

  .live-workspace .global-search span {
    display: none !important;
  }

  .live-workspace .global-search input {
    height: 40px !important;
    padding-left: 14px !important;
    text-overflow: ellipsis !important;
  }

  .live-workspace .search-action {
    width: 50px !important;
    min-height: 40px !important;
    height: 40px !important;
  }
}

@media (max-width: 560px) {
  .live-workspace .global-search {
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}

/* Resize guard: the fox handle opens the app tray, not the legacy rail panel. */
@media (max-width: 1180px) {
  .live-workspace .rail,
  .live-workspace .rail[hidden],
  .live-workspace.nav-hidden .rail,
  .live-workspace.nav-collapsed .rail {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .live-workspace .canvas,
  .live-workspace .crm-main {
    grid-column: 1 !important;
    grid-row: 2 / 4 !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .live-workspace .launcher.open {
    left: 0 !important;
    right: 0 !important;
    top: var(--v3-top) !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100dvh - var(--v3-top) - 8px) !important;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)) !important;
    padding: 10px 12px 12px !important;
    overflow: auto !important;
  }
}

/* Final workspace header composition: match the large banner/search/profile mockup. */
@media (min-width: 981px) {
  .live-workspace {
    --v3-top: 156px;
  }

  .live-workspace .suitebar {
    height: var(--v3-top) !important;
    display: grid !important;
    grid-template-columns: minmax(620px, 1fr) minmax(220px, 420px) 126px !important;
    grid-template-rows: 56px 72px !important;
    align-items: start !important;
    column-gap: 20px !important;
    row-gap: 10px !important;
    padding: 6px 18px 0 !important;
    background:
      linear-gradient(90deg, rgba(7, 18, 29, 0.72), rgba(19, 64, 89, 0.94) 48%, rgba(30, 96, 132, 0.88)),
      var(--v3-navy) !important;
    border-bottom: 2px solid rgba(255, 255, 255, 0.8) !important;
    overflow: visible !important;
  }

  .live-workspace .suite-brand {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: start !important;
    width: min(820px, 100%) !important;
    height: 142px !important;
  }

  .live-workspace .workspace-top-banner {
    width: 100% !important;
    height: 142px !important;
    object-fit: contain !important;
    object-position: left top !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    background: rgba(0, 0, 0, 0.18) !important;
  }

  .live-workspace .suite-actions {
    grid-column: 2 / 4 !important;
    grid-row: 1 !important;
    align-self: start !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    min-width: 0 !important;
    height: 56px !important;
    overflow: visible !important;
  }

  .live-workspace .suite-button,
  .live-workspace .suite-menu > summary {
    min-height: 44px !important;
    padding: 0 16px !important;
    border: 1px solid rgba(202, 224, 236, 0.22) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    font-size: 15px !important;
    font-weight: 850 !important;
  }

  .live-workspace .suite-role {
    display: none !important;
  }

  .live-workspace .global-search {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: end !important;
    justify-self: end !important;
    width: min(100%, 420px) !important;
    max-width: 420px !important;
    height: 62px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 64px !important;
    border: 6px solid rgba(4, 21, 34, 0.34) !important;
    background: #f8fbfc !important;
    box-shadow: none !important;
  }

  .live-workspace .global-search span {
    display: none !important;
  }

  .live-workspace .global-search input {
    height: 100% !important;
    padding: 0 18px !important;
    color: #152638 !important;
    font-size: 16px !important;
  }

  .live-workspace .global-search input::placeholder {
    color: #667987 !important;
    opacity: 1 !important;
  }

  .live-workspace .search-action {
    width: 64px !important;
    min-height: 50px !important;
    height: 50px !important;
    border-left: 1px solid rgba(8, 30, 45, 0.25) !important;
    background: var(--v3-orange) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
  }

  .live-workspace .identity.identity-photo {
    flex: 0 0 126px !important;
    width: 126px !important;
    min-width: 126px !important;
    height: 142px !important;
    display: grid !important;
    grid-template-rows: 108px 28px !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 0 !important;
    margin: -6px 0 0 2px !important;
    text-align: center !important;
  }

  .live-workspace .identity.identity-photo .identity-avatar {
    width: 126px !important;
    height: 108px !important;
    border: 1px solid rgba(202, 224, 236, 0.78) !important;
    background: #fff !important;
    color: #0c2b42 !important;
    font-size: 18px !important;
  }

  .live-workspace .identity.identity-photo .identity-avatar.no-photo span {
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    place-items: center !important;
    color: #0c2b42 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
  }

  .live-workspace .identity.identity-photo .identity-avatar img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  .live-workspace .identity.identity-photo strong {
    min-width: 0 !important;
    align-self: center !important;
    overflow: visible !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 1 !important;
    text-overflow: clip !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8) !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 981px) and (max-width: 1380px) {
  .live-workspace .suitebar {
    grid-template-columns: minmax(450px, 0.86fr) minmax(360px, 0.58fr) 104px !important;
    column-gap: 14px !important;
  }

  .live-workspace .suite-brand,
  .live-workspace .workspace-top-banner {
    height: 126px !important;
  }

  .live-workspace .suite-button,
  .live-workspace .suite-menu > summary {
    min-height: 40px !important;
    padding: 0 12px !important;
    font-size: 13px !important;
  }

  .live-workspace .identity.identity-photo {
    flex-basis: 104px !important;
    width: 104px !important;
    min-width: 104px !important;
  }

  .live-workspace .identity.identity-photo .identity-avatar {
    width: 104px !important;
  }
}

@media (max-width: 980px) {
  .live-workspace .suitebar {
    border-bottom: 2px solid rgba(255, 255, 255, 0.55) !important;
  }
}

/* Final scheduler-centered app palette. Keep this at the end so the fox menu
   stays aligned with the approved dashboard app tiles. */
.live-workspace .launcher.workspace-app-palette:not(.open) {
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.live-workspace .launcher.workspace-app-palette.open {
  position: fixed !important;
  top: calc(var(--v3-top) + 10px) !important;
  left: clamp(86px, 8vw, 120px) !important;
  right: 18px !important;
  bottom: auto !important;
  display: block !important;
  width: auto !important;
  max-width: none !important;
  max-height: calc(100dvh - var(--v3-top) - 28px) !important;
  padding: 18px !important;
  overflow: auto !important;
  border: 1px solid rgba(160, 191, 207, 0.88) !important;
  border-radius: 8px !important;
  background: rgba(247, 252, 254, 0.98) !important;
  box-shadow: 0 22px 50px rgba(8, 27, 43, 0.28) !important;
  color: #0a2b42 !important;
  z-index: 130 !important;
}

.live-workspace .workspace-app-palette .launcher-title {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 14px !important;
  padding: 0 0 12px !important;
  border-bottom: 1px solid rgba(160, 191, 207, 0.72) !important;
  color: #0a2b42 !important;
}

.live-workspace .workspace-app-palette .launcher-title span {
  display: block !important;
  color: #08263c !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1.05 !important;
}

.live-workspace .workspace-app-palette .launcher-title small {
  max-width: 620px !important;
  color: #4c6575 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  text-align: right !important;
}

.live-workspace .workspace-app-palette .launcher-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
  gap: 12px !important;
}

.live-workspace .workspace-app-palette a.launcher-app,
.live-workspace .workspace-app-palette a.launcher-app:visited {
  min-height: 88px !important;
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px !important;
  border: 1px solid rgba(168, 198, 214, 0.84) !important;
  border-left: 5px solid #1b6f89 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 24px rgba(15, 47, 68, 0.08) !important;
  color: #092942 !important;
  text-decoration: none !important;
}

.live-workspace .workspace-app-palette a.launcher-app.primary {
  border-left-color: #f26322 !important;
}

.live-workspace .workspace-app-palette a.launcher-app:hover,
.live-workspace .workspace-app-palette a.launcher-app:focus-visible {
  transform: translateY(-1px) !important;
  border-color: rgba(25, 108, 135, 0.78) !important;
  box-shadow: 0 18px 30px rgba(15, 47, 68, 0.14) !important;
}

.live-workspace .workspace-app-palette a.launcher-app img {
  width: 42px !important;
  height: 42px !important;
  object-fit: contain !important;
}

.live-workspace .workspace-app-palette a.launcher-app span {
  min-width: 0 !important;
  display: grid !important;
  gap: 5px !important;
}

.live-workspace .workspace-app-palette a.launcher-app strong {
  min-width: 0 !important;
  color: #08263c !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  white-space: normal !important;
}

.live-workspace .workspace-app-palette a.launcher-app small {
  color: #536d7d !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

.live-workspace .launcher-backdrop.open {
  position: fixed !important;
  inset: var(--v3-top) 0 0 !important;
  display: block !important;
  background: rgba(5, 23, 36, 0.2) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  z-index: 120 !important;
}

.core-app-dock {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
}

.core-app-dock a {
  border-left: 5px solid #1b6f89 !important;
}

.core-app-dock a:first-child {
  border-left-color: #f26322 !important;
}

@media (max-width: 760px) {
  .live-workspace .launcher.workspace-app-palette.open {
    top: calc(var(--v3-top) + 8px) !important;
    left: 10px !important;
    right: 10px !important;
    max-height: calc(100dvh - var(--v3-top) - 18px) !important;
    padding: 14px !important;
  }

  .live-workspace .workspace-app-palette .launcher-title {
    display: grid !important;
    align-items: start !important;
    gap: 6px !important;
  }

  .live-workspace .workspace-app-palette .launcher-title small {
    max-width: none !important;
    text-align: left !important;
  }

  .live-workspace .workspace-app-palette .launcher-grid,
  .core-app-dock {
    grid-template-columns: 1fr !important;
  }
}

/* Absolute final header pass so the mockup-style chrome wins after launcher rules. */
@media (min-width: 981px) {
  .live-workspace {
    --v3-top: 156px !important;
    grid-template-rows: var(--v3-top) minmax(0, 1fr) 28px !important;
  }

  .live-workspace .suitebar {
    height: var(--v3-top) !important;
    min-height: var(--v3-top) !important;
    max-height: var(--v3-top) !important;
    display: grid !important;
    grid-template-columns: minmax(620px, 0.92fr) minmax(420px, 0.58fr) 118px !important;
    grid-template-rows: 56px 72px !important;
    align-items: start !important;
    column-gap: 20px !important;
    row-gap: 10px !important;
    padding: 6px 18px 0 !important;
    overflow: visible !important;
    background:
      linear-gradient(90deg, rgba(7, 18, 29, 0.72), rgba(19, 64, 89, 0.94) 48%, rgba(30, 96, 132, 0.88)),
      var(--v3-navy) !important;
    border-bottom: 2px solid rgba(255, 255, 255, 0.8) !important;
  }

  .live-workspace .suite-brand {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    width: min(820px, 100%) !important;
    max-width: 820px !important;
    height: 142px !important;
    align-self: start !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .live-workspace .workspace-top-banner {
    width: 100% !important;
    max-width: none !important;
    height: 142px !important;
    object-fit: contain !important;
    object-position: left top !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .live-workspace .suite-actions {
    grid-column: 2 / 4 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    height: 56px !important;
    overflow: visible !important;
  }

  .live-workspace .suite-role {
    display: none !important;
  }

  .live-workspace .global-search {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: end !important;
    justify-self: end !important;
    width: min(100%, 620px) !important;
    min-width: 0 !important;
    max-width: 620px !important;
    height: 62px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 64px !important;
    border: 6px solid rgba(4, 21, 34, 0.34) !important;
    background: #f8fbfc !important;
    box-shadow: none !important;
  }

  .live-workspace .global-search span {
    display: none !important;
  }

  .live-workspace .search-action {
    width: 64px !important;
    min-height: 50px !important;
    height: 50px !important;
  }

  .live-workspace .identity.identity-photo {
    flex: 0 0 112px !important;
    width: 112px !important;
    min-width: 112px !important;
    height: 142px !important;
    display: grid !important;
    grid-template-rows: 108px 28px !important;
    gap: 0 !important;
    margin: -6px 0 0 2px !important;
    overflow: visible !important;
    text-align: center !important;
  }

  .live-workspace .identity.identity-photo .identity-avatar {
    width: 112px !important;
    height: 108px !important;
    border: 1px solid rgba(202, 224, 236, 0.78) !important;
    background: #fff !important;
    color: #0c2b42 !important;
  }

  .live-workspace .identity.identity-photo .identity-avatar.no-photo span {
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    place-items: center !important;
    color: #0c2b42 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
  }

  .live-workspace .identity.identity-photo strong {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 28px !important;
    text-overflow: clip !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8) !important;
    white-space: nowrap !important;
  }

  .live-workspace .nav-edge-toggle {
    position: fixed !important;
    top: calc(var(--v3-top) + 10px) !important;
    left: 14px !important;
    margin: 0 !important;
    z-index: 80 !important;
  }

  .live-workspace .rail,
  .live-workspace .rail[hidden] {
    position: fixed !important;
    top: var(--v3-top) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 106px !important;
    min-height: 106px !important;
    max-height: 106px !important;
    padding-top: 3px !important;
    padding-bottom: 14px !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    z-index: 60 !important;
  }

  .live-workspace .canvas,
  .live-workspace .crm-main {
    grid-column: 1 !important;
    grid-row: 2 !important;
    height: calc(100dvh - var(--v3-top) - 106px - 28px) !important;
    margin-top: 106px !important;
    overflow: auto !important;
  }

  .live-workspace .portal-built-footer {
    grid-row: 3 !important;
  }
}

/* Resized desktop/tablet header: protect the banner and name; let search shrink first. */
@media (min-width: 981px) and (max-width: 1220px) {
  .live-workspace .suitebar {
    grid-template-columns: minmax(620px, 1fr) minmax(150px, 320px) 118px !important;
    grid-template-rows: 54px 70px !important;
    column-gap: 12px !important;
    padding: 6px 14px 0 !important;
  }

  .live-workspace .suite-brand {
    width: 100% !important;
    max-width: none !important;
    height: 130px !important;
    min-width: 0 !important;
  }

  .live-workspace .workspace-top-banner {
    max-width: none !important;
    height: 130px !important;
    object-fit: contain !important;
    object-position: left top !important;
  }

  .live-workspace .suite-actions {
    gap: 6px !important;
    height: 50px !important;
    min-width: 0 !important;
  }

  .live-workspace .suite-button,
  .live-workspace .suite-menu > summary {
    min-height: 40px !important;
    padding: 0 7px !important;
    font-size: 12px !important;
  }

  .live-workspace .global-search {
    width: 100% !important;
    max-width: none !important;
    height: 58px !important;
    grid-template-columns: minmax(0, 1fr) 58px !important;
    border-width: 5px !important;
  }

  .live-workspace .global-search input {
    padding: 0 14px !important;
    font-size: 15px !important;
    text-overflow: ellipsis !important;
  }

  .live-workspace .search-action {
    width: 58px !important;
    min-height: 48px !important;
    height: 48px !important;
  }

  .live-workspace .identity.identity-photo {
    flex: 0 0 118px !important;
    width: 118px !important;
    min-width: 118px !important;
    height: 132px !important;
    grid-template-rows: 92px 26px !important;
  }

  .live-workspace .identity.identity-photo .identity-avatar {
    width: 118px !important;
    height: 92px !important;
  }

  .live-workspace .identity.identity-photo strong {
    width: 100% !important;
    max-width: none !important;
    font-size: 13px !important;
    line-height: 26px !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
}
