@font-face {
  font-family: "Inter";
  src: url("/fonts/InterVariable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("/fonts/InterVariable-Italic.woff2") format("woff2");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

:root {
  --mb-primary: #aad267;
  --mb-primary-dark: #8cb44b;
  --mb-primary-darker: #6e9137;
  --mb-primary-light: #ddeec0;
  --mb-primary-very-light: #f3f9e7;

  --mb-accent-blue: #4a78a8;
  --mb-accent-blue-dark: #345b85;

  --mb-text: #222831;
  --mb-text-muted: #5c6370;
  --mb-border: #dadfe3;
  --mb-page-bg: #f7f9fa;
  --mb-white: #ffffff;

  --mb-success: #4f9f3d;
  --mb-warning: #d99b2b;
  --mb-danger: #c94a4a;
  --mb-info: #4a78a8;

  --mb-text-strong: #111827;
  --mb-text-on-primary: #163020;
  --mb-icon-muted: #94a3b8;
  --mb-font-sans:
    "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
    sans-serif;
  --mb-font-mono:
    "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  --bs-font-sans: var(--mb-font-sans);

  --mb-border-subtle: rgba(34, 40, 49, 0.05);
  --mb-border-soft: rgba(34, 40, 49, 0.08);
  --mb-border-medium: rgba(34, 40, 49, 0.12);
  --mb-border-strong: rgba(34, 40, 49, 0.16);
  --mb-border-heavy: rgba(34, 40, 49, 0.18);
  --mb-border-muted: rgba(92, 99, 112, 0.45);
  --mb-border-muted-strong: rgba(92, 99, 112, 0.65);
  --mb-border-selected: rgba(17, 24, 39, 0.85);
  --mb-border-selected-muted: rgba(17, 24, 39, 0.35);

  --mb-surface-muted: #eef2f5;
  --mb-surface-soft: #f6f7f8;
  --mb-surface-raised: #f8f9fa;
  --mb-surface-hover: rgba(34, 40, 49, 0.04);
  --mb-surface-active: rgba(34, 40, 49, 0.06);
  --mb-surface-selected: rgba(34, 40, 49, 0.03);
  --mb-white-translucent: rgba(255, 255, 255, 0.55);
  --mb-info-surface-subtle: rgba(74, 120, 168, 0.08);
  --mb-info-border-subtle: rgba(74, 120, 168, 0.24);
  --mb-info-border-medium: rgba(74, 120, 168, 0.35);
  --mb-info-shadow: inset 0 0 0 1px rgba(74, 120, 168, 0.18);
  --mb-success-border-subtle: rgba(79, 159, 61, 0.18);

  --mb-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.18);
  --mb-shadow-md: 0 6px 18px rgba(15, 23, 42, 0.05);
  --mb-shadow-lg: 0 10px 30px rgba(15, 23, 42, 0.12);
  --mb-shadow-section: 0 12px 30px rgba(15, 23, 42, 0.04);
  --mb-shadow-inset-subtle: inset 0 0 0 1px rgba(15, 23, 42, 0.04);

  --mb-gradient-panel: linear-gradient(
    180deg,
    var(--mb-page-bg) 0%,
    var(--mb-white) 100%
  );
  --mb-gradient-card: linear-gradient(
    180deg,
    var(--mb-white) 0%,
    var(--mb-page-bg) 100%
  );
  --mb-gradient-control: linear-gradient(
    135deg,
    rgba(247, 249, 250, 0.95),
    rgba(255, 255, 255, 0.95)
  );
  --mb-gradient-section-header: linear-gradient(
    180deg,
    rgba(247, 249, 250, 0.95),
    rgba(255, 255, 255, 0.98)
  );

  --mb-success-soft: #ecfdf5;
  --mb-success-muted: #dcfce7;
  --mb-warning-soft: #fef3c7;
  --mb-warning-muted: #f7c948;
  --mb-danger-soft: #fffafa;
  --mb-danger-subtle: #fff5f5;
  --mb-danger-muted: #f8d7da;
  --mb-danger-border: #f1c2c7;
  --mb-danger-text: #842029;
  --mb-info-soft: #eff6ff;
  --mb-info-muted: #bfdbfe;

  --mb-neutral-soft: #e5e7eb;
  --mb-neutral-muted: #e2e8f0;
  --mb-neutral-panel: #f1f3f5;

  --mb-radius-sm: 6px;
  --mb-radius-md: 8px;
  --mb-radius-lg: 12px;
  --mb-radius-xl: 16px;
  --mb-radius-pill: 999px;

  --mb-space-xs: 0.25rem;
  --mb-space-sm: 0.5rem;
  --mb-space-md: 0.75rem;
  --mb-space-lg: 1rem;
  --mb-space-xl: 1.5rem;
  --mb-space-2xl: 2rem;

  --mb-card-bg: var(--mb-white);
  --mb-card-border: 1px solid var(--mb-border-soft);
  --mb-card-radius: var(--mb-radius-md);
  --mb-card-shadow: none;

  --mb-panel-bg: var(--mb-white);
  --mb-panel-border: 1px solid var(--mb-border-soft);
  --mb-panel-radius: var(--mb-radius-lg);
  --mb-panel-shadow: var(--mb-shadow-section);
}

body {
  min-height: 100vh;
  background-color: var(--mb-page-bg);
  color: var(--mb-text);
  font-family: var(--mb-font-sans);
}

.site-shell {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.site-main {
  flex: 1 0 auto;
}

.site-footer {
  background-color: var(--mb-white);
  border-top: 1px solid var(--mb-border-soft);
}

.navbar-brand {
  letter-spacing: 0;
  font-weight: 700;
  color: var(--mb-primary);
  display: inline-flex;
  align-items: center;
  gap: var(--mb-space-sm);
}

.navbar-brand:hover,
.navbar-brand:focus {
  color: var(--mb-primary-dark);
}

.navbar-brand img {
  display: block;
  width: 1.75rem;
  height: 1.75rem;
  object-fit: contain;
}

.min-w-0 {
  min-width: 0;
}

.navbar {
  background-color: var(--mb-white);
}

.navbar .nav-link {
  color: var(--mb-text-muted);
}

.navbar .nav-link:hover,
.navbar .nav-link:focus {
  color: var(--mb-primary);
}

.project-number-search {
  flex: 1 1 16rem;
  max-width: 24rem;
  margin: 0.5rem auto;
  position: relative;
}

.project-number-search .input-group {
  box-shadow: var(--mb-shadow-md);
}

.project-number-search__message {
  position: absolute;
  top: calc(100% + 0.25rem);
  left: 0;
  right: 0;
  z-index: 30;
  padding: 0.3rem 0.5rem;
  border: 1px solid var(--mb-danger-border);
  border-radius: var(--mb-radius-sm);
  background: var(--mb-danger-muted);
  color: var(--mb-danger-text);
  font-size: 0.78rem;
  text-align: center;
}

.card {
  border-color: var(--mb-border-soft);
}

.card,
.table,
.alert,
.form-control,
.form-select,
.btn {
  border-radius: var(--mb-radius-md);
}

.table {
  --bs-table-bg: transparent;
}

.table thead th {
  color: var(--mb-text-muted);
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
}

.table tbody td {
  vertical-align: middle;
}

.link-secondary:hover,
.link-secondary:focus {
  color: var(--mb-primary) !important;
}

.btn-primary {
  --bs-btn-bg: var(--mb-primary);
  --bs-btn-border-color: var(--mb-primary);
  --bs-btn-hover-bg: var(--mb-primary-dark);
  --bs-btn-hover-border-color: var(--mb-primary-dark);
  --bs-btn-active-bg: var(--mb-primary-dark);
  --bs-btn-active-border-color: var(--mb-primary-dark);
}

.btn-outline-secondary {
  --bs-btn-color: var(--mb-accent-blue-dark);
  --bs-btn-border-color: var(--mb-accent-blue);
  --bs-btn-hover-bg: var(--mb-accent-blue);
  --bs-btn-hover-border-color: var(--mb-accent-blue);
  --bs-btn-hover-color: var(--mb-white);
  --bs-btn-active-bg: var(--mb-accent-blue-dark);
  --bs-btn-active-border-color: var(--mb-accent-blue-dark);
  --bs-btn-active-color: var(--mb-white);
  --bs-btn-disabled-color: var(--mb-text-muted);
  --bs-btn-disabled-border-color: var(--mb-border-medium);
  font-weight: 600;
}

.text-body-secondary {
  color: var(--mb-text-muted) !important;
}

.site-main .badge.text-bg-light {
  background-color: var(--mb-page-bg) !important;
  color: var(--mb-text-muted) !important;
  border-color: var(--mb-border-soft) !important;
}

.site-main .badge {
  border-radius: var(--mb-radius-pill);
  font-weight: 700;
}

.site-main .badge.text-bg-success {
  background-color: var(--mb-success-muted) !important;
  color: var(--mb-primary-darker) !important;
}

.site-main .badge.text-bg-warning {
  background-color: var(--mb-warning-soft) !important;
  color: var(--mb-warning) !important;
}

.site-main .badge.text-bg-danger {
  background-color: var(--mb-danger-muted) !important;
  color: var(--mb-danger-text) !important;
}

.site-main .badge.text-bg-info {
  background-color: var(--mb-info-soft) !important;
  color: var(--mb-accent-blue-dark) !important;
}

.site-main .badge.text-bg-secondary,
.site-main .badge.text-bg-dark {
  background-color: var(--mb-neutral-soft) !important;
  color: var(--mb-text-muted) !important;
}

.account-menu {
  position: relative;
}

.account-menu summary {
  list-style: none;
}

.account-menu summary::-webkit-details-marker {
  display: none;
}

.account-menu__summary {
  display: inline-flex;
  align-items: center;
  gap: var(--mb-space-sm);
  padding: 0.5rem 0.8rem;
  border: 1px solid var(--mb-accent-blue);
  border-radius: var(--mb-radius-sm);
  background-color: var(--mb-white);
  color: var(--mb-accent-blue-dark);
  font-weight: 600;
  cursor: pointer;
}

.account-menu__summary:hover,
.account-menu__summary:focus,
.account-menu[open] .account-menu__summary {
  border-color: var(--mb-accent-blue);
  background-color: var(--mb-accent-blue);
  color: var(--mb-white);
}

.account-menu__summary:hover .text-body-secondary,
.account-menu__summary:focus .text-body-secondary,
.account-menu[open] .account-menu__summary .text-body-secondary {
  color: var(--mb-white) !important;
}

.account-menu__panel {
  position: absolute;
  right: 0;
  top: calc(100% + 0.5rem);
  min-width: 12rem;
  padding: var(--mb-space-sm);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background-color: var(--mb-white);
  box-shadow: var(--mb-shadow-lg);
  z-index: 20;
}

.account-menu__link {
  display: block;
  width: 100%;
  padding: 0.5rem 0.75rem;
  border: 0;
  border-radius: var(--mb-radius-md);
  background: transparent;
  color: var(--mb-text-muted);
  text-decoration: none;
  text-align: left;
}

.account-menu__link:hover,
.account-menu__link:focus {
  background-color: var(--mb-surface-hover);
  color: var(--mb-text-strong);
}

.account-menu__button {
  font: inherit;
  cursor: pointer;
}

.workspace-shell {
  min-width: 0;
}

.workspace-header,
.workspace-panel {
  background-color: var(--mb-white);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
}

.workspace-header {
  margin-bottom: var(--mb-space-lg);
}

.workspace-header__main {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--mb-space-lg);
  padding: 1rem 1.125rem 0.875rem;
}

.workspace-header__title-row {
  display: flex;
  align-items: center;
  gap: var(--mb-space-sm);
  flex-wrap: wrap;
  margin-bottom: 0.35rem;
}

.workspace-header__title {
  margin: 0;
  font-size: 1.25rem;
  line-height: 1.2;
}

.workspace-header__meta {
  display: flex;
  gap: 0.9rem;
  flex-wrap: wrap;
  font-size: 0.8rem;
  color: var(--mb-text-muted);
}

.workspace-header__actions {
  display: flex;
  gap: var(--mb-space-sm);
  flex-wrap: wrap;
}

.workspace-tabs {
  display: flex;
  gap: 0.125rem;
  flex-wrap: wrap;
  padding: 0 0.75rem;
  border-top: 1px solid var(--mb-border-subtle);
}

.workspace-tabs__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  padding: 0.45rem 0.75rem;
  border-radius: 0;
  color: var(--mb-text-muted);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  font-size: 0.92rem;
}

.workspace-tabs__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  margin-left: 0.45rem;
  padding: 0.1rem 0.4rem;
  border-radius: var(--mb-radius-pill);
  background-color: var(--mb-primary);
  color: var(--mb-white);
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.1;
}

.workspace-tabs__link:hover,
.workspace-tabs__link:focus {
  color: var(--mb-text-strong);
  background-color: var(--mb-surface-hover);
}

.workspace-tabs__link.is-active {
  color: var(--mb-text-strong);
  background-color: var(--mb-surface-selected);
  border-bottom-color: var(--mb-primary);
}

.project-dashboard-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  align-items: center;
  justify-content: space-between;
  padding: var(--mb-space-sm);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-gradient-control);
}

.project-dashboard-controls__group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  align-items: center;
}

