.notary-workspace {
  --notary-accent: #24594b;
  --notary-accent-soft: #e9f3ef;
  --notary-outline: var(--line, #dbe4df);
  --notary-muted: var(--muted, #516059);
  display: grid;
  gap: 1rem;
  min-width: 0;
}

.notary-workspace .page-intro,
.notary-workspace .notary-panel { margin: 0; }

.notary-tabs,
.notary-actions,
.notary-case-meta,
.notary-team-context,
.notary-selected-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem;
}

.notary-tabs {
  gap: .2rem;
  padding: .25rem;
  background: var(--surface, #fff);
  border: 1px solid var(--notary-outline);
  border-radius: 5px;
}

.notary-tab {
  border: 1px solid transparent;
  border-radius: 4px;
  background: transparent;
  padding: .55rem .7rem;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.notary-tab:hover,
.notary-tab[aria-pressed="true"] {
  background: var(--notary-accent-soft);
  color: var(--notary-accent);
}

.notary-tab[aria-pressed="true"] { font-weight: 650; }
.notary-tab:focus-visible,
.notary-workspace .btn:focus-visible { outline: 2px solid var(--notary-accent); outline-offset: 2px; }

.notary-workspace .notary-panel,
.notary-workspace .btn,
.notary-workspace .input,
.notary-editor .btn,
.notary-editor .input,
.notary-operation-picker .btn { border-radius: 5px; }

.notary-workspace .notary-panel { min-width: 0; }
.notary-panel .panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .5rem;
}
.notary-panel .panel-heading h2 { margin: 0; font-size: 1rem; overflow-wrap: anywhere; }
.notary-panel-body { padding: .9rem; min-width: 0; }
.notary-panel-body .table-wrap { overflow-x: auto; }
.notary-panel-body th { white-space: nowrap; }
.notary-panel-body td { vertical-align: top; overflow-wrap: anywhere; }
.notary-panel-body td small { display: block; margin-top: .25rem; color: var(--notary-muted); }
.notary-panel-body td .btn { height: auto; white-space: normal; text-align: left; }
.notary-panel-body td .btn + .btn,
.notary-panel-body td .notary-badge + .btn { margin: .25rem 0 0 .25rem; }

.notary-columns,
.notary-cards,
.notary-operation-picker,
.notary-metrics,
.notary-filters {
  display: grid;
  gap: .75rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
  min-width: 0;
}

.notary-metrics { margin: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.notary-metrics div {
  padding: .9rem 1rem;
  border: 1px solid var(--notary-outline);
  border-radius: 5px;
  background: var(--surface, #fff);
}
.notary-metrics dt { color: var(--notary-muted); }
.notary-metrics dd { margin: .25rem 0 0; font-size: 1.55rem; font-weight: 680; color: var(--notary-accent); }
.notary-stage-summary { margin: 0; padding: 0; list-style: none; }
.notary-stage-summary li { display: flex; justify-content: space-between; gap: .5rem; padding: .4rem 0; }
.notary-stage-summary li + li { border-top: 1px solid var(--notary-outline); }
.notary-filters { align-items: end; margin-bottom: .8rem; }
.notary-filters .field { min-width: 0; }
.notary-filters .input { width: 100%; }
.notary-filters > .btn { justify-self: start; }
.notary-editor .notary-filters { margin: 0; }

.notary-badge {
  display: inline-flex;
  align-items: center;
  padding: .15rem .45rem;
  border-radius: 4px;
  background: var(--notary-accent-soft);
  color: var(--notary-accent);
  font-size: .81rem;
  font-weight: 620;
  overflow-wrap: anywhere;
}
.notary-badge.notary-warn,
.notary-alert { background: #fff1d9; color: #735020; }
.notary-alert { border-left: 3px solid #ad7326; margin: 0; padding: .7rem .85rem; border-radius: 4px; }
.notary-note { margin: .35rem 0; color: var(--notary-muted, #516059); line-height: 1.5; }
.notary-progress {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin: .75rem 0 0;
  padding: 0;
  list-style: none;
}
.notary-progress li { border-radius: 4px; border: 1px solid var(--notary-outline); padding: .25rem .45rem; }
.notary-progress li[aria-current="step"] { background: var(--notary-accent-soft); color: var(--notary-accent); font-weight: 650; }
.notary-blockers { margin-top: .85rem; }
.notary-blockers summary,
.notary-library-family summary,
.notary-card summary { cursor: pointer; font-weight: 620; }
.notary-blockers ul,
.notary-card ul { margin: .5rem 0 0; padding-inline-start: 1.2rem; }
.notary-blockers li + li,
.notary-card li + li { margin-top: .35rem; }
.notary-source-links { list-style: none; margin: .25rem 0; padding: 0; }
.notary-source-links:empty { display: none; }
.notary-linked h3 { font-size: .9rem; margin: .9rem 0 .3rem; }
.notary-pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.notary-draft { max-width: 78ch; margin: 0 auto; line-height: 1.6; }
.notary-total { margin: .8rem 0 .25rem; }

.notary-card,
.notary-picker {
  border: 1px solid var(--notary-outline, #dbe4df);
  border-radius: 5px;
  padding: .75rem;
  min-width: 0;
}
.notary-card h3 { margin: 0 0 .3rem; font-size: .96rem; }
.notary-card p { margin: .35rem 0; line-height: 1.5; }
.notary-card small { display: block; margin-bottom: .4rem; color: var(--notary-muted); }
.notary-card .btn { margin-top: .35rem; }
.notary-panel-body > .notary-card + .notary-card,
.notary-team-context + .notary-cards { margin-top: .65rem; }
.notary-operation-picker { padding: 1rem; }
.notary-library-family { border-bottom: 1px solid var(--notary-outline); padding: .65rem 0; }
.notary-library-family .notary-cards { margin-top: .65rem; }
.notary-editor { display: grid; gap: .75rem; }
.notary-editor h3 { margin: 0; font-size: 1rem; }
.notary-picker { display: grid; gap: .5rem; margin: 0; }
.notary-picker legend { padding-inline: .25rem; font-weight: 620; }
.notary-picker > div > label:not(.field),
.notary-check,
.notary-link-results label {
  display: flex;
  align-items: start;
  gap: .45rem;
  overflow-wrap: anywhere;
}
.notary-picker > div > label + label { margin-top: .25rem; }
.notary-check input,
.notary-picker input[type="checkbox"] { margin-top: .2rem; flex: 0 0 auto; }
.notary-party-row {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: .6rem;
  align-items: end;
}
.notary-party-row + .notary-party-row { margin-top: .55rem; }
.notary-party-row strong { overflow-wrap: anywhere; align-self: center; }
.notary-link-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: .3rem .7rem; margin-top: .45rem; }
.notary-pager { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem; }
.notary-pager .btn,
.notary-selected-links .btn { padding: .22rem .45rem; min-height: 0; }
.notary-selected-links .btn { white-space: normal; text-align: left; }
.notary-selected-links strong { margin-right: .25rem; }

@media (max-width: 660px) {
  .notary-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .notary-party-row { grid-template-columns: 1fr; }
  .notary-tab { padding: .45rem .55rem; }
}

.notary-board,
.notary-authority-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
  align-items: start;
  gap: .65rem;
}
.notary-board-column {
  padding: .65rem;
  background: var(--bg, #f4f7f5);
  border: 1px solid var(--notary-outline);
  border-radius: 5px;
  min-width: 0;
}
.notary-board-column h3,
.notary-board-column h4 { margin: 0 0 .4rem; overflow-wrap: anywhere; }
.notary-board-column h3 { font-size: .9rem; }
.notary-board-column .notary-card { background: var(--surface, #fff); }
.notary-board-column .notary-card + .notary-card { margin-top: .5rem; }
.notary-authority-form { margin-top: .75rem; }
.notary-authority-form .field-full { grid-column: 1 / -1; }
.notary-authority-form .input { width: 100%; border-radius: 5px; }
