/* YEAR 3026 — simple, light, not cream, not a cockpit */
body.ed-y3026 {
  --ep-canvas: #f3f5f7;
  --ep-ink: #171d26;
  --ep-muted: #5c6673;
  --ep-line: #d8dee6;
  --ep-accent: #1f5f78;
  --ep-ask: #b45309;
  --bg: var(--ep-canvas);
  --surface: #ffffff;
  --text: var(--ep-ink);
  --text-muted: var(--ep-muted);
  --border: var(--ep-line);
  --navy: var(--ep-ink);
  --ed-navy: var(--ep-ink);
  --ed-ivory: var(--ep-canvas);
  --ed-ivory-deep: #e8ecf0;
  --ivory: var(--ep-canvas);
}
body.ed-y3026 .ed-app { background: var(--ep-canvas); color: var(--ep-ink); }
body.ed-y3026 .ed-sidebar {
  background: #fff;
  border-right: 1px solid var(--ep-line);
}
body.ed-y3026 .ed-brand-tagline { display: none; }
body.ed-y3026 .ed-nav-section { display: none; }
body.ed-y3026 .ed-nav-item.active {
  background: rgba(31, 95, 120, 0.08);
  color: var(--ep-accent);
  font-weight: 600;
  box-shadow: inset 3px 0 0 var(--ep-accent);
}
body.ed-y3026 .ed-nav-item.active .ed-nav-icon {
  opacity: 1;
  stroke: var(--ep-accent);
}
body.ed-y3026 .ed-topbar { background: var(--ep-canvas); border-bottom: 1px solid var(--ep-line); }
body.ed-y3026 .card-body { background: var(--ep-canvas); }