.project-dashboard-controls__label {
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.project-dashboard-controls__options {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.project-dashboard-controls__option {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  padding: 0.35rem 0.7rem;
  border: 1px solid var(--mb-border-medium);
  border-radius: var(--mb-radius-pill);
  color: var(--mb-text-muted);
  font-size: 0.84rem;
  font-weight: 600;
  text-decoration: none;
  background: var(--mb-white);
}

.project-dashboard-controls__option:hover,
.project-dashboard-controls__option:focus,
.project-dashboard-controls__option.is-active {
  border-color: var(--mb-primary-dark);
  color: var(--mb-text-on-primary);
  background: var(--mb-primary);
}

.project-dashboard-controls__option--disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

.project-dashboard-controls__option--disabled:hover,
.project-dashboard-controls__option--disabled:focus {
  border-color: var(--mb-border-medium);
  color: var(--mb-text-muted);
  background: var(--mb-white);
}

.project-dashboard-controls__option--disabled.is-active {
  border-color: var(--mb-border-selected-muted);
  color: var(--mb-text-strong);
  background: var(--mb-neutral-soft);
}

.project-dashboard-controls__hint {
  width: 100%;
  color: var(--mb-text-muted);
  font-size: 0.78rem;
}

.project-dashboard-public-url {
  border: 0;
  border-radius: var(--mb-radius-lg);
  background: var(--mb-white);
  box-shadow: var(--mb-shadow-sm);
}

.project-dashboard-public-url__body {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0.6rem;
}

.project-dashboard-public-url__copy {
  display: grid;
  gap: 0.3rem;
  min-width: 0;
}

.project-dashboard-public-url__rows {
  display: grid;
  gap: 0.3rem;
}

.project-dashboard-public-url__row {
  display: grid;
  grid-template-columns: 3.75rem minmax(10rem, 1fr) auto;
  gap: var(--mb-space-sm);
  align-items: center;
  min-width: 0;
}

.project-dashboard-public-url__label {
  color: var(--mb-text-muted);
  font-size: 0.78rem;
}

.project-dashboard-public-url__tag {
  display: inline-flex;
  justify-content: center;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-pill);
  color: var(--mb-text-muted);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.2;
  padding: 0.18rem 0.45rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.project-dashboard-public-url__line {
  display: flex;
  min-width: 0;
  gap: var(--mb-space-sm);
  align-items: center;
}

.project-dashboard-public-url__url {
  display: block;
  width: 100%;
  max-width: min(56vw, 24rem);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-page-bg);
  color: var(--mb-text-strong);
  cursor: pointer;
  font-family: var(--mb-font-mono);
  font-size: 0.8rem;
  line-height: 1.2;
  overflow: hidden;
  padding: 0.35rem 0.5rem;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.project-dashboard-public-url__url:hover,
.project-dashboard-public-url__url:focus {
  border-color: var(--mb-primary);
  color: var(--mb-primary-dark);
  outline: 0;
  box-shadow: 0 0 0 0.16rem rgba(170, 210, 103, 0.22);
}

.project-dashboard-public-url__status {
  color: var(--mb-success);
  font-size: 0.78rem;
}

.project-dashboard-public-url__actions {
  display: inline-flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  align-items: center;
}

.project-dashboard-groups {
  display: grid;
  gap: var(--mb-space-lg);
}

.project-dashboard-group {
  overflow: hidden;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-white);
}

.project-dashboard-group__header {
  display: flex;
  justify-content: space-between;
  gap: var(--mb-space-lg);
  padding: var(--mb-space-lg);
  border-bottom: 1px solid var(--mb-border-soft);
  background: var(--mb-page-bg);
}

.project-status-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.55rem;
  padding: 0.2rem 0.55rem;
  border-radius: var(--mb-radius-pill);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
  text-transform: capitalize;
}

.project-status-badge--active {
  color: var(--mb-primary-darker);
  background: var(--mb-success-muted);
}

.project-status-badge--draft {
  color: var(--mb-warning);
  background: var(--mb-warning-soft);
}

.project-status-badge--closed {
  color: var(--mb-text-muted);
  background: var(--mb-neutral-soft);
}

.project-status-badge--withdrawn {
  color: var(--mb-warning);
  background: var(--mb-warning-soft);
}

.project-status-badge--cancelled {
  color: var(--mb-danger);
  background: var(--mb-danger-soft);
}

.workspace-panel__body {
  display: grid;
  grid-template-columns: minmax(0, 1.9fr) minmax(17rem, 0.95fr);
  gap: 0;
}

.workspace-panel__body--documents {
  grid-template-columns: minmax(18rem, 0.9fr) minmax(22rem, 1.25fr);
}

.workspace-panel__body--stacked {
  grid-template-columns: minmax(0, 1fr);
}

.workspace-panel__main {
  min-width: 0;
  padding: 1rem 1.125rem;
}

.workspace-panel__sidebar {
  min-width: 0;
  padding: 1rem 1rem;
  border-left: 1px solid var(--mb-border-subtle);
  background-color: var(--mb-page-bg);
}

.workspace-document-removal-history {
  grid-column: 1 / -1;
  min-width: 0;
  padding: 1rem 1.125rem;
  border-top: 1px solid var(--mb-border-subtle);
  background: var(--mb-white);
}

.workspace-panel__intro {
  margin-bottom: 0.9rem;
}

.workspace-panel__intro--planholders {
  margin-bottom: var(--mb-space-md);
}

.workspace-panel__intro-row--planholders {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  flex-wrap: wrap;
  justify-content: space-between;
}

.workspace-panel__title {
  margin: 0 0 0.2rem;
  font-size: 1.05rem;
  line-height: 1.25;
}

.workspace-panel__title--planholders {
  margin: 0;
}

.workspace-panel__description {
  margin: 0;
  font-size: 0.9rem;
  color: var(--mb-text-muted);
}

.workspace-form-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.875rem 1rem;
}

.workspace-section,
.workspace-sidebar-section {
  min-width: 0;
}

.workspace-section__title {
  margin: 0 0 0.45rem;
  font-size: 0.78rem;
  text-transform: uppercase;
  color: var(--mb-text-muted);
  letter-spacing: 0;
}

.workspace-kv-list,
.workspace-sidebar-list {
  margin: 0;
}

.workspace-kv-row {
  display: grid;
  grid-template-columns: minmax(7.5rem, 9.5rem) minmax(0, 1fr);
  gap: var(--mb-space-md);
  align-items: start;
  padding: 0.38rem 0;
  border-bottom: 1px solid var(--mb-border-subtle);
}

.workspace-kv-row dt,
.workspace-kv-row dd {
  margin: 0;
}

.workspace-kv-row dt {
  font-size: 0.82rem;
  color: var(--mb-text-muted);
}

.workspace-kv-row dd {
  font-size: 0.92rem;
  line-height: 1.35;
  word-break: break-word;
}

.workspace-empty-panel {
  min-height: 10rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border: 1px dashed var(--mb-border-medium);
  border-radius: var(--mb-radius-md);
  padding: var(--mb-space-lg);
  background-color: var(--mb-white-translucent);
}

.workspace-info-form__sections {
  display: grid;
  gap: var(--mb-space-lg);
}

.workspace-info-section {
  background: var(--mb-panel-bg);
  border: 1px solid var(--mb-border-medium);
  border-left: 4px solid var(--mb-primary-dark);
  border-radius: var(--mb-panel-radius);
  box-shadow: var(--mb-panel-shadow);
  overflow: hidden;
  padding: 0;
}

.workspace-info-section--basics {
  border-left-color: var(--mb-primary-dark);
}

.workspace-info-section--bid {
  border-left-color: var(--mb-accent-blue);
}

.workspace-info-section--prebid {
  border-left-color: var(--mb-primary-dark);
}

.workspace-info-section--qna {
  border-left-color: var(--mb-accent-blue);
}

.workspace-info-section--description {
  border-left-color: var(--mb-primary-dark);
}

.workspace-info-section--location {
  border-left-color: var(--mb-accent-blue);
}

.workspace-info-section--owner {
  border-left-color: var(--mb-border-muted-strong);
}

.workspace-info-section--solicitor {
  border-left-color: var(--mb-border-muted-strong);
}

.workspace-info-section__header {
  background: var(--mb-gradient-section-header);
  border-bottom: 1px solid var(--mb-border-soft);
  margin: 0;
  padding: 0.95rem 1rem 0.85rem;
}

.workspace-info-section__title {
  color: var(--mb-text);
  font-size: 1rem;
  font-weight: 700;
  margin: 0;
}

.workspace-info-section > .row.g-3 {
  padding: var(--mb-space-lg);
}

.workspace-info-section__description {
  color: var(--mb-text-muted);
  font-size: 0.875rem;
  margin: 0.2rem 0 0;
}

.procurement-template-tool__filters .btn {
  min-width: 0;
}

.procurement-template-tool__list {
  display: grid;
  gap: var(--mb-space-sm);
  max-height: 28rem;
  overflow-y: auto;
  padding-right: var(--mb-space-xs);
}

.procurement-template-tool__family {
  display: grid;
  gap: var(--mb-space-xs);
}

.procurement-template-tool__family + .procurement-template-tool__family {
  border-top: 1px solid var(--mb-border-soft);
  padding-top: var(--mb-space-md);
}

.procurement-template-tool__family-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--mb-space-sm);
  border-left: 3px solid var(--mb-primary);
  color: var(--mb-text);
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.3;
  padding-left: var(--mb-space-sm);
}

.procurement-template-tool__family-title span {
  color: var(--mb-text-muted);
  font-size: 0.8125rem;
  font-weight: 500;
  white-space: nowrap;
}

.procurement-template-tool__family-items {
  display: grid;
  gap: var(--mb-space-xs);
}
.procurement-template-tool__item,
.procurement-template-tool__empty {
  width: 100%;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
  padding: var(--mb-space-md);
  text-align: left;
}

.procurement-template-tool__item {
  color: var(--mb-text);
}

.procurement-template-tool__item:hover,
.procurement-template-tool__item:focus {
  border-color: var(--mb-info-border-medium);
  box-shadow: var(--mb-info-shadow);
}

.procurement-template-tool__item.is-active {
  border-color: var(--mb-primary-dark);
  background: var(--mb-primary-very-light);
}

.procurement-template-tool__preview {
  min-height: 100%;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-white);
  padding: var(--mb-space-lg);
}

.procurement-template-tool__preview-text {
  min-height: 11rem;
  white-space: pre-wrap;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-surface-soft);
  padding: var(--mb-space-lg);
}

.procurement-template-tool__preview-variable {
  border-radius: 3px;
  transition:
    background-color 160ms ease,
    box-shadow 160ms ease;
}

.procurement-template-tool__preview-variable.is-active {
  background: var(--mb-primary-light);
  box-shadow: inset 0 -2px 0 var(--mb-primary-dark);
  color: var(--mb-text-strong);
}

.workspace-info-closing-field {
  background: var(--mb-page-bg);
  border: 1px solid var(--mb-info-border-subtle);
  border-radius: var(--mb-radius-sm);
  padding: var(--mb-space-md);
}

.workspace-info-closing-field .form-label {
  color: var(--mb-text);
  font-weight: 800;
}

.workspace-info-form__actions {
  align-items: center;
  display: flex;
  gap: var(--mb-space-md);
  justify-content: flex-end;
  margin-top: 1.25rem;
}

.workspace-contact-card {
  background: var(--mb-gradient-panel);
  border: 1px solid var(--mb-border-medium);
  border-radius: var(--mb-radius-lg);
  padding: var(--mb-space-lg);
}

.workspace-contact-card--nested {
  background: var(--mb-white);
  box-shadow: var(--mb-shadow-inset-subtle);
}

.workspace-questions__summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--mb-space-md);
}

.workspace-questions__list {
  display: grid;
  gap: var(--mb-space-md);
}

.workspace-question-batch {
  align-items: center;
  background: var(--mb-gradient-panel);
  border: 1px solid var(--mb-info-border-subtle);
  border-radius: var(--mb-radius-lg);
  display: flex;
  gap: var(--mb-space-lg);
  justify-content: space-between;
  padding: var(--mb-space-lg);
}

.workspace-question-batch__main {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-lg);
}

.workspace-question-batch__counts {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
}

.workspace-question-batch__counts span {
  background: var(--mb-white);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-pill);
  color: var(--mb-text-muted);
  font-size: 0.875rem;
  padding: 0.35rem 0.65rem;
}

.workspace-question-batch__actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  justify-content: flex-end;
}

.workspace-question-batch__notice {
  background: var(--mb-warning-soft);
  border: 1px solid rgba(217, 155, 43, 0.3);
  border-radius: var(--mb-radius-md);
  color: var(--mb-text);
  font-size: 0.9rem;
  line-height: 1.45;
  padding: var(--mb-space-md) var(--mb-space-lg);
  width: 100%;
}
.workspace-question-batch__badge {
  background: var(--mb-info-surface-subtle);
  border: 1px solid var(--mb-info-border-subtle);
  color: var(--mb-accent-blue-dark);
}

.workspace-question-row--in-batch {
  box-shadow: var(--mb-info-shadow);
}
.workspace-question-row {
  border: 1px solid var(--mb-border-medium);
  border-left: 4px solid var(--mb-border-muted);
  border-radius: var(--mb-radius-sm);
  background: var(--mb-white);
}

.workspace-question-row--unanswered {
  border-left-color: var(--mb-danger);
}

.workspace-question-row--answered {
  border-left-color: var(--mb-success);
  background: var(--mb-success-soft);
}

.workspace-question-row--hidden {
  border-left-color: var(--mb-text-muted);
  background: var(--mb-surface-raised);
}

.workspace-question-row__summary {
  align-items: center;
  background: var(--mb-neutral-panel);
  cursor: pointer;
  display: flex;
  gap: var(--mb-space-lg);
  justify-content: space-between;
  list-style: none;
  min-height: 3rem;
  padding: 0.75rem 1rem;
}

.workspace-question-row__summary::-webkit-details-marker {
  display: none;
}

.workspace-question-row__chevron {
  color: var(--mb-text-muted);
  flex: 0 0 auto;
  height: 1.1rem;
  transition: transform 0.15s ease;
  width: 1.1rem;
}

.workspace-question-row[open] .workspace-question-row__chevron {
  transform: rotate(180deg);
}

.workspace-question-row__main {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
}

.workspace-question-row__badges,
.workspace-question-row__meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
}

.workspace-question-row__title {
  color: var(--mb-text);
  font-weight: 600;
}

.workspace-question-row__meta {
  color: var(--mb-text-muted);
  font-size: 0.875rem;
}

.workspace-question-row__body {
  padding: var(--mb-space-lg);
}

.workspace-question {
  border: 1px solid var(--mb-border-medium);
  border-left: 4px solid var(--mb-border-muted);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
  padding: var(--mb-space-lg);
}

.workspace-question--unanswered {
  border-left-color: var(--mb-danger);
  background: var(--mb-danger-soft);
}

.workspace-question--answered {
  border-left-color: var(--mb-success);
  background: var(--mb-success-soft);
}

.workspace-question--hidden {
  border-left-color: var(--mb-text-muted);
  background: var(--mb-surface-raised);
}

.workspace-questions__filter-chip {
  color: inherit;
  text-decoration: none;
}

