/* Aarnyx werkplek: gedeelde schil en documentweergave voor alle profielen. */
.workspace-app {
  --bg: #edf3f8;
  --paper: #fff;
  --paper-2: #f8fafc;
  --line: #d8e2ec;
  --line-strong: #aabacb;
  --ink: #172c42;
  --muted: #4d6377;
  --faint: #52697d;
  --nav: #fff;
  --blue: #075caf;
  --blue-hover: #084783;
  --blue-soft: #e7f2ff;
  --shell: #133553;
  --copper: var(--blue);
  --copper-dark: var(--blue-hover);
  --copper-soft: var(--blue-soft);
  --serif: var(--sans);
  --shadow: 0 1px 3px rgb(21 55 84 / 7%);
  font-family: var(--sans);
  color: var(--ink);
  background: var(--bg);
}
.workspace-app :focus-visible {
  outline: 2px solid #00579f;
  outline-offset: 2px;
}
.workspace-app h1, .workspace-app h2, .workspace-app .workspace-title {
  font-weight: 650;
  letter-spacing: -.025em;
}
.workspace-app .page-intro h1 { font-size: clamp(26px, 2.3vw, 36px); }
.workspace-app .eyebrow { color: #42617b; letter-spacing: .08em; }
.workspace-app .workspace-footer, .workspace-app .module-meta { color: var(--muted); }

/* Bedrijf, pagina en rol blijven zichtbaar boven de werkruimte. */
.workspace-app .demo-banner { background: #deebf6; color: #304b64; }
.workspace-app .demo-dot { background: var(--blue); }
.workspace-app .banner-separator { color: #607d96; }
.workspace-app .workspace-sidebar {
  gap: 17px;
  padding: 19px 11px;
  background: var(--nav);
  color: var(--ink);
  border-right: 1px solid var(--line);
  scrollbar-color: #abbed0 transparent;
}
.workspace-app .workspace-brand { color: #163750; }
.workspace-app .brand-mark { width: 34px; height: 34px; background: var(--blue); border-radius: 7px; }
.workspace-app .brand-word { font-size: 24px; font-weight: 700; }
.workspace-app .brand-word small { color: var(--muted); font-weight: 500; }
.workspace-app .company-switch { background: var(--paper-2); border-color: var(--line); }
.workspace-app .company-monogram {
  color: #214f79;
  background: #e6eff8;
  border-color: #c6d8e8;
  font-size: 15px;
  font-weight: 650;
}
.workspace-app .company-switch strong, .workspace-app .scenario-note strong { color: var(--ink); }
.workspace-app .company-switch small, .workspace-app .scenario-note > span:last-child,
.workspace-app .legacy-link { color: var(--muted); }
.workspace-app .company-dot { background: #227650; }
.workspace-app .sidebar-group { gap: 2px; }
.workspace-app .sidebar-label { color: #516980; letter-spacing: .08em; font-size: 10px; }
.workspace-app .sidebar-group a, .workspace-app .sidebar-button {
  color: var(--ink);
  min-height: 37px;
  padding: 8px 11px;
  border-radius: 5px;
}
.workspace-app .sidebar-group a .ui-icon, .workspace-app .sidebar-button .ui-icon {
  color: #415f7b;
  stroke-width: 1.75;
}
.workspace-app .sidebar-group a:hover, .workspace-app .sidebar-button:hover {
  color: #073f76;
  background: #eff5fa;
}
.workspace-app .sidebar-group a.active, .workspace-app .sidebar-group a.on {
  background: #dcecff;
  color: #004988;
  box-shadow: inset 3px 0 var(--blue);
  font-weight: 650;
}
.workspace-app .sidebar-group a.active .ui-icon, .workspace-app .sidebar-group a.on .ui-icon {
  color: var(--blue);
  stroke-width: 1.95;
}
.workspace-app .nav-count { color: #405e79; border-color: #bdcfe0; }
.workspace-app .scenario-note { border-color: var(--line); background: var(--paper-2); }
.workspace-app .workspace-topbar {
  min-height: 65px;
  padding-block: 10px;
  background: var(--shell);
  border-color: #153a5b;
  color: #fff;
}
.workspace-app .workspace-topbar .breadcrumb,
.workspace-app .workspace-topbar .person-name small { color: #d1e6f7; }
.workspace-app .workspace-title { font-size: 17px; }
.workspace-app .workspace-topbar .icon-button, .workspace-app #role-select {
  background: #204969;
  border: 1px solid #7491a8;
  color: #fff;
  border-radius: 5px;
}
.workspace-app #role-select { color-scheme: dark; }
.workspace-app .workspace-topbar .icon-button:hover, .workspace-app #role-select:hover {
  background: #2b5b80;
  border-color: #a2c9e8;
}
.workspace-app .workspace-topbar :focus-visible { outline-color: #a4dcff; }

/* Gedeelde bediening en statussen. */
.workspace-app .panel, .workspace-app .module-card, .workspace-app .profile-card,
.workspace-app .assistant-panel, .workspace-app .case-banner { border-radius: 8px; }
.workspace-app .action-button {
  border-radius: 5px;
  color: #fff;
  background: var(--blue);
  font-size: 12px;
}
.workspace-app .action-button:hover:not(:disabled) { transform: none; }
.workspace-app .action-button.secondary {
  background: var(--paper);
  color: var(--blue);
  border-color: #8ca9c1;
}
.workspace-app .action-button.secondary:hover:not(:disabled), .workspace-app .action-button.quiet:hover:not(:disabled) {
  background: #edf5ff;
  color: var(--blue-hover);
  border-color: var(--blue);
}
.workspace-app .action-button.danger { background: #fff4f3; color: #903b36; }
.workspace-app .action-button:disabled {
  opacity: 1;
  background: #f0f3f6;
  color: #617185;
  border-color: #c6d1da;
}
.workspace-app .metric, .workspace-app .task-card, .workspace-app .check-row {
  border-radius: 6px;
  background: #f7fafc;
}
.workspace-app .metric > strong { color: #173d60; font-weight: 650; }
.workspace-app .metric small, .workspace-app .task-card small, .workspace-app .field small,
.workspace-app .step-title small, .workspace-app .event-item time, .workspace-app .event-item small,
.workspace-app .document-table td small, .workspace-app .empty-state p, .workspace-app .check-list,
.workspace-app .check-row small, .workspace-app .event-item p { color: var(--muted); }
.workspace-app .step-meta { color: var(--muted) !important; }
.workspace-app .role-pill, .workspace-app .tag, .workspace-app .status.waiting {
  border-color: var(--line);
  color: #44566b;
  background: #eef2f5;
}
.workspace-app .status.done, .workspace-app .step-card.done .step-marker { color: #1c6648; background: #e4f4eb; }
.workspace-app .status.ready { color: #064f92; background: var(--blue-soft); }
.workspace-app .status.blocked, .workspace-app .step-card.blocked .step-marker { color: #874504; background: #fff0db; }
.workspace-app .case-banner, .workspace-app .assistant-scope, .workspace-app .notice {
  background: #edf5fe;
  border-color: #b9d1e8;
  color: #184e79;
}
.workspace-app .notice { border-left-color: var(--blue); }
.workspace-app .notice.success { color: #1c6648; background: #ebf6ee; border-left-color: #2d8053; }
.workspace-app .notice.warning { color: #754108; background: #fff3de; border-left-color: #bd7413; }
.workspace-app .case-banner h2, .workspace-app .case-banner .eyebrow,
.workspace-app .case-progress > strong, .workspace-app .assistant-scope .ui-icon { color: #1f5179; }
.workspace-app .case-banner .muted, .workspace-app .case-progress > small { color: #47637a; }
.workspace-app .progress-track { background: #ccdeed; }
.workspace-app .progress-fill, .workspace-app .step-card.ready .step-marker { background: var(--blue); }
.workspace-app .step-card.ready .step-marker { border-color: var(--blue); color: #fff; box-shadow: 0 0 0 3px #e1effe; }
.workspace-app .step-card:not(:last-child)::before { background: var(--line); }
.workspace-app .step-marker, .workspace-app .step-content, .workspace-app .document-table th,
.workspace-app .empty-state { color: var(--muted); border-color: var(--line); background: var(--paper-2); }
.workspace-app .recovery-panel { border-left-color: #6998bd; }
.workspace-app .recovery-panel > summary::before, .workspace-app .recovery-proof summary { color: var(--blue); }
.workspace-app .field input, .workspace-app .field textarea, .workspace-app .field select,
.workspace-app .portal-xml, .workspace-app .chat-compose { background: var(--paper); border-color: var(--line-strong); }
.workspace-app .tabs { background: #e3edf6; border-color: var(--line); }
.workspace-app .tab { color: #405970; }
.workspace-app .tab.active, .workspace-app .tab[aria-selected=true] { color: var(--blue); background: var(--paper); }
.workspace-app .flow-map { background-color: #f3f8fc; background-image: radial-gradient(#c5d7e7 .7px, transparent .7px); }
.workspace-app .flow-node { background: #fff; border-color: #b7c9d8; border-radius: 6px; }
.workspace-app .flow-node.ready { border-color: var(--blue); box-shadow: 0 0 0 1px var(--blue); }
.workspace-app .flow-node:hover, .workspace-app a.module-card:hover, .workspace-app button.module-card:hover {
  background: #edf5ff;
  border-color: var(--blue);
  transform: none;
}
.workspace-app .flow-node > span:last-child, .workspace-app .flow-link, .workspace-app .flow-link b { color: #4f6b83; }
.workspace-app .profile-card.active, .workspace-app .profile-card.selected { border-color: #5186b5; box-shadow: 0 0 0 1px #bad6ec; }
.workspace-app .assistant-panel { background: #fff; border-color: var(--line); }
.workspace-app .assistant-context, .workspace-app .assistant-disclaimer { color: var(--muted); }
.workspace-app .chat-message.agent { color: #263d53; background: #f2f6fa; border-color: var(--line); }
.workspace-app .chat-message.user { color: #21496e; background: #e5f1ff; border-color: #c4d8ee; }
.workspace-app .chat-source, .workspace-app .chat-source a, .workspace-app a.chat-source {
  color: #305e84;
  border-color: var(--line);
}
.workspace-app .suggestion { background: var(--paper); color: var(--blue); border-color: #c7d7e5; }
.workspace-app .suggestion:hover { background: var(--blue-soft); border-color: #6891b4; }
.workspace-app .suggestion span { color: var(--blue); }
.workspace-app .chat-compose button { background: var(--blue); }
.workspace-app .chat-compose button:hover { background: var(--blue-hover); }
.workspace-app .toast { background: #214766; color: #fff; }
.workspace-app .toast.error { background: #903b36; }

/* Documentkop, secties en regels gebruiken dezelfde geometrie voor elk profiel. */
.workspace-app .erp-document {
  min-width: 0;
  padding: 0;
  background: var(--paper);
  border: 1px solid #c8d7e3;
  border-radius: 8px;
  box-shadow: var(--shadow);
}
.workspace-app .erp-document > * + * { margin-top: 0; }
.workspace-app .doc-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px 20px;
  padding: 20px 24px;
  background: #f3f8fe;
  border-top: 3px solid #2375bf;
  border-radius: 7px 7px 0 0;
}
.workspace-app .doc-eyebrow {
  margin: 0 0 4px;
  color: #345e82;
  font-size: 12px;
  font-weight: 600;
}
.workspace-app .doc-object-title { color: #163b5b; font-weight: 650; font-size: clamp(21px, 2vw, 29px); line-height: 1.25; }
.workspace-app .erp-document > .doc-object-title { padding: 18px 24px 0; }
.workspace-app .doc-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  background: #fff;
  border: 1px solid #a7c3db;
  border-radius: 20px;
  color: #234f77;
  font-weight: 600;
  font-size: 12px;
}
.workspace-app .doc-tools, .workspace-app .doc-anchor {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.workspace-app .doc-anchor {
  padding: 0 24px;
  gap: 16px;
  background: #f3f8fe;
  border-bottom: 1px solid #c6d6e5;
}
.workspace-app .doc-anchor :is(a,button) {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 4px 2px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: #295376;
  background: transparent;
  text-decoration: none;
  font-weight: 600;
  font-size: 13px;
}
.workspace-app .doc-anchor :is(a,button):hover,
.workspace-app .doc-anchor [aria-current]:not([aria-current=false]),
.workspace-app .doc-anchor [aria-selected=true] { color: var(--blue); border-bottom-color: var(--blue); }
.workspace-app .doc-tools { justify-content: space-between; padding: 12px 24px; border-top: 1px solid var(--line); }
.workspace-app .doc-section { min-width: 0; padding: 19px 24px; }
.workspace-app .doc-section + .doc-section { border-top: 1px solid var(--line); }
.workspace-app .doc-section > :is(h2,h3) { margin: 0 0 14px; color: var(--ink); font-size: 17px; font-weight: 650; }
.workspace-app .doc-fields {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 155px), 1fr));
  gap: 14px 24px;
  margin: 0;
}
.workspace-app .doc-fields > div { min-width: 0; }
.workspace-app .doc-fields dt, .workspace-app .doc-fields dd { margin: 0; overflow-wrap: anywhere; }
.workspace-app .doc-fields dt { color: var(--muted); font-size: 12px; font-weight: 500; }
.workspace-app .doc-fields dd { margin-top: 3px; font-size: 14px; font-weight: 600; line-height: 1.5; }
.workspace-app .doc-table-wrap { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.workspace-app .doc-lines { width: 100%; border-collapse: collapse; font-size: 13px; }
.workspace-app .doc-lines :is(th,td) {
  padding: 11px 12px;
  text-align: start;
  border-bottom: 1px solid var(--line);
  vertical-align: top;
}
.workspace-app .doc-lines th {
  background: #eef4fa;
  color: #385570;
  border-block: 1px solid #d0dfed;
  font-size: 12px;
  font-weight: 650;
  text-transform: none;
  letter-spacing: normal;
  white-space: nowrap;
}
.workspace-app .doc-lines tbody tr:nth-child(even) { background: #f8fafc; }
.workspace-app .doc-lines tbody tr:hover { background: #eff7ff; }
.workspace-app .doc-lines .num { text-align: end; white-space: nowrap; font-variant-numeric: tabular-nums; }
.workspace-app .doc-totals {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 6px 18px;
  padding: 12px;
  background: #f4f8fc;
  color: #274763;
  font-variant-numeric: tabular-nums;
}
.workspace-app .doc-totals strong { font-size: 17px; color: var(--ink); }
.workspace-app .doc-source { padding: 10px 24px; font-size: 12px; color: var(--muted); }
.workspace-app .doc-tools .doc-source { padding: 0; }

@media (min-width: 761px) {
  .workspace-app.nav-collapsed .app-layout { grid-template-columns: 64px minmax(0,1fr); }
  .workspace-app.nav-collapsed .workspace-sidebar { padding: 16px 7px; gap: 15px; }
  .workspace-app.nav-collapsed .sidebar-group + .sidebar-group { padding-top: 10px; border-top: 1px solid var(--line); }
  .workspace-app.nav-collapsed .sidebar-group a, .workspace-app.nav-collapsed .sidebar-button { min-height: 41px; padding: 10px; }
  .workspace-app.nav-collapsed .sidebar-group a .ui-icon { width: 20px; height: 20px; flex-basis: 20px; }
}
@media (max-width: 760px) {
  .workspace-app.nav-open #nav-toggle { color: var(--blue); }
  .workspace-app .workspace-body { padding-inline: 14px; }
  .workspace-app .workspace-topbar .workspace-title { font-size: 14px; }
  .workspace-app .doc-section, .workspace-app .doc-header { padding: 15px; }
  .workspace-app .doc-anchor, .workspace-app .doc-tools, .workspace-app .doc-source { padding-inline: 15px; }
  .workspace-app .doc-lines :is(th,td) { padding: 9px; }
}
@media (max-width: 540px) {
  .workspace-app .workspace-topbar { min-height: 58px; }
  .workspace-app .workspace-topbar .breadcrumb { font-size: 10px; }
  .workspace-app #role-select { width: 110px; min-width: 0; font-size: 12px; }
  .workspace-app .demo-banner { font-size: 10px; }
  .workspace-app .doc-fields { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .workspace-app .doc-anchor { gap: 10px; }
}