.ep-home {
  max-width: 1000px;
  margin: 0;
  padding: 0 4px 18px;
}
.ep-ingest, .ep-list { max-width: 960px; margin: 0 auto; padding: 8px 8px 24px; }
.ep-ingest, .ep-supplier { max-width: none; margin: 0; padding: 4px 4px 24px; }
.ep-hero h1, .ep-ingest h1, .ep-list h1 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 32px;
  font-weight: 600;
  margin: 0 0 8px;
  color: var(--ep-ink);
}
.ep-supplier h1 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 26px;
  font-weight: 600;
  margin: 0;
  color: var(--ep-ink);
  line-height: 1.15;
}
.ep-hero p, .ep-list header p { margin: 0 0 16px; color: var(--ep-muted); font-size: 14px; }
.ep-home-lead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2px 28px;
  align-items: start;
  margin: 0 0 2px;
  padding: 0 0 10px;
  border-bottom: 1px solid var(--ep-line);
}
.ep-home-lead h1 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 32px;
  font-weight: 600;
  margin: 0;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: var(--ep-ink);
}
.ep-home-kicker {
  margin: 6px 0 0;
  font-size: 14px;
  color: var(--ep-muted);
  font-weight: 400;
}
.ep-home-identity {
  text-align: right;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ep-muted);
  padding-top: 8px;
  line-height: 1.45;
}
.ep-home-identity .ep-home-co {
  display: block;
  margin-top: 2px;
  letter-spacing: 0;
  text-transform: none;
  font-size: 12px;
}
.ep-home-summary {
  grid-column: 1 / -1;
  margin: 8px 0 0;
  font-size: 12px;
  color: #7a8490;
  letter-spacing: 0.01em;
}
.ep-home-section {
  margin: 14px 0 0;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
}
.ep-home-section h2 {
  display: inline-block;
  margin: 0;
  padding: 1px 10px 2px 0;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--ep-ink);
  line-height: 1.25;
}
.ep-home-section h2::before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 0.92em;
  margin-right: 8px;
  vertical-align: -1px;
  border-radius: 1px;
  background: currentColor;
}
.ep-home-section[data-ep-home="continue-working"] .ep-home-section-head {
  background: linear-gradient(90deg, rgba(31, 95, 120, 0.08), rgba(31, 95, 120, 0.035) 52%, rgba(31, 95, 120, 0.02));
}
.ep-home-section[data-ep-home="continue-working"] h2 {
  color: #35586a;
  background: linear-gradient(90deg, rgba(31, 95, 120, 0.16), rgba(31, 95, 120, 0) 88%);
}
.ep-home-section[data-ep-home="continue-working"] h2::before {
  background: #6f97ad;
}
.ep-home-section[data-ep-home="needs-attention"] .ep-home-section-head {
  background: linear-gradient(90deg, rgba(196, 163, 90, 0.14), rgba(196, 163, 90, 0.05) 52%, rgba(196, 163, 90, 0.025));
}
.ep-home-section[data-ep-home="needs-attention"] h2 {
  color: #6a5630;
  background: linear-gradient(90deg, rgba(196, 163, 90, 0.24), rgba(196, 163, 90, 0) 88%);
}
.ep-home-section[data-ep-home="needs-attention"] h2::before {
  background: #c4a052;
}
.ep-home-section[data-ep-home="supplier-rates"] .ep-home-section-head {
  background: linear-gradient(90deg, rgba(61, 107, 82, 0.09), rgba(31, 95, 120, 0.04) 42%, rgba(61, 107, 82, 0.02));
}
.ep-home-section[data-ep-home="supplier-rates"] h2 {
  color: #35584a;
  background: linear-gradient(90deg, rgba(61, 107, 82, 0.16), rgba(31, 95, 120, 0.06) 42%, rgba(61, 107, 82, 0) 88%);
}
.ep-home-section[data-ep-home="supplier-rates"] h2::before {
  background: #6d917c;
}
.ep-home-section[data-ep-home="recent-activity"] .ep-home-section-head {
  background: linear-gradient(90deg, rgba(122, 108, 148, 0.10), rgba(122, 108, 148, 0.04) 52%, rgba(122, 108, 148, 0.02));
}
.ep-home-section[data-ep-home="recent-activity"] h2 {
  color: #534a66;
  background: linear-gradient(90deg, rgba(122, 108, 148, 0.18), rgba(122, 108, 148, 0) 88%);
}
.ep-home-section[data-ep-home="recent-activity"] h2::before {
  background: #9c8db5;
}
.ep-home-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 4px;
}
.ep-home-section-actions {
  display: flex;
  align-items: baseline;
  gap: 16px;
  flex-shrink: 0;
}
.ep-view-all {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: var(--ep-accent);
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
}
.ep-view-all:hover { color: #16485c; }
.ep-search {
  margin: 0 0 16px;
}
.ep-search-input {
  width: 100%;
  max-width: 28em;
  padding: 10px 12px;
  border: 1px solid var(--ep-line);
  border-radius: 8px;
  font: inherit;
  font-size: 15px;
}
.ep-search-empty {
  list-style: none;
  padding: 12px 4px;
  color: var(--ep-muted);
}
.ep-kv {
  display: grid;
  grid-template-columns: 9em minmax(0, 1fr);
  gap: 8px 16px;
  padding: 4px 0;
  font-size: 14px;
}
.ep-kv-k { color: var(--ep-muted); }
.ep-kv-v { min-width: 0; word-break: break-word; }
.ep-sup-summary {
  margin: 4px 0 0;
  padding: 0;
}
.ep-sup-summary h2 {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ep-muted);
  margin: 0 0 4px;
  font-weight: 600;
}
.ep-sup-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 18px;
  font-size: 13px;
  line-height: 1.4;
}
.ep-sup-fact b {
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--ep-muted);
  margin-right: 6px;
}
.ep-sup-notes { margin: 4px 0 0; font-size: 13px; white-space: pre-wrap; }
.ep-life {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 3px;
  list-style: none;
  margin: 6px 0 4px;
  padding: 0;
  max-width: 100%;
}
.ep-life li {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  padding: 6px 8px;
  border: 1px solid #c5cdd6;
  border-bottom-width: 2px;
  border-radius: 5px 5px 0 0;
  text-align: center;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: nowrap;
  color: #6a7380;
  background: #eef1f4;
}
.ep-life li:not(:last-child)::after { content: none; }
.ep-life li:nth-child(1) { background: #e3eef6; color: #4a6576; border-color: #b9ccd8; }
.ep-life li:nth-child(2) { background: #e3f0e8; color: #4a6a56; border-color: #b7d0c0; }
.ep-life li:nth-child(3) { background: #f3ead8; color: #6a5a38; border-color: #dcc9a6; }
.ep-life li:nth-child(4) { background: #ece6f3; color: #5a4c70; border-color: #cfc4de; }
.ep-life .is-done { opacity: 0.78; }
.ep-life .is-current { opacity: 1; font-weight: 700; }
.ep-life .is-ahead { opacity: 0.55; font-weight: 500; }
.ep-life--cancelled {
  margin: 6px 0 4px;
  color: #9f1d1d;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 10px;
  border-left: 3px solid #b42318;
  background: #f8eeee;
  border-radius: 0 4px 4px 0;
}
.ep-exceptions h3, .ep-recent h3 {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ep-muted);
  margin: 0 0 4px;
  font-weight: 600;
}
.ep-work { list-style: none; margin: 0; padding: 0; }
.ep-home-table { min-width: 0; }
.ep-home-thead,
.ep-work-row {
  display: grid;
  align-items: center;
  column-gap: 16px;
  width: 100%;
  min-width: 0;
}
.ep-home-table--work .ep-home-thead,
.ep-home-table--work .ep-work-row {
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.35fr) minmax(6.8rem, 0.95fr) minmax(5.4rem, 0.7fr) minmax(5.2rem, 0.65fr) 1.1rem;
}
.ep-home-table--attn .ep-home-thead,
.ep-home-table--attn .ep-work-row {
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.45fr) minmax(5.6rem, 0.7fr) 4.4rem;
}
.ep-home-table--ck .ep-home-thead,
.ep-home-table--ck .ep-work-row {
  grid-template-columns: minmax(0, 1.05fr) minmax(6.2rem, 0.75fr) minmax(6.6rem, 0.85fr) minmax(7.4rem, 1fr) minmax(5.6rem, 0.7fr) 1.1rem;
}
.ep-home-table--activity .ep-home-thead,
.ep-home-table--activity .ep-work-row {
  grid-template-columns: 6.6rem minmax(4.2rem, 0.5fr) minmax(0, 1fr) 1.1rem;
}
.ep-home-thead {
  padding: 4px 2px 6px;
  border-bottom: 1px solid var(--ep-line);
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a93a0;
}
.ep-work-row {
  padding: 8px 2px;
  margin: 0;
  border: 0;
  border-bottom: 1px solid #e7ebf0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  cursor: pointer;
  font: inherit;
  color: inherit;
  text-align: left;
}
.ep-work-row:hover {
  background: rgba(31, 95, 120, 0.035);
}
.ep-work-row:hover .ep-home-primary,
.ep-work-row:hover .ep-home-arrow,
.ep-work-row:hover .ep-home-action { color: var(--ep-accent); }
.ep-home-primary {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  font-size: 13px;
  font-weight: 650;
  color: var(--ep-ink);
  line-height: 1.3;
}
.ep-home-sub,
.ep-home-cell--muted {
  font-size: 11px;
  font-weight: 400;
  color: var(--ep-muted);
  line-height: 1.3;
}
.ep-home-cell {
  min-width: 0;
  font-size: 13px;
  color: var(--ep-ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ep-home-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-size: 12px;
  font-weight: 500;
  color: var(--ep-ink);
}
.ep-home-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
  background: #8a93a0;
}
.ep-home-status--draft .ep-home-dot { background: #8a93a0; }
.ep-home-status--issued .ep-home-dot { background: #1f5f78; }
.ep-home-status--confirmed .ep-home-dot { background: #3d6b52; }
.ep-home-status--accepted .ep-home-dot { background: #c4a35a; }
.ep-home-status--quoting .ep-home-dot { background: #1f5f78; }
.ep-home-status--enquiry .ep-home-dot { background: #8a93a0; }
.ep-home-arrow,
.ep-home-action {
  color: #8a93a0;
  font-size: 13px;
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
}
.ep-home-action { color: var(--ep-accent); }
.ep-home-empty {
  margin: 8px 0 2px;
  color: var(--ep-muted);
  font-size: 13px;
}
.ep-home-upload {
  display: inline-flex;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
}
.ep-home-upload .ep-view-all { pointer-events: none; }
.ep-home-upload.is-over .ep-view-all { color: #16485c; }
.ep-exceptions, .ep-recent, .ep-ask { margin-top: 16px; }
.ep-exceptions h2, .ep-recent h2, .ep-ask h2, .ep-supplier h2 {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ep-muted);
  margin: 0 0 8px;
}
.ep-ask { padding: 12px 14px; border-left: 3px solid var(--ep-ask); background: #fff; }
.ep-ok { color: var(--ep-accent); font-weight: 600; }
.ep-error { color: #9f1d1d; }
.ep-period, .ep-counts, .ep-more, .ep-read { color: var(--ep-muted); font-size: 13px; }
.ep-rates { width: 100%; border-collapse: collapse; background: #fff; font-size: 13px; }
.ep-rates th, .ep-rates td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--ep-line); }
.ep-rates th { font-size: 11px; color: var(--ep-muted); font-weight: 600; }
.ep-actions, .ep-page-head { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; margin: 16px 0; }
.ep-page-head p { margin: 0; color: var(--ep-muted); font-size: 14px; }
.ep-page-head-actions { display: flex; gap: 8px; align-items: center; flex-wrap: nowrap; }
.ep-list-label {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ep-muted);
  margin: 8px 0 10px;
  font-weight: 600;
}
.ep-link, .ep-crumb .ep-link {
  background: none; border: 0; padding: 0; color: var(--ep-accent); cursor: pointer; font: inherit;
}
.ep-sup-list { list-style: none; margin: 0; padding: 0; }
.ep-sup-row {
  width: 100%; display: flex; justify-content: space-between; gap: 12px;
  padding: 12px 14px; margin-bottom: 4px; background: #fff; border: 1px solid var(--ep-line);
  border-radius: 8px; cursor: pointer; font: inherit; color: inherit; text-align: left;
}
.ep-archived-row {
  display: flex;
  align-items: stretch;
  gap: 8px;
  margin-bottom: 4px;
  min-width: 0;
}
.ep-archived-row .ep-sup-row--archived {
  flex: 1 1 auto;
  width: auto;
  margin-bottom: 0;
  min-width: 0;
}
.ep-archived-row .ep-sup-row--archived > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}
.ep-row-actions {
  display: flex;
  align-items: center;
  gap: 2px;
  flex: 0 0 auto;
}
.ep-row-restore {
  appearance: none;
  background: none;
  border: 0;
  padding: 6px 8px;
  font: inherit;
  font-size: 12px;
  font-weight: 650;
  color: var(--ep-accent);
  cursor: pointer;
  border-radius: 6px;
}
.ep-row-restore:hover { background: rgba(31, 95, 120, 0.08); }
.ep-row-delete {
  appearance: none;
  background: none;
  border: 0;
  width: 32px;
  height: 32px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--ep-muted);
  cursor: pointer;
  border-radius: 6px;
}
.ep-row-delete:hover {
  color: var(--ed-danger, #9f1d1d);
  background: rgba(159, 29, 29, 0.06);
}
.ep-trash-icon { display: block; }
.ep-dialog-overlay {
  position: fixed;
  inset: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(11, 19, 32, 0.42);
}
.ep-dialog {
  width: min(440px, 100%);
  padding: 20px 22px 18px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 18px 40px rgba(15, 31, 51, 0.16);
  outline: none;
}
.ep-dialog .ws-modal-input { margin-bottom: 0; }
.ep-dialog-title {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 650;
  color: var(--ep-ink);
}
.ep-dialog-name {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 650;
  color: var(--ep-ink);
}
.ep-dialog-desc {
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.45;
  color: var(--ep-muted);
}
.ep-dialog-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 16px;
}
.ep-sup-row:hover { border-color: var(--ep-accent); }
.ep-add-choice { list-style: none; margin: 12px 0 0; padding: 0; }
.ep-add-choice-btn {
  width: 100%;
  display: block;
  margin: 0 0 8px;
  padding: 12px 14px;
  border: 1px solid var(--ep-line);
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  font: inherit;
  color: inherit;
  text-align: left;
}
.ep-add-choice-btn:hover { border-color: var(--ep-accent); }
.ep-add-choice-btn strong { display: block; font-weight: 600; }
.ep-add-choice-btn span { display: block; margin-top: 4px; color: var(--ep-muted); font-size: 13px; }
.ep-list.ep-manual { max-width: none; margin: 0; padding: 4px 4px 24px; }
.ep-manual-block { margin: 14px 0 0; }
.ep-manual-block h2 {
  font-size: 15px;
  font-weight: 600;
  margin: 0 0 8px;
  color: var(--ep-ink);
}
.ep-manual-period {
  display: grid;
  grid-template-columns: minmax(16em, 1fr) 10em;
  gap: 12px 16px;
  max-width: 40em;
  align-items: end;
}
.ep-manual-period .ep-confirm-label { margin: 0; }
.ep-manual-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.ep-manual-table th {
  text-align: left;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ep-muted);
  font-weight: 600;
  padding: 4px 6px 6px 0;
  border-bottom: 1px solid var(--ep-line);
}
.ep-manual-table td { padding: 4px 6px 4px 0; vertical-align: middle; }
.ep-manual-table .ep-edit-input { min-width: 0; }
.ep-manual-dates {
  display: flex;
  gap: 8px;
  align-items: flex-end;
}
.ep-date-lbl {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ep-muted);
}
.ep-date-lbl .ed-date-field,
.ep-date-lbl input[type="date"] {
  font: inherit;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ep-ink);
  min-width: 8.5em;
  max-width: 11em;
}
.ep-manual-note {
  display: grid;
  grid-template-columns: 10em 12em 1fr auto;
  gap: 6px 8px;
  align-items: start;
  margin: 0 0 8px;
}
.ep-kind-legend {
  margin: 8px 0 4px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ep-muted);
}
.ep-kind-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 4px;
}
.ep-kind-pill {
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  padding: 4px 10px;
  border: 1px solid var(--ep-line);
  border-radius: 999px;
  background: #fff;
  color: var(--ep-ink);
  cursor: pointer;
}
.ep-kind-pill.is-active {
  border-color: var(--ep-accent);
  background: rgba(31, 95, 120, 0.1);
  color: var(--ep-accent);
}
.ep-manual-block .ep-link { margin-top: 8px; }
.ep-manual .ep-actions { margin-top: 18px; }
.ep-table-wrap {
  margin: 12px 0;
}
.ep-rates { width: 100%; border-collapse: collapse; background: #fff; font-size: 13px; }
.ep-rate-ch {
  display: inline-block;
  padding: 1px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  background: rgba(31, 95, 120, 0.1);
  color: var(--ep-accent);
}
.ep-rate-ch-sto { background: rgba(31, 95, 120, 0.12); }
.ep-rate-ch-rack { background: rgba(23, 29, 38, 0.08); color: var(--ep-ink); }
.ep-edit-input { width: 100%; min-width: 0; font: inherit; padding: 4px 6px; border: 1px solid var(--ep-line); border-radius: 4px; }
.ep-rate-actions { white-space: nowrap; }
.ep-status-pill {
  display: inline-block;
  margin-left: 8px;
  padding: 1px 8px;
  border-radius: 999px;
  background: rgba(31, 95, 120, 0.1);
  color: var(--ep-accent);
  font-style: normal;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.ep-status-move { font-size: 12px; color: var(--ep-muted); white-space: nowrap; }
.ep-status-move select { margin-left: 6px; font: inherit; }
.ep-quotes-page {
  min-width: 0;
  max-width: 960px;
}
.ep-quote-life {
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-width: 100%;
  margin: 4px 0 0;
}
.ep-quote-life-tabs {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  gap: 3px;
  margin: 0;
  padding: 0 2px;
  border-bottom: 1px solid #c5cdd6;
}
.ep-quote-life-tab {
  appearance: none;
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  margin: 0 0 -1px;
  padding: 7px 8px 8px;
  border: 1px solid #c5cdd6;
  border-bottom: 1px solid transparent;
  border-radius: 5px 5px 0 0;
  background: #eef1f4;
  color: #5c6673;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  white-space: nowrap;
}
.ep-quote-life-tab--draft {
  background: #e3eef6;
  color: #3a5566;
  border-color: #b9ccd8;
}
.ep-quote-life-tab--issued {
  background: #e3f0e8;
  color: #3a5a46;
  border-color: #b7d0c0;
}
.ep-quote-life-tab--confirmed {
  background: #f3ead8;
  color: #5a4b30;
  border-color: #dcc9a6;
}
.ep-quote-life-tab--accepted {
  background: #ece6f3;
  color: #524468;
  border-color: #cfc4de;
}
.ep-quote-life-tab--cancelled {
  background: #f3e6ea;
  color: #6a3d46;
  border-color: #d4b8c0;
}
.ep-quote-life-tab.is-active {
  z-index: 1;
  font-weight: 700;
  padding-top: 8px;
  padding-bottom: 9px;
  box-shadow: 0 -1px 0 rgba(255, 255, 255, 0.7) inset;
}
.ep-quote-life-tab--draft.is-active {
  background: #f3f8fb;
  color: #2f4a5a;
  border-color: #b9ccd8;
  border-bottom-color: #f3f8fb;
}
.ep-quote-life-tab--issued.is-active {
  background: #f3faf5;
  color: #2f4a3a;
  border-color: #b7d0c0;
  border-bottom-color: #f3faf5;
}
.ep-quote-life-tab--confirmed.is-active {
  background: #fbf6ec;
  color: #4d3f27;
  border-color: #dcc9a6;
  border-bottom-color: #fbf6ec;
}
.ep-quote-life-tab--accepted.is-active {
  background: #f7f4fa;
  color: #46395a;
  border-color: #cfc4de;
  border-bottom-color: #f7f4fa;
}
.ep-quote-life-tab--cancelled.is-active {
  background: #fbf4f6;
  color: #5a323a;
  border-color: #d4b8c0;
  border-bottom-color: #fbf4f6;
}
.ep-quote-life-body {
  margin: 0;
  padding: 14px 14px 12px;
  border: 1px solid #c5cdd6;
  border-top: 0;
  border-radius: 0 0 8px 8px;
  min-width: 0;
  background: #fff;
}
.ep-quote-life[data-quote-life-tab="draft"] .ep-quote-life-body {
  background: #f3f8fb;
  border-color: #b9ccd8;
}
.ep-quote-life[data-quote-life-tab="issued"] .ep-quote-life-body {
  background: #f3faf5;
  border-color: #b7d0c0;
}
.ep-quote-life[data-quote-life-tab="confirmed"] .ep-quote-life-body {
  background: #fbf6ec;
  border-color: #dcc9a6;
}
.ep-quote-life[data-quote-life-tab="accepted"] .ep-quote-life-body {
  background: #f7f4fa;
  border-color: #cfc4de;
}
.ep-quote-life[data-quote-life-tab="cancelled"] .ep-quote-life-body {
  background: #fbf4f6;
  border-color: #d4b8c0;
}
.ep-quote-life-empty {
  margin: 4px 0 2px;
  color: var(--ep-muted, #5c6673);
  font-size: 14px;
}
.ep-quote-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
  min-width: 0;
  flex-wrap: wrap;
}
.ep-quote-row .ep-status-move {
  flex: 0 0 auto;
  padding-top: 10px;
}
.ep-quote-row .ep-sup-row,
.ep-quote-card {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  min-width: 0;
}
.ep-quote-card-title {
  font-weight: 600;
  font-size: 16px;
  overflow-wrap: anywhere;
}
.ep-quote-card-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.ep-quote-number {
  font-weight: 600;
}
.ep-quote-card .ep-status-pill {
  margin-left: 0;
}
.ep-quote-card-client,
.ep-quote-card-updated,
.ep-quote-card-context {
  color: var(--ep-muted);
  font-size: 13px;
  overflow-wrap: anywhere;
}
@media (max-width: 1366px) {
  .ep-quote-life-tab {
    padding: 6px 6px 7px;
    font-size: 11px;
    letter-spacing: 0.03em;
  }
  .ep-quote-life-tab.is-active {
    padding-top: 7px;
    padding-bottom: 8px;
  }
}

.ep-sup-identity { margin-bottom: 6px; }
.ep-sup-identity h1 { margin-bottom: 0; }
.ep-kept-line { margin: 0; color: var(--ep-muted); font-size: 12px; }
.ep-rates-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  margin: 4px 0 6px;
}
.ep-rates-toolbar-meta { min-width: 0; }
.ep-rates-toolbar .ep-period { margin: 0; }
.ep-supplier .ep-acc-rates { margin-top: 0; }
.ep-supplier .ep-mx th,
.ep-supplier .ep-mx td,
.ep-supplier .ep-fees-table th,
.ep-supplier .ep-fees-table td {
  padding-top: 3px;
  padding-bottom: 3px;
}
.ep-supplier .ep-mx .ep-rate-property th { padding-top: 6px; padding-bottom: 5px; }
.ep-supplier .ep-mx .ep-rate-property:not(:first-child) th { padding-top: 6px; }
.ep-supplier .ep-mx .ep-rate-group th { padding-top: 5px; padding-bottom: 2px; }
.ep-acc-rates { margin-top: 4px; }
.ep-acc-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0 0 6px;
}
.ep-acc-head h2, .ep-fees h2, .ep-previous h2 {
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--ep-ink);
  margin: 0;
}
.ep-acc-legend { margin: 0; font-size: 11px; color: var(--ep-muted); line-height: 1.3; }
.ep-leg b { font-size: 11px; letter-spacing: 0.04em; margin-right: 6px; }
.ep-leg-sto b { color: #1f5f78; }
.ep-leg-rack b { color: #9a6700; }
.ep-mx-wrap { overflow: visible; }
.ep-mx, .ep-fees-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  background: #fff;
  table-layout: fixed;
}
.ep-mx th, .ep-mx td, .ep-fees-table th, .ep-fees-table td {
  padding: 4px 8px;
  border-bottom: 1px solid var(--ep-line);
  vertical-align: middle;
}
.ep-mx thead th {
  font-size: 11px;
  font-weight: 600;
  color: var(--ep-muted);
  text-align: left;
  white-space: normal;
  line-height: 1.25;
  border-bottom: 1px solid var(--ep-ink);
  padding-top: 2px;
  padding-bottom: 6px;
}
.ep-mx thead th:first-child { width: 18%; }
.ep-mx.ep-mx-compare thead th:nth-child(n+2) { width: auto; }
.ep-mx-season { text-align: right; }
.ep-mx-season-cols {
  display: block;
  margin-top: 2px;
  font-size: 10px;
  font-weight: 500;
  color: var(--ep-muted);
  letter-spacing: 0.01em;
}
.ep-rs {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end;
  gap: 2px 6px;
  max-width: 100%;
  font-variant-numeric: tabular-nums;
  line-height: 1.35;
}
.ep-rs-cell { white-space: normal; text-align: right; }
.ep-rs-sep { color: var(--ep-muted); font-weight: 400; }
.ep-rs-rack b, .ep-rs-sto b, .ep-rs-amt b { font-weight: 650; }
.ep-rs-rack { color: #6f5420; }
.ep-rs-sto { color: #1f5f78; }
.ep-rs-pct { color: var(--ep-muted); font-weight: 650; }
.ep-rs-empty { color: var(--ep-muted); font-weight: 400; }
.ep-rs-del { font-size: 11px; }
.ep-confirm-delete-rate {
  margin-top: 6px;
  text-align: left;
  white-space: normal;
}
.ep-mx-cur {
  font-size: 11px;
  color: var(--ep-muted);
  white-space: nowrap;
}
.ep-mx-season-name {
  display: block;
  font-size: 10px;
  letter-spacing: 0.08em;
  font-weight: 700;
  color: var(--ep-ink);
}
.ep-mx-season-dates {
  display: block;
  font-size: 11px;
  font-weight: 500;
  color: var(--ep-muted);
  line-height: 1.3;
}
.ep-mx .ep-rate-property th {
  padding: 6px 8px 5px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--ep-ink);
  text-align: left;
  border-bottom: 0;
  background: transparent;
}
.ep-mx .ep-rate-property:not(:first-child) th {
  padding-top: 6px;
  border-top: 10px solid var(--ep-canvas, #f3f5f7);
}
.ep-prop-title {
  display: inline-block;
  padding: 1px 10px 2px 0;
  line-height: 1.25;
}
.ep-prop-title::before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 0.92em;
  margin-right: 8px;
  vertical-align: -1px;
  border-radius: 1px;
  background: currentColor;
}
.ep-mx .ep-rate-property[data-ep-prop-tone="0"] th,
.ep-wb .ep-mx-prop[data-ep-prop-tone="0"] th {
  color: #35586a;
  background: linear-gradient(90deg, rgba(31, 95, 120, 0.08), rgba(31, 95, 120, 0.035) 52%, rgba(31, 95, 120, 0.02));
}
.ep-mx .ep-rate-property[data-ep-prop-tone="0"] .ep-prop-title,
.ep-wb .ep-mx-prop[data-ep-prop-tone="0"] .ep-prop-title {
  color: #35586a;
  background: linear-gradient(90deg, rgba(31, 95, 120, 0.16), rgba(31, 95, 120, 0) 88%);
}
.ep-mx .ep-rate-property[data-ep-prop-tone="0"] .ep-prop-title::before,
.ep-wb .ep-mx-prop[data-ep-prop-tone="0"] .ep-prop-title::before {
  background: #6f97ad;
}
.ep-mx .ep-rate-property[data-ep-prop-tone="1"] th,
.ep-wb .ep-mx-prop[data-ep-prop-tone="1"] th {
  color: #6a5630;
  background: linear-gradient(90deg, rgba(196, 163, 90, 0.14), rgba(196, 163, 90, 0.05) 52%, rgba(196, 163, 90, 0.025));
}
.ep-mx .ep-rate-property[data-ep-prop-tone="1"] .ep-prop-title,
.ep-wb .ep-mx-prop[data-ep-prop-tone="1"] .ep-prop-title {
  color: #6a5630;
  background: linear-gradient(90deg, rgba(196, 163, 90, 0.24), rgba(196, 163, 90, 0) 88%);
}
.ep-mx .ep-rate-property[data-ep-prop-tone="1"] .ep-prop-title::before,
.ep-wb .ep-mx-prop[data-ep-prop-tone="1"] .ep-prop-title::before {
  background: #c4a052;
}
.ep-mx .ep-rate-property[data-ep-prop-tone="2"] th,
.ep-wb .ep-mx-prop[data-ep-prop-tone="2"] th {
  color: #35584a;
  background: linear-gradient(90deg, rgba(61, 107, 82, 0.09), rgba(31, 95, 120, 0.04) 42%, rgba(61, 107, 82, 0.02));
}
.ep-mx .ep-rate-property[data-ep-prop-tone="2"] .ep-prop-title,
.ep-wb .ep-mx-prop[data-ep-prop-tone="2"] .ep-prop-title {
  color: #35584a;
  background: linear-gradient(90deg, rgba(61, 107, 82, 0.16), rgba(31, 95, 120, 0.06) 42%, rgba(61, 107, 82, 0) 88%);
}
.ep-mx .ep-rate-property[data-ep-prop-tone="2"] .ep-prop-title::before,
.ep-wb .ep-mx-prop[data-ep-prop-tone="2"] .ep-prop-title::before {
  background: #6d917c;
}
.ep-mx .ep-rate-property[data-ep-prop-tone="3"] th,
.ep-wb .ep-mx-prop[data-ep-prop-tone="3"] th {
  color: #534a66;
  background: linear-gradient(90deg, rgba(122, 108, 148, 0.10), rgba(122, 108, 148, 0.04) 52%, rgba(122, 108, 148, 0.02));
}
.ep-mx .ep-rate-property[data-ep-prop-tone="3"] .ep-prop-title,
.ep-wb .ep-mx-prop[data-ep-prop-tone="3"] .ep-prop-title {
  color: #534a66;
  background: linear-gradient(90deg, rgba(122, 108, 148, 0.18), rgba(122, 108, 148, 0) 88%);
}
.ep-mx .ep-rate-property[data-ep-prop-tone="3"] .ep-prop-title::before,
.ep-wb .ep-mx-prop[data-ep-prop-tone="3"] .ep-prop-title::before {
  background: #9c8db5;
}
.ep-mx .ep-rate-group th {
  padding: 8px 8px 4px;
  font-size: 13px;
  font-weight: 650;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ep-ink);
  text-align: left;
  border-bottom: 0;
  background: transparent;
}
.ep-mx .ep-rate-group .ep-note-host { font-weight: 400; }
.ep-mx-amt { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.ep-mx-amt .ep-edit-input { width: 7.5em; display: inline-block; margin: 0 4px 0 0; }
.ep-mx-amt .ep-edit-fields { white-space: normal; text-align: left; }
.ep-edit-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 6px;
  align-items: center;
  justify-content: flex-end;
}
.ep-edit-fields .ep-edit-input { width: auto; min-width: 5.5em; max-width: 16em; }
.ep-edit-fields [data-ep-field="product"],
.ep-edit-fields [data-ep-field="period"] { min-width: 10em; max-width: 22em; }
.ep-edit-error { color: #9b1c1c; font-size: 12px; margin: 6px 0; }
.ep-note-edit { margin: 0 0 8px; }
.ep-note-edit .ep-link { font-size: 11px; }
.ep-mx-edit { font-size: 11px; margin-left: 4px; }
.ep-mx-amt .ep-note-pen { opacity: 0.45; }
.ep-mx-amt .ep-note-pen:hover,
.ep-mx-amt .ep-note-pen:focus { opacity: 1; color: var(--ep-accent); }
.ep-mx-rack { background: rgba(196, 146, 46, 0.08); }
.ep-mx-sto { background: rgba(31, 95, 120, 0.07); }
.ep-rate-ch-rack { background: rgba(196, 146, 46, 0.22); color: #7a5200; }
.ep-rate-ch-sto { background: rgba(31, 95, 120, 0.16); color: var(--ep-accent); }
.ep-fees { margin-top: 16px; }
.ep-fees h2 { margin-bottom: 6px; }
.ep-fees-table { table-layout: auto; background: #fff; }
.ep-mx-notes td {
  padding: 4px 8px 10px;
  border-bottom: 0;
  white-space: normal;
  vertical-align: top;
}
.ep-notes {
  max-width: 52em;
  color: var(--ep-muted);
  font-size: 12px;
  line-height: 1.4;
}
.ep-notes-label {
  margin: 6px 0 2px;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--ep-muted);
}
.ep-notes ul {
  margin: 0 0 2px;
  padding-left: 1.1em;
}
.ep-notes li { margin: 0 0 2px; }
.ep-notes .ep-link { font-size: 11px; }
.ep-notes-input {
  display: block;
  width: 100%;
  max-width: 52em;
  margin: 0 0 6px;
  padding: 4px 6px;
  font: inherit;
  color: var(--ep-ink);
  border: 1px solid var(--ep-line);
  border-radius: 4px;
  resize: vertical;
}
.ep-notes-actions { margin-top: 2px; }
.ep-period-notes {
  margin: 10px 0 0;
  padding: 0 8px;
}
.ep-confirm-supplier { max-width: 28em; padding: 16px 8px 24px; }
.ep-upload-file {
  margin: 4px 0 12px;
  font-size: 15px;
  font-weight: 600;
  color: inherit;
  word-break: break-word;
}

/* Compact Review workbench — density only; kept supplier matrix is unchanged */
.ep-ingest.ep-workbench { padding: 2px 4px 16px; }
.ep-ingest.ep-workbench .ep-wb-head { margin: 0 0 6px; }
.ep-validity {
  margin: 0 0 10px;
  max-width: 520px;
}
.ep-validity h2 {
  margin: 0 0 2px;
  font-family: inherit;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ep-muted);
}
.ep-validity-hint {
  margin: 0 0 6px;
  font-size: 12px;
  line-height: 1.35;
  color: var(--ep-muted);
}
.ep-validity-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px 12px;
  max-width: 36em;
}
.ep-validity-grid.ed-date-range {
  display: flex;
  align-items: flex-end;
}
.ep-validity-grid .ep-confirm-label {
  margin: 0;
  min-width: 0;
}
.ep-validity-grid .ed-date-field,
.ep-validity-grid input[type="date"] {
  width: 100%;
  max-width: 100%;
  margin-top: 4px;
}
.ep-sto-basis {
  margin: 0 0 10px;
  max-width: 520px;
}
.ep-sto-basis-label {
  margin: 0 0 4px;
  font-size: 13px;
  font-weight: 650;
}
.ep-sto-discount-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  max-width: 160px;
}
.ep-sto-discount {
  width: 88px;
  margin-top: 0;
}
.ep-sto-example {
  margin: 6px 0 0;
  font-size: 12px;
  line-height: 1.35;
}
.ep-sto-derived {
  display: inline-block;
  margin-left: 6px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: none;
  color: #3d6a7c;
}
.ep-ingest.ep-workbench .ep-wb-head h1 {
  font-family: inherit;
  font-size: 18px;
  font-weight: 650;
  line-height: 1.2;
  margin: 0;
}
.ep-wb-meta {
  margin: 2px 0 0;
  color: var(--ep-muted);
  font-size: 12px;
  line-height: 1.35;
}
.ep-wb-attn {
  margin: 0 0 8px;
  padding: 6px 10px;
  border-left: 3px solid var(--ep-ask);
  background: #fff;
  font-size: 12px;
}
.ep-wb-attn ul { margin: 0; padding-left: 1.15em; }
.ep-wb-attn li { margin: 0 0 2px; }
.ep-wb-wrap { overflow: visible; }
.ep-wb {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 12px;
  background: #fff;
}
.ep-wb-col-product { width: 23%; }
.ep-wb-col-occ { width: 15%; }
.ep-wb-col-season { width: 20%; }
.ep-wb-col-rack { width: 14%; }
.ep-wb-col-pct { width: 6%; }
.ep-wb-col-sto { width: 17%; }
.ep-wb-col-actions { width: 5%; }
.ep-wb th, .ep-wb td {
  padding: 5px 8px;
  border-bottom: 1px solid var(--ep-line);
  vertical-align: middle;
  line-height: 1.3;
}
.ep-wb thead th {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ep-muted);
  text-align: left;
  white-space: nowrap;
  border-bottom: 1px solid var(--ep-ink);
  padding-top: 4px;
  padding-bottom: 6px;
}
.ep-wb thead th.ep-wb-rack,
.ep-wb thead th.ep-wb-pct,
.ep-wb thead th.ep-wb-sto,
.ep-wb td.ep-wb-rack,
.ep-wb td.ep-wb-pct,
.ep-wb td.ep-wb-sto {
  text-align: right;
  font-variant-numeric: tabular-nums;
  padding-left: 8px;
  padding-right: 10px;
}
.ep-wb thead th.ep-wb-rack {
  color: #8a6a2a;
  background: rgba(196, 146, 46, 0.07);
}
.ep-wb thead th.ep-wb-pct { color: var(--ep-muted); font-weight: 500; }
.ep-wb thead th.ep-wb-sto {
  color: #1f5f78;
  background: rgba(31, 95, 120, 0.07);
}
.ep-wb thead th.ep-wb-actions {
  width: 52px;
  padding-left: 2px;
  padding-right: 4px;
}
.ep-wb td.ep-wb-rack {
  color: #4a3d28;
  background: rgba(196, 146, 46, 0.08);
  box-shadow: inset 2px 0 0 rgba(168, 122, 42, 0.35);
}
.ep-wb td.ep-wb-rack b { color: #3d3426; font-weight: 650; }
.ep-wb td.ep-wb-pct {
  color: var(--ep-muted);
  font-size: 11px;
  font-weight: 650;
}
.ep-wb td.ep-wb-sto {
  color: #173d4d;
  background: rgba(31, 95, 120, 0.08);
  box-shadow: inset 2px 0 0 rgba(31, 95, 120, 0.38);
}
.ep-wb td.ep-wb-sto b { color: #153644; font-weight: 650; }
.ep-wb td.ep-wb-actions {
  text-align: right;
  width: 52px;
  padding-left: 2px;
  padding-right: 4px;
  white-space: nowrap;
}
.ep-wb .ep-mx-prop th {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-transform: none;
  text-align: left;
  padding: 6px 8px 5px;
  border-bottom: 0;
  background: transparent;
  box-shadow: none;
}
.ep-wb .ep-mx-prop:not(:first-child) th {
  padding-top: 6px;
  border-top: 10px solid var(--ep-canvas, #f3f5f7);
}
.ep-wb .ep-mx-amt { white-space: nowrap; }
.ep-wb .ep-rs-empty { color: var(--ep-muted); font-weight: 400; background: transparent; box-shadow: none; }
.ep-vh {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.ep-rate-icons {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  vertical-align: middle;
}
.ep-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  vertical-align: middle;
}
.ep-icon-btn.ep-note-pen { color: var(--ep-muted); }
.ep-icon-btn.ep-note-pen:hover,
.ep-icon-btn.ep-note-pen:focus { color: var(--ep-accent); }
.ep-rate-del { color: #9f1d1d; opacity: 0.72; }
.ep-rate-del:hover,
.ep-rate-del:focus { opacity: 1; }
.ep-wb-edit .ep-edit-input { padding: 2px 4px; font-size: 12px; }
.ep-apply-all-go { display: block; margin-top: 4px; }
.ep-apply-all-row td {
  padding: 4px 6px 8px;
  background: rgba(180, 83, 9, 0.05);
}
.ep-apply-all {
  font-size: 12px;
  font-weight: 650;
}
.ep-wb-st {
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ep-ask);
}
.ep-wb-missing td, .ep-wb-invalid td { background: rgba(180, 83, 9, 0.06); }
.ep-workbench .ep-actions { margin: 10px 0 0; }
.ep-workbench .ep-period-notes { margin: 8px 0 0; padding: 0 4px; }
.ep-workbench .ep-notes { max-width: none; font-size: 12px; }
.ep-workbench .ep-notes-label { margin: 0 0 2px; }
.ep-workbench .ep-mx-notes td { padding: 2px 6px 6px; }
.ep-note-host {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin-left: 6px;
  vertical-align: middle;
}
.ep-note-icon,
.ep-note-pen {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--ep-muted);
  cursor: pointer;
  vertical-align: middle;
}
.ep-note-icon:hover,
.ep-note-icon.is-open,
.ep-note-pen:hover { color: var(--ep-accent); }
.ep-note-pop {
  display: none;
  position: absolute;
  z-index: 12;
  left: 0;
  top: calc(100% + 4px);
  min-width: 16em;
  max-width: 24em;
  padding: 8px 10px;
  background: #fff;
  border: 1px solid var(--ep-line);
  border-radius: 6px;
  box-shadow: 0 8px 20px rgba(20, 24, 28, 0.08);
  color: var(--ep-ink);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
  white-space: normal;
}
.ep-note-pop.is-open { display: block; }
.ep-note-pop ul {
  margin: 0 0 6px;
  padding-left: 1.1em;
}
.ep-note-pop li { margin: 0 0 2px; }
.ep-wb-prop .ep-note-host { font-weight: 400; }
.ep-workbench .ep-fees { margin-top: 10px; }
.ep-workbench .ep-fees h2 { margin-bottom: 4px; }
.ep-workbench .ep-fees-table th,
.ep-workbench .ep-fees-table td { padding: 3px 6px; }
.ep-confirm-label {
  display: block;
  margin: 12px 0 4px;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--ep-muted);
}
.ep-confirm-input {
  display: block;
  width: 100%;
  margin-top: 4px;
  padding: 8px 10px;
  font: inherit;
  font-size: 16px;
  color: var(--ep-ink);
  border: 1px solid var(--ep-line);
  border-radius: 6px;
  background: #fff;
}
.ep-muted { margin: 0 0 12px; color: var(--ep-muted); font-size: 13px; }
.ep-unresolved { margin-top: 16px; font-size: 13px; }
.ep-unresolved h2 {
  margin: 0 0 4px;
  font-size: 13px;
  font-weight: 650;
  color: var(--ep-ask);
}
.ep-unresolved p { margin: 0 0 8px; color: var(--ep-ink); }
.ep-unresolved-list {
  margin: 0;
  padding-left: 1.1em;
}
.ep-unresolved-list li { margin: 0 0 4px; }
.ep-unresolved-go {
  background: none;
  border: 0;
  padding: 0;
  color: var(--ep-ask);
  font: inherit;
  font-weight: 650;
  cursor: pointer;
  text-align: left;
  text-decoration: underline;
}
.ep-unresolved-go:hover,
.ep-unresolved-go:focus { color: var(--ep-ink); }
.ep-previous { margin-top: 20px; }
.ep-attn-go {
  background: none;
  border: 0;
  padding: 0;
  color: var(--ep-ask);
  font: inherit;
  font-weight: 650;
  cursor: pointer;
  text-decoration: underline;
}
.ep-attn-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 12px;
  margin: 0 0 8px;
  font-size: 12px;
  color: var(--ep-ink);
}
.ep-attn-done { margin: 0 0 8px; font-size: 12px; font-weight: 650; color: var(--ep-accent); }
.ep-wb-current td { background: rgba(180, 83, 9, 0.1); }
.ep-wb-need { box-shadow: inset 0 -2px 0 var(--ep-ask); }
.ep-wb-attn-field {
  box-shadow: inset 0 0 0 2px var(--ep-ask);
  background: rgba(180, 83, 9, 0.12);
}
.ep-wb-field-go {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  font: inherit;
  color: inherit;
  text-align: inherit;
  cursor: pointer;
}
.ep-sup-identity-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}
.ep-sup-identity-row h1 { margin: 0; flex: 1; }
.ep-archived-badge {
  display: inline-block;
  margin-left: 8px;
  padding: 1px 7px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ep-muted);
  background: #eef1f4;
  vertical-align: middle;
}
.ep-more { position: relative; flex: 0 0 auto; }
.ep-more-toggle {
  font-size: 12px;
  font-weight: 650;
  color: var(--ep-muted);
}
.ep-more-menu {
  position: absolute;
  right: 0;
  z-index: 4;
  min-width: 14em;
  margin-top: 4px;
  padding: 4px 0;
  background: #fff;
  border: 1px solid var(--ep-line);
  box-shadow: 0 4px 16px rgba(23, 29, 38, 0.08);
}
.ep-more-menu button {
  display: block;
  width: 100%;
  padding: 6px 12px;
  border: 0;
  background: none;
  font: inherit;
  font-size: 13px;
  text-align: left;
  cursor: pointer;
  color: var(--ep-ink);
}
.ep-more-menu button:hover { background: #f3f5f7; }
.ep-more-quiet-danger { color: var(--ep-muted); }
.ep-more-quiet-danger:hover { color: var(--ed-danger, #9f1d1d); }
.ep-more-hint {
  margin: 0;
  padding: 6px 12px;
  font-size: 11px;
  color: var(--ep-muted);
  line-height: 1.35;
}
.ep-confirm-delete {
  margin: 8px 0 0;
  padding: 8px 10px;
  border-left: 3px solid #9f1d1d;
  background: #fff;
  font-size: 12px;
}
.ep-confirm-delete p { margin: 0 0 8px; }
.ep-confirm-delete-label {
  display: block;
  margin: 0 0 8px;
  font-size: 12px;
}
.ep-confirm-delete-label input {
  display: block;
  margin-top: 4px;
  max-width: 12em;
}
.ep-confirm-delete-actions { margin-top: 4px; }