.workspace-questions__filter-chip:hover,
.workspace-questions__filter-chip.is-active {
  border-color: var(--mb-info-border-medium);
  box-shadow: var(--mb-info-shadow);
}

.workspace-question__header {
  display: flex;
  justify-content: space-between;
  gap: var(--mb-space-lg);
  margin-bottom: var(--mb-space-lg);
}

.workspace-question__status-row,
.workspace-question__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  align-items: center;
}

.workspace-question__meta {
  color: var(--mb-text-muted);
  font-size: 0.875rem;
  margin-top: 0.5rem;
}

.workspace-question__attention {
  align-self: flex-start;
  color: var(--mb-danger);
  font-size: 0.875rem;
  font-weight: 700;
  white-space: nowrap;
}

.workspace-question__label,
.project-public__qa-label {
  color: var(--mb-text-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.workspace-question__body p,
.project-public__qa-question p,
.project-public__qa-answer p {
  margin: 0.25rem 0 0;
  white-space: pre-line;
}

.workspace-question__form {
  border-top: 1px solid var(--mb-border-medium);
  margin-top: var(--mb-space-lg);
  padding-top: var(--mb-space-lg);
}

.workspace-question__published-answer {
  border-top: 1px solid var(--mb-success-border-subtle);
  margin-top: var(--mb-space-lg);
  padding-top: var(--mb-space-lg);
}

.workspace-question__published-answer p {
  margin: 0.25rem 0 0.5rem;
  white-space: pre-line;
}

.project-public__qa-list {
  display: grid;
  gap: var(--mb-space-lg);
}

.project-public__qa-section-list {
  display: grid;
  gap: var(--mb-space-lg);
}

.project-public__qa-personal-summary {
  background: var(--mb-gradient-card);
  border: var(--mb-panel-border);
  border-radius: var(--mb-panel-radius);
  box-shadow: var(--mb-panel-shadow);
  display: grid;
  gap: var(--mb-space-lg);
  margin-bottom: var(--mb-space-lg);
  padding: var(--mb-space-lg);
}

.project-public__qa-kicker {
  color: var(--mb-primary-darker);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.project-public__qa-summary-grid {
  display: grid;
  gap: var(--mb-space-sm);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.project-public__qa-summary-card {
  background: var(--mb-white);
  border: var(--mb-card-border);
  border-radius: var(--mb-card-radius);
  display: grid;
  gap: 0.1rem;
  padding: var(--mb-space-md);
}

.project-public__qa-summary-count {
  color: var(--mb-text-strong);
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1;
}

.project-public__qa-summary-label {
  color: var(--mb-text-muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.project-public__qa-summary-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
}

.project-public__qa-closed {
  color: var(--mb-warning);
  font-size: 1.25rem;
  font-weight: 700;
  margin: -0.25rem 0 1rem;
  text-align: center;
}

.project-public__qa-controls {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  justify-content: space-between;
  margin-bottom: var(--mb-space-lg);
}

.project-public__qa-controls > div {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
}

.project-public__qa-filter-status {
  color: var(--mb-text-muted);
  font-size: 0.9rem;
  font-weight: 700;
}

.project-public__qa-deadline {
  color: var(--mb-text);
  font-weight: 600;
  margin-bottom: var(--mb-space-md);
}

.project-public__qa-deadline strong {
  font-weight: 800;
}

.project-public__qa-table-section {
  display: grid;
  gap: var(--mb-space-md);
}

.project-public__qa-table-title {
  border-bottom: 1px solid var(--mb-accent-blue-dark);
  color: var(--mb-text);
  font-size: 1rem;
  font-weight: 700;
  margin: 0;
  padding-bottom: 0.35rem;
}

.project-public__qa-table-title span {
  font-weight: 400;
}

.project-public__qa-empty {
  color: var(--mb-text);
  font-weight: 600;
  padding: 1.4rem 1rem;
  text-align: center;
}

.project-public__qa-accordion {
  display: grid;
  gap: 0.65rem;
}

.project-public__qa-row {
  background: var(--mb-surface-soft);
  border: 1px solid var(--mb-border-soft);
  border-left: 4px solid var(--mb-border-muted);
}

.project-public__qa-row--answered {
  border-left-color: var(--mb-success);
}

.project-public__qa-row--pending {
  border-left-color: var(--mb-warning);
}

.project-public__qa-row--hidden {
  border-left-color: var(--mb-text-muted);
}

.project-public__qa-row--duplicate {
  border-left-color: var(--mb-info);
}

.project-public__qa-owner-badge {
  background: var(--mb-primary-very-light);
  border: 1px solid var(--mb-primary-dark);
  color: var(--mb-text-on-primary);
}

.project-public__qa-row summary {
  align-items: center;
  background: var(--mb-neutral-panel);
  cursor: pointer;
  display: flex;
  gap: var(--mb-space-lg);
  justify-content: space-between;
  list-style: none;
  min-height: 2.6rem;
  padding: 0.65rem 0.75rem;
}

.project-public__qa-row summary:hover {
  background: var(--mb-neutral-soft);
}

.project-public__qa-row summary::-webkit-details-marker {
  display: none;
}

.project-public__qa-row-main {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
}

.project-public__qa-row-badges {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.project-public__qa-row-title {
  color: var(--mb-text);
  font-weight: 600;
}

.project-public__qa-timestamps {
  color: var(--mb-text-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 0.875rem;
  gap: var(--mb-space-md);
  margin-top: 0.55rem;
}

.project-public__qa-row-caret {
  border-left: 0.3rem solid transparent;
  border-right: 0.3rem solid transparent;
  border-top: 0.38rem solid var(--mb-text-muted);
  flex: 0 0 auto;
  transform: rotate(180deg);
}

.project-public__qa-row[open] .project-public__qa-row-caret {
  transform: rotate(0);
}

.project-public__qa-row-body {
  background: var(--mb-surface-soft);
  border-top: 1px solid var(--mb-border-soft);
  padding: 0.9rem 0.75rem 1rem;
}

.project-public__qa-item,
.project-public__question-submit {
  border: 1px solid var(--mb-border-medium);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
  padding: var(--mb-space-lg);
}

.project-public__qa-answer {
  border-top: 1px solid var(--mb-border-medium);
  margin-top: var(--mb-space-lg);
  padding-top: var(--mb-space-lg);
}

@media (max-width: 767.98px) {
  .project-number-search {
    flex-basis: 100%;
    max-width: none;
    width: 100%;
    margin: 0.75rem 0;
  }

  .project-number-search__message {
    position: static;
    margin-top: 0.35rem;
  }

  .workspace-questions__summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .workspace-question-batch {
    align-items: stretch;
    flex-direction: column;
  }

  .workspace-question-batch__actions {
    justify-content: flex-start;
  }

  .workspace-question__header {
    display: block;
  }

  .workspace-question__attention {
    display: inline-block;
    margin-top: var(--mb-space-md);
  }
}

.workspace-planholders {
  display: grid;
  gap: var(--mb-space-lg);
}

.workspace-planholders__toolbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: var(--mb-space-lg);
  flex-wrap: wrap;
}

.workspace-planholders__summary {
  display: flex;
  gap: var(--mb-space-md);
  flex-wrap: wrap;
}

.workspace-planholders__summary--inline {
  justify-content: flex-end;
}

.workspace-planholders__summary-chip {
  display: inline-flex;
  align-items: baseline;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-sm);
  background-color: var(--mb-page-bg);
}

.workspace-planholders__summary-label {
  color: var(--mb-text-muted);
  font-size: 0.78rem;
}

.workspace-planholders__summary-value {
  color: var(--mb-text);
  font-size: 0.9rem;
  font-weight: 700;
}

.workspace-planholders__actions {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.workspace-planholders__filters {
  flex: 1 1 24rem;
  margin-bottom: 0;
}

.workspace-planholders__filters .form-label {
  margin-bottom: 0.35rem;
}

.workspace-planholders__search-wrap {
  max-width: 46rem;
}

.workspace-planholders__view-toggle {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-page-bg);
}

.workspace-planholders__view-option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 4.25rem;
  padding: 0.35rem 0.65rem;
  border-radius: var(--mb-radius-sm);
  color: var(--mb-text-muted);
  font-size: 0.84rem;
  font-weight: 600;
  text-decoration: none;
}

.workspace-planholders__view-option:hover {
  color: var(--mb-text);
}

.workspace-planholders__view-option.is-active {
  background-color: var(--mb-text);
  color: var(--mb-white);
  box-shadow: var(--mb-shadow-sm);
}

.workspace-planholders__view-option.is-active:hover {
  color: var(--mb-white);
}

.workspace-planholders-modal__compact-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--mb-space-md);
  align-items: center;
}

.workspace-planholders-modal__search-control {
  min-width: 0;
}

.workspace-planholders-modal__actions {
  display: flex;
  align-items: center;
  gap: var(--mb-space-sm);
  flex-wrap: nowrap;
}

.workspace-planholders-modal__sort {
  width: 12rem;
}

.workspace-planholders-modal__toolbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--mb-space-lg);
  flex-wrap: wrap;
}

.workspace-planholders-modal__eyebrow {
  color: var(--mb-text-muted);
  font-size: 0.78rem;
  font-weight: 600;
  text-transform: uppercase;
}
.workspace-planholders-modal__status {
  padding: 0.9rem 1rem;
  border: 1px dashed var(--mb-border-medium);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-page-bg);
  color: var(--mb-text-muted);
}

.workspace-planholders-modal__results-list {
  display: grid;
  gap: var(--mb-space-md);
}

.workspace-planholders-modal__preview {
  padding: 0.75rem 1rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-white);
}

.workspace-planholders-modal__alpha {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.workspace-planholders-modal__preview-table th {
  white-space: nowrap;
  color: var(--mb-text-muted);
  font-size: 0.82rem;
  font-weight: 600;
}

.workspace-planholders-modal__preview-table td {
  vertical-align: middle;
}

.workspace-planholders-modal__pagination-ellipsis {
  color: var(--mb-text-muted);
}
.workspace-planholders-modal__result {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--mb-space-lg);
  align-items: center;
  padding: 0.95rem 1rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-white);
}

.workspace-planholders-modal__result-title-row {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  flex-wrap: wrap;
  margin-bottom: 0.2rem;
}

.workspace-planholders-modal__result-company {
  font-weight: 600;
  color: var(--mb-text);
}

.workspace-planholders-modal__result-designation {
  padding: 0.15rem 0.5rem;
  border-radius: var(--mb-radius-pill);
  background-color: var(--mb-surface-muted);
  color: var(--mb-text-muted);
  font-size: 0.75rem;
  font-weight: 600;
}

.workspace-planholders-modal__result-contact {
  color: var(--mb-text-muted);
  line-height: 1.4;
}

.workspace-planholders-modal__result-divider {
  display: inline-block;
  margin: 0 0.35rem;
  color: var(--mb-icon-muted);
}

.workspace-bidding-status {
  padding: var(--mb-space-lg);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-surface-soft);
}

.workspace-bidding-status__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--mb-space-md);
}

.workspace-bidding-status__eyebrow {
  margin-bottom: var(--mb-space-xs);
  color: var(--mb-text-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.workspace-bidding-status__badge {
  background: var(--mb-primary-light);
  color: var(--mb-text-on-primary);
  font-weight: 700;
}

.workspace-bidding-status__choices {
  display: grid;
  gap: var(--mb-space-md);
  margin-top: var(--mb-space-lg);
}

.workspace-bidding-status__choices .form-check {
  padding: var(--mb-space-md) var(--mb-space-md) var(--mb-space-md) 2.25rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
}

.workspace-bidding-status__choices .form-check-input {
  margin-top: 0.35rem;
}

.workspace-bidding-status--inline {
  margin-top: var(--mb-space-md);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.workspace-bidding-status--inline .form-check-label {
  color: var(--mb-text);
  font-size: 0.875rem;
  font-weight: 600;
}

.workspace-planholders-modal__result-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  margin-top: 0.25rem;
  color: var(--mb-text-muted);
  font-size: 0.86rem;
}

.workspace-planholders-modal__result-action {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.workspace-planholders-modal__create-shell {
  border-top: 1px solid var(--mb-border-soft);
  padding-top: var(--mb-space-lg);
}

.workspace-planholders__groups {
  display: grid;
  gap: var(--mb-space-lg);
}

.workspace-planholders__group {
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-white);
  overflow: hidden;
}

.workspace-planholders__group-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--mb-space-md);
  padding: 0.8rem 1rem;
  background-color: var(--mb-page-bg);
  border-bottom: 1px solid var(--mb-border-soft);
}

.workspace-planholders__group-title {
  margin: 0;
  font-size: 0.98rem;
  line-height: 1.2;
}

.workspace-planholders__group-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.9rem;
  padding: 0.2rem 0.45rem;
  border-radius: var(--mb-radius-pill);
  background-color: var(--mb-surface-active);
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  font-weight: 700;
}

.workspace-planholders__table th,
.workspace-planholders__table td {
  vertical-align: top;
}

.workspace-planholders__table {
  width: 100%;
  table-layout: fixed;
}

.workspace-planholders__table td {
  font-size: 0.9rem;
}

.workspace-planholders__col--company {
  width: 16%;
}

.workspace-planholders__col--contact {
  width: 19%;
}

.workspace-planholders__col--location {
  width: 34%;
}

.workspace-planholders__col--designation {
  width: 16%;
}

.workspace-planholders__col--source {
  width: 19%;
}

.workspace-planholders__col--added {
  width: 12%;
}

.workspace-planholders__table td,
.workspace-planholders__table th {
  overflow-wrap: anywhere;
}

.workspace-planholders__sort-link {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  color: inherit;
  text-decoration: none;
  font-weight: 600;
}

.workspace-planholders__sort-link:hover,
.workspace-planholders__sort-link:focus {
  color: var(--mb-text-strong);
}

.workspace-planholders__sort-link.is-active {
  color: var(--mb-text-strong);
  font-weight: 700;
}

.workspace-planholders__sort-indicator {
  color: var(--mb-text-strong);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.15rem;
  height: 1.15rem;
  border-radius: var(--mb-radius-pill);
  background-color: var(--mb-surface-active);
  font-size: 0.95rem;
  font-weight: 800;
  line-height: 1;
}

.workspace-contacts__page-header {
  margin-bottom: var(--mb-space-lg);
}

.workspace-contacts__page-copy p {
  max-width: 42rem;
}

.workspace-contacts__toolbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: var(--mb-space-md);
  flex-wrap: wrap;
}

.workspace-contacts__toolbar-meta {
  display: grid;
  gap: 0.2rem;
}

.workspace-contacts__eyebrow {
  color: var(--mb-text-muted);
  font-size: 0.78rem;
}

.workspace-contacts__toolbar-actions {
  display: inline-flex;
  align-items: center;
  gap: var(--mb-space-sm);
  flex-wrap: wrap;
}

.workspace-contacts__filters .form-label {
  margin-bottom: 0.35rem;
}

.workspace-contacts__table th,
.workspace-contacts__table td {
  padding-top: 0.85rem;
  padding-bottom: 0.85rem;
}

.workspace-document-upload {
  background-color: var(--mb-white);
}

.document-browser {
  min-width: 0;
}

.document-browser__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--mb-space-md);
  margin-bottom: 0.85rem;
}

.document-browser__title {
  margin: 0 0 0.2rem;
  font-size: 1rem;
  line-height: 1.25;
}

.document-browser__subtitle {
  color: var(--mb-text-muted);
  font-size: 0.82rem;
}

.document-tree {
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-white);
  overflow: hidden;
}

.document-tree__root,
.document-tree__summary,
.document-tree__file {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
}

.document-tree__root {
  padding: 0.65rem 0.75rem;
  border-bottom: 1px solid var(--mb-border-subtle);
  background-color: var(--mb-page-bg);
}

.document-tree__root-label,
.document-tree__folder-label {
  min-width: 0;
  font-weight: 600;
}

.document-tree__children {
  padding: 0.35rem 0;
}

.document-tree__folder {
  min-width: 0;
}

.document-tree__folder.is-animating {
  overflow: hidden;
}

.document-tree__summary {
  min-height: 2.3rem;
  padding: 0.48rem 0.75rem;
  cursor: pointer;
  list-style: none;
}

.document-tree__summary::-webkit-details-marker {
  display: none;
}

.document-tree__summary::before {
  content: "";
  width: 0;
  height: 0;
  margin-top: 0.45rem;
  border-top: 0.28rem solid transparent;
  border-bottom: 0.28rem solid transparent;
  border-left: 0.36rem solid var(--mb-text-muted);
  flex-shrink: 0;
}

.document-tree__folder[open] > .document-tree__summary::before {
  transform: rotate(90deg);
}

.document-tree__summary::before {
  transition: transform 150ms ease;
}

.document-tree__summary:hover,
.document-tree__summary:focus {
  background-color: var(--mb-surface-hover);
}

.document-tree__folder-icon,
.document-tree__file-icon {
  flex: 0 0 auto;
  display: block;
}

.document-tree__folder-icon {
  width: 1.28rem;
  height: 1.28rem;
  margin-top: 0.06rem;
  fill: var(--mb-warning-muted);
  stroke: var(--mb-warning);
  stroke-width: 1.4;
  stroke-linejoin: round;
}

.document-tree__file-icon {
  width: 1.55rem;
  height: auto;
  aspect-ratio: 4 / 5;
  align-self: flex-start;
  margin-top: 0.02rem;
  overflow: visible;
}

.document-tree__file-page {
  fill: var(--mb-white);
  stroke: var(--mb-icon-muted);
  stroke-width: 1.5;
  stroke-linejoin: round;
}

.document-tree__file-fold {
  fill: var(--mb-surface-muted);
  stroke: var(--mb-icon-muted);
  stroke-width: 1.5;
  stroke-linejoin: round;
}

.document-tree__file-icon text {
  fill: var(--mb-text-muted);
  font-size: 6px;
  font-weight: 700;
}

.document-tree__file-icon--pdf .document-tree__file-page {
  fill: var(--mb-danger-subtle);
  stroke: var(--mb-danger);
}

.document-tree__file-icon--pdf .document-tree__file-fold {
  fill: var(--mb-danger-muted);
  stroke: var(--mb-danger);
}

.document-tree__file-icon--pdf text {
  fill: var(--mb-danger);
}

.document-tree__file-icon--word .document-tree__file-page {
  fill: var(--mb-info-soft);
  stroke: var(--mb-accent-blue);
}

.document-tree__file-icon--word .document-tree__file-fold {
  fill: var(--mb-info-muted);
  stroke: var(--mb-accent-blue);
}

.document-tree__file-icon--word text {
  fill: var(--mb-accent-blue-dark);
}

.document-tree__file-icon--excel .document-tree__file-page {
  fill: var(--mb-success-soft);
  stroke: var(--mb-success);
}

.document-tree__file-icon--excel .document-tree__file-fold {
  fill: var(--mb-success-muted);
  line-clamp: 2;
  line-clamp: 2;
  stroke: var(--mb-success);
}

.document-tree__file-icon--excel text {
  fill: var(--mb-success);
}

.document-tree__count {
  margin-left: auto;
  color: var(--mb-text-muted);
  font-size: 0.78rem;
}

.document-tree__files,
.document-tree__empty {
  margin-left: 2.65rem;
  border-left: 1px solid var(--mb-border-soft);
}

.document-tree__nested-folders {
  margin-left: 1.35rem;
  border-left: 1px solid var(--mb-border-soft);
}

.document-tree__content {
  overflow: hidden;
}

.document-tree__empty {
  padding: 0.35rem 0.75rem 0.65rem;
  color: var(--mb-text-muted);
  font-size: 0.82rem;
}

.document-tree__file {
  padding: 0.55rem 0.75rem;
  border-top: 1px solid var(--mb-border-subtle);
}

.document-tree__summary--nested {
  padding-left: 0.65rem;
}

.document-tree__files--nested,
.document-tree__empty--nested {
  margin-left: 2.5rem;
}

.document-tree__file:first-child {
  border-top: 0;
}

.document-tree__file:hover {
  background-color: var(--mb-info-surface-subtle);
}

.document-tree__file-main {
  min-width: 0;
}

.document-tree__file-name {
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.25;
  word-break: break-word;
}

.document-tree__file-link {
  color: inherit;
  text-decoration: none;
}

.document-tree__file-link:hover,
.document-tree__file-link:focus {
  color: var(--mb-accent-blue-dark);
  text-decoration: underline;
}

.document-tree__file-link:focus-visible {
  border-radius: var(--mb-radius-sm);
  outline: 2px solid var(--mb-accent-blue);
  outline-offset: 2px;
}

.document-tree__file-meta {
  display: flex;
  gap: 0.55rem;
  flex-wrap: wrap;
  color: var(--mb-text-muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.document-tree__downloaded-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.25rem;
  padding: 0.05rem 0.4rem;
  border: 1px solid var(--mb-border-subtle);
  border-radius: var(--mb-radius-pill);
  background-color: var(--mb-info-surface-subtle);
  color: var(--mb-accent-blue-dark);
  font-weight: 600;
}

.document-tree__file-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-top: 0.4rem;
}

.document-tree__file-action {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  min-height: 1.75rem;
  padding: 0.2rem 0.5rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
  color: var(--mb-text-muted);
  font-size: 0.78rem;
  font-weight: 700;
  text-decoration: none;
}

.document-tree__file-action:hover,
.document-tree__file-action:focus {
  border-color: var(--mb-accent-blue);
  color: var(--mb-accent-blue-dark);
  background: var(--mb-info-soft);
}

.document-tree__file-action-icon {
  width: 0.95rem;
  height: 0.95rem;
  fill: currentColor;
}

.document-preview-body {
  overflow: hidden;
}

.document-preview-shell,
.document-preview-page,
.document-preview__frame {
  height: 100vh;
  min-height: 100vh;
}

.document-preview-page {
  background: var(--mb-neutral-panel);
}

.document-preview__noscript {
  margin: 2rem;
  padding: 1rem;
  border: 1px solid var(--mb-border);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
  color: var(--mb-text);
  font-weight: 700;
}

.document-preview__session-modal {
  position: fixed;
  inset: 0;
  z-index: 1080;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: rgba(17, 24, 39, 0.42);
}

.document-preview__session-modal--open {
  display: flex;
}

.document-preview__session-card {
  width: min(100%, 31rem);
  padding: 1.2rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-white);
  box-shadow: var(--mb-shadow-lg);
}

.document-preview__session-title {
  margin: 0.25rem 0 0.6rem;
  color: var(--mb-text);
  font-size: 1.2rem;
  line-height: 1.25;
}

.document-preview__session-copy {
  margin: 0 0 0.85rem;
  color: var(--mb-text-muted);
  line-height: 1.45;
}

.document-preview__session-timer {
  margin-bottom: 0.9rem;
  padding: 0.6rem 0.7rem;
  border: 1px solid var(--mb-info-border-subtle);
  border-radius: var(--mb-radius-md);
  background: var(--mb-info-surface-subtle);
  color: var(--mb-text);
  font-weight: 700;
}

.document-preview__session-error {
  min-height: 1.25rem;
  margin-bottom: 0.85rem;
  color: var(--mb-danger);
  font-size: 0.9rem;
  font-weight: 700;
}

.document-preview__session-error:empty {
  display: none;
}

.document-preview__session-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.65rem;
}

.document-preview__frame {
  display: flex;
  flex-direction: column;
}

.document-preview__topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--mb-space-lg);
  min-height: 2.35rem;
  padding: 0.25rem 0.5rem;
  border-bottom: 1px solid var(--mb-border-medium);
  background: var(--mb-surface-muted);
}

.document-preview__done-button {
  min-height: 1.8rem;
  padding: 0.2rem 0.7rem;
  border: 1px solid var(--mb-border-medium);
  border-radius: var(--mb-radius-sm);
  background: var(--mb-white);
  color: var(--mb-text);
  font-size: 0.82rem;
  font-weight: 700;
}

.document-preview__done-button:hover,
.document-preview__done-button:focus {
  border-color: var(--mb-primary-dark);
  background: var(--mb-primary-very-light);
}

.document-preview__project-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.6rem;
  color: var(--mb-text-muted);
  font-size: 0.86rem;
}

.document-preview {
  flex: 1 1 auto;
  display: grid;
  grid-template-columns: minmax(14rem, 17rem) minmax(0, 1fr);
  height: calc(100vh - 2.35rem);
  min-height: 0;
  background: var(--mb-white);
  overflow: hidden;
  transition: grid-template-columns 180ms ease;
}

.document-preview--sidebar-collapsed {
  grid-template-columns: 0 minmax(0, 1fr);
}

.document-preview__sidebar {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  border-right: 1px solid var(--mb-border-soft);
  background: var(--mb-surface-soft);
  overflow: hidden;
  transition:
    opacity 160ms ease,
    visibility 160ms ease;
}

.document-preview--sidebar-collapsed .document-preview__sidebar {
  border-right: 0;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

.document-preview__sidebar-header {
  padding: 1rem;
  border-bottom: 1px solid var(--mb-border-soft);
  background: var(--mb-white);
}

.document-preview__eyebrow,
.document-preview__viewer-label {
  color: var(--mb-text-muted);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.document-preview__title {
  margin: 0.25rem 0 0;
  color: var(--mb-text);
  font-size: 1rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.document-preview__copy {
  margin: 0;
  padding: 0.85rem 1rem;
  border-bottom: 1px solid var(--mb-border-soft);
  color: var(--mb-text-muted);
  font-size: 0.86rem;
  line-height: 1.45;
}

.document-preview__bookmark-toolbar {
  display: flex;
  justify-content: flex-end;
  padding: 0.45rem 0.65rem;
  border-bottom: 1px solid var(--mb-border-soft);
  background: var(--mb-white);
}

.document-preview__bookmark-visibility {
  border: 0;
  background: transparent;
  color: var(--mb-accent-blue);
  font-size: 0.78rem;
  font-weight: 800;
}

.document-preview__bookmark-visibility:hover,
.document-preview__bookmark-visibility:focus {
  color: var(--mb-accent-blue-dark);
  text-decoration: underline;
}

.document-preview__document-list {
  flex: 1 1 auto;
  display: grid;
  align-content: start;
  gap: 0.35rem;
  min-height: 0;
  padding: 0.65rem;
  overflow-y: auto;
}

.document-preview__document-item {
  display: grid;
  min-width: 0;
}

.document-preview__document-link {
  display: grid;
  gap: 0.2rem;
  padding: 0.65rem 0.7rem;
  border: 1px solid transparent;
  border-radius: var(--mb-radius-md);
  color: var(--mb-text);
  text-decoration: none;
}

.document-preview__document-item--active {
  border-radius: var(--mb-radius-md);
}

.document-preview__document-link:hover,
.document-preview__document-link:focus {
  border-color: var(--mb-border-medium);
  background: var(--mb-white);
}

.document-preview__document-link--active {
  border-color: var(--mb-primary-dark);
  background: var(--mb-primary-very-light);
}

.document-preview__document-name {
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.document-preview__document-category {
  color: var(--mb-text-muted);
  font-size: 0.75rem;
  text-transform: capitalize;
}

.document-preview__bookmarks {
  display: grid;
  gap: 0.35rem;
  margin-top: 0.35rem;
  padding: 0 0.35rem 0.35rem;
}

.document-preview__bookmark-disclosure {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  width: 100%;
  padding: 0.25rem 0.35rem;
  border: 0;
  border-radius: var(--mb-radius-sm);
  background: transparent;
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  font-weight: 800;
  text-align: left;
}

.document-preview__bookmark-disclosure svg {
  width: 0.85rem;
  height: 0.85rem;
  flex: 0 0 auto;
  fill: currentColor;
  transform: rotate(90deg);
  transition: transform 140ms ease;
}

.document-preview__bookmark-disclosure--collapsed svg {
  transform: rotate(0deg);
}

.document-preview__bookmark-disclosure:hover:not(:disabled),
.document-preview__bookmark-disclosure:focus:not(:disabled) {
  background: var(--mb-surface-hover);
  color: var(--mb-text);
}

.document-preview__bookmark-list {
  display: grid;
  gap: 0.15rem;
}

.document-preview__bookmark-link {
  --bookmark-depth: 0;
  display: block;
  width: 100%;
  padding: 0.3rem 0.4rem 0.3rem
    calc(0.45rem + (var(--bookmark-depth) * 0.65rem));
  border: 1px solid transparent;
  border-radius: var(--mb-radius-sm);
  background: transparent;
  color: var(--mb-text-muted);
  font-size: 0.8rem;
  line-height: 1.25;
  text-align: left;
  overflow-wrap: anywhere;
}

.document-preview__bookmark-link:hover:not(:disabled),
.document-preview__bookmark-link:focus:not(:disabled) {
  border-color: var(--mb-border-medium);
  background: var(--mb-white);
  color: var(--mb-text);
}

.document-preview__bookmark-link--active {
  border-color: var(--mb-primary-dark);
  background: var(--mb-primary-very-light);
  color: var(--mb-text);
  font-weight: 800;
}

.document-preview__bookmark-link:disabled {
  cursor: not-allowed;
  opacity: 0.62;
}

.document-preview__viewer {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  background: var(--mb-neutral-panel);
}

.document-preview__viewer-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--mb-space-lg);
  min-height: 3.15rem;
  padding: 0.45rem 0.65rem;
  border-bottom: 1px solid var(--mb-border-soft);
  background: var(--mb-white);
}

.document-preview__viewer-title {
  margin: 0.15rem 0 0;
  font-size: 1rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.document-preview__toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.65rem;
  flex-wrap: wrap;
}

.document-preview__zoom-group,
.document-preview__controls {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  flex: 0 0 auto;
}

.document-preview__sidebar-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.05rem;
  height: 2.05rem;
  border: 1px solid var(--mb-border-medium);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
  color: var(--mb-text-muted);
}

.document-preview__sidebar-toggle svg {
  width: 1.1rem;
  height: 1.1rem;
  fill: currentColor;
}

.document-preview__sidebar-toggle:hover,
.document-preview__sidebar-toggle:focus {
  border-color: var(--mb-primary-dark);
  color: var(--mb-text);
  background: var(--mb-primary-very-light);
}

.document-preview--sidebar-collapsed .document-preview__sidebar-toggle {
  border-color: var(--mb-primary-dark);
  background: var(--mb-primary);
  color: var(--mb-text-on-primary);
}

.document-preview__zoom-group {
  padding: 0.15rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-page-bg);
}

.document-preview__zoom-step {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.95rem;
  height: 1.95rem;
  border: 0;
  border-radius: var(--mb-radius-sm);
  background: transparent;
  color: var(--mb-text-muted);
}

.document-preview__zoom-step svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}

.document-preview__zoom-step:hover:not(:disabled),
.document-preview__zoom-step:focus:not(:disabled) {
  color: var(--mb-text);
  background: var(--mb-white);
}

.document-preview__zoom-step:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.document-preview__zoom-label {
  min-width: 6.4rem;
  color: var(--mb-text);
  font-size: 0.84rem;
  font-weight: 800;
  text-align: center;
  white-space: nowrap;
}

.document-preview__icon-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid var(--mb-border-medium);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
  color: var(--mb-text);
}

.document-preview__icon-button svg {
  width: 1.1rem;
  height: 1.1rem;
  fill: currentColor;
}

.document-preview__icon-button:hover:not(:disabled),
.document-preview__icon-button:focus:not(:disabled) {
  border-color: var(--mb-primary-dark);
  background: var(--mb-primary-very-light);
}

.document-preview__icon-button:disabled {
  color: var(--mb-icon-muted);
  cursor: not-allowed;
  opacity: 0.6;
}

.document-preview__page-form {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin: 0;
}

.document-preview__page-input {
  width: 4.5rem;
  min-height: 2.25rem;
  text-align: center;
}

.document-preview__page-total {
  color: var(--mb-text-muted);
  font-size: 0.9rem;
  white-space: nowrap;
}

.document-preview__notice {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.42rem 0.65rem;
  border-bottom: 1px solid var(--mb-info-border-subtle);
  background: var(--mb-info-surface-subtle);
  color: var(--mb-text-muted);
  font-size: 0.86rem;
}

.document-preview__notice-icon {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  fill: var(--mb-accent-blue);
}

.document-preview__status {
  padding: 0.75rem 1rem;
  color: var(--mb-text-muted);
  font-weight: 700;
}

.document-preview__status--error {
  color: var(--mb-danger);
}

.document-preview__canvas-wrap {
  flex: 1 1 auto;
  position: relative;
  min-height: 0;
  padding: 1.5rem 1rem;
  overflow: scroll;
  background: #858585;
  text-align: center;
  -webkit-touch-callout: none;
  user-select: none;
}

.document-preview__loader {
  position: absolute;
  inset: 1.5rem 1rem;
  z-index: 2;
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--mb-space-md);
  min-height: 12rem;
  border-radius: var(--mb-radius-lg);
  background: rgba(247, 249, 250, 0.82);
  color: var(--mb-text);
  font-weight: 800;
  pointer-events: none;
}

.document-preview__loader--visible {
  display: flex;
}

.document-preview__loader-spinner {
  width: 2.25rem;
  height: 2.25rem;
  border: 0.22rem solid var(--mb-border-medium);
  border-top-color: var(--mb-accent-blue);
  border-radius: 50%;
  animation: document-preview-loader-spin 0.75s linear infinite;
}

@keyframes document-preview-loader-spin {
  to {
    transform: rotate(360deg);
  }
}

.document-preview__canvas {
  display: block;
  margin: 0 auto;
  background: var(--mb-white);
  box-shadow: var(--mb-shadow-lg);
  user-select: none;
}

@media (max-width: 991.98px) {
  .document-preview {
    grid-template-columns: minmax(0, 1fr);
  }

  .document-preview__sidebar {
    border-right: 0;
    border-bottom: 1px solid var(--mb-border-soft);
  }

  .document-preview__document-list {
    grid-auto-flow: column;
    grid-auto-columns: minmax(12rem, 16rem);
    overflow-x: auto;
    overflow-y: hidden;
  }
}

@media (max-width: 767.98px) {
  .document-preview__topbar,
  .document-preview__viewer-header {
    align-items: stretch;
    flex-direction: column;
  }

  .document-preview__project-meta {
    justify-content: flex-start;
  }

  .document-preview__controls {
    justify-content: space-between;
  }

  .document-preview__canvas-wrap {
    padding: 0.75rem;
  }

  .document-preview__loader {
    inset: 0.75rem;
  }
}

@media print {
  .document-preview-body * {
    visibility: hidden !important;
  }

  .document-preview-body::before {
    content: "Document review printing is disabled. Download the official project documents or addenda when printable full-quality copies are required.";
    display: block;
    visibility: visible !important;
    margin: 2rem;
    padding: 1rem;
    border: 1px solid #dadfe3;
    color: #222831;
    font:
      12pt Arial,
      sans-serif;
  }
}

.workspace-addenda-form {
  background-color: var(--mb-white);
}

.workspace-addenda-history {
  min-width: 0;
}

.workspace-addenda-table-wrap {
  background-color: var(--mb-white);
}

.workspace-addenda-table {
  font-size: 0.88rem;
}

.workspace-addenda-table thead th {
  padding: 0.6rem 0.75rem;
  border-bottom-width: 1px;
  background-color: var(--mb-page-bg);
  color: var(--mb-text-muted);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0;
  white-space: nowrap;
}

.workspace-addenda-table tbody td {
  padding: 0.6rem 0.75rem;
  vertical-align: top;
}

.workspace-addenda-table__description {
  color: var(--mb-text-muted);
  font-size: 0.8rem;
  line-height: 1.35;
  max-width: 22rem;
  overflow-wrap: anywhere;
}

.workspace-addenda-table__description-preview {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.workspace-addenda-table__description-link {
  padding: 0;
  margin-top: 0.2rem;
  font-size: 0.75rem;
  text-decoration: none;
}

.workspace-addenda-table__description-link:hover,
.workspace-addenda-table__description-link:focus {
  text-decoration: underline;
}

.workspace-addenda-table__description-modal-text {
  color: var(--mb-text-muted);
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.workspace-addenda-description-help {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--mb-space-md);
  margin-top: 0.35rem;
}

.workspace-addenda-number-status {
  min-height: 1.15rem;
  margin-top: 0.35rem;
  font-size: 0.76rem;
  line-height: 1.3;
}

.workspace-addenda-number-status.is-available {
  color: var(--mb-success) !important;
}

.workspace-addenda-number-status.is-error {
  color: var(--mb-danger) !important;
  font-weight: 600;
}

.workspace-addenda-number-status.is-pending {
  color: var(--mb-warning) !important;
}

.workspace-addenda-number-suggestion {
  display: flex;
  align-items: center;
  gap: var(--mb-space-sm);
  min-height: 1.15rem;
  margin-top: 0.15rem;
  font-size: 0.76rem;
  line-height: 1.3;
}

.workspace-addenda-number-suggestion__button {
  padding: 0;
  font-size: 0.76rem;
  text-decoration: none;
}

.workspace-addenda-number-suggestion__button:hover,
.workspace-addenda-number-suggestion__button:focus {
  text-decoration: underline;
}

.workspace-addenda-description-counter {
  flex-shrink: 0;
  font-size: 0.76rem;
  line-height: 1.3;
}

.workspace-addenda-description-counter.is-warning {
  color: var(--mb-warning) !important;
}

.workspace-addenda-description-counter.is-limit {
  color: var(--mb-danger) !important;
  font-weight: 600;
}

.workspace-addenda-table__date-change {
  display: inline-block;
  color: var(--mb-text);
}

.workspace-addenda-table__toggle {
  min-width: 5.75rem;
}

.workspace-addenda-table__details-row td {
  background-color: var(--mb-page-bg);
}

.workspace-addenda-table__details {
  display: grid;
  gap: 0.4rem;
  padding: 0.2rem 0.75rem 0.75rem;
}

.workspace-addenda-browser {
  min-width: 0;
}

.addenda-timeline {
  position: relative;
  display: grid;
  gap: 0.85rem;
}

.addenda-item {
  position: relative;
  display: grid;
  grid-template-columns: 1rem minmax(0, 1fr);
  gap: var(--mb-space-md);
}

.addenda-item__marker {
  width: 0.65rem;
  height: 0.65rem;
  margin-top: 0.55rem;
  border: 2px solid var(--mb-primary);
  border-radius: var(--mb-radius-pill);
  background-color: var(--mb-white);
}

.addenda-item__body {
  min-width: 0;
  padding: 0.85rem 0.95rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-white);
}

.addenda-item__eyebrow {
  margin-bottom: 0.15rem;
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0;
}

.addenda-item__title {
  margin: 0;
  font-size: 1rem;
  line-height: 1.3;
  word-break: break-word;
}

.addenda-item__summary {
  margin: 0.55rem 0 0;
  color: var(--mb-text-muted);
  font-size: 0.92rem;
  line-height: 1.45;
}

.addenda-item__meta {
  display: flex;
  gap: var(--mb-space-md);
  flex-wrap: wrap;
  margin-top: 0.55rem;
  color: var(--mb-text-muted);
  font-size: 0.78rem;
}

.addenda-files-disclosure {
  margin-top: var(--mb-space-md);
  border-top: 1px solid var(--mb-border-soft);
}

.addenda-files-disclosure__summary {
  display: flex;
  align-items: center;
  gap: var(--mb-space-sm);
  padding: 0.7rem 0 0;
  cursor: pointer;
  list-style: none;
  color: var(--mb-text);
  font-size: 0.86rem;
  font-weight: 600;
}

.addenda-files-disclosure__summary::-webkit-details-marker {
  display: none;
}

.addenda-files-disclosure__summary::before {
  content: "";
  width: 0;
  height: 0;
  border-top: 0.28rem solid transparent;
  border-bottom: 0.28rem solid transparent;
  border-left: 0.36rem solid var(--mb-text-muted);
  flex-shrink: 0;
  transition: transform 150ms ease;
}

.addenda-files-disclosure[open] > .addenda-files-disclosure__summary::before {
  transform: rotate(90deg);
}

.addenda-files-disclosure__count {
  margin-left: auto;
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  font-weight: 500;
}

.addenda-files {
  display: grid;
  gap: var(--mb-space-sm);
  margin-top: 0.5rem;
  padding-top: 0.15rem;
}

.addenda-file {
  display: grid;
  grid-template-columns: 1.6rem minmax(0, 1fr);
  gap: var(--mb-space-sm);
  align-items: center;
  padding: 0.2rem 0;
}

.addenda-file__name {
  overflow-wrap: anywhere;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.25;
}

.addenda-file__meta {
  display: flex;
  gap: 0.55rem;
  flex-wrap: wrap;
  color: var(--mb-text-muted);
  font-size: 0.76rem;
}

.project-public {
  min-width: 0;
}

.project-public-empty {
  padding: 1.5rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-white);
}

.partner-projects {
  display: grid;
  gap: var(--mb-space-lg);
}

.partner-projects__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--mb-space-lg);
  padding-bottom: var(--mb-space-lg);
  border-bottom: 1px solid var(--mb-border-soft);
}

.partner-projects__identity {
  display: flex;
  gap: var(--mb-space-lg);
  align-items: center;
  min-width: 0;
}

.partner-projects__logo-frame,
.organization-profile-logo__preview {
  display: flex;
  align-items: center;
  justify-content: center;
}

.partner-projects__logo-frame {
  width: min(28vw, 13.5rem);
  min-width: 8rem;
  height: 4.5rem;
  padding: var(--mb-space-sm);
  flex: 0 0 auto;
}

.partner-projects__logo,
.organization-profile-logo__image {
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.partner-projects__eyebrow {
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  text-transform: uppercase;
}

.partner-projects__title {
  margin: 0.25rem 0 0.35rem;
  font-size: clamp(2rem, 3vw, 2.6rem);
  line-height: 1.08;
}

.partner-projects__tabs {
  display: flex;
  gap: 0.125rem;
  flex-wrap: wrap;
  padding: 0 var(--mb-space-sm);
  border-bottom: 1px solid var(--mb-border-soft);
}

.partner-projects__tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.45rem;
  padding: 0.55rem 0.9rem;
  border-bottom: 2px solid transparent;
  color: var(--mb-text-muted);
  font-weight: 700;
  text-decoration: none;
}

.partner-projects__tab:hover,
.partner-projects__tab:focus,
.partner-projects__tab--active {
  color: var(--mb-text-strong);
  background: var(--mb-surface-hover);
}

.partner-projects__tab--active {
  border-bottom-color: var(--mb-primary);
  background: var(--mb-surface-selected);
}

.partner-projects__panel {
  overflow: hidden;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
}

.partner-projects__panel-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--mb-space-lg);
  padding: 0.85rem 1rem;
  border-bottom: 1px solid var(--mb-border-soft);
  background: var(--mb-surface-muted);
}

.partner-projects__empty {
  padding: var(--mb-space-lg);
  color: var(--mb-text-muted);
}

.partner-projects__filters {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  align-items: center;
  padding: var(--mb-space-md) var(--mb-space-lg);
  border-bottom: 1px solid var(--mb-border-soft);
  background: var(--mb-white);
}

.partner-projects__search {
  flex: 1 1 18rem;
  min-width: min(100%, 16rem);
}

.partner-projects__sort {
  flex: 0 1 15rem;
  min-width: min(100%, 12rem);
}

.partner-projects__table th,
.partner-projects__table td {
  padding-left: var(--mb-space-md);
  padding-right: var(--mb-space-md);
}

.partner-projects__table {
  --bs-table-striped-bg: var(--mb-surface-soft);
  --bs-table-hover-bg: var(--mb-primary-very-light);
  font-size: 0.88rem;
}

.partner-projects__name-cell {
  min-width: 14rem;
}

.organization-profile-logo__grid {
  display: grid;
  grid-template-columns: minmax(16rem, 0.9fr) minmax(0, 1.1fr);
  gap: var(--mb-space-xl);
  align-items: start;
}

.organization-profile-logo__preview {
  width: 100%;
  max-width: 24rem;
  height: 9rem;
  padding: var(--mb-space-lg);
}

.organization-profile-logo__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border: 1px dashed var(--mb-border-medium);
  border-radius: var(--mb-radius-md);
  color: var(--mb-text-muted);
  font-weight: 700;
  background: var(--mb-white-translucent);
}

.organization-profile-logo__guidance {
  display: grid;
  gap: 0.35rem;
  margin: 0 0 var(--mb-space-lg);
  padding-left: 1.1rem;
  color: var(--mb-text-muted);
}

.organization-profile-logo__form {
  display: grid;
  gap: var(--mb-space-sm);
}

.organization-profile-logo__actions,
.organization-profile-logo__remove {
  margin-top: var(--mb-space-md);
}

.account-profile-branding__preview {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5rem;
  padding: var(--mb-space-md);
}

.account-profile-branding__logo {
  display: block;
  max-width: 100%;
  max-height: 4rem;
  object-fit: contain;
}

.account-profile-branding__placeholder {
  color: var(--mb-text-muted);
  font-size: 0.85rem;
  font-weight: 700;
}

.account-profile-branding__admin-list {
  display: grid;
  gap: var(--mb-space-sm);
}

.project-public__hero {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--mb-space-lg);
  padding: 0.75rem 0 0.75rem;
  border-bottom: 1px solid var(--mb-border-soft);
}

.project-public__hero-main {
  min-width: 0;
  flex: 1 1 auto;
}

.project-public__eyebrow {
  margin-bottom: 0.35rem;
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  text-transform: uppercase;
}

.project-public__title-row {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.project-public__title {
  margin: 0;
  font-size: clamp(2rem, 3vw, 2.8rem);
  line-height: 1.08;
}

.project-public__featured-facts {
  display: grid;
  grid-template-columns: minmax(9rem, 0.7fr) minmax(13rem, 1fr);
  gap: var(--mb-space-sm);
  max-width: 34rem;
  margin-top: var(--mb-space-lg);
}

.project-public__featured-fact {
  min-width: 0;
  padding: var(--mb-space-md) var(--mb-space-lg);
  border: 1px solid var(--mb-border-soft);
  border-top-width: 4px;
  border-radius: 0;
  background: var(--mb-white);
  box-shadow: none;
}

.project-public__featured-fact--number {
  border-top-color: var(--mb-primary);
}

.project-public__featured-fact--closing {
  border-top-color: var(--mb-accent-blue);
}

.project-public__featured-label {
  color: var(--mb-text-muted);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.project-public__featured-value {
  margin-top: 0.2rem;
  color: var(--mb-text-strong);
  font-size: clamp(1.18rem, 2vw, 1.55rem);
  font-weight: 800;
  line-height: 1.12;
}

.project-public__featured-fact--number .project-public__featured-value {
  font-family: var(--mb-font-mono);
  letter-spacing: 0;
}

.project-public__featured-note {
  margin-top: 0.25rem;
  color: var(--mb-text-muted);
  font-size: 0.82rem;
  line-height: 1.25;
}
.project-public__meta {
  display: flex;
  gap: 0.8rem 1rem;
  flex-wrap: wrap;
  margin-top: 0.7rem;
  color: var(--mb-text-muted);
  font-size: 0.88rem;
}

.project-public__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 0.42rem;
}

.project-public__planholder-badge {
  background-color: var(--mb-primary-very-light);
  color: var(--mb-primary-darker);
  border: 1px solid var(--mb-primary-light);
}

.project-public__meta-icon,
.project-public__nav-icon,
.project-public__print-button-icon {
  width: 1.125rem;
  height: 1.125rem;
  display: block;
  aspect-ratio: 1 / 1;
  fill: var(--mb-text-muted);
  flex: 0 0 auto;
}

.project-public__meta-icon {
  width: 1rem;
  height: 1rem;
}

.project-public__nav-icon {
  width: 1.2rem;
  height: 1.2rem;
}

.project-public__print-button-icon {
  width: 1.05rem;
  height: 1.05rem;
}

.project-public__hero-actions {
  flex-shrink: 0;
}

.project-public__layout {
  display: grid;
  grid-template-columns: minmax(16rem, 18rem) minmax(0, 1fr);
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.project-public__rail {
  display: grid;
  gap: var(--mb-space-lg);
  align-self: start;
  position: sticky;
  top: 1.25rem;
}

.project-public__download-panel,
.project-public__exchange-card,
.project-public__nav,
.project-public__section {
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-white);
}

.project-public__exchange-card {
  display: grid;
  gap: var(--mb-space-sm);
  justify-items: center;
  padding: var(--mb-space-lg);
  text-align: center;
}

.project-public__exchange-label {
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  font-weight: 700;
  text-transform: uppercase;
}

.project-public__exchange-logo-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  width: 100%;
}

.project-public__exchange-logo {
  display: block;
  max-width: 10rem;
  max-height: 4rem;
  object-fit: contain;
}

.project-public__exchange-name {
  color: var(--mb-text);
  font-size: 0.92rem;
  font-weight: 700;
}

.project-public__download-panel {
  padding: var(--mb-space-lg);
}

.project-public__download-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--mb-space-md);
  margin-bottom: 0.9rem;
}

.project-public__download-label {
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  text-transform: uppercase;
}

.project-public__download-count {
  display: grid;
  gap: 0.2rem;
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  text-align: right;
}

.project-public__download-title {
  margin: 0 0 0.55rem;
  font-size: 1.2rem;
}

.project-public__download-copy {
  margin: 0 0 1rem;
  color: var(--mb-text-muted);
  font-size: 0.92rem;
  line-height: 1.5;
}

.project-public__download-note {
  margin-top: 0.6rem;
  font-size: 0.8rem;
  line-height: 1.4;
}

.project-public__nav {
  padding: 0.35rem 0;
}

.project-public__nav-link {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.85rem 1rem;
  color: var(--mb-text-muted);
  text-decoration: none;
  border-top: 1px solid var(--mb-border-subtle);
  font-weight: 600;
}

.project-public__nav-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  margin-left: auto;
  padding: 0.1rem 0.4rem;
  border-radius: var(--mb-radius-pill);
  background-color: var(--mb-primary);
  color: var(--mb-white);
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.1;
}

.project-public__nav-link:first-child {
  border-top: 0;
}

.project-public__nav-link:hover,
.project-public__nav-link:focus {
  background-color: var(--mb-surface-hover);
  color: var(--mb-text-strong);
}

.project-public__nav-link--active {
  background-color: var(--mb-primary-very-light);
  color: var(--mb-text-on-primary);
  border-left: 3px solid var(--mb-primary-dark);
  padding-left: calc(1rem - 3px);
}

.project-public__nav-link--active .project-public__nav-icon,
.project-public__nav-link:hover .project-public__nav-icon,
.project-public__nav-link:focus .project-public__nav-icon {
  fill: currentColor;
}

.project-public__content {
  display: grid;
  gap: var(--mb-space-lg);
}

.project-public__content--compact {
  align-content: start;
}

.project-public__section {
  overflow: hidden;
}

.project-public__section-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--mb-space-md);
  padding: 0.8rem 1rem;
  background-color: var(--mb-surface-muted);
  border-bottom: 1px solid var(--mb-border-soft);
}

.project-public__section-title {
  margin: 0;
  font-size: 1.02rem;
}

.project-public__section-meta {
  color: var(--mb-text-muted);
  font-size: 0.8rem;
}

.project-public__section-actions {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
}

.project-public__facts,
.project-public__detail-grid,
.project-public__document-summary,
.project-public__empty {
  padding: var(--mb-space-lg);
}

.project-public__fact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem 1rem;
}

.project-public__fact {
  display: grid;
  gap: 0.2rem;
}

.project-public__fact dt,
.project-public__info-list dt {
  color: var(--mb-text-muted);
  font-size: 0.8rem;
  font-weight: 500;
}

.project-public__fact dd,
.project-public__info-list dd {
  margin: 0;
  color: var(--mb-text);
  font-size: 0.96rem;
  line-height: 1.45;
}

.project-public__detail-stack {
  display: grid;
  gap: var(--mb-space-lg);
  padding: var(--mb-space-lg);
}

.project-public__detail-block {
  min-width: 0;
}

.project-public__detail-block h3,
.project-public__info-card-heading {
  margin: 0 0 0.45rem;
  font-size: 0.94rem;
}

.project-public__detail-block p {
  margin: 0;
  color: var(--mb-text-muted);
  line-height: 1.55;
  white-space: pre-line;
}

.project-public__location-card,
.project-public__contact-row-card {
  background: var(--mb-gradient-card);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  min-width: 0;
  padding: var(--mb-space-lg);
}

.project-public__location-card {
  max-width: 40rem;
}

.project-public__contacts-list {
  display: grid;
  gap: var(--mb-space-md);
  padding: var(--mb-space-lg);
}

.project-public__info-card-title {
  color: var(--mb-text-muted);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}

.project-public__info-card-heading {
  color: var(--mb-text);
}

.project-public__info-list {
  margin: 0;
  display: grid;
  gap: var(--mb-space-md);
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.project-public__info-row {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}

.project-public__info-row + .project-public__info-row {
  border-left: 1px solid var(--mb-border-soft);
  padding-left: 0.75rem;
}

.project-public__document-summary {
  display: flex;
  gap: var(--mb-space-md);
  flex-wrap: wrap;
  border-bottom: 1px solid var(--mb-border-soft);
}

.project-public__summary-chip {
  display: inline-flex;
  align-items: baseline;
  gap: 0.45rem;
  padding: 0.4rem 0.65rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-sm);
  background-color: var(--mb-page-bg);
}

.project-public__summary-chip-label {
  color: var(--mb-text-muted);
  font-size: 0.78rem;
}

.project-public__summary-chip-value {
  font-weight: 700;
}

.project-public__addenda-table th,
.project-public__addenda-table td {
  padding-left: var(--mb-space-lg);
  padding-right: var(--mb-space-lg);
}

.project-public__addenda-col-number {
  width: 7rem;
}

.project-public__addenda-col-issued {
  width: 8.5rem;
}

.project-public__addenda-col-files {
  width: 6.5rem;
}

.project-public__addenda-col-description {
  width: auto;
  min-width: 18rem;
}

.project-public__addenda-col-download {
  width: 7.5rem;
}

.project-public__addenda-col-downloaded {
  width: 8.5rem;
}

.project-public__addenda-description {
  color: var(--mb-text-muted);
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.project-public__inline-link {
  color: var(--mb-accent-blue-dark);
  font-weight: 600;
  text-decoration: none;
}

.project-public__inline-link:hover,
.project-public__inline-link:focus {
  text-decoration: underline;
}

.project-public__download-button {
  --bs-btn-color: var(--mb-text-on-primary);
  --bs-btn-bg: var(--mb-primary);
  --bs-btn-border-color: var(--mb-primary);
  --bs-btn-hover-color: var(--mb-text-on-primary);
  --bs-btn-hover-bg: var(--mb-primary-dark);
  --bs-btn-hover-border-color: var(--mb-primary-dark);
  --bs-btn-active-color: var(--mb-text-on-primary);
  --bs-btn-active-bg: var(--mb-primary-dark);
  --bs-btn-active-border-color: var(--mb-primary-dark);
  --bs-btn-disabled-color: var(--mb-text-on-primary);
  --bs-btn-disabled-bg: var(--mb-primary);
  --bs-btn-disabled-border-color: var(--mb-primary);
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-weight: 600;
}

.project-public__download-button--unavailable,
.project-public__download-button--unavailable:disabled {
  --bs-btn-color: var(--mb-text-muted);
  --bs-btn-bg: var(--mb-surface-muted);
  --bs-btn-border-color: var(--mb-border-medium);
  --bs-btn-disabled-color: var(--mb-text-muted);
  --bs-btn-disabled-bg: var(--mb-surface-muted);
  --bs-btn-disabled-border-color: var(--mb-border-medium);
  color: var(--mb-text-muted);
  background-color: var(--mb-surface-muted);
  border-color: var(--mb-border-medium);
  cursor: not-allowed;
  opacity: 1;
}

.project-public__download-button-icon {
  width: 0.95rem;
  height: 0.95rem;
  fill: currentColor;
  flex: 0 0 auto;
}

.project-public__lifecycle-notice {
  padding: var(--mb-space-lg) var(--mb-space-xl);
  border: 1px solid var(--mb-border-medium);
  border-left: 4px solid var(--mb-border-muted-strong);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-surface-soft);
  color: var(--mb-text);
}

.project-public__lifecycle-notice--cancelled {
  border-left-color: var(--mb-danger);
}

.project-public__lifecycle-notice--withdrawn {
  border-left-color: var(--mb-warning);
}

.project-public__lifecycle-notice-label {
  margin-bottom: var(--mb-space-xs);
  color: var(--mb-text-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.project-public__lifecycle-notice-title {
  margin: 0 0 var(--mb-space-sm);
  color: var(--mb-text);
  font-weight: 700;
}

.project-public__lifecycle-notice-title span {
  font-weight: 800;
}

.project-public__lifecycle-notice--cancelled .project-public__lifecycle-notice-title span {
  color: var(--mb-danger);
}

.project-public__lifecycle-notice--withdrawn .project-public__lifecycle-notice-title span {
  color: var(--mb-warning);
}

.project-public__lifecycle-notice-reason {
  color: var(--mb-text-muted);
  line-height: 1.5;
}

.project-public__lifecycle-notice-reason strong {
  color: var(--mb-text);
  font-weight: 700;
}

.auth-register__publisher-note-icon {
  width: 1.375rem;
  height: 1.375rem;
  display: block;
  aspect-ratio: 1 / 1;
  flex: 0 0 auto;
  color: var(--mb-text-muted);
  fill: currentColor;
  margin-top: 0.125rem;
}

.project-public__download-review {
  padding: 0.9rem 1rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-page-bg);
}

.project-public__download-review-label {
  margin-bottom: 0.45rem;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--mb-text-muted);
  text-transform: uppercase;
}

.project-public__download-review-address {
  color: var(--mb-text);
  line-height: 1.55;
}

.project-public__payment-element {
  padding: var(--mb-space-lg);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-white);
}

.project-public__payment-status {
  font-size: 0.925rem;
}

.project-public__delivery-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--mb-space-lg);
  align-items: center;
  padding: 1rem 1.1rem;
  margin-bottom: var(--mb-space-lg);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background-color: var(--mb-page-bg);
}

.project-public__delivery-card-title {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--mb-text);
}

.project-public__delivery-card-copy {
  margin-top: 0.2rem;
  color: var(--mb-text-muted);
  line-height: 1.45;
}

.project-public__delivery-card-meta {
  margin-top: 0.45rem;
  color: var(--mb-text-muted);
  font-size: 0.82rem;
}

.project-public__delivery-card-action {
  display: flex;
  justify-content: flex-end;
}

.project-public__document-table th,
.project-public__document-table td {
  padding-left: var(--mb-space-lg);
  padding-right: var(--mb-space-lg);
}

.project-public__document-name {
  font-weight: 600;
}

.project-public__document-activity {
  margin: 0 1rem 1rem;
  color: var(--mb-text-muted);
  font-size: 0.82rem;
}

.project-public__planholders-groups {
  display: grid;
  gap: var(--mb-space-lg);
  padding: var(--mb-space-lg);
}

.project-public__planholders-group {
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  overflow: hidden;
}

.project-public__planholders-group-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--mb-space-md);
  padding: 0.8rem 1rem;
  background-color: var(--mb-page-bg);
  border-bottom: 1px solid var(--mb-border-soft);
}

.project-public__planholders-group-title {
  margin: 0;
  font-size: 0.96rem;
}

.project-public__planholders-group-count {
  min-width: 1.75rem;
  padding: 0.1rem 0.5rem;
  border-radius: var(--mb-radius-pill);
  background-color: var(--mb-neutral-muted);
  color: var(--mb-text-muted);
  font-size: 0.78rem;
  font-weight: 700;
  text-align: center;
}

.project-public__planholders-table th,
.project-public__planholders-table td {
  padding-left: var(--mb-space-lg);
  padding-right: var(--mb-space-lg);
}

.project-public__print-button {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  white-space: nowrap;
}

.project-public__empty {
  color: var(--mb-text-muted);
}

@media (max-width: 1199.98px) {
  .workspace-panel__body,
  .workspace-panel__body--documents {
    grid-template-columns: minmax(0, 1fr);
  }

  .workspace-panel__sidebar {
    border-left: 0;
    border-top: 1px solid var(--mb-border-subtle);
  }

  .project-public__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .project-public__rail {
    position: static;
  }

  .project-public__delivery-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .project-public__delivery-card-action {
    justify-content: flex-start;
  }
}

@media (max-width: 767.98px) {
  .workspace-header__main,
  .workspace-panel__main,
  .workspace-panel__sidebar {
    padding-left: 0.9rem;
    padding-right: 0.9rem;
  }

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

  .workspace-kv-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.2rem;
  }

  .workspace-addenda-description-help {
    flex-direction: column;
    align-items: flex-start;
  }

  .workspace-planholders__toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .workspace-panel__intro-row--planholders {
    align-items: flex-start;
  }

  .workspace-contacts__toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .workspace-planholders-modal__compact-top {
    grid-template-columns: minmax(0, 1fr);
  }

  .workspace-planholders-modal__actions {
    justify-content: space-between;
    width: 100%;
  }

  .workspace-planholders-modal__sort {
    flex: 1 1 auto;
    width: auto;
  }
  .workspace-planholders-modal__result {
    grid-template-columns: minmax(0, 1fr);
  }

  .workspace-planholders-modal__result-action {
    justify-content: flex-start;
  }

  .project-public__hero {
    flex-direction: column;
  }

  .partner-projects__identity,
  .organization-profile-logo__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .partner-projects__identity {
    align-items: flex-start;
    flex-direction: column;
  }

  .partner-projects__logo-frame {
    width: min(100%, 16rem);
  }

  .project-public__title {
    font-size: 1.8rem;
  }

  .project-public__fact-grid,
  .project-public__info-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .project-public__info-row + .project-public__info-row {
    border-left: 0;
    border-top: 1px solid var(--mb-border-soft);
    padding-left: 0;
    padding-top: 0.65rem;
  }
}

@media print {
  .site-shell .navbar,
  .site-shell footer,
  .workspace-header__actions,
  .workspace-tabs,
  .workspace-panel__description,
  .workspace-panel__sidebar,
  .workspace-planholders__actions,
  .workspace-planholders__print-button {
    display: none !important;
  }

  .workspace-shell,
  .workspace-panel,
  
.workspace-header {
    box-shadow: none !important;
  }

  .workspace-header,
  .workspace-panel {
    border: 0;
  }

  .workspace-header__main,
  .workspace-panel__main {
    padding-left: 0;
    padding-right: 0;
  }

  .workspace-panel__body {
    display: block;
  }

  .workspace-planholders__summary-chip,
  .workspace-planholders__group {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .workspace-planholders__group {
    border: 0;
    border-radius: 0;
  }

  .workspace-planholders__group-header {
    padding-left: 0;
    padding-right: 0;
    background: transparent;
  }

  .workspace-planholders__table th,
  .workspace-planholders__table td {
    padding-left: 0;
    padding-right: var(--mb-space-md);
    font-size: 0.88rem;
  }

  .site-shell > .site-main.container {
    max-width: none;
    width: 100%;
    padding: 0;
  }

  .site-shell > .site-main .mb-2,
  .site-shell .navbar,
  .site-shell footer,
  .project-public__hero-actions,
  .project-public__rail,
  .project-public__print-button,
  .modal,
  .btn-close {
    display: none !important;
  }

  .project-public__hero {
    padding-top: 0;
    border-bottom: 0;
    margin-bottom: var(--mb-space-md);
  }

  .project-public__layout {
    display: block;
    margin-top: 0.5rem;
  }

  .project-public__content {
    display: block;
  }

  .project-public__section,
  .project-public__planholders-group {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .project-public__section-bar,
  .project-public__planholders-group-header {
    background: transparent;
    border-bottom: 1px solid var(--mb-border-heavy);
    padding-left: 0;
    padding-right: 0;
  }

  .project-public__document-summary {
    padding-left: 0;
    padding-right: 0;
  }

  .project-public__planholders-groups {
    padding-left: 0;
    padding-right: 0;
  }

  .project-public__summary-chip {
    background: transparent;
  }

  .project-public__planholders-table th,
  .project-public__planholders-table td {
    padding-left: 0;
    padding-right: var(--mb-space-md);
    font-size: 0.92rem;
  }
}

.project-dashboard-search__input {
  max-width: 32rem;
}
.workspace-report-card {
  display: block;
  height: 100%;
  padding: var(--mb-space-xl);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-white);
  box-shadow: var(--mb-shadow-sm);
}

.workspace-report-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--mb-radius-pill);
  color: var(--mb-primary-darker);
  background: var(--mb-primary-very-light);
}

.workspace-activity-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--mb-space-sm);
  padding: var(--mb-space-md);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-gradient-control);
}

.workspace-activity-summary__item {
  min-width: 0;
  padding: var(--mb-space-sm) var(--mb-space-md);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
}

@media (max-width: 767.98px) {
  .workspace-activity-summary {
    grid-template-columns: minmax(0, 1fr);
  }
}

.project-public__qa-summary-grid {
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
}

.project-public__qa-summary-card {
  align-items: center;
  min-width: 0;
  text-align: center;
}

.project-public__qa-summary-label {
  line-height: 1.1;
  white-space: nowrap;
}

.workspace-planholders-modal__result-group + .workspace-planholders-modal__result-group {
  margin-top: var(--mb-space-lg);
}

.workspace-planholders-modal__group-label {
  color: var(--mb-text-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-bottom: var(--mb-space-sm);
  text-transform: uppercase;
}

.home-page {
  background:
    radial-gradient(
      circle at top left,
      rgba(170, 210, 103, 0.18),
      transparent 24rem
    ),
    linear-gradient(180deg, var(--mb-white) 0%, var(--mb-page-bg) 100%);
}

.home-hero {
  padding: clamp(1.5rem, 6vw, 2.5rem) 0 var(--mb-space-2xl);
}

.home-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr);
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: center;
}

.home-hero__content {
  max-width: 48rem;
}

.home-hero__eyebrow,
.home-hero__panel-label,
.home-path-card__label {
  color: var(--mb-primary-darker);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-hero__title {
  margin: var(--mb-space-sm) 0 var(--mb-space-lg);
  color: var(--mb-text-strong);
  font-size: clamp(2.35rem, 6vw, 4.8rem);
  line-height: 0.98;
  letter-spacing: 0;
}

.home-hero__copy {
  max-width: 42rem;
  margin: 0;
  color: var(--mb-text-muted);
  font-size: clamp(1.05rem, 2vw, 1.28rem);
  line-height: 1.55;
}

.home-hero__actions,
.home-path-card__actions,
.home-contact-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  align-items: center;
  margin-top: var(--mb-space-xl);
}

.home-hero__panel,
.home-path-card,
.home-contact-card {
  border: var(--mb-panel-border);
  border-radius: var(--mb-radius-xl);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: var(--mb-shadow-section);
}

.home-hero__panel {
  padding: var(--mb-space-xl);
}

.home-hero__panel-list {
  display: grid;
  gap: var(--mb-space-sm);
  margin-top: var(--mb-space-lg);
}

.home-hero__panel-item,
.home-feature-list__item {
  padding: 0.75rem 0.85rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-gradient-control);
  color: var(--mb-text);
  font-weight: 600;
}

.home-paths {
  padding: 0 0 clamp(3rem, 6vw, 5rem);
}

.home-paths__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--mb-space-xl);
}

.home-path-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: clamp(1.25rem, 3vw, 2rem);
}

.home-path-card--publisher {
  background: linear-gradient(
    180deg,
    var(--mb-white) 0%,
    var(--mb-surface-soft) 100%
  );
}

.home-path-card__title {
  margin: var(--mb-space-sm) 0 var(--mb-space-md);
  color: var(--mb-text-strong);
  font-size: clamp(1.7rem, 3vw, 2.35rem);
  line-height: 1.08;
}

.home-path-card__copy,
.home-contact-card__copy {
  color: var(--mb-text-muted);
  line-height: 1.55;
}

.home-project-search {
  margin-top: var(--mb-space-lg);
  padding-top: var(--mb-space-lg);
}

.home-feature-list {
  display: grid;
  gap: var(--mb-space-sm);
  margin-top: var(--mb-space-lg);
}

.home-contact-card {
  margin-top: auto;
  padding: var(--mb-space-lg);
}

.home-contact-card__title {
  color: var(--mb-text-strong);
  font-weight: 800;
}

.home-contact-card__copy {
  margin: 0.35rem 0 0;
}

.home-inline-link {
  color: var(--mb-accent-blue-dark);
  font-weight: 700;
  text-decoration: none;
}

.home-inline-link:hover,
.home-inline-link:focus {
  color: var(--mb-accent-blue);
  text-decoration: underline;
}

@media (max-width: 991.98px) {
  .home-hero__grid,
  .home-paths__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-hero__panel {
    max-width: 36rem;
  }
}

@media (max-width: 575.98px) {
  .home-hero {
    padding-top: var(--mb-space-2xl);
  }

  .home-hero__actions .btn,
  .home-path-card__actions .btn,
  .home-contact-card__actions .btn {
    width: 100%;
  }
}

.home-hero__panel-item {
  display: flex;
  align-items: center;
  gap: var(--mb-space-sm);
}

.home-hero__panel-icon {
  width: 1.15rem;
  height: 1.15rem;
  flex: 0 0 auto;
  fill: var(--mb-primary-darker);
}

.home-path-card--publisher .home-feature-list {
  margin-bottom: var(--mb-space-xl);
}

.home-project-search {
  margin-top: var(--mb-space-lg);
}

.exchange-partner-confirmation__success-mark {
  background: var(--mb-primary-very-light);
  color: var(--mb-primary-darker);
}

.exchange-partner-confirmation__contact-card {
  background: var(--mb-gradient-control);
  border: 1px solid var(--mb-border-soft);
}

.exchange-partner-confirmation__contact-icon,
.exchange-partner-confirmation__contact-link-icon {
  background: var(--mb-white);
  color: var(--mb-primary-darker);
}

.exchange-partner-confirmation__contact-link-icon {
  border: 1px solid var(--mb-border-soft);
}

.exchange-partner-confirmation__contact-link {
  color: var(--mb-text);
}

.exchange-partner-confirmation__contact-link:hover,
.exchange-partner-confirmation__contact-link:focus {
  color: var(--mb-primary-darker);
}

.exchange-partner-requests-card {
  overflow: hidden;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-xl);
}

.exchange-partner-requests-table__organization {
  border: 0;
  background: transparent;
  color: var(--mb-text-strong);
  font: inherit;
  font-weight: 700;
  padding: 0;
  text-align: left;
}

.exchange-partner-requests-table__organization:hover,
.exchange-partner-requests-table__organization:focus {
  color: var(--mb-primary-darker);
  text-decoration: underline;
}

.exchange-partner-requests-table__message {
  max-width: 22rem;
}

.exchange-partner-requests-table__status {
  display: inline-flex;
  align-items: center;
  border-radius: var(--mb-radius-pill);
  background: var(--mb-primary-very-light);
  color: var(--mb-primary-darker);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
  padding: 0.25rem 0.6rem;
  text-transform: capitalize;
}

.exchange-partner-request-copy {
  display: flex;
  min-width: 0;
  gap: var(--mb-space-sm);
  align-items: center;
  flex-wrap: wrap;
}

.exchange-partner-request-copy__value {
  display: block;
  width: 100%;
  max-width: min(44vw, 20rem);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-page-bg);
  color: var(--mb-text-strong);
  cursor: pointer;
  font-family: var(--mb-font-mono);
  font-size: 0.8rem;
  line-height: 1.2;
  overflow: hidden;
  padding: 0.35rem 0.5rem;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.exchange-partner-request-copy__value:hover,
.exchange-partner-request-copy__value:focus {
  border-color: var(--mb-primary);
  color: var(--mb-primary-dark);
  outline: 0;
  box-shadow: 0 0 0 0.16rem rgba(170, 210, 103, 0.22);
}

.exchange-partner-request-copy__status {
  color: var(--mb-success);
  font-size: 0.78rem;
}

.exchange-partner-request-modal {
  overflow: hidden;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-xl);
}

.exchange-partner-request-modal__header {
  background: var(--mb-gradient-section-header);
  border-bottom: 1px solid var(--mb-border-soft);
}

.exchange-partner-request-modal__eyebrow {
  color: var(--mb-text-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.exchange-partner-request-modal__body {
  display: grid;
  gap: var(--mb-space-lg);
  background: var(--mb-page-bg);
}

.exchange-partner-request-modal__panel,
.exchange-partner-request-modal__message {
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-white);
  box-shadow: var(--mb-shadow-sm);
}

.exchange-partner-request-modal__panel {
  padding: var(--mb-space-lg);
}

.exchange-partner-request-modal__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--mb-space-lg);
}

.exchange-partner-request-modal__item--wide {
  grid-column: 1 / -1;
}

.exchange-partner-request-modal__label {
  margin-bottom: 0.3rem;
  color: var(--mb-text-muted);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.exchange-partner-request-modal__value {
  color: var(--mb-text);
  line-height: 1.45;
}

.exchange-partner-request-modal__message {
  padding: var(--mb-space-lg);
  color: var(--mb-text);
  line-height: 1.55;
}

.exchange-partner-request-modal__footer {
  border-top: 1px solid var(--mb-border-soft);
  background: var(--mb-white);
}

@media (max-width: 575.98px) {
  .exchange-partner-request-modal__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .exchange-partner-request-copy__value {
    max-width: 100%;
  }
}

.exchange-partner-access-duplicate {
  background: var(--mb-surface-soft);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  box-shadow: var(--mb-shadow-sm);
}
.partners-page .home-hero {
  padding-bottom: clamp(2.5rem, 5vw, 4rem);
}

.partners-definition,
.partners-benefits,
.partners-collaboration,
.partners-steps,
.partners-final-cta {
  padding: clamp(2.5rem, 5vw, 4rem) 0;
}

.partners-definition,
.partners-benefits {
  padding-top: 0;
}

.partners-section-heading {
  max-width: 46rem;
  margin-bottom: var(--mb-space-xl);
}

.partners-section-heading__title,
.partners-definition__panel h2,
.partners-collaboration h2,
.partners-final-cta h2 {
  color: var(--mb-text-strong);
  font-size: clamp(1.75rem, 3vw, 2.6rem);
  line-height: 1.08;
}

.partners-section-heading__copy,
.partners-definition__panel p,
.partners-collaboration p,
.partners-final-cta p,
.partners-benefit-card p,
.partners-step p {
  color: var(--mb-text-muted);
  line-height: 1.55;
}

.partners-definition__grid,
.partners-benefits__grid,
.partners-steps__grid {
  display: grid;
  gap: var(--mb-space-lg);
}

.partners-definition__grid {
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: var(--mb-space-xl);
}

.partners-benefits__grid,
.partners-steps__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.partners-definition__panel,
.partners-benefit-card,
.partners-step,
.partners-collaboration__panel,
.partners-final-cta__panel {
  border: var(--mb-panel-border);
  border-radius: var(--mb-radius-xl);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: var(--mb-shadow-section);
}

.partners-definition__panel,
.partners-benefit-card,
.partners-step {
  padding: var(--mb-space-lg);
}

.partners-definition__panel {
  min-height: 100%;
  padding: clamp(1.25rem, 3vw, 2rem);
}

.partners-definition__panel--intro,
.partners-collaboration__panel {
  background: var(--mb-gradient-card);
}

.partners-definition__panel--benefits {
  background: linear-gradient(180deg, var(--mb-white) 0%, var(--mb-surface-soft) 100%);
}

.partners-definition__panel p {
  font-size: 1.05rem;
  line-height: 1.6;
}

.partners-benefit-card__icon {
  display: inline-flex;
  width: 2.5rem;
  height: 2.5rem;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--mb-space-lg);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-primary-very-light);
  color: var(--mb-primary-darker);
}

.partners-benefit-card__icon svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: currentColor;
}

.partners-benefit-card h3,
.partners-step h3,
.partners-collaboration__callout-title {
  color: var(--mb-text-strong);
  font-size: 1.05rem;
  font-weight: 800;
}

.partners-benefit-summary__list {
  display: grid;
  gap: var(--mb-space-sm);
  margin-top: var(--mb-space-lg);
}

.partners-benefit-summary__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--mb-space-sm);
  align-items: start;
  padding: 0.85rem 0.95rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-white);
  color: var(--mb-text-muted);
  line-height: 1.5;
}

.partners-benefit-summary__item strong {
  color: var(--mb-text-strong);
}

.partners-benefit-summary__icon {
  display: inline-flex;
  width: 1.45rem;
  height: 1.45rem;
  align-items: center;
  justify-content: center;
  border-radius: var(--mb-radius-pill);
  background: var(--mb-primary-very-light);
  color: var(--mb-primary-darker);
}

.partners-benefit-summary__icon svg {
  width: 0.95rem;
  height: 0.95rem;
  fill: currentColor;
}

.partners-collaboration__panel,
.partners-final-cta__panel {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(16rem, 0.75fr);
  gap: var(--mb-space-xl);
  align-items: center;
  padding: clamp(1.25rem, 3vw, 2rem);
}

.partners-collaboration__callout {
  padding: var(--mb-space-lg);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-lg);
  background: var(--mb-surface-soft);
}

.partners-step span {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--mb-space-md);
  border-radius: var(--mb-radius-pill);
  background: var(--mb-primary);
  color: var(--mb-text-on-primary);
  font-weight: 800;
}

.partners-final-cta__panel {
  grid-template-columns: minmax(0, 1fr) auto;
  background: var(--mb-gradient-section-header);
}

@media (max-width: 991.98px) {
  .partners-definition__grid,
  .partners-benefits__grid,
  .partners-steps__grid,
  .partners-collaboration__panel,
  .partners-final-cta__panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .partners-final-cta__panel .btn {
    justify-self: start;
  }
}

@media (max-width: 575.98px) {
  .partners-final-cta__panel .btn {
    width: 100%;
  }
}

.not-found {
  padding: clamp(2rem, 7vw, 5rem) 0;
}

.not-found__panel {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(16rem, 0.75fr);
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: center;
  border: var(--mb-panel-border);
  border-radius: var(--mb-radius-xl);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: var(--mb-shadow-section);
  padding: clamp(1.5rem, 4vw, 3rem);
}

.not-found__title {
  margin: var(--mb-space-sm) 0 var(--mb-space-lg);
  color: var(--mb-text-strong);
  font-size: clamp(2.25rem, 6vw, 4.5rem);
  line-height: 0.98;
  letter-spacing: 0;
}

.not-found__copy {
  max-width: 40rem;
  margin: 0;
  color: var(--mb-text-muted);
  font-size: clamp(1.05rem, 2vw, 1.22rem);
  line-height: 1.55;
}

.not-found__path {
  display: inline-flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  max-width: 100%;
  margin: var(--mb-space-lg) 0 0;
  padding: 0.55rem 0.75rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-gradient-control);
  color: var(--mb-text-muted);
  font-size: 0.9rem;
}

.not-found__path span {
  color: var(--mb-text-strong);
  font-family: var(--mb-font-mono);
  overflow-wrap: anywhere;
}

.not-found__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mb-space-sm);
  align-items: center;
  margin-top: var(--mb-space-xl);
}

.not-found__illustration {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 15rem;
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-xl);
  background: var(--mb-gradient-card);
}

.not-found__svg {
  width: min(100%, 18rem);
  height: auto;
}

.not-found__sheet {
  fill: var(--mb-white);
  stroke: var(--mb-border-muted);
  stroke-width: 3;
}

.not-found__fold {
  fill: none;
  stroke: var(--mb-border-muted);
  stroke-width: 3;
}

.not-found__line {
  fill: none;
  stroke: var(--mb-border-medium);
  stroke-linecap: round;
  stroke-width: 5;
}

.not-found__route {
  fill: none;
  stroke: var(--mb-primary-dark);
  stroke-dasharray: 8 8;
  stroke-linecap: round;
  stroke-width: 5;
}

.not-found__pin {
  fill: var(--mb-primary);
  stroke: var(--mb-primary-darker);
  stroke-width: 3;
}

.not-found__mark {
  fill: none;
  stroke: var(--mb-accent-blue);
  stroke-linecap: round;
  stroke-width: 5;
}

@media (max-width: 991.98px) {
  .not-found__panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .not-found__illustration {
    min-height: 12rem;
  }
}

@media (max-width: 575.98px) {
  .not-found__actions .btn {
    width: 100%;
  }
}

.bid-results-confirmation__header {
  border-bottom-color: var(--mb-border-soft);
  background: var(--mb-gradient-section-header);
}

.bid-results-confirmation__eyebrow {
  margin-bottom: var(--mb-space-xs);
  color: var(--mb-primary-darker);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.bid-results-confirmation__summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--mb-space-md);
}

.bid-results-confirmation__summary > div {
  min-width: 0;
  padding: var(--mb-space-lg);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-surface-soft);
}

.bid-results-confirmation__summary dt {
  margin-bottom: var(--mb-space-xs);
  color: var(--mb-text-muted);
  font-size: 0.75rem;
  font-weight: 600;
}

.bid-results-confirmation__summary dd {
  margin: 0;
  color: var(--mb-text);
  font-weight: 700;
}

.bid-results-confirmation__section {
  padding: var(--mb-space-lg);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--mb-radius-md);
  background: var(--mb-white);
}

.bid-results-confirmation__section + .bid-results-confirmation__section {
  margin-top: var(--mb-space-md);
}

.bid-results-confirmation__section .list-group-item {
  padding-right: 0;
  padding-left: 0;
  border-color: var(--mb-border-soft);
  background: transparent;
}

@media (max-width: 767.98px) {
  .bid-results-confirmation__summary {
    grid-template-columns: minmax(0, 1fr);
  }
}

.document-tree__file--removed {
  background: var(--mb-danger-subtle);
  border-color: var(--mb-danger-border);
}

.document-tree__file--removed .document-tree__file-icon {
  opacity: 0.55;
}

.document-tree__removed-message {
  color: var(--mb-text-muted);
  font-size: 0.875rem;
}

.document-removal-shell {
  max-width: 60rem;
}

.document-removal-tree__file {
  cursor: pointer;
  transition: background-color 150ms ease, box-shadow 150ms ease;
}

.document-removal-tree__file--selected {
  background: var(--mb-primary-very-light);
  box-shadow: inset 3px 0 0 var(--mb-primary-dark);
}

.document-removal-tree__checkbox {
  flex: 0 0 auto;
  margin-top: 0.2rem;
}

.document-removal-details { overflow: hidden; border: 1px solid var(--mb-border-soft); border-radius: var(--mb-radius-lg); }
.document-removal-details__header { border-bottom-color: var(--mb-border-soft); background: var(--mb-gradient-section-header); }
.document-removal-details__eyebrow { margin-bottom: var(--mb-space-xs); color: var(--mb-danger-text); font-size: 0.75rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.document-removal-details__body { display: grid; gap: var(--mb-space-lg); padding: var(--mb-space-xl); }
.document-removal-details__notice { display: flex; gap: var(--mb-space-md); align-items: flex-start; padding: var(--mb-space-lg); border: 1px solid var(--mb-danger-border); border-radius: var(--mb-radius-md); background: var(--mb-danger-subtle); }
.document-removal-details__notice-icon { display: grid; flex: 0 0 2rem; width: 2rem; height: 2rem; place-items: center; border-radius: var(--mb-radius-pill); background: var(--mb-danger); color: var(--mb-white); font-weight: 800; }
.document-removal-details__section { padding: var(--mb-space-lg); border: 1px solid var(--mb-border-soft); border-radius: var(--mb-radius-md); background: var(--mb-white); }
.document-removal-details__section .list-group-item { border-color: var(--mb-border-soft); background: transparent; }
.document-removal-details__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--mb-space-md); }
.document-removal-details__facts > div { min-width: 0; padding: var(--mb-space-md); border-radius: var(--mb-radius-md); background: var(--mb-surface-soft); }
.document-removal-details__facts dt { margin-bottom: var(--mb-space-xs); color: var(--mb-text-muted); font-size: 0.875rem; font-weight: 600; }
.document-removal-details__facts dd { margin: 0; overflow-wrap: anywhere; }
.document-removal-details__loading { display: flex; gap: var(--mb-space-sm); align-items: center; justify-content: center; min-height: 10rem; color: var(--mb-text-muted); }
@media (max-width: 575.98px) {
  .document-removal-details__body { padding: var(--mb-space-lg); }
  .document-removal-details__facts { grid-template-columns: minmax(0, 1fr); }
}
