@font-face {
  font-family: "Transpair Montserrat";
  src: url("/assets/fonts/transpair-montserrat-regular.woff2") format("woff2");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: "Transpair Montserrat";
  src: url("/assets/fonts/transpair-montserrat-bold.woff2") format("woff2");
  font-display: swap;
  font-style: normal;
  font-weight: 700 900;
}

:root {
  color-scheme: light;
  --brand-blue: #003a96;
  --brand-blue-soft: #e5f0fe;
  --brand-blue-soft-2: #c8e0fe;
  --brand-navy: #001d4b;
  --brand-orange: #f68712;
  --brand-orange-dark: #d46f0c;
  --brand-gray: #a4a8a8;
  --brand-charcoal: #1b1b1e;
  --ink: #1b1b1e;
  --muted: #626a73;
  --line: #d7dde5;
  --surface: #ffffff;
  --surface-soft: #f6f8fb;
  --surface-blue: #f2f7ff;
  --nav: #001d4b;
  --nav-2: #003a96;
  --blue: var(--brand-blue);
  --green: #177245;
  --amber: var(--brand-orange);
  --red: #b42318;
  --violet: #6941c6;
  --font-brand: "Transpair Montserrat", Arial, Helvetica, sans-serif;
  --shadow: 0 18px 48px rgba(0, 29, 75, .10);
  --shadow-soft: 0 10px 28px rgba(0, 29, 75, .07);
}

* {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

body {
  margin: 0;
  min-width: 320px;
  color: var(--ink);
  background: var(--surface-soft);
  font-family: var(--font-brand);
  font-size: 15px;
  line-height: 1.45;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  border: 0;
}

a {
  color: inherit;
}

.app-shell {
  min-height: 100vh;
}

.loading-screen {
  min-height: 100vh;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 14px;
  grid-template-columns: auto;
  color: var(--muted);
  text-align: center;
  padding: 36px 20px;
  overflow: hidden;
  animation: loadingScreenFade .42s ease-out both;
}

.loading-logo {
  width: min(260px, 70vw);
  height: auto;
  animation: loadingLogoFloat 2.8s ease-in-out infinite;
}

.loading-copy {
  display: grid;
  justify-items: center;
  gap: 3px;
  width: min(260px, 70vw);
}

.loading-progress {
  background: rgba(0, 58, 150, .12);
  border-radius: 999px;
  box-shadow: 0 8px 22px rgba(0, 58, 150, .12);
  height: 5px;
  margin-top: 16px;
  overflow: hidden;
  width: min(180px, 52vw);
}

.loading-progress span {
  background:
    linear-gradient(90deg, var(--brand-blue), var(--brand-orange));
  border-radius: 999px;
  display: block;
  height: 100%;
  min-width: 12px;
  transition: width .24s ease;
  width: var(--loading-progress, 8%);
}

.loading-progress-indeterminate span {
  animation: loadingProgressIndeterminate 1.35s ease-in-out infinite;
  min-width: 48%;
  width: 48%;
}

.app-progress-screen {
  inset: 0;
  min-height: 100vh;
  position: fixed;
  z-index: 10000;
}

.app-progress {
  background: rgba(0, 58, 150, .10);
  height: 4px;
  left: 0;
  opacity: 1;
  overflow: hidden;
  pointer-events: none;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 10000;
}

.app-progress span {
  background: linear-gradient(90deg, var(--brand-blue), var(--brand-orange));
  border-radius: 0 999px 999px 0;
  box-shadow: 0 0 12px rgba(243, 112, 33, .32);
  display: block;
  height: 100%;
  transition: width .22s ease;
  width: var(--app-progress-value, 0%);
}

.loading-mark,
.brand-mark {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: var(--brand-blue-soft);
  color: var(--blue);
  font-weight: 800;
}

.loading-mark {
  animation: loadingMarkPulse 1.8s ease-in-out infinite;
}

.loading-screen strong,
.loading-screen span {
  display: block;
}

@keyframes loadingScreenFade {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes loadingLogoFloat {
  0%,
  100% {
    transform: translateY(0);
    filter: drop-shadow(0 0 0 rgba(0, 58, 150, 0));
  }
  50% {
    transform: translateY(-5px);
    filter: drop-shadow(0 12px 18px rgba(0, 58, 150, .10));
  }
}

@keyframes loadingProgressIndeterminate {
  0% {
    transform: translateX(-120%);
  }
  50% {
    transform: translateX(70%);
  }
  100% {
    transform: translateX(220%);
  }
}

@keyframes loadingMarkPulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(0, 58, 150, 0);
  }
  50% {
    transform: scale(1.05);
    box-shadow: 0 10px 22px rgba(0, 58, 150, .12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .loading-screen,
  .loading-logo,
  .loading-mark,
  .button-busy-spinner,
  .form-submission-feedback,
  .loading-progress-indeterminate span {
    animation: none;
  }

  .app-progress span,
  .loading-progress span {
    transition: none;
  }
}

.layout {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 286px minmax(0, 1fr);
}

.sidebar {
  align-self: start;
  background: var(--nav);
  color: #ffffff;
  padding: 22px 18px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  height: 100vh;
  max-height: 100vh;
  overflow-y: auto;
  position: sticky;
  top: 0;
}

.brand {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.brand-logo-card {
  width: fit-content;
  max-width: 100%;
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 8px;
  background: #ffffff;
  padding: 8px 10px;
}

.sidebar .brand-logo-card {
  display: grid;
  place-items: center;
  width: 100%;
}

.brand-logo {
  display: block;
  width: min(178px, 100%);
  height: auto;
}

.public-nav .brand {
  grid-template-columns: auto minmax(0, 1fr);
}

.brand small {
  display: block;
  color: rgba(255,255,255,.72);
  margin-top: 2px;
}

.brand strong {
  color: inherit;
  font-weight: 900;
}

.mobile-nav-toggle {
  align-items: center;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 8px;
  color: #ffffff;
  cursor: pointer;
  display: none;
  font-size: 12px;
  font-weight: 900;
  gap: 9px;
  min-height: 38px;
  padding: 0 12px;
}

.mobile-nav-toggle > span:first-child {
  display: grid;
  gap: 4px;
  width: 18px;
}

.mobile-nav-toggle > span:first-child::before,
.mobile-nav-toggle > span:first-child::after,
.mobile-nav-toggle > span:first-child {
  background:
    linear-gradient(currentColor, currentColor) 0 50% / 100% 2px no-repeat;
}

.mobile-nav-toggle > span:first-child::before,
.mobile-nav-toggle > span:first-child::after {
  content: "";
  display: block;
  height: 2px;
}

.public-nav .brand small {
  color: var(--muted);
}

.public-nav .brand strong {
  color: var(--brand-navy);
}

.nav {
  display: grid;
  gap: 6px;
}

.nav-group {
  color: rgba(255,255,255,.56);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  margin: 14px 10px 4px;
  text-transform: uppercase;
}

.nav a,
.public-nav a {
  text-decoration: none;
}

.nav a {
  color: rgba(255,255,255,.86);
  border-radius: 8px;
  padding: 10px 11px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  border-left: 3px solid transparent;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}

.nav a:hover,
.nav a.active {
  background: rgba(255,255,255,.09);
  border-left-color: var(--brand-orange);
  color: #ffffff;
}

.nav-icon {
  align-items: center;
  background: rgba(255,255,255,.11);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 8px;
  color: rgba(255,255,255,.9);
  display: inline-flex;
  flex: 0 0 34px;
  height: 34px;
  justify-content: center;
  line-height: 1;
  width: 34px;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease, transform .18s ease;
}

.nav-icon svg {
  display: block;
  fill: none;
  height: 18px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.9;
  width: 18px;
}

.nav a:hover .nav-icon {
  background: rgba(255,255,255,.16);
  border-color: rgba(255,255,255,.26);
  color: #ffffff;
  transform: translateY(-1px);
}

.nav a.active .nav-icon {
  background: var(--brand-orange);
  border-color: rgba(255,255,255,.32);
  box-shadow: 0 8px 18px rgba(246,135,18,.28);
  color: #ffffff;
}

.nav-copy {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.nav-copy strong {
  font-size: 14px;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.nav-copy small {
  color: rgba(255,255,255,.62);
  font-size: 11px;
}

.nav-badge {
  background: rgba(246,135,18,.18);
  color: #ffffff;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 12px;
}

.sidebar-footer {
  margin-top: auto;
  display: grid;
  gap: 12px;
}

.language-switcher {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  display: inline-flex;
  gap: 4px;
  padding: 3px;
  width: fit-content;
}

.sidebar .language-switcher {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.14);
}

.language-option {
  align-items: center;
  background: transparent;
  border-radius: 999px;
  color: var(--muted);
  cursor: pointer;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  min-width: 36px;
  padding: 0 9px;
}

.sidebar .language-option {
  color: rgba(255,255,255,.76);
}

.language-option:hover {
  background: rgba(0,58,150,.08);
  color: var(--brand-blue);
}

.sidebar .language-option:hover {
  background: rgba(255,255,255,.12);
  color: #ffffff;
}

.language-option.active {
  background: var(--brand-orange);
  color: #ffffff;
}

.user-chip {
  border-top: 1px solid rgba(255,255,255,.12);
  padding-top: 14px;
  color: #ffffff;
}

.user-chip small {
  display: block;
  color: rgba(255,255,255,.72);
  margin-top: 3px;
}

.main {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.topbar {
  min-height: 72px;
  background: rgba(255,255,255,.95);
  border-bottom: 1px solid var(--line);
  display: grid;
  grid-template-columns: minmax(210px, .85fr) minmax(240px, 360px) minmax(260px, auto);
  align-items: center;
  gap: 16px;
  padding: 14px 28px;
  position: sticky;
  top: 0;
  z-index: 10;
  backdrop-filter: blur(10px);
}

.topbar h1 {
  margin: 0;
  font-size: 22px;
  font-weight: 800;
  color: var(--brand-navy);
}

.topbar p {
  margin: 3px 0 0;
  color: var(--muted);
}

.topbar-actions {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  min-width: 0;
}

.topbar-actions .button {
  white-space: nowrap;
}

.topbar-status {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.topbar-status span {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  padding: 6px 9px;
  white-space: nowrap;
}

.global-search {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
  position: relative;
}

.global-search input {
  background: var(--surface-soft);
  border-color: transparent;
  min-height: 40px;
}

.global-search input:focus {
  background: #ffffff;
}

.global-search-popover {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .18);
  border-radius: 8px;
  box-shadow: 0 18px 36px rgba(0, 29, 75, .16);
  display: none;
  gap: 8px;
  left: 0;
  min-width: min(520px, 86vw);
  padding: 10px;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 30;
}

.global-search:focus-within .global-search-popover {
  display: grid;
}

.global-search-results-head,
.global-search-result {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  min-width: 0;
}

.global-search-results-head {
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 900;
  padding: 2px 2px 4px;
}

.global-search-results-head span,
.global-search-empty span,
.global-search-result span {
  color: var(--muted);
  font-size: 12px;
}

.global-search-result-list {
  display: grid;
  gap: 6px;
}

.global-search-result {
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  padding: 9px 10px;
  text-decoration: none;
}

.global-search-result:hover {
  background: var(--surface-soft);
  border-color: rgba(0, 58, 150, .26);
}

.global-search-result strong,
.global-search-result span {
  overflow-wrap: anywhere;
}

.global-search-empty {
  color: var(--muted);
  display: grid;
  gap: 3px;
  font-size: 13px;
}

.global-search-submit {
  justify-self: stretch;
}

.secondary-icon {
  background: var(--brand-blue-soft);
  color: var(--brand-blue);
}

.sr-only {
  clip: rect(0, 0, 0, 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.content {
  padding: 28px;
  display: grid;
  gap: 22px;
}

.content > * {
  min-width: 0;
}

.public-shell {
  min-height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr;
}

.public-nav {
  min-height: 70px;
  background: #ffffff;
  border-bottom: 1px solid var(--line);
  padding: 14px clamp(18px, 4vw, 46px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.public-content {
  padding: clamp(22px, 4vw, 48px);
  display: grid;
  gap: 24px;
  align-content: start;
}

.hero-band {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
  overflow: hidden;
}

.hero-copy {
  padding: clamp(28px, 5vw, 56px);
  display: grid;
  align-content: center;
  gap: 18px;
}

.hero-copy h1 {
  margin: 0;
  color: var(--brand-navy);
  font-size: 35px;
  font-weight: 900;
  line-height: 1.12;
}

.hero-copy p {
  color: var(--muted);
  line-height: 1.6;
  margin: 0;
  max-width: 66ch;
}

.hero-panel {
  background: var(--surface-blue);
  border-left: 1px solid var(--line);
  padding: clamp(24px, 4vw, 42px);
  display: grid;
  align-content: center;
}

.auth-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 22px;
  box-shadow: var(--shadow-soft);
}

.driver-portal-pin-panel {
  align-self: start;
  background: #ffffff;
  border-radius: 8px;
  display: grid;
  justify-self: center;
  margin: clamp(28px, 7vh, 72px) auto 0;
  max-width: 480px;
  padding: clamp(24px, 5vw, 42px);
  width: min(100%, 480px);
}

.driver-portal-pin-form {
  align-items: center;
  display: grid;
  gap: 13px;
  justify-items: center;
  text-align: center;
}

.driver-portal-pin-form h2 {
  color: #1d1d1f;
  font-size: clamp(20px, 3vw, 23px);
  font-weight: 750;
  line-height: 1.18;
  margin: 0;
  white-space: nowrap;
}

.driver-portal-pin-intro,
.driver-portal-pin-help,
.driver-portal-pin-meta {
  color: #4c4f55;
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
  max-width: 36ch;
}

.driver-portal-pin-help {
  margin-top: 4px;
}

.driver-portal-pin-meta {
  color: var(--brand-blue);
  font-size: 12px;
}

.driver-portal-pin-code {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(6, 42px);
  justify-content: center;
  margin: 2px 0 4px;
}

.driver-portal-pin-digit {
  appearance: textfield;
  background: #ffffff;
  border: 1px solid #b6bbc3;
  border-radius: 8px;
  color: #111827;
  font-size: 24px;
  font-weight: 700;
  height: 48px;
  line-height: 1;
  padding: 0;
  text-align: center;
  transition: border-color .15s ease, box-shadow .15s ease;
  width: 42px;
}

.driver-portal-pin-digit:focus {
  border-color: #006dff;
  box-shadow: 0 0 0 3px rgba(0, 109, 255, .18);
  outline: 2px solid #006dff;
  outline-offset: 1px;
}

.driver-portal-pin-submit {
  background: transparent;
  border: 0;
  color: var(--brand-blue);
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  margin-top: 2px;
  padding: 2px 4px;
}

.driver-portal-pin-submit:hover,
.driver-portal-pin-submit:focus-visible {
  color: var(--brand-navy);
  text-decoration: underline;
}

@media (max-width: 520px) {
  .driver-portal-pin-form h2 {
    white-space: normal;
  }

  .driver-portal-pin-code {
    gap: 5px;
    grid-template-columns: repeat(6, 38px);
  }

  .driver-portal-pin-digit {
    height: 44px;
    width: 38px;
  }
}

.interface-map,
.login-stack {
  display: grid;
  gap: 16px;
}

.interface-core {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 8px;
  padding: 18px;
}

.interface-core span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.interface-core strong {
  color: var(--brand-navy);
  font-size: 30px;
  line-height: 1.35;
}

.interface-core p {
  color: var(--muted);
  line-height: 1.55;
  margin: 0;
}

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

.interface-parties span {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--brand-navy);
  font-size: 13px;
  font-weight: 800;
  min-width: 0;
  padding: 12px;
}

.interface-parties span:nth-child(3n + 2) {
  border-left: 3px solid var(--brand-blue);
}

.interface-parties span:nth-child(3n) {
  border-left: 3px solid var(--brand-orange);
}

.interface-parties span:nth-child(3n + 1) {
  border-left: 3px solid var(--brand-gray);
}

.grid {
  display: grid;
  gap: 18px;
}

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

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

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

.grid.five {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.grid.six {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.panel {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  min-width: 0;
  padding: 20px;
  box-shadow: var(--shadow-soft);
}

.panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
  min-width: 0;
}

.panel-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.panel h2,
.panel h3,
.auth-card h2 {
  margin: 0;
  font-size: 18px;
  color: var(--brand-navy);
  font-weight: 800;
}

.panel p,
.empty-state p {
  color: var(--muted);
  line-height: 1.55;
}

.panel-divider {
  border-top: 1px solid var(--line);
  margin: 18px 0;
}

.kpi {
  display: grid;
  gap: 9px;
}

.kpi span {
  color: var(--muted);
  font-size: 13px;
}

.kpi strong {
  font-size: 30px;
  color: var(--brand-blue);
}

.dashboard-command {
  align-items: center;
  background: #08244f;
  border-radius: 8px;
  color: #ffffff;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  min-width: 0;
  padding: 22px;
}

.operational-command {
  padding: 16px 20px;
}

.dashboard-command.operational-command h2 {
  font-size: 20px;
  max-width: 680px;
}

.dashboard-command.operational-command p {
  margin-top: 7px;
}

.dashboard-command h2 {
  color: #ffffff;
  font-size: 22px;
  line-height: 1.28;
  margin: 4px 0 0;
  max-width: 760px;
}

.dashboard-command p {
  color: rgba(255, 255, 255, .82);
  font-size: 13px;
  font-weight: 800;
  margin: 10px 0 0;
}

.dashboard-kicker {
  color: #ffd4a0;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dashboard-command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.dashboard-priority-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.dashboard-priority-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  border-top: 1px solid var(--line);
  display: grid;
  gap: 7px;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  min-width: 0;
  padding: 11px 12px;
}

.dashboard-priority-card.blocked,
.dashboard-priority-card.critical {
  border-left-color: var(--red);
  border-top-color: var(--red);
}

.dashboard-priority-card.attention,
.dashboard-priority-card.accounting {
  border-left-color: var(--brand-orange);
  border-top-color: var(--brand-orange);
}

.dashboard-priority-card.incoming {
  border-left-color: var(--violet);
  border-top-color: var(--violet);
}

.dashboard-priority-card.unclaimed {
  border-left-color: var(--brand-navy);
  border-top-color: var(--brand-navy);
}

.dashboard-priority-card span,
.dashboard-priority-card small {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.dashboard-priority-card span {
  color: var(--brand-navy);
  font-weight: 900;
}

.dashboard-priority-card strong {
  align-self: center;
  color: var(--brand-blue);
  font-size: 28px;
  grid-column: 2;
  grid-row: 1 / 3;
  line-height: 1;
}

.dashboard-priority-card small {
  grid-column: 1;
}

.dashboard-priority-card.blocked strong,
.dashboard-priority-card.critical strong {
  color: var(--red);
}

.dashboard-priority-card.attention strong,
.dashboard-priority-card.accounting strong {
  color: var(--brand-orange-dark);
}

.handler-dashboard-panel {
  display: grid;
  gap: 14px;
  padding: 16px;
}

.handler-dashboard-panel .panel-header {
  margin-bottom: 0;
}

.handler-metric-strip {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.handler-metric-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-top: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 12px;
}

.handler-metric-card.attention {
  border-top-color: var(--brand-orange);
}

.handler-metric-card.critical {
  border-top-color: var(--red);
}

.handler-metric-card.team {
  border-top-color: var(--green);
}

.handler-metric-card span,
.handler-metric-card small {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.handler-metric-card span {
  color: var(--brand-navy);
  font-weight: 900;
  text-transform: uppercase;
}

.handler-metric-card strong {
  color: var(--brand-blue);
  font-size: 30px;
  line-height: 1;
}

.handler-metric-card.attention strong {
  color: var(--brand-orange-dark);
}

.handler-metric-card.critical strong {
  color: var(--red);
}

.handler-metric-card.team strong {
  color: var(--green);
}

.role-dashboard-focus {
  display: grid;
  gap: 14px;
}

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

.role-dashboard-metric {
  background: #ffffff;
  border: 1px solid var(--line);
  border-top: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 12px;
}

.role-dashboard-metric.attention,
.role-dashboard-metric.accounting {
  border-top-color: var(--brand-orange);
}

.role-dashboard-metric.critical {
  border-top-color: var(--red);
}

.role-dashboard-metric.incoming {
  border-top-color: #2563eb;
}

.role-dashboard-metric.team {
  border-top-color: var(--green);
}

.role-dashboard-metric span {
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.role-dashboard-metric strong {
  color: var(--brand-blue);
  font-size: 30px;
  line-height: 1;
}

.role-dashboard-metric small,
.role-dashboard-metric span {
  overflow-wrap: anywhere;
}

.role-dashboard-metric small {
  color: var(--muted);
}

.role-dashboard-list {
  min-width: 0;
}

.handler-dashboard-layout {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .85fr);
}

.handler-focus-column,
.handler-side-section {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
}

.handler-side-column {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.handler-section-head {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 7px 10px;
  justify-content: space-between;
}

.handler-section-head strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.handler-section-head span {
  color: var(--muted);
  font-size: 12px;
}

.handler-task-list {
  display: grid;
  gap: 9px;
}

.handler-task-card {
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 10px;
}

.handler-task-card.overdue,
.handler-task-card.critical,
.handler-task-card.escalated {
  border-left-color: var(--red);
}

.handler-task-card.today,
.handler-task-card.high {
  border-left-color: var(--brand-orange);
}

.handler-task-card header,
.handler-task-card footer {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  min-width: 0;
}

.handler-task-card header > div,
.handler-task-card footer .actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.handler-task-card header > span,
.handler-task-card small,
.handler-task-card p,
.handler-task-card footer > span {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.handler-task-card h3 {
  color: var(--brand-navy);
  font-size: 14px;
  margin: 0;
  overflow-wrap: anywhere;
}

.handler-task-card p {
  margin: 0;
}

.handler-task-card .button {
  min-height: 30px;
  padding: 6px 10px;
}

.handler-team-list {
  display: grid;
  gap: 9px;
}

.handler-team-row {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 10px;
}

.handler-team-row.mine {
  background: var(--surface-blue);
  border-color: var(--brand-blue-soft-2);
}

.handler-team-row.unclaimed {
  background: #fff7ed;
  border-color: #fed7aa;
}

.handler-team-copy {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px 10px;
}

.handler-team-copy strong,
.handler-team-copy span {
  overflow-wrap: anywhere;
}

.handler-team-copy strong {
  flex: 1 1 150px;
  color: var(--brand-navy);
  font-size: 13px;
}

.handler-team-copy span {
  color: var(--muted);
  flex: 0 1 auto;
  font-size: 11px;
  font-weight: 800;
}

.handler-team-copy b {
  color: var(--brand-blue);
}

.handler-team-bar {
  background: var(--surface-soft);
  border-radius: 999px;
  height: 7px;
  overflow: hidden;
}

.handler-team-bar span {
  background: linear-gradient(90deg, var(--brand-blue), var(--green));
  display: block;
  height: 100%;
}

.dashboard-work-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 12px;
}

.dashboard-work-panel {
  align-content: start;
}

.dashboard-focus-panel {
  display: grid;
  gap: 12px;
  margin-top: 12px;
  padding: 16px;
}

.dashboard-focus-panel .panel-header {
  margin-bottom: 0;
}

.dashboard-work-table {
  display: grid;
  gap: 7px 10px;
  grid-template-columns: 130px minmax(0, 1fr) minmax(190px, .35fr) minmax(116px, max-content);
  min-width: 0;
}

.dashboard-work-table-head,
.dashboard-work-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-column: 1 / -1;
  grid-template-columns: subgrid;
  min-width: 0;
}

.dashboard-work-table-head {
  border-left: 4px solid transparent;
  border-right: 1px solid transparent;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  padding: 0 10px;
  text-transform: uppercase;
}

.dashboard-work-row {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  padding: 9px 10px;
}

.dashboard-work-row.critical,
.dashboard-work-row.overdue {
  background: #fff8f6;
  border-left-color: var(--red);
}

.dashboard-work-row.today,
.dashboard-work-row.high {
  background: #fffaf2;
  border-left-color: var(--brand-orange);
}

.dashboard-work-row.legacy-date {
  border-style: dashed;
}

.dashboard-work-row-state,
.dashboard-work-row-main,
.dashboard-work-row-meta,
.dashboard-work-row-actions {
  min-width: 0;
}

.dashboard-work-row-state,
.dashboard-work-row-meta {
  display: grid;
  gap: 5px;
}

.dashboard-work-row-state {
  justify-items: start;
}

.dashboard-work-row-title {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}

.dashboard-work-row h3 {
  color: var(--brand-navy);
  font-size: 14px;
  margin: 0;
  overflow-wrap: anywhere;
}

.dashboard-case-task-list {
  display: grid;
  gap: 5px;
  margin-top: 7px;
}

.dashboard-case-task {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-left: 3px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 6px 8px;
}

.dashboard-case-task.overdue,
.dashboard-case-task.critical {
  background: #fff8f6;
  border-left-color: var(--red);
}

.dashboard-case-task.today,
.dashboard-case-task.high {
  background: #fffaf2;
  border-left-color: var(--brand-orange);
}

.dashboard-case-task.more {
  border-left-color: var(--brand-gray);
}

.dashboard-case-task.supplemental {
  background: #f6fbff;
  border-left-color: var(--brand-blue);
  border-style: dashed;
}

.dashboard-case-task strong {
  color: var(--brand-navy);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.dashboard-case-task small {
  color: var(--muted);
  font-size: 11px;
  overflow-wrap: anywhere;
}

.dashboard-work-row-main > small,
.dashboard-work-row-meta small,
.dashboard-work-row-meta > span {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.dashboard-bundle-count,
.dashboard-date-flag,
.legacy-date-flag {
  align-items: center;
  background: #fff3e5;
  border: 1px solid rgba(246, 135, 18, .32);
  border-radius: 999px;
  color: var(--brand-orange-dark);
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.1;
  padding: 4px 7px;
  width: max-content;
}

.dashboard-date-flag,
.legacy-date-flag {
  background: #f4f6f9;
  border-color: var(--line);
  color: var(--muted);
}

.dashboard-bundle-count strong,
.dashboard-bundle-count span,
.global-search-results-head span strong {
  color: inherit;
}

.dashboard-work-row .button {
  min-height: 32px;
  padding: 7px 10px;
}

.dashboard-work-bundle {
  border-top: 1px solid var(--line);
  margin-top: 7px;
  padding-top: 7px;
}

.dashboard-work-bundle summary {
  color: var(--brand-blue);
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
}

.dashboard-work-bundle p {
  color: var(--ink);
  font-size: 13px;
  margin: 7px 0;
}

.dashboard-work-bundle ul {
  display: grid;
  gap: 5px;
  list-style: none;
  margin: 7px 0 0;
  padding: 0;
}

.dashboard-work-bundle li {
  display: grid;
  gap: 2px;
  grid-template-columns: 110px minmax(0, 1fr);
}

.dashboard-work-bundle li span,
.dashboard-work-bundle li small {
  color: var(--muted);
  font-size: 12px;
}

.dashboard-work-bundle li small {
  grid-column: 2;
}

.dashboard-work-list {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.dashboard-work-item {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 12px;
}

.dashboard-work-item.critical,
.dashboard-work-item.overdue {
  background: #fff8f6;
  border-left-color: var(--red);
}

.dashboard-work-item.today,
.dashboard-work-item.high {
  background: #fffaf2;
  border-left-color: var(--brand-orange);
}

.dashboard-work-item.escalated {
  box-shadow: 0 0 0 3px rgba(180, 35, 24, .08);
}

.dashboard-work-item header,
.dashboard-work-item header > div,
.dashboard-work-item footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.dashboard-work-item header,
.dashboard-work-item footer {
  justify-content: space-between;
}

.dashboard-work-item header > span,
.dashboard-work-item small,
.dashboard-work-item footer > span {
  color: var(--muted);
  font-size: 12px;
}

.dashboard-work-item h3 {
  color: var(--brand-navy);
  font-size: 15px;
  margin: 0;
  overflow-wrap: anywhere;
}

.dashboard-work-item .button {
  min-height: 34px;
  padding: 7px 10px;
}

.dashboard-work-details {
  border-top: 1px solid var(--line);
  padding-top: 8px;
}

.dashboard-work-details summary {
  color: var(--brand-blue);
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
}

.dashboard-work-details p {
  color: var(--ink);
  font-size: 13px;
  margin: 8px 0;
}

.dashboard-work-details dl {
  display: grid;
  gap: 6px;
  margin: 8px 0 0;
}

.dashboard-work-details dl div {
  display: grid;
  gap: 2px;
  grid-template-columns: 120px minmax(0, 1fr);
}

.dashboard-work-details dt {
  color: var(--muted);
  font-size: 12px;
}

.dashboard-work-details dd {
  color: var(--ink);
  font-size: 12px;
  margin: 0;
  overflow-wrap: anywhere;
}

.dashboard-details {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0;
}

.dashboard-details.merged {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  display: grid;
  gap: 14px;
  padding: 0;
}

.dashboard-section-title {
  align-items: flex-end;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  min-width: 0;
}

.dashboard-section-title h2 {
  color: var(--brand-navy);
  font-size: 20px;
  margin: 0;
}

.dashboard-section-title p {
  margin: 4px 0 0;
}

.dashboard-details > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  list-style: none;
  padding: 16px 18px;
}

.dashboard-details > summary::-webkit-details-marker {
  display: none;
}

.dashboard-details > summary span {
  color: var(--brand-blue);
  font-weight: 900;
}

.dashboard-details > summary small {
  color: var(--muted);
  font-size: 12px;
  text-align: right;
}

.dashboard-detail-stack {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 16px;
  padding: 16px;
}

.dashboard-detail-stack.merged {
  border-top: 0;
  padding: 0;
}

.dashboard-kpi-grid .panel {
  border-top: 3px solid var(--brand-blue);
}

.dashboard-kpi-grid .panel:nth-child(2) {
  border-top-color: var(--brand-orange);
}

.dashboard-kpi-grid .panel:nth-child(3) {
  border-top-color: var(--violet);
}

.dashboard-kpi-grid .panel:nth-child(4) {
  border-top-color: var(--green);
}

.dashboard-stage-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.dashboard-stage {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 14px;
}

.dashboard-stage span {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.dashboard-stage strong {
  color: var(--brand-navy);
}

.dashboard-stage b {
  color: var(--brand-blue);
  font-size: 28px;
  line-height: 1;
}

.dashboard-stage small {
  color: var(--muted);
}

.dashboard-stage.attention {
  background: #fff8ef;
  border-color: rgba(246,135,18,.35);
}

.dashboard-stage.warning b,
.dashboard-stage.attention b {
  color: var(--brand-orange-dark);
}

.dashboard-stage.done {
  background: #f1fbf5;
  border-color: rgba(23,114,69,.22);
}

.dashboard-stage.done b {
  color: var(--green);
}

.system-cockpit-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.system-cockpit-grid div {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px;
}

.system-cockpit-grid span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.system-cockpit-grid strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.status,
.pill {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  gap: 6px;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: normal;
}

.status.new,
.status.preparing,
.status.workshop_ordered,
.status.auftrag_versendet,
.status.abholung_terminiert,
.status.open,
.status.planned,
.status.queued {
  background: var(--brand-blue-soft);
  color: var(--brand-blue);
}

.status.estimate_submitted,
.status.kv_eingereicht,
.status.kva_correction_submitted,
.status.vorkalkulation_eingereicht,
.status.kv_angefordert,
.status.mietwagenfreigabe_angefragt,
.status.angefragt,
.status.eingereicht,
.status.frist_abgelaufen,
.status.korrektur_erforderlich,
.status.rechnung_korrektur_erforderlich,
.status.rechnung_abgelehnt,
.status.dunning,
.status.warning,
.status.paused,
.status.done_pending_acceptance,
.status.in_progress,
.status.running,
.status.review {
  background: #fff0dc;
  color: var(--brand-orange-dark);
}

.status.repair_approved,
.status.freigegeben,
.status.rechnungen_freigegeben,
.status.done {
  background: #e8f6ee;
  color: var(--green);
}

.status.estimate_rejected,
.status.kv_abgelehnt,
.status.reparatur_abgebrochen,
.status.storniert,
.status.abgelehnt,
.status.cancelled,
.status.rejected,
.status.failed {
  background: #fde8e7;
  color: var(--red);
}

.status.invoice_submitted,
.status.rechnung_eingereicht {
  background: #eee8ff;
  color: var(--violet);
}

.status.bereit,
.status.nicht_erforderlich,
.status.neutral,
.status.archived,
.status.inaktiv,
.status.deferred {
  background: var(--surface-soft);
  color: var(--muted);
}

.status.deferred_due,
.status.deferred_missing {
  background: #fff0dc;
  color: var(--brand-orange-dark);
}

.status.gesendet,
.status.test_gesendet,
.status.sent,
.status.active,
.status.aktiv {
  background: #e8f6ee;
  color: var(--green);
}

.status.fehler {
  background: #fde8e7;
  color: var(--red);
}

.pill {
  background: var(--brand-blue-soft);
  color: var(--brand-blue);
}

.progress {
  width: min(220px, 100%);
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--brand-blue-soft);
}

.progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--brand-orange);
}

.table-wrap {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
}

table {
  width: 100%;
  border-collapse: collapse;
  background: #ffffff;
}

th,
td {
  padding: 13px 14px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}

th {
  font-size: 12px;
  text-transform: uppercase;
  color: var(--muted);
  background: var(--surface-blue);
  font-weight: 800;
}

tr:last-child td {
  border-bottom: 0;
}

.partner-coverage-panel {
  display: grid;
  gap: 0;
}

.partner-coverage-layout {
  align-items: stretch;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(280px, .9fr) minmax(300px, 1.1fr);
}

.partner-coverage-map {
  background: #f7fbff;
  border: 1px solid var(--line);
  border-radius: 8px;
  min-height: 420px;
  min-width: 0;
  overflow: hidden;
  position: relative;
}

.partner-coverage-map svg {
  display: block;
  height: 100%;
  min-height: 420px;
  width: 100%;
}

.partner-coverage-map-bg {
  fill: #f7fbff;
}

.partner-coverage-outline {
  fill: #ffffff;
  stroke: var(--brand-blue-soft-2);
  stroke-width: 3;
}

.partner-coverage-area {
  fill: rgba(0, 58, 150, .12);
  stroke: rgba(0, 58, 150, .35);
  stroke-width: 1.5;
}

.partner-coverage-region-label text {
  dominant-baseline: middle;
  font-size: 15px;
  font-weight: 800;
  paint-order: stroke;
  stroke: #ffffff;
  stroke-linejoin: round;
  stroke-width: 5px;
  text-anchor: middle;
}

.partner-coverage-region-label.covered text {
  fill: var(--brand-blue);
}

.partner-coverage-region-label.gap text {
  fill: var(--brand-orange-dark);
}

.partner-coverage-marker circle:first-of-type {
  fill: rgba(246, 135, 18, .22);
  stroke: var(--brand-orange);
  stroke-width: 2;
}

.partner-coverage-marker circle:last-of-type {
  fill: var(--brand-orange);
}

.partner-coverage-marker.stored circle:first-of-type {
  fill: rgba(0, 58, 150, .18);
  stroke: var(--brand-blue);
}

.partner-coverage-marker.stored circle:last-of-type {
  fill: var(--brand-blue);
}

.partner-coverage-route-covered circle {
  fill: rgba(0, 58, 150, .24);
  stroke: var(--brand-blue);
  stroke-width: 1.4;
}

.partner-coverage-white-spot circle {
  fill: var(--brand-orange);
  stroke: #ffffff;
  stroke-width: 2;
}

.partner-coverage-white-spot text {
  fill: var(--brand-orange-dark);
  font-size: 10px;
  font-weight: 800;
  paint-order: stroke;
  stroke: #ffffff;
  stroke-linejoin: round;
  stroke-width: 4px;
  text-anchor: middle;
}

.partner-coverage-empty {
  display: grid;
  inset: 0;
  padding: 20px;
  place-items: center;
  position: absolute;
  text-align: center;
}

.partner-coverage-detail {
  align-content: start;
  display: grid;
  gap: 16px;
  min-width: 0;
}

.partner-coverage-stats {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.partner-coverage-stats div {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px;
}

.partner-coverage-stats strong {
  color: var(--brand-navy);
  font-size: 24px;
  line-height: 1.1;
}

.partner-coverage-stats span,
.partner-coverage-region span,
.partner-coverage-legend span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.partner-coverage-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
}

.partner-coverage-legend span {
  align-items: center;
  display: inline-flex;
  gap: 7px;
}

.partner-coverage-legend i {
  border-radius: 999px;
  display: inline-block;
  height: 11px;
  width: 11px;
}

.partner-coverage-legend i.stored {
  background: var(--brand-blue);
}

.partner-coverage-legend i.estimated {
  background: var(--brand-orange);
}

.partner-coverage-legend i.coverage {
  background: rgba(0, 58, 150, .24);
  border: 1px solid rgba(0, 58, 150, .45);
}

.partner-coverage-legend i.route-covered {
  background: rgba(0, 58, 150, .28);
  border: 1px solid var(--brand-blue);
}

.partner-coverage-legend i.white-spot {
  background: var(--brand-orange);
}

.partner-coverage-route-status {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 12px;
}

.partner-coverage-route-status strong {
  color: var(--brand-navy);
}

.partner-coverage-route-status span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.partner-coverage-route-status.warning {
  background: #fff8ef;
  border-color: rgba(246, 135, 18, .42);
}

.partner-coverage-white-spots {
  display: grid;
  gap: 8px;
}

.partner-coverage-white-spots ul {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.partner-coverage-white-spots li {
  background: #fff8ef;
  border: 1px solid rgba(246, 135, 18, .42);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px 12px;
}

.partner-coverage-white-spots li strong,
.partner-coverage-white-spots li span {
  overflow-wrap: anywhere;
}

.partner-coverage-white-spots li span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

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

.partner-coverage-region {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  min-width: 0;
  padding: 10px 12px;
}

.partner-coverage-region.gap {
  background: #fff8ef;
  border-color: rgba(246, 135, 18, .42);
}

.partner-coverage-region.covered {
  background: #f2fbf6;
  border-color: rgba(23, 114, 69, .28);
}

.partner-coverage-region strong,
.partner-coverage-region span {
  overflow-wrap: anywhere;
}

.partner-coverage-missing {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 8px;
  padding-top: 12px;
}

.partner-coverage-missing ul {
  display: grid;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.partner-coverage-missing li {
  display: grid;
  gap: 2px;
}

.partner-coverage-missing li span {
  color: var(--muted);
  font-size: 12px;
}

.row-link {
  color: var(--blue);
  font-weight: 700;
  text-decoration: none;
}

.damage-overview-summary {
  display: grid;
  gap: 12px;
}

.damage-overview-summary.panel,
.damage-filter-panel.panel {
  padding: 16px 18px;
}

.damage-overview-title,
.damage-filter-head {
  align-items: center;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.damage-overview-title h2 {
  font-size: 20px;
}

.damage-overview-title p,
.damage-filter-head p {
  margin-bottom: 0;
}

.damage-summary-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.damage-summary-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 5px;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  min-width: 0;
  padding: 10px 12px;
}

.damage-summary-card.attention {
  border-left-color: var(--brand-orange);
}

.damage-summary-card.critical {
  border-left-color: var(--red);
}

.damage-summary-card.done {
  border-left-color: var(--green);
}

.damage-summary-card.neutral {
  border-left-color: var(--brand-gray);
}

.damage-summary-card span,
.damage-summary-card small {
  color: var(--muted);
  font-size: 12px;
}

.damage-summary-card strong {
  align-self: center;
  color: var(--brand-navy);
  font-size: 24px;
  grid-column: 2;
  grid-row: 1 / 3;
  line-height: 1.05;
}

.damage-summary-card small {
  grid-column: 1;
}

.driver-ratings-summary {
  margin-bottom: 14px;
}

.driver-ratings-summary-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.driver-ratings-table table {
  min-width: 0;
  table-layout: fixed;
}

.driver-ratings-table th,
.driver-ratings-table td {
  overflow-wrap: anywhere;
  padding: 12px;
}

.driver-ratings-table th:nth-child(1),
.driver-ratings-table td:nth-child(1) {
  width: 12%;
}

.driver-ratings-table th:nth-child(2),
.driver-ratings-table td:nth-child(2) {
  width: 17%;
}

.driver-ratings-table th:nth-child(3),
.driver-ratings-table td:nth-child(3) {
  width: 14%;
}

.driver-ratings-table th:nth-child(4),
.driver-ratings-table td:nth-child(4) {
  width: 20%;
}

.driver-ratings-table th:nth-child(5),
.driver-ratings-table td:nth-child(5) {
  width: 13%;
}

.driver-ratings-table th:nth-child(6),
.driver-ratings-table td:nth-child(6) {
  width: 10%;
}

.driver-ratings-table th:nth-child(7),
.driver-ratings-table td:nth-child(7) {
  width: 14%;
}

.driver-ratings-table td {
  min-width: 105px;
}

.driver-ratings-table th:nth-child(7),
.driver-ratings-table td:nth-child(7) {
  min-width: 0;
}

.driver-rating-subject a {
  color: var(--brand-blue);
  font-weight: 800;
  text-decoration: none;
}

.driver-rating-pill {
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 999px;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  max-width: 190px;
  padding: 6px 9px;
  white-space: normal;
}

.driver-rating-pill.done {
  background: #f2fbf6;
  border-color: rgba(30, 125, 87, .35);
  color: var(--green);
}

.driver-rating-pill.critical {
  background: #fff5f3;
  border-color: rgba(196, 57, 44, .34);
  color: var(--red);
}

.driver-rating-pill.attention {
  background: #fff8ed;
  border-color: rgba(246, 135, 18, .34);
  color: var(--brand-orange);
}

.driver-rating-pill.neutral {
  background: var(--surface-blue);
  color: var(--brand-navy);
}

.driver-rating-score {
  color: var(--brand-navy);
}

.driver-rating-file-link {
  display: inline-flex;
  font-size: 12px;
  margin-top: 4px;
}

.driver-rating-comments {
  display: grid;
  gap: 5px;
  max-width: 340px;
}

.driver-rating-comments span {
  color: var(--text);
  font-size: 13px;
  line-height: 1.35;
}

.driver-rating-comments strong {
  color: var(--brand-navy);
}

.driver-rating-detail-row td {
  background: #ffffff;
  border-top: 0;
  padding-top: 0;
}

.driver-rating-details {
  background: linear-gradient(180deg, #ffffff 0%, var(--surface-soft) 100%);
  border: 1px solid var(--line);
  border-radius: 8px;
  margin: 0 0 14px;
  padding: 10px;
}

.driver-rating-details summary {
  color: var(--brand-blue);
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
}

.driver-rating-details summary:focus {
  outline: none;
}

.driver-rating-details summary:focus-visible {
  border-radius: 4px;
  outline: 2px solid rgba(0, 58, 150, .32);
  outline-offset: 3px;
}

.driver-rating-detail-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  margin-top: 8px;
}

.driver-rating-detail-grid section,
.driver-rating-detail-comments {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 9px;
}

.driver-rating-detail-grid section > strong,
.driver-rating-detail-comments > strong {
  color: var(--brand-navy);
  font-size: 12px;
  text-transform: uppercase;
}

.driver-rating-detail-grid span,
.driver-rating-detail-comments span {
  display: grid;
  gap: 2px;
}

.driver-rating-detail-grid small,
.driver-rating-detail-comments small {
  color: var(--muted);
  font-size: 11px;
}

.driver-rating-detail-grid b,
.driver-rating-detail-comments span {
  color: var(--text);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.driver-rating-detail-comments {
  margin-top: 8px;
}

@media (max-width: 760px) {
  .driver-rating-detail-grid {
    grid-template-columns: 1fr;
  }
}

/* 20260819-848: Kompakte Sachverstaendigensteuerung */
.expert-process-list {
  display: grid;
  gap: 8px;
}

.damage-expert-process-workspace {
  background: #fff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  padding: 14px;
}

.damage-expert-process-workspace > header {
  display: grid;
  gap: 3px;
}

.damage-expert-process-workspace > header span {
  color: var(--brand-blue);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.damage-expert-process-workspace > header h3,
.damage-expert-process-workspace > header p {
  margin: 0;
}

.damage-expert-process-workspace > header h3 {
  color: var(--brand-navy);
}

.damage-expert-process-workspace > header p {
  color: var(--muted);
}

.expert-process-list > * {
  min-width: 0;
}

.expert-process-row {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  min-width: 0;
  overflow: hidden;
}

.expert-process-row.expert-process-own {
  border-left: 4px solid var(--brand-orange);
}

.expert-process-row.expert-process-insurer {
  border-left: 4px solid #6d5bd0;
}

.expert-process-summary {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: 42px minmax(0, 1fr) auto auto;
  min-height: 68px;
  padding: 10px 12px;
}

details.expert-process-row > summary {
  cursor: pointer;
  list-style: none;
  outline: none;
}

details.expert-process-row > summary::-webkit-details-marker {
  display: none;
}

details.expert-process-row > summary:focus-visible {
  box-shadow: inset 0 0 0 2px rgba(0, 58, 150, .28);
}

details.expert-process-row[open] > summary {
  background: #f8fafd;
}

.expert-process-symbol {
  align-items: center;
  background: #fff4e8;
  border-radius: 10px;
  color: #b75b00;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  height: 38px;
  justify-content: center;
  letter-spacing: .03em;
  width: 38px;
}

.expert-process-symbol.insurer {
  background: #f0edff;
  color: #5743bd;
}

.expert-process-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.expert-process-copy strong {
  color: var(--brand-navy);
  font-size: 14px;
}

.expert-process-copy small {
  color: var(--muted);
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.expert-process-eyebrow {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.expert-process-status {
  background: #edf3f9;
  border-radius: 999px;
  color: #496079;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.2;
  max-width: 220px;
  padding: 6px 9px;
  text-align: center;
}

.expert-process-status.active {
  background: #e8f2ff;
  color: var(--brand-blue);
}

.expert-process-status.attention {
  background: #fff1df;
  color: #a64f00;
}

.expert-process-status.done {
  background: #e9f7ef;
  color: #187547;
}

.expert-process-toggle {
  color: var(--brand-blue);
  font-size: 11px;
  font-weight: 850;
  min-width: 76px;
  text-align: right;
}

.expert-process-toggle::after {
  content: "›";
  display: inline-block;
  font-size: 16px;
  margin-left: 6px;
  transform: rotate(90deg);
  transition: transform .18s ease;
  vertical-align: -1px;
}

.expert-process-row[open] .expert-process-toggle::after {
  transform: rotate(-90deg);
}

.expert-process-toggle .is-open,
.expert-process-row[open] .expert-process-toggle .is-closed {
  display: none;
}

.expert-process-row[open] .expert-process-toggle .is-open {
  display: inline;
}

.expert-process-body {
  background: #fbfcfe;
  border-top: 1px solid var(--line);
  display: grid;
  gap: 12px;
  padding: 14px;
}

.expert-status-timeline {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.expert-status-timeline span {
  color: var(--muted);
  display: grid;
  font-size: 10px;
  font-weight: 750;
  gap: 5px;
  line-height: 1.25;
  min-width: 0;
}

.expert-status-timeline i {
  background: #dbe3ed;
  border-radius: 999px;
  display: block;
  height: 4px;
}

.expert-status-timeline span.done i {
  background: var(--brand-blue);
}

.expert-status-timeline span.active {
  color: var(--brand-navy);
}

.expert-status-timeline span.active i {
  background: var(--brand-orange);
}

.expert-process-facts {
  margin: 0;
}

.expert-notification-list {
  background: #fff8e8;
  border: 1px solid rgba(214, 132, 0, .25);
  border-radius: 8px;
  display: grid;
  gap: 7px;
  padding: 10px;
}

.expert-notification-list > span {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.expert-outcome-form,
.expert-appointment-notice {
  border-top: 1px solid var(--line);
  margin-top: 12px;
  padding-top: 14px;
}

.expert-appointment-notice {
  align-items: center;
  background: #fff8e8;
  border: 1px solid rgba(214, 132, 0, .25);
  border-radius: 8px;
  display: flex;
  justify-content: space-between;
  margin-top: 0;
  padding: 10px;
}

.expert-appointment-notice > div {
  display: grid;
  gap: 2px;
}

.compact-disclosure {
  border-top: 1px solid var(--line);
  padding-top: 9px;
}

.compact-disclosure summary {
  color: var(--brand-navy);
  cursor: pointer;
  font-weight: 800;
}

.compact-disclosure p {
  border-bottom: 1px solid var(--line);
  margin: 0;
  padding: 8px 0;
}

@media (max-width: 620px) {
  .expert-process-summary {
    align-items: start;
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .expert-process-status,
  .expert-process-summary > .button,
  .expert-process-toggle {
    grid-column: 2;
    justify-self: start;
    text-align: left;
  }

  .expert-process-copy small {
    white-space: normal;
  }

  .expert-status-timeline,
  .expert-process-facts {
    grid-template-columns: 1fr;
  }

  .expert-appointment-notice {
    align-items: stretch;
    flex-direction: column;
  }
}

/* Schaden-Dashboard: verbindliches Zielbild mit einer festen Aufgaben- und Dreispaltenstruktur. */
.layout.damage-focus-layout {
  background: #fff;
  grid-template-columns: 64px minmax(0, 1fr);
}

.layout.damage-focus-layout > .damage-mini-sidebar {
  align-items: center;
  background: var(--nav);
  display: flex;
  gap: 18px;
  overflow: visible;
  padding: 12px 8px;
  width: 64px;
  z-index: 30;
}

.damage-mini-brand {
  align-items: center;
  background: #0969ed;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  flex: 0 0 38px;
  font-size: 11px;
  font-weight: 900;
  height: 38px;
  justify-content: center;
  letter-spacing: -.02em;
  text-decoration: none;
  width: 38px;
}

.damage-mini-nav {
  display: grid;
  gap: 8px;
  width: 100%;
}

.damage-mini-nav > a {
  align-items: center;
  border-left: 3px solid transparent;
  border-radius: 8px;
  color: rgba(255, 255, 255, .86);
  display: flex;
  height: 44px;
  justify-content: center;
  position: relative;
  text-decoration: none;
  width: 100%;
}

.damage-mini-nav > a:hover,
.damage-mini-nav > a:focus-visible,
.damage-mini-nav > a.active {
  background: rgba(255, 255, 255, .1);
  border-left-color: var(--brand-orange);
  color: #fff;
}

.damage-mini-nav > a.active .nav-icon {
  background: var(--brand-orange);
  border-color: rgba(255, 255, 255, .32);
  box-shadow: 0 8px 18px rgba(246, 135, 18, .28);
  color: #fff;
}

.damage-mini-nav > a::after {
  background: var(--brand-navy);
  border-radius: 6px;
  box-shadow: 0 10px 22px rgba(0, 29, 75, .18);
  color: #fff;
  content: attr(data-label);
  font-size: 11px;
  font-weight: 800;
  left: calc(100% + 9px);
  opacity: 0;
  padding: 7px 9px;
  pointer-events: none;
  position: absolute;
  transform: translateX(-4px);
  transition: opacity .16s ease, transform .16s ease;
  visibility: hidden;
  white-space: nowrap;
  z-index: 60;
}

.damage-mini-nav > a:hover::after,
.damage-mini-nav > a:focus-visible::after {
  opacity: 1;
  transform: translateX(0);
  visibility: visible;
}

.layout.damage-focus-layout .topbar {
  gap: 24px;
  grid-template-columns: minmax(360px, 1fr) minmax(300px, 430px) auto;
  min-height: 64px;
  padding: 9px 20px;
}

.damage-shell-brand {
  align-items: center;
  color: var(--brand-navy);
  display: flex;
  gap: 10px;
  min-width: 0;
  text-decoration: none;
}

.damage-shell-brand-mark {
  align-items: center;
  background: #0969ed;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  flex: 0 0 30px;
  font-size: 10px;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  letter-spacing: -.02em;
  width: 30px;
}

.damage-shell-brand > strong {
  color: #0760d5;
  font-size: 21px;
  font-weight: 900;
  letter-spacing: -.025em;
}

.damage-shell-brand > span:last-child {
  border-left: 1px solid var(--line);
  color: var(--brand-navy);
  font-size: 13px;
  font-weight: 900;
  margin-left: 20px;
  padding-left: 28px;
}

.damage-shell-notification {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--brand-navy);
  cursor: pointer;
  display: inline-flex;
  height: 36px;
  justify-content: center;
  padding: 0;
  width: 36px;
}

.damage-shell-notification svg {
  fill: none;
  height: 20px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
  width: 20px;
}

.damage-shell-user-menu {
  position: relative;
}

.damage-shell-user-menu > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 8px;
  list-style: none;
}

.damage-shell-user-menu > summary::-webkit-details-marker {
  display: none;
}

.damage-shell-user-menu > summary > span {
  align-items: center;
  background: var(--brand-navy);
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 10px;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.damage-shell-user-menu > summary > strong {
  font-size: 12px;
  white-space: nowrap;
}

.damage-shell-user-menu > summary > b {
  color: var(--muted);
  font-size: 13px;
}

.damage-shell-user-menu > div {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 16px 34px rgba(0, 34, 90, .16);
  display: grid;
  gap: 10px;
  min-width: 220px;
  padding: 12px;
  position: absolute;
  right: 0;
  top: calc(100% + 10px);
  z-index: 40;
}

.damage-shell-user-menu > div > small {
  color: var(--muted);
}

.layout.damage-focus-layout .content {
  gap: 0;
  padding: 0 18px 20px;
}

.damage-target-fixed-layout,
.damage-target-fixed-layout .damage-detail-tabs-shell,
.damage-target-fixed-layout .damage-detail-tab-content,
.damage-target-fixed-layout .damage-detail-tab-panel {
  gap: 0;
}

.damage-target-case-head {
  align-items: stretch;
  background: #fff;
  border-bottom: 1px solid var(--line);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(470px, .44fr);
  min-width: 0;
  padding: 8px 10px 10px;
}

.damage-target-case-facts {
  display: grid;
  grid-template-columns: minmax(130px, .6fr) minmax(200px, 1fr) minmax(190px, .9fr) minmax(220px, 1.05fr) minmax(270px, 1.35fr);
  min-width: 0;
}

.damage-target-case-facts > article {
  align-content: start;
  border-right: 1px solid var(--line);
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 3px 20px;
}

.damage-target-case-facts > article:first-child {
  padding-left: 0;
}

.damage-target-case-facts span,
.damage-target-case-classification dt {
  color: #50627b;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.25;
}

.damage-target-case-facts strong,
.damage-target-case-classification dd {
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
  margin: 0;
  overflow-wrap: anywhere;
}

.damage-target-case-facts small {
  color: var(--brand-navy);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.35;
}

.damage-target-case-facts small b {
  color: #a3afbf;
  margin: 0 5px;
}

.damage-target-case-classification {
  align-items: center;
  display: grid;
  gap: 6px 10px;
  grid-template-columns: minmax(0, 1fr) 120px;
  padding-left: 14px;
  position: relative;
}

.damage-target-case-classification > dl {
  display: grid;
  gap: 4px;
  margin: 0;
}

.damage-target-case-classification > dl > div {
  align-items: center;
  display: grid;
  gap: 6px;
  grid-template-columns: 18px minmax(76px, .5fr) minmax(0, 1fr);
}

.damage-target-case-classification .damage-target-icon {
  color: #3b5f91;
  height: 16px;
  width: 16px;
}

.damage-target-fpv-button {
  align-self: center;
  display: inline-flex;
  gap: 6px;
  min-height: 32px;
  padding: 5px 9px;
  white-space: nowrap;
}

.damage-target-column-head .button,
.damage-target-repair-detail > .button,
.damage-target-task-dialog .button,
.damage-target-case-classification .damage-target-fpv-button {
  background: #f5f7fa;
  border: 1px solid #dce3ec;
  border-radius: 6px;
  box-shadow: none;
  color: #365675;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  min-height: 28px;
  padding: 5px 8px;
}

.damage-target-repair-detail > .button .damage-target-icon {
  height: 14px;
  width: 14px;
}

.damage-target-fpv-popover {
  background: #fff;
  border: 1px solid rgba(0, 58, 150, .2);
  border-radius: 10px;
  box-shadow: 0 22px 54px rgba(0, 29, 75, .2);
  color: var(--ink);
  margin: auto;
  max-height: min(620px, calc(100vh - 80px));
  max-width: min(660px, calc(100vw - 32px));
  padding: 0;
  width: 620px;
}

.damage-target-fpv-popover::backdrop {
  background: rgba(0, 23, 61, .24);
}

.damage-target-fpv-popover > header {
  align-items: center;
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
}

.damage-target-fpv-popover > header > div,
.damage-target-fpv-popover article {
  display: grid;
  gap: 3px;
}

.damage-target-fpv-popover header span,
.damage-target-fpv-popover article > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.damage-target-fpv-popover header strong {
  color: var(--brand-navy);
  font-size: 17px;
}

.damage-target-fpv-list {
  display: grid;
  gap: 10px;
  padding: 14px 16px 16px;
}

.damage-target-fpv-list article {
  background: #f8fbff;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 12px;
}

.damage-target-fpv-list article > strong {
  color: var(--brand-navy);
  font-size: 14px;
}

.damage-target-fpv-list dl {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 8px 0 0;
}

.damage-target-fpv-list dl > div {
  display: grid;
  gap: 2px;
}

.damage-target-fpv-list dt {
  color: var(--muted);
  font-size: 10px;
}

.damage-target-fpv-list dd {
  font-size: 11px;
  font-weight: 800;
  margin: 0;
  overflow-wrap: anywhere;
}

.damage-target-fixed-layout .damage-detail-tabs {
  background: #fff;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  box-shadow: none;
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(5, max-content);
  justify-content: start;
  padding: 0;
  position: sticky;
  top: 64px;
  z-index: 9;
}

.damage-target-fixed-layout .damage-detail-tabs .tab {
  background: #fff;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  color: #52627a;
  min-height: 48px;
  padding: 9px 12px 7px;
}

.damage-target-fixed-layout .damage-detail-tabs .tab.active {
  border-bottom-color: #116af5;
  color: #075ed1;
}

.damage-target-fixed-layout .damage-detail-tabs .tab strong {
  align-items: center;
  display: flex;
  font-size: 12px;
  gap: 7px;
}

.damage-target-fixed-layout .damage-detail-tabs .tab small {
  display: none;
}

.damage-target-icon {
  align-items: center;
  color: #0b67e8;
  display: inline-flex;
  flex: 0 0 20px;
  height: 20px;
  justify-content: center;
  width: 20px;
}

.damage-target-icon svg {
  fill: none;
  height: 100%;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 100%;
}

.damage-target-dashboard-view {
  display: grid;
  gap: 10px;
  padding-top: 10px;
}

.damage-target-tasks {
  display: grid;
  gap: 7px;
}

.damage-target-tasks > h2 {
  color: var(--brand-navy);
  font-size: 13px;
  margin: 0;
}

.damage-target-task-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.damage-target-task-card,
.damage-target-column {
  background: #fff;
  border: 1px solid #dfe6ee;
  border-radius: 6px;
  min-width: 0;
}

.damage-target-task-card {
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-height: 140px;
  padding: 11px 13px 9px;
}

.damage-target-task-card > header {
  align-items: center;
  display: flex;
  gap: 8px;
}

.damage-target-task-card > header strong {
  color: var(--brand-navy);
  font-size: 11px;
}

.damage-target-task-table {
  align-content: start;
  display: grid;
  margin-top: 8px;
}

.damage-target-task-table-head,
.damage-target-task-row {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) minmax(108px, .58fr);
}

.damage-target-task-table-head {
  color: #69798e;
  font-size: 8px;
  padding: 0 2px 4px;
}

.damage-target-task-row {
  align-items: center;
  border-top: 1px solid #edf1f5;
  min-height: 30px;
  padding: 5px 2px;
}

.damage-target-task-row strong,
.damage-target-task-row > span {
  font-size: 9px;
  line-height: 1.3;
}

.damage-target-task-row > span {
  color: var(--brand-navy);
  font-weight: 800;
}

.damage-target-task-row > span.overdue,
.damage-target-task-row > span.today {
  color: #d91f26;
}

.damage-target-task-empty,
.damage-target-empty {
  align-content: center;
  background: #f8fafc;
  border-radius: 5px;
  color: var(--muted);
  display: grid;
  gap: 2px;
  min-height: 44px;
  padding: 8px;
}

.damage-target-task-empty strong,
.damage-target-empty strong {
  color: var(--brand-navy);
  font-size: 10px;
}

.damage-target-task-empty span,
.damage-target-empty span {
  font-size: 9px;
  line-height: 1.35;
}

.damage-target-text-action,
.damage-target-inline-link,
.damage-target-mini-action {
  background: transparent;
  border: 0;
  color: #075ed1;
  cursor: pointer;
  font: inherit;
  font-weight: 900;
  padding: 0;
  text-align: left;
  text-decoration: none;
}

.damage-target-task-card > .damage-target-text-action {
  align-self: end;
  font-size: 9px;
  margin-top: 5px;
}

.damage-target-task-dialog {
  background: #fff;
  border: 1px solid #dce3ec;
  border-radius: 12px;
  box-shadow: 0 22px 54px rgba(0, 29, 75, .2);
  color: var(--ink);
  max-height: 85vh;
  max-width: calc(100vw - 32px);
  padding: 20px;
  width: 1000px;
}

.damage-target-task-dialog::backdrop {
  background: rgba(0, 23, 61, .3);
}

.damage-target-task-dialog-head {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 16px;
}

.damage-target-task-dialog-head h2 {
  margin: 0;
}

.damage-target-task-list {
  overflow-x: auto;
}

.damage-target-task-list table {
  min-width: 650px;
  width: 100%;
}

.damage-target-task-list td > small {
  color: var(--muted);
  display: block;
  margin-top: 4px;
}

.damage-target-column .damage-target-text-action {
  font-size: 10px;
  line-height: 1.4;
}

.damage-target-cost-row > [role="cell"] > small {
  color: #67778b;
  display: block;
  margin: 3px 0;
}

[data-damage-invoice-receipt] > header {
  align-items: start;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-bottom: 16px;
}

[data-damage-invoice-receipt] > header h2 {
  margin: 0;
}

[data-invoice-receipt-candidate]:not([hidden]) {
  align-items: center;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 10px 0;
}

.damage-target-three-column {
  align-items: stretch;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(330px, .92fr) minmax(520px, 1.4fr) minmax(430px, 1.06fr);
}

.damage-target-column {
  align-content: start;
  display: grid;
  overflow: hidden;
}

.damage-target-damage-column,
.damage-target-repair-column,
.damage-target-cost-column {
  min-width: 0;
}

.damage-target-cost-column,
.damage-target-cost-block {
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}

.damage-target-column-head {
  align-items: center;
  border-bottom: 1px solid #edf1f5;
  display: flex;
  justify-content: space-between;
  min-height: 45px;
  padding: 9px 12px;
}

.damage-target-column-head > div {
  align-items: center;
  display: flex;
  gap: 8px;
}

.damage-target-column-head h2,
.damage-target-section-block h3,
.damage-target-cost-block h3,
.damage-target-related-parties h3,
.damage-target-photo-section h3 {
  color: var(--brand-navy);
  margin: 0;
}

.damage-target-column-head h2 {
  color: #0b67e8;
  font-size: 14px;
}

.damage-target-section-block,
.damage-target-cost-block,
.damage-target-related-parties,
.damage-target-photo-section {
  border-bottom: 1px solid #edf1f5;
  display: grid;
  gap: 7px;
  padding: 9px 12px;
}

.damage-target-section-block h3,
.damage-target-cost-block h3,
.damage-target-related-parties h3,
.damage-target-photo-section h3 {
  font-size: 10px;
}

.damage-target-kv-list {
  display: grid;
  gap: 0;
  margin: 0;
}

.damage-target-kv-list > div {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(132px, .95fr) minmax(0, 1.2fr);
  min-height: 28px;
  padding: 5px 0;
}

.damage-target-kv-list > div + div {
  border-top: 1px solid #edf1f5;
}

.damage-target-kv-list dt {
  color: #53657d;
  font-size: 9px;
  line-height: 1.35;
}

.damage-target-kv-list dd {
  color: var(--brand-navy);
  font-size: 9px;
  font-weight: 800;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
}

.damage-target-kv-list dd small {
  color: var(--muted);
  display: block;
  font-size: 8px;
  font-weight: 600;
  margin-top: 2px;
}

.damage-target-inline-link,
.damage-target-muted-link,
.damage-target-mini-action {
  font-size: 9px;
}

.damage-target-muted-link {
  color: var(--muted);
  font-weight: 700;
}

.damage-target-value-pill {
  background: #f1f4f8;
  border-radius: 999px;
  color: #4d5f75;
  display: inline-flex;
  font-size: 8px;
  font-weight: 900;
  line-height: 1.25;
  padding: 3px 6px;
  width: fit-content;
}

.damage-target-value-pill.positive {
  background: #e7f8ed;
  color: #168947;
}

.damage-target-value-pill.negative {
  background: #ffeded;
  color: #d1262e;
}

.damage-target-photo-section {
  border-bottom: 0;
}

.damage-target-photo-section > header {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.damage-target-photo-section .damage-target-text-action {
  font-size: 8px;
}

.damage-target-photo-strip {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.damage-target-photo-strip > a {
  aspect-ratio: 1.25;
  background: #eef2f6;
  border: 1px solid #dfe6ee;
  border-radius: 5px;
  display: block;
  overflow: hidden;
}

.damage-target-photo-strip img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.damage-target-repair-table-head,
.damage-target-repair-order > summary {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(120px, 1.2fr) minmax(90px, 1fr) minmax(74px, .68fr) minmax(78px, .72fr);
}

.damage-target-repair-table-head {
  color: #67778b;
  font-size: 8px;
  padding: 3px 8px 5px;
}

.damage-target-repair-order {
  border-top: 1px solid #edf1f5;
}

.damage-target-repair-order > summary {
  align-items: center;
  cursor: pointer;
  list-style: none;
  min-height: 34px;
  padding: 6px 8px;
}

.damage-target-repair-order > summary::-webkit-details-marker {
  display: none;
}

.damage-target-repair-order > summary > strong,
.damage-target-repair-order > summary > span {
  color: var(--brand-navy);
  font-size: 9px;
  line-height: 1.35;
}

.damage-target-repair-order > summary > strong {
  align-items: center;
  display: flex;
  gap: 6px;
}

.damage-target-chevron::before {
  color: #0b67e8;
  content: "›";
  display: inline-block;
  font-size: 14px;
  transform: rotate(0);
}

.damage-target-repair-order[open] .damage-target-chevron::before {
  transform: rotate(90deg);
}

.damage-target-repair-detail {
  background: #f8fbff;
  border-top: 1px solid #e7edf4;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 9px 10px 10px 22px;
}

.damage-target-repair-detail > dl {
  display: grid;
  gap: 6px 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
}

.damage-target-repair-detail > dl > div {
  display: grid;
  gap: 2px;
  grid-template-columns: minmax(112px, .9fr) minmax(0, 1fr);
}

.damage-target-repair-detail dt,
.damage-target-repair-detail dd {
  font-size: 8px;
  line-height: 1.4;
  margin: 0;
}

.damage-target-repair-detail dt {
  color: #586a81;
}

.damage-target-repair-detail dd {
  color: var(--brand-navy);
  font-weight: 800;
}

.damage-target-repair-detail > .button {
  align-self: end;
  display: inline-flex;
  gap: 5px;
}

.damage-target-related-parties {
  border-bottom: 0;
}

.damage-target-related-parties > div {
  align-items: center;
  border-top: 1px solid #edf1f5;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(80px, .7fr) minmax(120px, 1fr) minmax(94px, .75fr) minmax(78px, .55fr);
  min-height: 30px;
}

.damage-target-related-parties > .damage-target-inspection-row {
  grid-template-columns: minmax(110px, 1fr) minmax(0, 1.2fr) auto;
}

.damage-target-related-parties > div > strong,
.damage-target-related-parties > div > span,
.damage-target-related-parties > div > b {
  font-size: 9px;
}

.damage-target-related-parties > div > b {
  color: var(--brand-navy);
  text-align: right;
}

.damage-target-cost-table {
  display: grid;
  min-width: 0;
  overflow-x: auto;
}

.damage-target-cost-head,
.damage-target-cost-row {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(130px, 1.1fr) minmax(92px, .82fr) minmax(78px, .62fr) minmax(85px, .7fr);
}

.damage-target-debtor-table .damage-target-cost-head,
.damage-target-debtor-table .damage-target-cost-row {
  grid-template-columns: minmax(150px, 1fr) minmax(90px, .6fr) minmax(100px, .7fr);
}

.damage-target-cost-head {
  color: #67778b;
  font-size: 8px;
  padding: 4px 7px;
}

.damage-target-cost-row {
  border-top: 1px solid #edf1f5;
  min-height: 31px;
  padding: 5px 7px;
}

.damage-target-cost-row > strong,
.damage-target-cost-row > span,
.damage-target-cost-row > button {
  font-size: 9px;
  line-height: 1.35;
  min-width: 0;
}

.damage-target-cost-row > span {
  color: var(--brand-navy);
  font-weight: 800;
}

@media (max-width: 1450px) {
  .damage-target-case-head {
    grid-template-columns: 1fr;
  }

  .damage-target-case-classification {
    border-top: 1px solid var(--line);
    grid-template-columns: 1fr auto;
    margin-top: 10px;
    padding: 10px 0 0;
  }

  .damage-target-case-classification > dl {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .damage-target-case-classification > dl > div {
    grid-template-columns: 20px minmax(82px, .65fr) minmax(0, 1fr);
  }

  .damage-target-three-column {
    grid-template-columns: minmax(310px, .9fr) minmax(480px, 1.35fr) minmax(380px, 1fr);
  }
}

@media (max-width: 1180px) {
  .layout.damage-focus-layout .topbar {
    grid-template-columns: minmax(260px, 1fr) minmax(260px, 360px) auto;
  }

  .damage-shell-brand > span:last-child {
    margin-left: 8px;
    padding-left: 16px;
  }

  .damage-target-case-facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .damage-target-case-facts > article {
    border-bottom: 1px solid var(--line);
    padding: 9px 12px;
  }

  .damage-target-case-facts > article:first-child {
    padding-left: 12px;
  }

  .damage-target-task-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .damage-target-three-column {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .layout.damage-focus-layout {
    grid-template-columns: 1fr;
  }

  .layout.damage-focus-layout > .damage-mini-sidebar {
    display: none;
  }

  .layout.damage-focus-layout .topbar {
    gap: 8px;
    grid-template-columns: 1fr auto;
    padding: 8px 12px;
  }

  .layout.damage-focus-layout .topbar .global-search {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .damage-shell-brand > span:last-child,
  .damage-shell-user-menu > summary > strong {
    display: none;
  }

  .layout.damage-focus-layout .content {
    padding: 0 10px 16px;
  }

  .damage-target-case-facts,
  .damage-target-case-classification > dl,
  .damage-target-task-grid {
    grid-template-columns: 1fr;
  }

  .damage-target-case-classification {
    grid-template-columns: 1fr;
  }

  .damage-target-fixed-layout .damage-detail-tabs {
    gap: 2px;
    grid-template-columns: repeat(5, minmax(48px, 1fr));
    overflow-x: auto;
    top: 112px;
  }

  .damage-target-fixed-layout .damage-detail-tabs .tab {
    padding-inline: 6px;
  }

  .damage-target-fixed-layout .damage-detail-tabs .tab strong > span:not(.damage-target-icon) {
    display: none;
  }

  .damage-target-repair-table-head {
    display: none;
  }

  .damage-target-repair-order > summary {
    grid-template-columns: 1fr auto;
  }

  .damage-target-repair-order > summary > span:nth-of-type(n + 2) {
    display: none;
  }

  .damage-target-repair-detail,
  .damage-target-repair-detail > dl,
  .damage-target-related-parties > div {
    grid-template-columns: 1fr;
  }

  .damage-target-related-parties > .damage-target-inspection-row {
    grid-template-columns: 1fr;
  }

  .damage-target-cost-table {
    overflow-x: auto;
  }

  .damage-target-cost-head,
  .damage-target-cost-row {
    min-width: 520px;
  }
}

/* KI-Team */
.ai-team-workspace {
  display: grid;
  gap: 22px;
}

.ai-team-summary {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ai-team-summary article {
  background: linear-gradient(145deg, #fff 0%, #f5f8fc 100%);
  border: 1px solid #dce4ef;
  border-radius: 16px;
  box-shadow: 0 12px 30px rgba(31, 54, 88, 0.06);
  display: grid;
  gap: 5px;
  padding: 18px;
}

.ai-team-summary span,
.ai-team-summary small {
  color: var(--muted);
  font-size: 12px;
}

.ai-team-summary strong {
  color: var(--primary);
  font-size: 28px;
  line-height: 1;
}

.ai-team-mila-hero {
  align-items: center;
  background:
    radial-gradient(circle at 92% 12%, rgba(65, 177, 190, 0.2), transparent 24%),
    linear-gradient(135deg, #eff8fa 0%, #fff 48%, #f4f7fb 100%);
  border-color: rgba(42, 126, 145, 0.28);
  display: grid;
  gap: 20px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  overflow: hidden;
  padding: 26px;
}

.ai-team-avatar {
  align-items: center;
  background: #e6edf6;
  border: 1px solid #ccd8e8;
  border-radius: 18px;
  color: var(--primary);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 17px;
  font-weight: 800;
  height: 54px;
  justify-content: center;
  letter-spacing: 0.06em;
  width: 54px;
}

.ai-team-avatar.mila,
.ai-team-avatar.active {
  background: linear-gradient(145deg, #123e61, #2d7f91);
  border-color: transparent;
  color: #fff;
}

.ai-team-avatar.trial {
  background: #fff1cc;
  border-color: #e8cf85;
  color: #795a09;
}

.ai-team-avatar.suspended {
  background: #f5e8e8;
  color: #8b3b3b;
}

.ai-team-avatar.mila {
  border-radius: 22px;
  box-shadow: 0 14px 30px rgba(18, 62, 97, 0.22);
  font-size: 21px;
  height: 72px;
  width: 72px;
}

.ai-team-avatar.mini {
  border-radius: 12px;
  font-size: 11px;
  height: 36px;
  width: 36px;
}

.ai-team-mila-copy,
.ai-team-mila-actions,
.ai-team-agent-section {
  display: grid;
  gap: 9px;
}

.ai-team-title-line,
.ai-team-agent-head,
.ai-team-message-route,
.ai-team-request-meta,
.ai-team-message-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ai-team-title-line h2,
.ai-team-agent-head h3,
.ai-team-message-body h3,
.ai-team-request h3 {
  margin: 0;
}

.ai-team-mila-copy > p,
.ai-team-mission,
.ai-team-request p {
  color: #44566f;
  line-height: 1.55;
  margin: 0;
}

.ai-team-safety-line {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ai-team-safety-line strong {
  color: #196778;
}

.ai-team-safety-line span,
.ai-team-mila-actions span {
  color: var(--muted);
  font-size: 12px;
}

.ai-team-mila-actions {
  justify-items: end;
  min-width: 205px;
}

.ai-team-pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ai-team-pill-list span,
.ai-team-route-badge {
  background: #edf3f8;
  border: 1px solid #d7e0ec;
  border-radius: 999px;
  color: #3e5877;
  font-size: 11px;
  padding: 6px 9px;
}

.ai-team-section {
  display: grid;
  gap: 14px;
}

.ai-team-agent-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-team-agent-card {
  display: grid;
  gap: 16px;
  grid-template-rows: auto auto 1fr auto;
  padding: 20px;
}

.ai-team-agent-head {
  align-items: flex-start;
  flex-wrap: nowrap;
}

.ai-team-agent-head > div:nth-child(2) {
  min-width: 0;
}

.ai-team-agent-head .status {
  margin-left: auto;
  white-space: nowrap;
}

.status.trial,
.status.candidate {
  background: #fff3cf;
  color: #765908;
}

.status.suspended {
  background: #f6e8e8;
  color: #873b3b;
}

.ai-team-agent-section strong {
  color: #334a68;
  font-size: 12px;
}

.ai-team-agent-section ul {
  color: var(--muted);
  display: grid;
  font-size: 12px;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.ai-team-agent-card footer {
  align-items: center;
  border-top: 1px solid #e7edf4;
  color: var(--muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  gap: 8px;
  padding-top: 13px;
}

.ai-team-masterprompt-panel {
  border-color: #c9dce7;
  display: grid;
  gap: 16px;
  padding: 20px;
}

.ai-team-masterprompt-panel > .panel-header {
  align-items: flex-start;
}

.ai-team-masterprompt-grid {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-team-masterprompt {
  background: #f7fafe;
  border: 1px solid #d8e3ee;
  border-radius: 12px;
  min-width: 0;
  overflow: hidden;
}

.ai-team-masterprompt summary {
  align-items: center;
  color: #173b67;
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  list-style: none;
  padding: 13px 14px;
}

.ai-team-masterprompt summary::-webkit-details-marker {
  display: none;
}

.ai-team-masterprompt summary > span:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.ai-team-masterprompt summary small {
  color: var(--muted);
  font-size: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-team-masterprompt summary > span:last-child {
  background: #e8f1fb;
  border-radius: 999px;
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 700;
  padding: 6px 9px;
}

.ai-team-masterprompt[open] {
  border-color: #4e9fbd;
  box-shadow: 0 10px 24px rgba(13, 54, 94, 0.08);
  grid-column: 1 / -1;
}

.ai-team-masterprompt-content {
  border-top: 1px solid #d8e3ee;
  display: grid;
  gap: 10px;
  padding: 14px;
}

.ai-team-masterprompt-content > div {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

.ai-team-masterprompt-content > div span,
.ai-team-masterprompt-content > p {
  color: var(--muted);
  font-size: 11px;
}

.ai-team-masterprompt-content > p {
  margin: 0;
}

.ai-team-masterprompt pre {
  background: #071d3d;
  border: 1px solid #163b64;
  border-radius: 10px;
  color: #eef6ff;
  font: 11.5px/1.6 Consolas, "SFMono-Regular", monospace;
  margin: 0;
  max-height: 320px;
  overflow: auto;
  overflow-wrap: anywhere;
  padding: 15px;
  white-space: pre-wrap;
}

.ai-team-chat-panel {
  display: grid;
  gap: 16px;
  padding: 20px;
}

.ai-team-chat-panel > .panel-header {
  align-items: flex-start;
}

.ai-team-chat-agents {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-team-chat-agent {
  align-items: center;
  background: #f7fafe;
  border: 1px solid #d8e3ee;
  border-radius: 12px;
  color: var(--text);
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 11px;
  text-align: left;
}

.ai-team-chat-agent:hover,
.ai-team-chat-agent.active {
  background: #eef8fb;
  border-color: #3e9dbb;
  box-shadow: 0 8px 20px rgba(13, 54, 94, 0.08);
}

.ai-team-chat-agent .ai-team-avatar {
  border-radius: 10px;
  font-size: 12px;
  height: 38px;
  width: 38px;
}

.ai-team-chat-agent > span:nth-child(2) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.ai-team-chat-agent small {
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-team-chat-agent .status {
  font-size: 9px;
  white-space: nowrap;
}

.ai-team-chat-shell {
  border: 1px solid #d7e2ed;
  border-radius: 14px;
  overflow: hidden;
}

.ai-team-chat-heading {
  align-items: center;
  background: #f4f8fc;
  border-bottom: 1px solid #d7e2ed;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding: 12px 16px;
}

.ai-team-chat-heading > div {
  align-items: baseline;
  display: flex;
  gap: 6px;
}

.ai-team-chat-heading > span,
.ai-team-chat-heading > div > span {
  color: var(--muted);
  font-size: 11px;
}

.ai-team-chat-messages {
  background: #fbfdff;
  display: grid;
  gap: 10px;
  max-height: 430px;
  min-height: 220px;
  overflow-y: auto;
  padding: 18px;
}

.ai-team-chat-message {
  border-radius: 13px;
  display: grid;
  gap: 7px;
  max-width: min(760px, 84%);
  padding: 11px 13px;
}

.ai-team-chat-message.user {
  background: #123f70;
  color: #fff;
  justify-self: end;
}

.ai-team-chat-message.assistant {
  background: #eaf4f8;
  border: 1px solid #cae1e9;
  color: #163a5f;
  justify-self: start;
}

.ai-team-chat-message.pending {
  opacity: 0.68;
}

.ai-team-chat-message-head {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.ai-team-chat-message-head > span {
  background: rgba(255, 255, 255, 0.76);
  border-radius: 999px;
  color: #375573;
  font-size: 9px;
  padding: 3px 6px;
}

.ai-team-chat-message > div:not(.ai-team-chat-message-head) {
  font-size: 13px;
  line-height: 1.55;
  white-space: pre-wrap;
}

.ai-team-chat-message > small {
  color: inherit;
  font-size: 9px;
  opacity: 0.72;
}

.ai-team-chat-typing,
.ai-team-chat-error {
  border-radius: 10px;
  font-size: 12px;
  justify-self: start;
  padding: 9px 11px;
}

.ai-team-chat-typing {
  background: #edf3f8;
  color: var(--muted);
}

.ai-team-chat-error {
  background: #fff0f0;
  color: #8d3434;
}

.ai-team-chat-form {
  background: #fff;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(220px, 0.35fr) minmax(0, 1fr);
  margin: 0;
  padding: 15px;
}

.ai-team-chat-form .wide,
.ai-team-chat-submit {
  grid-column: 1 / -1;
}

.ai-team-chat-form textarea {
  min-height: 92px;
}

.ai-team-chat-submit {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.ai-team-chat-submit > span {
  color: var(--muted);
  font-size: 11px;
}

.ai-team-chat-locked {
  background: #fff8e6;
  border-top: 1px solid #ead9a9;
  color: #765908;
  padding: 16px;
}

.ai-team-chat-locked p {
  margin: 4px 0 0;
}

.ai-team-memory-panel {
  display: grid;
  gap: 16px;
  padding: 20px;
}

.ai-team-memory-panel > .panel-header {
  align-items: flex-start;
}

.ai-team-memory-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ai-team-memory-summary span {
  background: #e9f2fb;
  border-radius: 999px;
  color: #174d82;
  font-size: 10px;
  font-weight: 700;
  padding: 6px 9px;
}

.ai-team-memory-create,
.ai-team-memory-editor {
  background: #f8fbfe;
  border: 1px solid #d8e3ee;
  border-radius: 12px;
  overflow: hidden;
}

.ai-team-memory-create > summary,
.ai-team-memory-editor > summary {
  color: #173b67;
  cursor: pointer;
  font-weight: 700;
  list-style: none;
  padding: 12px 14px;
}

.ai-team-memory-create > summary::-webkit-details-marker,
.ai-team-memory-editor > summary::-webkit-details-marker {
  display: none;
}

.ai-team-memory-create > summary::before,
.ai-team-memory-editor > summary::before {
  content: "+";
  display: inline-block;
  margin-right: 8px;
}

.ai-team-memory-create[open] > summary::before,
.ai-team-memory-editor[open] > summary::before {
  content: "−";
}

.ai-team-memory-create form,
.ai-team-memory-editor form {
  border-top: 1px solid #d8e3ee;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 14px;
}

.ai-team-memory-create form .wide,
.ai-team-memory-editor form .wide {
  grid-column: 1 / -1;
}

.ai-team-memory-create textarea,
.ai-team-memory-editor textarea {
  min-height: 104px;
}

.ai-team-memory-safety {
  align-items: center;
  background: #eef7f4;
  border-left: 3px solid #2e9278;
  border-radius: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 12px;
}

.ai-team-memory-safety strong {
  color: #14644f;
  font-size: 11px;
}

.ai-team-memory-safety span {
  color: var(--muted);
  font-size: 10px;
}

.ai-team-memory-list {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ai-team-memory-list > .empty-state {
  grid-column: 1 / -1;
}

.ai-team-memory-card {
  background: #fff;
  border: 1px solid #dbe5ef;
  border-radius: 13px;
  display: grid;
  gap: 11px;
  min-width: 0;
  padding: 15px;
}

.ai-team-memory-card.pending {
  border-color: #e4cf8b;
}

.ai-team-memory-card.approved {
  border-color: #b9ddcf;
}

.ai-team-memory-card > header,
.ai-team-memory-card > header > div {
  align-items: center;
  display: flex;
  gap: 9px;
}

.ai-team-memory-card > header {
  justify-content: space-between;
}

.ai-team-memory-card > header > div > div {
  display: grid;
  gap: 2px;
}

.ai-team-memory-card > header small {
  color: var(--muted);
  font-size: 10px;
}

.ai-team-memory-card .ai-team-avatar {
  border-radius: 9px;
  font-size: 11px;
  height: 36px;
  width: 36px;
}

.ai-team-memory-card h3,
.ai-team-memory-card p {
  margin: 0;
}

.ai-team-memory-card p {
  color: #425b78;
  font-size: 12px;
  line-height: 1.55;
  white-space: pre-wrap;
}

.ai-team-memory-meta {
  color: var(--muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 9px;
  gap: 6px 12px;
}

.ai-team-memory-approval {
  align-items: center;
  background: #edf7f2;
  border-radius: 8px;
  color: #25644f;
  display: flex;
  font-size: 10px;
  gap: 6px;
  padding: 8px 10px;
}

.ai-team-memory-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ai-team-memory-actions:empty {
  display: none;
}

.ai-team-memory-editor form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ai-team-two-column {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.ai-team-handoff-panel {
  display: grid;
  gap: 18px;
}

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

.ai-team-handoff-form .wide {
  grid-column: 1 / -1;
}

.ai-team-form-note {
  background: #f5f8fb;
  border-left: 3px solid #3c8c9c;
  border-radius: 8px;
  padding: 11px 13px;
}

.ai-team-form-note span {
  color: #276c7b;
  font-size: 12px;
  font-weight: 700;
}

.ai-team-form-note p {
  color: var(--muted);
  font-size: 11px;
  margin: 3px 0 0;
}

.ai-team-hiring {
  min-width: 0;
}

.ai-team-request-list {
  display: grid;
  gap: 0;
  padding: 0;
}

.ai-team-request {
  display: grid;
  gap: 14px;
  padding: 18px;
}

.ai-team-request + .ai-team-request {
  border-top: 1px solid #e3eaf2;
}

.ai-team-request-main {
  align-items: flex-start;
  display: grid;
  gap: 13px;
  grid-template-columns: auto minmax(0, 1fr);
}

.ai-team-request-main > div:last-child {
  display: grid;
  gap: 8px;
}

.ai-team-request-meta {
  color: var(--muted);
  font-size: 11px;
}

.ai-team-request-meta span + span::before {
  content: "·";
  margin-right: 10px;
}

.ai-team-request-actions,
.ai-team-decision {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.ai-team-decision {
  color: var(--muted);
  font-size: 11px;
}

.ai-team-proposal summary {
  color: var(--primary);
  cursor: pointer;
  font-weight: 700;
}

.ai-team-proposal form {
  margin-top: 18px;
}

.ai-team-message-list {
  display: grid;
  gap: 12px;
}

.ai-team-message {
  background: #fff;
  border: 1px solid #dfe7f0;
  border-radius: 15px;
  display: grid;
  gap: 0;
  grid-template-columns: 220px minmax(0, 1fr);
  overflow: hidden;
}

.ai-team-message.result {
  border-color: rgba(45, 127, 145, 0.32);
}

.ai-team-message-route {
  align-content: start;
  align-items: center;
  background: #f5f8fb;
  padding: 16px;
}

.ai-team-message-route > div {
  display: grid;
  flex: 1;
  font-size: 12px;
}

.ai-team-message-route span,
.ai-team-message-route time {
  color: var(--muted);
  font-size: 10px;
}

.ai-team-message-route time {
  flex-basis: 100%;
  padding-left: 46px;
}

.ai-team-message-body {
  display: grid;
  gap: 9px;
  padding: 17px 19px;
}

.ai-team-message-body p {
  color: #3d5069;
  line-height: 1.55;
  margin: 0;
}

.ai-team-message-body small,
.ai-team-message-meta > span:not(.pill) {
  color: var(--muted);
  font-size: 10px;
}

.pre-wrap {
  white-space: pre-wrap;
}

@media (max-width: 1280px) {
  .ai-team-summary,
  .ai-team-agent-grid,
  .ai-team-masterprompt-grid,
  .ai-team-chat-agents,
  .ai-team-memory-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ai-team-two-column {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .ai-team-summary,
  .ai-team-agent-grid,
  .ai-team-masterprompt-grid,
  .ai-team-chat-agents,
  .ai-team-chat-form,
  .ai-team-memory-list,
  .ai-team-memory-create form,
  .ai-team-memory-editor form,
  .ai-team-handoff-form {
    grid-template-columns: 1fr;
  }

  .ai-team-mila-hero {
    align-items: start;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .ai-team-mila-actions {
    grid-column: 1 / -1;
    justify-items: stretch;
    min-width: 0;
  }

  .ai-team-message {
    grid-template-columns: 1fr;
  }

  .ai-team-message-route time {
    flex-basis: auto;
    margin-left: auto;
    padding-left: 0;
  }

  .ai-team-route-badge {
    display: none;
  }

  .ai-team-chat-agent {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .ai-team-chat-agent .status {
    grid-column: 2;
    justify-self: start;
  }

  .ai-team-chat-message {
    max-width: 94%;
  }
}

.dashboard-steering-panel {
  display: grid;
  gap: 14px;
}

.dashboard-steering-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
}

.dashboard-steering-tile {
  background: linear-gradient(145deg, #f8fbff, #eef4fa);
  border: 1px solid #dbe6f1;
  border-radius: 13px;
  color: var(--text);
  display: grid;
  gap: 4px;
  min-height: 112px;
  padding: 14px;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.dashboard-steering-tile:hover {
  border-color: #8eb8df;
  box-shadow: 0 10px 22px rgba(40, 78, 112, .12);
  transform: translateY(-1px);
}

.dashboard-steering-tile.attention {
  background: linear-gradient(145deg, #fffaf3, #fff2df);
  border-color: #efc781;
}

.dashboard-steering-tile span {
  font-size: 13px;
  font-weight: 750;
}

.dashboard-steering-tile strong {
  font-size: 30px;
  line-height: 1;
}

.dashboard-steering-tile small {
  color: var(--muted);
}

@media (max-width: 1000px) {
  .dashboard-steering-grid {
    grid-template-columns: repeat(2, minmax(150px, 1fr));
  }
}

@media (max-width: 560px) {
  .dashboard-steering-grid {
    grid-template-columns: 1fr;
  }
}

.driver-rating-action {
  white-space: nowrap;
}

.reporting-hero {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
}

.reporting-hero h2,
.reporting-block-title h2 {
  color: var(--brand-navy);
  font-size: 24px;
  margin: 3px 0 0;
}

.reporting-hero p,
.reporting-block-title p {
  margin-bottom: 0;
}

.reporting-hero-pills {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.reporting-export-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.reporting-kpi small {
  color: var(--muted);
  font-size: 12px;
}

.reporting-bars {
  display: grid;
  gap: 12px;
}

.reporting-bar-row {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(150px, 1fr) minmax(150px, 1.4fr) minmax(46px, auto);
}

.reporting-bar-label {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.reporting-bar-label strong,
.reporting-bar-value {
  color: var(--brand-navy);
}

.reporting-bar-label small {
  color: var(--muted);
  font-size: 12px;
}

.reporting-progress {
  width: 100%;
}

.reporting-section-stack,
.reporting-internal-block {
  display: grid;
  gap: 18px;
}

.reporting-block-title {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
}

.reporting-mini-kpis {
  gap: 12px;
}

.reporting-contract-panel {
  display: grid;
  gap: 14px;
}

.reporting-contract-modules {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.reporting-filter-panel .panel-header {
  align-items: center;
}

.reporting-filter-panel .field-block strong {
  color: var(--brand-navy);
  font-size: 18px;
}

.reporting-management {
  display: grid;
  gap: 16px;
}

.reporting-signal-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.reporting-signal-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--green);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 14px;
}

.reporting-signal-card.warning {
  border-left-color: var(--brand-orange);
}

.reporting-signal-card.danger {
  border-left-color: var(--red);
}

.reporting-signal-card span,
.reporting-signal-card small {
  color: var(--muted);
  font-size: 12px;
}

.reporting-signal-card strong {
  color: var(--brand-navy);
  font-size: 24px;
  line-height: 1.05;
}

.reporting-total-line {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 16px;
  padding: 12px 14px;
}

.reporting-total-line strong {
  color: var(--brand-navy);
  font-size: 18px;
}

.reporting-insight-list {
  display: grid;
  gap: 10px;
}

.reporting-insight {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--green);
  border-radius: 8px;
  padding: 12px 14px;
}

.reporting-insight.warning {
  border-left-color: var(--brand-orange);
}

.reporting-insight.danger {
  border-left-color: var(--red);
}

.reporting-insight strong {
  color: var(--brand-navy);
}

.reporting-insight p {
  color: var(--muted);
  margin: 4px 0 0;
}

.damage-filter-panel {
  display: block;
  gap: 10px;
}

.damage-filter-summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(150px, .7fr) minmax(0, 2fr) auto;
  list-style: none;
  min-width: 0;
}

.damage-filter-summary::-webkit-details-marker {
  display: none;
}

.damage-filter-summary > span:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.damage-filter-summary strong {
  color: var(--brand-navy);
}

.damage-filter-summary small {
  color: var(--muted);
  font-size: 12px;
}

.filter-chip-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.filter-chip-row > span {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.1;
  padding: 5px 8px;
}

.damage-filter-toggle {
  background: var(--brand-blue-soft);
  border-radius: 999px;
  color: var(--brand-blue);
  font-size: 12px;
  font-weight: 900;
  padding: 7px 10px;
  white-space: nowrap;
}

.damage-filter-toggle .when-open,
.damage-filter-panel[open] .damage-filter-toggle .when-closed {
  display: none;
}

.damage-filter-panel[open] .damage-filter-toggle .when-open {
  display: inline;
}

.damage-filter-body {
  border-top: 1px solid var(--line);
  margin-top: 12px;
  padding-top: 12px;
}

.damage-filter-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(220px, 1.35fr) repeat(3, minmax(130px, 1fr));
}

.damage-search-field {
  grid-column: span 2;
}

.master-vehicle-filter-panel {
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
}

.master-vehicle-filter-grid {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.master-vehicle-search-field {
  grid-column: 1 / -1;
}

.master-vehicle-filter-summary {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
}

.master-vehicle-filter-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.master-vehicle-filter-actions .button {
  white-space: nowrap;
}

.master-vehicle-bulk-delete-hint {
  flex-basis: 100%;
  text-align: right;
}

.audit-log-stack,
.audit-overview-summary {
  display: grid;
  gap: 16px;
}

.audit-filter-panel {
  display: grid;
  gap: 16px;
}

.audit-filter-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(150px, 1fr));
}

.audit-search-field {
  grid-column: span 2;
}

.audit-summary-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.audit-presence-panel {
  display: grid;
  gap: 14px;
}

.audit-presence-table table {
  min-width: 920px;
}

.audit-presence-status {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.audit-log-table table {
  min-width: 980px;
}

.audit-log-table tr.selected td {
  background: var(--brand-blue-soft);
}

.audit-time strong {
  color: var(--brand-navy);
  white-space: nowrap;
}

.audit-action-cell {
  min-width: 260px;
}

.audit-action-cell strong,
.audit-action-cell span {
  display: block;
}

.audit-action-cell span {
  color: var(--muted);
  font-size: 12px;
  margin-top: 4px;
}

.ai-protocol-stack {
  align-items: stretch;
}

.ai-protocol-detail {
  display: grid;
  gap: 16px;
}

.ai-protocol-detail details {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.ai-protocol-detail summary {
  background: var(--surface-soft);
  color: var(--brand-navy);
  cursor: pointer;
  font-weight: 800;
  padding: 12px 14px;
}

.ai-protocol-json {
  background: #0f172a;
  color: #e5f0fe;
  font-family: Consolas, "Courier New", monospace;
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
  max-height: 420px;
  overflow: auto;
  padding: 14px;
  white-space: pre-wrap;
  word-break: break-word;
}

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

.damage-list-more {
  display: flex;
  justify-content: center;
  padding: 18px 0 4px;
}

.damage-case-row {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 6px 16px rgba(0, 29, 75, .04);
  overflow: hidden;
}

.damage-case-row.active,
.damage-case-row.attention,
.damage-case-row.warning {
  box-shadow: inset 4px 0 0 var(--brand-orange), 0 6px 16px rgba(0, 29, 75, .04);
}

.damage-case-row.done {
  box-shadow: inset 4px 0 0 var(--green), 0 6px 16px rgba(0, 29, 75, .04);
}

.damage-case-row.paused {
  box-shadow: inset 4px 0 0 var(--brand-gray), 0 6px 16px rgba(0, 29, 75, .04);
}

.damage-case-row.has-new-communication {
  border-color: rgba(246, 135, 18, .42);
  box-shadow: inset 4px 0 0 var(--brand-orange), 0 8px 20px rgba(0, 29, 75, .06);
}

.damage-case-row.legacy-date {
  background: #fbfcfe;
  border-style: dashed;
}

.damage-case-link {
  align-items: center;
  color: inherit;
  display: grid;
  gap: 10px 14px;
  grid-template-columns: minmax(132px, .58fr) minmax(220px, 1.12fr) minmax(180px, .9fr) minmax(210px, 1fr) minmax(142px, .68fr);
  padding: 12px 14px;
  text-decoration: none;
}

.damage-case-link:hover {
  background: var(--surface-blue);
}

.damage-case-id,
.damage-case-subject,
.damage-case-insurance,
.damage-case-next,
.damage-case-state {
  min-width: 0;
}

.damage-case-id,
.damage-case-insurance,
.damage-case-next,
.damage-case-state {
  display: grid;
  gap: 4px;
}

.damage-case-id span,
.damage-case-insurance span,
.damage-case-next span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.damage-case-id strong {
  color: var(--brand-blue);
  font-size: 16px;
}

.new-communication-badge {
  align-items: center;
  background: #fff0dc;
  border: 1px solid rgba(246, 135, 18, .38);
  border-radius: 999px;
  color: var(--brand-orange-dark);
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  gap: 4px;
  line-height: 1.1;
  padding: 4px 7px;
  white-space: nowrap;
}

.new-communication-badge b {
  color: inherit;
  font-size: inherit;
}

.damage-case-subject {
  display: grid;
  gap: 4px;
}

.damage-case-subject strong,
.damage-case-insurance strong,
.damage-case-next strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.damage-case-subject span,
.damage-case-subject small,
.damage-case-insurance small,
.damage-case-next small,
.damage-order-note {
  color: var(--muted);
  font-size: 11px;
  overflow-wrap: anywhere;
}

.damage-case-insurance small,
.damage-case-next small,
.related-damage-link small {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.damage-case-state {
  justify-items: start;
}

.compact-damage-list .damage-case-link {
  align-items: start;
  gap: 10px 14px;
  grid-template-columns: minmax(140px, .75fr) minmax(0, 1fr);
}

.compact-damage-list .damage-case-insurance,
.compact-damage-list .damage-case-next,
.compact-damage-list .damage-case-state {
  grid-column: 2;
}

.compact-damage-list .damage-case-state {
  align-items: start;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.damage-action-chip {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  padding: 5px 9px;
}

.damage-action-chip.active,
.damage-action-chip.attention,
.damage-action-chip.warning,
.damage-action-chip.new {
  background: #fff0dc;
  border-color: rgba(246, 135, 18, .35);
  color: var(--brand-orange-dark);
}

.damage-action-chip.done {
  background: #e8f6ee;
  border-color: rgba(23, 114, 69, .25);
  color: var(--green);
}

.damage-action-chip.paused {
  background: var(--surface-soft);
  border-color: var(--line);
  color: var(--muted);
}

.locked-field {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 12px;
}

.locked-field span,
.locked-field small {
  color: var(--muted);
  font-size: 12px;
}

.locked-field strong {
  color: var(--brand-navy);
}

.link-button {
  appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  font: inherit;
  cursor: pointer;
  text-align: left;
}

.muted {
  color: var(--muted);
}

.fine {
  font-size: 12px;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.portal-communication-copy {
  max-width: 1120px;
}

.portal-communication-copy p {
  margin: 8px 0 0;
}

.portal-communication-copy .portal-communication-warning {
  color: var(--brand-navy);
}

.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.customer-document-list {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.customer-document-item {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.customer-document-item .button {
  font-size: 12px;
  min-height: 30px;
  padding: 6px 9px;
}

.button,
.icon-button {
  min-height: 39px;
  border-radius: 8px;
  padding: 10px 14px;
  background: var(--brand-orange);
  color: white;
  font-weight: 800;
  cursor: pointer;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  line-height: 1.1;
}

.button:hover,
.icon-button:hover {
  filter: brightness(.96);
}

.button:disabled,
.icon-button:disabled {
  cursor: not-allowed;
  filter: grayscale(.3);
  opacity: .55;
}

.button[aria-busy="true"],
.icon-button[aria-busy="true"],
[data-interaction-busy="true"] {
  cursor: progress;
}

.button.is-submitting,
.icon-button.is-submitting {
  filter: none;
  opacity: .9;
}

.button-busy-spinner {
  animation: buttonBusySpin .72s linear infinite;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  display: inline-block;
  flex: 0 0 auto;
  height: 15px;
  width: 15px;
}

.form-submission-feedback {
  align-items: center;
  animation: formSubmissionFeedbackIn .16s ease-out both;
  background: #ffffff;
  border: 1px solid rgba(47, 99, 167, .22);
  border-radius: 999px;
  box-shadow: 0 12px 30px rgba(23, 48, 84, .2);
  color: var(--brand-blue);
  display: flex;
  gap: 9px;
  left: 50%;
  max-width: calc(100vw - 32px);
  padding: 10px 16px;
  pointer-events: none;
  position: fixed;
  top: 18px;
  transform: translateX(-50%);
  z-index: 10002;
}

.form-submission-feedback .button-busy-spinner {
  color: var(--brand-orange);
}

@keyframes buttonBusySpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes formSubmissionFeedbackIn {
  from {
    opacity: 0;
    transform: translate(-50%, -6px);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}

a[aria-disabled="true"] {
  pointer-events: none;
}

.button.secondary {
  background: var(--brand-blue-soft);
  color: var(--brand-blue);
}

.button.light {
  background: #ffffff;
  color: var(--brand-blue);
}

.button.ghost-light {
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .38);
  color: #ffffff;
}

.button.success {
  background: var(--green);
}

.button.warning {
  background: var(--brand-orange);
}

.button.danger {
  background: var(--red);
}

.button.ghost {
  background: transparent;
  color: var(--blue);
  border: 1px solid var(--line);
}

.icon-button {
  width: 39px;
  padding: 0;
}

form {
  display: grid;
  gap: 16px;
}

form > * {
  min-width: 0;
}

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

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

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

.form-grid .full-row {
  grid-column: 1 / -1;
}

.settings-fieldset {
  background: #f8fbff;
}

.settings-fieldset-head {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.settings-fieldset-head strong {
  color: var(--brand-navy);
}

.settings-fieldset-head .fine {
  margin: 4px 0 0;
}

.switch-field {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: auto minmax(0, 1fr);
  margin: 0;
}

.switch-field input[type="hidden"] {
  display: none;
}

.system-policy-note {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 12px;
}

.system-policy-note input[type="hidden"] {
  display: none;
}

.system-policy-note strong {
  color: var(--brand-navy);
}

.system-policy-note p {
  color: var(--muted);
  font-size: 13px;
  margin: 0;
}

.switch-input {
  height: 1px;
  opacity: 0;
  position: absolute;
  width: 1px;
}

.switch-track {
  background: #a8b5c7;
  border-radius: 999px;
  box-shadow: inset 0 0 0 1px rgba(0, 29, 75, .12);
  display: inline-flex;
  height: 28px;
  position: relative;
  transition: background .18s ease, box-shadow .18s ease;
  width: 52px;
}

.switch-track::after {
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 0 2px 7px rgba(0, 29, 75, .2);
  content: "";
  height: 22px;
  left: 3px;
  position: absolute;
  top: 3px;
  transition: transform .18s ease;
  width: 22px;
}

.switch-input:checked + .switch-track {
  background: var(--brand-blue);
  box-shadow: inset 0 0 0 1px rgba(0, 89, 179, .3);
}

.switch-input:checked + .switch-track::after {
  transform: translateX(24px);
}

.switch-input:focus-visible + .switch-track {
  outline: 3px solid rgba(246, 135, 18, .35);
  outline-offset: 3px;
}

.switch-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.switch-copy small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}

label {
  display: grid;
  gap: 6px;
  color: var(--brand-navy);
  font-weight: 650;
  min-width: 0;
}

.required-marker {
  width: fit-content;
  border-radius: 999px;
  background: #fff0dc;
  color: var(--brand-orange-dark);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  padding: 3px 8px;
}

.inline-check .required-marker {
  flex: 0 0 auto;
}

.field-block {
  color: var(--brand-navy);
  display: grid;
  gap: 6px;
  font-weight: 650;
}

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

.quick-master-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  margin-top: 8px;
  padding: 12px;
}

input,
select,
textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: white;
  color: var(--ink);
  padding: 10px 11px;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--brand-blue);
  box-shadow: 0 0 0 3px rgba(0, 58, 150, .12);
  outline: none;
}

textarea {
  min-height: 112px;
  resize: vertical;
}

select[multiple] {
  min-height: 144px;
  padding: 6px;
}

select[multiple] option {
  border-radius: 6px;
  padding: 7px 8px;
}

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

.chatagent-panel {
  display: grid;
  gap: 16px;
  grid-template-rows: auto minmax(360px, 1fr) auto;
  min-height: calc(100vh - 134px);
}

.chatagent-messages {
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-height: calc(100vh - 330px);
  min-height: 360px;
  overflow-y: auto;
  padding: 14px;
}

.chatagent-message {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  max-width: min(760px, 92%);
  padding: 12px 14px;
}

.chatagent-message strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.chatagent-message div {
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.chatagent-action-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  white-space: normal;
}

.chatagent-action-list .button {
  min-height: 34px;
  padding: 8px 10px;
}

.chatagent-message.user {
  align-self: flex-end;
  background: var(--brand-blue);
  border-color: var(--brand-blue);
  color: #ffffff;
}

.chatagent-message.user strong {
  color: #ffffff;
}

.chatagent-empty,
.chatagent-typing {
  background: #ffffff;
  border: 1px dashed var(--line);
  border-radius: 8px;
  color: var(--muted);
  padding: 16px;
}

.chatagent-empty strong {
  color: var(--brand-navy);
  display: block;
  margin-bottom: 6px;
}

.chatagent-empty p,
.chatagent-status p {
  margin: 0;
}

.chatagent-form {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.chatagent-form textarea {
  max-height: 180px;
  min-height: 74px;
}

.chatagent-side {
  display: grid;
  gap: 18px;
}

.chatagent-side h3 {
  margin-bottom: 10px;
}

.chatagent-status {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.chatagent-status.ok {
  background: #ecfdf3;
  border-color: #b7e4c7;
}

.chatagent-status.checking {
  background: var(--surface-blue);
  border-color: var(--brand-blue-soft-2);
}

.chatagent-status.error {
  background: #fff3f0;
  border-color: #f7c8c2;
}

.chatagent-status span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.chatagent-status strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.chatagent-status small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

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

.chatagent-prompt-list .button {
  justify-content: flex-start;
  text-align: left;
  width: 100%;
}

.chatagent-floating {
  bottom: 24px;
  display: grid;
  gap: 12px;
  justify-items: end;
  pointer-events: none;
  position: fixed;
  right: 24px;
  z-index: 80;
}

.chatagent-floating > * {
  pointer-events: auto;
}

.chatagent-launchers {
  display: flex;
  align-items: center;
  gap: 8px;
}

.feedback-screenshot-button {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: var(--surface);
  color: var(--brand-blue);
  box-shadow: 0 4px 16px rgba(0, 29, 75, .14);
  cursor: pointer;
}

.feedback-screenshot-button:hover { background: var(--surface-soft, #f1f5f9); }
.feedback-screenshot-button:focus-visible { outline: 3px solid var(--brand-orange); outline-offset: 3px; }
.feedback-screenshot-button svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linejoin: round; }
.feedback-screenshot-form { display: grid; gap: 14px; }
.modal:has(> .feedback-screenshot-form) { width: min(800px, 100%); }
.modal:has(> .feedback-screenshot-form) > header { align-items: flex-start; gap: 12px; margin-bottom: 16px; }
.modal:has(> .feedback-screenshot-form) > header > div { min-width: 0; }
.modal:has(> .feedback-screenshot-form) > header h2 { font-size: 20px; margin: 0; }
.modal:has(> .feedback-screenshot-form) > header p { font-size: 13px; margin: 8px 0 0; }
.modal:has(> .feedback-screenshot-form) > header > button { flex: 0 0 36px; padding: 6px; min-height: 36px; }
.feedback-screenshot-preview { width: 100%; max-height: 30vh; object-fit: contain; border: 1px solid var(--line); border-radius: 6px; background: #f5f7fa; }
.feedback-screenshot-link { display: grid; gap: 6px; margin: 12px 0; font-size: 12px; }
.feedback-screenshot-link img { max-width: 100%; width: 280px; max-height: 180px; object-fit: contain; object-position: left; border: 1px solid var(--line); border-radius: 6px; }

.chatagent-fab {
  align-items: center;
  background: var(--brand-orange);
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 999px;
  box-shadow: 0 16px 38px rgba(0, 29, 75, .24);
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  gap: 10px;
  min-height: 54px;
  max-width: min(330px, calc(100vw - 32px));
  padding: 10px 18px;
}

.chatagent-fab span {
  background: rgba(255,255,255,.18);
  border-radius: 999px;
  display: grid;
  font-weight: 900;
  height: 34px;
  place-items: center;
  width: 42px;
}

.chatagent-fab small {
  font-weight: 800;
  max-width: 210px;
  overflow: hidden;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chatagent-floating:not(.open) .chatagent-fab {
  justify-content: center;
  min-height: 46px;
  max-width: 54px;
  padding: 0 8px;
  width: 54px;
}

.chatagent-floating:not(.open) .chatagent-fab span {
  height: 38px;
  width: 38px;
}

.chatagent-floating:not(.open) .chatagent-fab small {
  display: none;
}

.app-shell:has(.case-process-area) .chatagent-floating:not(.open) .chatagent-fab {
  min-height: 50px;
  padding: 8px;
}

.app-shell:has(.case-process-area) .chatagent-floating:not(.open) .chatagent-fab small {
  display: none;
}

@media (min-width: 721px) {
  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) {
    bottom: auto;
    right: 8px;
    top: 92px;
  }

  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) .chatagent-fab {
    box-shadow: 0 10px 24px rgba(0, 29, 75, .18);
    justify-content: center;
    min-height: 38px;
    max-width: 38px;
    opacity: .9;
    padding: 0;
    width: 38px;
  }

  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) .chatagent-fab:hover,
  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) .chatagent-fab:focus-visible {
    opacity: 1;
  }

  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) .chatagent-fab span {
    background: transparent;
    font-size: 10px;
    height: 32px;
    width: 32px;
  }
}

.chatagent-fab.ok {
  background: var(--green);
}

.chatagent-fab.checking {
  background: var(--brand-blue);
}

.chatagent-window {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 24px 70px rgba(0, 29, 75, .24);
  display: grid;
  grid-template-rows: auto minmax(220px, 1fr) auto auto;
  max-height: min(680px, calc(100vh - 112px));
  min-width: 0;
  overflow: hidden;
  width: min(430px, calc(100vw - 32px));
}

.chatagent-window header {
  align-items: center;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 14px;
}

.chatagent-window header strong {
  color: var(--brand-navy);
  display: block;
  font-weight: 900;
}

.chatagent-window header small {
  color: var(--muted);
  display: block;
  margin-top: 2px;
}

.chatagent-window-messages {
  background: #f8fafc;
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-height: min(410px, calc(100vh - 330px));
  min-height: 240px;
  overflow-y: auto;
  padding: 12px;
}

.chatagent-window-messages .chatagent-message {
  max-width: 100%;
  padding: 11px 12px;
}

.chatagent-window-form {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 12px;
}

.chatagent-window-form textarea {
  max-height: 140px;
  min-height: 52px;
}

.chatagent-window-tools {
  border-top: 1px solid var(--line);
  display: flex;
  gap: 8px;
  justify-content: space-between;
  padding: 10px 12px 12px;
}

.chatagent-window-tools .button {
  min-height: 34px;
  padding: 8px 10px;
}

.accounting-view-tabs {
  display: flex;
  gap: 6px;
  border-bottom: 1px solid var(--line);
}

.accounting-view-tabs button {
  background: transparent;
  border: 0;
  border-bottom: 3px solid transparent;
  color: var(--muted);
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  padding: 14px 18px;
}

.accounting-view-tabs button[aria-selected="true"] {
  border-bottom-color: var(--brand-blue);
  color: var(--brand-blue);
  background: var(--surface-blue);
}

.accounting-view-tabs button:focus-visible {
  outline: 2px solid var(--brand-blue);
  outline-offset: -2px;
}

#accounting-view-panel,
.accounting-damage-list {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.accounting-damage-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  min-width: 0;
}

.accounting-damage-summary {
  display: grid;
  grid-template-columns: minmax(180px, 2fr) repeat(4, minmax(80px, 1fr)) auto;
  align-items: center;
  gap: 16px;
  padding: 18px;
  background: var(--surface-blue);
  border-radius: 8px 8px 0 0;
}

.accounting-party-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px;
}

.accounting-party-overview h3 {
  font-size: 15px;
  margin: 0 0 12px;
}

.accounting-party-table {
  min-width: 0;
  width: 100%;
  table-layout: fixed;
  font-size: 13px;
}

.accounting-party-table th,
.accounting-party-table td {
  padding: 10px 7px;
  text-align: right;
  overflow-wrap: anywhere;
  font-variant-numeric: tabular-nums;
}

.accounting-party-table th:first-child,
.accounting-party-table td:first-child {
  width: 37%;
  text-align: left;
}

.accounting-party-name > strong,
.accounting-party-name > span,
.accounting-party-name > small {
  display: block;
}

.accounting-party-name > span,
.accounting-party-name > small {
  color: var(--muted);
  font-size: 12px;
  margin-top: 4px;
  overflow-wrap: anywhere;
}

.accounting-party-open {
  font-weight: 800;
  color: var(--green);
}

.accounting-party-mobile-label {
  display: none;
}

.accounting-party-open.is-outstanding,
.accounting-party-unresolved {
  color: #a14800;
}

.accounting-party-payments {
  min-width: 0;
  border-left: 1px solid var(--line);
  padding-left: 20px;
}

.accounting-party-payments ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.accounting-party-payments li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}

.accounting-party-payments li > strong {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.accounting-party-note {
  grid-column: 1 / -1;
  margin: 0;
}

.accounting-damage-identity,
.accounting-damage-metric {
  display: grid;
  gap: 5px;
  min-width: 0;
  overflow-wrap: anywhere;
}

.accounting-damage-identity > span,
.accounting-damage-metric small {
  color: var(--muted);
  font-size: 12px;
}

.accounting-damage-identity > strong,
.accounting-damage-metric > strong {
  color: var(--brand-navy);
  font-variant-numeric: tabular-nums;
}

.accounting-damage-content {
  padding: 18px;
  min-width: 0;
  border-top: 1px solid var(--line);
}

.accounting-damage-summary > .status {
  max-width: 160px;
  white-space: normal;
}

@media (max-width: 1100px) {
  .accounting-damage-summary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .accounting-party-overview {
    grid-template-columns: minmax(0, 1fr);
  }

  .accounting-party-payments {
    border-left: 0;
    padding-left: 0;
  }

  .accounting-damage-identity {
    grid-column: 1 / -1;
  }
}

@media (max-width: 600px) {
  .accounting-view-tabs button {
    flex: 1;
    padding: 12px 8px;
  }

  .accounting-damage-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .accounting-damage-content {
    padding: 12px;
  }

  .accounting-party-overview {
    padding: 12px;
  }

  .accounting-party-table thead {
    display: none;
  }

  .accounting-party-table tbody,
  .accounting-party-table tr {
    display: grid;
  }

  .accounting-party-table tr {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 8px 0;
    border-bottom: 1px solid var(--line);
  }

  .accounting-party-table td,
  .accounting-party-table td:first-child {
    display: block;
    width: auto;
    text-align: left;
    padding: 5px;
    border: 0;
  }

  .accounting-party-table td:first-child {
    grid-column: 1 / -1;
  }

  .accounting-party-table .accounting-party-mobile-label {
    display: block;
    color: var(--muted);
    font-size: 11px;
    font-weight: 400;
    margin-bottom: 5px;
  }
}


/* Claim overview: one context header and compact, always-visible invoice rows. */
.modal:has(> .accounting-claim-overview) > header { align-items: center; margin-bottom: 12px; }
.modal:has(> .accounting-claim-overview) > header h2 { margin: 0; font-size: 20px; }
.accounting-claim-invoice .settlement-documents a.code-link { display: inline-flex; width: auto; padding: 4px 10px; min-height: 28px; margin: 0; }
.accounting-claim-overview .accounting-damage-summary {
  grid-template-columns: minmax(240px, 2fr) repeat(3, minmax(105px, 1fr)) auto;
  padding: 12px 14px;
  gap: 12px;
}
.accounting-claim-overview .accounting-party-overview { padding: 12px 14px; gap: 12px; }
.accounting-claim-overview .accounting-party-overview h3 { margin-bottom: 7px; font-size: 14px; }
.accounting-claim-overview .accounting-party-overview p { margin: 5px 0; }
.accounting-claim-overview .accounting-party-table th,
.accounting-claim-overview .accounting-party-table td { padding: 7px; }
.accounting-claim-overview .accounting-party-payments { padding-left: 12px; }
.accounting-claim-overview .accounting-party-payments li { padding: 6px 0; }
.accounting-claim-overview .accounting-damage-content { padding: 12px 14px; }
.accounting-claim-documents-heading,
.accounting-claim-documents-heading > div { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; }
.accounting-claim-documents-heading { justify-content: space-between; margin-bottom: 8px; }
.accounting-claim-documents-heading h3 { margin: 0; font-size: 14px; color: var(--brand-blue); }
.accounting-claim-documents-heading > div { font-size: 12px; color: var(--muted); }
.accounting-claim-documents-heading strong { color: var(--brand-navy); }
.accounting-claim-invoice { border: 1px solid var(--line); border-radius: 6px; padding: 10px 12px; margin-top: 10px; min-width: 0; }
.accounting-claim-invoice-main { display: grid; grid-template-columns: 1.25fr 1.6fr .7fr .7fr 1fr auto; align-items: center; gap: 12px; font-size: 13px; }
.accounting-claim-invoice-main > div { min-width: 0; overflow-wrap: anywhere; }
.accounting-claim-invoice-main small { display: block; color: var(--muted); font-size: 11px; margin: 3px 0; }
.accounting-claim-amount { font-variant-numeric: tabular-nums; white-space: nowrap; }
.accounting-claim-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 9px 0 0; }
.accounting-claim-actions .button { min-height: 32px; padding: 7px 11px; font-size: 12px; }
.accounting-claim-overview .accounting-claim-invoice .accounting-pdf-link { display: inline-flex; margin: 0; }
.accounting-claim-overview .accounting-claim-invoice .settlement-documents { display: block; border: 0; background: transparent; padding: 0; margin: 8px 0 0; }
.accounting-claim-invoice .settlement-documents > strong { display: block; font-size: 12px; margin-bottom: 5px; }
.accounting-claim-invoice .table-wrap { margin-top: 8px; }
.accounting-claim-invoice table { width: 100%; table-layout: auto; }
.accounting-claim-overview .accounting-claim-invoice table th,
.accounting-claim-overview .accounting-claim-invoice table td { padding: 6px 8px; vertical-align: top; }
.accounting-claim-overview .accounting-claim-invoice table th { font-size: 11px; }
.accounting-claim-overview .accounting-claim-invoice table td { font-size: 12px; }
.accounting-claim-positions th:first-child { width: 40%; }
.accounting-claim-positions td:not(:first-child) { white-space: nowrap; }
.accounting-claim-positions small { display: block; color: var(--muted); font-size: 11px; }
.accounting-claim-history { display: flex; flex-wrap: wrap; gap: 5px 14px; font-size: 12px; padding-top: 8px; overflow-wrap: anywhere; }
.accounting-claim-invoice .accounting-note { margin: 8px 0; padding: 8px; font-size: 12px; }
@media (min-width: 901px) {
  .accounting-claim-overview .accounting-damage-identity { grid-column: auto; }
  .accounting-claim-overview .accounting-party-overview { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); }
  .accounting-claim-overview .accounting-party-payments { border-left: 1px solid var(--line); }
}
@media (max-width: 900px) {
  .accounting-claim-overview .accounting-damage-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .accounting-claim-overview .accounting-damage-identity { grid-column: 1 / -1; }
  .accounting-claim-overview .accounting-party-payments { padding-left: 0; }
  .accounting-claim-invoice-main { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .accounting-claim-invoice-main > div:first-child,
  .accounting-claim-invoice-main > div:nth-child(2) { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
  .accounting-claim-overview .accounting-damage-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .accounting-claim-invoice-main { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .accounting-claim-actions .button { min-height: 44px; }
  .accounting-claim-positions table { min-width: 560px; }
  .accounting-claim-invoice .settlement-documents table { min-width: 480px; }
}

.accounting-filter-panel .panel-header {
  align-items: center;
}

.accounting-cockpit {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.accounting-kpi {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 7px;
  padding: 17px;
}

.accounting-kpi span,
.accounting-kpi small,
.accounting-aging-item span,
.accounting-aging-item small {
  color: var(--muted);
  font-size: 12px;
}

.accounting-kpi strong {
  color: var(--brand-navy);
  font-size: 27px;
  line-height: 1.1;
}

.accounting-kpi.success {
  border-left-color: var(--green);
}

.accounting-kpi.warning {
  border-left-color: var(--brand-orange);
}

.accounting-kpi.danger {
  border-left-color: var(--red);
}

.accounting-ledger-panel {
  display: grid;
  gap: 16px;
}

.accounting-ledger-panel .panel-header {
  margin-bottom: 0;
}

.accounting-ledger-summary {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 14px;
  padding-top: 16px;
}

.accounting-ledger-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.accounting-aging {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.accounting-aging-item {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.accounting-aging-item strong {
  color: var(--brand-navy);
  font-size: 18px;
}

.accounting-aging-item.late,
.accounting-aging-item.critical {
  background: #fff6f4;
  border-color: rgba(180, 35, 24, .22);
}

.accounting-table {
  min-width: 0;
  table-layout: fixed;
}

.accounting-table th:nth-child(1),
.accounting-table td:nth-child(1) {
  width: 16%;
}

.accounting-table th:nth-child(2),
.accounting-table td:nth-child(2) {
  width: 23%;
}

.accounting-table th:nth-child(3),
.accounting-table td:nth-child(3) {
  width: 13%;
}

.accounting-table th:nth-child(4),
.accounting-table td:nth-child(4) {
  width: 17%;
}

.accounting-table th:nth-child(5),
.accounting-table td:nth-child(5) {
  width: 15%;
}

.accounting-table th:nth-child(6),
.accounting-table td:nth-child(6) {
  width: 16%;
}

.accounting-row td:first-child {
  border-left: 4px solid transparent;
}

.accounting-row.is-open td:first-child,
.accounting-row.is-sent td:first-child,
.accounting-row.is-neutral td:first-child {
  border-left-color: var(--brand-blue);
}

.accounting-row.is-due td:first-child,
.accounting-row.is-soon td:first-child,
.accounting-row.is-partially_paid td:first-child {
  border-left-color: var(--brand-orange);
}

.accounting-row.is-overdue td:first-child,
.accounting-row.is-dunning td:first-child {
  border-left-color: var(--red);
}

.accounting-row.is-paid td:first-child,
.accounting-row.is-credit td:first-child,
.accounting-row.is-memo td:first-child,
.accounting-row.is-corrected td:first-child,
.accounting-row.is-settled td:first-child {
  border-left-color: var(--green);
}

.accounting-row.is-cancelled td:first-child {
  border-left-color: var(--brand-gray);
}

.accounting-row.is-due td,
.accounting-row.is-soon td {
  background: #fffaf2;
}

.accounting-row.is-overdue td,
.accounting-row.is-dunning td {
  background: #fff7f4;
}

.accounting-row.is-paid td,
.accounting-row.is-credit td,
.accounting-row.is-memo td,
.accounting-row.is-corrected td,
.accounting-row.is-settled td {
  background: #fbfffd;
}

.invoice-cell,
.amount-cell {
  display: grid;
  gap: 5px;
}

.invoice-cell strong,
.amount-cell strong,
.accounting-table td > strong {
  color: var(--brand-navy);
}

.invoice-cell span,
.amount-cell span,
.accounting-reference,
.accounting-mail-ref {
  color: var(--muted);
  display: block;
  font-size: 12px;
}

.accounting-reference a,
.accounting-facts dd a {
  color: var(--brand-blue);
  font-weight: 800;
  text-decoration: none;
}

.accounting-reference a:hover,
.accounting-facts dd a:hover {
  text-decoration: underline;
}

.accounting-pdf-link {
  display: inline-flex;
  padding: 7px 9px;
  width: fit-content;
}

.accounting-due-badge {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  min-width: 126px;
  padding: 8px 10px;
}

.accounting-due-badge strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.accounting-due-badge small {
  color: var(--muted);
  font-size: 11px;
}

.accounting-due-badge.soon,
.accounting-due-badge.due {
  background: #fff8ef;
  border-color: rgba(246, 135, 18, .28);
}

.accounting-due-badge.overdue {
  background: #fde8e7;
  border-color: rgba(180, 35, 24, .25);
}

.accounting-due-badge.settled {
  background: #f2fbf6;
  border-color: rgba(23, 114, 69, .22);
}

.status.accounting-status.open,
.status.accounting-status.neutral {
  background: var(--brand-blue-soft);
  color: var(--brand-blue);
}

.status.accounting-status.sent,
.status.accounting-status.partially_paid,
.status.accounting-status.due,
.status.accounting-status.soon {
  background: #fff0dc;
  color: var(--brand-orange-dark);
}

.status.accounting-status.overdue,
.status.accounting-status.dunning {
  background: #fde8e7;
  color: var(--red);
}

.status.accounting-status.paid,
.status.accounting-status.credit,
.status.accounting-status.memo,
.status.accounting-status.corrected,
.status.accounting-status.settled {
  background: #e8f6ee;
  color: var(--green);
}

.status.accounting-status.cancelled {
  background: var(--surface-soft);
  color: var(--muted);
}

.accounting-action-stack {
  display: grid;
  gap: 7px;
  grid-template-columns: 1fr;
}

.accounting-action-stack .button,
.accounting-action-stack .fine {
  min-height: 34px;
  padding: 8px 9px;
  width: 100%;
}

.accounting-action-stack .fine {
  align-items: center;
  display: inline-flex;
}

.accounting-detail-row td {
  background: #ffffff;
  border-top: 0;
  padding: 0 14px 14px;
}

.accounting-details {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.accounting-details summary {
  align-items: center;
  background: var(--surface-soft);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  list-style: none;
  padding: 11px 13px;
}

.accounting-details summary {
  cursor: pointer;
}

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

.accounting-details summary span {
  color: var(--brand-blue);
  font-weight: 800;
}

.accounting-details summary small {
  color: var(--muted);
  font-size: 12px;
}

.accounting-details[open] summary {
  border-bottom: 1px solid var(--line);
}

.accounting-detail-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(240px, .75fr) minmax(320px, 1.25fr);
  padding: 14px;
}

.accounting-detail-grid section {
  min-width: 0;
}

.accounting-detail-grid h3 {
  font-size: 15px;
  margin: 0 0 10px;
}

.accounting-facts {
  display: grid;
  gap: 7px;
  margin: 0;
}

.accounting-facts div {
  display: grid;
  gap: 8px;
  grid-template-columns: 112px minmax(0, 1fr);
}

.accounting-facts dt {
  color: var(--muted);
  font-size: 12px;
}

.accounting-facts dd {
  color: var(--ink);
  font-size: 13px;
  margin: 0;
  overflow-wrap: anywhere;
}

.accounting-note {
  background: #fff8ef;
  border: 1px solid rgba(246, 135, 18, .26);
  border-radius: 8px;
  margin-top: 12px;
  padding: 11px;
}

.accounting-note p {
  margin: 4px 0 0;
}

.settlement-documents .table-wrap {
  margin-top: 8px;
}

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

.accounting-event {
  border-left: 3px solid var(--brand-blue);
  display: grid;
  gap: 3px;
  padding-left: 10px;
}

.accounting-event span {
  color: var(--muted);
  font-size: 12px;
}

.compact-table th,
.compact-table td {
  padding: 9px 10px;
}

.accounting-dialog-form {
  gap: 18px;
}

.datev-workspace { display: grid; gap: 14px; }
.datev-workspace p { margin: 0; }
.datev-month-form { display: flex; gap: 12px; align-items: end; }
.datev-config, .datev-line-fields { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.datev-config, .datev-invoice { border: 1px solid var(--line); border-radius: 8px; padding: 14px; min-width: 0; margin: 0 0 16px; }
.datev-config legend, .datev-invoice legend { font-weight: 700; padding: 0 6px; max-width: 100%; overflow-wrap: anywhere; }
.datev-invoice > label { max-width: 250px; }
.datev-line { display: grid; gap: 10px; padding: 14px 0; border-top: 1px solid var(--line); margin-top: 12px; }
.datev-line-title, .datev-history-entry { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.datev-line-title span { white-space: nowrap; font-size: 12px; }
.datev-workspace input, .datev-workspace select { width: 100%; min-width: 0; }
.datev-workspace label { min-width: 0; overflow-wrap: anywhere; }
.datev-line-title strong { overflow-wrap: anywhere; }
.datev-workspace .accounting-dialog-summary strong { display: block; }
.datev-workspace .accounting-dialog-summary { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.datev-errors { color: #9b2525; background: #fff3f2; border-radius: 6px; padding: 12px 12px 12px 26px; font-size: 13px; }
.datev-footer { padding: 14px 0; display: grid; gap: 10px; }
.datev-history { border-top: 1px solid var(--line); padding-top: 14px; }
.datev-history-entry { padding: 12px 0; border-bottom: 1px solid var(--line); }
.datev-history-entry strong { overflow-wrap: anywhere; }
@media (max-width: 700px) {
  .datev-config, .datev-line-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .datev-line-title, .datev-history-entry { flex-direction: column; align-items: flex-start; }
  .datev-workspace .accounting-dialog-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .datev-workspace .actions { flex-wrap: wrap; }
  .datev-line-fields label:has(input[name="kost1"]) { grid-column: 1 / -1; }
}

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

.accounting-dialog-summary div {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 12px;
}

.accounting-dialog-summary span {
  color: var(--muted);
  font-size: 12px;
}

.accounting-dialog-summary strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

/* Focused payment dialog: compact balance strip, paired inputs, clear footer. */
.modal:has(> .accounting-payment-form) { width: min(680px, 100%); }
.modal:has(> .accounting-payment-form) > header { align-items: flex-start; margin-bottom: 16px; gap: 12px; }
.modal:has(> .accounting-payment-form) > header h2 { font-size: 21px; margin: 0; }
.modal:has(> .accounting-payment-form) > header p { font-size: 12px; margin: 6px 0 0; overflow-wrap: anywhere; }
.modal:has(> .accounting-payment-form) > header [data-action="close-modal"] { flex: 0 0 36px; padding: 6px; min-height: 36px; font-size: 20px; line-height: 1; }
.accounting-payment-form { gap: 14px; }
.accounting-payment-form .accounting-dialog-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-blue); overflow: hidden; }
.accounting-payment-form .accounting-dialog-summary > div { border: 0; border-right: 1px solid var(--line); border-radius: 0; padding: 11px 12px; align-content: start; }
.accounting-payment-form .accounting-dialog-summary > div:last-child { border-right: 0; }
.accounting-payment-form .accounting-dialog-summary strong { display: block; font-size: 17px; font-variant-numeric: tabular-nums; }
.accounting-payment-form .accounting-dialog-summary .accounting-payment-outstanding { background: var(--brand-blue-soft); }
.accounting-payment-form .accounting-payment-outstanding strong { color: var(--brand-blue); }
.accounting-payment-form .accounting-payment-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.accounting-payment-form label { min-width: 0; font-size: 13px; gap: 6px; }
.accounting-payment-form input { min-height: 42px; font-size: 14px; }
.accounting-payment-amount { position: relative; display: block; }
.accounting-payment-amount input { padding-right: 38px; font-weight: 700; }
.accounting-payment-amount > span { position: absolute; right: 13px; top: 50%; transform: translateY(-50%); color: var(--muted); pointer-events: none; }
.accounting-payment-form textarea { min-height: 62px; padding: 10px 12px; font-size: 13px; resize: vertical; }
.accounting-payment-form .accounting-payment-footer { border-top: 1px solid var(--line); padding-top: 14px; display: flex; justify-content: flex-end; gap: 8px; }
.accounting-payment-form .accounting-payment-footer .button { min-height: 42px; font-size: 13px; }
@media (max-width: 600px) {
  .accounting-payment-form .accounting-payment-fields { grid-template-columns: minmax(0, 1fr); }
  .accounting-payment-form .accounting-dialog-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .accounting-payment-form .accounting-dialog-summary > div { padding: 10px 7px; }
  .accounting-payment-form .accounting-dialog-summary > div:nth-child(2) { border-right: 0; }
  .accounting-payment-form .accounting-dialog-summary > div:last-child { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); }
  .accounting-payment-form .accounting-dialog-summary span { font-size: 11px; }
  .accounting-payment-form .accounting-dialog-summary strong { font-size: 15px; }
  .accounting-payment-form .accounting-payment-footer { flex-wrap: wrap; }
  .accounting-payment-form .accounting-payment-footer .button { flex: 1 1 auto; min-height: 44px; }
}

.accounting-position-editor {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.accounting-position-list {
  display: grid;
  gap: 10px;
}

.accounting-position-row {
  align-items: end;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(170px, 1.2fr) minmax(150px, 1fr) 82px 122px 92px minmax(135px, .85fr) auto;
  padding: 12px;
}

.accounting-position-row .button {
  min-height: 42px;
}

.accounting-position-total {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  min-height: 42px;
  padding: 8px 10px;
}

.accounting-position-total span,
.accounting-position-total small,
.accounting-manual-totals span,
.accounting-vat-breakdown span {
  color: var(--muted);
  font-size: 12px;
}

.accounting-position-total strong,
.accounting-manual-totals strong {
  color: var(--brand-navy);
}

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

.accounting-manual-totals > div {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px 12px;
}

.accounting-manual-totals .accounting-vat-breakdown {
  grid-column: 1 / -1;
}

.accounting-vat-breakdown {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
}

.tag-editor {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #ffffff;
  padding: 7px;
}

.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.tag-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  background: var(--brand-blue-soft);
  color: var(--brand-blue);
  font-size: 13px;
  font-weight: 750;
  padding: 5px 7px 5px 10px;
}

.tag-chip button {
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: rgba(0, 58, 150, .12);
  color: var(--brand-blue);
  cursor: pointer;
  font-weight: 900;
  line-height: 1;
}

.rental-class-picker {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.rental-rule-table {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.rental-rule-head,
.rental-rule-row {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(230px, 1fr) 110px 130px;
  align-items: center;
}

.workshop-rental-rates .rental-rule-head,
.workshop-rental-rates .rental-rule-row {
  grid-template-columns: minmax(230px, 1fr) 110px minmax(260px, 1.3fr);
}

.rental-rule-head {
  background: var(--brand-blue-soft);
  color: var(--brand-blue);
  font-size: 12px;
  font-weight: 800;
  padding: 9px 12px;
  text-transform: uppercase;
}

.rental-rule-row {
  border-top: 1px solid var(--line);
  padding: 10px 12px;
}

.rental-rule-row small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  margin-top: 2px;
}

.toggle-row {
  align-items: center;
  display: flex;
  gap: 8px;
  margin: 0;
}

.toggle-row input {
  width: auto;
}

@media (max-width: 760px) {
  .rental-rule-head {
    display: none;
  }

  .rental-rule-row,
  .workshop-rental-rates .rental-rule-row {
    grid-template-columns: 1fr;
  }
}

.modal .customer-config-panel .rental-rule-head {
  display: none;
}

.modal .customer-config-panel .rental-rule-row {
  grid-template-columns: 1fr;
}

.check-row {
  align-items: flex-start;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 9px 10px;
}

.check-row input {
  width: auto;
  margin-top: 3px;
}

.check-row small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
  margin-top: 2px;
}

.invoice-required-document-coverage {
  background: #f8fbff;
  border-color: #bdd2ea;
  margin: 10px 0 0;
}

.invoice-required-document-coverage:has(input:checked) {
  background: #effaf4;
  border-color: #93d5ad;
}

.invoice-required-document.is-covered .damage-upload-wrap,
.invoice-required-document.is-covered > .fine {
  display: none;
}

.invoice-required-document-coverage-fields {
  align-items: flex-start;
  background: #effaf4;
  border: 1px solid #93d5ad;
  border-radius: 10px;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr);
  margin-top: 8px;
  padding: 14px 16px;
}

.invoice-required-document-coverage-fields[hidden] {
  display: none;
}

.invoice-required-document-coverage-fields label {
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 700;
}

.invoice-required-document-coverage-fields select,
.invoice-required-document-coverage-fields input {
  margin-top: 5px;
}

.invoice-required-document-coverage-fields .fine {
  color: var(--muted);
  font-size: 12px;
  grid-column: 1 / -1;
  line-height: 1.45;
  margin: 0;
}

.workshop-submission-file.is-coverage {
  cursor: default;
}

.workshop-order-requirements {
  background: #fff;
  border: 1px solid #c8d4e3;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0, 29, 75, .06);
  margin-top: 16px;
  overflow: hidden;
}

.workshop-order-requirements.is-upload {
  margin: 0 0 18px;
}

.workshop-order-requirements-header {
  background: #0b3569;
  color: #fff;
  padding: 17px 24px;
}

.workshop-order-requirements-header h2 {
  color: inherit;
  font-size: 18px;
  line-height: 1.3;
  margin: 0;
}

.workshop-order-requirements-body {
  padding: 18px 24px 20px;
}

.workshop-order-requirements-intro {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
  margin: 0 0 12px;
}

.workshop-order-damage-type {
  align-items: center;
  background: #edf4ff;
  border: 1px solid #2f63a7;
  border-radius: 6px 6px 0 0;
  color: #0b3569;
  display: inline-flex;
  gap: 5px;
  min-width: min(320px, 100%);
  padding: 11px 16px;
}

.workshop-order-damage-type span,
.workshop-order-damage-type strong {
  font-size: 13px;
}

.workshop-order-damage-type span::after {
  content: ":";
}

.workshop-order-requirements-table-wrap {
  overflow-x: auto;
  overscroll-behavior-inline: contain;
}

.workshop-order-requirements-table {
  border-collapse: collapse;
  color: #31415a;
  font-size: 12px;
  min-width: 650px;
  table-layout: fixed;
  width: 100%;
}

.workshop-order-requirements-table th,
.workshop-order-requirements-table td {
  border: 1px solid #d6e0eb;
  line-height: 1.4;
  overflow-wrap: anywhere;
  padding: 11px 12px;
  text-align: left;
  vertical-align: top;
}

.workshop-order-requirements-table thead th {
  background: #e6effc;
  color: #0b3569;
  font-weight: 700;
}

.workshop-order-requirements-table thead th:nth-child(1) {
  width: 38%;
}

.workshop-order-requirements-table thead th:nth-child(2) {
  width: 16%;
}

.workshop-order-requirements-table tbody tr:nth-child(even) {
  background: #f7f9fc;
}

.workshop-order-requirements-table tbody th {
  color: #0b3569;
  font-weight: 700;
}

.workshop-order-combined-documents,
.workshop-order-requirements-warning {
  border: 1px solid;
  border-radius: 6px;
  display: grid;
  gap: 5px;
  margin-top: 12px;
  padding: 12px 16px;
}

.workshop-order-combined-documents {
  background: #fff4e8;
  border-color: #f28a22;
  color: #0b3569;
}

.workshop-order-combined-documents span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.workshop-order-requirements-warning {
  background: #fff0f0;
  border-color: #d64545;
  color: #0b3569;
  font-size: 12px;
}

@media (max-width: 720px) {
  .invoice-required-document-coverage-fields {
    grid-template-columns: 1fr;
  }

  .invoice-required-document-coverage-fields .fine {
    grid-column: auto;
  }

  .workshop-order-requirements-header,
  .workshop-order-requirements-body {
    padding-left: 14px;
    padding-right: 14px;
  }

  .workshop-order-requirements-table-wrap {
    overflow: visible;
  }

  .workshop-order-requirements-table {
    min-width: 0;
  }

  .workshop-order-requirements-table thead tr,
  .workshop-order-requirements-table tbody tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 72px;
  }

  .workshop-order-requirements-table th,
  .workshop-order-requirements-table td {
    padding: 9px 8px;
  }

  .workshop-order-requirements-table tbody th {
    font-size: 10px;
  }

  .workshop-order-requirements-table thead th:nth-child(1),
  .workshop-order-requirements-table tbody th {
    width: auto;
  }

  .workshop-order-requirements-table thead th:nth-child(2) {
    width: auto;
  }

  .workshop-order-requirements-table thead th:nth-child(3),
  .workshop-order-requirements-table tbody td:nth-child(3) {
    grid-column: 1 / -1;
    width: auto;
  }

  .workshop-order-requirements-table tbody td:nth-child(3) {
    background: rgba(230, 239, 252, .42);
    border-top: 0;
  }
}

.security-options {
  display: grid;
  gap: 10px;
}

.security-notice {
  align-items: center;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  color: var(--brand-navy);
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  justify-content: space-between;
  padding: 10px 12px;
}

.security-notice span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.tag-editor input.tag-entry {
  flex: 1 1 150px;
  min-width: 150px;
  border: 0;
  padding: 5px;
}

.tag-editor input.tag-entry:focus {
  outline: none;
}

.tag-empty {
  padding: 5px;
}

.master-contact-list {
  display: grid;
  gap: 14px;
}

.master-contact-row {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.master-contact-row-header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.master-contact-row-header strong,
.master-contact-row-header span {
  display: block;
}

.vehicle-insurance-list {
  display: grid;
  gap: 14px;
}

.vehicle-insurance-additional > summary {
  color: var(--brand-navy);
  cursor: pointer;
  font-weight: 750;
  padding: 12px 0;
}

.vehicle-insurance-card {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.vehicle-insurance-card-header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.vehicle-insurance-card-header strong,
.vehicle-insurance-card-header span {
  display: block;
}

.vehicle-insurance-contract-summary {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 12px;
}

.vehicle-insurance-contract-summary header {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.vehicle-insurance-contract-summary strong,
.vehicle-insurance-contract-summary span {
  display: block;
}

.vehicle-insurance-fallback {
  background: #ffffff;
  border: 1px dashed var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 12px;
}

.vehicle-insurance-fallback legend {
  color: var(--brand-navy);
  font-weight: 750;
  padding: 0 6px;
}

.driver-change-log {
  display: grid;
  gap: 12px;
}

.driver-change-entry {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.driver-change-entry header {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  justify-content: space-between;
}

.driver-change-list {
  display: grid;
  gap: 6px;
}

.driver-change-row {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(120px, .8fr) minmax(0, 1fr) minmax(0, 1fr);
}

.driver-change-row span {
  overflow-wrap: anywhere;
}

.driver-change-row span:first-child {
  color: var(--muted);
  font-weight: 800;
}

.address-suggestions {
  position: absolute;
  z-index: 160;
  display: grid;
  max-height: 260px;
  overflow: auto;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 6px;
}

.address-suggestion-item {
  width: 100%;
  border-radius: 6px;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
  padding: 10px 11px;
  text-align: left;
  line-height: 1.35;
}

.address-suggestion-item:hover,
.address-suggestion-item:focus {
  background: var(--brand-blue-soft);
  outline: none;
}

fieldset {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 16px;
  margin: 0;
  display: grid;
  gap: 14px;
}

.estimate-total-row {
  align-items: center;
  background: linear-gradient(135deg, var(--surface-blue), #ffffff);
  border: 1px solid rgba(0, 58, 150, .18);
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(0, 29, 75, .06);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 14px 16px;
}

.estimate-total-row span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
  text-transform: uppercase;
}

.estimate-total-row strong {
  color: var(--brand-navy);
  font-size: 22px;
  line-height: 1.1;
}

.supplement-new-total-row {
  background: #f6f8fb;
  border-color: #d8e0ec;
}

.supplement-new-total-row[hidden] {
  display: none;
}

.workshop-supplement-reference {
  background: linear-gradient(135deg, #eef6ff, #ffffff);
  border: 1px solid rgba(0, 89, 190, .24);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  min-width: 0;
  padding: 11px 12px;
}

.workshop-supplement-reference-head {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.workshop-supplement-reference-head > span:first-child {
  color: var(--brand-navy);
  font-size: 13px;
  font-weight: 800;
}

.workshop-supplement-reference-head .pill {
  font-size: 10px;
  padding: 3px 7px;
}

.workshop-supplement-reference > strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.workshop-supplement-reference-facts {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.workshop-supplement-reference-facts > div {
  background: rgba(255, 255, 255, .82);
  border: 1px solid rgba(0, 89, 190, .12);
  border-radius: 6px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 6px 8px;
}

.workshop-supplement-reference-facts span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.workshop-supplement-reference-facts b {
  color: var(--brand-navy);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.workshop-supplement-reason-control {
  align-content: start;
  display: grid;
  gap: 8px;
  min-width: 0;
}

.workshop-supplement-other-reason {
  background: #fff8ed;
  border: 1px solid rgba(197, 103, 20, .28);
  border-radius: 7px;
  display: grid;
  gap: 6px;
  padding: 9px 10px;
}

.workshop-supplement-other-reason[hidden] {
  display: none;
}

.workshop-supplement-other-reason input {
  background: #fff;
}

.workshop-supplement-header {
  align-items: center;
}

.workshop-supplement-header.has-launch-action .button {
  flex: 0 0 auto;
}

.workshop-supplement-header p {
  margin: 3px 0 0;
}

.workshop-supplement-panel.is-special-case {
  background: linear-gradient(145deg, #ffffff 0%, #f4f8ff 100%);
  border-color: rgba(0, 58, 150, .2);
  border-style: solid;
  margin-top: 16px;
}

.workshop-supplement-panel.is-special-case .workshop-supplement-header h2 {
  color: var(--brand-navy);
  margin-top: 4px;
}

.workshop-supplement-approval-rule {
  background: rgba(255, 255, 255, .78);
  border-left: 4px solid #c56714;
  border-radius: 6px;
  color: var(--brand-navy);
  display: grid;
  gap: 4px;
  padding: 10px 12px;
}

.workshop-supplement-approval-rule span {
  color: var(--muted);
}

.workshop-supplement-panel.is-launcher-only {
  padding: 18px 20px;
}

.workshop-supplement-panel.is-launcher-only .workshop-supplement-header {
  margin-bottom: 0;
}

.workshop-supplement-dialog {
  display: grid;
  gap: 14px;
}

@media (max-width: 680px) {
  .workshop-supplement-header.has-launch-action {
    align-items: stretch;
  }

  .workshop-supplement-header.has-launch-action .button {
    width: 100%;
  }
}

.workshop-supplement-table-wrap table {
  min-width: 960px;
  table-layout: fixed;
}

.workshop-supplement-table-wrap th:nth-child(1),
.workshop-supplement-table-wrap td:nth-child(1) {
  width: 24%;
}

.workshop-supplement-table-wrap th:nth-child(2),
.workshop-supplement-table-wrap td:nth-child(2),
.workshop-supplement-table-wrap th:nth-child(3),
.workshop-supplement-table-wrap td:nth-child(3) {
  width: 13%;
}

.workshop-supplement-table-wrap th:nth-child(4),
.workshop-supplement-table-wrap td:nth-child(4) {
  width: 20%;
}

.workshop-supplement-table-wrap th:nth-child(5),
.workshop-supplement-table-wrap td:nth-child(5) {
  width: 30%;
}

.condition-period {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
  display: grid;
  gap: 12px;
}

.condition-period summary {
  cursor: pointer;
  font-weight: 750;
}

.condition-period-wrap {
  max-width: 100%;
}

.condition-period-table {
  min-width: 2600px;
}

.condition-period-table th,
.condition-period-table td {
  padding: 10px;
  min-width: 142px;
  vertical-align: middle;
}

.condition-period-table th:first-child,
.condition-period-table td:first-child {
  left: 0;
  min-width: 150px;
  position: sticky;
  z-index: 2;
}

.condition-period-table th:first-child {
  background: var(--surface-blue);
}

.condition-period-table td:first-child,
.condition-period-title {
  background: #ffffff;
}

.condition-period-title strong {
  display: block;
  margin-bottom: 6px;
  white-space: nowrap;
}

.condition-period-table input,
.condition-period-table select {
  min-width: 118px;
  padding: 8px 9px;
}

.condition-period-new {
  background: var(--surface-blue);
}

.condition-period-table {
  min-width: 860px;
}

.condition-period-table th,
.condition-period-table td {
  min-width: auto;
}

.condition-period-table th:first-child,
.condition-period-table td:first-child {
  left: auto;
  min-width: 130px;
  position: static;
  z-index: auto;
}

.condition-period-table th:nth-child(4),
.condition-period-table td:nth-child(4) {
  width: 48%;
}

.condition-period-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.condition-period-actions {
  white-space: nowrap;
}

.condition-period-detail-row td {
  background: var(--surface-blue);
  padding: 0;
}

.condition-period-detail {
  display: grid;
  gap: 14px;
  padding: 16px;
}

.condition-period-detail h3 {
  margin: 6px 0 0;
}

.condition-field-group {
  display: grid;
  gap: 10px;
}

.condition-field-group h4 {
  border-bottom: 1px solid var(--line);
  color: var(--brand-blue);
  font-size: 13px;
  letter-spacing: 0;
  margin: 4px 0 0;
  padding-bottom: 6px;
}

.vehicle-insurer-table table {
  min-width: 1280px;
}

.master-insurer-subtabs {
  margin-bottom: 18px;
}

.master-insurer-tab-content {
  display: grid;
  gap: 18px;
}

.master-insurer-tab-content .panel {
  min-width: 0;
}

.master-insurer-tab-content .button {
  white-space: nowrap;
}

.master-insurer-tab-content .customer-insurance-contract-meta {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.master-insurer-tab-content .table-wrap {
  max-width: 100%;
}

.master-insurer-tab-content .table-wrap table {
  table-layout: fixed;
}

.master-insurer-tab-content .table-wrap th,
.master-insurer-tab-content .table-wrap td {
  overflow-wrap: anywhere;
}

.master-insurer-tab-content .table-wrap th:nth-child(4),
.master-insurer-tab-content .table-wrap td:nth-child(4) {
  width: 150px;
}

.master-insurer-grid {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
}

.master-insurer-grid .panel {
  min-width: 0;
}

.master-insurer-grid .button {
  white-space: nowrap;
}

.master-insurer-contracts-panel {
  grid-row: span 2;
}

.master-insurer-grid .table-wrap {
  max-width: 100%;
}

.master-insurer-grid .table-wrap table {
  table-layout: fixed;
}

.master-insurer-grid .table-wrap th,
.master-insurer-grid .table-wrap td {
  overflow-wrap: anywhere;
  padding: 12px 14px;
}

.master-insurer-grid .table-wrap th:nth-child(1),
.master-insurer-grid .table-wrap td:nth-child(1) {
  width: 32%;
}

.master-insurer-grid .table-wrap th:nth-child(2),
.master-insurer-grid .table-wrap td:nth-child(2) {
  width: 30%;
}

.master-insurer-grid .table-wrap th:nth-child(3),
.master-insurer-grid .table-wrap td:nth-child(3) {
  width: 88px;
}

.master-insurer-grid .table-wrap th:nth-child(4),
.master-insurer-grid .table-wrap td:nth-child(4) {
  width: 120px;
}

.master-insurer-grid .table-wrap .actions {
  align-items: stretch;
  display: grid;
  gap: 8px;
}

.master-insurer-grid .table-wrap .button {
  min-height: 36px;
  width: 100%;
}

.customer-insurance-contract-list {
  display: grid;
  gap: 12px;
}

.customer-insurance-contract-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 14px;
}

.customer-insurance-contract-card header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.customer-insurance-contract-title {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.customer-insurance-contract-title strong {
  color: var(--brand-navy);
  font-size: 16px;
  overflow-wrap: anywhere;
}

.customer-insurance-contract-title span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.customer-insurance-contract-card .status {
  flex: 0 0 auto;
}

.customer-insurance-contract-meta {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.customer-insurance-contract-meta > div {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
}

.customer-insurance-contract-meta > div > span:first-child {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  line-height: 1.2;
  text-transform: uppercase;
}

.customer-insurance-contract-meta strong,
.customer-insurance-contract-meta small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.customer-insurance-contract-meta strong {
  color: var(--brand-navy);
  font-size: 13px;
  line-height: 1.35;
}

.customer-insurance-contract-meta small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.customer-insurance-contract-vehicle-link {
  display: grid;
  gap: 4px;
  justify-items: start;
}

.customer-insurance-contract-card .actions {
  gap: 8px;
}

.customer-insurance-contract-card .button {
  min-height: 34px;
  padding: 8px 11px;
}

@media (max-width: 1400px) {
  .master-insurer-grid {
    grid-template-columns: 1fr;
  }

  .master-insurer-contracts-panel {
    grid-row: auto;
  }

  .customer-insurance-contract-meta {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.inline-check {
  display: flex;
  align-items: center;
  gap: 8px;
}

legend {
  padding: 0 8px;
  color: var(--muted);
  font-weight: 800;
}

.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 18px;
}

.tab {
  background: transparent;
  color: var(--muted);
  border-radius: 8px 8px 0 0;
  padding: 11px 14px;
  cursor: pointer;
  font-weight: 700;
}

.tab.active {
  background: #ffffff;
  color: var(--blue);
  box-shadow: inset 0 -2px 0 var(--blue);
}

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

.timeline-item {
  display: grid;
  grid-template-columns: 138px 1fr;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}

.role-model-list .timeline-item {
  align-items: start;
  grid-template-columns: minmax(190px, .34fr) minmax(0, 1fr);
}

.role-model-list .timeline-item strong,
.role-model-list .timeline-item span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.role-model-list .timeline-item span {
  line-height: 1.45;
}

.timeline-item:last-child {
  border-bottom: 0;
}

[data-foreign-expert-responses] .timeline-item {
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}

[data-foreign-expert-responses] .timeline-item p {
  margin: 0;
  white-space: pre-wrap;
}

.timeline-panel {
  display: grid;
  gap: 14px;
  overflow: visible;
}

.timeline-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.timeline-insights {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.timeline-metric-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 10px 26px rgba(0, 29, 75, .06);
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 13px 14px;
}

.timeline-metric-card span,
.timeline-phase-card small,
.timeline-phase-card em,
.timeline-entry-delay small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}

.timeline-metric-card strong {
  color: var(--brand-navy);
  font-size: 22px;
  line-height: 1.05;
  overflow-wrap: anywhere;
}

.timeline-metric-card small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  min-height: 32px;
  overflow-wrap: anywhere;
}

.timeline-phase-board {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  position: relative;
}

.timeline-phase-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-top: 4px solid #64748b;
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
  padding: 12px;
}

.timeline-phase-card.case {
  border-top-color: var(--brand-blue);
}

.timeline-phase-card.communication {
  border-top-color: #0ea5e9;
}

.timeline-phase-card.photo,
.timeline-phase-card.order {
  border-top-color: var(--brand-orange);
}

.timeline-phase-card.cost {
  border-top-color: var(--green);
}

.timeline-phase-card.follow-up {
  border-top-color: var(--violet);
}

.timeline-phase-index {
  align-items: center;
  background: var(--surface-blue);
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.timeline-phase-card > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.timeline-phase-card strong,
.timeline-phase-card b,
.timeline-phase-card em {
  min-width: 0;
  overflow-wrap: anywhere;
}

.timeline-phase-card strong {
  color: var(--brand-navy);
}

.timeline-phase-card b {
  color: var(--ink);
  font-size: 16px;
  grid-column: 1 / -1;
}

.timeline-phase-card em {
  font-style: normal;
  grid-column: 1 / -1;
  line-height: 1.35;
  text-transform: none;
}

.timeline-summary-pill,
.timeline-entry-tags > span:first-child {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  display: inline-flex;
  font-size: 11px;
  font-weight: 800;
  gap: 6px;
  line-height: 1;
  min-height: 26px;
  padding: 6px 9px;
  text-transform: uppercase;
}

.timeline-summary-pill strong {
  color: inherit;
  font-size: 12px;
}

.timeline-summary-pill.case,
.timeline-entry-tags > span.case {
  background: var(--brand-blue-soft);
  border-color: var(--brand-blue-soft-2);
  color: var(--brand-blue);
}

.timeline-summary-pill.communication,
.timeline-entry-tags > span.communication {
  background: #eef8ff;
  border-color: #b8def8;
  color: #075985;
}

.timeline-summary-pill.document,
.timeline-entry-tags > span.document {
  background: #f5f7fb;
  border-color: #d2d8e2;
  color: #344054;
}

.timeline-summary-pill.photo,
.timeline-entry-tags > span.photo {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
}

.timeline-summary-pill.order,
.timeline-entry-tags > span.order {
  background: #fff7ed;
  border-color: #fdba74;
  color: #c2410c;
}

.timeline-summary-pill.cost,
.timeline-entry-tags > span.cost {
  background: #ecfdf3;
  border-color: #bbf7d0;
  color: #166534;
}

.timeline-summary-pill.follow-up,
.timeline-entry-tags > span.follow-up {
  background: #f5f3ff;
  border-color: #ddd6fe;
  color: #5b21b6;
}

.timeline-summary-pill.history,
.timeline-entry-tags > span.history {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: #334155;
}

.timeline-detailed {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(420px, .9fr) minmax(440px, 1.1fr);
}

.timeline-list {
  display: grid;
  gap: 10px;
  position: relative;
}

.timeline-list::before {
  background: linear-gradient(180deg, rgba(0, 58, 150, .18), rgba(246, 135, 18, .22));
  border-radius: 999px;
  content: "";
  height: calc(100% - 28px);
  left: 139px;
  position: absolute;
  top: 14px;
  width: 3px;
}

.timeline-entry {
  appearance: none;
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid transparent;
  border-radius: 8px;
  box-shadow: 0 8px 22px rgba(0, 29, 75, .05);
  color: inherit;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: 112px 86px minmax(0, 1fr);
  min-height: 72px;
  padding: 12px 14px;
  position: relative;
  text-align: left;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
  width: 100%;
}

.timeline-entry::before {
  background: #ffffff;
  border: 3px solid var(--brand-blue);
  border-radius: 999px;
  content: "";
  height: 13px;
  left: 118px;
  position: absolute;
  top: 22px;
  width: 13px;
  z-index: 1;
}

.timeline-entry:hover,
.timeline-entry.active {
  background: var(--surface-blue);
  border-color: var(--brand-blue-soft-2);
  border-left-color: var(--brand-blue);
  box-shadow: 0 8px 20px rgba(0, 58, 150, .08);
}

.timeline-entry:focus-visible {
  outline: 2px solid var(--brand-blue);
  outline-offset: 2px;
}

.timeline-entry-time {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.timeline-entry-delay {
  align-content: start;
  display: grid;
  gap: 3px;
  justify-items: start;
  min-width: 0;
  padding-top: 1px;
}

.timeline-entry-delay strong {
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 12px;
  line-height: 1;
  min-height: 28px;
  padding: 8px 10px;
}

.timeline-entry-delay.start strong {
  background: var(--brand-blue);
}

.timeline-entry-delay.fast strong {
  background: var(--green);
}

.timeline-entry-delay.watch strong {
  background: var(--brand-orange);
}

.timeline-entry-delay.slow strong {
  background: var(--red);
}

.timeline-entry-copy {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.timeline-entry-copy .timeline-entry-tags {
  align-items: center;
  color: inherit;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.timeline-entry-copy .timeline-entry-tags .status {
  align-self: center;
  font-size: 11px;
  min-height: 24px;
  padding: 5px 8px;
}

.timeline-entry-copy strong {
  color: #050b18;
  overflow-wrap: anywhere;
}

.timeline-entry-copy span {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.timeline-detail-stack {
  position: sticky;
  top: 92px;
}

.timeline-detail-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-orange);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 11px;
  padding: 16px;
}

.timeline-detail-card.case {
  border-left-color: var(--brand-blue);
}

.timeline-detail-card.communication {
  border-left-color: #0ea5e9;
}

.timeline-detail-card.document,
.timeline-detail-card.history {
  border-left-color: #64748b;
}

.timeline-detail-card.photo,
.timeline-detail-card.order {
  border-left-color: var(--brand-orange);
}

.timeline-detail-card.cost {
  border-left-color: var(--green);
}

.timeline-detail-card.follow-up {
  border-left-color: var(--violet);
}

.timeline-detail-card h3,
.timeline-detail-card p {
  margin: 0;
}

.timeline-detail-card h3 {
  color: var(--brand-navy);
  font-size: 16px;
}

.timeline-detail-card p {
  color: var(--ink);
  overflow-wrap: anywhere;
}

.timeline-detail-kicker {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.timeline-detail-meta {
  display: grid;
  gap: 8px;
  margin: 2px 0 0;
}

.timeline-detail-meta div {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 2px;
  padding-top: 8px;
}

.timeline-detail-meta dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.timeline-detail-meta dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.timeline-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.changelog-list {
  display: grid;
  gap: 14px;
  min-width: 0;
}

/* Changelog: report, current queue and release history in one compact column. */
.changelog-workspace { display: grid; gap: 16px; min-width: 0; font-size: 13px; }
.changelog-workspace > .panel { margin: 0; padding: 18px; min-width: 0; }
.changelog-workspace .panel-header { margin-bottom: 14px; gap: 12px; flex-wrap: wrap; }
.changelog-workspace h2 { margin: 0; font-size: 17px; line-height: 1.4; }
.changelog-workspace .panel-header p { margin: 5px 0 0; font-size: 12px; }
.changelog-workspace .pill { font-size: 11px; padding: 3px 8px; vertical-align: middle; }
.changelog-workspace .button, .feedback-form .button, .feedback-completion-form .button { font-size: 12px; min-height: 32px; padding: 6px 10px; line-height: 1.4; }
.changelog-workspace .actions, .feedback-form .actions, .feedback-completion-form .actions { margin: 0; gap: 6px; }
.feedback-form { display: grid; gap: 12px; }
.feedback-form-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 12px; align-items: start; }
.feedback-form-title { grid-column: span 2; }
.feedback-form-description { grid-column: span 3; }
.feedback-form label, .feedback-completion-form label { margin: 0; font-size: 12px; gap: 5px; min-width: 0; }
.feedback-form input, .feedback-form select, .feedback-form textarea, .feedback-completion-form select, .feedback-completion-form textarea { font-size: 13px; padding: 8px 10px; min-width: 0; width: 100%; }
.feedback-form textarea { min-height: 64px; }
.feedback-form-extra { display: grid; gap: 12px; margin-top: 10px; }
.feedback-form-options summary, .changelog-workspace summary { cursor: pointer; font-size: 12px; color: var(--brand-blue); font-weight: 600; }
.feedback-table-wrap { overflow-x: auto; }
.feedback-table { width: 100%; table-layout: fixed; font-size: 12px; border-collapse: collapse; }
.changelog-workspace table.feedback-table th { padding: 9px 10px; font-size: 11px; text-transform: none; letter-spacing: 0; background: var(--surface-soft, #f4f7fa); }
.feedback-table th:nth-child(1) { width: 37%; }
.feedback-table th:nth-child(2) { width: 15%; }
.feedback-table th:nth-child(3) { width: 9%; }
.feedback-table th:nth-child(4) { width: 17%; }
.feedback-table th:nth-child(5) { width: 22%; }
.changelog-workspace table.feedback-table td { padding: 12px 10px; vertical-align: top; overflow-wrap: anywhere; white-space: normal; }
.feedback-table-report > strong { display: block; font-size: 13px; line-height: 1.5; }
.feedback-table .fine, .feedback-table small { display: block; margin-top: 4px; font-size: 11px; color: var(--muted); }
.feedback-table .status { font-size: 11px; white-space: normal; line-height: 1.4; padding: 3px 7px; }
.feedback-table p { margin: 8px 0; }
.feedback-row-details, .feedback-resolution, .feedback-row-more { margin-top: 8px; }
.feedback-row-more > button { margin-top: 8px; }
.feedback-text { white-space: pre-wrap; overflow-wrap: anywhere; }
.feedback-mail-status { font-size: 11px; line-height: 1.5; }
.feedback-mail-warning { color: #925100; }
.feedback-empty { padding: 16px 0; color: var(--muted); }
.feedback-archive { border-top: 1px solid var(--line); margin-top: 14px; padding-top: 14px; }
.feedback-archive > summary { margin-bottom: 10px; }
.feedback-completion-form { display: grid; gap: 12px; font-size: 13px; }
.feedback-completion-form p { margin: 0; }
.modal:has(.feedback-form), .modal:has(.feedback-completion-form) { width: min(720px, 100%); }
.modal:has(.feedback-form) h2, .modal:has(.feedback-completion-form) h2 { font-size: 19px; }
.changelog-workspace .changelog-list { gap: 8px; }
.changelog-workspace .changelog-entry { display: block; padding: 0; }
.changelog-entry > summary { padding: 12px 14px; }
.changelog-entry > summary .fine { display: inline-block; margin-right: 12px; font-size: 11px; font-weight: 400; }
.changelog-entry-title { font-size: 13px; }
.changelog-entry-content { display: grid; gap: 12px; padding: 0 14px 14px; font-size: 12px; line-height: 1.6; }
@media (max-width: 760px) {
  .changelog-workspace > .panel { padding: 14px; }
  .feedback-form-grid { grid-template-columns: 1fr 1fr; }
  .feedback-form-description, .feedback-form-grid > label:last-child { grid-column: 1 / -1; }
  .feedback-table, .feedback-table tbody { display: block; }
  .feedback-table thead { display: none; }
  .feedback-table tr { display: grid; grid-template-columns: 1fr 1fr; padding: 12px 0; border-bottom: 1px solid var(--line); }
  .changelog-workspace table.feedback-table td { display: block; padding: 6px 0; border: 0; }
  .feedback-table-report, .feedback-table-actions { grid-column: 1 / -1; }
  .feedback-table td:nth-child(4) { grid-column: 1 / -1; }
  .feedback-table td[data-label]::before { content: attr(data-label); display: block; font-size: 10px; color: var(--muted); margin-bottom: 4px; }
  .changelog-entry > summary .fine { display: block; margin-bottom: 4px; }
}

.feedback-changelog-link .text-link {
  background: none;
  border: 0;
  color: var(--brand-blue);
  cursor: pointer;
  font: inherit;
  font-weight: 800;
  padding: 0;
  text-decoration: none;
}

.feedback-changelog-link .text-link:hover {
  text-decoration: underline;
}

.feedback-history {
  display: grid;
  gap: 6px;
  margin-top: 8px;
}

.changelog-entry {
  display: grid;
  gap: 10px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  min-width: 0;
  width: 100%;
}

.changelog-entry header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  min-width: 0;
}

.changelog-entry h3 {
  margin: 4px 0 0;
  overflow-wrap: anywhere;
}

.changelog-entry ul {
  margin: 0;
  padding-left: 20px;
  color: var(--ink);
}

.changelog-entry li + li {
  margin-top: 6px;
}

.changelog-entry li,
.changelog-entry p,
.changelog-entry a,
.changelog-entry small,
.changelog-entry span {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.changelog-linked-feedback {
  display: grid;
  gap: 8px;
  margin-top: 2px;
}

.changelog-linked-feedback h4 {
  color: var(--brand-blue);
  font-size: 14px;
  margin: 0;
}

.changelog-linked-feedback-list {
  display: grid;
  gap: 8px;
}

.changelog-linked-feedback-item {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  cursor: pointer;
  display: grid;
  font: inherit;
  gap: 3px;
  padding: 9px 10px;
  text-align: left;
  text-decoration: none;
  width: 100%;
}

.changelog-linked-feedback-item:hover {
  border-color: var(--brand-blue);
}

.changelog-linked-feedback-item span {
  font-weight: 800;
}

.changelog-linked-feedback-item small {
  color: var(--muted);
}

.changelog-screenshots {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 6px;
  min-width: 0;
  width: 100%;
}

.changelog-compare {
  display: grid;
  gap: 8px;
  max-width: 460px;
  width: 100%;
  min-width: 0;
}

.changelog-compare h4 {
  color: var(--brand-blue);
  font-size: 14px;
  margin: 0;
}

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

.changelog-shot {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  flex: 0 1 220px;
  gap: 6px;
  margin: 0;
  overflow: hidden;
  padding: 8px;
  position: relative;
  background: #ffffff;
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.changelog-shot a {
  border-radius: 6px;
  display: block;
  line-height: 0;
  outline-offset: 3px;
}

.changelog-shot img {
  aspect-ratio: 16 / 10;
  border: 1px solid var(--line);
  border-radius: 6px;
  cursor: zoom-in;
  display: block;
  object-fit: cover;
  width: 100%;
  max-width: 100%;
}

.changelog-shot figcaption {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
  margin: 0;
}

.changelog-shot-label {
  align-self: start;
  background: var(--brand-blue);
  border-radius: 999px;
  color: #ffffff;
  font-size: 11px;
  font-weight: 800;
  left: 14px;
  letter-spacing: .02em;
  padding: 5px 8px;
  position: absolute;
  text-transform: uppercase;
  top: 14px;
  z-index: 1;
}

@media (max-width: 860px) {
  .changelog-compare-grid {
    grid-template-columns: 1fr;
  }

  .changelog-entry {
    padding: 12px;
  }

  .changelog-screenshots,
  .changelog-shot {
    display: grid;
  }

  .process-parallel-action-grid,
  .role-dashboard-metrics {
    grid-template-columns: 1fr;
  }

  .process-parallel-actions-head {
    align-items: start;
    flex-direction: column;
  }
}

.route-results {
  display: grid;
  gap: 12px;
}

.workshop-pickup-address-list {
  background: #f8fbff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
  padding: 10px 12px;
}

.workshop-pickup-source-field {
  grid-column: span 2;
}

.workshop-delivery-address-field {
  grid-column: span 2;
  display: grid;
  gap: 8px;
}

.workshop-delivery-same-field {
  background: #f5f8fd;
  margin: 0;
}

.workshop-pickup-address-list > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}

.workshop-pickup-address-items {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.workshop-pickup-address-item {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 8px 10px;
}

.workshop-pickup-address-item.selected {
  border-color: var(--brand-blue);
  box-shadow: 0 0 0 2px rgba(0, 58, 150, .1);
}

.workshop-pickup-address-item strong {
  color: var(--brand-navy);
  font-size: 12px;
  line-height: 1.25;
}

.workshop-pickup-address-item span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.route-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  display: grid;
  gap: 10px;
}

.route-card.selected {
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(0, 58, 150, .12);
}

.route-card header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.workshop-order-prep {
  margin-top: 16px;
}

.workshop-invoice-list {
  display: grid;
  gap: 12px;
}

.workshop-invoice-completion-data {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .2);
  border-radius: 10px;
  display: grid;
  gap: 12px;
  margin: 16px 0;
  padding: 16px;
}

.workshop-invoice-completion-data legend {
  color: var(--navy);
  font-size: 16px;
  font-weight: 800;
  padding: 0 6px;
}

.workshop-invoice-completion-data > p {
  margin: 0;
}

.workshop-invoice-completion-options {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.workshop-invoice-completion-data.is-complete header {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.workshop-invoice-completion-data dl {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
}

.workshop-invoice-completion-data dl > div {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 12px;
}

.workshop-invoice-completion-data dt {
  color: var(--muted);
  font-size: 12px;
}

.workshop-invoice-completion-data dd {
  font-weight: 750;
  margin: 4px 0 0;
}

.workshop-invoice-package-confirmation {
  background: #fff8ed;
  border: 1px solid rgba(197, 103, 20, .3);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  margin: 16px 0;
  padding: 16px;
}

.workshop-invoice-package-confirmation > strong {
  color: var(--brand-navy);
  font-size: 16px;
}

.workshop-invoice-package-confirmation .check-row {
  background: #fff;
  border-color: rgba(197, 103, 20, .22);
  margin: 0;
}

@media (max-width: 760px) {
  .workshop-invoice-completion-options,
  .workshop-invoice-completion-data dl {
    grid-template-columns: 1fr;
  }
}

.invoice-approval-board {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.invoice-approval-board-header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.invoice-approval-board-header strong,
.invoice-approval-board-header span {
  display: block;
}

.invoice-approval-board-header span {
  color: var(--muted);
  font-size: 13px;
}

.invoice-approval-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.invoice-approval-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 12px;
}

.invoice-approval-card strong,
.invoice-approval-card span,
.invoice-approval-card em {
  display: block;
}

.invoice-approval-card span {
  color: var(--muted);
  font-size: 13px;
}

.invoice-approval-card em {
  color: var(--brand-orange-dark);
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
}

.invoice-approval-card.is-approved {
  border-color: rgba(23, 114, 69, .28);
}

.invoice-approval-card.is-approved em {
  color: var(--green);
}

.workshop-invoice-row {
  background: #ffffff;
}

.workshop-invoice-repair-upload {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr);
  margin: 12px 0;
}

.workshop-invoice-repair-upload > * {
  min-width: 0;
}

.workshop-invoice-extraction {
  background: #ffffff;
}

.workshop-invoice-extraction > header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.workshop-invoice-extraction > header > div {
  display: grid;
  gap: 3px;
}

.workshop-invoice-extraction > header strong {
  color: var(--brand-navy);
}

.workshop-invoice-extraction-result {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .13);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 10px 12px;
}

.workshop-invoice-extraction-result strong,
.workshop-invoice-extraction-result p {
  margin: 0;
}

.workshop-invoice-extraction-result.success {
  background: #f3fbf6;
  border-color: rgba(23, 114, 69, .28);
}

.workshop-invoice-extraction-result.warning {
  background: #fff8ef;
  border-color: rgba(186, 92, 0, .28);
}

.workshop-invoice-scan {
  align-items: center;
  background: #eef5ff;
  border: 1px solid rgba(0, 58, 150, .18);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: 42px minmax(0, 1fr);
  padding: 11px 12px;
}

.workshop-invoice-scan[hidden] {
  display: none;
}

.workshop-invoice-scan > div {
  display: grid;
  gap: 2px;
}

.workshop-invoice-scan-icon {
  animation: workshop-invoice-scan-pulse 1.2s ease-in-out infinite;
  background:
    linear-gradient(var(--brand-blue), var(--brand-blue)) 11px 12px / 20px 2px no-repeat,
    linear-gradient(var(--brand-blue), var(--brand-blue)) 11px 19px / 16px 2px no-repeat,
    linear-gradient(var(--brand-blue), var(--brand-blue)) 11px 26px / 18px 2px no-repeat,
    #ffffff;
  border: 2px solid var(--brand-blue);
  border-radius: 8px;
  display: block;
  height: 42px;
  position: relative;
  width: 42px;
}

.workshop-invoice-scan-icon::after {
  animation: workshop-invoice-scan-line 1.2s ease-in-out infinite;
  background: var(--brand-orange);
  border-radius: 99px;
  box-shadow: 0 0 8px rgba(246, 135, 18, .6);
  content: "";
  height: 3px;
  left: 5px;
  position: absolute;
  right: 5px;
  top: 8px;
}

@keyframes workshop-invoice-scan-pulse {
  50% { box-shadow: 0 0 0 5px rgba(0, 58, 150, .09); }
}

@keyframes workshop-invoice-scan-line {
  50% { transform: translateY(22px); }
}

.workshop-invoice-comparison {
  display: grid;
  gap: 10px;
}

.workshop-invoice-comparison[hidden] {
  display: none;
}

.workshop-invoice-comparison-status {
  align-items: center;
  border: 1px solid;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: 10px minmax(0, 1fr);
  padding: 10px 12px;
}

.workshop-invoice-comparison-status > span {
  background: currentColor;
  border-radius: 50%;
  height: 10px;
  width: 10px;
}

.workshop-invoice-comparison-status > div {
  display: grid;
  gap: 2px;
}

.workshop-invoice-comparison-status p {
  color: var(--muted);
  font-size: 12px;
  margin: 0;
}

.workshop-invoice-comparison-status.is-success {
  background: #f3fbf6;
  border-color: rgba(23, 114, 69, .26);
  color: var(--green);
}

.workshop-invoice-comparison-status.is-warning {
  background: #fff8ef;
  border-color: rgba(186, 92, 0, .26);
  color: var(--brand-orange-dark);
}

.workshop-invoice-comparison-status.is-critical {
  background: #fff3f3;
  border-color: rgba(177, 37, 37, .3);
  color: #a51f1f;
}

.workshop-invoice-comparison-summary {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.workshop-invoice-comparison-summary > div {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 9px 10px;
}

.workshop-invoice-comparison-summary span,
.workshop-invoice-comparison-summary small {
  color: var(--muted);
}

.workshop-invoice-comparison-summary span {
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.workshop-invoice-comparison-summary strong {
  color: var(--brand-navy);
  font-size: 17px;
}

.workshop-invoice-comparison-summary small {
  font-size: 10px;
  overflow-wrap: anywhere;
}

.workshop-invoice-comparison-table-wrap {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow-x: auto;
}

.workshop-invoice-comparison-table {
  border-collapse: collapse;
  font-size: 12px;
  width: 100%;
}

.workshop-invoice-comparison-table th,
.workshop-invoice-comparison-table td {
  border-bottom: 1px solid var(--line);
  padding: 7px 8px;
  text-align: right;
  white-space: nowrap;
}

.workshop-invoice-comparison-table th:first-child {
  text-align: left;
}

.workshop-invoice-comparison-table thead th {
  background: #eef4fb;
  color: var(--brand-navy);
  font-size: 10px;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.workshop-invoice-comparison-table tbody tr.has-deviation {
  background: #fff8ef;
}

.workshop-invoice-comparison-table tbody tr.has-deviation td:last-child {
  color: var(--brand-orange-dark);
  font-weight: 800;
}

.workshop-invoice-comparison-table tfoot th,
.workshop-invoice-comparison-table tfoot td {
  background: var(--surface-blue);
  border-bottom: 0;
  color: var(--brand-navy);
  font-weight: 850;
}

.workshop-invoice-confirmation {
  margin: 0;
}

.workshop-invoice-editor {
  display: grid;
}

.workshop-estimate-extraction.is-compact .workshop-invoice-editor .workshop-estimate-editor-control {
  grid-template-columns: minmax(0, 1fr) minmax(78px, .55fr);
}

.workshop-estimate-extraction.is-compact .workshop-invoice-editor .workshop-estimate-metadata-grid {
  grid-template-columns: minmax(0, 1fr);
}

@media (max-width: 1080px) {
  .workshop-invoice-repair-upload {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .workshop-invoice-extraction > header {
    align-items: flex-start;
    flex-direction: column;
  }

  .workshop-invoice-comparison-summary {
    grid-template-columns: 1fr;
  }
}

.workshop-portal-overview {
  background:
    linear-gradient(135deg, rgba(0, 58, 150, .07), rgba(246, 135, 18, .05)),
    #ffffff;
  border: 1px solid rgba(0, 58, 150, .13);
  border-radius: 8px;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(230px, .76fr) minmax(0, 1.24fr);
  margin: 16px 0 0;
  overflow: hidden;
  padding: 16px;
}

.workshop-portal-vehicle {
  align-content: space-between;
  background: var(--brand-navy);
  border-radius: 8px;
  color: #ffffff;
  display: grid;
  gap: 14px;
  min-height: 178px;
  min-width: 0;
  padding: 18px;
}

.workshop-portal-vehicle > span,
.workshop-portal-fact > span,
.workshop-portal-plate span,
.workshop-portal-vin span {
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.workshop-portal-vehicle > span,
.workshop-portal-plate span,
.workshop-portal-vin span {
  color: rgba(255, 255, 255, .72);
}

.workshop-portal-vehicle strong {
  color: #ffffff;
  font-size: 20px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.workshop-portal-plate,
.workshop-portal-vin {
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 11px 12px;
}

.workshop-portal-plate b,
.workshop-portal-vin b {
  color: #ffffff;
  font-size: 17px;
  overflow-wrap: anywhere;
}

.workshop-portal-overview-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  min-width: 0;
}

.workshop-portal-fact {
  align-content: start;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(0, 58, 150, .1);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 13px;
}

.workshop-portal-fact > span {
  color: var(--brand-orange-dark);
}

.workshop-portal-fact strong,
.workshop-portal-fact p {
  color: var(--brand-navy);
  font-size: 14px;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
}

.workshop-portal-contact {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.workshop-portal-contact span {
  align-items: center;
  color: var(--brand-navy);
  display: flex;
  flex-wrap: wrap;
  font-size: 13px;
  font-weight: 800;
  gap: 6px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.workshop-portal-contact em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
}

.workshop-portal-fact.is-description {
  grid-column: 1 / -1;
}

.workshop-portal-pill-row {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.workshop-portal-pill {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 5px;
  line-height: 1.25;
  min-height: 30px;
  overflow-wrap: anywhere;
  padding: 6px 9px;
}

.workshop-portal-pill em {
  color: var(--muted);
  font-style: normal;
  font-weight: 850;
}

.workshop-portal-pill.is-strong {
  background: var(--surface-blue);
  border-color: var(--brand-blue-soft-2);
}

.workshop-portal-pill.is-positive {
  background: #e8f6ee;
  border-color: rgba(23, 114, 69, .24);
  color: var(--green);
}

.workshop-portal-pill.is-critical {
  background: #fff0ed;
  border-color: rgba(180, 35, 24, .22);
  color: var(--red);
}

.workshop-portal-pill.is-neutral {
  background: var(--surface-soft);
  color: var(--muted);
}

.workshop-portal-header-panel {
  margin-bottom: 14px;
}

.workshop-reduced-approval-status {
  background: #fff3df;
  border-color: rgba(205, 108, 15, .34);
  color: #8d4707;
  max-width: min(430px, 100%);
  white-space: normal;
}

.workshop-reduced-approval-notice {
  background:
    radial-gradient(circle at 94% 8%, rgba(246, 135, 18, .18), transparent 32%),
    linear-gradient(135deg, #fff8ed 0%, #ffffff 68%);
  border-color: rgba(205, 108, 15, .35);
  border-left: 6px solid var(--brand-orange);
  display: grid;
  gap: 10px;
  margin-bottom: 14px;
  padding: 14px 16px;
}

.workshop-reduced-approval-heading {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.workshop-reduced-approval-heading h2 {
  color: var(--brand-navy);
  font-size: clamp(1.12rem, 1.7vw, 1.3rem);
  margin: 2px 0 0;
}

.workshop-reduced-approval-eyebrow {
  color: #9a4c05;
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.workshop-reduced-approval-amount {
  background: #ffffff;
  border: 1px solid rgba(205, 108, 15, .3);
  border-radius: 999px;
  color: #7c3d04;
  flex: 0 0 auto;
  font-size: 13px;
  font-weight: 900;
  padding: 6px 10px;
}

.workshop-reduced-approval-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
}

.workshop-reduced-approval-copy,
.workshop-reduced-approval-contact {
  background: rgba(255, 255, 255, .9);
  border: 1px solid rgba(205, 108, 15, .2);
  border-radius: 10px;
  min-width: 0;
  padding: 10px 12px;
}

.workshop-reduced-approval-copy > strong,
.workshop-reduced-approval-contact strong {
  color: var(--brand-navy);
}

.workshop-reduced-approval-copy > p,
.workshop-reduced-approval-contact p {
  color: var(--ink);
  line-height: 1.35;
  margin: 4px 0 0;
}

.workshop-reduced-approval-reason {
  background: #fff7ea;
  border: 1px solid rgba(205, 108, 15, .2);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  margin-top: 8px;
  padding: 8px 10px;
}

.workshop-reduced-approval-reason span {
  color: #8d4707;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.workshop-reduced-approval-contact {
  align-items: start;
  display: grid;
  gap: 8px 10px;
  grid-template-columns: 34px minmax(0, 1fr);
}

.workshop-reduced-approval-contact-icon {
  align-items: center;
  background: var(--brand-orange);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 18px;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.workshop-reduced-approval-contact .button {
  display: grid;
  gap: 2px;
  grid-column: 1 / -1;
  justify-content: center;
  line-height: 1.15;
  padding: 7px 10px;
  text-align: center;
  white-space: normal;
}

.workshop-reduced-approval-contact .button strong {
  color: inherit;
  white-space: nowrap;
}

.workshop-invoice-correction-mode {
  background: #ffffff;
  border: 1px solid #c8d4e3;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 29, 75, .06);
  margin: -20px -20px 24px;
  overflow: hidden;
}

.workshop-invoice-correction-header {
  background: var(--brand-navy);
  padding: 18px 26px;
}

.panel .workshop-invoice-correction-header h2 {
  color: #ffffff;
  font-size: 20px;
  line-height: 1.3;
  margin: 0;
}

.workshop-invoice-correction-body {
  display: grid;
  gap: 18px;
  padding: 16px 26px 20px;
}

.workshop-invoice-correction-status {
  background: #fff0f0;
  border: 1px solid #d64545;
  border-radius: 6px;
  color: var(--brand-navy);
  display: grid;
  gap: 5px;
  padding: 13px 18px;
}

.workshop-invoice-correction-status strong {
  font-size: 14px;
}

.workshop-invoice-correction-status span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.workshop-invoice-correction-references {
  display: grid;
  gap: 16px;
}

.workshop-invoice-correction-reference,
.workshop-invoice-correction-invoice,
.workshop-invoice-correction-reason {
  min-width: 0;
}

.workshop-invoice-correction-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
}

.workshop-invoice-correction-grid h3 {
  color: var(--brand-navy);
  font-size: 14px;
  margin: 0 0 9px;
}

.workshop-invoice-correction-invoice dl {
  border: 1px solid #d7e0eb;
  margin: 0;
}

.workshop-invoice-correction-invoice dl > div {
  display: grid;
  grid-template-columns: minmax(130px, 1fr) minmax(120px, 1fr);
}

.workshop-invoice-correction-invoice dl > div + div {
  border-top: 1px solid #d7e0eb;
}

.workshop-invoice-correction-invoice dt,
.workshop-invoice-correction-invoice dd {
  line-height: 1.35;
  margin: 0;
  overflow-wrap: anywhere;
  padding: 9px 12px;
}

.workshop-invoice-correction-invoice dt {
  background: #f7f9fc;
  color: var(--muted);
  font-size: 11px;
}

.workshop-invoice-correction-invoice dd {
  border-left: 1px solid #d7e0eb;
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 800;
}

.workshop-invoice-correction-reason > div {
  align-content: start;
  background: #fff4e8;
  border: 1px solid var(--brand-orange);
  border-radius: 6px;
  color: #4a5568;
  display: grid;
  font-size: 12px;
  line-height: 1.45;
  min-height: 100px;
  overflow-wrap: anywhere;
  padding: 18px;
}

.workshop-invoice-correction-actions {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.workshop-invoice-correction-actions .button,
.workshop-invoice-correction-phone-missing {
  align-items: center;
  border-radius: 6px;
  display: grid;
  justify-content: center;
  min-height: 58px;
  padding: 10px 16px;
  text-align: center;
  white-space: normal;
}

.workshop-invoice-correction-upload-action {
  background: var(--brand-blue);
  color: #ffffff;
}

.workshop-invoice-correction-phone-action.button.secondary {
  background: #ffffff;
  border: 2px solid var(--brand-blue);
  color: var(--brand-blue);
  gap: 2px;
}

.workshop-invoice-correction-phone-action strong {
  color: inherit;
  font-size: 11px;
}

.workshop-invoice-correction-phone-missing {
  border: 1px solid #c8d4e3;
  color: var(--brand-blue);
  gap: 3px;
}

.workshop-invoice-correction-phone-missing span {
  color: var(--muted);
  font-size: 11px;
}

.panel .workshop-invoice-correction-note {
  color: var(--muted);
  font-size: 11px;
  margin: 0;
}

.workshop-invoice-correction-upload {
  scroll-margin-top: 18px;
}

.workshop-invoice-correction-upload-heading {
  border-bottom: 1px solid #d7e0eb;
  margin-bottom: 18px;
  padding-bottom: 12px;
}

.workshop-invoice-correction-upload-heading p {
  font-size: 12px;
  margin: 4px 0 0;
}

@media (max-width: 760px) {
  .workshop-invoice-correction-header,
  .workshop-invoice-correction-body {
    padding-left: 16px;
    padding-right: 16px;
  }

  .workshop-invoice-correction-grid,
  .workshop-invoice-correction-actions {
    gap: 16px;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .workshop-invoice-correction-invoice dl > div {
    grid-template-columns: 1fr;
  }

  .workshop-invoice-correction-invoice dd {
    border-left: 0;
    border-top: 1px solid #d7e0eb;
  }
}

.workshop-portal-tabs-shell {
  display: grid;
  gap: 0;
}

.workshop-portal-tabs {
  align-items: stretch;
  background: linear-gradient(180deg, #f8fbff 0%, #eaf2fb 100%);
  border: 1px solid rgba(0, 58, 150, .18);
  border-bottom: 2px solid var(--brand-blue);
  border-radius: 8px 8px 0 0;
  display: flex;
  gap: 4px;
  overflow-x: auto;
  padding: 10px 10px 0;
}

.workshop-portal-tab {
  appearance: none;
  background: #edf3fa;
  border: 1px solid #c9d8ea;
  border-bottom-color: var(--brand-blue);
  border-radius: 8px 8px 0 0;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .85);
  color: #536071;
  cursor: pointer;
  display: grid;
  flex: 1 1 150px;
  gap: 3px;
  margin-bottom: -2px;
  min-height: 66px;
  min-width: 148px;
  padding: 13px 14px 12px;
  position: relative;
  text-align: left;
  transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, color .16s ease, transform .16s ease;
}

.workshop-portal-tab::before {
  background: transparent;
  border-radius: 999px;
  content: "";
  height: 3px;
  left: 12px;
  position: absolute;
  right: 12px;
  top: 6px;
}

.workshop-portal-tab:hover,
.workshop-portal-tab:focus-visible {
  background: #f8fbff;
  border-color: rgba(0, 58, 150, .34);
  outline: none;
  transform: translateY(-1px);
}

.workshop-portal-tab.active {
  background: #ffffff;
  border-color: var(--brand-blue);
  border-bottom-color: #ffffff;
  box-shadow: 0 -10px 20px rgba(0, 58, 150, .10), inset 0 1px 0 #ffffff;
  color: var(--brand-navy);
  z-index: 2;
}

.workshop-portal-tab.active::before {
  background: var(--brand-orange);
}

.workshop-portal-tab.is-attention:not(.active) {
  background: #fff7ed;
  border-color: rgba(246, 135, 18, .36);
}

.workshop-portal-tab.is-locked:not(.active) {
  background: #fff7ed;
}

.workshop-portal-tabs-shell.is-unified-navigation .workshop-portal-tab:is(.is-attention, .is-locked):not(.active):not(.is-process-active) {
  background: #edf3fa;
  border-color: #c9d8ea;
}

.workshop-portal-tab strong,
.workshop-portal-tab small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.workshop-portal-tab strong {
  color: inherit;
  font-size: 14px;
  line-height: 1.2;
}

.workshop-portal-tab small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
}

.workshop-portal-tab.has-step-summary {
  flex-basis: 210px;
}

.workshop-portal-tab.has-process-series {
  flex: 2.35 1 520px;
  min-width: 440px;
}

.workshop-portal-tab-heading {
  align-items: center;
  display: flex;
  gap: 9px;
  min-width: 0;
}

.workshop-portal-tab-icon {
  align-items: center;
  background: #e4eefb;
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  flex: 0 0 auto;
  height: 32px;
  justify-content: center;
  width: 32px;
}

.workshop-portal-tab-icon svg {
  fill: none;
  height: 18px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 18px;
}

.workshop-portal-tab-step-summary,
.workshop-portal-tab-process-item {
  align-items: center;
  color: var(--muted);
  display: inline-flex;
  font-size: 11px;
  font-weight: 800;
  gap: 6px;
  line-height: 1.2;
  min-width: 0;
}

.workshop-portal-tab-step-summary {
  margin-left: 41px;
}

.workshop-portal-tab-step-index {
  align-items: center;
  background: #edf1f6;
  border-radius: 999px;
  color: #536071;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 11px;
  height: 22px;
  justify-content: center;
  width: 22px;
}

.workshop-portal-tab-step-summary.is-done,
.workshop-portal-tab-process-item.is-done {
  color: #137a42;
}

.workshop-portal-tab-step-summary.is-done .workshop-portal-tab-step-index,
.workshop-portal-tab-process-item.is-done .workshop-portal-tab-step-index {
  background: #dff5e8;
  color: #137a42;
}

.workshop-portal-tab-step-summary.is-active,
.workshop-portal-tab-process-item.is-active {
  color: #a85308;
}

.workshop-portal-tab-step-summary.is-active .workshop-portal-tab-step-index,
.workshop-portal-tab-process-item.is-active .workshop-portal-tab-step-index {
  background: #fff0d8;
  color: #d96f08;
}

.workshop-portal-tab-process-series {
  align-items: center;
  display: flex;
  gap: 8px;
  margin-left: 0;
  min-width: 0;
}

.workshop-portal-tab-process-item {
  flex: 0 1 auto;
  font-size: 10px;
}

.workshop-portal-tab-process-item[data-workshop-portal-process-target] {
  border-radius: 5px;
  padding: 2px 3px;
  transition: background .16s ease, box-shadow .16s ease;
}

.workshop-portal-tab-process-item[data-workshop-portal-process-target]:hover {
  background: rgba(0, 58, 150, .08);
  box-shadow: 0 0 0 1px rgba(0, 58, 150, .12);
}

[data-workshop-portal-process-section] {
  scroll-margin-top: 16px;
}

.workshop-portal-tab.is-process-done .workshop-portal-tab-icon {
  background: #dff5e8;
  color: #159455;
}

.workshop-portal-tab.is-process-active .workshop-portal-tab-icon {
  background: #fff0d8;
  color: var(--brand-orange);
}

.workshop-portal-tab-tooltip {
  display: none;
}

.workshop-portal-tab-panels {
  border-top: 0;
  padding-top: 16px;
}

.workshop-portal-tab-panel {
  display: grid;
  gap: 18px;
}

.workshop-portal-tab-panel[hidden] {
  display: none !important;
}

.workshop-portal-tab-panel > .panel {
  margin: 0;
}

.workshop-submissions-panel {
  border-top: 3px solid var(--brand-orange);
  display: grid;
  gap: 18px;
  padding: 20px;
}

.workshop-submissions-header {
  align-items: center;
  gap: 18px;
  margin: 0;
}

.workshop-submissions-header h2,
.workshop-submissions-header p {
  margin: 0;
}

.workshop-submissions-header h2 {
  color: var(--brand-navy);
  font-size: 20px;
  margin-top: 2px;
}

.workshop-submissions-header p {
  margin-top: 4px;
}

.workshop-submissions-kicker,
.workshop-submission-eyebrow {
  color: var(--brand-orange-dark);
  display: block;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .07em;
  line-height: 1.2;
  text-transform: uppercase;
}

.workshop-submissions-summary {
  align-items: stretch;
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.workshop-submissions-summary > span {
  align-items: center;
  background: #f2f7fd;
  border: 1px solid rgba(0, 58, 150, .13);
  border-radius: 8px;
  color: var(--muted);
  display: flex;
  font-size: 12px;
  font-weight: 800;
  gap: 6px;
  min-height: 40px;
  padding: 8px 12px;
}

.workshop-submissions-summary strong {
  color: var(--brand-blue);
  font-size: 16px;
}

.workshop-submission-groups {
  display: grid;
  gap: 16px;
}

.workshop-submission-group {
  background: #f8fbff;
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 10px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.workshop-submission-group.is-supplements {
  background: #fffaf4;
  border-color: rgba(246, 135, 18, .22);
}

.workshop-submission-group.is-invoices {
  background: #f6fcf8;
  border-color: rgba(21, 148, 85, .18);
}

.workshop-submission-group.is-invoiceDocuments {
  background: #fafbfc;
  border-color: rgba(74, 87, 104, .14);
}

.workshop-submission-group-head {
  align-items: center;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.workshop-submission-group-head h3,
.workshop-submission-group-head p {
  margin: 0;
}

.workshop-submission-group-head h3 {
  color: var(--brand-navy);
  font-size: 16px;
}

.workshop-submission-group-head p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  margin-top: 2px;
}

.workshop-submission-group-head .pill {
  flex: 0 0 auto;
}

.workshop-submission-card-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
}

.workshop-submission-card {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .13);
  border-left: 4px solid var(--brand-blue);
  border-radius: 9px;
  box-shadow: 0 5px 14px rgba(0, 29, 75, .04);
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 14px;
}

.is-supplements .workshop-submission-card {
  border-left-color: var(--brand-orange);
}

.is-invoices .workshop-submission-card {
  border-left-color: #159455;
}

.is-invoiceDocuments .workshop-submission-card {
  border-left-color: #718096;
}

.workshop-submission-card-head {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.workshop-submission-card-head h4 {
  color: var(--brand-navy);
  font-size: 15px;
  line-height: 1.3;
  margin: 3px 0 0;
  overflow-wrap: anywhere;
}

.workshop-submission-card-head > .pill,
.workshop-submission-card-head > .badge {
  flex: 0 0 auto;
}

.workshop-submission-facts {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(auto-fit, minmax(124px, 1fr));
}

.workshop-submission-facts > div {
  background: #f7f9fc;
  border-radius: 6px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 7px 9px;
}

.workshop-submission-facts span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.workshop-submission-facts strong {
  color: var(--brand-navy);
  font-size: 11px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.workshop-submission-files {
  display: grid;
  gap: 6px;
}

.workshop-submission-file {
  align-items: center;
  background: #ffffff;
  border: 1px solid #d9e3ef;
  border-radius: 7px;
  color: inherit;
  display: grid;
  gap: 9px;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  min-width: 0;
  padding: 8px 9px;
  text-decoration: none;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

a.workshop-submission-file:hover,
a.workshop-submission-file:focus-visible {
  border-color: rgba(0, 58, 150, .42);
  box-shadow: 0 5px 12px rgba(0, 58, 150, .08);
  outline: none;
  transform: translateY(-1px);
}

.workshop-submission-file.is-unavailable {
  background: #f8f9fb;
  color: var(--muted);
}

.workshop-submission-file-type {
  align-items: center;
  background: #edf3fa;
  border-radius: 5px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 9px;
  font-weight: 900;
  height: 32px;
  justify-content: center;
  letter-spacing: .03em;
  width: 38px;
}

.workshop-submission-file-type.is-pdf {
  background: #fff0e4;
  color: #bd5e0b;
}

.workshop-submission-file-copy {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.workshop-submission-file-copy strong {
  color: var(--brand-navy);
  font-size: 11px;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workshop-submission-file-copy small {
  color: var(--muted);
  font-size: 9px;
}

.workshop-submission-file-action {
  background: #eaf2fd;
  border-radius: 5px;
  color: var(--brand-blue);
  font-size: 10px;
  font-weight: 900;
  padding: 6px 8px;
  white-space: nowrap;
}

.workshop-submission-file.is-unavailable .workshop-submission-file-action {
  background: #edf0f4;
  color: #697586;
  white-space: normal;
}

.workshop-submissions-empty {
  margin: 0;
}

.workshop-portal-order-tab {
  display: grid;
  gap: 14px;
}

.workshop-portal-order-tab .workshop-portal-overview {
  margin-top: 0;
}

.workshop-portal-next-step {
  align-items: center;
  background: linear-gradient(135deg, #eef5ff 0%, #ffffff 72%);
  border: 1px solid rgba(0, 58, 150, .2);
  border-left: 5px solid var(--brand-orange);
  border-radius: 10px;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  padding: 18px 20px;
}

.workshop-portal-next-step > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.workshop-portal-next-step > div > span {
  color: var(--brand-orange-dark);
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.workshop-portal-next-step h2,
.workshop-portal-next-step p {
  margin: 0;
}

.workshop-portal-next-step h2 {
  color: var(--brand-navy);
  font-size: 1.08rem;
}

.workshop-portal-next-step p {
  color: var(--muted);
  line-height: 1.45;
}

.workshop-portal-next-step .button {
  flex: 0 0 auto;
  min-width: 220px;
}

.workshop-portal-next-step.is-waiting {
  background: linear-gradient(135deg, #fff8ed 0%, #ffffff 72%);
}

.workshop-action-switcher {
  display: grid;
  gap: 14px;
  margin: 18px 0;
}

.workshop-action-heading h2 {
  color: var(--brand-navy);
  font-size: 18px;
  line-height: 1.25;
  margin: 0;
}

.workshop-action-card-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(188px, 1fr));
}

.workshop-action-card {
  appearance: none;
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  color: var(--brand-navy);
  cursor: pointer;
  display: grid;
  gap: 9px;
  min-height: 158px;
  min-width: 0;
  padding: 14px;
  text-align: left;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.workshop-action-card:hover,
.workshop-action-card:focus-visible {
  border-color: rgba(0, 58, 150, .42);
  box-shadow: 0 10px 24px rgba(0, 29, 75, .08);
  outline: none;
  transform: translateY(-1px);
}

.workshop-action-card.active {
  background: var(--surface-blue);
  border-color: var(--brand-blue);
  box-shadow: 0 0 0 2px rgba(0, 58, 150, .13);
}

.workshop-action-card.is-waiting {
  border-color: rgba(246, 135, 18, .34);
}

.workshop-action-card-head {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.workshop-action-icon {
  align-items: center;
  background:
    linear-gradient(135deg, rgba(0, 58, 150, .05), rgba(255, 255, 255, .92)),
    #ffffff;
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 8px;
  color: var(--brand-blue);
  display: inline-flex;
  height: 44px;
  justify-content: center;
  min-height: 44px;
  position: relative;
  width: 52px;
}

.workshop-action-icon::after {
  background: rgba(0, 58, 150, .16);
  border-radius: 999px;
  bottom: 7px;
  content: "";
  height: 2px;
  left: 13px;
  position: absolute;
  width: 26px;
}

.workshop-action-icon svg {
  fill: none;
  height: 34px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
  width: 44px;
}

.workshop-action-card-check {
  border: 2px solid rgba(0, 58, 150, .22);
  border-radius: 999px;
  display: inline-grid;
  flex: 0 0 auto;
  height: 20px;
  place-items: center;
  width: 20px;
}

.workshop-action-card.active .workshop-action-card-check {
  background: var(--brand-blue);
  border-color: var(--brand-blue);
}

.workshop-action-card.active .workshop-action-card-check::after {
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  content: "";
  height: 8px;
  transform: rotate(45deg) translate(-1px, -1px);
  width: 4px;
}

.workshop-action-card strong,
.workshop-action-card span,
.workshop-action-card em {
  min-width: 0;
}

.workshop-action-card > strong {
  color: var(--brand-navy);
  display: block;
  font-size: 14px;
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.workshop-action-card > span:not(.workshop-action-card-head) {
  color: var(--muted);
  display: block;
  font-size: 12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.workshop-action-card em {
  align-self: end;
  color: var(--brand-orange-dark);
  display: block;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.workshop-action-card.is-neutral em {
  color: var(--muted);
}

.workshop-action-card.is-waiting em {
  color: var(--brand-orange-dark);
}

.workshop-action-panels {
  display: grid;
}

.workshop-action-content[hidden] {
  display: none !important;
}

.workshop-action-content > .panel {
  margin: 0;
}

.workshop-pickup-panel {
  background: #f4f7fb;
  border-color: rgba(0, 58, 150, .12);
  overflow: hidden;
  padding: 0 0 28px;
}

.workshop-pickup-intro {
  align-items: center;
  background:
    radial-gradient(circle at 92% 12%, rgba(255, 151, 0, .18), transparent 26%),
    linear-gradient(120deg, #ffffff 0%, #f1f6fd 100%);
  border-bottom: 1px solid rgba(0, 58, 150, .12);
  display: flex;
  gap: 16px;
  padding: 22px clamp(20px, 3vw, 34px);
}

.workshop-pickup-intro-icon {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0, 39, 102, .08);
  display: inline-flex;
  flex: 0 0 auto;
  height: 60px;
  justify-content: center;
  width: 64px;
}

.workshop-pickup-intro-icon > .workshop-action-icon {
  background: transparent;
  border: 0;
  height: 48px;
  width: 54px;
}

.workshop-pickup-intro-icon > .workshop-action-icon::after {
  bottom: 5px;
}

.workshop-pickup-intro h2 {
  color: var(--brand-navy);
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  margin: 2px 0 4px;
}

.workshop-pickup-intro p {
  color: var(--muted);
  margin: 0;
}

.workshop-pickup-eyebrow {
  color: var(--brand-orange-dark);
  display: block;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.workshop-pickup-form {
  display: grid;
  gap: 18px;
  margin: 24px auto 0;
  max-width: none;
  padding: 0 clamp(16px, 2.5vw, 28px);
  width: 100%;
}

.workshop-pickup-section,
.workshop-process-path-field,
.workshop-pickup-method-field,
.workshop-pickup-submit-row {
  background: #ffffff;
  border: 1px solid rgba(28, 50, 74, .13);
  border-radius: 14px;
  box-shadow: 0 4px 14px rgba(22, 43, 67, .04);
  padding: 18px 20px 20px;
}

.workshop-pickup-section-head,
.workshop-process-path-field legend,
.workshop-pickup-method-field legend {
  align-items: center;
  display: flex;
  gap: 12px;
}

.workshop-process-path-field legend,
.workshop-pickup-method-field legend {
  background: #ffffff;
  border-radius: 10px;
  margin-left: -4px;
  max-width: calc(100% + 8px);
  padding: 0 4px;
}

.workshop-pickup-step {
  align-items: center;
  background: #fff1dc;
  border: 1px solid rgba(244, 139, 0, .28);
  border-radius: 999px;
  color: var(--brand-orange-dark);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: .8rem;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.workshop-pickup-section-title {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.workshop-pickup-section-title h3,
.workshop-pickup-section-title strong {
  color: var(--brand-navy);
  font-size: .98rem;
  font-weight: 850;
  line-height: 1.25;
  margin: 0;
}

.workshop-pickup-section-title p,
.workshop-pickup-section-title small {
  color: var(--muted);
  font-size: .8rem;
  font-weight: 600;
  line-height: 1.35;
  margin: 0;
}

.form-grid.two.workshop-pickup-date-grid {
  gap: 16px;
  grid-template-columns: minmax(220px, .95fr) minmax(280px, 1.05fr);
  margin-top: 16px;
}

.workshop-pickup-estimate-reminder {
  align-items: center;
  background: linear-gradient(135deg, #fff8ed 0%, #ffffff 100%);
  border: 1px solid rgba(205, 108, 15, .3);
  border-left: 4px solid var(--brand-orange);
  border-radius: 10px;
  color: #6f3a08;
  display: flex;
  gap: 12px;
  margin-top: 14px;
  padding: 11px 14px;
}

.workshop-pickup-estimate-reminder[hidden] {
  display: none;
}

.workshop-pickup-estimate-reminder .workshop-action-icon {
  background: #fff1dc;
  border-color: rgba(244, 139, 0, .28);
  color: var(--brand-orange-dark);
  flex: 0 0 38px;
  height: 38px;
  width: 38px;
}

.workshop-pickup-estimate-reminder > span:last-child {
  display: grid;
  gap: 2px;
}

.workshop-pickup-estimate-reminder strong {
  color: var(--brand-navy);
  font-size: .88rem;
}

.workshop-pickup-estimate-reminder span span {
  font-size: .8rem;
  font-weight: 650;
  line-height: 1.4;
}

.form-grid.three.workshop-pickup-confirmation-grid {
  align-items: start;
  column-gap: 16px;
  grid-template-columns: minmax(280px, 1.1fr) minmax(250px, .95fr) minmax(250px, .95fr);
  margin-top: 16px;
  row-gap: 16px;
}

.form-grid.two.workshop-pickup-confirmation-grid {
  align-items: start;
  column-gap: 18px;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  row-gap: 16px;
}

.workshop-pickup-location-confirmation {
  align-items: end;
  background: #f5f8fc;
  border: 1px solid rgba(0, 58, 150, .13);
  border-radius: 10px;
  display: grid;
  gap: 14px 18px;
  grid-template-columns: minmax(0, 1.45fr) minmax(220px, .55fr);
  margin-top: 16px;
  padding: 14px;
}

.workshop-pickup-location-question {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.workshop-pickup-location-question > span {
  color: var(--brand-orange-dark);
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.workshop-pickup-location-question > strong {
  color: var(--brand-navy);
  font-size: 1rem;
  line-height: 1.35;
}

.workshop-pickup-location-question address {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .1);
  border-left: 3px solid var(--brand-blue);
  border-radius: 6px;
  color: var(--brand-navy);
  font-style: normal;
  font-weight: 700;
  line-height: 1.4;
  padding: 8px 10px;
}

.workshop-pickup-location-confirmation > label {
  margin: 0;
}

.workshop-pickup-alternate-address {
  grid-column: 1 / -1;
}

.workshop-pickup-alternate-address[hidden] {
  display: none !important;
}

.workshop-pickup-choice-field {
  align-content: start;
  display: grid;
  gap: 12px;
  min-height: 0;
  min-width: 0;
}

.workshop-pickup-choice-label {
  color: var(--brand-navy);
  font-weight: 700;
  line-height: 1.25;
}

.workshop-pickup-choice-row {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.workshop-pickup-choice-row .inline-check {
  align-items: flex-start;
  background: #f8fafc;
  border: 1px solid rgba(28, 50, 74, .12);
  border-radius: 10px;
  color: var(--brand-navy);
  cursor: pointer;
  font-weight: 700;
  min-height: 76px;
  padding: 13px 14px;
  transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease, transform .16s ease;
}

.workshop-pickup-choice-row .inline-check:hover {
  border-color: rgba(0, 58, 150, .32);
  box-shadow: 0 4px 12px rgba(0, 58, 150, .07);
  transform: translateY(-1px);
}

.workshop-pickup-choice-row .inline-check:has(input:checked) {
  background: #eef5ff;
  border-color: var(--brand-blue);
  box-shadow: 0 0 0 2px rgba(0, 58, 150, .1);
}

.workshop-pickup-choice-row .inline-check input {
  accent-color: var(--brand-blue);
  flex: 0 0 auto;
  margin-top: 2px;
}

.workshop-process-path-field .inline-check span,
.workshop-pickup-method-field .inline-check span {
  display: grid;
  gap: 3px;
}

.workshop-process-path-field small,
.workshop-pickup-method-field small {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.35;
}

.workshop-pickup-method-field .workshop-pickup-choice-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.workshop-pickup-method-field > .fine {
  margin: 0 2px;
}

.workshop-pickup-method-field .inline-check.is-disabled {
  color: var(--muted);
  cursor: not-allowed;
  opacity: .7;
}

.workshop-pickup-method-field .inline-check.is-disabled:hover {
  border-color: rgba(28, 50, 74, .12);
  box-shadow: none;
  transform: none;
}

.workshop-pickup-process-panel {
  margin-top: 16px;
}

.form-grid.two.workshop-pickup-standard-grid,
.form-grid.two.workshop-pickup-pre-grid {
  align-items: start;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
}

.form-grid.two.workshop-pickup-standard-grid > label {
  align-content: start;
  display: grid;
  gap: 6px;
  grid-template-rows: minmax(24px, auto) 48px auto;
}

.form-grid.two.workshop-pickup-standard-grid > label > span:first-child {
  color: var(--brand-navy);
  font-weight: 700;
  line-height: 1.3;
}

.form-grid.two.workshop-pickup-standard-grid > label > input {
  margin: 0;
}

.form-grid.two.workshop-pickup-standard-grid > label > .fine {
  line-height: 1.35;
  margin: 0;
}

.workshop-pickup-fixed-status {
  align-items: center;
  background: #f3f7fc;
  border: 1px solid rgba(0, 58, 150, .15);
  border-radius: 8px;
  display: grid;
  gap: 6px 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-top: 16px;
  padding: 13px 14px;
}

.workshop-pickup-fixed-status > span {
  color: var(--brand-navy);
  font-weight: 800;
  line-height: 1.35;
}

.workshop-pickup-fixed-status > strong {
  color: var(--brand-navy);
  white-space: nowrap;
}

.workshop-pickup-fixed-status > strong b {
  background: var(--brand-blue);
  border-radius: 999px;
  color: #ffffff;
  display: inline-block;
  margin-right: 5px;
  min-width: 42px;
  padding: 4px 9px;
  text-align: center;
}

.workshop-pickup-fixed-status > .fine {
  grid-column: 1 / -1;
  margin: 0;
}

.workshop-pickup-mobility-field {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.workshop-pickup-mobility-label {
  color: var(--brand-navy);
  font-weight: 650;
}

.workshop-pickup-mobility-value {
  align-items: center;
  background: linear-gradient(135deg, rgba(248, 250, 252, .98), rgba(255, 255, 255, .98));
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: 34px minmax(0, 1fr);
  min-height: 48px;
  padding: 6px 10px;
}

.workshop-pickup-mobility-value.is-requested {
  background: linear-gradient(135deg, rgba(235, 244, 255, .92), rgba(255, 255, 255, .98));
  border-color: rgba(0, 58, 150, .2);
}

.workshop-pickup-mobility-icon {
  align-items: center;
  background: rgba(100, 116, 139, .09);
  border-radius: 8px;
  color: #64748b;
  display: inline-flex;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.workshop-pickup-mobility-value.is-requested .workshop-pickup-mobility-icon {
  background: rgba(0, 58, 150, .09);
  color: var(--brand-blue);
}

.workshop-pickup-mobility-icon svg {
  fill: none;
  height: 24px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.6;
  width: 28px;
}

.workshop-pickup-mobility-copy {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 3px 8px;
  min-width: 0;
}

.workshop-pickup-mobility-copy strong {
  color: var(--brand-navy);
  font-size: .92rem;
  line-height: 1.25;
  min-width: 0;
  overflow-wrap: anywhere;
}

.workshop-pickup-mobility-status {
  background: rgba(100, 116, 139, .1);
  border: 1px solid rgba(100, 116, 139, .16);
  border-radius: 999px;
  color: var(--muted);
  font-size: .69rem;
  font-weight: 750;
  line-height: 1;
  padding: 4px 7px;
  white-space: nowrap;
}

.workshop-pickup-mobility-value.is-requested .workshop-pickup-mobility-status {
  background: rgba(0, 58, 150, .08);
  border-color: rgba(0, 58, 150, .14);
  color: var(--brand-blue);
}

.workshop-pickup-note textarea {
  min-height: 82px;
}

.workshop-pickup-submit-row {
  align-items: end;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
}

.workshop-pickup-submit-row > .button {
  min-height: 48px;
  width: 100%;
}

.workshop-pre-estimate-panel {
  display: grid;
  gap: 16px;
}

.workshop-expected-calculation {
  margin: 0;
}

.workshop-clarification-panel form {
  display: grid;
  gap: 16px;
}

.workshop-pre-estimate-form {
  display: grid;
  gap: 18px;
  margin: 0 auto;
  max-width: none;
  width: 100%;
}

.workshop-process-path-only-panel form {
  display: grid;
  gap: 12px;
}

.workshop-process-path-only-panel .fine {
  margin: 0 2px;
}

.workshop-pre-estimate-planning,
.workshop-repair-planning-form {
  display: grid;
  gap: 16px;
}

.workshop-pre-estimate-planning {
  background: linear-gradient(135deg, rgba(238, 245, 255, .78), rgba(255, 255, 255, .96));
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 10px;
  padding: 16px;
}

.workshop-pre-estimate-planning h3,
.workshop-pre-estimate-planning p {
  margin: 0;
}

.workshop-pre-estimate-planning > label {
  max-width: 420px;
}

.workshop-pre-estimate-planning .workshop-pickup-method-field,
.workshop-repair-planning-form .workshop-pickup-method-field {
  margin: 0;
}

.workshop-repair-planning-panel {
  display: grid;
  gap: 18px;
}

.workshop-pre-estimate-follow-up-panel {
  display: grid;
  gap: 18px;
  overflow: hidden;
  padding: 0 0 24px;
}

.workshop-pre-estimate-follow-up-panel > .workshop-effective-calculation,
.workshop-pre-estimate-planning-form {
  margin-left: clamp(16px, 2.5vw, 28px);
  margin-right: clamp(16px, 2.5vw, 28px);
}

.workshop-pre-estimate-planning-form {
  display: grid;
  gap: 16px;
}

.workshop-pre-estimate-planning-form > label {
  max-width: 420px;
}

.workshop-pre-estimate-planning-form .workshop-pickup-method-field {
  margin: 0;
}

.workshop-pre-estimate-planning-form .form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.workshop-repair-planning-form > .button {
  justify-self: end;
  min-width: min(100%, 320px);
}

.workshop-repair-planning-location[hidden] {
  display: none;
}

.form-grid.three.workshop-pre-estimate-amount-grid {
  align-items: start;
  column-gap: 18px;
  grid-template-columns: repeat(3, minmax(210px, 1fr));
  row-gap: 16px;
}

.form-grid.three.workshop-pre-estimate-amount-grid > label {
  line-height: 1.35;
}

@media (min-width: 861px) {
  .form-grid.three.workshop-pre-estimate-amount-grid > label:nth-child(-n + 3) {
    grid-template-rows: minmax(38px, auto) auto;
  }
}

.form-grid.two.workshop-pre-estimate-upload-grid {
  align-items: stretch;
  gap: 16px;
  grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr) minmax(220px, .7fr);
}

.workshop-pre-estimate-upload-grid .damage-upload-wrap,
.workshop-pre-estimate-upload-grid .estimate-total-row {
  min-height: 100%;
}

.workshop-pre-estimate-upload-grid .damage-upload input {
  height: 1px;
  opacity: 0;
  padding: 0;
  position: absolute;
  width: 1px;
}

.workshop-pre-estimate-upload-grid .estimate-total-row {
  align-content: center;
}

.workshop-pre-estimate-note textarea {
  min-height: 96px;
}

.workshop-pre-estimate-form > .button {
  min-height: 44px;
}

.workshop-estimate-extraction {
  border: 1px solid rgba(28, 50, 74, .14);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.workshop-estimate-upload-flow {
  display: grid;
  gap: 12px;
}

.workshop-estimate-extraction-head {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.workshop-estimate-extraction-head > div {
  display: grid;
  gap: 3px;
}

.workshop-estimate-extraction-head strong {
  color: var(--brand-navy);
}

.workshop-estimate-extraction .actions {
  gap: 8px;
}

.workshop-estimate-plausibility {
  background: #fff4df;
  border: 1px solid rgba(174, 107, 0, .34);
  border-left: 4px solid #c77a00;
  border-radius: 8px;
  color: #6f4500;
  display: grid;
  gap: 4px;
  padding: 11px 12px;
}

.workshop-estimate-plausibility[hidden] {
  display: none;
}

.workshop-estimate-plausibility > span {
  font-size: .83rem;
  line-height: 1.45;
}

.workshop-estimate-analysis-layout,
.workshop-estimate-analysis-values {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.workshop-estimate-extraction.has-pdf-preview .workshop-estimate-analysis-layout {
  align-items: start;
  grid-template-columns: minmax(450px, .82fr) minmax(540px, 1.18fr);
}

.workshop-estimate-scan {
  background:
    radial-gradient(circle at 18% 20%, rgba(0, 89, 190, .10), transparent 34%),
    linear-gradient(135deg, #f7fbff, #edf5ff);
  border: 1px solid rgba(0, 89, 190, .20);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  overflow: hidden;
  padding: 14px;
}

.workshop-estimate-scan[hidden],
.workshop-estimate-pdf-preview[hidden] {
  display: none;
}

.workshop-estimate-scan-visual {
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(28, 50, 74, .10);
  border-radius: 9px;
  height: 176px;
  overflow: hidden;
  position: relative;
}

.workshop-estimate-scan-paper {
  background: #ffffff;
  border: 1px solid rgba(28, 50, 74, .22);
  border-radius: 6px;
  box-shadow: 0 12px 28px rgba(20, 48, 80, .12);
  display: grid;
  gap: 10px;
  height: 132px;
  left: 24px;
  padding: 20px 14px 14px;
  position: absolute;
  top: 21px;
  width: 96px;
}

.workshop-estimate-scan-paper::before {
  border-color: transparent #dceaff transparent transparent;
  border-style: solid;
  border-width: 0 18px 18px 0;
  content: "";
  position: absolute;
  right: 0;
  top: 0;
}

.workshop-estimate-scan-paper span {
  background: #dfe8f3;
  border-radius: 999px;
  display: block;
  height: 6px;
}

.workshop-estimate-scan-paper span:nth-child(2),
.workshop-estimate-scan-paper span:nth-child(5) {
  width: 68%;
}

.workshop-estimate-scan-paper i {
  animation: workshop-estimate-scan-line 1.65s ease-in-out infinite;
  background: linear-gradient(90deg, transparent, rgba(0, 120, 255, .88), transparent);
  box-shadow: 0 0 16px rgba(0, 120, 255, .48);
  height: 3px;
  left: -8px;
  position: absolute;
  right: -8px;
  top: 18px;
}

.workshop-estimate-scan-transfer {
  display: grid;
  gap: 9px;
  left: 134px;
  position: absolute;
  top: 32px;
}

.workshop-estimate-scan-transfer span {
  animation: workshop-estimate-value-flow 2.35s ease-in-out infinite;
  animation-delay: var(--scan-delay);
  background: #ffffff;
  border: 1px solid rgba(0, 89, 190, .24);
  border-radius: 999px;
  box-shadow: 0 5px 14px rgba(0, 89, 190, .10);
  color: var(--brand-blue);
  font-size: 11px;
  font-weight: 800;
  opacity: 0;
  padding: 5px 10px;
  width: max-content;
}

.workshop-estimate-scan-targets {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(82px, 1fr));
  position: absolute;
  right: 20px;
  top: 37px;
  width: min(38%, 210px);
}

.workshop-estimate-scan-targets span {
  background: linear-gradient(180deg, #ffffff, #f4f8fd);
  border: 1px dashed rgba(0, 89, 190, .34);
  border-radius: 7px;
  height: 42px;
  position: relative;
}

.workshop-estimate-scan-targets span::after {
  background: #dbe9f8;
  border-radius: 999px;
  content: "";
  height: 5px;
  left: 10px;
  position: absolute;
  right: 10px;
  top: 18px;
}

.workshop-estimate-scan-copy {
  display: grid;
  gap: 3px;
  text-align: center;
}

.workshop-estimate-scan-copy strong {
  color: var(--brand-navy);
}

.workshop-estimate-pdf-preview {
  align-self: start;
  background: #f7f9fc;
  border: 1px solid rgba(28, 50, 74, .16);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  position: sticky;
  top: 14px;
}

.workshop-estimate-pdf-preview-head {
  align-items: start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.workshop-estimate-pdf-preview-identity {
  align-items: center;
  display: grid;
  gap: 9px;
  grid-template-columns: 32px minmax(0, 1fr);
  min-width: 0;
}

.workshop-estimate-pdf-preview-identity > div {
  display: grid;
  gap: 3px;
}

.workshop-estimate-pdf-document-icon {
  background: linear-gradient(145deg, #ffffff, #eaf2fb);
  border: 2px solid var(--brand-blue);
  border-radius: 5px;
  height: 30px;
  position: relative;
  width: 25px;
}

.workshop-estimate-pdf-document-icon::before {
  border-bottom: 6px solid var(--brand-blue);
  border-left: 6px solid transparent;
  content: "";
  position: absolute;
  right: -2px;
  top: -2px;
}

.workshop-estimate-pdf-document-icon::after {
  background: var(--brand-blue);
  border-radius: 999px;
  box-shadow: 0 5px 0 rgba(0, 89, 190, .72), 0 10px 0 rgba(0, 89, 190, .44);
  content: "";
  height: 2px;
  left: 5px;
  position: absolute;
  top: 9px;
  width: 11px;
}

.workshop-estimate-pdf-preview-head strong {
  color: var(--brand-navy);
}

.workshop-estimate-pdf-preview-head .button {
  flex: 0 0 auto;
  min-height: 34px;
  padding: 7px 10px;
}

.workshop-estimate-pdf-preview-actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.workshop-estimate-pdf-zoom-controls {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(28, 50, 74, .22);
  border-radius: 7px;
  display: grid;
  grid-template-columns: 28px 50px 28px;
  overflow: hidden;
}

.workshop-estimate-pdf-zoom-controls button {
  align-items: center;
  appearance: none;
  background: transparent;
  border: 0;
  color: var(--brand-navy);
  cursor: pointer;
  display: flex;
  font: inherit;
  font-size: 16px;
  font-weight: 850;
  height: 28px;
  justify-content: center;
  line-height: 1;
  min-width: 0;
  padding: 0;
}

.workshop-estimate-pdf-zoom-controls button + button {
  border-left: 1px solid rgba(28, 50, 74, .16);
}

.workshop-estimate-pdf-zoom-controls [data-estimate-pdf-zoom-value] {
  font-size: 10px;
  letter-spacing: -.01em;
}

.workshop-estimate-pdf-zoom-controls button:hover,
.workshop-estimate-pdf-zoom-controls button:focus-visible {
  background: #edf5ff;
  color: var(--brand-blue);
  outline: none;
}

.workshop-estimate-pdf-zoom-controls button:focus-visible {
  box-shadow: inset 0 0 0 2px var(--brand-blue);
}

.workshop-estimate-pdf-zoom-controls button:disabled {
  background: #f3f5f7;
  color: #9aa5b1;
  cursor: default;
}

.workshop-estimate-pdf-document-shell {
  background: #34383d;
  border: 1px solid rgba(28, 50, 74, .18);
  border-radius: 9px;
  box-shadow: 0 8px 22px rgba(20, 48, 80, .10);
  min-width: 0;
  overflow: hidden;
}

.workshop-estimate-pdf-highlights {
  background: linear-gradient(180deg, #f7fbff, #edf5fd);
  border: 0;
  border-bottom: 3px solid var(--brand-blue);
  border-radius: 0;
  display: grid;
  gap: 9px;
  padding: 10px;
  position: relative;
}

.workshop-estimate-pdf-highlights::after {
  background: var(--brand-blue);
  bottom: -9px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 7px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 14px;
  z-index: 2;
}

.workshop-estimate-pdf-highlights[hidden] {
  display: none;
}

.workshop-estimate-pdf-highlight-status {
  align-items: center;
  color: var(--brand-navy);
  display: grid;
  gap: 8px;
  grid-template-columns: 28px minmax(0, 1fr) 28px;
}

.workshop-estimate-pdf-highlight-swatch {
  background: rgba(255, 211, 31, .48);
  border: 2px solid rgba(13, 140, 74, .82);
  border-radius: 50%;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .75);
  display: inline-block;
  height: 22px;
  position: relative;
  width: 22px;
}

.workshop-estimate-pdf-highlight-swatch::before,
.workshop-estimate-pdf-highlight-swatch::after {
  background: rgba(13, 140, 74, .82);
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.workshop-estimate-pdf-highlight-swatch::before {
  height: 2px;
  width: 28px;
}

.workshop-estimate-pdf-highlight-swatch::after {
  height: 28px;
  width: 2px;
}

.workshop-estimate-pdf-highlight-status-copy {
  display: grid;
  gap: 1px;
}

.workshop-estimate-pdf-highlight-status-copy small {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.25;
}

.workshop-estimate-pdf-highlight-status > strong:only-child,
.workshop-estimate-pdf-highlight-list > .fine:only-child {
  grid-column: 1 / -1;
}

.workshop-estimate-pdf-link-indicator {
  align-items: center;
  background: var(--brand-navy);
  border-radius: 50%;
  color: #ffffff;
  display: flex;
  font-size: 16px;
  font-weight: 900;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.workshop-estimate-pdf-highlight-list {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.workshop-estimate-pdf-highlight-list button {
  align-items: center;
  appearance: none;
  background: #ffffff;
  border: 1px solid rgba(28, 50, 74, .14);
  border-radius: 8px;
  color: var(--brand-navy);
  cursor: pointer;
  display: grid;
  gap: 5px;
  grid-template-columns: 24px minmax(0, 1fr) auto 12px;
  min-height: 48px;
  padding: 6px 7px;
  text-align: left;
}

.workshop-estimate-pdf-highlight-list button:hover,
.workshop-estimate-pdf-highlight-list button:focus-visible,
.workshop-estimate-pdf-highlight-list button.is-active {
  background: #f2fbf6;
  border-color: rgba(13, 140, 74, .48);
  box-shadow: inset 3px 0 0 rgba(13, 140, 74, .78);
  outline: none;
}

.workshop-estimate-pdf-target-marker {
  align-items: center;
  background: #eef5fb;
  border: 1px solid rgba(0, 89, 190, .34);
  border-radius: 50%;
  display: flex;
  height: 22px;
  justify-content: center;
  position: relative;
  width: 22px;
}

.workshop-estimate-pdf-target-marker::before,
.workshop-estimate-pdf-target-marker::after {
  background: var(--brand-blue);
  content: "";
  position: absolute;
}

.workshop-estimate-pdf-target-marker::before {
  height: 1px;
  width: 16px;
}

.workshop-estimate-pdf-target-marker::after {
  height: 16px;
  width: 1px;
}

.workshop-estimate-pdf-target-marker i {
  background: var(--brand-blue);
  border: 2px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px var(--brand-blue);
  height: 5px;
  position: relative;
  width: 5px;
  z-index: 1;
}

.workshop-estimate-pdf-highlight-list button.is-active .workshop-estimate-pdf-target-marker {
  background: #e8f7ef;
  border-color: rgba(13, 140, 74, .48);
}

.workshop-estimate-pdf-highlight-list button.is-active .workshop-estimate-pdf-target-marker::before,
.workshop-estimate-pdf-highlight-list button.is-active .workshop-estimate-pdf-target-marker::after,
.workshop-estimate-pdf-highlight-list button.is-active .workshop-estimate-pdf-target-marker i {
  background: #0d8c4a;
}

.workshop-estimate-pdf-highlight-button-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.workshop-estimate-pdf-highlight-label {
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  min-width: 0;
  overflow: hidden;
}

.workshop-estimate-pdf-highlight-list button strong {
  color: #126c45;
  font-size: 12px;
  white-space: nowrap;
}

.workshop-estimate-pdf-highlight-button-copy small {
  align-items: center;
  color: var(--muted);
  display: flex;
  font-size: 11px;
  gap: 4px;
}

.workshop-estimate-pdf-page-icon {
  background: #ffffff;
  border: 1px solid rgba(28, 50, 74, .38);
  border-radius: 1px;
  display: inline-block;
  height: 9px;
  position: relative;
  width: 7px;
}

.workshop-estimate-pdf-page-icon::after {
  background: rgba(28, 50, 74, .42);
  box-shadow: 0 2px 0 rgba(28, 50, 74, .28);
  content: "";
  height: 1px;
  left: 1px;
  position: absolute;
  top: 3px;
  width: 4px;
}

.workshop-estimate-pdf-highlight-arrow {
  color: var(--brand-blue);
  font-size: 19px;
  font-weight: 900;
  line-height: 1;
}

.workshop-estimate-pdf-preview-stage {
  background: #dfe5ec;
  border: 0;
  border-radius: 0;
  min-height: 680px;
  overflow: hidden;
}

.workshop-estimate-pdf-page-viewer {
  align-content: start;
  background: #34383d;
  display: grid;
  gap: 14px;
  height: min(78vh, 880px);
  min-height: 680px;
  overflow: auto;
  padding: 14px;
  position: relative;
  scrollbar-gutter: stable;
}

.workshop-estimate-pdf-page-viewer[hidden],
.workshop-estimate-pdf-preview iframe[hidden] {
  display: none;
}

.workshop-estimate-pdf-page {
  background: #ffffff;
  box-shadow: 0 5px 18px rgba(0, 0, 0, .28);
  margin: 0 auto;
  min-width: 0;
  position: relative;
  width: var(--estimate-pdf-zoom-width, 100%);
}

.workshop-estimate-pdf-page.is-target {
  outline: 3px solid rgba(13, 140, 74, .72);
  outline-offset: 2px;
}

.workshop-estimate-pdf-page > span {
  background: rgba(0, 29, 75, .88);
  border-radius: 999px;
  color: #ffffff;
  font-size: 11px;
  font-weight: 850;
  left: 10px;
  padding: 5px 9px;
  position: absolute;
  top: 10px;
  z-index: 2;
}

.workshop-estimate-pdf-page img {
  background: #ffffff;
  display: block;
  height: auto;
  margin: 0 auto;
  max-width: none;
  width: 100%;
}

.workshop-estimate-pdf-preview iframe {
  background: #ffffff;
  border: 0;
  display: block;
  height: min(78vh, 880px);
  min-height: 680px;
  width: 100%;
}

.workshop-estimate-extraction.is-analyzing .workshop-estimate-extraction-result {
  background: linear-gradient(100deg, #f3f8ff 20%, #e8f2ff 45%, #f3f8ff 70%);
  background-size: 220% 100%;
  border-color: rgba(0, 89, 190, .22);
  animation: workshop-estimate-result-pulse 2s linear infinite;
}

@keyframes workshop-estimate-scan-line {
  0%,
  100% {
    opacity: .25;
    transform: translateY(0);
  }
  50% {
    opacity: 1;
    transform: translateY(91px);
  }
}

@keyframes workshop-estimate-value-flow {
  0%,
  12% {
    opacity: 0;
    transform: translateX(-12px) scale(.9);
  }
  30% {
    opacity: 1;
  }
  78% {
    opacity: .9;
    transform: translateX(clamp(90px, 16vw, 230px)) scale(1);
  }
  100% {
    opacity: 0;
    transform: translateX(clamp(120px, 21vw, 290px)) scale(.82);
  }
}

@keyframes workshop-estimate-result-pulse {
  to {
    background-position: -220% 0;
  }
}

.workshop-estimate-extraction-result {
  background: #f8fbff;
  border: 1px solid rgba(28, 50, 74, .12);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.workshop-estimate-extraction-result.success {
  background: #f4fbf7;
  border-color: rgba(24, 128, 82, .28);
}

.workshop-estimate-extraction-result.warning {
  background: #fff8ed;
  border-color: rgba(197, 103, 20, .30);
}

.workshop-estimate-extraction-result[hidden] {
  display: none;
}

.workshop-estimate-editor {
  background: #ffffff;
  border: 1px solid rgba(28, 50, 74, .14);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.workshop-estimate-editor[hidden] {
  display: none;
}

.workshop-estimate-editor-head > div {
  display: grid;
  gap: 3px;
}

.workshop-estimate-editor-head strong {
  color: var(--brand-navy);
}

.workshop-estimate-editor-section {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.workshop-estimate-editor-section-head {
  align-items: center;
  display: flex;
  gap: 7px;
  min-height: 26px;
}

.workshop-estimate-editor-section-head > strong {
  color: var(--brand-navy);
  font-size: 12px;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.workshop-estimate-editor-section-icon {
  align-items: center;
  background: #eaf3fc;
  border: 1px solid rgba(0, 89, 190, .18);
  border-radius: 7px;
  color: var(--brand-blue);
  display: flex;
  height: 24px;
  justify-content: center;
  position: relative;
  width: 24px;
}

.workshop-estimate-editor-section-icon.is-document::before {
  background: #ffffff;
  border: 1.5px solid var(--brand-blue);
  border-radius: 2px;
  content: "";
  height: 13px;
  width: 10px;
}

.workshop-estimate-editor-section-icon.is-document::after {
  background: var(--brand-blue);
  box-shadow: 0 3px 0 rgba(0, 89, 190, .65);
  content: "";
  height: 1px;
  position: absolute;
  width: 6px;
}

.workshop-estimate-editor-section-icon.is-costs::before {
  content: "€";
  font-size: 14px;
  font-weight: 900;
}

.workshop-estimate-editor-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr;
}

.workshop-estimate-metadata-grid,
.workshop-estimate-decision-facts {
  display: grid;
  gap: 10px;
}

.workshop-estimate-metadata-grid {
  grid-template-columns: 1fr;
}

.workshop-estimate-metadata-grid {
  border-bottom: 1px solid var(--line);
  padding-bottom: 14px;
}

.workshop-estimate-decision-facts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.workshop-estimate-reference-unavailable {
  align-items: center;
  font-size: 12px;
  gap: 4px;
  grid-column: 1 / -1;
  justify-self: start;
  line-height: 1.2;
  margin: -2px 0 0;
  max-width: 100%;
  padding: 4px 6px;
  width: fit-content;
}

.workshop-estimate-reference-unavailable input {
  margin-top: 0;
}

.workshop-estimate-supplement-warning {
  margin-top: 14px;
}

.workshop-estimate-decision-details {
  border-left: 5px solid var(--brand-blue);
}

.workshop-estimate-decision-list {
  display: grid;
  gap: 10px;
}

.workshop-estimate-decision-details .panel-header {
  align-items: flex-start;
}

.workshop-estimate-decision-facts > div {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px 12px;
}

.workshop-estimate-decision-facts span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.workshop-estimate-decision-facts strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

@media (min-width: 861px) {
  .is-workshop-portal-shell .workshop-estimate-decision-details {
    padding: 14px 16px;
  }

  .is-workshop-portal-shell .workshop-estimate-decision-details .panel-header {
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
  }

  .is-workshop-portal-shell .workshop-estimate-decision-details .panel-header > div:first-child {
    align-items: baseline;
    display: grid;
    flex: 1;
    gap: 2px 12px;
    grid-template-columns: auto auto minmax(260px, 1fr);
    min-width: 0;
  }

  .is-workshop-portal-shell .workshop-estimate-decision-details .panel-header h2 {
    font-size: 16px;
    white-space: nowrap;
  }

  .is-workshop-portal-shell .workshop-estimate-decision-details .panel-header p {
    font-size: 12px;
    line-height: 1.3;
    margin: 0;
  }

  .is-workshop-portal-shell .workshop-estimate-decision-facts {
    gap: 6px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .is-workshop-portal-shell .workshop-estimate-decision-facts > div {
    gap: 1px;
    padding: 7px 10px;
  }

  .is-workshop-portal-shell .workshop-estimate-decision-facts > div:nth-child(11) {
    grid-column: span 2;
  }

  .is-workshop-portal-shell .workshop-estimate-decision-facts span {
    font-size: 10px;
    line-height: 1.2;
  }

  .is-workshop-portal-shell .workshop-estimate-decision-facts strong {
    font-size: 13px;
    line-height: 1.25;
  }
}

@media (min-width: 1180px) {
  .is-workshop-portal-shell .workshop-estimate-decision-facts {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.workshop-estimate-parts-group {
  background: transparent;
  border: 0;
  border-radius: 0;
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
  padding: 0;
}

.workshop-estimate-parts-group-head {
  align-items: start;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 10px 12px;
}

.workshop-estimate-parts-group-head > div {
  display: grid;
  gap: 3px;
}

.workshop-estimate-parts-group-head strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.workshop-estimate-parts-group-head .pill {
  justify-self: start;
}

.workshop-estimate-parts-fields {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr;
}

.workshop-estimate-editor-field {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.workshop-estimate-editor-label {
  color: var(--brand-navy);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.workshop-estimate-editor-control {
  display: grid;
  gap: 6px;
  grid-template-columns: 1fr;
}

.workshop-estimate-editor-control input {
  background: #ffffff;
  font-size: 16px;
  font-weight: 750;
  min-width: 0;
  width: 100%;
}

.workshop-estimate-editor-field.has-pdf-jump .workshop-estimate-editor-control input,
.estimate-total-row.has-pdf-jump [data-estimate-total] {
  cursor: pointer;
}

.workshop-estimate-editor-field.has-pdf-jump .workshop-estimate-editor-control input:hover,
.workshop-estimate-editor-field.has-pdf-jump .workshop-estimate-editor-control input:focus,
.estimate-total-row.has-pdf-jump [data-estimate-total]:hover,
.estimate-total-row.has-pdf-jump [data-estimate-total]:focus-visible {
  border-color: rgba(0, 89, 190, .58);
  box-shadow: 0 0 0 2px rgba(0, 89, 190, .10);
  outline: none;
}

.workshop-estimate-field-confidence {
  align-items: center;
  background: #eef3f9;
  border: 1px solid rgba(28, 50, 74, .12);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-size: 12px;
  font-weight: 750;
  justify-content: center;
  line-height: 1.2;
  min-height: 32px;
  padding: 6px 10px;
  text-align: center;
  width: 100%;
}

.workshop-estimate-field-confidence.is-high,
.workshop-estimate-field-confidence.is-learned,
.workshop-estimate-field-confidence.is-inferred-zero {
  background: #eaf7f0;
  border-color: rgba(24, 128, 82, .24);
  color: #146a46;
}

.workshop-estimate-field-confidence.is-medium,
.workshop-estimate-field-confidence.is-prefilled {
  background: #eef5ff;
  border-color: rgba(0, 89, 190, .20);
  color: var(--brand-blue);
}

.workshop-estimate-field-confidence.is-low,
.workshop-estimate-field-confidence.is-missing {
  background: #fff4e6;
  border-color: rgba(197, 103, 20, .24);
  color: #9a4d0e;
}

.workshop-estimate-field-confidence.is-adjusted {
  background: #fff7df;
  border-color: rgba(177, 122, 0, .26);
  color: #785400;
}

.workshop-estimate-field-confidence.is-pending {
  background: #f4f6f9;
  color: var(--muted);
}

.workshop-estimate-extraction-table {
  margin: 0;
}

.workshop-estimate-extraction-table table {
  table-layout: fixed;
  margin: 0;
}

.workshop-estimate-extraction-table th:last-child,
.workshop-estimate-extraction-table td:last-child {
  width: 110px;
}

.workshop-effective-calculation {
  background: #edf8f2;
  border-left: 4px solid var(--green);
  padding: 10px 12px;
}

.fine-list {
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.35;
  margin: 0;
  padding-left: 18px;
}

.workshop-estimate-confirmation {
  margin: 0;
}

/* Keep the complete KVA workflow visible while reducing scroll depth in uploads and approvals. */
.workshop-estimate-extraction.is-compact {
  gap: 6px;
  padding: 8px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-extraction-head {
  gap: 6px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-extraction-head .fine,
.workshop-estimate-extraction.is-compact .workshop-estimate-editor-head .fine,
.workshop-estimate-extraction.is-compact .workshop-estimate-parts-group-head .fine,
.workshop-estimate-extraction.is-compact [data-estimate-pdf-preview-description] {
  display: none;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-analysis-layout,
.workshop-estimate-extraction.is-compact .workshop-estimate-analysis-values {
  gap: 7px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-extraction-result {
  gap: 2px;
  padding: 7px 8px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-extraction-result p {
  margin: 0;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-extraction-result p:nth-of-type(n + 2) {
  display: none;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-scan {
  gap: 6px;
  padding: 8px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-scan-visual {
  height: 158px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor {
  gap: 5px;
  padding: 6px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-section {
  background: #f7f9fc;
  border: 1px solid rgba(28, 50, 74, .12);
  border-radius: 8px;
  gap: 4px;
  padding: 5px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-section.is-costs {
  background: #fbfcfe;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-section-head {
  min-height: 20px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-section-head > strong {
  font-size: 10.5px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-section-icon {
  border-radius: 5px;
  height: 20px;
  width: 20px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-metadata-grid {
  border-bottom: 0;
  gap: 6px 8px;
  grid-template-columns: 1fr;
  padding-bottom: 0;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-grid {
  gap: 6px 8px;
  grid-template-columns: 1fr;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-field {
  align-items: center;
  background: #ffffff;
  gap: 5px;
  grid-template-columns: minmax(210px, 1.35fr) minmax(0, 1.65fr);
  padding: 6px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-label {
  font-size: 11px;
  line-height: 1.2;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-control {
  gap: 5px;
  grid-template-columns: minmax(0, 1fr) minmax(78px, .55fr);
}

.workshop-estimate-extraction.is-compact .workshop-estimate-editor-control input {
  font-size: 12.5px;
  min-height: 28px;
  padding: 3px 6px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-field-confidence {
  font-size: 10px;
  min-height: 22px;
  padding: 2px 6px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-parts-group {
  gap: 6px;
  padding: 0;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-parts-group-head {
  align-items: center;
  display: flex;
  min-height: 24px;
  padding: 3px 6px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-parts-group-head > div {
  display: flex;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-parts-group-head strong,
.workshop-estimate-extraction.is-compact .workshop-estimate-parts-group-head .pill {
  display: none;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-parts-fields {
  gap: 6px;
  grid-template-columns: 1fr;
}

.workshop-estimate-extraction.is-compact .estimate-total-row {
  padding: 8px 10px;
}

.workshop-estimate-extraction.is-compact .estimate-total-row strong {
  font-size: 17px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-confirmation {
  padding: 7px 8px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-preview {
  gap: 7px;
  padding: 8px;
  top: 8px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-preview-head {
  gap: 7px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-preview-head .button {
  min-height: 30px;
  padding: 5px 8px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlights {
  gap: 4px;
  padding: 6px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-status {
  gap: 5px;
  grid-template-columns: 22px minmax(0, 1fr) 22px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-swatch {
  height: 17px;
  width: 17px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-swatch::before {
  width: 21px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-swatch::after {
  height: 21px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-status-copy strong {
  font-size: 11px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-status-copy small {
  display: none;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-link-indicator {
  font-size: 13px;
  height: 21px;
  width: 21px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-list {
  gap: 4px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-list button {
  gap: 3px;
  grid-template-columns: 19px minmax(0, 1fr) auto 9px;
  min-height: 36px;
  padding: 3px 5px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-target-marker {
  height: 17px;
  width: 17px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-target-marker::before {
  width: 12px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-target-marker::after {
  height: 12px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-label,
.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-list button strong {
  font-size: 10.5px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-button-copy small {
  font-size: 9px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-arrow {
  font-size: 15px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-preview-stage,
.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-page-viewer,
.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-preview iframe {
  height: min(70vh, 720px);
  min-height: 560px;
}

.workshop-estimate-extraction.is-compact .workshop-estimate-pdf-page-viewer {
  gap: 10px;
  padding: 10px;
}

.manager-workshop-estimate-upload {
  gap: 11px;
}

.manager-workshop-estimate-upload fieldset {
  gap: 10px;
  padding: 12px;
}

.manager-workshop-estimate-upload > .fine {
  margin: 0;
}

.manager-workshop-estimate-upload textarea,
.manager-workshop-estimate-decision textarea {
  min-height: 72px;
}

.workshop-repair-appointment-panel {
  display: grid;
  gap: 16px;
}

.workshop-completion-entry-panel {
  background:
    radial-gradient(circle at 94% 8%, rgba(29, 155, 92, .12), transparent 30%),
    linear-gradient(145deg, #ffffff 0%, #f5fbf8 100%);
  border-color: rgba(22, 138, 78, .25);
  display: grid;
  gap: 18px;
  padding: clamp(20px, 3vw, 30px);
}

.workshop-completion-entry-heading {
  align-items: flex-start;
  display: flex;
  gap: 20px;
  justify-content: space-between;
}

.workshop-completion-entry-heading h2 {
  color: var(--brand-navy);
  margin: 4px 0 6px;
}

.workshop-completion-entry-heading p,
.workshop-completion-special-case p {
  margin: 0;
}

.workshop-completion-entry-form {
  align-items: end;
  background: #fff;
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 10px;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(260px, 1fr) auto;
  padding: 16px;
}

.workshop-completion-entry-form .button {
  min-height: 43px;
}

.workshop-completion-special-case {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .18);
  border-radius: 9px;
  display: grid;
  gap: 12px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 12px 14px;
}

.workshop-repair-appointment-panel.is-confirmation {
  background:
    radial-gradient(circle at 94% 8%, rgba(255, 151, 0, .11), transparent 27%),
    linear-gradient(145deg, #ffffff 0%, #f7faff 100%);
  border-color: rgba(0, 58, 150, .14);
  gap: 22px;
  padding: clamp(20px, 3vw, 32px);
}

.workshop-appointment-confirmation-head,
.workshop-appointment-confirmation-title {
  align-items: center;
  display: flex;
}

.workshop-appointment-confirmation-head {
  gap: 20px;
  justify-content: space-between;
}

.workshop-appointment-confirmation-title {
  gap: 16px;
  min-width: 0;
}

.workshop-appointment-confirmation-title h2 {
  color: var(--brand-navy);
  margin: 2px 0 4px;
}

.workshop-appointment-confirmation-title p {
  color: var(--muted);
  margin: 0;
}

.workshop-appointment-confirmation-icon {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0, 39, 102, .08);
  display: inline-flex;
  flex: 0 0 auto;
  height: 58px;
  justify-content: center;
  width: 62px;
}

.workshop-appointment-confirmation-icon .workshop-action-icon {
  background: transparent;
  border: 0;
  height: 46px;
  width: 52px;
}

.workshop-appointment-confirmation-status {
  align-items: center;
  background: #eaf7f1;
  border: 1px solid rgba(28, 129, 89, .22);
  border-radius: 999px;
  color: #146b4a;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .04em;
  padding: 8px 13px;
  text-transform: uppercase;
}

.workshop-appointment-confirmation-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.workshop-appointment-confirmation-grid article,
.workshop-appointment-confirmation-note {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 39, 102, .045);
  display: grid;
  gap: 5px;
  padding: 16px 18px;
}

.workshop-appointment-confirmation-grid article > span,
.workshop-appointment-confirmation-note > span {
  color: var(--muted);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .045em;
  text-transform: uppercase;
}

.workshop-appointment-confirmation-grid article > strong {
  color: var(--brand-navy);
  font-size: 1rem;
}

.workshop-appointment-confirmation-grid article > small {
  color: var(--muted);
}

.workshop-appointment-confirmation-note p,
.workshop-appointment-confirmation-info p {
  margin: 0;
}

.workshop-appointment-confirmation-info {
  align-items: center;
  background: rgba(0, 58, 150, .055);
  border-radius: 10px;
  color: var(--muted);
  display: flex;
  font-size: .82rem;
  gap: 10px;
  padding: 11px 14px;
}

.workshop-appointment-confirmation-info > span {
  align-items: center;
  background: var(--brand-navy);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: .72rem;
  height: 22px;
  justify-content: center;
  width: 22px;
}

.workshop-appointment-kva-follow-up {
  align-items: center;
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 12px;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 16px 18px;
}

.workshop-appointment-kva-follow-up.is-action {
  background: linear-gradient(135deg, #fff8ed 0%, #ffffff 72%);
  border-color: rgba(244, 139, 0, .32);
  box-shadow: 0 8px 22px rgba(152, 78, 0, .06);
}

.workshop-appointment-kva-follow-up.is-status {
  background: linear-gradient(135deg, #eef5ff 0%, #ffffff 72%);
}

.workshop-appointment-kva-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.workshop-appointment-kva-copy > span {
  color: var(--brand-orange-dark);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.workshop-appointment-kva-follow-up.is-status .workshop-appointment-kva-copy > span {
  color: var(--brand-blue);
}

.workshop-appointment-kva-copy > strong {
  color: var(--brand-navy);
  font-size: 1rem;
  line-height: 1.3;
}

.workshop-appointment-kva-copy > p {
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.4;
  margin: 0;
}

.workshop-appointment-kva-follow-up > .button {
  flex: 0 0 auto;
  white-space: nowrap;
}

.workshop-appointment-kva-follow-up > .status {
  flex: 0 0 auto;
}

.workshop-appointment-confirmation-editor {
  border-top: 1px solid rgba(0, 58, 150, .12);
  padding-top: 18px;
}

.workshop-appointment-confirmation-editor > summary {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .22);
  border-radius: 9px;
  color: var(--brand-navy);
  cursor: pointer;
  display: inline-flex;
  font-size: .86rem;
  font-weight: 800;
  gap: 9px;
  list-style: none;
  padding: 10px 14px;
}

.workshop-appointment-confirmation-editor > summary::-webkit-details-marker {
  display: none;
}

.workshop-appointment-confirmation-editor > summary::after {
  content: "+";
  font-size: 1rem;
}

.workshop-appointment-confirmation-editor[open] > summary::after {
  content: "−";
}

.workshop-repair-appointment-form.is-confirmation-editor {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .1);
  border-radius: 12px;
  margin-top: 16px;
  max-width: none;
  padding: clamp(16px, 2.4vw, 24px);
}

.workshop-repair-appointment-form {
  display: grid;
  gap: 18px;
  margin: 0 auto;
  max-width: 1180px;
  width: 100%;
}

.form-grid.two.workshop-repair-appointment-grid {
  gap: 16px;
  grid-template-columns: repeat(3, minmax(220px, 1fr));
}

.workshop-repair-appointment-form input[readonly],
.workshop-repair-appointment-form textarea[readonly] {
  background: #f8fbff;
  color: var(--ink);
  cursor: default;
}

.workshop-repair-appointment-note textarea {
  min-height: 92px;
  resize: none;
}

.workshop-expert-appointment-forwarding {
  align-items: flex-start;
  background: #f4f8ff;
  border: 1px solid rgba(0, 58, 150, .18);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  padding: 13px 15px;
}

.workshop-expert-appointment-forwarding > span {
  display: grid;
  gap: 3px;
}

.workshop-expert-appointment-forwarding strong {
  color: var(--brand-navy);
}

.workshop-expert-appointment-forwarding small {
  color: var(--muted);
  line-height: 1.45;
}

.form-grid.two.workshop-delay-grid > label {
  align-content: start;
}

.form-grid.two.workshop-delay-grid > label > .fine {
  line-height: 1.35;
  margin-top: 2px;
}

/* Kompakte Desktop-Arbeitsansicht fuer das Werkstattportal. */
.workshop-portal-casebar-main {
  min-width: 0;
}

.workshop-portal-casebar-main > span {
  color: var(--muted);
}

@media (min-width: 861px) {
  .is-workshop-portal-shell .public-nav {
    min-height: 58px;
    padding: 6px clamp(18px, 3vw, 36px);
  }

  .is-workshop-portal-shell .public-nav .brand {
    gap: 0;
  }

  .is-workshop-portal-shell .public-nav .brand-logo-card {
    border: 0;
    padding: 2px 4px;
    width: auto;
  }

  .is-workshop-portal-shell .public-nav .brand-logo {
    width: 104px;
  }

  .is-workshop-portal-shell .public-nav .brand > div:last-child,
  .is-workshop-portal-shell .public-nav .actions > a[href="/schadenmeldung"],
  .is-workshop-portal-shell .public-nav .actions > a[href="/login"] {
    display: none;
  }

  .is-workshop-portal-shell .public-content {
    gap: 10px;
    padding: 12px clamp(18px, 3vw, 36px) 24px;
  }

  .is-workshop-portal-shell .workshop-portal-header-panel {
    margin: 0;
    padding: 9px 12px 8px;
  }

  .is-workshop-portal-shell .workshop-portal-casebar {
    align-items: center;
    margin-bottom: 0;
  }

  .is-workshop-portal-shell .workshop-portal-casebar-main {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 5px 0;
  }

  .is-workshop-portal-shell .workshop-portal-casebar-main h2 {
    font-size: 17px;
    margin-right: 16px;
  }

  .is-workshop-portal-shell .workshop-portal-casebar-main > span {
    border-left: 1px solid rgba(0, 58, 150, .18);
    font-size: 13px;
    font-weight: 750;
    line-height: 1.25;
    margin-right: 12px;
    padding-left: 12px;
  }

  .is-workshop-portal-shell .workshop-portal-casebar > .status {
    flex: 0 0 auto;
  }

  .is-workshop-portal-shell .process-flow {
    background: transparent;
    border: 0;
    gap: 0;
    overflow-x: auto;
    padding: 0;
  }

  .is-workshop-portal-shell .process-flow-header {
    display: none;
  }

  .is-workshop-portal-shell .process-steps {
    gap: 4px;
    grid-template-columns: repeat(7, minmax(108px, 1fr));
    min-width: 780px;
  }

  .is-workshop-portal-shell .process-step {
    align-items: center;
    background: transparent;
    border: 0;
    border-bottom: 3px solid #d7dee8;
    border-radius: 0;
    box-shadow: none;
    gap: 7px;
    grid-template-columns: auto minmax(0, 1fr);
    min-height: 45px;
    padding: 5px 7px 7px;
  }

  .is-workshop-portal-shell .process-step.done {
    border-bottom-color: rgba(22, 163, 74, .62);
  }

  .is-workshop-portal-shell .process-step.active {
    border-bottom-color: var(--brand-orange);
    box-shadow: none;
  }

  .is-workshop-portal-shell .process-step-index {
    font-size: 12px;
    height: 24px;
    width: 24px;
  }

  .is-workshop-portal-shell .process-step strong {
    font-size: 11px;
    line-height: 1.2;
  }

  .is-workshop-portal-shell .process-step small {
    display: none;
  }

  .is-workshop-portal-shell .workshop-portal-tabs {
    background: linear-gradient(180deg, #f3f7fc 0%, #e8f0f9 100%);
    border: 1px solid rgba(0, 58, 150, .22);
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(17, 37, 63, .08);
    gap: 6px;
    overflow: visible;
    padding: 6px;
    position: sticky;
    top: 0;
    z-index: 20;
  }

  .is-workshop-portal-shell .workshop-portal-tab {
    align-content: center;
    background: linear-gradient(180deg, #ffffff 0%, #edf3fa 100%);
    border: 1px solid #c3d2e3;
    border-bottom: 3px solid #9fb5cd;
    border-radius: 7px;
    box-shadow: 0 1px 2px rgba(17, 37, 63, .10), inset 0 1px 0 #ffffff;
    margin: 0;
    min-height: 78px;
    min-width: 144px;
    padding: 9px 12px 8px;
  }

  .is-workshop-portal-shell .workshop-portal-tab.has-step-summary {
    flex: 1 1 190px;
  }

  .is-workshop-portal-shell .workshop-portal-tab.has-process-series {
    flex: 2.5 1 480px;
    min-width: 420px;
  }

  .is-workshop-portal-shell .workshop-portal-tab::before {
    display: none;
  }

  .is-workshop-portal-shell .workshop-portal-tab:hover,
  .is-workshop-portal-shell .workshop-portal-tab:focus-visible {
    background: #f8fbff;
    border-color: rgba(0, 58, 150, .48);
    border-bottom-color: var(--brand-blue);
    box-shadow: 0 3px 7px rgba(0, 58, 150, .14), inset 0 1px 0 #ffffff;
    transform: translateY(-1px);
  }

  .is-workshop-portal-shell .workshop-portal-tab:focus-visible {
    outline: 3px solid rgba(0, 58, 150, .24);
    outline-offset: 2px;
  }

  .is-workshop-portal-shell .workshop-portal-tab.active {
    background: #fff8ef;
    border-color: rgba(246, 135, 18, .58);
    border-bottom-color: var(--brand-orange);
    box-shadow: inset 0 3px 0 var(--brand-orange), 0 2px 5px rgba(17, 37, 63, .12);
    transform: none;
  }

  .is-workshop-portal-shell .workshop-portal-tab.is-process-done {
    border-color: rgba(22, 163, 74, .42);
    border-bottom-color: rgba(22, 163, 74, .72);
  }

  .is-workshop-portal-shell .workshop-portal-tab.active.is-process-done {
    background: #f3fbf6;
    border-color: rgba(22, 163, 74, .55);
    border-bottom-color: #16a34a;
    box-shadow: inset 0 3px 0 #16a34a, 0 2px 5px rgba(17, 37, 63, .12);
  }

  .is-workshop-portal-shell .workshop-portal-tab.is-process-active {
    background: #fff8ef;
    border-color: rgba(246, 135, 18, .58);
    border-bottom-color: var(--brand-orange);
  }

  .is-workshop-portal-shell .workshop-portal-tab.is-attention:not(.active) {
    border-color: rgba(246, 135, 18, .42);
    border-bottom-color: rgba(246, 135, 18, .72);
  }

  .is-workshop-portal-shell .workshop-portal-tabs-shell.is-unified-navigation .workshop-portal-tab:is(.is-attention, .is-locked):not(.active):not(.is-process-active) {
    background: linear-gradient(180deg, #ffffff 0%, #edf3fa 100%);
    border-color: #c3d2e3;
    border-bottom-color: #9fb5cd;
  }

  .is-workshop-portal-shell .workshop-portal-tab small {
    display: block;
    margin-left: 41px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-process-series {
    flex-wrap: wrap;
    row-gap: 5px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-tooltip {
    background: var(--brand-navy);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 7px;
    box-shadow: 0 8px 20px rgba(17, 37, 63, .24);
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    left: 0;
    line-height: 1.35;
    max-width: min(260px, calc(100vw - 40px));
    padding: 8px 10px;
    pointer-events: none;
    position: absolute;
    text-align: left;
    top: calc(100% + 8px);
    white-space: normal;
    width: max-content;
    z-index: 60;
  }

  .is-workshop-portal-shell .workshop-portal-tab:last-child .workshop-portal-tab-tooltip {
    left: auto;
    right: 0;
  }

  .is-workshop-portal-shell .workshop-portal-tab:hover .workshop-portal-tab-tooltip,
  .is-workshop-portal-shell .workshop-portal-tab.is-tooltip-visible .workshop-portal-tab-tooltip,
  .is-workshop-portal-shell .workshop-portal-tab:focus-visible .workshop-portal-tab-tooltip {
    display: block;
  }

  .is-workshop-portal-shell .workshop-portal-tab:has(.workshop-portal-tab-process-item:hover) .workshop-portal-tab-tooltip {
    display: none;
  }

  .is-workshop-portal-shell .workshop-portal-tab-panels {
    padding-top: 10px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-panel {
    gap: 10px;
  }

  .is-workshop-portal-shell .workshop-portal-tab {
    gap: 2px;
    min-height: 66px;
    padding: 7px 10px 6px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-heading {
    gap: 7px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-icon {
    height: 28px;
    width: 28px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-icon svg {
    height: 16px;
    width: 16px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-step-summary,
  .is-workshop-portal-shell .workshop-portal-tab small {
    margin-left: 35px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-process-series {
    gap: 6px;
  }

  .is-workshop-portal-shell .workshop-portal-tab-step-index {
    height: 20px;
    width: 20px;
  }

  .is-workshop-portal-shell .workshop-repair-appointment-panel.is-confirmation {
    gap: 10px;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
    padding: 14px 16px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-head,
  .is-workshop-portal-shell .workshop-appointment-confirmation-grid,
  .is-workshop-portal-shell .workshop-appointment-kva-follow-up {
    grid-column: 1 / -1;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-grid + .workshop-appointment-confirmation-info {
    grid-column: 1 / -1;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-head {
    gap: 12px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-title {
    gap: 11px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-title h2 {
    font-size: 17px;
    margin: 1px 0 2px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-title p {
    font-size: 13px;
    line-height: 1.3;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-icon {
    border-radius: 10px;
    height: 44px;
    width: 48px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-icon .workshop-action-icon {
    height: 38px;
    width: 42px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-status {
    font-size: 11px;
    padding: 6px 10px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-grid {
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-grid article,
  .is-workshop-portal-shell .workshop-appointment-confirmation-note {
    border-radius: 8px;
    gap: 3px;
    padding: 10px 12px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-grid article > span,
  .is-workshop-portal-shell .workshop-appointment-confirmation-note > span {
    font-size: 10px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-grid article > strong {
    font-size: 14px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-grid article > small,
  .is-workshop-portal-shell .workshop-appointment-confirmation-note p {
    font-size: 11px;
    line-height: 1.3;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-info {
    border-radius: 7px;
    font-size: 11px;
    gap: 8px;
    padding: 7px 10px;
  }

  .is-workshop-portal-shell .workshop-appointment-confirmation-info > span {
    height: 18px;
    width: 18px;
  }

  .is-workshop-portal-shell .workshop-appointment-kva-follow-up {
    border-radius: 8px;
    gap: 12px;
    padding: 10px 12px;
  }

  .is-workshop-portal-shell .workshop-appointment-kva-copy > span,
  .is-workshop-portal-shell .workshop-appointment-kva-copy > p {
    font-size: 11px;
  }

  .is-workshop-portal-shell .workshop-appointment-kva-copy > strong {
    font-size: 14px;
  }

  .is-workshop-portal-shell .workshop-delay-panel {
    padding: 12px 14px;
  }

  .is-workshop-portal-shell .workshop-delay-panel .panel-header {
    margin-bottom: 8px;
  }

  .is-workshop-portal-shell .workshop-delay-panel .panel-header h2 {
    font-size: 16px;
  }

  .is-workshop-portal-shell .workshop-delay-panel .panel-header .muted {
    font-size: 12px;
    line-height: 1.3;
    margin: 4px 0 0;
  }

  .is-workshop-portal-shell .workshop-delay-panel form {
    gap: 8px;
  }

  .is-workshop-portal-shell .workshop-delay-panel .workshop-delay-grid {
    gap: 8px;
  }

  .is-workshop-portal-shell .workshop-delay-panel label {
    font-size: 12px;
    gap: 4px;
  }

  .is-workshop-portal-shell .workshop-delay-panel input,
  .is-workshop-portal-shell .workshop-delay-panel select {
    min-height: 38px;
    padding: 7px 9px;
  }

  .is-workshop-portal-shell .workshop-delay-panel textarea {
    height: 62px;
    min-height: 62px;
    padding: 8px 9px;
  }

  .is-workshop-portal-shell .workshop-delay-panel .fine {
    font-size: 10px;
  }

  .is-workshop-portal-shell .workshop-delay-panel .button {
    min-height: 36px;
    padding: 7px 13px;
  }

  .is-workshop-portal-shell .workshop-portal-order-tab {
    gap: 10px;
    padding: 10px;
  }

  .is-workshop-portal-shell .workshop-portal-next-step {
    border-radius: 8px;
    gap: 14px;
    padding: 10px 13px;
  }

  .is-workshop-portal-shell .workshop-portal-next-step > div {
    gap: 2px;
  }

  .is-workshop-portal-shell .workshop-portal-next-step h2 {
    font-size: 1rem;
  }

  .is-workshop-portal-shell .workshop-portal-next-step p {
    font-size: 13px;
    line-height: 1.3;
  }

  .is-workshop-portal-shell .workshop-portal-next-step .button {
    min-height: 38px;
    min-width: 180px;
    padding: 8px 13px;
  }

  .is-workshop-portal-shell .workshop-portal-overview {
    gap: 8px;
    grid-template-columns: minmax(230px, .92fr) minmax(230px, 1fr) minmax(250px, 1.08fr);
    margin: 0;
    padding: 8px;
  }

  .is-workshop-portal-shell .workshop-portal-overview-grid {
    display: contents;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle {
    gap: 8px;
    grid-column: 1;
    grid-row: 1 / span 3;
    min-height: 0;
    padding: 13px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle strong {
    font-size: 18px;
  }

  .is-workshop-portal-shell .workshop-portal-plate,
  .is-workshop-portal-shell .workshop-portal-vin {
    gap: 2px;
    padding: 7px 9px;
  }

  .is-workshop-portal-shell .workshop-portal-plate b,
  .is-workshop-portal-shell .workshop-portal-vin b {
    font-size: 14px;
  }

  .is-workshop-portal-shell .workshop-portal-fact {
    gap: 4px;
    padding: 8px 9px;
  }

  .is-workshop-portal-shell .workshop-portal-fact:nth-child(1) {
    grid-column: 2;
    grid-row: 1;
  }

  .is-workshop-portal-shell .workshop-portal-fact:nth-child(2) {
    grid-column: 3;
    grid-row: 1 / span 2;
  }

  .is-workshop-portal-shell .workshop-portal-fact:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
  }

  .is-workshop-portal-shell .workshop-portal-fact:nth-child(4) {
    grid-column: 3;
    grid-row: 3;
  }

  .is-workshop-portal-shell .workshop-portal-fact:nth-child(5) {
    grid-column: 2;
    grid-row: 3;
  }

  .is-workshop-portal-shell .workshop-portal-fact.is-description {
    grid-column: 1 / -1;
    grid-row: 4;
  }

  .is-workshop-portal-shell .workshop-portal-fact strong,
  .is-workshop-portal-shell .workshop-portal-fact p {
    font-size: 12px;
    line-height: 1.3;
  }

  .is-workshop-portal-shell .workshop-portal-subject-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 2px 14px;
  }

  .is-workshop-portal-shell .workshop-portal-contact {
    gap: 4px;
  }

  .is-workshop-portal-shell .workshop-portal-contact span {
    font-size: 11px;
    gap: 4px;
  }

  .is-workshop-portal-shell .workshop-portal-pill-row {
    gap: 4px;
  }

  .is-workshop-portal-shell .workshop-portal-pill {
    font-size: 10px;
    min-height: 24px;
    padding: 4px 7px;
  }

  .is-workshop-portal-shell .workshop-portal-conditions {
    align-items: center;
    background: #f8fbff;
    border-style: solid;
    display: flex;
    gap: 12px;
    padding: 8px 10px;
  }

  .is-workshop-portal-shell .workshop-portal-conditions > strong {
    flex: 0 0 auto;
    font-size: 13px;
  }

  .is-workshop-portal-shell .workshop-portal-conditions > p {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: 0;
  }

  .is-workshop-portal-shell .workshop-portal-conditions .pill {
    font-size: 10px;
    min-height: 24px;
    padding: 4px 7px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos {
    padding: 10px 12px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .panel-header {
    align-items: center;
    margin-bottom: 8px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .panel-header h2 {
    font-size: 15px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .panel-header .muted {
    display: none;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .vehicle-photo-strip {
    display: flex;
    gap: 8px;
    overflow-x: auto;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .vehicle-photo-card {
    flex: 0 0 118px;
    gap: 5px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .vehicle-photo-card img {
    aspect-ratio: auto;
    height: 68px;
    object-fit: cover;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .vehicle-photo-download {
    font-size: 10px;
    min-height: 26px;
    padding: 4px 6px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .workshop-registration-document-preview {
    min-height: 68px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .workshop-registration-document-action {
    font-size: 10px;
    min-height: 26px;
    padding: 4px 6px;
  }

  .is-workshop-portal-shell .workshop-portal-vehicle-photos .vehicle-photo-zip-download {
    font-size: 11px;
    min-height: 30px;
    padding: 6px 9px;
  }
}

@media (max-width: 860px) {
  .workshop-submissions-header,
  .workshop-submission-group-head {
    align-items: stretch;
    flex-direction: column;
  }

  .workshop-submissions-summary {
    width: 100%;
  }

  .workshop-submissions-summary > span {
    flex: 1 1 0;
    justify-content: center;
  }

  .workshop-submission-group-head .pill {
    align-self: flex-start;
  }

  .workshop-submission-card-grid {
    grid-template-columns: 1fr;
  }

  .workshop-submission-file {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .workshop-submission-file-action {
    grid-column: 2;
    justify-self: start;
  }

  .workshop-portal-casebar-main > span {
    display: block;
    font-size: 13px;
    margin-top: 3px;
  }

  .workshop-portal-tabs {
    flex-wrap: nowrap;
  }

  .workshop-portal-tab {
    flex: 0 0 min(210px, 72vw);
  }

  .workshop-portal-tab.has-process-series {
    flex-basis: min(410px, 88vw);
    min-width: min(410px, 88vw);
  }

  .workshop-portal-tab-process-series {
    flex-wrap: wrap;
    row-gap: 6px;
  }

  .workshop-portal-overview,
  .workshop-portal-overview-grid {
    grid-template-columns: 1fr;
  }

  .workshop-portal-fact.is-description {
    grid-column: auto;
  }

  .workshop-portal-next-step {
    align-items: stretch;
    flex-direction: column;
  }

  .workshop-portal-next-step .button {
    min-width: 0;
    width: 100%;
  }

  .workshop-completion-entry-heading {
    flex-direction: column;
  }

  .workshop-completion-entry-form,
  .workshop-completion-special-case {
    grid-template-columns: 1fr;
  }

  .workshop-completion-entry-form .button,
  .workshop-completion-special-case .button {
    width: 100%;
  }

  .workshop-pickup-location-confirmation {
    grid-template-columns: 1fr;
  }

  .workshop-pickup-method-field .workshop-pickup-choice-row,
  .workshop-pickup-submit-row {
    grid-template-columns: 1fr;
  }

  .workshop-pickup-alternate-address {
    grid-column: auto;
  }

  .form-grid.two.workshop-pickup-date-grid,
  .form-grid.two.workshop-pre-estimate-upload-grid,
  .form-grid.two.workshop-repair-appointment-grid,
  .form-grid.three.workshop-pre-estimate-amount-grid,
  .form-grid.three.workshop-pickup-confirmation-grid {
    grid-template-columns: 1fr 1fr;
  }

  .form-grid.three.workshop-pre-estimate-amount-grid > label:nth-child(-n + 2) {
    grid-template-rows: minmax(38px, auto) auto;
  }
}

@media (min-width: 1241px) {
  .workshop-estimate-extraction.is-compact .workshop-estimate-pdf-highlight-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1240px) {
  .workshop-estimate-extraction.has-pdf-preview .workshop-estimate-analysis-layout {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-pdf-preview {
    position: static;
  }

  .workshop-estimate-pdf-preview-stage,
  .workshop-estimate-pdf-preview iframe,
  .workshop-estimate-pdf-page-viewer {
    height: 680px;
    min-height: 680px;
  }
}

@media (max-width: 680px) {
  .workshop-pickup-panel {
    padding-bottom: 18px;
  }

  .workshop-appointment-confirmation-head {
    align-items: flex-start;
  }

  .workshop-appointment-confirmation-title {
    align-items: flex-start;
  }

  .workshop-appointment-confirmation-icon {
    height: 50px;
    width: 54px;
  }

  .workshop-appointment-confirmation-grid {
    grid-template-columns: 1fr;
  }

  .workshop-appointment-kva-follow-up {
    align-items: stretch;
    flex-direction: column;
  }

  .workshop-appointment-kva-follow-up > .button {
    width: 100%;
  }

  .workshop-appointment-kva-follow-up > .status {
    align-self: flex-start;
  }

  .workshop-pickup-intro {
    align-items: flex-start;
    padding: 18px 16px;
  }

  .workshop-pickup-intro-icon {
    height: 52px;
    width: 54px;
  }

  .workshop-pickup-form {
    margin-top: 16px;
    padding: 0 10px;
  }

  .workshop-pickup-section,
  .workshop-process-path-field,
  .workshop-pickup-method-field,
  .workshop-pickup-submit-row {
    border-radius: 12px;
    padding: 15px;
  }

  .workshop-pickup-choice-row {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-extraction-head,
  .workshop-estimate-pdf-preview-head {
    align-items: stretch;
    flex-direction: column;
  }

  .workshop-estimate-extraction-head .pill,
  .workshop-estimate-pdf-preview-head .button {
    align-self: start;
  }

  .workshop-estimate-scan-targets {
    right: 10px;
    width: 38%;
  }

  .workshop-estimate-scan-paper {
    left: 12px;
  }

  .workshop-estimate-scan-transfer {
    left: 116px;
  }

  .workshop-estimate-pdf-preview-stage,
  .workshop-estimate-pdf-preview iframe,
  .workshop-estimate-pdf-page-viewer {
    height: 520px;
    min-height: 520px;
  }

  .workshop-estimate-pdf-highlight-list {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-editor-grid {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-metadata-grid,
  .workshop-estimate-decision-facts {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-parts-group-head {
    display: grid;
  }

  .workshop-estimate-parts-group-head .pill {
    justify-self: start;
  }

  .workshop-estimate-parts-fields {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-editor-control {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-extraction.is-compact .workshop-estimate-parts-fields {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-extraction.is-compact .workshop-estimate-editor-field {
    grid-template-columns: minmax(140px, 1.2fr) minmax(0, 1.8fr);
  }

  .workshop-estimate-extraction.is-compact .workshop-estimate-editor-control {
    grid-template-columns: minmax(0, 1fr) minmax(76px, .62fr);
  }

  .form-grid.two.workshop-pickup-date-grid,
  .form-grid.two.workshop-pickup-standard-grid,
  .form-grid.two.workshop-pickup-pre-grid,
  .form-grid.two.workshop-pre-estimate-upload-grid,
  .form-grid.two.workshop-repair-appointment-grid,
  .form-grid.three.workshop-pre-estimate-amount-grid,
  .form-grid.three.workshop-pickup-confirmation-grid {
    grid-template-columns: 1fr;
  }

  .workshop-pickup-fixed-status {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .workshop-pickup-fixed-status > .fine {
    grid-column: auto;
  }

  .form-grid.three.workshop-pre-estimate-amount-grid > label:nth-child(-n + 2) {
    grid-template-rows: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .workshop-estimate-scan-paper i,
  .workshop-estimate-scan-transfer span,
  .workshop-estimate-extraction.is-analyzing .workshop-estimate-extraction-result {
    animation: none;
  }

  .workshop-estimate-scan-transfer span {
    opacity: 1;
    transform: none;
  }
}

.completion-overview {
  display: grid;
  gap: 18px;
}

.completion-summary-grid,
.completion-kpi-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.completion-summary-card,
.completion-kpi {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  min-height: 96px;
  padding: 14px;
}

.completion-summary-card span,
.completion-kpi span,
.completion-kpi small {
  color: var(--muted);
  font-size: 13px;
}

.completion-summary-card strong,
.completion-kpi strong {
  color: var(--brand-navy);
  font-size: 21px;
  line-height: 1.15;
}

.completion-subsection {
  display: grid;
  gap: 12px;
}

.completion-subsection h3 {
  color: var(--brand-navy);
  font-size: 16px;
  margin: 0;
}

.completion-timeline {
  border-left: 2px solid rgba(0, 58, 150, .16);
  display: grid;
  gap: 12px;
  padding-left: 16px;
}

.completion-timeline-item {
  display: grid;
  gap: 4px;
  position: relative;
}

.completion-timeline-item::before {
  background: var(--brand-orange);
  border: 3px solid #ffffff;
  border-radius: 999px;
  box-shadow: 0 0 0 1px rgba(0, 58, 150, .16);
  content: "";
  height: 10px;
  left: -22px;
  position: absolute;
  top: 4px;
  width: 10px;
}

.completion-timeline-item span,
.completion-timeline-item p {
  color: var(--muted);
  font-size: 13px;
  margin: 0;
}

.completion-timeline-item strong {
  color: var(--brand-navy);
}

.completion-timeline-item.is-progress::before {
  background: var(--brand-blue);
}

.completion-timeline-item.is-success::before {
  background: #159455;
}

.completion-timeline-item.is-danger::before {
  background: #c83c32;
}

.workshop-portal-completion-lock {
  align-items: stretch;
  background: linear-gradient(120deg, #effaf4 0%, #f7fbf9 58%, #ffffff 100%);
  border-color: rgba(21, 148, 85, .5);
  display: grid;
  gap: 20px;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .75fr);
  padding: 20px 22px;
}

.workshop-portal-completion-lock-copy {
  align-content: center;
  display: grid;
  gap: 6px;
}

.workshop-portal-completion-lock-copy > span {
  color: #117744;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.workshop-portal-completion-lock-copy h2 {
  color: var(--brand-navy);
  font-size: 22px;
  margin: 0;
}

.workshop-portal-completion-lock-copy p,
.workshop-portal-completion-lock-copy small,
.workshop-portal-completion-lock-contact p {
  color: var(--muted);
  margin: 0;
}

.workshop-portal-completion-lock-copy p {
  font-size: 13px;
  font-weight: 650;
}

.workshop-portal-completion-lock-copy small {
  font-size: 11px;
}

.workshop-portal-completion-lock-contact {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 10px;
  display: grid;
  gap: 12px;
  padding: 14px 16px;
}

.workshop-portal-completion-lock-contact > div:first-child {
  display: grid;
  gap: 4px;
}

.workshop-portal-completion-lock-contact > div:first-child > strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.workshop-portal-completion-lock-contact p {
  font-size: 11px;
}

.workshop-portal-completion-lock-contact .button {
  align-items: center;
  display: flex;
  justify-content: space-between;
  text-align: left;
}

.workshop-portal-completion-lock-contact .button strong {
  font-size: 11px;
}

.workshop-portal-completion-phone-missing {
  color: var(--brand-navy);
  display: grid;
  font-size: 11px;
  gap: 3px;
}

.workshop-documents-history {
  border-color: rgba(0, 58, 150, .24);
  gap: 0;
  overflow: hidden;
  padding: 0;
}

.workshop-documents-history-title {
  background: var(--brand-navy);
  padding: 16px 22px;
}

.workshop-documents-history-title h2 {
  color: #ffffff;
  font-size: 20px;
  margin: 0;
}

.workshop-documents-status {
  align-items: center;
  background: #f2f7fd;
  border: 1px solid rgba(0, 58, 150, .2);
  border-radius: 7px;
  color: var(--brand-navy);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin: 16px 22px 0;
  min-height: 50px;
  padding: 12px 18px;
}

.workshop-documents-status.is-complete {
  background: #edf9f3;
  border-color: rgba(21, 148, 85, .7);
}

.workshop-documents-status strong {
  font-size: 14px;
}

.workshop-documents-status strong > span {
  font-weight: 900;
}

.workshop-documents-status > span {
  color: var(--muted);
  flex: 0 0 auto;
  font-size: 12px;
}

.workshop-documents-history-grid {
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1.45fr) minmax(290px, .95fr);
  padding: 18px 22px 22px;
}

.workshop-document-packages,
.workshop-document-history {
  min-width: 0;
}

.workshop-document-packages > h3,
.workshop-document-history > h3 {
  color: var(--brand-navy);
  font-size: 16px;
  margin: 0 0 8px;
}

.workshop-document-packages > div {
  display: grid;
  gap: 7px;
}

.workshop-document-package {
  background: #f8fafc;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 6px;
  min-width: 0;
  overflow: hidden;
}

.workshop-document-package[open] {
  background: #ffffff;
  border-color: rgba(0, 58, 150, .28);
  box-shadow: 0 6px 18px rgba(0, 29, 75, .06);
}

.workshop-document-package summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  list-style: none;
  min-height: 58px;
  padding: 11px 16px 11px 18px;
}

.workshop-document-package summary::-webkit-details-marker {
  display: none;
}

.workshop-document-package summary:focus-visible {
  outline: 3px solid rgba(0, 58, 150, .25);
  outline-offset: -3px;
}

.workshop-document-package-summary-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.workshop-document-package-summary-copy > strong {
  color: var(--brand-navy);
  font-size: 14px;
}

.workshop-document-package-summary-copy > small {
  color: var(--muted);
  font-size: 11px;
  overflow-wrap: anywhere;
}

.workshop-document-package-action {
  align-items: flex-end;
  display: grid;
  gap: 2px;
  justify-items: end;
  min-width: 84px;
}

.workshop-document-package-action small {
  color: var(--muted);
  font-size: 10px;
}

.workshop-document-package-action strong {
  color: var(--brand-blue);
  font-size: 11px;
}

.workshop-document-package-action strong::after {
  border-bottom: 2px solid currentColor;
  border-right: 2px solid currentColor;
  content: "";
  display: inline-block;
  height: 6px;
  margin-left: 8px;
  transform: rotate(45deg) translateY(-2px);
  transition: transform .18s ease;
  width: 6px;
}

.workshop-document-package[open] .workshop-document-package-action strong::after {
  transform: rotate(225deg) translate(-2px, -1px);
}

.workshop-document-package-content {
  border-top: 1px solid rgba(0, 58, 150, .1);
  display: grid;
  gap: 8px;
  padding: 10px;
}

.workshop-document-package-content > h2,
.workshop-document-package-content > p {
  margin: 0 4px;
}

.workshop-document-package-content > h2 {
  color: var(--brand-navy);
  font-size: 14px;
}

.workshop-document-package-content > p:not(.fine) {
  color: var(--muted);
  font-size: 11px;
}

.workshop-document-package-file {
  align-items: center;
  background: #f8fbff;
  border: 1px solid rgba(0, 58, 150, .11);
  border-radius: 6px;
  color: inherit;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 48px;
  padding: 8px 10px;
  text-decoration: none;
}

.workshop-document-package-file:hover {
  background: #eef6ff;
  border-color: rgba(0, 58, 150, .3);
}

.workshop-document-package-file.is-unavailable {
  opacity: .7;
}

.workshop-document-package-file-icon {
  align-items: center;
  background: #e8eff9;
  border-radius: 5px;
  color: var(--brand-navy);
  display: flex;
  font-size: 9px;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  width: 34px;
}

.workshop-document-package-file-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.workshop-document-package-file-copy strong {
  color: var(--brand-navy);
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workshop-document-package-file-copy small {
  color: var(--muted);
  font-size: 10px;
  overflow-wrap: anywhere;
}

.workshop-document-package-file > span:last-child {
  color: var(--brand-blue);
  font-size: 11px;
  font-weight: 800;
}

.workshop-document-history .completion-timeline {
  gap: 14px;
  margin-left: 7px;
  padding-bottom: 2px;
}

.workshop-document-history .completion-timeline-item {
  gap: 3px;
  min-height: 50px;
}

.workshop-document-history .completion-timeline-item::before {
  height: 9px;
  left: -22px;
  width: 9px;
}

.workshop-document-history .completion-timeline-item strong {
  font-size: 12px;
}

.workshop-document-history .completion-timeline-item span,
.workshop-document-history .completion-timeline-item p {
  font-size: 10px;
}

.workshop-document-locked-note {
  background: #fff5f4;
  border: 1px solid #cf3f36;
  border-radius: 6px;
  color: var(--brand-navy);
  margin-top: 12px;
  padding: 13px 16px;
}

.workshop-document-locked-note strong {
  font-size: 12px;
}

.workshop-document-locked-note p {
  color: var(--muted);
  font-size: 10px;
  margin: 5px 0 0;
}

@media (max-width: 860px) {
  .workshop-portal-completion-lock {
    grid-template-columns: 1fr;
  }

  .workshop-documents-status {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .workshop-documents-history-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .workshop-portal-completion-lock {
    gap: 14px;
    padding: 16px;
  }

  .workshop-portal-completion-lock-copy h2 {
    font-size: 19px;
  }

  .workshop-portal-completion-lock-contact .button {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
  }

  .workshop-documents-history-title {
    padding: 14px 16px;
  }

  .workshop-documents-history-title h2 {
    font-size: 17px;
  }

  .workshop-documents-status {
    margin: 12px 12px 0;
    padding: 11px 13px;
  }

  .workshop-documents-history-grid {
    gap: 22px;
    padding: 14px 12px 16px;
  }

  .workshop-document-package summary {
    gap: 10px;
    padding: 10px 12px;
  }

  .workshop-document-package-action {
    min-width: 70px;
  }

  .workshop-document-package-file {
    align-items: start;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .workshop-document-package-file > span:last-child {
    grid-column: 2;
  }
}

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

.workshop-order-list {
  display: grid;
  gap: 14px;
}

.workshop-order-entry {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

.workshop-order-entry summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  padding: 13px 14px;
}

.workshop-order-entry[open] summary {
  border-bottom: 1px solid var(--line);
}

.workshop-order-entry > .grid,
.workshop-order-entry > .actions {
  padding: 14px;
}

.workshop-order-entry > .actions {
  border-top: 1px solid var(--line);
}

.workshop-estimate-review-notice {
  border: 2px solid rgba(255, 126, 9, .52);
  border-radius: 10px;
  display: grid;
  gap: 14px;
  padding: 18px;
}

.workshop-estimate-review-notice.is-new {
  background: linear-gradient(135deg, #fff8ef 0%, #ffffff 70%);
  box-shadow: 0 8px 24px rgba(152, 78, 0, .08);
}

.workshop-estimate-review-notice.is-pending {
  background: #fff8ef;
}

.workshop-estimate-review-notice h3,
.workshop-estimate-review-notice p {
  margin: 0;
}

.workshop-estimate-review-notice h3 {
  color: var(--brand-navy);
  font-size: 20px;
  margin-top: 4px;
}

.workshop-estimate-review-notice p {
  color: var(--muted);
}

.workshop-estimate-review-heading {
  align-items: flex-start;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}

.workshop-estimate-review-facts {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.workshop-estimate-review-facts > div {
  background: rgba(255, 255, 255, .86);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px;
}

.workshop-estimate-review-facts span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.workshop-estimate-review-facts strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.workshop-estimate-review-reason {
  background: rgba(255, 255, 255, .82);
  border-radius: 8px;
  padding: 12px;
}

.manager-workshop-estimate-review {
  display: grid;
  gap: 7px;
  min-height: 0;
}

.manager-estimate-decision-reopen-review {
  display: grid;
  gap: 10px;
  min-height: 0;
}

.manager-estimate-decision-reopen-review[hidden],
.manager-estimate-decision-reopen-form[hidden] {
  display: none;
}

.manager-workshop-estimate-previous-decision {
  background: linear-gradient(135deg, #fff8ef 0%, #ffffff 72%);
  border: 1px solid rgba(255, 126, 9, .38);
  border-left: 5px solid var(--brand-orange);
  border-radius: 10px;
  display: grid;
  gap: 8px;
  padding: 10px 12px;
}

.manager-workshop-estimate-previous-decision.is-rejected {
  background: linear-gradient(135deg, #fff2f1 0%, #ffffff 72%);
  border-color: rgba(184, 45, 28, .28);
  border-left-color: var(--red);
}

.manager-workshop-estimate-previous-decision.is-full {
  background: linear-gradient(135deg, #effbf5 0%, #ffffff 72%);
  border-color: rgba(0, 126, 83, .28);
  border-left-color: var(--green);
}

.manager-workshop-estimate-previous-decision .manager-workshop-estimate-decision-heading {
  align-items: center;
}

.manager-workshop-estimate-previous-decision .manager-workshop-estimate-decision-heading > div {
  display: grid;
  gap: 2px;
}

.manager-workshop-estimate-previous-decision .manager-workshop-estimate-review-facts > div.is-wide {
  grid-column: span 2;
}

.manager-workshop-estimate-previous-decision .manager-workshop-estimate-review-facts {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.manager-workshop-estimate-read-only-actions {
  justify-content: flex-end;
}

.manager-estimate-decision-reopen-actions {
  justify-content: flex-end;
}

.manager-estimate-decision-reopen-form {
  margin: 0 auto;
  max-width: 1180px;
  width: 100%;
}

.manager-workshop-estimate-review-context {
  background: linear-gradient(135deg, #eef6ff 0%, #ffffff 72%);
  border: 1px solid rgba(0, 73, 157, .18);
  border-left: 5px solid var(--brand-blue);
  border-radius: 10px;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(230px, .55fr) minmax(0, 2.8fr);
  padding: 8px 10px;
}

.manager-workshop-estimate-review-context-heading {
  display: grid;
  gap: 2px;
}

.manager-workshop-estimate-review-context-heading .case-focus-kicker {
  font-size: 10px;
}

.manager-workshop-estimate-review-context h3,
.manager-workshop-estimate-review-context p,
.manager-workshop-estimate-decision-section h3,
.manager-workshop-estimate-decision-section p,
.manager-workshop-estimate-decision h4,
.manager-workshop-estimate-decision p {
  margin: 0;
}

.manager-workshop-estimate-review-context h3,
.manager-workshop-estimate-decision-section h3,
.manager-workshop-estimate-decision h4 {
  color: var(--brand-navy);
}

.manager-workshop-estimate-review-context h3 {
  font-size: 16px;
}

.manager-workshop-estimate-review-context p,
.manager-workshop-estimate-decision-section p,
.manager-workshop-estimate-decision p {
  color: var(--muted);
}

.manager-workshop-estimate-review-context p {
  font-size: 11px;
  line-height: 1.3;
}

.manager-workshop-estimate-review-facts {
  display: grid;
  gap: 5px;
  grid-template-columns: repeat(9, minmax(0, 1fr));
}

.manager-workshop-estimate-review-facts > div {
  background: rgba(255, 255, 255, .9);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 5px 6px;
}

.manager-workshop-estimate-review-facts > div:last-child {
  grid-column: span 2;
}

.manager-workshop-estimate-review-facts span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.manager-workshop-estimate-review-facts strong {
  color: var(--brand-navy);
  font-size: 11px;
  overflow-wrap: anywhere;
}

.manager-workshop-estimate-review-workspace {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(360px, 1fr) minmax(300px, .72fr) minmax(360px, 1fr);
  min-height: 420px;
}

.manager-workshop-estimate-review-photos,
.manager-workshop-estimate-review-costs,
.manager-workshop-estimate-review-document {
  background: #fbfdff;
  border: 1px solid rgba(28, 50, 74, .14);
  border-radius: 10px;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.manager-workshop-estimate-review-photos,
.manager-workshop-estimate-review-costs {
  display: grid;
  gap: 6px;
  padding: 8px;
}

.manager-workshop-estimate-review-photos {
  background: linear-gradient(150deg, #f6faff 0%, #ffffff 60%);
  border-color: rgba(0, 89, 190, .32);
  box-shadow: 0 10px 28px rgba(0, 58, 150, .08);
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.manager-workshop-estimate-review-photos.has-additional-photos {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}

.manager-workshop-estimate-review-panel-head {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  min-height: 26px;
}

.manager-workshop-estimate-review-panel-head > div {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.manager-workshop-estimate-review-panel-head h3 {
  color: var(--brand-navy);
  font-size: 15px;
  line-height: 1.2;
  margin: 0;
}

.manager-workshop-estimate-photo-scope {
  align-items: center;
  background: #eef5fc;
  border: 1px solid rgba(0, 89, 190, .18);
  border-radius: 7px;
  color: var(--brand-navy);
  cursor: pointer;
  display: grid;
  font-size: 10px;
  font-weight: 800;
  gap: 6px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  line-height: 1.25;
  padding: 5px 7px;
}

.manager-workshop-estimate-photo-scope input {
  accent-color: var(--brand-blue);
  height: 15px;
  margin: 0;
  width: 15px;
}

.manager-workshop-estimate-photo-scope small {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(0, 89, 190, .18);
  border-radius: 999px;
  display: inline-flex;
  font-size: 10px;
  justify-content: center;
  min-width: 22px;
  padding: 2px 6px;
}

.manager-workshop-estimate-photo-stage {
  background: #14263c;
  border-radius: 8px;
  min-height: 0;
  overflow: hidden;
}

.manager-workshop-estimate-photo-primary {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  height: 100%;
  text-decoration: none;
}

.manager-workshop-estimate-photo-primary img {
  height: 100%;
  min-height: 0;
  object-fit: contain;
  width: 100%;
}

.manager-workshop-estimate-photo-primary > span {
  align-items: center;
  background: rgba(0, 29, 75, .94);
  color: #ffffff;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  min-width: 0;
  padding: 7px 9px;
}

.manager-workshop-estimate-photo-primary strong,
.manager-workshop-estimate-photo-primary small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.manager-workshop-estimate-photo-primary small {
  color: rgba(255, 255, 255, .72);
}

.manager-workshop-estimate-photo-primary small.is-full {
  display: none;
}

.manager-workshop-estimate-photo-strip {
  display: grid;
  gap: 7px;
  grid-auto-columns: 118px;
  grid-auto-flow: column;
  overflow-x: auto;
  padding-bottom: 2px;
}

.manager-workshop-estimate-photo-stage[hidden],
.manager-workshop-estimate-photo-strip[hidden],
.manager-workshop-estimate-photo-strip > a[hidden],
.manager-workshop-estimate-photo-empty[hidden] {
  display: none;
}

.manager-workshop-estimate-photo-strip > a {
  background: #e6edf5;
  border: 2px solid transparent;
  border-radius: 7px;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  height: 90px;
  overflow: hidden;
  position: relative;
  text-decoration: none;
}

.manager-workshop-estimate-photo-strip > a.is-primary {
  border-color: var(--brand-orange);
}

.manager-workshop-estimate-photo-strip img {
  height: 100%;
  min-height: 0;
  object-fit: cover;
  width: 100%;
}

.manager-workshop-estimate-photo-strip span {
  background: #eef3f8;
  color: var(--brand-navy);
  display: block;
  min-width: 0;
  padding: 3px 5px 4px;
}

.manager-workshop-estimate-photo-strip strong {
  display: none;
}

.manager-workshop-estimate-photo-strip small {
  display: block;
  font-size: 8px;
  font-weight: 800;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
}

.manager-workshop-estimate-photo-strip small.is-full {
  display: none;
}

.manager-workshop-estimate-photo-strip small.is-short {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  white-space: normal;
}

.manager-workshop-estimate-photo-empty {
  align-content: center;
  background: var(--surface-soft);
  border: 1px dashed rgba(28, 50, 74, .22);
  border-radius: 8px;
  color: var(--muted);
  display: grid;
  gap: 4px;
  justify-items: center;
  text-align: center;
}

.manager-workshop-estimate-photo-empty strong {
  color: var(--brand-navy);
}

.manager-workshop-estimate-review-costs {
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.manager-workshop-estimate-review-cost-grid {
  align-content: start;
  display: grid;
  gap: 2px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-height: 0;
  overflow: auto;
}

.manager-workshop-estimate-review-cost-grid > div {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 7px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 3px 6px;
}

.manager-workshop-estimate-review-cost-grid > div.has-pdf-jump,
.manager-workshop-estimate-review-cost-totals > div.has-pdf-jump {
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.manager-workshop-estimate-review-cost-grid > div.has-pdf-jump:hover,
.manager-workshop-estimate-review-cost-totals > div.has-pdf-jump:hover {
  border-color: rgba(0, 89, 190, .58);
  box-shadow: 0 4px 12px rgba(0, 58, 150, .12);
  transform: translateY(-1px);
}

.manager-workshop-estimate-review-cost-grid > div.has-pdf-jump:focus-visible,
.manager-workshop-estimate-review-cost-totals > div.has-pdf-jump:focus-visible {
  outline: 3px solid rgba(0, 89, 190, .32);
  outline-offset: 2px;
}

.manager-workshop-estimate-review-cost-grid > div.has-pdf-jump strong,
.manager-workshop-estimate-review-cost-totals > div.has-pdf-jump strong {
  text-decoration: underline;
  text-decoration-color: rgba(0, 89, 190, .46);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.manager-workshop-estimate-review-cost-grid span,
.manager-workshop-estimate-review-cost-totals span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.manager-workshop-estimate-review-cost-grid strong {
  color: var(--brand-navy);
  font-size: 12px;
}

.manager-workshop-estimate-review-cost-grid strong.is-missing {
  color: #9a4d0e;
  font-size: 11px;
}

.manager-workshop-estimate-review-cost-totals {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.manager-workshop-estimate-review-cost-totals > div {
  background: #eef5ff;
  border: 1px solid rgba(0, 89, 190, .18);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 7px 8px;
}

.manager-workshop-estimate-review-cost-totals strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.manager-workshop-estimate-review-cost-totals > div.is-primary {
  background: var(--brand-navy);
  border-color: var(--brand-navy);
}

.manager-workshop-estimate-review-cost-totals > div.is-primary span,
.manager-workshop-estimate-review-cost-totals > div.is-primary strong {
  color: #ffffff;
}

.manager-workshop-estimate-review-document {
  display: grid;
}

.manager-workshop-estimate-review-document .workshop-estimate-pdf-preview {
  border: 0;
  border-radius: 0;
  display: grid;
  gap: 6px;
  grid-template-rows: auto minmax(0, 1fr);
  height: 100%;
  min-height: 0;
  padding: 8px;
  position: static;
}

.manager-workshop-estimate-review-document .workshop-estimate-pdf-preview[hidden] {
  display: none;
}

.manager-workshop-estimate-review-document .workshop-estimate-pdf-preview-head {
  align-items: center;
  gap: 8px;
}

.manager-workshop-estimate-review-document .workshop-estimate-pdf-preview-identity {
  gap: 7px;
  grid-template-columns: 24px minmax(0, 1fr);
}

.manager-workshop-estimate-review-document .workshop-estimate-pdf-document-icon {
  height: 27px;
  width: 22px;
}

.manager-workshop-estimate-review-document [data-estimate-pdf-preview-copy] {
  gap: 0;
}

.manager-workshop-estimate-review-document [data-estimate-pdf-preview-description] {
  display: none;
}

.manager-workshop-estimate-review-document [data-estimate-pdf-open] {
  display: none;
}

.manager-workshop-estimate-review-document .workshop-estimate-pdf-document-shell {
  height: 100%;
  min-height: 0;
}

.manager-workshop-estimate-review-document .workshop-estimate-pdf-preview-stage,
.manager-workshop-estimate-review-document .workshop-estimate-pdf-page-viewer,
.manager-workshop-estimate-review-document .workshop-estimate-pdf-preview iframe {
  height: 100%;
  min-height: 0;
}

.workshop-estimate-editor.is-readonly input[readonly] {
  background: #f3f6fa;
  border-color: #d9e2ec;
  color: var(--brand-navy);
  cursor: default;
  font-weight: 800;
}

.manager-workshop-estimate-decision-section {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 5px;
  padding-top: 5px;
}

.manager-workshop-estimate-ai-suggestion {
  background: linear-gradient(135deg, #f5f0ff 0%, #ffffff 72%);
  border: 1px solid rgba(92, 56, 180, .28);
  border-left: 5px solid #6b46c1;
  border-radius: 10px;
  display: grid;
  gap: 7px 14px;
  grid-template-columns: minmax(250px, .78fr) minmax(0, 1.22fr);
  padding: 10px 12px;
}

.manager-workshop-estimate-ai-suggestion.is-unavailable {
  background: linear-gradient(135deg, #f5f7fa 0%, #ffffff 72%);
  border-color: var(--line);
  border-left-color: #7b8794;
  grid-template-columns: 1fr;
}

.manager-workshop-estimate-ai-suggestion.is-pending {
  align-items: center;
  gap: 4px 10px;
  grid-template-columns: auto minmax(250px, 1fr) auto;
  padding: 7px 10px;
}

.manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-suggestion-head {
  display: contents;
}

.manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-badge {
  grid-column: 1;
  grid-row: 1;
}

.manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-suggestion-head .pill {
  grid-column: 3;
  grid-row: 1;
}

.manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-suggestion-copy {
  grid-column: 2;
  grid-row: 1;
}

.manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-suggestion-copy > span,
.manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-suggestion-copy > p {
  display: none;
}

.manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-suggestion-copy h3 {
  font-size: 14px;
}

.manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-disclaimer {
  font-size: 10px;
  grid-row: 2;
  line-height: 1.25;
  padding-top: 3px;
}

@media (min-width: 1081px) {
  .manager-workshop-estimate-review-context {
    gap: 6px;
    grid-template-columns: minmax(215px, .5fr) minmax(0, 2.9fr);
    padding: 6px 8px;
  }

  .manager-workshop-estimate-review-context-heading {
    align-content: center;
    gap: 1px;
  }

  .manager-workshop-estimate-review-context-heading .case-focus-kicker {
    font-size: 9px;
  }

  .manager-workshop-estimate-review-context-heading h3 {
    font-size: 15px;
    line-height: 1.15;
  }

  .manager-workshop-estimate-review-context-heading p {
    display: none;
  }

  .manager-workshop-estimate-review-facts {
    gap: 4px;
  }

  .manager-workshop-estimate-review-facts > div {
    gap: 1px;
    padding: 4px 5px;
  }

  .manager-workshop-estimate-review-facts span {
    font-size: 9px;
    line-height: 1.15;
  }

  .manager-workshop-estimate-review-facts strong {
    font-size: 10.5px;
    line-height: 1.2;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed {
    align-items: start;
    gap: 4px 10px;
    grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr) auto;
    padding: 7px 10px;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-suggestion-head {
    display: contents;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-badge {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-suggestion-head .pill {
    grid-column: 3;
    grid-row: 1;
    white-space: nowrap;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-suggestion-copy {
    grid-column: 1;
    grid-row: 2;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-suggestion-copy h3 {
    font-size: 15px;
    line-height: 1.15;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-suggestion-copy p,
  .manager-workshop-estimate-ai-suggestion.is-completed li {
    font-size: 10.5px;
    line-height: 1.22;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed ul {
    align-content: start;
    gap: 1px;
    grid-column: 2 / -1;
    grid-row: 2;
    padding-left: 16px;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-suggestion-meta {
    flex-wrap: nowrap;
    font-size: 9px;
    gap: 4px;
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-suggestion-meta > span {
    padding: 3px 5px;
    white-space: nowrap;
  }

  .manager-workshop-estimate-ai-suggestion.is-completed .manager-workshop-estimate-ai-disclaimer {
    font-size: 10px;
    grid-column: 1 / -1;
    grid-row: 3;
    line-height: 1.2;
    padding-top: 3px;
  }
}

.manager-workshop-estimate-ai-suggestion-head,
.manager-workshop-estimate-ai-suggestion-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  grid-column: 1 / -1;
}

.manager-workshop-estimate-ai-suggestion-head {
  justify-content: space-between;
}

.manager-workshop-estimate-ai-badge,
.manager-workshop-estimate-ai-card-badge {
  background: #6b46c1;
  border-radius: 999px;
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
  padding: 6px 9px;
  text-transform: uppercase;
}

.manager-workshop-estimate-ai-suggestion-copy {
  display: grid;
  gap: 3px;
}

.manager-workshop-estimate-ai-suggestion-copy > span,
.manager-workshop-estimate-ai-suggestion-meta {
  color: #5d4b83;
  font-size: 10px;
  font-weight: 800;
}

.manager-workshop-estimate-ai-suggestion-copy h3,
.manager-workshop-estimate-ai-suggestion-copy p {
  margin: 0;
}

.manager-workshop-estimate-ai-suggestion-copy h3 {
  color: var(--brand-navy);
  font-size: 17px;
}

.manager-workshop-estimate-ai-suggestion-copy p,
.manager-workshop-estimate-ai-suggestion li,
.manager-workshop-estimate-ai-disclaimer {
  font-size: 12px;
  line-height: 1.35;
}

.manager-workshop-estimate-ai-suggestion ul {
  display: grid;
  gap: 3px;
  margin: 0;
  padding-left: 18px;
}

.manager-workshop-estimate-ai-suggestion li::marker {
  color: #6b46c1;
}

.manager-workshop-estimate-ai-suggestion-meta span {
  background: rgba(107, 70, 193, .08);
  border-radius: 999px;
  padding: 4px 7px;
}

.manager-workshop-estimate-ai-disclaimer {
  border-top: 1px solid rgba(92, 56, 180, .14);
  color: var(--muted);
  grid-column: 1 / -1;
  margin: 0;
  padding-top: 6px;
}

.manager-workshop-estimate-decision-heading {
  align-items: end;
  display: flex;
  gap: 5px 10px;
}

.manager-workshop-estimate-decision-heading .case-focus-kicker {
  align-self: center;
}

.manager-workshop-estimate-decision-heading p {
  font-size: 11px;
  margin-left: auto;
}

.manager-workshop-estimate-decisions {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.manager-workshop-estimate-decision {
  background: #ffffff;
  border: 1px solid var(--line);
  border-top: 4px solid var(--green);
  border-radius: 10px;
  display: grid;
  gap: 3px;
  grid-template-rows: auto auto auto 1fr auto;
  min-width: 0;
  padding: 6px 8px;
  position: relative;
}

.manager-workshop-estimate-decision.is-ai-recommended {
  box-shadow: 0 0 0 2px rgba(107, 70, 193, .24), 0 10px 24px rgba(64, 41, 117, .12);
}

.manager-workshop-estimate-ai-card-badge {
  position: absolute;
  right: 6px;
  top: 6px;
}

.manager-workshop-estimate-decision .case-focus-kicker {
  font-size: 10px;
}

.manager-workshop-estimate-decision .button {
  min-height: 32px;
  padding: 6px 9px;
}

.manager-workshop-estimate-decision h4 {
  font-size: 14px;
}

.manager-workshop-estimate-decision p,
.manager-workshop-estimate-decision label {
  font-size: 11px;
  line-height: 1.22;
}

.manager-workshop-estimate-decision input,
.manager-workshop-estimate-decision textarea {
  font-size: 11.5px;
  padding: 5px 7px;
}

.manager-workshop-estimate-decision textarea {
  min-height: 34px;
}

.manager-workshop-estimate-decision.is-reduced {
  border-top-color: var(--brand-orange);
}

.manager-workshop-estimate-decision.is-reject {
  border-top-color: var(--red);
}

.manager-workshop-estimate-decision label {
  align-self: start;
}

.manager-workshop-estimate-decision .button {
  align-self: end;
  justify-content: center;
  width: 100%;
}

@media (max-width: 1080px) {
  .manager-workshop-estimate-review-context,
  .manager-workshop-estimate-review-workspace,
  .manager-workshop-estimate-decisions {
    grid-template-columns: 1fr;
  }

  .manager-workshop-estimate-ai-suggestion {
    grid-template-columns: 1fr;
  }

  .manager-workshop-estimate-review-facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .manager-workshop-estimate-review-facts > div:last-child {
    grid-column: auto;
  }

  .manager-workshop-estimate-review-workspace {
    min-height: 0;
  }

  .manager-workshop-estimate-photo-stage {
    min-height: 360px;
  }

  .manager-workshop-estimate-review-document .workshop-estimate-pdf-preview-stage,
  .manager-workshop-estimate-review-document .workshop-estimate-pdf-page-viewer,
  .manager-workshop-estimate-review-document .workshop-estimate-pdf-preview iframe {
    height: 620px;
    min-height: 620px;
  }
}

@media (max-width: 860px) {
  .workshop-reduced-approval-grid {
    grid-template-columns: 1fr;
  }

  .workshop-estimate-review-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .workshop-reduced-approval-heading {
    display: grid;
  }

  .workshop-reduced-approval-amount {
    justify-self: start;
  }

  .workshop-estimate-review-heading {
    display: grid;
  }

  .workshop-estimate-review-facts {
    grid-template-columns: 1fr;
  }

  .manager-workshop-estimate-review-facts {
    grid-template-columns: 1fr;
  }

  .manager-workshop-estimate-ai-suggestion.is-pending {
    align-items: start;
    grid-template-columns: 1fr auto;
  }

  .manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-badge {
    grid-column: 1;
  }

  .manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-suggestion-head .pill {
    grid-column: 2;
  }

  .manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-suggestion-copy {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .manager-workshop-estimate-ai-suggestion.is-pending .manager-workshop-estimate-ai-disclaimer {
    grid-row: 3;
  }

  .manager-workshop-estimate-decision-heading {
    align-items: start;
    display: grid;
  }

  .manager-workshop-estimate-decision-heading p {
    margin-left: 0;
  }

  .manager-workshop-estimate-review-cost-grid,
  .manager-workshop-estimate-review-cost-totals {
    grid-template-columns: 1fr;
  }

  .manager-workshop-estimate-photo-stage {
    min-height: 280px;
  }
}

.workflow-secondary-panel {
  padding: 0;
  scroll-margin-top: 150px;
}

.workflow-secondary-panel > summary.panel-header {
  align-items: center;
  cursor: pointer;
  list-style: none;
  margin-bottom: 0;
  padding: 18px 20px;
}

.workflow-secondary-panel > summary.panel-header::-webkit-details-marker {
  display: none;
}

.workflow-secondary-panel > summary.panel-header::after {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  content: "+";
  display: inline-flex;
  flex: 0 0 auto;
  font-weight: 900;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.workflow-secondary-panel[open] > summary.panel-header {
  border-bottom: 1px solid var(--line);
}

.workflow-secondary-panel[open] > summary.panel-header::after {
  content: "-";
}

.workflow-secondary-body {
  display: grid;
  gap: 14px;
  padding: 14px;
}

.workflow-secondary-section {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.workflow-secondary-section > .panel-header {
  margin-bottom: 0;
}

.process-launch-panel.embedded {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.process-launch-panel.embedded > .panel-header {
  margin-bottom: 0;
}

.case-overview {
  border: 1px solid rgba(0, 58, 150, .18);
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 16px;
  overflow: hidden;
  position: relative;
}

.case-overview::before {
  background: linear-gradient(90deg, var(--brand-blue), var(--brand-orange));
  content: "";
  height: 4px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.case-overview.compact {
  gap: 12px;
  padding: 16px 18px;
}

.case-overview.process-head {
  border-color: rgba(0, 58, 150, .14);
  box-shadow: 0 12px 28px rgba(0, 34, 90, .07);
  gap: 14px;
  padding: 18px;
}

.case-sticky-workhead {
  align-items: center;
  background: rgba(255, 255, 255, .96);
  border: 1px solid rgba(0, 58, 150, .16);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  box-shadow: 0 12px 26px rgba(0, 29, 75, .08);
  display: flex;
  gap: 14px;
  justify-content: space-between;
  min-width: 0;
  padding: 11px 12px;
  position: sticky;
  top: 86px;
  z-index: 8;
}

.case-sticky-workhead.active,
.case-sticky-workhead.attention,
.case-sticky-workhead.warning {
  border-left-color: var(--brand-orange);
}

.case-sticky-workhead.blocked {
  border-left-color: var(--red);
}

.case-sticky-workhead.done,
.case-sticky-workhead.ready {
  border-left-color: var(--green);
}

.case-sticky-workhead > div:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.case-sticky-workhead strong,
.case-sticky-workhead small {
  overflow-wrap: anywhere;
}

.case-sticky-workhead strong {
  color: var(--brand-navy);
}

.case-sticky-workhead small {
  color: var(--muted);
  font-size: 12px;
}

.case-sticky-workhead-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.case-sticky-workhead-actions .button {
  min-height: 34px;
  padding: 8px 11px;
}

.case-overview-header {
  align-items: flex-start;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding-top: 2px;
}

.case-overview-header.compact {
  align-items: stretch;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
  padding-top: 0;
}

.case-overview-header h2 {
  font-size: 24px;
}

.case-overview-header p {
  margin: 4px 0 0;
}

.case-title-block {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.case-title-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  min-width: 0;
}

.case-title-block h2,
.case-title-block p {
  margin: 0;
}

.case-title-block p {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.case-title-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 4px;
}

.case-title-meta > span:not(.status) {
  color: var(--muted);
  font-size: 12px;
}

.case-header-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}

.case-header-actions .button {
  min-height: 34px;
  padding: 8px 12px;
}

.case-status-stack {
  align-items: flex-end;
  display: grid;
  gap: 6px;
  justify-items: end;
  min-width: 180px;
}

.case-status-stack span:not(.status) {
  color: var(--muted);
  font-size: 12px;
}

.case-next-step-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  min-width: 0;
  padding: 12px 13px;
}

.process-head .case-next-step-card {
  align-self: stretch;
  border-left-width: 5px;
  gap: 8px;
  min-height: 112px;
  padding: 15px 16px;
}

.case-next-step-card.active,
.case-next-step-card.attention,
.case-next-step-card.warning {
  border-left-color: var(--brand-orange);
}

.case-next-step-card.blocked {
  border-left-color: var(--red);
}

.case-next-step-card.done,
.case-next-step-card.ready {
  border-left-color: var(--green);
}

.case-next-step-card strong,
.case-next-step-card small {
  display: block;
  overflow-wrap: anywhere;
}

.case-next-step-card strong {
  color: var(--brand-navy);
  font-size: 18px;
  line-height: 1.2;
  margin-top: 2px;
}

.process-head .case-next-step-card strong {
  font-size: 18px;
}

.case-next-step-card small {
  color: var(--muted);
  line-height: 1.35;
  margin-top: 3px;
}

.case-next-step-footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.case-next-step-footer > span:not(.status):not(.process-state-pill) {
  color: var(--muted);
  font-size: 12px;
}

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

.process-head .case-brief-grid {
  border: 1px solid var(--line);
  border-radius: 8px;
  gap: 0;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  overflow: hidden;
}

.case-brief-grid div {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 9px 10px;
}

.process-head .case-brief-grid div {
  align-content: start;
  border: 0;
  border-right: 1px solid var(--line);
  border-radius: 0;
  gap: 5px;
  min-height: 118px;
  padding: 13px 14px;
}

.process-head .case-brief-grid div:last-child {
  border-right: 0;
}

.case-brief-grid span,
.case-brief-grid strong,
.case-brief-grid small {
  overflow-wrap: anywhere;
}

.case-brief-grid span {
  color: var(--muted);
  font-size: 11px;
}

.case-brief-grid strong {
  color: var(--brand-navy);
  font-size: 14px;
  line-height: 1.25;
}

.case-brief-grid small {
  color: var(--muted);
  display: none;
  font-size: 12px;
  line-height: 1.3;
}

.process-head .case-brief-grid small {
  display: block;
}

.process-head .case-brief-grid div.missing {
  background: #fff8ef;
  box-shadow: inset 0 3px 0 var(--brand-orange);
}

.process-head .case-brief-grid div.missing strong {
  color: #9a4a00;
}

.case-title-actions {
  margin-top: 8px;
}

.case-title-actions .button {
  min-height: 32px;
  padding: 7px 10px;
}

.case-overview-main {
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(300px, .95fr) minmax(320px, 1.35fr);
}

.case-command-row {
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(280px, .9fr) minmax(360px, 1.4fr);
}

.case-detail-nav {
  align-items: stretch;
  background: rgba(255, 255, 255, .94);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  overflow: hidden;
  position: sticky;
  top: 82px;
  z-index: 9;
}

.case-detail-nav a {
  background: #ffffff;
  color: var(--brand-navy);
  display: grid;
  gap: 2px;
  min-height: 58px;
  padding: 10px 12px;
  text-decoration: none;
}

.case-detail-nav a:hover,
.case-detail-nav a:focus-visible {
  background: var(--surface-blue);
}

.case-detail-nav a.has-new,
.case-support-nav a.has-new {
  background: #fffaf2;
  box-shadow: inset 0 -3px 0 var(--brand-orange);
}

.case-detail-nav strong,
.case-detail-nav span {
  overflow-wrap: anywhere;
}

.case-detail-nav strong,
.case-support-nav strong,
.damage-detail-tabs .tab strong {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.case-detail-nav span {
  color: var(--muted);
  font-size: 12px;
}

.case-process-timeline {
  align-items: stretch;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  overflow: hidden;
}

.case-process-step {
  align-content: start;
  background: #ffffff;
  color: var(--brand-navy);
  display: grid;
  gap: 5px;
  min-height: 66px;
  padding: 9px 8px;
  text-align: center;
  text-decoration: none;
}

.case-process-step + .case-process-step {
  border-left: 1px solid var(--line);
}

.case-process-step span {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 26px;
  justify-content: center;
  justify-self: center;
  width: 26px;
}

.case-process-step strong {
  font-size: 12px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.case-process-step.current,
.case-process-step:hover,
.case-process-step:focus-visible {
  background: var(--surface-blue);
}

.case-process-step.active span,
.case-process-step.attention span,
.case-process-step.current span {
  background: #fff0dc;
  border-color: #fed7aa;
  color: var(--brand-orange-dark);
}

.case-process-step.done span,
.case-process-step.ready span {
  background: #ecfdf5;
  border-color: #bbf7d0;
  color: var(--green);
}

.case-process-step.blocked span {
  background: #fef3f2;
  border-color: #fecdca;
  color: var(--red);
}

.case-process-step.optional span {
  background: var(--surface-soft);
  border-color: var(--line);
  color: var(--muted);
}

.damage-target-main-section .case-process-timeline {
  align-items: start;
  gap: 0;
  padding: 12px 10px 10px;
  position: relative;
}

.damage-target-main-section .case-process-timeline::before {
  background: var(--line);
  content: "";
  height: 2px;
  left: 46px;
  position: absolute;
  right: 46px;
  top: 26px;
}

.damage-target-main-section .case-process-step {
  align-content: start;
  background: transparent;
  min-height: 58px;
  padding: 0 6px;
  position: relative;
  z-index: 1;
}

.damage-target-main-section .case-process-step + .case-process-step {
  border-left: 0;
}

.damage-target-main-section .case-process-step.current,
.damage-target-main-section .case-process-step:hover,
.damage-target-main-section .case-process-step:focus-visible {
  background: transparent;
}

.damage-target-main-section .case-process-step span {
  background: #f8fafc;
  box-shadow: 0 0 0 4px #ffffff;
  height: 28px;
  width: 28px;
}

.damage-target-main-section .case-process-step strong {
  display: block;
  font-size: 10px;
  line-height: 1.16;
  margin-top: 2px;
  max-width: 100%;
  min-height: 24px;
  overflow: visible;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
  word-break: normal;
}

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

.case-process-area {
  display: grid;
  gap: 14px;
  scroll-margin-top: 150px;
}

.damage-target-layout {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.damage-tabbed-layout {
  gap: 14px;
}

.damage-detail-tabs-shell {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.damage-process-orders-layout {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.damage-detail-tabs {
  background: rgba(255, 255, 255, .96);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  gap: 6px;
  margin: 0;
  padding: 6px;
  position: sticky;
  top: 82px;
  z-index: 10;
}

.damage-detail-tabs .tab {
  align-content: center;
  border-radius: 6px;
  display: grid;
  flex: 1 1 150px;
  gap: 2px;
  min-height: 54px;
  min-width: 0;
  padding: 8px 11px;
  text-align: left;
}

.damage-detail-tabs .tab strong,
.damage-detail-tabs .tab small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.damage-detail-tabs .tab strong {
  color: inherit;
  font-size: 13px;
  line-height: 1.18;
}

.damage-detail-tabs .tab small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.25;
}

.damage-detail-tabs .tab.active small {
  color: var(--brand-navy);
}

.damage-detail-tabs .tab.has-new {
  background: #fffaf2;
  border-color: rgba(246, 135, 18, .4);
}

.damage-detail-tabs .tab.has-new.active {
  box-shadow: inset 0 -3px 0 var(--brand-orange);
}

.damage-detail-tab-content,
.damage-detail-tab-panel,
.damage-tab-document-layout,
.damage-tab-cost-main,
.damage-tab-cost-side {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.damage-detail-tab-panel[hidden] {
  display: none;
}

.damage-documents-tabs {
  margin-bottom: 0;
}

.damage-documents-tabs .tab {
  flex: 1 1 160px;
  min-width: 0;
}

[data-damage-documents-panel] {
  min-width: 0;
}

[data-damage-documents-panel][hidden] {
  display: none;
}

.damage-tab-overview-grid,
.damage-tab-cost-grid {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  min-width: 0;
}

.damage-tab-overview-main,
.damage-tab-overview-side,
.damage-tab-orders-grid {
  display: grid;
  gap: 14px;
  min-width: 0;
}

/* Abrechnung & Abschluss: kaufmännische Arbeitsansicht mit klarer Schrittfolge. */
.damage-cost-workbench {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.damage-cost-workbench-head {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 10px;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  overflow: hidden;
  padding: 15px 17px;
  position: relative;
}

.damage-cost-workbench-head::before {
  background: linear-gradient(90deg, var(--brand-blue), var(--brand-orange));
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.damage-cost-workbench-head > div:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.damage-cost-workbench-head > div:first-child > span,
.damage-cost-workbench-total > span {
  color: var(--brand-blue);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .075em;
  text-transform: uppercase;
}

.damage-cost-workbench-head h2 {
  color: var(--brand-navy);
  font-size: 22px;
  line-height: 1.2;
  margin: 0;
}

.damage-cost-workbench-head p {
  color: #52627a;
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
}

.damage-cost-workbench-total {
  align-items: flex-end;
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 8px;
  display: grid;
  flex: 0 0 auto;
  gap: 2px;
  min-width: 180px;
  padding: 10px 12px;
  text-align: right;
}

.damage-cost-workbench-total strong {
  color: var(--brand-navy);
  font-size: 21px;
  line-height: 1.15;
}

.damage-cost-workbench-total small {
  color: #52627a;
  font-size: 10px;
  font-weight: 800;
}

.damage-cost-jump-nav {
  display: grid;
  gap: 9px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.damage-cost-jump-nav a {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--brand-navy);
  display: grid;
  gap: 2px 9px;
  grid-template-columns: 28px minmax(0, 1fr);
  padding: 9px 11px;
  text-decoration: none;
}

.damage-cost-jump-nav a:hover {
  background: var(--surface-blue);
  border-color: rgba(0, 58, 150, .28);
}

.damage-cost-jump-nav a > span,
.damage-cost-work-section > header > span {
  align-items: center;
  background: var(--brand-blue);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.damage-cost-jump-nav a > span {
  grid-row: 1 / span 2;
}

.damage-cost-jump-nav strong {
  font-size: 12px;
  line-height: 1.2;
}

.damage-cost-jump-nav small {
  color: #52627a;
  font-size: 10px;
  line-height: 1.25;
}

.damage-cost-status-grid {
  display: grid;
  gap: 9px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.damage-cost-status-grid article {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 10px 12px;
}

.damage-cost-status-grid article.attention {
  border-left-color: var(--brand-orange);
}

.damage-cost-status-grid article.blocked {
  border-left-color: var(--red);
}

.damage-cost-status-grid article.done,
.damage-cost-status-grid article.ready {
  border-left-color: var(--green);
}

.damage-cost-status-grid span {
  color: #52627a;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.damage-cost-status-grid strong {
  color: var(--brand-navy);
  font-size: 17px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.damage-cost-status-grid small {
  color: #52627a;
  font-size: 10px;
  line-height: 1.3;
}

.damage-cost-work-section {
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  scroll-margin-top: 150px;
}

.damage-cost-work-section > header {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 28px minmax(0, 1fr);
  padding: 1px 2px 3px;
}

.damage-cost-work-section > header > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.damage-cost-work-section > header h3 {
  color: var(--brand-navy);
  font-size: 16px;
  line-height: 1.2;
  margin: 0;
}

.damage-cost-work-section > header p {
  color: #52627a;
  font-size: 11px;
  line-height: 1.35;
  margin: 0;
}

.damage-cost-work-section > .panel {
  margin: 0;
  min-width: 0;
}

.damage-cost-workbench .damage-tab-cost-side {
  align-self: start;
  position: sticky;
  top: 150px;
}

@media (max-width: 1100px) {
  .damage-cost-status-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .damage-cost-workbench .damage-tab-cost-side {
    position: static;
  }
}

@media (max-width: 720px) {
  .damage-cost-workbench-head {
    align-items: stretch;
    flex-direction: column;
  }

  .damage-cost-workbench-total {
    align-items: start;
    min-width: 0;
    text-align: left;
  }

  .damage-cost-jump-nav,
  .damage-cost-status-grid {
    grid-template-columns: 1fr;
  }
}

.damage-tab-orders-grid {
  align-items: start;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
}

.damage-tab-orders-layout {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.order-tab-overview {
  display: grid;
  gap: 12px;
}

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

.order-tab-status-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-rows: minmax(0, 1fr) auto;
  min-width: 0;
  padding: 12px;
}

.order-tab-status-card.active,
.order-tab-status-card.attention,
.order-tab-status-card.ready,
.order-tab-status-card.in_progress,
.order-tab-status-card.waiting_external {
  border-left-color: var(--brand-orange);
}

.order-tab-status-card.blocked {
  border-left-color: var(--red);
}

.order-tab-status-card.done {
  border-left-color: var(--green);
}

.order-tab-status-card.optional {
  border-left-color: var(--brand-gray);
}

.order-tab-status-card.not_relevant,
.order-tab-status-card.waived {
  background: var(--surface-soft);
  border-left-color: var(--brand-gray);
  opacity: .82;
}

.dashboard-source-note {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .18);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  color: var(--brand-navy);
  font-size: 13px;
  font-weight: 700;
  padding: 11px 13px;
}

.dashboard-parallel-actions {
  padding: 14px;
}

.dashboard-360-summary {
  display: grid;
  gap: 12px;
}

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

.dashboard-summary-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 12px;
}

.dashboard-summary-card.active,
.dashboard-summary-card.attention {
  border-left-color: var(--brand-orange);
}

.dashboard-summary-card.done {
  border-left-color: var(--green);
}

.dashboard-summary-card > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.dashboard-summary-card > strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.dashboard-summary-card > p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
  margin: 0;
  overflow-wrap: anywhere;
}

.dashboard-summary-card .actions {
  align-self: end;
}

.dashboard-summary-card .button {
  white-space: normal;
}

.damage-cockpit-case-head {
  background: linear-gradient(135deg, #ffffff 0%, #f6f9fd 100%);
  gap: 10px;
  padding: 13px 15px;
}

.damage-cockpit-case-head .case-overview-header.compact {
  grid-template-columns: minmax(320px, .8fr) minmax(440px, 1.2fr);
}

.damage-cockpit-case-head .case-title-block {
  align-content: start;
  padding: 2px 4px;
}

.damage-cockpit-case-head .case-title-row h2 {
  font-size: clamp(23px, 2vw, 30px);
  letter-spacing: -.02em;
}

.damage-cockpit-case-head .case-title-actions {
  align-items: center;
}

.damage-cockpit-export-actions {
  position: relative;
}

.damage-cockpit-export-actions > summary {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--brand-navy);
  cursor: pointer;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  min-height: 34px;
  padding: 7px 11px;
}

.damage-cockpit-export-actions > summary::-webkit-details-marker {
  display: none;
}

.damage-cockpit-export-actions[open] > summary {
  background: var(--surface-blue);
  border-color: rgba(0, 58, 150, .24);
}

.damage-cockpit-export-actions > .actions {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  left: 0;
  min-width: 310px;
  padding: 8px;
  position: absolute;
  top: calc(100% + 6px);
  z-index: 20;
}

.damage-cockpit-next-step {
  background: linear-gradient(135deg, #f4f8ff 0%, #ffffff 72%);
  border-color: rgba(0, 58, 150, .2);
  box-shadow: 0 12px 28px rgba(0, 34, 90, .08);
  gap: 9px;
  min-height: 0;
  padding: 12px 14px;
}

.damage-cockpit-next-step-copy {
  display: grid;
  gap: 5px;
}

.damage-cockpit-next-step-label {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

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

.damage-cockpit-next-meta > div {
  background: rgba(255, 255, 255, .86);
  border: 1px solid var(--line);
  border-radius: 7px;
  display: grid;
  gap: 2px;
  padding: 6px 9px;
}

.damage-cockpit-next-meta span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.damage-cockpit-next-meta strong {
  font-size: 13px;
}

.damage-cockpit-next-actions {
  align-items: center;
}

.damage-cockpit-case-head .case-brief-grid div {
  min-height: 88px;
  padding: 11px 12px;
}

.damage-cockpit-dashboard,
.damage-cockpit-main,
.damage-cockpit-rail {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.damage-cockpit-progress,
.damage-cockpit-summary {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .15);
  border-radius: 10px;
  box-shadow: 0 12px 28px rgba(0, 34, 90, .06);
  min-width: 0;
}

.damage-cockpit-progress {
  display: grid;
  gap: 12px;
  padding: 14px 16px 16px;
}

.damage-cockpit-section-head {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.damage-cockpit-section-head.compact {
  align-items: end;
}

.damage-cockpit-section-head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.damage-cockpit-section-head span,
.damage-cockpit-titlebar > div > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.damage-cockpit-section-head strong {
  color: var(--brand-navy);
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.damage-cockpit-section-head small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
  max-width: 270px;
  text-align: right;
}

.damage-cockpit-progress-track {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(8, minmax(116px, 1fr));
  overflow-x: auto;
  padding-bottom: 4px;
}

.damage-cockpit-progress-step {
  align-items: flex-start;
  border-top: 3px solid var(--line);
  display: grid;
  gap: 7px;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 116px;
  padding: 9px 8px 4px 0;
}

.damage-cockpit-progress-step > span {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-size: 10px;
  font-weight: 900;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.damage-cockpit-progress-step > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.damage-cockpit-progress-step strong,
.damage-cockpit-progress-step small {
  overflow-wrap: anywhere;
}

.damage-cockpit-progress-step strong {
  color: var(--brand-navy);
  font-size: 11px;
  line-height: 1.2;
}

.damage-cockpit-progress-step small {
  color: var(--muted);
  font-size: 9px;
  line-height: 1.25;
}

.damage-cockpit-progress-step.done,
.damage-cockpit-progress-step.ready {
  border-top-color: var(--green);
}

.damage-cockpit-progress-step.done > span,
.damage-cockpit-progress-step.ready > span {
  background: #ecfdf5;
  border-color: #bbf7d0;
  color: var(--green);
}

.damage-cockpit-progress-step.active,
.damage-cockpit-progress-step.attention,
.damage-cockpit-progress-step.current {
  border-top-color: var(--brand-orange);
}

.damage-cockpit-progress-step.active > span,
.damage-cockpit-progress-step.attention > span,
.damage-cockpit-progress-step.current > span {
  background: #fff0dc;
  border-color: #fed7aa;
  color: var(--brand-orange-dark);
}

.damage-cockpit-progress-step.current {
  background: linear-gradient(180deg, #fff8ed 0%, #ffffff 100%);
}

.damage-cockpit-summary {
  overflow: hidden;
}

.damage-cockpit-titlebar {
  align-items: center;
  background: linear-gradient(115deg, #082c5c 0%, #0d477c 68%, #126a82 100%);
  color: #ffffff;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 17px 20px;
}

.damage-cockpit-titlebar h2,
.damage-cockpit-titlebar p {
  color: #ffffff;
  margin: 0;
}

.damage-cockpit-titlebar h2 {
  font-size: 22px;
  margin-top: 2px;
}

.damage-cockpit-titlebar p {
  font-size: 12px;
  margin-top: 4px;
  opacity: .82;
}

.damage-cockpit-source-note {
  color: rgba(255, 255, 255, .72);
  display: block;
  font-size: 10px;
  margin-top: 7px;
}

.damage-cockpit-titlebar > div > span {
  color: rgba(255, 255, 255, .7);
}

.damage-cockpit-responsibilities {
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  max-width: 420px;
  min-width: 240px;
  padding: 9px 11px;
}

.damage-cockpit-responsibilities strong {
  font-size: 12px;
  line-height: 1.35;
}

.damage-cockpit-layout {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1.7fr) minmax(310px, .74fr);
  padding: 14px;
}

.damage-cockpit-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 9px;
  display: grid;
  gap: 13px;
  min-width: 0;
  padding: 15px;
}

.damage-cockpit-main .damage-cockpit-card {
  box-shadow: 0 8px 20px rgba(0, 34, 90, .035);
}

.damage-cockpit-rail .damage-cockpit-card {
  background: #f9fbfd;
}

.damage-cockpit-fact-grid,
.damage-cockpit-money-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.damage-cockpit-fact-grid > div,
.damage-cockpit-money-grid > div {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 7px;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 9px 10px;
}

.damage-cockpit-fact-grid span,
.damage-cockpit-money-grid span,
.damage-cockpit-description > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
}

.damage-cockpit-fact-grid strong,
.damage-cockpit-money-grid strong {
  color: var(--brand-navy);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.damage-cockpit-money-grid > div.attention {
  background: #fff7ed;
  border-color: #fed7aa;
}

.damage-cockpit-money-grid > div.ready {
  background: #ecfdf5;
  border-color: #bbf7d0;
}

.damage-cockpit-description {
  border-left: 3px solid var(--brand-blue);
  display: grid;
  gap: 3px;
  padding: 2px 0 2px 11px;
}

.damage-cockpit-description p {
  color: var(--text);
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
}

.damage-cockpit-order-list,
.damage-cockpit-blocker-list,
.damage-cockpit-document-list,
.damage-cockpit-activity-list {
  display: grid;
  gap: 7px;
}

.damage-cockpit-order-row {
  align-items: center;
  border-bottom: 1px solid var(--line);
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  padding: 8px 2px 10px;
}

.damage-cockpit-order-row:first-child {
  padding-top: 0;
}

.damage-cockpit-order-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.damage-cockpit-order-row > div,
.damage-cockpit-document-list > div,
.damage-cockpit-activity-list > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.damage-cockpit-order-row strong,
.damage-cockpit-document-list strong,
.damage-cockpit-activity-list strong {
  color: var(--brand-navy);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.damage-cockpit-order-row small,
.damage-cockpit-document-list small,
.damage-cockpit-activity-list small {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.3;
}

.damage-cockpit-order-count {
  align-items: center;
  background: var(--surface-blue);
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.damage-cockpit-orders footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

.damage-cockpit-order-notes {
  display: grid;
  gap: 3px;
}

.damage-cockpit-hidden-count {
  color: var(--muted);
  display: inline-flex;
  font-size: 10px;
  gap: 4px;
}

.damage-cockpit-blockers {
  border-top: 3px solid var(--brand-orange);
}

.damage-cockpit-blocker {
  background: #ffffff;
  border: 1px solid #fed7aa;
  border-left: 3px solid var(--brand-orange);
  border-radius: 7px;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
}

.damage-cockpit-blocker.blocked,
.damage-cockpit-blocker.data_error {
  border-color: #fecaca;
  border-left-color: var(--red);
}

.damage-cockpit-blocker strong {
  color: var(--brand-navy);
  font-size: 12px;
}

.damage-cockpit-blocker p {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.35;
  margin: 0;
}

.damage-cockpit-document-metrics {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.damage-cockpit-document-metrics > span {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--muted);
  display: grid;
  font-size: 9px;
  gap: 2px;
  padding: 8px;
  text-align: center;
}

.damage-cockpit-document-metrics strong {
  color: var(--brand-navy);
  font-size: 16px;
}

.damage-cockpit-document-metrics > span.attention {
  background: #fff7ed;
  border-color: #fed7aa;
}

.damage-cockpit-document-list > div,
.damage-cockpit-activity-list > div {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 8px 9px;
}

.damage-cockpit-activity-list > div {
  grid-template-columns: minmax(96px, auto) minmax(0, 1fr);
}

.damage-cockpit-activity-list > div > span {
  color: var(--muted);
  font-size: 9px;
  grid-row: 1 / 3;
}

.damage-cockpit-empty {
  background: #ffffff;
  border: 1px dashed var(--line);
  border-radius: 7px;
  color: var(--muted);
  display: grid;
  font-size: 11px;
  gap: 3px;
  padding: 10px;
}

.damage-cockpit-empty strong {
  color: var(--brand-navy);
}

.damage-cockpit-empty.ready {
  background: #ecfdf5;
  border-color: #bbf7d0;
}

.damage-cockpit-card > .button,
.damage-cockpit-card > .actions {
  justify-self: start;
}

.damage-cockpit-case-head .case-brief-grid {
  border: 0;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: visible;
  padding: 10px;
}

.damage-cockpit-case-head .case-brief-grid > div,
.damage-cockpit-case-head .case-brief-grid > div:last-child {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  min-height: 0;
}

.damage-cockpit-case-facts {
  background: rgba(255, 255, 255, .82);
  border: 1px solid var(--line);
  border-radius: 9px;
  overflow: hidden;
}

.damage-cockpit-case-facts > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  list-style: none;
  padding: 9px 12px;
}

.damage-cockpit-case-facts > summary::-webkit-details-marker {
  display: none;
}

.damage-cockpit-case-facts > summary > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.damage-cockpit-case-facts > summary > div > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.damage-cockpit-case-facts > summary > div > strong {
  color: var(--brand-navy);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.damage-cockpit-case-facts-toggle {
  align-items: center;
  color: var(--brand-blue);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 11px;
  font-weight: 900;
  gap: 5px;
}

.damage-cockpit-case-facts-toggle::after {
  content: "+";
  font-size: 16px;
  line-height: 1;
}

.damage-cockpit-case-facts-toggle .when-open {
  display: none;
}

.damage-cockpit-case-facts[open] > summary {
  background: var(--surface-blue);
  border-bottom: 1px solid var(--line);
}

.damage-cockpit-case-facts[open] .damage-cockpit-case-facts-toggle::after {
  content: "−";
}

.damage-cockpit-case-facts[open] .damage-cockpit-case-facts-toggle .when-closed {
  display: none;
}

.damage-cockpit-case-facts[open] .damage-cockpit-case-facts-toggle .when-open {
  display: inline;
}

.damage-cockpit-overview {
  background: transparent;
  border: 0;
  box-shadow: none;
  display: grid;
  gap: 14px;
  overflow: visible;
}

.damage-cockpit-overview-head {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .16);
  border-left: 4px solid var(--brand-blue);
  border-radius: 10px;
  box-shadow: 0 10px 24px rgba(0, 34, 90, .055);
  color: var(--brand-navy);
  padding: 11px 14px;
}

.damage-cockpit-overview-head h2 {
  font-size: 19px;
}

.damage-cockpit-overview-head p {
  margin-top: 2px;
}

.damage-cockpit-overview-head .damage-cockpit-source-note {
  margin-top: 4px;
}

.damage-cockpit-overview-head h2,
.damage-cockpit-overview-head p {
  color: var(--brand-navy);
}

.damage-cockpit-overview-head > div > span,
.damage-cockpit-overview-head .damage-cockpit-source-note {
  color: var(--muted);
}

.damage-cockpit-overview-head .damage-cockpit-responsibilities {
  background: var(--surface-blue);
  border-color: rgba(0, 58, 150, .14);
}

.damage-cockpit-overview-head .damage-cockpit-responsibilities span {
  color: var(--muted);
}

.damage-cockpit-grid {
  align-items: stretch;
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.damage-cockpit-grid .damage-cockpit-card {
  align-content: start;
  box-shadow: 0 10px 24px rgba(0, 34, 90, .05);
  min-height: 100%;
}

.damage-cockpit-grid .damage-cockpit-damage {
  border-top: 3px solid var(--brand-blue);
}

.damage-cockpit-grid .damage-cockpit-repair {
  border-top: 3px solid var(--brand-orange);
}

.damage-cockpit-grid .damage-cockpit-orders {
  border-top: 3px solid #3b82f6;
}

.damage-cockpit-grid .damage-cockpit-accounting {
  border-top: 3px solid #7c3aed;
}

.damage-cockpit-grid .damage-cockpit-blockers {
  border-top: 3px solid var(--red);
}

.damage-cockpit-grid .damage-cockpit-documents {
  border-top: 3px solid var(--green);
}

.damage-cockpit-grid .damage-cockpit-fact-grid,
.damage-cockpit-grid .damage-cockpit-money-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.damage-cockpit-grid .damage-cockpit-order-row {
  align-items: start;
  grid-template-columns: minmax(0, 1fr) auto;
}

.damage-cockpit-grid .damage-cockpit-order-row .process-state-pill {
  grid-column: 1 / 3;
  justify-self: start;
}

.damage-cockpit-blocker a {
  color: var(--brand-blue);
  font-size: 11px;
  font-weight: 800;
  justify-self: start;
}

.order-tab-status-card > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.order-tab-status-card span,
.order-detail-group-head span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.order-tab-status-card strong,
.order-detail-group-head strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.order-tab-status-card .process-state-pill {
  justify-self: start;
}

.process-responsible-role {
  color: var(--brand-blue);
  display: block;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
  margin-top: 2px;
}

.order-tab-status-card p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
  margin: 0;
  overflow-wrap: anywhere;
}

.order-tab-status-card footer {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  min-width: 0;
}

.order-tab-status-card b {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 999px;
  color: var(--brand-navy);
  display: inline-flex;
  font-size: 16px;
  justify-content: center;
  min-height: 30px;
  min-width: 30px;
  padding: 4px 9px;
}

.order-tab-status-card .button {
  min-height: 30px;
  padding: 7px 9px;
  white-space: nowrap;
}

.order-process-overview {
  display: grid;
  gap: 12px;
}

.order-process-overview table {
  min-width: 1080px;
}

.order-process-overview td {
  vertical-align: top;
}

.order-process-row td:first-child {
  border-left: 4px solid var(--brand-blue);
}

.order-process-row.ready td:first-child,
.order-process-row.in_progress td:first-child,
.order-process-row.waiting_external td:first-child,
.order-process-row.attention td:first-child {
  border-left-color: var(--brand-orange);
}

.order-process-row.blocked td:first-child {
  border-left-color: var(--red);
}

.order-process-row.done td:first-child {
  border-left-color: var(--green);
}

.order-process-row.waived td:first-child,
.order-process-row.optional td:first-child {
  border-left-color: var(--brand-gray);
}

.order-process-document-button {
  max-width: 220px;
  white-space: normal;
}

.order-detail-group {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.order-detail-group.primary {
  grid-row: span 2;
}

.order-detail-group-head {
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 0 2px;
}

.order-detail-stack {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.damage-tab-orders-grid .process-integrated-card,
.damage-tab-orders-grid .process-step-embedded-panel,
.damage-tab-orders-grid .panel {
  margin: 0;
  min-width: 0;
}

.damage-tab-orders-grid .process-role-status-panels > .panel,
.damage-tab-cost-grid .panel,
.damage-tab-document-layout .panel {
  margin: 0;
  min-width: 0;
}

.damage-tab-focus-panel {
  border-left: 4px solid var(--brand-blue);
}

.damage-tab-focus-panel.warning,
.damage-tab-focus-panel.attention,
.damage-tab-focus-panel.active {
  border-left-color: var(--brand-orange);
}

.damage-tab-focus-panel.done {
  border-left-color: var(--green);
}

.damage-tab-process-map {
  display: grid;
  gap: 12px;
}

.damage-process-tab-workbench {
  grid-template-columns: minmax(420px, 1fr) minmax(340px, 420px);
}

.process-tab-cockpit {
  align-items: stretch;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1.4fr) minmax(220px, .7fr) minmax(180px, .55fr);
}

.process-tab-next-card {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .12);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  padding: 14px;
}

.process-tab-next-card.active,
.process-tab-next-card.attention {
  border-left-color: var(--brand-orange);
}

.process-tab-next-card.blocked {
  border-left-color: var(--red);
}

.process-tab-next-card.done,
.process-tab-next-card.ready {
  border-left-color: var(--green);
}

.process-tab-next-card div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.process-tab-next-card span,
.process-tab-progress small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.process-tab-next-card strong {
  color: var(--brand-navy);
  font-size: 20px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.process-tab-next-card p {
  color: var(--muted);
  margin: 0;
  overflow-wrap: anywhere;
}

.process-tab-next-card small {
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 700;
}

.process-tab-next-card .actions {
  align-self: center;
}

.process-parallel-actions {
  display: grid;
  gap: 10px;
  grid-column: 1 / -1;
  min-width: 0;
}

.process-parallel-actions-head {
  align-items: end;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.process-parallel-actions-head div {
  display: grid;
  gap: 2px;
}

.process-parallel-actions-head span {
  color: var(--brand-blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.process-parallel-actions-head strong {
  color: var(--brand-navy);
}

.process-parallel-actions-head small,
.process-parallel-action > small {
  color: var(--muted);
}

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

.process-parallel-action {
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 12px;
}

.process-parallel-action.data_error,
.process-parallel-action.blocked {
  border-left-color: var(--red);
}

.process-parallel-action.ready,
.process-parallel-action.attention {
  border-left-color: var(--brand-orange);
}

.process-parallel-action.waiting_external,
.process-parallel-action.in_progress {
  border-left-color: #2563eb;
}

.process-parallel-action header {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.process-parallel-action header > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.process-parallel-action > strong,
.process-parallel-action > p,
.process-parallel-action > small {
  overflow-wrap: anywhere;
}

.process-parallel-action > p {
  color: var(--muted);
  margin: 0;
}

.parallel-evidence-actions {
  border-top: 1px solid var(--line);
  padding-top: 7px;
}

.workshop-decision-mode {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  margin-bottom: 10px;
  min-width: 0;
  padding: 10px 12px;
}

.workshop-decision-mode.open {
  background: #fff7ed;
  border-left-color: var(--brand-orange);
}

.workshop-decision-mode.correction {
  background: #fff1f2;
  border-left-color: #be123c;
}

.workshop-decision-mode.decided {
  background: #ecfdf5;
  border-left-color: var(--green);
}

.workshop-decision-mode span {
  color: var(--brand-navy);
  font-weight: 900;
}

.workshop-decision-mode small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.case-closure-action {
  align-items: center;
  background: #f8fafc;
  border: 1px solid #cbd5e1;
  border-radius: 14px;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-top: 16px;
  padding: 16px;
}

.case-closure-action.ready {
  background: #ecfdf5;
  border-color: #86efac;
}

.case-closure-action.closed {
  background: #eff6ff;
  border-color: #93c5fd;
}

.case-closure-action.blocked {
  background: #fff7ed;
  border-color: #fdba74;
}

.case-closure-action span,
.case-closure-warning strong {
  color: var(--brand-blue);
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.case-closure-action strong {
  color: var(--brand-navy);
  display: block;
  font-size: 17px;
  margin-top: 3px;
}

.case-closure-action p,
.case-closure-warning p {
  color: var(--muted);
  margin: 5px 0 0;
}

.case-closure-action dl {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin: 12px 0 0;
}

.case-closure-action dl div {
  display: grid;
  gap: 2px;
}

.case-closure-action dt {
  color: var(--muted);
  font-size: 11px;
}

.case-closure-action dd {
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 700;
  margin: 0;
}

.case-closure-form {
  display: grid;
  gap: 16px;
}

.case-closure-warning {
  background: #ecfdf5;
  border: 1px solid #86efac;
  border-radius: 12px;
  padding: 14px;
}

.case-closure-warning.attention {
  background: #fff7ed;
  border-color: #fdba74;
}

.case-closure-form textarea {
  min-height: 120px;
}

.process-tab-metrics {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.process-tab-metrics span {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  display: grid;
  font-size: 12px;
  gap: 2px;
  justify-items: center;
  padding: 10px;
  text-align: center;
}

.process-tab-metrics strong {
  color: var(--brand-navy);
  font-size: 22px;
  line-height: 1;
}

.process-tab-progress {
  align-content: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.process-tab-progress div {
  background: var(--surface-soft);
  border-radius: 999px;
  height: 10px;
  overflow: hidden;
}

.process-tab-progress div span {
  background: var(--brand-blue);
  display: block;
  height: 100%;
}

.process-tab-side-stack {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.process-tab-side-stack .process-document-sidebar {
  position: static;
}

.process-tab-side-stack .process-integrated-workspace {
  margin: 0;
}

.process-tab-side-stack .process-integrated-head {
  gap: 10px;
}

.process-tab-side-stack .process-integrated-grid,
.process-tab-side-stack .process-deferral-form .form-grid,
.process-tab-side-stack .process-integrated-form .form-grid {
  grid-template-columns: 1fr;
}

.process-tab-side-stack .process-integrated-card {
  padding: 12px;
}

.process-tab-side-stack .process-deferral-strip {
  padding: 12px;
}

.process-tab-side-stack .steering-decision-workspace .routing-decision-grid {
  grid-template-columns: 1fr;
}

.process-tab-side-stack .steering-decision-workspace .routing-decision-card p {
  min-height: 0;
}

.process-tab-side-stack .process-integrated-head h3,
.process-tab-side-stack .process-integrated-card h3 {
  font-size: 16px;
}

.process-tab-side-stack .process-integrated-head p,
.process-tab-side-stack .process-integrated-card p {
  font-size: 12px;
  line-height: 1.4;
}

.process-workflow-head.compact {
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  padding-bottom: 12px;
}

.damage-target-layout a:not(.button),
.damage-target-layout .timeline-item,
.damage-target-layout .timeline-item *,
.damage-target-layout .document-hub-row,
.damage-target-layout .document-hub-row *,
.damage-target-layout .mail-row,
.damage-target-layout .mail-row * {
  overflow-wrap: anywhere;
}

.damage-target-section {
  display: grid;
  gap: 12px;
  min-width: 0;
  scroll-margin-top: 150px;
}

.damage-target-section-heading {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  margin: 0 2px;
  min-width: 0;
}

.damage-target-letter {
  align-items: center;
  background: var(--brand-navy);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 13px;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  line-height: 1;
  width: 30px;
}

.damage-target-section-heading > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.damage-target-section-heading h2 {
  color: var(--brand-navy);
  font-size: 18px;
  line-height: 1.25;
  margin: 0;
  overflow-wrap: anywhere;
}

.damage-target-section-heading p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
}

.damage-target-main-section {
  gap: 14px;
}

.damage-target-main-section > .case-overview.panel,
.damage-target-document-section .document-hub-panel,
.damage-target-email-section .process-email-panel,
.damage-target-completion-section .process-quality-panel {
  margin: 0;
  min-width: 0;
}

.damage-target-document-mail-grid {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 430px);
  min-width: 0;
}

.damage-target-document-section,
.damage-target-email-section,
.damage-target-completion-section {
  align-content: start;
}

.damage-target-secondary-section {
  border-top: 1px solid var(--line);
  padding-top: 4px;
}

.damage-target-secondary-section .damage-target-section-heading {
  opacity: .86;
}

.damage-target-secondary-section .damage-target-section-heading h2 {
  font-size: 15px;
}

.damage-target-process-area .guided-process-panel.compact {
  gap: 8px;
  padding: 14px;
}

.damage-target-process-area .process-workflow-head {
  align-items: center;
  border-bottom: 1px solid var(--line);
  margin: -2px -2px 0;
  padding: 0 2px 10px;
}

.damage-target-process-area .process-workflow-head h2 {
  font-size: 17px;
}

.damage-target-process-area .process-workflow-head p {
  display: -webkit-box;
  font-size: 12px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.damage-target-process-area .process-workflow-list {
  gap: 5px;
}

.damage-target-process-area .process-workflow-step {
  border-radius: 6px;
}

.damage-target-process-area .process-workflow-step:not([open]) summary {
  min-height: 40px;
  padding: 7px 10px;
}

.damage-target-process-area .process-workflow-step:not([open]) .process-workflow-title small {
  display: none;
}

.damage-target-process-area .process-workflow-step:not([open]) .process-workflow-index {
  font-size: 12px;
  height: 24px;
  width: 24px;
}

.damage-target-process-area .process-workflow-step:not([open]) summary::after {
  height: 20px;
  width: 20px;
}

.damage-target-process-area .process-workflow-title strong {
  font-size: 14px;
  line-height: 1.22;
}

.damage-target-process-area .process-workflow-step summary .process-state-pill {
  padding: 4px 7px;
}

.damage-target-process-area .process-workflow-body {
  gap: 8px;
  padding: 10px 12px 12px 48px;
}

.damage-target-process-area .process-workflow-detail-head strong {
  display: none;
}

.damage-target-process-area .process-workflow-detail-head p {
  font-size: 12px;
  line-height: 1.38;
}

.damage-target-process-area .process-workflow-docs {
  gap: 5px;
}

.damage-target-process-area .process-workflow-docs span {
  border-radius: 6px;
  font-size: 11px;
  padding: 5px 7px;
}

.damage-target-process-area .process-workflow-docs span small {
  display: none;
}

.damage-target-process-area .process-workflow-meta {
  gap: 6px;
}

.damage-target-process-area .process-workflow-meta div {
  border-radius: 6px;
  padding: 7px 8px;
}

.damage-target-process-area .process-workflow-actions {
  gap: 6px;
}

.damage-target-process-area .process-workflow-actions .button {
  min-height: 32px;
  padding: 7px 10px;
}

.process-integrated-workspace {
  background: #f8fbff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 12px;
}

.process-integrated-head {
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
  padding-bottom: 10px;
}

.process-integrated-head > div,
.process-deferral-summary > div,
.process-integrated-card header > div,
.process-launch-fold > summary > span:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.process-integrated-head span,
.process-deferral-summary span,
.process-integrated-card header span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.process-integrated-head h3,
.process-integrated-card h3 {
  color: var(--brand-navy);
  font-size: 16px;
  margin: 0;
  overflow-wrap: anywhere;
}

.process-integrated-head p,
.process-integrated-card p,
.process-deferral-summary small {
  color: var(--muted);
  margin: 0;
  overflow-wrap: anywhere;
}

.process-deferral-strip {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
}

.process-deferral-strip.paused {
  border-left-color: var(--brand-gray);
}

.process-deferral-strip.done {
  border-left-color: var(--green);
}

.process-deferral-strip.attention {
  background: #fff8ef;
  border-color: rgba(246, 135, 18, .38);
  border-left-color: var(--brand-orange);
}

.process-deferral-summary {
  align-items: flex-start;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
}

.process-deferral-summary strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.process-deferral-form {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 8px;
  padding-top: 10px;
}

.steering-qualification-note {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 7px;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
}

.steering-qualification-note span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.steering-qualification-note strong {
  color: var(--brand-navy);
}

.steering-qualification-note small {
  color: var(--muted);
}

.process-integrated-grid {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.process-integrated-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 12px;
}

.process-integrated-card.attention,
.process-integrated-card.active {
  border-left-color: var(--brand-orange);
}

.process-integrated-card.blocked {
  border-left-color: var(--red);
}

.process-integrated-card.done {
  border-left-color: var(--green);
}

.process-integrated-card.workshop {
  grid-column: 1 / -1;
}

.process-integrated-card header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.process-integrated-card header .badge,
.process-integrated-card header .process-state-pill {
  flex: 0 0 auto;
}

.process-integrated-form {
  display: grid;
  gap: 10px;
}

.process-integrated-card.steering .form-grid.two,
.process-integrated-card.damage-type .form-grid.three {
  grid-template-columns: 1fr;
}

.process-integrated-card.damage-type {
  gap: 8px;
  padding: 10px;
}

.process-integrated-card.damage-type > header {
  gap: 8px;
}

.damage-type-readonly {
  display: grid;
  gap: 10px;
}

.damage-type-ai-suggestion {
  background: linear-gradient(135deg, #f5f0ff 0%, #ffffff 76%);
  border: 1px solid rgba(92, 56, 180, .28);
  border-left: 4px solid #6b46c1;
  border-radius: 8px;
  display: grid;
  gap: 5px;
  padding: 7px 8px;
}

.damage-type-ai-suggestion.is-empty,
.damage-type-ai-suggestion.is-unavailable {
  background: linear-gradient(135deg, #f7f8fa 0%, #ffffff 76%);
  border-color: var(--line);
  border-left-color: #7b8794;
}

.damage-type-ai-suggestion.is-pending {
  align-items: center;
  grid-template-columns: minmax(0, 1fr);
}

.damage-type-ai-head {
  align-items: center;
  display: grid;
  gap: 4px 8px;
  grid-template-areas:
    "badge confidence"
    "title title";
  grid-template-columns: minmax(0, 1fr) auto;
}

.damage-type-ai-head > .manager-workshop-estimate-ai-badge {
  grid-area: badge;
  justify-self: start;
}

.damage-type-ai-suggestion.is-empty .damage-type-ai-head {
  grid-template-areas:
    "badge"
    "title";
  grid-template-columns: minmax(0, 1fr);
}

.damage-type-ai-suggestion.is-empty .damage-type-ai-head > strong {
  color: var(--brand-navy);
  font-size: 13px;
  grid-area: title;
  line-height: 1.2;
}

.damage-type-ai-head > div {
  display: grid;
  gap: 1px;
  grid-area: title;
  min-width: 0;
}

.damage-type-ai-head > .pill {
  grid-area: confidence;
  justify-self: end;
}

.damage-type-ai-head > div > span {
  color: #5d4b83;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.damage-type-ai-head h4 {
  color: var(--brand-navy);
  font-size: 13px;
  line-height: 1.18;
  margin: 0;
  overflow-wrap: anywhere;
}

.damage-type-ai-suggestion > p,
.damage-type-ai-suggestion li {
  font-size: 10.5px;
  line-height: 1.27;
}

.damage-type-ai-suggestion ul {
  display: grid;
  gap: 1px;
  margin: 0;
  padding-left: 16px;
}

.damage-type-ai-suggestion li::marker {
  color: #6b46c1;
}

.damage-type-ai-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.damage-type-ai-meta > span {
  background: rgba(107, 70, 193, .08);
  border-radius: 999px;
  color: #5d4b83;
  font-size: 8.5px;
  font-weight: 800;
  padding: 3px 5px;
}

.damage-type-ai-meta > span > span {
  background: transparent;
  padding: 0;
}

.damage-type-ai-suggestion .actions {
  flex-wrap: nowrap;
  gap: 5px;
  margin-top: 1px;
}

.damage-type-ai-suggestion .button {
  font-size: 11px;
  min-height: 29px;
  padding: 5px 8px;
}

.process-integrated-card .damage-type-ai-disclaimer {
  border-top: 1px solid rgba(92, 56, 180, .14);
  font-size: 9.5px;
  line-height: 1.2;
  padding-top: 4px;
}

.damage-type-readonly dl {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 0;
  margin: 0;
  overflow: hidden;
}

@media (max-width: 420px) {
  .damage-type-ai-suggestion .actions {
    align-items: stretch;
    flex-direction: column;
  }
}

.damage-type-readonly dl > div {
  display: grid;
  gap: 4px;
  grid-template-columns: minmax(96px, 0.45fr) minmax(0, 1fr);
  padding: 9px 12px;
}

.damage-type-readonly dl > div + div {
  border-top: 1px solid var(--line);
}

.damage-type-readonly dt {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0;
  margin: 0;
}

.damage-type-readonly dd {
  color: var(--brand-navy);
  font-weight: 800;
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.process-integrated-assignment-list {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.process-integrated-assignment-list .assignment-process-card {
  padding: 10px;
}

.process-workshop-orders {
  display: grid;
  gap: 8px;
}

.process-workshop-order,
.process-launch-fold {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.process-workshop-order > summary,
.process-launch-fold > summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
  list-style: none;
  padding: 10px 12px;
}

.process-workshop-order > summary::-webkit-details-marker,
.process-launch-fold > summary::-webkit-details-marker {
  display: none;
}

.process-workshop-order > summary strong,
.process-launch-fold > summary strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.process-workshop-order > summary .badge {
  justify-self: start;
  max-width: 100%;
  white-space: normal;
}

.process-launch-fold > summary small {
  color: var(--muted);
}

.process-workshop-order-body {
  background: #ffffff;
  border-top: 1px solid var(--line);
  display: grid;
  gap: 10px;
  padding: 10px 12px 12px;
}

.process-workshop-meta {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
}

.process-workshop-meta div {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 8px 9px;
}

.process-workshop-meta dt {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.process-workshop-meta dd {
  color: var(--brand-navy);
  font-weight: 800;
  margin: 0;
  overflow-wrap: anywhere;
}

.process-launch-fold .process-launch-panel.embedded {
  border-top: 1px solid var(--line);
  padding: 12px;
}

.damage-target-process-area .process-integrated-workspace {
  gap: 10px;
  padding: 10px;
}

.damage-target-process-area .process-integrated-head {
  padding-bottom: 8px;
}

.damage-target-process-area .process-integrated-head h3,
.damage-target-process-area .process-integrated-card h3 {
  font-size: 15px;
}

.damage-target-process-area .process-integrated-head p,
.damage-target-process-area .process-integrated-card p {
  display: -webkit-box;
  font-size: 12px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.damage-target-process-area .process-deferral-strip,
.damage-target-process-area .process-integrated-card {
  border-radius: 6px;
  padding: 10px;
}

.damage-target-process-area .process-integrated-grid {
  gap: 10px;
}

.damage-target-process-area .process-integrated-form .form-grid {
  gap: 8px;
}

.damage-target-process-area .process-launch-fold .process-launch-panel.embedded {
  padding: 10px;
}

.damage-target-process-area .guided-process-more {
  border-radius: 6px;
}

.damage-target-process-area .guided-process-more > summary {
  min-height: 40px;
  padding: 8px 10px;
}

.damage-target-process-area .guided-process-more summary small {
  display: none;
}

.damage-target-process-area .guided-process-more .guided-process-cards {
  gap: 8px;
}

.process-role-status-panels {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 10px;
  margin-top: 10px;
  padding-top: 10px;
}

.process-role-status-panels > .panel {
  border-radius: 6px;
  box-shadow: none;
  margin: 0;
}

.process-role-status-panels > .panel .panel-header {
  align-items: flex-start;
}

.damage-target-process-area .process-role-status-panels {
  gap: 8px;
  margin-top: 8px;
  padding-top: 8px;
}

.damage-target-process-area .process-role-status-panels > .panel {
  padding: 12px;
}

.damage-target-process-area .guided-process-card {
  border-radius: 6px;
  gap: 6px;
  padding: 10px;
}

.damage-target-process-area .guided-process-card p {
  display: -webkit-box;
  font-size: 12px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.damage-target-process-area .process-document-sidebar {
  gap: 8px;
  padding: 10px;
}

.damage-target-process-area .process-document-head {
  align-items: center;
  padding-bottom: 8px;
}

.damage-target-process-area .process-document-head h2 {
  font-size: 17px;
}

.damage-target-process-area .process-document-head p {
  display: none;
}

.damage-target-process-area .process-document-overview {
  gap: 5px;
}

.damage-target-process-area .process-document-overview span {
  border-radius: 6px;
  font-size: 10px;
  padding: 5px 6px;
}

.damage-target-process-area .process-document-overview strong {
  font-size: 15px;
}

.damage-target-process-area .document-sidebar-folders {
  gap: 5px;
}

.damage-target-process-area .document-sidebar-folder {
  border-radius: 6px;
  gap: 6px;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  min-height: 32px;
  padding: 5px 6px;
}

.damage-target-process-area .document-sidebar-folder > span {
  font-size: 9px;
  height: 21px;
  width: 21px;
}

.damage-target-process-area .document-sidebar-folder small {
  display: none;
}

.damage-target-process-area .document-sidebar-missing {
  border-radius: 6px;
  gap: 6px;
  padding: 8px;
}

.damage-target-process-area .document-sidebar-missing p {
  font-size: 11px;
}

.damage-target-process-area .document-sidebar-missing-list {
  gap: 5px;
}

.damage-target-process-area .document-sidebar-missing-list span {
  border-radius: 6px;
  font-size: 11px;
  padding: 6px;
}

.damage-target-process-area .document-sidebar-missing-list small {
  display: none;
}

.damage-target-process-area .document-sidebar-actions {
  display: none;
}

.process-quality-panel.loading {
  padding: 16px;
}

.case-process-tool-grid {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
}

.case-process-tool-grid .document-hub-panel,
.case-process-tool-grid .process-email-panel {
  min-width: 0;
}

.case-process-tool-grid .document-hub-panel {
  padding: 16px;
}

.case-process-tool-grid .document-board.compact {
  margin-top: 8px;
}

.case-secondary-details {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.case-secondary-details > summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  list-style: none;
  padding: 13px 14px;
}

.case-secondary-details > summary::-webkit-details-marker {
  display: none;
}

.case-secondary-details > summary::after {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 999px;
  color: var(--brand-orange);
  content: "+";
  display: inline-flex;
  font-weight: 900;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.case-secondary-details[open] > summary::after {
  content: "-";
}

.case-secondary-details > summary > span:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.case-secondary-details summary strong {
  color: var(--brand-navy);
}

.case-secondary-details summary small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.case-secondary-body {
  background: var(--surface-soft);
  border-top: 1px solid var(--line);
  display: grid;
  gap: 14px;
  padding: 12px;
}

.case-process-main {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.case-process-secondary-stack {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.case-process-side {
  display: grid;
  gap: 14px;
  min-width: 0;
  position: sticky;
  top: 150px;
}

.case-support-nav {
  align-items: stretch;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
}

.case-support-nav a {
  background: #ffffff;
  color: var(--brand-navy);
  display: grid;
  gap: 2px;
  min-height: 54px;
  padding: 10px 12px;
  text-decoration: none;
}

.case-support-nav a + a {
  border-left: 1px solid var(--line);
}

.case-support-nav a:hover,
.case-support-nav a:focus-visible {
  background: var(--surface-blue);
}

.case-support-nav strong,
.case-support-nav span {
  overflow-wrap: anywhere;
}

.case-support-nav span {
  color: var(--muted);
  font-size: 12px;
}

.case-detail-area {
  display: grid;
  gap: 14px;
  scroll-margin-top: 150px;
}

.case-detail-area > summary {
  cursor: pointer;
  list-style: none;
}

.case-detail-area > summary::-webkit-details-marker {
  display: none;
}

.case-detail-area > summary::after {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-blue);
  content: "+";
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 16px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.case-detail-area[open] > summary::after {
  content: "-";
}

.case-detail-area-body {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.case-detail-area-header {
  align-items: flex-end;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.case-detail-area-header h2 {
  color: var(--brand-navy);
  font-size: 22px;
  margin: 2px 0 4px;
}

.case-detail-area-header p {
  color: var(--muted);
  margin: 0;
}

.case-detail-area-header span:first-child {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.case-detail-two,
.case-document-grid {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr);
}

.case-document-grid {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
}

.case-focus {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 7px;
  padding: 18px;
}

.case-focus.active {
  border-left-color: var(--brand-orange);
}

.case-focus.attention,
.case-focus.warning {
  border-left-color: var(--brand-orange);
}

.case-focus.done {
  border-left-color: var(--green);
}

.case-focus.paused {
  border-left-color: var(--brand-gray);
}

.case-focus-kicker {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.case-focus h2 {
  color: var(--brand-navy);
  font-size: 26px;
  line-height: 1.15;
  margin: 0;
}

.case-focus p {
  color: var(--muted);
  margin: 0;
}

.case-focus.compact {
  align-content: start;
  padding: 16px;
}

.case-focus.compact h2 {
  font-size: 22px;
}

.case-focus.compact .actions {
  margin-top: 4px;
}

.case-facts {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(160px, 1fr));
}

.case-facts div {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  min-width: 0;
  padding: 13px;
}

.case-facts.compact {
  gap: 8px;
  grid-template-columns: repeat(3, minmax(130px, 1fr));
}

.case-facts.compact div {
  padding: 10px 11px;
}

.case-overview .case-facts.compact small {
  display: none;
}

.case-facts span,
.case-facts strong {
  display: block;
}

.case-facts span {
  color: var(--muted);
  font-size: 12px;
}

.case-facts strong {
  color: var(--brand-navy);
  hyphens: auto;
  overflow-wrap: break-word;
}

.case-facts small {
  color: var(--muted);
  display: block;
  font-size: 12px;
  line-height: 1.35;
  margin-top: 4px;
  overflow-wrap: anywhere;
}

.customer-qualification-hint {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  display: grid;
  gap: 4px;
  padding: 10px 11px;
}

.customer-qualification-hint.attention {
  background: #fff7ed;
  border-color: #fed7aa;
}

.customer-qualification-hint strong {
  color: var(--brand-navy);
}

.customer-qualification-hint span {
  font-size: 13px;
  line-height: 1.35;
}

.case-section-title {
  align-items: center;
  border-top: 1px solid var(--line);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding-top: 14px;
}

.case-section-title span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.case-section-title strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.case-contact-strip {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.case-contact-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  min-width: 0;
  overflow: hidden;
}

.case-contact-card.active {
  border-color: rgba(246, 135, 18, .34);
}

.case-contact-card.muted {
  background: var(--surface-soft);
}

.case-contact-card summary {
  align-items: flex-start;
  cursor: pointer;
  display: grid;
  gap: 5px;
  grid-template-columns: minmax(0, 1fr) auto;
  list-style: none;
  min-height: 104px;
  padding: 13px;
}

.case-contact-card summary::-webkit-details-marker {
  display: none;
}

.case-contact-card summary::after {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-orange);
  content: "+";
  display: inline-flex;
  font-weight: 900;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.case-contact-card[open] summary::after {
  content: "-";
}

.case-contact-card summary span,
.case-contact-body span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.case-contact-card summary strong,
.case-contact-body strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.case-contact-card summary strong,
.case-contact-card summary small {
  grid-column: 1;
}

.case-contact-card summary small {
  color: var(--muted);
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.case-contact-body {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 1px;
}

.case-contact-body div {
  background: var(--surface-blue);
  display: grid;
  gap: 4px;
  padding: 10px 13px;
}

.case-overview-details,
.guided-process-more {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.case-overview-details > summary,
.guided-process-more > summary,
.process-quality-panel > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  list-style: none;
  min-width: 0;
}

.case-overview-details > summary,
.guided-process-more > summary {
  padding: 13px 14px;
}

.case-overview-details > summary::-webkit-details-marker,
.guided-process-more > summary::-webkit-details-marker,
.process-quality-panel > summary::-webkit-details-marker {
  display: none;
}

.case-overview-details > summary > span:first-child,
.guided-process-more > summary > span:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.case-overview-details summary strong,
.guided-process-more summary strong {
  color: var(--brand-navy);
}

.case-overview-details summary small,
.guided-process-more summary small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.case-overview-details .case-contact-strip {
  border-top: 1px solid var(--line);
  padding: 12px;
}

.case-overview > .case-bottom,
.case-overview > .damage-photo-overview,
.case-overview > .case-overview-details {
  display: none;
}

.guided-process-more .guided-process-cards {
  border-top: 1px solid var(--line);
  padding: 12px;
}

.process-quality-panel > summary.panel-header {
  margin-bottom: 0;
}

.process-quality-panel[open] > summary.panel-header {
  margin-bottom: 16px;
}

.case-stage-map {
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  overflow: hidden;
}

.case-stage {
  background: #ffffff;
  border-right: 0;
  display: grid;
  gap: 9px;
  grid-template-columns: minmax(0, 1fr);
  min-height: 104px;
  padding: 13px;
  position: relative;
}

.case-stage:last-child {
  border-right: 0;
}

.case-stage-dot {
  align-items: center;
  background: var(--surface-soft);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.case-stage strong,
.case-stage small {
  display: block;
  hyphens: auto;
  overflow-wrap: break-word;
}

.case-stage small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  margin-top: 4px;
}

.case-stage.done {
  background: #f7fcf9;
}

.case-stage.done .case-stage-dot {
  background: #e8f6ee;
  color: var(--green);
}

.case-stage.active,
.case-stage.attention {
  background: #fffaf2;
  box-shadow: inset 0 -3px 0 var(--brand-orange);
}

.case-stage.active .case-stage-dot,
.case-stage.attention .case-stage-dot {
  background: #fff0dc;
  color: var(--brand-orange-dark);
}

.case-stage.paused {
  background: var(--surface-soft);
}

.case-bottom {
  display: grid;
  gap: 14px;
  align-items: start;
}

.case-alerts {
  display: grid;
  gap: 8px;
}

.case-alerts {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.case-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.case-metrics span {
  align-items: baseline;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  gap: 6px;
  min-width: 0;
  padding: 7px 11px;
}

.case-metrics strong {
  color: var(--brand-navy);
}

.case-metrics .case-metric-new {
  background: #fff0dc;
  border-color: rgba(246, 135, 18, .35);
  color: var(--brand-orange-dark);
}

.case-metrics .case-metric-new strong {
  color: var(--brand-orange-dark);
}

.case-alert {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  display: inline-grid;
  gap: 2px;
  max-width: none;
  padding: 10px 12px;
}

.case-alert strong {
  color: var(--brand-navy);
}

.case-alert.warning,
.case-alert.attention,
.case-alert.active,
.case-alert.new {
  border-color: rgba(246, 135, 18, .4);
}

.case-alert.done {
  border-color: rgba(23, 114, 69, .28);
}

.guided-process-panel {
  display: grid;
  gap: 16px;
}

.guided-process-panel.compact {
  gap: 10px;
}

.process-workflow-head {
  align-items: flex-start;
  gap: 12px;
}

.process-workflow-head h2 {
  font-size: 20px;
  margin-top: 2px;
}

.process-workflow-head p {
  margin-top: 2px;
}

.guided-process-summary,
.guided-process-cards,
.assignment-process-list {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.guided-process-summary article,
.guided-process-card,
.assignment-process-card,
.guided-next-action {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 14px;
}

.guided-process-summary span,
.guided-next-action span,
.assignment-process-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.guided-process-summary strong,
.guided-process-card strong,
.guided-next-action strong,
.assignment-process-card strong {
  color: var(--brand-navy);
  overflow-wrap: break-word;
}

.guided-process-summary p,
.guided-process-card p,
.guided-next-action p,
.assignment-process-card small {
  color: var(--muted);
  margin: 0;
  overflow-wrap: break-word;
}

.guided-next-action {
  align-items: center;
  border-left: 4px solid var(--brand-blue);
  grid-template-columns: minmax(0, 1fr) auto;
}

.guided-next-action.active,
.guided-process-card.active,
.assignment-process-card.attention {
  border-left: 4px solid var(--brand-orange);
}

.guided-next-action.blocked,
.guided-process-card.blocked,
.assignment-process-card.blocked {
  border-left: 4px solid var(--red);
}

.guided-next-action.done,
.guided-process-card.done,
.assignment-process-card.done {
  border-left: 4px solid var(--green);
}

.guided-process-card header {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
}

.guided-process-card header strong {
  min-width: 0;
}

.guided-process-card header > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.process-relevance {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  justify-self: start;
  padding: 2px 6px;
  text-transform: uppercase;
}

.process-relevance.required {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a4a00;
}

.process-relevance.blocked {
  background: #fef3f2;
  border-color: #fecdca;
  color: var(--red);
}

.guided-process-card.not_relevant,
.guided-process-card.waived {
  background: var(--surface-soft);
  border-left: 4px solid var(--brand-gray);
  opacity: .82;
}

.guided-process-card header .process-state-pill {
  flex-shrink: 0;
}

.routing-decision-package {
  background: #f8fbff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.routing-decision-package.compact {
  margin-bottom: 14px;
}

.routing-decision-head {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.routing-decision-head h3 {
  color: var(--brand-navy);
  font-size: 18px;
  margin: 2px 0 3px;
}

.routing-decision-head p {
  margin: 0;
}

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

.routing-decision-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  min-width: 0;
  padding: 12px;
}

.routing-decision-card.done {
  border-left-color: var(--green);
}

.routing-decision-card.missing {
  border-left-color: var(--red);
}

.routing-decision-card.optional {
  border-left-color: var(--brand-blue);
}

.routing-decision-card header {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  min-width: 0;
}

.routing-decision-card header div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.routing-decision-card span:not(.routing-decision-status):not(.routing-decision-file):not(.routing-decision-more):not(.photo-thumb-placeholder) {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.routing-decision-card strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.routing-decision-card p {
  color: var(--muted);
  margin: 0;
  min-height: 38px;
  overflow-wrap: anywhere;
}

.routing-decision-status {
  border-radius: 999px;
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  padding: 7px 9px;
}

.routing-decision-status.done {
  background: rgba(23, 114, 69, .12);
  color: var(--green);
}

.routing-decision-status.missing {
  background: rgba(180, 35, 24, .12);
  color: var(--red);
}

.routing-decision-status.optional {
  background: rgba(0, 58, 150, .11);
  color: var(--brand-blue);
}

.routing-decision-file {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--brand-navy);
  display: block;
  font-size: 13px;
  font-weight: 800;
  overflow-wrap: anywhere;
  padding: 8px 10px;
}

.routing-decision-photos {
  align-items: center;
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
}

.routing-decision-photos a,
.routing-decision-photos .photo-thumb-placeholder {
  aspect-ratio: 4 / 3;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: block;
  min-height: 54px;
  overflow: hidden;
}

.routing-decision-photos img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.routing-decision-more {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  justify-content: center;
  min-height: 28px;
  min-width: 32px;
  padding: 4px 7px;
}

.routing-decision-actions {
  align-self: end;
}

.routing-decision-actions .button {
  width: 100%;
}

.routing-photo-gallery {
  position: relative;
}

.routing-photo-tooltip[hidden] {
  display: none;
}

.routing-photo-tooltip {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .18);
  border-radius: 8px;
  box-shadow: 0 18px 44px rgba(11, 31, 53, .18);
  display: grid;
  gap: 9px;
  left: var(--routing-photo-tooltip-left, 16px);
  max-height: calc(100vh - 24px);
  overflow: auto;
  padding: 10px;
  position: fixed;
  top: var(--routing-photo-tooltip-top, 16px);
  width: min(380px, calc(100vw - 32px));
  z-index: 40;
}

.routing-photo-tooltip::after {
  display: none;
}

.routing-photo-tooltip-head {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.routing-decision-card .routing-photo-tooltip-head span,
.routing-decision-card .routing-photo-slide figcaption span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  text-transform: none;
}

.routing-photo-tooltip-head > div {
  display: grid;
  gap: 2px;
}

.routing-photo-stage {
  background: #f3f7fc;
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}

.routing-photo-slide {
  margin: 0;
}

.routing-photo-slide img {
  background: #eef4fb;
  display: block;
  height: 230px;
  object-fit: contain;
  width: 100%;
}

.routing-photo-slide figcaption {
  background: #ffffff;
  border-top: 1px solid var(--line);
  display: grid;
  gap: 2px;
  padding: 8px 10px;
}

.routing-photo-slide figcaption strong {
  color: var(--brand-navy);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.routing-photo-nav {
  align-items: center;
  background: rgba(255, 255, 255, .96);
  border: 1px solid rgba(0, 58, 150, .2);
  border-radius: 999px;
  color: var(--brand-blue);
  cursor: pointer;
  display: inline-flex;
  font-size: 24px;
  font-weight: 900;
  height: 34px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  top: 44%;
  transform: translateY(-50%);
  width: 34px;
}

.routing-photo-nav:disabled {
  cursor: default;
  opacity: .45;
}

.routing-photo-nav.previous {
  left: 8px;
}

.routing-photo-nav.next {
  right: 8px;
}

.routing-photo-thumbs {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.routing-photo-thumb {
  aspect-ratio: 4 / 3;
  background: #f8fbff;
  border: 2px solid transparent;
  border-radius: 8px;
  cursor: pointer;
  flex: 0 0 62px;
  overflow: hidden;
  padding: 0;
}

.routing-photo-thumb.active {
  border-color: var(--brand-blue);
}

.routing-photo-thumb img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

@media (max-width: 720px) {
  .routing-photo-tooltip {
    bottom: 14px;
    left: 12px;
    max-height: calc(100vh - 28px);
    overflow: auto;
    position: fixed;
    right: 12px;
    top: auto;
    width: auto;
  }

  .routing-photo-tooltip::after {
    display: none;
  }

  .routing-photo-slide img {
    height: min(46vh, 260px);
  }
}

.process-workflow-list {
  display: grid;
  gap: 7px;
}

.process-workflow-step {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 3px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  scroll-margin-top: 150px;
  transition: border-color .16s ease, box-shadow .16s ease;
}

.process-workflow-step.active,
.process-workflow-step.attention {
  border-left-color: var(--brand-orange);
}

.process-workflow-step.blocked {
  border-left-color: var(--red);
}

.process-workflow-step.done,
.process-workflow-step.ready {
  border-left-color: var(--green);
}

.process-workflow-step.optional {
  border-left-color: var(--brand-gray);
}

.process-workflow-step.current,
.process-workflow-step[open] {
  border-color: rgba(246, 135, 18, .28);
  border-left-color: var(--brand-orange);
  box-shadow: 0 10px 22px rgba(0, 34, 90, .06);
}

.process-workflow-step summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  list-style: none;
  min-height: 54px;
  padding: 10px 12px;
}

.process-workflow-step summary::-webkit-details-marker {
  display: none;
}

.process-workflow-step summary::after {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 999px;
  color: var(--brand-orange);
  content: "+";
  display: inline-flex;
  font-weight: 900;
  grid-column: 4;
  grid-row: 1;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.process-workflow-step[open] summary::after {
  content: "-";
}

.process-workflow-index {
  align-items: center;
  background: var(--surface-blue);
  border-radius: 999px;
  color: var(--brand-navy);
  display: inline-flex;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.process-workflow-step.done .process-workflow-index,
.process-workflow-step.ready .process-workflow-index {
  background: #e8f6ee;
  color: var(--green);
}

.process-workflow-step.active .process-workflow-index,
.process-workflow-step.attention .process-workflow-index {
  background: #fff0dc;
  color: var(--brand-orange-dark);
}

.process-workflow-title {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.process-workflow-step summary .process-state-pill {
  grid-column: 3;
  grid-row: 1;
}

.process-workflow-title strong,
.process-workflow-title small {
  overflow-wrap: break-word;
}

.process-workflow-title strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.process-workflow-title small {
  color: var(--muted);
  display: -webkit-box;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.process-workflow-body {
  background: linear-gradient(180deg, #fbfdff, #ffffff);
  border-top: 1px solid var(--line);
  display: grid;
  gap: 10px;
  padding: 12px 14px 14px 55px;
}

.process-workflow-detail-head {
  display: grid;
  gap: 3px;
}

.process-workflow-detail-head strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.process-workflow-body p,
.process-workflow-detail-head p {
  color: var(--muted);
  margin: 0;
  overflow-wrap: break-word;
}

.process-workflow-docs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.process-workflow-docs span {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  display: inline-flex;
  gap: 6px;
  max-width: 100%;
  padding: 6px 8px;
}

.process-workflow-docs span strong {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.process-workflow-docs span small {
  color: var(--muted);
}

.process-workflow-docs span.done {
  background: #ecfdf5;
  border-color: #bbf7d0;
}

.process-workflow-docs span.missing {
  background: #fff7ed;
  border-color: #fed7aa;
}

.process-workflow-meta {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  margin: 0;
}

.process-workflow-meta div {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
}

.process-workflow-meta dt {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.process-workflow-meta dd {
  color: var(--brand-navy);
  font-weight: 800;
  margin: 0;
  overflow-wrap: break-word;
}

.process-workflow-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.process-step-embedded {
  display: grid;
  gap: 10px;
  margin-top: 2px;
  min-width: 0;
}

.process-step-embedded .process-integrated-card,
.process-step-embedded-panel {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 12px;
}

.process-step-embedded-panel.attention {
  border-left-color: var(--brand-orange);
}

.process-step-embedded-head {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.process-step-embedded-head span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.process-step-embedded-head strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.process-step-embedded-head p {
  color: var(--muted);
  margin: 0;
  overflow-wrap: anywhere;
}

.process-step-embedded .panel {
  border-radius: 6px;
  box-shadow: none;
  margin: 0;
}

.damage-target-process-area .process-step-embedded .process-integrated-card,
.damage-target-process-area .process-step-embedded-panel {
  border-radius: 6px;
  padding: 10px;
}

.process-state-pill {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 999px;
  color: var(--brand-navy);
  font-size: 11px;
  font-weight: 900;
  padding: 5px 8px;
  white-space: nowrap;
}

.process-state-jump {
  align-items: center;
  appearance: none;
  cursor: pointer;
  display: inline-flex;
  font-family: inherit;
  gap: 5px;
  line-height: 1;
  transition: box-shadow .16s ease, transform .16s ease;
}

.process-state-jump:hover {
  box-shadow: 0 4px 10px rgba(0, 32, 82, .14);
  transform: translateY(-1px);
}

.process-state-jump:focus-visible {
  outline: 3px solid rgba(0, 58, 150, .22);
  outline-offset: 2px;
}

.process-state-jump-icon {
  font-size: 13px;
  line-height: 1;
}

.process-state-pill.active,
.process-state-pill.attention {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a4a00;
}

.process-state-pill.blocked {
  background: #fef3f2;
  border-color: #fecdca;
  color: var(--red);
}

.process-state-pill.data_error {
  background: #fff1f2;
  border-color: #fda4af;
  color: #be123c;
}

.process-state-pill.pending,
.process-state-pill.not_due,
.process-state-pill.waived {
  background: var(--surface-soft);
  border-color: var(--line);
  color: var(--muted);
}

.process-state-pill.waiting_external,
.process-state-pill.in_progress {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
}

.process-state-pill.optional,
.process-state-pill.not_relevant {
  background: var(--surface-soft);
  border-color: var(--line);
  color: var(--muted);
}

.process-state-pill.ready,
.process-state-pill.done {
  background: #ecfdf5;
  border-color: #bbf7d0;
  color: var(--green);
}

.assignment-process-card {
  align-items: start;
  grid-template-columns: minmax(0, 1fr);
}

.workshop-process-hero .process-steps.compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.process-quality-panel {
  border: 1px solid rgba(0, 58, 150, .14);
  display: grid;
  gap: 16px;
}

.process-quality-panel.blocked {
  border-left: 4px solid var(--red);
}

.process-quality-panel.attention {
  border-left: 4px solid var(--brand-orange);
}

.process-quality-panel.ready,
.process-quality-panel.done {
  border-left: 4px solid var(--green);
}

.process-quality-badge {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 900;
  padding: 6px 10px;
  white-space: nowrap;
}

.process-quality-badge.blocked {
  background: #fef3f2;
  border-color: #fecdca;
  color: var(--red);
}

.process-quality-badge.attention {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a4a00;
}

.process-quality-badge.ready,
.process-quality-badge.done {
  background: #ecfdf5;
  border-color: #bbf7d0;
  color: var(--green);
}

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

.process-quality-summary div {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
}

.process-quality-summary span,
.process-quality-summary strong {
  display: block;
}

.process-quality-summary span {
  color: var(--muted);
  font-size: 12px;
}

.process-quality-summary strong {
  color: var(--brand-navy);
  font-size: 22px;
}

.process-gate-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.process-gate-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-gray);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 12px;
}

.process-gate-card.done {
  border-left-color: var(--green);
}

.process-gate-card.blocked {
  border-left-color: var(--red);
}

.process-gate-card.data_error {
  border-left-color: #be123c;
}

.process-gate-card.attention {
  border-left-color: var(--brand-orange);
}

.process-gate-card.ready {
  border-left-color: var(--brand-orange);
}

.process-gate-card.waiting_external,
.process-gate-card.in_progress {
  border-left-color: #2563eb;
}

.process-gate-card.not_due,
.process-gate-card.waived {
  background: var(--surface-soft);
  border-left-color: var(--brand-gray);
}

.process-gate-card header {
  align-items: flex-start;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.process-gate-card strong,
.process-gate-card p {
  overflow-wrap: anywhere;
}

.process-gate-card header span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.process-gate-card p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  margin: 0;
}

.process-checklist-wrap {
  display: grid;
  gap: 10px;
}

.process-checklist-wrap h3 {
  color: var(--brand-navy);
  font-size: 16px;
  margin: 0;
}

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

.process-check {
  align-items: flex-start;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 10px;
}

.process-check > span {
  background: var(--surface-soft);
  border-radius: 999px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  min-width: 46px;
  padding: 4px 7px;
  text-align: center;
}

.process-check.done > span {
  background: #ecfdf5;
  color: var(--green);
}

.process-check.open > span {
  background: #fff7ed;
  color: #9a4a00;
}

.process-check strong,
.process-check small {
  display: block;
  overflow-wrap: anywhere;
}

.process-check small {
  color: var(--muted);
  font-size: 12px;
  margin-top: 2px;
}

.process-quality-panel.target-check {
  background: #ffffff;
  gap: 0;
  overflow: hidden;
}

.process-quality-panel.target-check > summary.panel-header {
  border-bottom: 1px solid var(--line);
  padding: 15px 16px;
}

.process-quality-target-grid {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 310px);
  min-width: 0;
  padding: 14px;
}

.process-quality-table-zone {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.process-quality-panel.target-check .process-quality-summary {
  gap: 8px;
}

.process-quality-panel.target-check .process-quality-summary div {
  background: #f8fafc;
  border-radius: 6px;
  padding: 10px 12px;
}

.process-quality-panel.target-check .process-quality-summary strong {
  font-size: 20px;
}

.process-quality-table-wrap {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  min-width: 0;
  overflow: hidden;
}

.process-quality-table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.process-quality-table th {
  background: #f8fafc;
  color: var(--brand-navy);
  font-size: 12px;
  font-weight: 900;
  padding: 10px 12px;
  text-align: left;
}

.process-quality-table td {
  border-top: 1px solid var(--line);
  color: var(--brand-navy);
  font-size: 12px;
  line-height: 1.38;
  padding: 10px 12px;
  vertical-align: top;
}

.process-quality-table th:nth-child(1),
.process-quality-table td:nth-child(1) {
  width: 34%;
}

.process-quality-table th:nth-child(2),
.process-quality-table td:nth-child(2) {
  width: 104px;
}

.process-quality-table td strong {
  display: block;
  hyphens: auto;
  overflow-wrap: break-word;
  word-break: normal;
}

.process-quality-table td:nth-child(3) {
  color: var(--muted);
  hyphens: auto;
  overflow-wrap: break-word;
  word-break: normal;
}

.process-quality-status-pill {
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  gap: 6px;
  max-width: 100%;
  padding: 4px 8px;
  white-space: normal;
}

.process-quality-status-pill > span {
  background: currentColor;
  border-radius: 999px;
  flex: 0 0 7px;
  height: 7px;
  width: 7px;
}

.process-quality-status-pill.done,
.process-quality-status-pill.ready,
.process-quality-status-pill.optional {
  background: #ecfdf5;
  border-color: #bbf7d0;
  color: var(--green);
}

.process-quality-status-pill.open {
  background: #f8fafc;
  border-color: #d8e0ec;
  color: #5f6d7e;
}

.process-quality-status-pill.attention {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a4a00;
}

.process-quality-status-pill.blocked {
  background: #fef3f2;
  border-color: #fecdca;
  color: var(--red);
}

.process-quality-result-card {
  align-self: stretch;
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-gray);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 14px;
}

.process-quality-result-card.blocked {
  background: #fff7f6;
  border-color: #fecdca;
  border-left-color: var(--red);
}

.process-quality-result-card.attention {
  background: #fffaf2;
  border-color: #fed7aa;
  border-left-color: var(--brand-orange);
}

.process-quality-result-card.ready,
.process-quality-result-card.done {
  background: #f0fdf4;
  border-color: #bbf7d0;
  border-left-color: var(--green);
}

.process-quality-result-card.open {
  background: #f8fafc;
}

.process-quality-result-copy {
  display: grid;
  gap: 4px;
}

.process-quality-result-copy span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.process-quality-result-copy strong {
  color: var(--brand-navy);
  font-size: 18px;
  line-height: 1.2;
}

.process-quality-result-card.blocked .process-quality-result-copy strong {
  color: var(--red);
}

.process-quality-result-card.ready .process-quality-result-copy strong,
.process-quality-result-card.done .process-quality-result-copy strong {
  color: var(--green);
}

.process-quality-result-copy p,
.process-quality-result-card .muted {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.42;
  margin: 0;
}

.process-quality-result-card ul {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.process-quality-result-card li {
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(0, 58, 150, .08);
  border-radius: 6px;
  display: grid;
  gap: 2px;
  padding: 8px;
}

.process-quality-result-card li span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.process-quality-result-card li strong {
  color: var(--brand-navy);
  font-size: 12px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.process-quality-result-card li small {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.process-quality-result-card .button {
  justify-self: start;
}

.process-quality-panel.cost-side-check {
  align-content: start;
  background: #ffffff;
  gap: 14px;
  overflow: hidden;
  padding: 16px;
}

.process-quality-side-head {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.process-quality-side-head > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.process-quality-side-head span:not(.process-quality-badge):not(.pill) {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.process-quality-side-head h2 {
  color: var(--brand-navy);
  font-size: 20px;
  line-height: 1.18;
  margin: 0;
  overflow-wrap: anywhere;
}

.process-quality-side-head .muted {
  font-size: 12px;
  line-height: 1.4;
  margin: 0;
}

.cost-side-check .process-quality-badge,
.cost-side-check .pill {
  flex: 0 0 auto;
}

.process-quality-side-result {
  background: #f8fafc;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-gray);
  border-radius: 8px;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.process-quality-side-result.blocked {
  background: #fff7f6;
  border-color: #fecdca;
  border-left-color: var(--red);
}

.process-quality-side-result.attention {
  background: #fffaf2;
  border-color: #fed7aa;
  border-left-color: var(--brand-orange);
}

.process-quality-side-result.ready,
.process-quality-side-result.done {
  background: #f0fdf4;
  border-color: #bbf7d0;
  border-left-color: var(--green);
}

.process-quality-side-result span,
.process-quality-side-kpis span,
.process-quality-side-subhead span,
.process-quality-side-open li span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.process-quality-side-result strong {
  color: var(--brand-navy);
  font-size: 18px;
  line-height: 1.2;
}

.process-quality-side-result.blocked strong {
  color: var(--red);
}

.process-quality-side-result.ready strong,
.process-quality-side-result.done strong {
  color: var(--green);
}

.process-quality-side-result p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
  margin: 0;
}

.process-quality-side-kpis {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.process-quality-side-kpis div {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .1);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 10px;
}

.process-quality-side-kpis strong {
  color: var(--brand-navy);
  font-size: 17px;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.process-quality-side-open {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 10px;
  padding-top: 12px;
}

.process-quality-side-subhead {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.process-quality-side-subhead strong {
  color: var(--brand-navy);
}

.process-quality-side-open ul {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.process-quality-side-open li {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 3px solid var(--brand-gray);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 9px 10px;
}

.process-quality-side-open li.blocked {
  border-left-color: var(--red);
}

.process-quality-side-open li.attention {
  border-left-color: var(--brand-orange);
}

.process-quality-side-open li.open {
  border-left-color: var(--brand-gray);
}

.process-quality-side-open li strong,
.process-quality-side-open li small {
  overflow-wrap: anywhere;
}

.process-quality-side-open li strong {
  color: var(--brand-navy);
  font-size: 13px;
  line-height: 1.25;
}

.process-quality-side-open li small,
.process-quality-side-more {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.process-quality-panel.cost-side-check > .button {
  justify-self: stretch;
}

@media (max-width: 720px) {
  .process-quality-target-grid {
    padding: 12px;
  }

  .process-quality-table thead {
    display: none;
  }

  .process-quality-table,
  .process-quality-table tbody,
  .process-quality-table tr,
  .process-quality-table td {
    display: block;
    width: 100%;
  }

  .process-quality-table tr {
    border-top: 1px solid var(--line);
    padding: 10px 12px;
  }

  .process-quality-table tr:first-child {
    border-top: 0;
  }

  .process-quality-table td {
    border-top: 0;
    display: grid;
    gap: 8px;
    grid-template-columns: 118px minmax(0, 1fr);
    padding: 4px 0;
  }

  .process-quality-table td::before {
    color: var(--muted);
    content: attr(data-label);
    font-size: 11px;
    font-weight: 900;
  }

  .process-quality-table th:nth-child(1),
  .process-quality-table td:nth-child(1),
  .process-quality-table th:nth-child(2),
  .process-quality-table td:nth-child(2) {
    width: 100%;
  }
}

.process-flow {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.process-flow-header {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
}

.process-flow-header strong,
.process-flow-header span {
  display: block;
}

.process-flow-header span {
  color: var(--muted);
  font-size: 13px;
  margin-top: 2px;
}

.process-steps {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.process-step {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 86px;
  padding: 12px;
}

.process-step-index {
  align-items: center;
  background: var(--surface-soft);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.process-step strong,
.process-step small {
  display: block;
}

.process-step small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  margin-top: 3px;
}

.process-step.done {
  border-color: rgba(22, 163, 74, .35);
}

.process-step.done .process-step-index {
  background: #e8f6ee;
  color: var(--green);
}

.process-step.active {
  border-color: rgba(255, 128, 0, .55);
  box-shadow: 0 0 0 3px rgba(255, 128, 0, .12);
}

.process-step.active .process-step-index {
  background: #fff0dc;
  color: var(--brand-orange-dark);
}

.process-description {
  display: grid;
  gap: 18px;
}

.process-description h2,
.process-description h3,
.process-description p {
  margin: 0;
}

.process-kicker {
  color: var(--brand-orange-dark);
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.process-hero {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  padding: 22px;
}

.process-hero-copy {
  align-content: center;
  display: grid;
  gap: 14px;
  min-width: 0;
}

.process-hero-copy h2 {
  color: var(--brand-navy);
  font-size: 27px;
  line-height: 1.18;
  max-width: 780px;
}

.process-hero-copy p,
.process-section-title p,
.process-system-card p,
.process-river-step p,
.process-role-node p,
.process-role-core p,
.process-module-card p,
.process-admin-node p {
  color: var(--muted);
  line-height: 1.55;
}

.process-system-card {
  background: #08244f;
  border-radius: 8px;
  color: #ffffff;
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 18px;
}

.process-system-core {
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  padding: 14px;
}

.process-system-core span,
.process-system-row span {
  color: rgba(255, 255, 255, .72);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.process-system-core strong {
  color: #ffffff;
  font-size: 19px;
}

.process-system-card p {
  color: rgba(255, 255, 255, .78);
}

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

.process-system-row b {
  background: #ffffff;
  border-radius: 999px;
  color: var(--brand-navy);
  font-size: 12px;
  padding: 7px 10px;
  text-align: center;
}

.process-metrics {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.process-metric {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 14px;
}

.process-metric:nth-child(2) {
  border-left-color: var(--brand-orange);
}

.process-metric:nth-child(3) {
  border-left-color: var(--green);
}

.process-metric:nth-child(4) {
  border-left-color: var(--violet);
}

.process-metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.process-metric strong {
  color: var(--brand-navy);
  font-size: 30px;
}

.process-metric small {
  color: var(--muted);
  line-height: 1.35;
}

.handbook-intro-grid,
.handbook-glossary-grid,
.handbook-quickstart {
  display: grid;
  gap: 12px;
}

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

.handbook-glossary {
  display: grid;
  gap: 14px;
}

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

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

.handbook-intro-card,
.handbook-glossary-card,
.handbook-quickstart-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 7px;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 14px;
}

.handbook-intro-card {
  border-top: 4px solid var(--brand-blue);
}

.handbook-intro-card:nth-child(2) {
  border-top-color: var(--brand-orange);
}

.handbook-intro-card:nth-child(3) {
  border-top-color: var(--green);
}

.handbook-intro-card:nth-child(4) {
  border-top-color: var(--violet);
}

.handbook-glossary-card,
.handbook-quickstart-card {
  border-left: 4px solid var(--brand-blue);
}

.handbook-glossary-card:nth-child(even),
.handbook-quickstart-card:nth-child(2) {
  border-left-color: var(--brand-orange);
}

.handbook-glossary-card:nth-child(3n),
.handbook-quickstart-card:nth-child(3) {
  border-left-color: var(--green);
}

.handbook-intro-card strong,
.handbook-glossary-card strong,
.handbook-quickstart-card strong {
  color: var(--brand-navy);
}

.handbook-intro-card p,
.handbook-glossary-card p,
.handbook-quickstart-card p {
  color: var(--muted);
  line-height: 1.5;
  margin: 0;
}

.process-section {
  display: grid;
  gap: 14px;
}

.process-section-title {
  display: grid;
  gap: 6px;
}

.process-section-title h2 {
  color: var(--brand-navy);
  font-size: 21px;
}

.process-river {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  position: relative;
}

.process-river::before {
  background: var(--brand-blue-soft-2);
  content: "";
  display: none;
  height: 3px;
  left: 24px;
  position: absolute;
  right: 24px;
  top: 29px;
}

.process-river-step {
  background: #ffffff;
  border: 1px solid var(--line);
  border-top: 4px solid var(--brand-blue);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  color: inherit;
  cursor: default;
  display: grid;
  gap: 9px;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 14px;
  position: relative;
  text-align: left;
  z-index: 1;
}

.process-river.interactive .process-river-step {
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.process-river.interactive .process-river-step:hover,
.process-river.interactive .process-river-step.active {
  border-color: rgba(246, 135, 18, .56);
  box-shadow: 0 14px 34px rgba(0, 29, 75, .12), 0 0 0 3px rgba(246, 135, 18, .12);
  transform: translateY(-1px);
}

.process-river.interactive .process-river-step.active .process-river-marker {
  background: var(--brand-orange);
}

.process-river-step[data-accent="1"],
.process-module-card[data-accent="1"],
.process-admin-node[data-accent="1"] {
  border-top-color: var(--brand-orange);
}

.process-river-step[data-accent="2"],
.process-module-card[data-accent="2"],
.process-admin-node[data-accent="2"] {
  border-top-color: var(--green);
}

.process-river-step[data-accent="3"],
.process-module-card[data-accent="3"],
.process-admin-node[data-accent="3"] {
  border-top-color: var(--violet);
}

.process-river-marker {
  align-items: center;
  background: var(--brand-navy);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 32px;
  justify-content: center;
  width: 32px;
}

.process-river-step h3,
.process-module-card h3,
.process-lane h3 {
  color: var(--brand-navy);
  font-size: 16px;
}

.process-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.process-chip-row span {
  background: var(--surface-blue);
  border: 1px solid var(--brand-blue-soft-2);
  border-radius: 999px;
  color: var(--brand-navy);
  font-size: 11px;
  font-weight: 800;
  padding: 5px 8px;
}

.process-step-detail {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr);
  padding: 18px;
}

.process-step-detail-main {
  align-content: start;
  border-left: 4px solid var(--brand-orange);
  display: grid;
  gap: 8px;
  min-width: 0;
  padding-left: 14px;
}

.process-step-detail-main h3,
.handbook-manual-card h3,
.handbook-manual-hero h2 {
  color: var(--brand-navy);
  margin: 0;
}

.process-step-detail-main p,
.handbook-manual-hero p,
.handbook-manual-note p,
.handbook-manual-card p {
  color: var(--muted);
  line-height: 1.55;
  margin: 0;
}

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

.process-detail-field {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 5px;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 12px;
}

.process-detail-field:last-child {
  grid-column: 1 / -1;
}

.process-detail-field span {
  color: var(--brand-orange-dark);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.process-detail-field strong {
  color: var(--brand-navy);
  font-size: 13px;
  line-height: 1.45;
}

.process-role-map {
  display: grid;
  gap: 12px;
  grid-template-areas:
    "fahrer manager fuhrpark"
    "werkstatt core anwalt"
    "gutachter accounting admin";
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.process-role-core,
.process-role-node,
.process-module-card,
.process-lane,
.process-admin-node {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  min-width: 0;
}

.process-role-core {
  background: #08244f;
  color: #ffffff;
  display: grid;
  gap: 7px;
  grid-area: core;
  padding: 16px;
}

.process-role-core span {
  color: #ffd4a0;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.process-role-core strong {
  color: #ffffff;
  font-size: 20px;
}

.process-role-core p {
  color: rgba(255, 255, 255, .78);
}

.process-role-node {
  border-left: 4px solid var(--brand-blue);
  display: grid;
  gap: 6px;
  padding: 14px;
}

.process-role-node strong,
.process-admin-node strong {
  color: var(--brand-navy);
}

.process-role-node[data-area="fahrer"] {
  grid-area: fahrer;
}

.process-role-node[data-area="manager"] {
  border-left-color: var(--brand-orange);
  grid-area: manager;
}

.process-role-node[data-area="fuhrpark"] {
  grid-area: fuhrpark;
}

.process-role-node[data-area="werkstatt"] {
  border-left-color: var(--green);
  grid-area: werkstatt;
}

.process-role-node[data-area="anwalt"] {
  border-left-color: var(--violet);
  grid-area: anwalt;
}

.process-role-node[data-area="gutachter"] {
  grid-area: gutachter;
}

.process-role-node[data-area="accounting"] {
  border-left-color: var(--green);
  grid-area: accounting;
}

.process-role-node[data-area="admin"] {
  border-left-color: var(--brand-orange);
  grid-area: admin;
}

.process-module-grid,
.process-swimlanes {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.process-module-card {
  border-top: 4px solid var(--brand-blue);
  display: grid;
  gap: 10px;
  padding: 14px;
}

.process-lane {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.process-lane ol {
  counter-reset: process-lane;
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.process-lane li {
  align-items: start;
  display: grid;
  gap: 9px;
  grid-template-columns: auto minmax(0, 1fr);
}

.process-lane li::before {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--brand-blue-soft-2);
  border-radius: 999px;
  color: var(--brand-blue);
  content: counter(process-lane);
  counter-increment: process-lane;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.process-lane li span {
  color: var(--muted);
  line-height: 1.45;
}

.process-admin-section {
  margin-bottom: 10px;
}

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

.process-admin-node {
  border-top: 4px solid var(--brand-blue);
  display: grid;
  gap: 8px;
  overflow-wrap: anywhere;
  padding: 14px;
}

.handbook-tabs {
  margin-bottom: 18px;
}

.handbook-manual {
  display: grid;
  gap: 18px;
}

.handbook-manual-hero {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .46fr);
  padding: 22px;
}

.handbook-manual-hero > div:first-child {
  display: grid;
  gap: 10px;
}

.handbook-manual-note {
  align-content: start;
  background: var(--surface-blue);
  border: 1px solid var(--brand-blue-soft-2);
  border-left: 4px solid var(--brand-orange);
  border-radius: 8px;
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 14px;
}

.handbook-manual-note strong {
  color: var(--brand-navy);
}

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

.handbook-manual-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  grid-template-columns: minmax(180px, .92fr) minmax(0, 1.08fr);
  min-width: 0;
  overflow: hidden;
}

.handbook-shot {
  background: var(--surface-soft);
  border-right: 1px solid var(--line);
  display: block;
  min-height: 220px;
  overflow: hidden;
}

.handbook-shot img {
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: left top;
  transition: transform .18s ease;
  width: 100%;
}

.handbook-shot:hover img {
  transform: scale(1.02);
}

.handbook-manual-copy {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 16px;
}

.handbook-manual-copy ol {
  color: var(--muted);
  display: grid;
  gap: 6px;
  margin: 0;
  padding-left: 20px;
}

.handbook-why {
  background: var(--surface-blue);
  border: 1px solid var(--brand-blue-soft-2);
  border-radius: 8px;
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px 12px;
}

.handbook-why span {
  color: var(--brand-orange-dark);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.handbook-why strong {
  color: var(--brand-navy);
  font-size: 13px;
  line-height: 1.45;
}

.handbook-manual-copy .button {
  justify-self: start;
}

@media (max-width: 1180px) {
  .process-river,
  .process-admin-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .process-river::before {
    display: none;
  }
}

@media (max-width: 980px) {
  .process-hero,
  .process-metrics,
  .process-role-map,
  .process-module-grid,
  .process-swimlanes,
  .process-step-detail,
  .handbook-intro-grid,
  .handbook-glossary-grid,
  .handbook-quickstart,
  .handbook-manual-hero,
  .handbook-manual-grid {
    grid-template-columns: 1fr;
  }

  .process-role-map {
    grid-template-areas:
      "core"
      "manager"
      "fahrer"
      "fuhrpark"
      "werkstatt"
      "anwalt"
      "gutachter"
      "accounting"
      "admin";
  }
}

@media (max-width: 720px) {
  .process-river,
  .process-admin-strip {
    grid-template-columns: 1fr;
  }

  .process-hero {
    padding: 18px;
  }

  .process-hero-copy h2 {
    font-size: 23px;
  }

  .process-system-row {
    grid-template-columns: 1fr;
  }

  .process-detail-grid,
  .handbook-manual-card {
    grid-template-columns: 1fr;
  }

  .handbook-shot {
    border-bottom: 1px solid var(--line);
    border-right: 0;
    min-height: 190px;
  }
}

.driver-status-board,
.driver-rental-extension {
  border-color: rgba(0, 58, 150, .18);
  box-shadow: var(--shadow-soft);
}

.driver-status-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: 1.25fr repeat(2, minmax(0, 1fr));
}

.driver-status-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 7px;
  min-height: 130px;
  padding: 16px;
}

.driver-status-card.active {
  background: #fff6ea;
  border-color: rgba(246, 135, 18, .32);
}

.driver-status-card span,
.driver-status-card p {
  color: var(--muted);
}

.driver-status-card span {
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.driver-status-card strong {
  color: var(--brand-navy);
  font-size: 18px;
}

.driver-status-card p {
  margin: 0;
}

.driver-order-list,
.driver-rental-list {
  display: grid;
  gap: 14px;
}

.driver-order-card,
.driver-rental-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.driver-order-card > header,
.driver-rental-card > header {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: space-between;
}

.driver-order-card header strong,
.driver-order-card header small,
.driver-rental-card header strong,
.driver-rental-card header span {
  display: block;
}

.driver-order-card header small,
.driver-rental-card header span {
  color: var(--muted);
  font-size: 12px;
}

.driver-order-flow {
  background: #ffffff;
}

.driver-order-facts {
  border-top: 1px solid var(--line);
  padding-top: 12px;
}

.driver-rental-card {
  background: var(--surface-blue);
}

.driver-rental-card p {
  color: var(--muted);
  margin: 0;
}

.driver-rental-card form {
  display: grid;
  gap: 12px;
}

.driver-confirmation-lead {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  margin-bottom: 16px;
  padding: 14px;
}

.driver-confirmation-lead.has-action {
  align-items: center;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.driver-confirmation-lead.locked {
  background: #fff8ed;
  border-color: rgba(246, 135, 18, .38);
}

.driver-confirmation-changes {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .2);
  border-radius: 10px;
  display: grid;
  gap: 14px;
  margin-bottom: 18px;
  padding: 16px;
}

.driver-confirmation-changes > header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.driver-confirmation-changes h3 {
  color: var(--brand-navy);
  font-size: 17px;
  margin: 0 0 4px;
}

.driver-confirmation-changes p {
  margin: 0;
}

.driver-confirmation-change-table {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.driver-confirmation-change-head,
.driver-confirmation-change-row {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(130px, .8fr) minmax(0, 1fr) minmax(0, 1fr);
  padding: 10px 12px;
}

.driver-confirmation-change-head {
  background: #edf4ff;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.driver-confirmation-change-row + .driver-confirmation-change-row {
  border-top: 1px solid var(--line);
}

.driver-confirmation-change-row strong,
.driver-confirmation-change-row span {
  overflow-wrap: anywhere;
}

.driver-confirmation-change-row span:last-child {
  color: var(--brand-navy);
  font-weight: 750;
}

.driver-portal-edit-form .driver-edit-traceability {
  border-color: rgba(0, 58, 150, .18);
  text-align: left;
}

@media (max-width: 720px) {
  .driver-confirmation-lead.has-action {
    grid-template-columns: 1fr;
  }

  .driver-confirmation-lead.has-action .button {
    width: 100%;
  }

  .driver-confirmation-changes > header {
    align-items: flex-start;
    flex-direction: column;
  }

  .driver-confirmation-change-head {
    display: none;
  }

  .driver-confirmation-change-row {
    gap: 4px;
    grid-template-columns: 1fr;
  }

}

.driver-confirmation-lead strong,
.driver-confirmation-section h3 {
  color: var(--brand-navy);
}

.driver-confirmation-lead p,
.driver-confirmation-section p {
  margin: 0;
}

.driver-confirmation-review {
  display: grid;
  gap: 16px;
  margin-bottom: 18px;
}

.driver-confirmation-section {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 12px;
  padding-top: 16px;
}

.driver-confirmation-section:first-child {
  border-top: 0;
  padding-top: 0;
}

.driver-confirmation-section header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.driver-confirmation-section h3 {
  font-size: 16px;
  margin: 0 0 3px;
}

.driver-confirmation-list {
  display: grid;
  gap: 5px;
  margin: 6px 0 0;
  padding-left: 18px;
}

.driver-confirmation-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.driver-confirmation-chip-list span {
  background: #fff6ea;
  border: 1px solid rgba(246, 135, 18, .35);
  border-radius: 999px;
  color: var(--brand-navy);
  font-size: 13px;
  font-weight: 800;
  padding: 6px 10px;
}

.driver-confirmation-photo-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fill, minmax(132px, 180px));
}

.driver-confirmation-photo-grid figure {
  margin: 0;
  max-width: 180px;
}

.driver-confirmation-photo-grid a {
  aspect-ratio: 4 / 3;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: block;
  overflow: hidden;
}

.driver-confirmation-photo-grid img,
.driver-confirmation-photo-grid .photo-thumb-placeholder {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.driver-confirmation-photo-grid figcaption {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
  margin-top: 6px;
}

.driver-confirmation-upload-form {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 12px;
  padding-top: 14px;
}

.driver-satisfaction-panel {
  border-color: rgba(0, 58, 150, .18);
}

.driver-satisfaction-cta-body {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 14px;
}

.driver-satisfaction-cta-body p {
  margin: 4px 0 0;
}

.driver-survey-portal {
  background: linear-gradient(180deg, #f6f9fc 0%, #eef4fa 100%);
  margin: -24px;
  min-height: calc(100vh - 96px);
  padding: clamp(24px, 5vw, 56px) 18px;
}

.driver-survey-shell {
  display: grid;
  gap: 18px;
  margin: 0 auto;
  max-width: 780px;
}

.driver-survey-brand {
  align-items: center;
  display: flex;
  gap: 14px;
}

.driver-survey-brand img {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  height: 62px;
  object-fit: contain;
  padding: 8px 12px;
  width: 180px;
}

.driver-survey-brand strong,
.driver-survey-brand span {
  display: block;
}

.driver-survey-brand strong {
  color: var(--brand-navy);
  font-size: 22px;
}

.driver-survey-brand span {
  color: var(--muted);
  font-size: 13px;
  margin-top: 2px;
}

.driver-survey-progress {
  display: grid;
  gap: 8px;
}

.driver-survey-progress > span {
  color: var(--muted);
  font-size: 13px;
}

.driver-survey-progress strong {
  color: var(--brand-navy);
}

.driver-survey-progress div {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 999px;
  height: 10px;
  overflow: hidden;
}

.driver-survey-progress i {
  background: var(--brand-orange);
  border-radius: inherit;
  display: block;
  height: 100%;
}

.driver-survey-save-note {
  color: var(--muted);
  font-size: 13px;
  margin: -2px 0 0;
}

.driver-survey-step-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 18px;
  padding: clamp(22px, 4vw, 34px);
}

.driver-survey-step-card h1,
.driver-survey-step-card p {
  margin: 0;
}

.driver-survey-step-card h1 {
  color: var(--brand-navy);
  font-size: 30px;
  line-height: 1.18;
}

.driver-survey-step-card p {
  color: var(--muted);
  line-height: 1.55;
}

.driver-survey-flow-options {
  display: grid;
  gap: 10px;
}

.driver-survey-flow-option {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: auto auto minmax(0, 1fr);
  min-height: 66px;
  padding: 12px 14px;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.driver-survey-flow-option:hover,
.driver-survey-flow-option.is-selected,
.driver-survey-flow-option:has(input:checked) {
  border-color: rgba(246, 135, 18, .58);
  box-shadow: 0 10px 24px rgba(0, 29, 75, .09);
  transform: translateY(-1px);
}

.driver-survey-flow-option input {
  height: 18px;
  margin: 0;
  width: 18px;
}

.driver-survey-flow-option span {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 999px;
  display: inline-flex;
  font-size: 22px;
  height: 42px;
  justify-content: center;
  width: 42px;
}

.driver-survey-flow-option strong {
  color: var(--brand-navy);
  font-size: 16px;
  line-height: 1.25;
}

.driver-survey-flow-fields {
  display: grid;
  gap: 14px;
}

.driver-survey-flow-field,
.driver-survey-flow-scale {
  color: var(--brand-navy);
  display: grid;
  font-weight: 800;
  gap: 8px;
}

.driver-survey-flow-field textarea {
  min-height: 132px;
}

.driver-survey-flow-scale {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  padding: 14px;
}

.driver-survey-flow-scale input {
  width: 100%;
}

.driver-survey-flow-scale span {
  align-items: center;
  color: var(--muted);
  display: flex;
  font-size: 12px;
  justify-content: space-between;
}

.driver-survey-flow-scale strong {
  color: var(--brand-navy);
  font-size: 18px;
}

.driver-survey-flow-check {
  align-items: flex-start;
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: flex;
  gap: 10px;
  padding: 12px;
}

.driver-survey-flow-check input {
  flex: 0 0 auto;
  margin-top: 3px;
  width: auto;
}

.driver-survey-step-card footer {
  align-items: center;
  border-top: 1px solid var(--line);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding-top: 16px;
}

.driver-satisfaction-form {
  display: grid;
  gap: 18px;
}

.driver-satisfaction-form fieldset {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 14px;
}

.driver-satisfaction-form legend,
.driver-survey-question legend {
  color: var(--brand-navy);
  font-size: 15px;
  font-weight: 900;
  padding: 0 6px;
}

.driver-survey-question-grid {
  display: grid;
  gap: 12px;
}

.driver-survey-question {
  background: var(--surface-soft);
}

.driver-survey-options {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.driver-survey-option {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  gap: 8px;
  min-height: 44px;
  padding: 9px 10px;
}

.driver-survey-option input {
  flex: 0 0 auto;
  margin: 0;
  width: auto;
}

.driver-survey-option span {
  color: var(--text);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}

.driver-survey-scales {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.driver-survey-scale {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.driver-survey-scale input {
  width: 100%;
}

.driver-survey-scale span {
  color: var(--muted);
  display: flex;
  justify-content: space-between;
}

.driver-survey-submit {
  border-top: 1px solid var(--line);
  display: flex;
  justify-content: flex-end;
  padding-top: 14px;
}

@media (max-width: 860px) {
  .driver-status-grid {
    grid-template-columns: 1fr;
  }

  .driver-survey-options {
    grid-template-columns: 1fr;
  }

  .driver-survey-submit {
    justify-content: stretch;
  }

  .driver-survey-submit .button {
    width: 100%;
  }

  .driver-satisfaction-cta-body,
  .driver-survey-step-card footer,
  .driver-survey-brand {
    align-items: stretch;
    flex-direction: column;
  }

  .driver-survey-brand img {
    width: 100%;
  }

  .driver-survey-portal {
    margin: -18px;
    padding: 22px 14px;
  }

  .driver-survey-step-card h1 {
    font-size: 24px;
  }

  .driver-survey-step-card footer .button {
    width: 100%;
  }
}

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

.photo-grid figure {
  margin: 0;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.photo-grid img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
}

.photo-thumb-placeholder {
  align-items: center;
  aspect-ratio: 4 / 3;
  background: var(--surface-soft);
  color: var(--brand-blue);
  display: flex;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
  line-height: 1.3;
  min-height: 76px;
  overflow-wrap: anywhere;
  padding: 8px;
  text-align: center;
}

.photo-grid figcaption {
  padding: 7px;
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.case-workspace-panel {
  display: grid;
  gap: 16px;
}

.mail-program-panel {
  gap: 14px;
}

.workspace-mail-layout {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  min-width: 0;
}

.workspace-mail-history,
.workspace-mail-program {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.mail-program-panel .communication-split {
  grid-template-columns: minmax(0, 1fr) !important;
  min-height: 520px;
}

.mail-program-panel .communication-feed-list {
  border-right: 0;
  max-height: 320px;
}

.mail-program-panel .communication-detail-pane {
  border-top: 1px solid var(--line);
  min-height: 220px;
}

.mail-program-panel .workspace-note-details {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.mail-program-compose {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 0;
  overflow: hidden;
  padding: 0;
}

.mail-program-compose-head {
  align-items: flex-start;
  background: var(--surface-blue);
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
  padding: 14px;
}

.mail-program-compose-head > div:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.mail-program-compose-head > div:first-child span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.mail-program-compose-head strong {
  color: var(--brand-navy);
  font-size: 18px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.mail-program-address-grid,
.mail-program-compose .mail-editor,
.mail-program-compose .email-attachment-picker,
.mail-program-compose .inline-attachment-upload,
.mail-program-compose .follow-up-options,
.mail-program-compose > .actions {
  margin: 0;
  padding: 14px;
}

.mail-program-address-grid,
.mail-program-compose .mail-editor,
.mail-program-compose .email-attachment-picker,
.mail-program-compose .inline-attachment-upload,
.mail-program-compose .follow-up-options {
  border-bottom: 1px solid var(--line);
}

.mail-program-compose .rich-mail-editor {
  min-height: 260px;
}

@media (max-width: 1320px) {
  .workspace-mail-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

.case-workbench-grid {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
}

.case-workbench-main,
.case-workbench-side {
  min-width: 0;
}

.workspace-stats,
.document-group-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.workspace-stats span,
.document-group-pills span {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  font-size: 12px;
  padding: 6px 9px;
}

.workspace-stats .workspace-stat-new {
  background: #fff0dc;
  border-color: rgba(246, 135, 18, .38);
  color: var(--brand-orange-dark);
}

.case-workspace-panel.has-new-communication {
  border-color: rgba(246, 135, 18, .34);
}

.workspace-head-actions {
  align-items: flex-end;
  display: grid;
  gap: 10px;
  justify-items: end;
}

.communication-outlook {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.communication-outlook-list {
  background: var(--surface-soft);
  border-right: 1px solid var(--line);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}

.mail-program-panel .communication-outlook {
  height: clamp(520px, calc(100vh - 220px), 680px);
}

.communication-list-header {
  align-items: center;
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  padding: 14px;
}

.communication-list-header div {
  display: grid;
  gap: 2px;
}

.communication-list-header strong {
  color: var(--brand-navy);
}

.communication-list-header small {
  color: var(--muted);
  font-size: 12px;
}

.communication-outlook .communication-feed-list {
  border-right: 0;
  max-height: none;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.communication-outlook-reader {
  background: #ffffff;
  min-height: 0;
  min-width: 0;
  overflow: auto;
}

.communication-outlook-reader > .communication-detail {
  padding: 18px;
}

.communication-outlook-reader .workspace-mail-program,
.communication-outlook-reader .workspace-note-compose,
.communication-outlook-reader .workspace-document-compose {
  min-height: 100%;
}

/* Compact correspondence forms: aligned label/value rows, with the history kept alongside. */
.communication-compact {
  font-size: 13px;
  gap: 10px;
  padding: 14px;
}

.communication-compact > .panel-header {
  align-items: center;
  gap: 12px;
  margin-bottom: 0;
}

.communication-compact > .panel-header h2 {
  font-size: 16px;
  margin: 0;
}

.communication-compact > .panel-header p {
  font-size: 12px;
  margin: 4px 0 0;
}

.communication-compact .workspace-head-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  justify-content: flex-end;
}

.communication-compact .workspace-stats {
  gap: 4px;
}

.communication-compact .workspace-stats span,
.communication-compact .process-email-stats span {
  font-size: 11px;
  padding: 4px 6px;
}

.communication-compact .button {
  font-size: 12px;
  min-height: 32px;
  padding: 7px 10px;
}

.communication-compact .communication-outlook {
  grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
}

.mail-program-panel.communication-compact .communication-outlook {
  height: clamp(520px, calc(100vh - 220px), 600px);
}

.communication-compact .communication-outlook-reader {
  container: correspondence / inline-size;
}

.communication-compact .communication-list-header,
.communication-compact .mail-program-compose-head {
  padding: 9px 12px;
}

.communication-compact .communication-list-header div {
  align-items: baseline;
  display: flex;
  gap: 8px;
}

.communication-compact .communication-feed-item {
  gap: 4px;
  padding: 9px 10px;
}

.communication-compact .communication-feed-top {
  gap: 4px 6px;
}

.communication-compact .communication-feed-top small,
.communication-compact .communication-feed-preview {
  font-size: 11px;
}

.communication-compact .communication-type {
  font-size: 10px;
  padding: 2px 5px;
}

.communication-compact .mail-program-compose-head strong {
  font-size: 15px;
}

.communication-compact .workspace-note-compose,
.communication-compact .workspace-mail-program {
  align-content: start;
  min-height: 0;
}

.communication-compact .workspace-note-compose .workspace-note-form,
.communication-compact .mail-program-compose {
  border: 0;
  border-radius: 0;
  gap: 0;
  overflow: visible;
  padding: 0;
}

.communication-compact :is(.mail-program-address-grid, .document-upload-grid, .document-type-picker, .follow-up-options .form-grid) {
  gap: 0;
  grid-template-columns: minmax(0, 1fr);
  padding: 0;
}

.communication-compact :is(.workspace-note-form > label, .mail-program-address-grid > label, .document-upload-grid > label, .document-type-picker > label, .follow-up-options label):not([hidden]) {
  align-items: center;
  background: linear-gradient(to right, var(--surface-soft) 142px, #ffffff 142px);
  border-bottom: 1px solid var(--line);
  display: grid;
  gap: 8px 16px;
  grid-template-columns: 118px minmax(0, 1fr);
  padding: 6px 12px;
}

.communication-compact :where(input:not([type="file"]):not([type="checkbox"]):not([type="hidden"]), select, textarea) {
  border-radius: 5px;
  font-size: 13px;
  min-height: 32px;
  padding: 6px 8px;
}

.communication-compact .workspace-note-form textarea {
  min-height: 76px;
}

.communication-compact :is(.inline-attachment-upload, .email-attachment-picker, .follow-up-options) {
  background: #ffffff;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  gap: 0;
  margin: 0;
  min-width: 0;
  padding: 0;
}

.communication-compact :is(.inline-attachment-upload, .email-attachment-picker, .follow-up-options) > legend {
  background: var(--surface-blue);
  border-bottom: 1px solid var(--line);
  float: left;
  font-size: 12px;
  padding: 7px 12px;
  width: 100%;
}

.communication-compact .inline-attachment-note {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 3px 8px;
  padding: 7px 12px 0;
}

.communication-compact .inline-attachment-note strong,
.communication-compact .inline-attachment-note small {
  font-size: 11px;
}

.communication-compact .damage-upload-wrap {
  gap: 6px;
  padding: 8px 12px;
}

.communication-compact .damage-upload {
  border-radius: 6px;
  box-shadow: none;
  gap: 10px;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  min-height: 60px;
  padding: 8px 10px;
}

.communication-compact .damage-upload-icon {
  border-radius: 6px;
  height: 32px;
  width: 32px;
}

.communication-compact .damage-upload-title {
  font-size: 12px;
}

.communication-compact .damage-upload-copy {
  gap: 2px;
}

.communication-compact .damage-upload-hint,
.communication-compact .damage-upload-action {
  font-size: 11px;
}

.communication-compact .damage-upload-action {
  padding: 7px 9px;
}

.communication-compact .mail-editor {
  padding: 8px 12px;
}

.communication-compact .mail-editor-toolbar select {
  width: auto;
}

.communication-compact .process-email-stats span {
  align-items: center;
  display: inline-flex;
  gap: 4px;
  min-width: 0;
}

.communication-compact .process-email-stats {
  border: 0;
  gap: 4px;
  padding: 0;
}

.communication-compact .process-email-stats strong {
  font-size: 12px;
}

.communication-compact .rich-mail-editor {
  min-height: 140px;
}

.communication-compact .email-attachment-list {
  gap: 0;
  max-height: 150px;
}

.communication-compact .email-attachment-option {
  align-items: center;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  padding: 6px 12px;
}

.communication-compact :is(.workspace-note-form, .mail-program-compose) > .actions {
  background: #ffffff;
  border-top: 1px solid var(--line);
  bottom: 0;
  margin: 0;
  padding: 10px 12px;
  position: sticky;
  z-index: 1;
}

.communication-compact .communication-detail {
  font-size: 13px;
  gap: 10px;
  padding: 12px;
}

.communication-compact .communication-detail-head h3 {
  font-size: 16px;
}

@container correspondence (min-width: 820px) {
  .communication-compact .mail-program-compose .mail-program-address-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .communication-compact .mail-program-address-grid > label:nth-child(odd) {
    border-right: 1px solid var(--line);
  }
}

@media (max-width: 760px) {
  .mail-program-panel.communication-compact .communication-outlook {
    grid-template-columns: minmax(0, 1fr);
    height: auto;
  }

  .communication-compact .communication-outlook-list {
    max-height: 230px;
  }

  .communication-compact > .panel-header,
  .communication-compact .mail-program-compose-head {
    align-items: stretch;
    flex-direction: column;
  }

  .communication-compact .workspace-head-actions {
    justify-content: flex-start;
  }

  .communication-compact :is(.workspace-note-form > label, .mail-program-address-grid > label, .document-upload-grid > label, .document-type-picker > label, .follow-up-options label):not([hidden]) {
    background: var(--surface-soft);
    gap: 5px;
    grid-template-columns: minmax(0, 1fr);
  }

  .communication-compact .damage-upload {
    grid-template-columns: 32px minmax(0, 1fr);
  }

  .communication-compact .damage-upload-action {
    grid-column: 2;
    justify-self: start;
  }
}

@media (min-width: 761px) {
  .communication-compact .communication-outlook-list {
    border-bottom: 0;
    border-right: 1px solid var(--line);
    max-height: none;
  }
}

.workspace-note-compose {
  background: #ffffff;
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
}

.workspace-document-compose {
  background: #ffffff;
  display: grid;
  grid-template-rows: auto auto 1fr;
  min-width: 0;
}

.workspace-document-compose-intro {
  background: var(--surface-soft);
  border-bottom: 1px solid var(--line);
  display: grid;
  gap: 3px;
  padding: 14px;
}

.workspace-document-compose-intro strong {
  color: var(--brand-navy);
}

.workspace-document-compose-intro small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.workspace-note-compose .workspace-note-form {
  align-content: start;
  border-top: 0;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.workspace-note-compose textarea {
  min-height: 280px;
}

.workspace-card {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.workspace-card h3,
.workspace-note-details strong,
.workspace-email-details strong,
.document-upload-details strong,
.document-section.clean strong {
  color: var(--brand-navy);
  margin: 0;
}

.workspace-card p,
.workspace-card .fine {
  margin: 0;
}

.workspace-email-redirect {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 12px;
}

.workspace-email-redirect div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.workspace-email-redirect strong,
.workspace-email-redirect small {
  overflow-wrap: anywhere;
}

.workspace-email-redirect strong {
  color: var(--brand-navy);
}

.workspace-email-redirect small {
  color: var(--muted);
}

.communication-feed-card.expanded {
  background: #ffffff;
}

.workspace-note-form textarea {
  min-height: 110px;
}

.communication-split {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  grid-template-columns: minmax(240px, .8fr) minmax(0, 1.4fr);
  min-height: 420px;
  overflow: hidden;
}

.communication-feed-list {
  display: grid;
  align-content: start;
  background: var(--surface-soft);
  border-right: 1px solid var(--line);
  max-height: 560px;
  overflow: auto;
}

.communication-feed-item {
  appearance: none;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--line);
  display: grid;
  gap: 6px;
  padding: 12px;
  text-align: left;
  width: 100%;
}

.communication-feed-item:hover,
.communication-feed-item.active {
  background: #ffffff;
}

.communication-feed-item.active {
  box-shadow: inset 4px 0 0 var(--brand-orange);
}

.communication-feed-item.is-new {
  background: #fffaf2;
}

.communication-feed-item.is-new:not(.active) {
  box-shadow: inset 4px 0 0 rgba(246, 135, 18, .58);
}

.communication-feed-item strong {
  color: var(--brand-navy);
  line-height: 1.3;
}

.communication-feed-preview {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.communication-feed-top,
.communication-detail-meta,
.communication-detail-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.communication-type {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-blue);
  font-size: 11px;
  font-weight: 800;
  padding: 3px 7px;
}

.communication-feed-top small,
.communication-detail-meta {
  color: var(--muted);
  font-size: 12px;
}

.communication-detail-pane {
  background: #ffffff;
  min-width: 0;
  padding: 18px;
}

.communication-detail {
  display: grid;
  gap: 14px;
}

.communication-detail-head {
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding-bottom: 14px;
}

.communication-detail-head h3 {
  color: var(--brand-navy);
  font-size: 18px;
  margin: 8px 0 0;
}

.communication-detail-head .new-communication-badge {
  margin-left: 6px;
}

.communication-detail-body {
  color: var(--text);
  line-height: 1.55;
  max-height: 360px;
  overflow: auto;
  overflow-wrap: anywhere;
  white-space: normal;
}

.mail-program-panel .communication-split {
  grid-template-columns: minmax(0, 1fr) !important;
}

.mail-program-panel .communication-feed-list {
  border-right: 0;
  max-height: 320px;
}

.mail-program-panel .communication-detail-pane {
  border-top: 1px solid var(--line);
  min-height: 220px;
}

.mail-program-panel .communication-outlook .communication-feed-list {
  max-height: none;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.communication-detail-actions {
  border-top: 1px solid var(--line);
  padding-top: 12px;
}

.communication-follow-up,
.follow-up-options {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.communication-follow-up > div {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.communication-follow-up strong {
  color: var(--brand-navy);
}

.communication-follow-up span,
.communication-follow-up small {
  color: var(--muted);
}

.communication-follow-up-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.follow-up-options {
  background: #ffffff;
  margin: 0;
}

.follow-up-options legend {
  color: var(--brand-navy);
  font-weight: 800;
  padding: 0 6px;
}

.follow-up-panel {
  display: grid;
  gap: 16px;
}

.follow-up-board {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.follow-up-board section {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.follow-up-board h3 {
  color: var(--brand-navy);
  font-size: 15px;
  margin: 0;
}

.follow-up-list {
  display: grid;
  gap: 10px;
}

.work-item-dashboard-list,
.work-item-list {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.work-item-dashboard-list > .button {
  justify-self: start;
}

.work-item-case-list {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.work-item-case-head,
.work-item-case-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(92px, .55fr) minmax(128px, .75fr) minmax(150px, 1fr) minmax(0, 1.6fr) minmax(96px, .65fr) minmax(104px, auto);
  min-width: 0;
}

.work-item-case-head {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  padding: 0 10px;
  text-transform: uppercase;
}

.work-item-case-row {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  box-shadow: 0 6px 16px rgba(0, 29, 75, .04);
  padding: 8px 10px;
}

.work-item-case-row.critical,
.work-item-case-row.overdue {
  background: #fff8f6;
  border-left-color: var(--red);
}

.work-item-case-row.high.today,
.work-item-case-row.today {
  background: #fffaf2;
  border-left-color: var(--brand-orange);
}

.work-item-case-row.escalated {
  box-shadow: 0 0 0 3px rgba(180, 35, 24, .08), 0 6px 16px rgba(0, 29, 75, .04);
}

.work-item-case-due,
.work-item-case-subject,
.work-item-case-tasks,
.work-item-case-owner {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.work-item-case-due strong,
.work-item-case-subject strong {
  color: var(--brand-navy);
  font-size: 14px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.work-item-case-due span,
.work-item-case-subject small,
.work-item-case-owner span {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.work-item-case-state,
.work-item-case-action {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.work-item-case-action {
  justify-content: flex-end;
}

.work-item-case-action .button,
.work-item-case-row .work-item-lock {
  min-height: 32px;
  padding: 7px 10px;
}

.work-item-task-chips {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.work-item-task-count,
.work-item-task-chip,
.work-item-task-more {
  align-items: center;
  border: 1px solid var(--brand-blue-soft-2);
  border-radius: 999px;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.15;
  min-height: 26px;
  padding: 5px 8px;
}

.work-item-task-count {
  background: var(--brand-blue-soft);
  color: var(--brand-blue);
}

.work-item-task-chip {
  background: #ffffff;
  color: var(--brand-navy);
  max-width: min(220px, 100%);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.work-item-task-chip.overdue {
  border-color: #fecdca;
  color: var(--red);
}

.work-item-task-chip.today {
  border-color: rgba(246, 135, 18, .30);
  color: #9a4a00;
}

.work-item-task-more {
  background: var(--surface-soft);
  border-color: var(--line);
  color: var(--muted);
}

@media (max-width: 980px) {
  .work-item-case-head {
    display: none;
  }

  .work-item-case-row {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .work-item-case-state,
  .work-item-case-action {
    justify-content: flex-start;
  }
}

.work-item-filter-panel {
  display: grid;
  gap: 14px;
}

.work-item-filter-panel .panel-header {
  align-items: center;
}

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

.work-item-filter-grid label:first-child {
  grid-column: span 2;
}

.work-item-filter-grid .button {
  justify-self: start;
}

.work-item-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(0, 29, 75, .05);
  display: grid;
  gap: 9px;
  min-width: 0;
  padding: 12px;
}

.work-item-card.critical,
.work-item-card.overdue {
  background: #fff8f6;
  border-left-color: var(--red);
}

.work-item-card.escalated {
  box-shadow: 0 0 0 3px rgba(180, 35, 24, .08), 0 8px 20px rgba(0, 29, 75, .05);
}

.work-item-card.high.today,
.work-item-card.today {
  background: #fffaf2;
  border-left-color: var(--brand-orange);
}

.work-item-card.low {
  border-left-color: var(--brand-gray);
}

.work-item-card header,
.work-item-card header > div,
.work-item-card footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.work-item-card header,
.work-item-card footer {
  justify-content: space-between;
}

.work-item-card header > span,
.work-item-card small,
.work-item-card footer > span {
  color: var(--muted);
  font-size: 12px;
}

.work-item-card h3 {
  color: var(--brand-navy);
  font-size: 15px;
  margin: 0;
  overflow-wrap: anywhere;
}

.work-item-card p {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
}

.work-item-card .button {
  min-height: 34px;
  padding: 7px 10px;
}

.work-item-lock {
  align-items: center;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 999px;
  color: #9a3412;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  justify-content: center;
  min-height: 30px;
  overflow-wrap: anywhere;
  padding: 6px 10px;
  text-align: center;
}

.work-item-control-info {
  background: rgba(0, 58, 150, .05);
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 8px 10px;
}

.work-item-control-info p {
  color: var(--brand-navy);
  font-size: 12px;
}

.work-item-controls {
  align-items: center;
  border-top: 1px solid var(--line);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 9px;
}

.work-item-controls select {
  min-height: 34px;
  padding: 7px 9px;
  width: min(190px, 100%);
}

.work-item-controls .button {
  white-space: nowrap;
}

.work-item-priority {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  font-size: 11px;
  font-weight: 800;
  padding: 3px 7px;
}

.work-item-priority.critical {
  background: #fef3f2;
  border-color: #fecdca;
  color: var(--red);
}

.work-item-priority.high {
  background: rgba(246, 135, 18, .12);
  border-color: rgba(246, 135, 18, .30);
  color: #9a4a00;
}

.work-item-priority.normal {
  background: var(--brand-blue-soft);
  border-color: var(--brand-blue-soft-2);
  color: var(--brand-blue);
}

.work-item-priority.low {
  background: var(--surface-soft);
  color: var(--muted);
}

.follow-up-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  padding: 12px;
}

.follow-up-card.overdue {
  border-left-color: #c2410c;
}

.follow-up-card.today {
  border-left-color: var(--brand-orange);
}

.follow-up-card.done {
  opacity: .78;
}

.follow-up-card header,
.follow-up-card header > div,
.follow-up-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.follow-up-card header {
  justify-content: space-between;
}

.follow-up-card h3 {
  color: var(--brand-navy);
  font-size: 16px;
  margin: 0;
}

.follow-up-card p {
  color: var(--text);
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
}

.follow-up-card header span,
.follow-up-meta {
  color: var(--muted);
  font-size: 12px;
}

.follow-up-pill {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  font-size: 11px;
  font-weight: 800;
  padding: 3px 7px;
}

.follow-up-pill.overdue {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
}

.follow-up-pill.today {
  background: rgba(246,135,18,.12);
  border-color: rgba(246,135,18,.28);
  color: #9a4a00;
}

.follow-up-pill.open {
  background: var(--surface-soft);
}

.follow-up-pill.done {
  background: #ecfdf5;
  border-color: #bbf7d0;
  color: #166534;
}

.follow-up-done-details {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

.follow-up-done-details summary {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  list-style: none;
  padding: 13px 14px;
}

.follow-up-done-details summary::-webkit-details-marker {
  display: none;
}

.follow-up-done-details summary span {
  display: grid;
  gap: 2px;
}

.follow-up-done-details summary small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
}

.follow-up-done-details .follow-up-list,
.follow-up-done-details .empty-state {
  border-top: 1px solid var(--line);
  padding: 12px;
}

.workspace-note-details,
.workspace-email-details,
.document-upload-details {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

.workspace-note-details summary,
.workspace-email-details summary,
.document-upload-details summary,
.document-section.clean summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  list-style: none;
  padding: 13px 14px;
}

.workspace-note-details summary::-webkit-details-marker,
.workspace-email-details summary::-webkit-details-marker,
.document-upload-details summary::-webkit-details-marker,
.document-section.clean summary::-webkit-details-marker {
  display: none;
}

.workspace-note-details summary::before,
.workspace-email-details summary::before,
.document-upload-details summary::before,
.document-section.clean summary::before {
  color: var(--brand-orange);
  content: "+";
  font-weight: 900;
}

.workspace-note-details[open] summary::before,
.workspace-email-details[open] summary::before,
.document-upload-details[open] summary::before,
.document-section.clean[open] summary::before {
  content: "-";
}

.workspace-note-details summary > span:first-child,
.workspace-email-details summary > span:first-child,
.document-upload-details summary > span:first-child,
.document-section.clean summary > span:first-child {
  display: grid;
  gap: 2px;
  margin-right: auto;
}

.workspace-note-details small,
.workspace-email-details small,
.document-upload-details small,
.document-section.clean small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
}

.workspace-note-form,
.email-compose-form,
.document-upload-details .document-upload-form,
.workspace-document-compose .document-upload-form {
  border-top: 1px solid var(--line);
  padding: 14px;
}

.workspace-document-compose .document-upload-form {
  align-content: start;
  display: grid;
  gap: 14px;
}

.document-upload-form .document-upload-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.email-attachment-picker,
.inline-attachment-upload {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 12px;
}

.email-attachment-picker legend,
.inline-attachment-upload legend {
  color: var(--brand-navy);
  font-weight: 800;
  padding: 0 6px;
}

.inline-attachment-note {
  display: grid;
  gap: 2px;
}

.inline-attachment-note strong {
  color: var(--brand-navy);
}

.inline-attachment-note small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

.inline-attachment-upload .document-upload-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.inline-attachment-upload .damage-upload-wrap {
  grid-column: 1 / -1;
  min-width: 0;
}

.email-attachment-list {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr;
  max-height: 260px;
  overflow: auto;
}

.email-attachment-option {
  align-items: flex-start;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  grid-template-columns: 20px minmax(0, 1fr);
  min-width: 0;
  padding: 9px;
}

.email-attachment-option span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.email-attachment-option strong,
.email-attachment-option small {
  overflow-wrap: anywhere;
  text-align: left;
}

.email-attachment-option small {
  color: var(--muted);
  font-size: 12px;
}

.document-type-picker {
  display: grid;
  gap: 14px;
  grid-column: 1 / -1;
  grid-template-columns: minmax(180px, .45fr) minmax(260px, 1fr);
}

.document-type-picker[hidden] {
  display: none;
}

.document-classification-panel {
  grid-column: 1 / -1;
}

.document-classification-card {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  padding: 12px;
}

.document-classification-card > div:first-child {
  display: grid;
  gap: 3px;
}

.document-classification-card > div:first-child span {
  color: var(--brand-navy);
  font-weight: 800;
}

.document-classification-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.document-classification-card p,
.document-classification-card small {
  color: var(--muted);
  font-size: 12px;
  margin: 0;
}

.mail-editor {
  display: grid;
  gap: 8px;
}

.mail-editor-toolbar {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 7px;
}

.mail-editor-toolbar .icon-button {
  background: #ffffff;
  border: 1px solid var(--line);
  color: var(--brand-navy);
  min-height: 34px;
  width: 34px;
}

.mail-editor-toolbar select {
  min-height: 34px;
  padding: 6px 10px;
}

.rich-mail-editor {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  min-height: 210px;
  outline: none;
  overflow-wrap: anywhere;
  padding: 12px;
}

.rich-mail-editor:focus {
  border-color: var(--brand-blue);
  box-shadow: 0 0 0 3px rgba(0, 58, 150, .11);
}

.rich-mail-editor::spelling-error {
  text-decoration-line: underline;
  text-decoration-style: wavy;
  text-decoration-color: #d92d20;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 2px;
}

.rich-mail-editor:empty::before {
  color: var(--muted);
  content: attr(data-placeholder);
}

.document-board {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}

.document-board.compact {
  gap: 12px;
  margin-top: 14px;
}

.document-board.table-view {
  gap: 10px;
  margin-top: 0;
}

.document-hub-panel {
  display: grid;
  gap: 14px;
}

.document-hub-panel.target-detail {
  gap: 12px;
}

.document-hub-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.document-hub-actions .button {
  min-height: 32px;
  padding: 7px 10px;
}

.document-hub-panel > #dokumente {
  display: block;
  scroll-margin-top: 90px;
}

.document-detail-layout {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(118px, 142px) minmax(0, 1fr);
  min-width: 0;
}

.document-detail-side,
.document-detail-content {
  min-width: 0;
}

.document-detail-side {
  display: grid;
  gap: 10px;
}

.document-detail-nav {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 5px;
  padding: 7px;
}

.document-detail-nav > strong {
  color: var(--brand-navy);
  font-size: 12px;
  padding: 2px 3px 6px;
}

.document-detail-nav a {
  align-items: center;
  background: #ffffff;
  border: 1px solid transparent;
  border-radius: 7px;
  color: var(--brand-navy);
  display: grid;
  gap: 4px;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  min-height: 34px;
  padding: 5px;
  text-decoration: none;
}

.document-detail-nav a:hover,
.document-detail-nav a:focus-visible,
.document-detail-nav a.active {
  border-color: rgba(0, 58, 150, .18);
  box-shadow: 0 0 0 3px rgba(0, 88, 176, .08);
}

.document-detail-nav span {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 9px;
  font-weight: 900;
  height: 22px;
  justify-content: center;
}

.document-detail-nav b {
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.document-detail-nav em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
}

.document-detail-side .document-group-pills {
  display: none;
}

.document-detail-content {
  display: grid;
  gap: 10px;
}

.document-detail-toolbar {
  align-items: stretch;
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr;
}

.document-detail-toolbar > strong {
  color: var(--brand-navy);
  font-size: 14px;
}

.document-hub-panel.target-detail .document-filter-bar {
  grid-template-columns: 1fr;
}

.document-hub-panel.target-detail .document-filter-bar span {
  padding-bottom: 0;
}

.document-preview-layout {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  min-width: 0;
}

.document-list-workspace,
.document-preview-reader {
  min-width: 0;
}

.document-preview-reader {
  position: sticky;
  top: 82px;
}

.document-preview-pane {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  min-height: 620px;
  overflow: hidden;
}

.document-preview-pane.empty {
  align-content: start;
}

.document-preview-stage {
  align-items: center;
  background: #f8fbff;
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: center;
  min-height: 420px;
  overflow: hidden;
  padding: 12px;
}

.document-preview-stage.image img {
  border-radius: 7px;
  max-height: 540px;
  max-width: 100%;
  object-fit: contain;
}

.document-preview-frame {
  background: #ffffff;
  border: 0;
  border-bottom: 1px solid var(--line);
  height: min(68vh, 700px);
  min-height: 460px;
  width: 100%;
}

.document-preview-info {
  align-content: start;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.document-preview-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

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

.document-preview-meta div,
.document-preview-note {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 9px;
}

.document-preview-meta dt,
.document-preview-note strong {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.document-preview-meta dd,
.document-preview-note p {
  color: var(--brand-navy);
  margin: 0;
  overflow-wrap: anywhere;
}

.document-preview-empty {
  margin: 14px;
}

.document-photo-strip-panel {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 10px;
}

.document-photo-strip-panel > div:first-child {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.document-photo-strip-panel strong {
  color: var(--brand-navy);
}

.document-photo-strip-panel a {
  color: var(--brand-blue);
  font-size: 12px;
  font-weight: 800;
}

.document-photo-strip-small {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.document-photo-strip-small a {
  aspect-ratio: 4 / 3;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 7px;
  display: block;
  overflow: hidden;
}

.document-photo-strip-small img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.document-filter-bar {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 260px) auto;
}

.document-filter-bar span {
  color: var(--muted);
  font-size: 13px;
  padding-bottom: 10px;
}

.process-document-sidebar {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 12px;
  position: sticky;
  top: 82px;
}

.process-email-panel {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 0;
  overflow: hidden;
  scroll-margin-top: 150px;
}

.process-email-panel > summary {
  cursor: pointer;
  list-style: none;
}

.process-email-panel > summary::-webkit-details-marker {
  display: none;
}

.process-email-panel > summary::after {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  content: "+";
  display: inline-flex;
  flex: 0 0 auto;
  font-weight: 900;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.process-email-panel[open] > summary::after {
  content: "-";
}

.process-email-panel.detail {
  align-self: start;
  box-shadow: var(--shadow-soft);
}

.process-email-panel.target-detail {
  border-color: rgba(0, 58, 150, .14);
}

.process-email-panel.detail[open] .process-email-head {
  border-bottom: 1px solid var(--line);
}

.process-email-panel.detail .email-compose-form.compact {
  gap: 12px;
  padding: 14px;
}

.process-email-panel.detail .email-compose-form.compact textarea {
  min-height: 170px;
}

.process-email-panel:not([open]) .process-email-head {
  border-bottom: 0;
}

.process-email-head {
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 14px;
}

.process-email-head h2,
.process-email-head p {
  margin: 0;
}

.process-email-head h2 {
  color: var(--brand-navy);
  font-size: 18px;
}

.process-email-head p {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.process-email-body {
  display: grid;
  gap: 0;
}

.process-email-stats {
  border-bottom: 1px solid var(--line);
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 10px 14px;
}

.process-email-stats span {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  display: grid;
  gap: 2px;
  font-size: 11px;
  padding: 8px;
}

.process-email-stats strong {
  color: var(--brand-navy);
  font-size: 18px;
}

.email-compose-form.compact {
  display: grid;
  gap: 10px;
  padding: 12px;
}

.process-email-primary-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr;
}

.email-compose-form.compact label {
  min-width: 0;
}

.email-compose-form.compact textarea {
  min-height: 118px;
  resize: vertical;
}

.process-email-more {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.process-email-more summary {
  background: var(--surface-soft);
  color: var(--brand-navy);
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  list-style: none;
  padding: 8px 10px;
}

.process-email-more summary::-webkit-details-marker {
  display: none;
}

.process-email-extra {
  display: grid;
  gap: 10px;
  padding: 10px;
}

.email-attachment-picker.compact {
  padding: 10px;
}

.email-attachment-picker.compact .email-attachment-list {
  max-height: 190px;
}

.email-compose-form.compact .follow-up-options .form-grid {
  grid-template-columns: 1fr;
}

.process-document-head {
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding-bottom: 10px;
}

.process-document-head h2,
.process-document-head p {
  margin: 0;
}

.process-document-head .button {
  flex: 0 0 auto;
  min-height: 30px;
  padding: 7px 9px;
}

.process-document-overview {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.process-document-overview span {
  background: var(--surface-blue);
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 8px;
  color: var(--muted);
  display: grid;
  font-size: 11px;
  gap: 1px;
  padding: 7px;
}

.process-document-overview strong {
  color: var(--brand-navy);
  font-size: 17px;
}

.process-document-stats {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.process-document-stats div {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 9px;
}

.process-document-stats span,
.process-document-stats strong {
  overflow-wrap: anywhere;
}

.process-document-stats span {
  color: var(--muted);
  font-size: 12px;
}

.process-document-stats strong {
  color: var(--brand-navy);
  font-size: 20px;
}

.document-sidebar-folders {
  display: grid;
  gap: 6px;
}

.document-sidebar-folder {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: inherit;
  display: grid;
  gap: 7px;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  min-height: 38px;
  padding: 6px 7px;
  text-decoration: none;
}

.document-sidebar-folder:hover {
  border-color: rgba(25, 70, 130, 0.34);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
}

.document-sidebar-folder > span {
  align-items: center;
  background: var(--surface-soft);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-size: 10px;
  font-weight: 900;
  height: 23px;
  justify-content: center;
  width: 23px;
}

.document-sidebar-folder.done > span {
  background: #ecfdf5;
  color: #166534;
}

.document-sidebar-folder.missing > span {
  background: #fff7ed;
  color: #9a3412;
}

.document-sidebar-folder strong,
.document-sidebar-folder small {
  display: block;
  overflow-wrap: anywhere;
}

.document-sidebar-folder strong {
  color: var(--brand-navy);
  font-size: 12px;
}

.document-sidebar-folder small {
  color: var(--muted);
  font-size: 10px;
}

.document-sidebar-folder em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
}

.document-sidebar-missing {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 10px;
}

.document-sidebar-missing.attention {
  background: #fff7ed;
  border-color: rgba(234, 88, 12, 0.28);
}

.document-sidebar-missing.done {
  background: #ecfdf5;
  border-color: rgba(22, 101, 52, 0.22);
}

.document-sidebar-section-title {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.document-sidebar-section-title strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.document-sidebar-section-title span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.document-sidebar-missing p {
  color: var(--muted);
  font-size: 12px;
  margin: 0;
}

.document-sidebar-missing-list {
  display: grid;
  gap: 6px;
}

.document-sidebar-missing-list span {
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(234, 88, 12, 0.18);
  border-radius: 7px;
  color: var(--brand-navy);
  display: block;
  font-size: 12px;
  font-weight: 800;
  padding: 7px;
}

.document-sidebar-missing-list small {
  color: var(--muted);
  display: block;
  font-size: 11px;
  font-weight: 600;
  margin-top: 2px;
}

.document-sidebar-actions {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr;
}

.document-sidebar-actions .button {
  justify-content: center;
  min-width: 0;
  padding-left: 10px;
  padding-right: 10px;
}

.document-upload-details > #dokument-upload {
  display: block;
  scroll-margin-top: 96px;
}

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

.document-requirement {
  align-items: flex-start;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  grid-template-columns: 58px minmax(0, 1fr);
  padding: 9px;
}

.document-requirement > span {
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
  padding: 4px 6px;
  text-align: center;
}

.document-requirement.done > span {
  background: #ecfdf5;
  color: #166534;
}

.document-requirement.missing > span {
  background: #fff7ed;
  color: #9a3412;
}

.document-requirement.optional > span {
  background: var(--surface-soft);
  color: var(--muted);
}

.document-requirement strong,
.document-requirement small {
  display: block;
  overflow-wrap: anywhere;
}

.document-requirement strong {
  color: var(--brand-navy);
}

.document-requirement small {
  color: var(--muted);
  font-size: 12px;
}

.document-sidebar-attachments {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 7px;
  padding: 10px;
}

.document-sidebar-attachments strong {
  color: var(--brand-navy);
}

.document-sidebar-attachments span {
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.document-section {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

.document-section.clean {
  display: block;
}

.document-section.clean summary {
  background: var(--surface-blue);
  border-bottom: 1px solid transparent;
}

.document-section.clean[open] summary {
  border-bottom-color: var(--line);
}

.document-section > header {
  align-items: center;
  background: var(--surface-blue);
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  padding: 12px 14px;
}

.document-section h3 {
  color: var(--brand-navy);
  font-size: 16px;
  margin: 0;
}

.document-section header span {
  color: var(--muted);
  font-size: 12px;
}

.document-card-list {
  display: grid;
  gap: 10px;
  padding: 12px;
}

.document-card {
  align-items: start;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: 74px minmax(0, 1fr);
  padding: 10px;
}

.document-thumb {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--brand-blue);
  display: flex;
  font-size: 12px;
  font-weight: 900;
  height: 74px;
  justify-content: center;
  overflow: hidden;
  text-align: center;
  width: 74px;
}

.document-thumb img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.document-card-body {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.document-card-title strong,
.document-card-title span {
  display: block;
}

.document-card-title strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.document-card-title span,
.document-meta,
.document-card p {
  color: var(--muted);
  font-size: 12px;
}

.document-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.document-card p {
  margin: 0;
}

.document-card-footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

.document-card-footer > div:first-child {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.document-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.document-card-actions .button {
  padding: 7px 10px;
}

.document-list-table {
  display: grid;
}

.document-list-head,
.document-list-row {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 34px minmax(0, 1fr) 84px minmax(90px, auto) auto;
}

.document-list-head {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  padding: 9px 12px;
  text-transform: uppercase;
}

.document-list-head::before {
  content: "";
}

.document-list-head span:first-child {
  grid-column: auto;
}

.document-list-row {
  border-top: 1px solid var(--line);
  min-width: 0;
  padding: 9px 12px;
}

.document-list-row:hover,
.document-list-row.active {
  background: #ffffff;
}

.document-list-row.active {
  box-shadow: inset 4px 0 0 var(--brand-orange);
}

.document-list-icon {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 10px;
  font-weight: 900;
  height: 32px;
  justify-content: center;
  overflow: hidden;
  text-align: center;
  width: 32px;
}

.document-list-icon img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.document-list-main {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.document-list-main strong,
.document-list-main small,
.document-list-title-button {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.document-list-main strong,
.document-list-main a,
.document-list-title-button {
  color: var(--brand-navy);
}

.document-list-title-button {
  appearance: none;
  background: transparent;
  border: 0;
  cursor: pointer;
  font: inherit;
  font-weight: 800;
  line-height: 1.3;
  min-width: 0;
  padding: 0;
  text-align: left;
}

.document-list-title-button:hover,
.document-list-title-button:focus-visible {
  color: var(--brand-blue);
  outline: none;
  text-decoration: underline;
}

.damage-target-layout .document-list-main strong,
.damage-target-layout .document-list-main a {
  overflow: visible;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}

.document-list-main small,
.document-list-date {
  color: var(--muted);
  font-size: 12px;
}

.document-list-status {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.document-list-row .document-card-actions {
  justify-content: flex-end;
}

.document-list-row .document-card-actions .button {
  min-height: 30px;
  padding: 6px 9px;
}

.document-preview-layout .document-list-head,
.document-preview-layout .document-list-row {
  grid-template-columns: 34px minmax(0, 1fr) auto;
}

.document-preview-layout .document-list-head span:nth-of-type(2),
.document-preview-layout .document-list-head span:nth-of-type(3),
.document-preview-layout .document-list-date,
.document-preview-layout .document-list-status {
  display: none;
}

.toast {
  position: fixed;
  right: 22px;
  bottom: 22px;
  max-width: min(420px, calc(100vw - 44px));
  background: var(--brand-navy);
  color: white;
  padding: 14px 16px;
  border-radius: 8px;
  box-shadow: var(--shadow);
  z-index: 140;
}

.toast.has-chatagent {
  bottom: 24px;
  right: calc(24px + min(330px, calc(100vw - 32px)) + 16px);
}

.toast.has-open-chatagent {
  bottom: auto;
  right: 24px;
  top: 24px;
}

.empty-state {
  border: 1px dashed #b8c4d1;
  border-radius: 8px;
  padding: 24px;
  background: var(--surface-blue);
}

.empty-state.success,
.vehicle-check-panel.success {
  background: #f2fbf6;
  border-color: rgba(30, 125, 87, .35);
}

.empty-state.warning,
.vehicle-check-panel.warning {
  background: #fff8ef;
  border-color: rgba(255, 126, 9, .42);
}

.customer-rental-note {
  background: #f6fbf9;
  border-color: rgba(26, 116, 90, .38);
  margin: 10px 0 14px;
}

.customer-rental-note strong {
  color: #135943;
}

.vehicle-check-panel {
  margin-top: 14px;
  padding: 16px;
}

.claims-vehicle-picker {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
}

.claims-vehicle-picker input[type="search"] {
  background: #ffffff;
}

.claims-vehicle-picker input:disabled {
  cursor: not-allowed;
}

.claims-vehicle-autocomplete {
  display: block;
  position: relative;
}

.claims-vehicle-suggestions {
  position: absolute;
  z-index: 45;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  max-height: 340px;
  overflow-y: auto;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 16px 32px rgba(11, 39, 72, 0.18);
}

.claims-vehicle-suggestion {
  display: grid;
  width: 100%;
  gap: 3px;
  padding: 10px 12px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.claims-vehicle-suggestion + .claims-vehicle-suggestion {
  border-top: 1px solid var(--line);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.claims-vehicle-suggestion:hover,
.claims-vehicle-suggestion:focus-visible,
.claims-vehicle-suggestion.active {
  background: var(--surface-blue);
  outline: none;
}

.claims-vehicle-suggestion strong {
  color: var(--primary);
}

.claims-vehicle-suggestion span,
.claims-vehicle-suggestion small {
  overflow: hidden;
  color: var(--muted);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.claims-vehicle-suggestions-empty {
  padding: 12px;
  color: var(--muted);
  text-align: center;
}

.claims-vehicle-selection {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #9dc9b5;
  border-radius: 8px;
  background: #edf8f3;
}

.claims-vehicle-suggestions[hidden],
.claims-vehicle-selection[hidden] {
  display: none;
}

.claims-vehicle-selection strong {
  color: #135943;
}

.vehicle-identity-match-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.vehicle-identity-match-list > div {
  background: rgba(255, 255, 255, .78);
  border: 1px solid rgba(180, 35, 24, .18);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
}

.vehicle-identity-match-list span {
  color: var(--muted);
  font-size: 12px;
}

.damage-duplicate-warning {
  border-top: 1px solid rgba(255, 126, 9, .24);
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding-top: 12px;
}

.damage-duplicate-warning-copy {
  display: grid;
  gap: 3px;
}

.damage-duplicate-warning-copy strong {
  color: var(--brand-navy);
}

.damage-duplicate-warning-copy span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
}

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

.damage-duplicate-link {
  align-items: flex-start;
  background: #ffffff;
  border: 1px solid rgba(255, 126, 9, .26);
  border-radius: 8px;
  color: inherit;
  display: grid;
  gap: 10px;
  grid-template-columns: 54px minmax(0, 1fr);
  padding: 10px;
  text-decoration: none;
}

.damage-duplicate-link.high {
  border-color: rgba(180, 83, 9, .42);
}

.damage-duplicate-score {
  align-items: center;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 999px;
  color: #9a3412;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
  min-height: 30px;
  padding: 4px 6px;
}

.damage-duplicate-main {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.damage-duplicate-main strong {
  color: var(--brand-navy);
}

.damage-duplicate-main small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.damage-duplicate-reasons {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.vehicle-damage-notices {
  border-top: 1px solid rgba(255, 126, 9, .24);
  display: grid;
  gap: 16px;
  margin-top: 12px;
  padding-top: 12px;
  text-align: left;
}

.vehicle-damage-notice-group {
  display: grid;
  gap: 9px;
}

.vehicle-damage-notice-group + .vehicle-damage-notice-group {
  border-top: 1px solid rgba(20, 45, 82, .1);
  padding-top: 14px;
}

.vehicle-damage-notice-copy {
  display: grid;
  gap: 3px;
}

.vehicle-damage-notice-copy strong {
  color: var(--brand-navy);
}

.vehicle-damage-notice-copy span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
}

.vehicle-damage-notice-list {
  display: grid;
  gap: 8px;
}

.vehicle-damage-notice-card {
  align-items: center;
  background: #fff;
  border: 1px solid rgba(20, 45, 82, .16);
  border-radius: 10px;
  color: inherit;
  cursor: pointer;
  display: grid;
  font: inherit;
  gap: 10px;
  grid-template-columns: 108px minmax(0, 1fr) auto;
  padding: 11px 12px;
  text-align: left;
  width: 100%;
}

.vehicle-damage-notice-card:hover,
.vehicle-damage-notice-card:focus-visible {
  border-color: rgba(13, 83, 171, .5);
  box-shadow: 0 4px 14px rgba(20, 45, 82, .1);
  outline: none;
}

.vehicle-damage-notice-card.same-incident {
  border-color: rgba(180, 83, 9, .42);
}

.vehicle-damage-notice-kind {
  align-items: center;
  background: #eef5ff;
  border-radius: 999px;
  color: #0d53ab;
  display: inline-flex;
  font-size: 11px;
  font-weight: 800;
  justify-content: center;
  min-height: 30px;
  padding: 5px 9px;
}

.vehicle-damage-notice-card.same-incident .vehicle-damage-notice-kind {
  background: #fff3e7;
  color: #9a3412;
}

.vehicle-damage-notice-main {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.vehicle-damage-notice-main > strong {
  color: var(--brand-navy);
}

.vehicle-damage-notice-main > small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.vehicle-damage-notice-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.vehicle-damage-notice-chips .pill {
  font-size: 11px;
}

.vehicle-damage-notice-chips .pill.warning {
  background: #fff3e7;
  color: #9a3412;
}

.vehicle-damage-notice-chips .pill.success {
  background: #eaf8f0;
  color: #146c43;
}

.vehicle-damage-notice-chips .pill.attention {
  background: #fff8d9;
  color: #785b00;
}

.vehicle-damage-notice-cta {
  color: #0d53ab;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.vehicle-damage-preview {
  display: grid;
  gap: 16px;
}

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

.vehicle-damage-preview-facts > div {
  background: #f7f9fc;
  border: 1px solid var(--line);
  border-radius: 9px;
  display: grid;
  gap: 4px;
  padding: 11px 12px;
}

.vehicle-damage-preview-facts span,
.vehicle-damage-preview-section h3 {
  color: var(--muted);
  font-size: 12px;
}

.vehicle-damage-preview-alert {
  background: #fff8ef;
  border: 1px solid rgba(255, 126, 9, .32);
  border-radius: 9px;
  display: grid;
  gap: 4px;
  padding: 11px 12px;
}

.vehicle-damage-preview-alert.success {
  background: #f2fbf6;
  border-color: rgba(30, 125, 87, .3);
}

.vehicle-damage-preview-alert p,
.vehicle-damage-preview-alert span {
  margin: 0;
}

.vehicle-damage-preview-section {
  display: grid;
  gap: 8px;
}

.vehicle-damage-preview-section h3,
.vehicle-damage-preview-section p {
  margin: 0;
}

.vehicle-damage-preview-photos {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.vehicle-damage-preview-photos figure {
  display: grid;
  gap: 5px;
  margin: 0;
  min-width: 0;
}

.vehicle-damage-preview-photos a {
  aspect-ratio: 4 / 3;
  background: #eef2f7;
  border-radius: 8px;
  display: block;
  overflow: hidden;
}

.vehicle-damage-preview-photos img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.vehicle-damage-preview-photos figcaption {
  color: var(--muted);
  font-size: 11px;
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  .vehicle-damage-notice-card {
    align-items: flex-start;
    grid-template-columns: 1fr;
  }

  .vehicle-damage-notice-kind,
  .vehicle-damage-notice-cta {
    justify-self: start;
  }

  .vehicle-damage-preview-facts {
    grid-template-columns: 1fr;
  }

  .vehicle-damage-preview-photos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.api-test-result {
  margin-top: 14px;
}

.api-test-result.success {
  border-color: rgba(30, 125, 87, .35);
  background: #f2fbf6;
}

.api-test-result.warning {
  border-color: rgba(255, 126, 9, .38);
  background: #fff8ef;
}

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

.import-method-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 16px;
  padding: 18px;
}

.import-method-header {
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding-bottom: 14px;
}

.import-method-header p {
  margin: 6px 0 0;
}

.import-method-kicker {
  color: var(--brand-orange-dark);
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
}

.import-method-form {
  display: grid;
  gap: 14px;
}

.import-guide {
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.import-guide h4 {
  color: var(--brand-navy);
  margin: 0;
}

.import-guide ol {
  color: var(--muted);
  margin: 0;
  padding-left: 20px;
}

.import-guide li {
  margin: 4px 0;
}

.import-column-groups {
  display: grid;
  gap: 12px;
}

.import-jobs-section {
  margin-top: 18px;
}

.pill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.flag-grid,
.requirement-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.requirement-row {
  margin: 16px 0 0;
}

.damage-photo-overview {
  background: #f8fbff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  margin: 16px 0 0;
  padding: 12px;
}

.damage-photo-overview-header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.damage-photo-overview-header strong,
.damage-photo-overview-header span {
  display: block;
}

.damage-photo-overview-header span {
  color: var(--muted);
  font-size: 13px;
}

.damage-photo-strip {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fill, minmax(92px, 1fr));
}

.damage-photo-strip a {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: block;
  overflow: hidden;
}

.damage-photo-strip img {
  aspect-ratio: 4 / 3;
  display: block;
  object-fit: cover;
  width: 100%;
}

.vehicle-photo-strip {
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
}

.vehicle-photos-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.vehicle-photo-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.vehicle-photo-card > a[data-action="open-photo-preview"] {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: block;
  overflow: hidden;
}

.vehicle-photo-card .vehicle-photo-download {
  display: inline-flex;
  font-size: 12px;
  min-height: 32px;
  overflow: visible;
  padding: 7px 10px;
  width: 100%;
}

.workshop-registration-document-preview {
  align-items: center;
  background: linear-gradient(145deg, #f8fbff, #e8f1fc) !important;
  display: flex !important;
  flex-direction: column;
  gap: 8px;
  justify-content: center;
  min-height: 92px;
  padding: 10px;
  text-align: center;
  text-decoration: none;
}

.workshop-registration-document-preview-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
  width: 100%;
}

.workshop-registration-document-preview-copy strong,
.workshop-registration-document-preview-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workshop-registration-document-preview-copy strong {
  color: var(--brand-navy);
  font-size: 12px;
}

.workshop-registration-document-preview-copy small {
  color: var(--muted);
  font-size: 10px;
}

.workshop-registration-document-action {
  display: inline-flex;
  font-size: 12px;
  min-height: 32px;
  overflow: visible;
  padding: 7px 10px;
  width: 100%;
}

.vehicle-photo-zip-download {
  min-height: 34px;
  overflow: visible;
  white-space: normal;
}

.damage-type-panel.attention {
  border-color: rgba(255, 126, 9, .45);
  box-shadow: 0 10px 28px rgba(255, 126, 9, .10);
}

.related-damage-panel,
.deferral-panel,
.deferred-dashboard-panel {
  border-color: rgba(246, 135, 18, .32);
}

.clarification-dashboard-panel {
  border-color: rgba(180, 35, 24, .28);
}

.clarification-dashboard-list {
  display: grid;
  gap: 12px;
}

.clarification-case-card {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--red);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 14px;
}

.clarification-case-card header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.clarification-case-card h3 {
  font-size: 16px;
  margin: 6px 0 4px;
  overflow-wrap: anywhere;
}

.clarification-case-card small,
.clarification-case-facts span,
.clarification-issues span,
.clarification-dialog-summary span {
  color: var(--muted);
  font-size: 12px;
}

.clarification-issues {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.clarification-issues li {
  background: #fff8f6;
  border: 1px solid rgba(180, 35, 24, .16);
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
}

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

.clarification-case-facts div,
.clarification-dialog-summary {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
}

.clarification-case-facts strong,
.clarification-dialog-summary strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.clarification-match-list,
.import-review-list {
  display: grid;
  gap: 8px;
}

.clarification-match {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px 10px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 10px;
}

.clarification-match > div,
.import-review-list > div {
  display: grid;
  gap: 2px;
}

.clarification-match small {
  grid-column: 1 / -1;
}

.import-review-list {
  margin-top: 8px;
}

.import-review-list > div {
  background: #fff8ef;
  border: 1px solid rgba(255, 126, 9, .28);
  border-radius: 7px;
  padding: 8px;
}

.import-review-list span,
.import-review-list small {
  color: var(--muted);
  font-size: 12px;
}

.related-damage-list,
.deferred-dashboard-list {
  display: grid;
  gap: 10px;
}

.related-damage-link,
.deferred-dashboard-item,
.deferral-current {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 12px 14px;
  text-decoration: none;
}

.related-damage-link:hover {
  background: var(--surface-blue);
}

.related-damage-link span,
.related-damage-link small,
.deferred-dashboard-item span,
.deferred-dashboard-item small,
.deferral-current span,
.deferral-current small {
  color: var(--muted);
  font-size: 12px;
}

.related-damage-link strong,
.deferred-dashboard-item strong,
.deferral-current strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.deferred-dashboard-item {
  align-items: center;
  border-left: 4px solid var(--brand-orange);
  grid-template-columns: minmax(0, 1fr) auto;
}

.deferred-dashboard-item.missing {
  border-left-color: var(--red);
}

.deferred-dashboard-item.collect {
  border-left-color: var(--brand-blue);
}

.deferral-panel.paused {
  border-color: var(--line);
}

.deferral-panel.attention {
  border-color: rgba(246, 135, 18, .45);
  box-shadow: 0 10px 28px rgba(246, 135, 18, .10);
}

.deferral-panel > summary.panel-header {
  cursor: pointer;
  list-style: none;
  margin-bottom: 0;
}

.deferral-panel > summary.panel-header::-webkit-details-marker {
  display: none;
}

.deferral-panel > summary.panel-header::after {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--brand-navy);
  content: "+";
  display: inline-flex;
  flex: 0 0 auto;
  font-weight: 900;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.deferral-panel[open] > summary.panel-header {
  margin-bottom: 16px;
}

.deferral-panel[open] > summary.panel-header::after {
  content: "-";
}

.deferral-panel-body {
  display: grid;
  gap: 14px;
}

.deferral-current {
  align-items: center;
  background: var(--surface-soft);
  grid-template-columns: minmax(0, 1fr) auto;
}

.deferral-current.attention {
  background: #fff8ef;
  border-color: rgba(246, 135, 18, .38);
}

.deferral-current.paused {
  background: var(--surface-blue);
}

.manager-workshop-invoice-review {
  display: grid;
  gap: 10px;
  min-height: 0;
}

.manager-workshop-invoice-review-nav {
  display: flex;
  gap: 6px;
  overflow-x: auto;
}

.manager-workshop-invoice-review-nav button {
  background: #f1f5fa;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--brand-navy);
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  padding: 7px 10px;
  white-space: nowrap;
}

.manager-workshop-invoice-review-nav button.is-active {
  background: var(--brand-navy);
  border-color: var(--brand-navy);
  color: #ffffff;
}

.manager-workshop-invoice-review-context {
  background: linear-gradient(135deg, #eef6ff 0%, #ffffff 72%);
  border: 1px solid rgba(0, 73, 157, .18);
  border-left: 5px solid var(--brand-blue);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(250px, .65fr) minmax(0, 2.35fr);
  padding: 10px 12px;
}

.manager-workshop-invoice-review-context h3,
.manager-workshop-invoice-review-context p,
.manager-workshop-invoice-panel-head h3 {
  margin: 0;
}

.manager-workshop-invoice-review-context h3,
.manager-workshop-invoice-panel-head h3 {
  color: var(--brand-navy);
  font-size: 15px;
}

.manager-workshop-invoice-review-context p {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
  margin-top: 3px;
}

.manager-workshop-invoice-review-facts {
  display: grid;
  gap: 5px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.manager-workshop-invoice-review-facts > div {
  background: rgba(255, 255, 255, .92);
  border: 1px solid var(--line);
  border-radius: 7px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 5px 7px;
}

.manager-workshop-invoice-review-facts span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.manager-workshop-invoice-review-facts strong {
  color: var(--brand-navy);
  font-size: 11px;
  overflow-wrap: anywhere;
}

.manager-workshop-invoice-review-workspace {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(480px, 1.08fr) minmax(480px, .92fr);
  min-height: 560px;
}

.manager-workshop-invoice-review-document,
.manager-workshop-invoice-comparison,
.manager-workshop-invoice-evidence,
.manager-workshop-invoice-decision {
  background: #fbfdff;
  border: 1px solid rgba(28, 50, 74, .14);
  border-radius: 10px;
  min-width: 0;
}

.manager-workshop-invoice-review-document {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
  overflow: hidden;
  padding: 8px;
}

.manager-workshop-invoice-review-document > .manager-workshop-estimate-review-document {
  min-height: 0;
}

.manager-workshop-invoice-review-document .workshop-estimate-pdf-preview {
  height: 100%;
}

.manager-workshop-invoice-review-details {
  display: grid;
  gap: 10px;
  min-height: 0;
  overflow: auto;
  padding-right: 2px;
}

.manager-workshop-invoice-comparison,
.manager-workshop-invoice-evidence,
.manager-workshop-invoice-decision {
  display: grid;
  gap: 9px;
  padding: 10px;
}

.manager-workshop-invoice-panel-head {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.manager-workshop-invoice-panel-head > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.manager-workshop-invoice-comparison .workshop-invoice-comparison {
  gap: 8px;
}

.manager-workshop-invoice-evidence ul {
  display: grid;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.manager-workshop-invoice-evidence li {
  align-items: center;
  background: #f3fbf6;
  border: 1px solid rgba(23, 114, 69, .18);
  border-radius: 7px;
  display: grid;
  gap: 8px;
  grid-template-columns: 22px minmax(0, 1fr);
  padding: 7px 9px;
}

.manager-workshop-invoice-evidence li > span {
  align-items: center;
  background: var(--green);
  border-radius: 50%;
  color: #ffffff;
  display: flex;
  font-size: 11px;
  font-weight: 900;
  height: 20px;
  justify-content: center;
  width: 20px;
}

.manager-workshop-invoice-evidence li > div,
.manager-workshop-invoice-checklist label > span,
.manager-workshop-invoice-decision-options label > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.manager-workshop-invoice-evidence small,
.manager-workshop-invoice-checklist small,
.manager-workshop-invoice-decision-options small {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.3;
}

.manager-workshop-invoice-checklist,
.manager-workshop-invoice-decision-options {
  border: 0;
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
}

.manager-workshop-invoice-checklist legend,
.manager-workshop-invoice-decision-options legend {
  color: var(--brand-navy);
  font-size: 11px;
  font-weight: 850;
  margin-bottom: 5px;
}

.manager-workshop-invoice-checklist label,
.manager-workshop-invoice-decision-options label {
  align-items: start;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 7px;
  cursor: pointer;
  display: grid;
  gap: 8px;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 8px 9px;
}

.manager-workshop-invoice-checklist input,
.manager-workshop-invoice-decision-options input {
  accent-color: var(--brand-blue);
  margin: 2px 0 0;
}

.manager-workshop-invoice-decision-options {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.manager-workshop-invoice-decision-options label.is-approve:has(input:checked) {
  background: #f3fbf6;
  border-color: rgba(23, 114, 69, .48);
}

.manager-workshop-invoice-decision-options label.is-reject:has(input:checked) {
  background: #fff3f3;
  border-color: rgba(177, 37, 37, .42);
}

.manager-workshop-invoice-review-note {
  color: var(--brand-navy);
  font-size: 11px;
  font-weight: 800;
}

.manager-workshop-invoice-review-note textarea {
  font-weight: 500;
  min-height: 62px;
}

.modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 29, 75, .48);
  display: grid;
  place-items: center;
  padding: 22px;
  z-index: 120;
}

.modal-backdrop-stacked {
  background: rgba(0, 29, 75, .58);
  z-index: 140;
}

.expert-imported-reports { display: grid; gap: 12px; }
.expert-imported-reports > h3 { margin: 0; color: var(--brand-navy); }
.expert-imported-report, .expert-assignment-data { border: 1px solid var(--line); border-radius: 8px; min-width: 0; }
.expert-imported-report > summary, .expert-assignment-data > summary { padding: 12px 14px; cursor: pointer; color: var(--brand-navy); font-weight: 700; overflow-wrap: anywhere; }
.expert-imported-report > summary small { margin-left: 12px; color: var(--muted); font-weight: 400; }
.expert-imported-report[open] > summary, .expert-assignment-data[open] > summary { border-bottom: 1px solid var(--line); }
.expert-imported-report-content { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 18px; padding: 14px; }
.expert-imported-report-content > div { min-width: 0; }
.expert-imported-report-file .document-preview-actions { margin-bottom: 10px; }
.expert-imported-report-file .document-preview-frame { width: 100%; height: 520px; min-height: 0; border: 1px solid var(--line); border-radius: 6px; }
.expert-imported-report-file .document-preview-stage.image { max-height: 520px; overflow: auto; }
.expert-imported-report-values h4 { margin: 0 0 8px; }
.expert-imported-report-values > p { font-size: 12px; margin: 0 0 14px; }
.expert-imported-report-values .empty-state.expert-report-summary { text-align: left; margin: 0; padding: 0; border: 0; background: transparent; }
.expert-imported-report-values .expert-report-summary > strong { display: none; }
.expert-imported-report-values .grid.four { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; }
.expert-imported-report-values .grid > div { min-width: 0; overflow-wrap: anywhere; }
.expert-imported-report-values .grid p { margin: 4px 0 0; color: var(--brand-navy); }
.expert-assignment-data { margin-top: 16px; }
.expert-assignment-data > form { padding: 14px; }
.modal:has(.expert-assignment-dialog) > header { gap: 12px; align-items: flex-start; }
.modal:has(.expert-assignment-dialog) > header > div { min-width: 0; }
.modal:has(.expert-assignment-dialog) > header > button { flex: 0 0 40px; }
@media (max-width: 760px) {
  .modal-backdrop:has(.expert-assignment-dialog) { padding: 10px; }
  .modal:has(.expert-assignment-dialog) { padding: 14px; max-height: calc(100dvh - 20px); }
  .modal:has(.expert-assignment-dialog) > header h2 { font-size: 18px; overflow-wrap: anywhere; }
  .expert-imported-report-content { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 10px; }
  .expert-imported-report-file .document-preview-frame { height: 360px; }
  .expert-imported-report-values { grid-row: 1; }
  .expert-imported-report-values .grid.four { gap: 10px; }
  .expert-imported-report > summary small { display: block; margin: 6px 0 0; }
}

.modal {
  width: min(1180px, 100%);
  max-height: calc(100vh - 44px);
  overflow: auto;
  background: white;
  border-radius: 8px;
  padding: 22px;
  box-shadow: var(--shadow);
}

.modal:has([data-workshop-supplement-dialog]) {
  width: min(1500px, 100%);
}

.modal:has([data-form="user-credentials-email"]) {
  width: min(680px, 100%);
  padding: 18px;
}

.modal:has([data-form="user-credentials-email"]) > header h2 {
  margin: 0 0 8px;
}

[data-form="user-credentials-email"] .form-grid {
  gap: 12px;
}

[data-form="user-credentials-email"] .fine {
  margin: 0;
}

[data-credentials-mail-status]:empty {
  display: none;
}

.modal:has([data-workshop-order-create-modal]) {
  width: min(1380px, calc(100vw - 44px));
  padding: 16px 18px 18px;
}

.modal:has([data-workshop-order-create-modal]) > .workshop-order-create-modal-head {
  align-items: center;
  border-bottom: 1px solid var(--line);
  margin: 0 -2px 12px;
  padding: 0 2px 12px;
}

.workshop-order-create-modal-head h2 {
  color: var(--brand-navy);
  margin: 2px 0 3px;
}

.workshop-order-create-modal-context {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.workshop-order-create-modal-context span {
  background: #f5f8fd;
  border: 1px solid var(--line);
  border-radius: 7px;
  display: grid;
  gap: 2px;
  padding: 8px 10px;
}

.workshop-order-create-modal-context small {
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.workshop-order-create-modal-context strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.workshop-order-create-modal-body > .panel {
  border: 0;
  box-shadow: none;
  margin: 0;
  padding: 0;
}

.workshop-order-create-modal-body > .panel > .panel-header {
  margin-bottom: 10px;
}

@media (min-width: 981px) and (min-height: 720px) {
  .modal:has([data-workshop-order-create-modal]) {
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    max-height: calc(100vh - 32px);
    overflow: hidden;
  }

  .workshop-order-create-modal-body {
    min-height: 0;
    overflow: auto;
    padding-right: 4px;
  }
}

@media (max-width: 720px) {
  .modal-backdrop:has([data-workshop-order-create-modal]) {
    padding: 8px;
  }

  .modal:has([data-workshop-order-create-modal]) {
    width: calc(100vw - 16px);
  }

  .workshop-order-create-modal-context {
    grid-template-columns: 1fr;
  }
}

.modal:has([data-manager-workshop-invoice-review]) {
  padding: 10px 12px;
  width: min(1500px, calc(100vw - 36px));
  max-width: 100%;
}

.modal:has([data-manager-workshop-invoice-review]) > header {
  align-items: center;
  margin-bottom: 7px;
}

.modal:has([data-manager-workshop-invoice-review]) > header h2 {
  font-size: 20px;
  line-height: 1.15;
  margin: 0;
}

.modal:has(form[data-form="manager-workshop-estimate-approve"]),
.modal:has([data-manager-workshop-estimate-review]) {
  width: min(1500px, calc(100vw - 36px));
}

.modal:has(form[data-form="manager-workshop-estimate-approve"]),
.modal:has([data-manager-workshop-estimate-review]) {
  padding: 16px;
}

.modal:has(form[data-form="manager-workshop-estimate-approve"]) > header,
.modal:has([data-manager-workshop-estimate-review]) > header {
  align-items: center;
  margin-bottom: 10px;
}

.modal:has([data-manager-workshop-estimate-review]) {
  padding: 10px 12px;
}

.modal:has([data-manager-workshop-estimate-review]) > header {
  margin-bottom: 6px;
}

.modal:has([data-manager-workshop-estimate-review]) > header h2 {
  font-size: 20px;
  line-height: 1.15;
  margin: 0;
}

.modal:has([data-manager-workshop-estimate-review]) > header .icon-button {
  min-height: 34px;
  width: 34px;
}

@media (min-width: 1081px) and (min-height: 800px) {
  .modal:has([data-manager-workshop-estimate-review]) {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    height: calc(100vh - 24px);
    max-height: calc(100vh - 24px);
    overflow: hidden;
  }

  .modal:has([data-manager-workshop-estimate-review]) > .manager-workshop-estimate-review {
    grid-template-rows: auto minmax(0, 1fr) auto;
    height: 100%;
    overflow: hidden;
  }

  .modal:has([data-manager-workshop-estimate-review]) > .manager-estimate-decision-reopen {
    display: block;
    overflow: auto;
  }

  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-review-workspace {
    min-height: 0;
  }

  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision.is-reduced {
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    grid-template-rows: auto;
  }

  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision.is-reduced > .case-focus-kicker,
  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision.is-reduced > h4,
  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision.is-reduced > p {
    grid-column: 1 / -1;
  }

  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision.is-reduced > .is-amount,
  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision.is-reduced > .is-note {
    grid-column: 1;
  }

  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision.is-reduced > .is-reason,
  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision.is-reduced > .button {
    grid-column: 2;
  }

  .modal:has([data-manager-workshop-invoice-review]) {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    height: calc(100vh - 24px);
    max-height: calc(100vh - 24px);
    overflow: hidden;
  }

  .modal:has([data-manager-workshop-invoice-review]) > .manager-workshop-invoice-review {
    grid-template-rows: auto auto minmax(0, 1fr);
    height: 100%;
    overflow: hidden;
  }

  .modal:has([data-manager-workshop-invoice-review]) > .manager-workshop-invoice-review:not(:has(.manager-workshop-invoice-review-nav)) {
    grid-template-rows: auto minmax(0, 1fr);
  }

  .modal:has([data-manager-workshop-invoice-review]) .manager-workshop-invoice-review-workspace {
    min-height: 0;
  }
}

@media (min-width: 1081px) and (min-height: 800px) and (max-height: 950px) {
  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision > p {
    display: none;
  }

  .modal:has([data-manager-workshop-estimate-review]) .manager-workshop-estimate-decision textarea {
    min-height: 32px;
  }
}

.modal header {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 14px;
}

@media (max-width: 1080px) {
  .manager-workshop-invoice-review-context,
  .manager-workshop-invoice-review-workspace {
    grid-template-columns: 1fr;
  }

  .manager-workshop-invoice-review-workspace {
    min-height: 0;
  }

  .manager-workshop-invoice-review-document {
    min-height: 620px;
  }

  .manager-workshop-invoice-review-details {
    overflow: visible;
  }
}

@media (max-width: 720px) {
  .modal-backdrop:has([data-manager-workshop-invoice-review]) {
    padding: 8px;
  }

  .modal:has([data-manager-workshop-invoice-review]) {
    padding: 10px;
    width: calc(100vw - 16px);
  }

  .manager-workshop-invoice-review-facts,
  .manager-workshop-invoice-decision-options {
    grid-template-columns: 1fr;
  }

  .manager-workshop-invoice-review-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .manager-workshop-invoice-review-document {
    min-height: 520px;
  }

  .manager-workshop-invoice-panel-head {
    align-items: flex-start;
    flex-direction: column;
  }
}

.modal:has(.customer-onboarding-form) {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  max-height: calc(100vh - 32px);
  overflow: hidden;
  padding: 0;
  width: min(1400px, calc(100vw - 36px));
}

.modal:has(.customer-onboarding-form) > header {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border-bottom: 1px solid rgba(0, 48, 120, .1);
  margin: 0;
  padding: 18px 28px 14px;
}

.modal:has(.customer-onboarding-form) > header h2 {
  margin: 0;
}

.modal:has(.customer-onboarding-form) > header p {
  margin: 6px 0 0;
}

.customer-onboarding-form {
  gap: 0;
  grid-template-rows: auto minmax(0, 1fr) auto;
  min-height: 0;
  overflow: hidden;
  padding: 0 22px;
}

.customer-onboarding-layout,
.customer-onboarding-side {
  scrollbar-color: rgba(0, 48, 120, .28) transparent;
  scrollbar-width: thin;
}

.customer-onboarding-layout::-webkit-scrollbar,
.customer-onboarding-side::-webkit-scrollbar {
  width: 8px;
}

.customer-onboarding-layout::-webkit-scrollbar-thumb,
.customer-onboarding-side::-webkit-scrollbar-thumb {
  background: rgba(0, 48, 120, .24);
  border-radius: 999px;
}

.customer-onboarding-layout::-webkit-scrollbar-track,
.customer-onboarding-side::-webkit-scrollbar-track {
  background: transparent;
}

.customer-stepper {
  --customer-step-count: 10;
  --customer-stepper-progress: 0%;
  --customer-stepper-gap: 7px;
  --customer-stepper-gap-half: 3.5px;
  align-items: start;
  background: rgba(255, 255, 255, .98);
  border-bottom: 1px solid rgba(0, 48, 120, .12);
  box-shadow: 0 8px 18px rgba(0, 48, 120, .06);
  display: grid;
  gap: var(--customer-stepper-gap);
  grid-template-columns: repeat(var(--customer-step-count), minmax(0, 1fr));
  isolation: isolate;
  margin: 0 -22px 14px;
  padding: 10px 22px 12px;
  position: sticky;
  top: 0;
  z-index: 8;
}

.customer-stepper::before,
.customer-stepper::after {
  bottom: 0;
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  z-index: 0;
}

.customer-stepper::before {
  background: rgba(0, 48, 120, .08);
}

.customer-stepper::after {
  background: linear-gradient(90deg, var(--brand-blue), #21a67a);
  right: auto;
  transition: width .18s ease;
  width: var(--customer-stepper-progress);
}

.customer-step {
  align-items: center;
  appearance: none;
  background: transparent;
  border: 0;
  color: var(--muted);
  cursor: pointer;
  display: grid;
  font: inherit;
  gap: 6px;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: 26px minmax(15px, auto);
  justify-items: center;
  min-height: 46px;
  min-width: 0;
  padding: 0 2px;
  position: relative;
  text-align: center;
  z-index: 1;
}

.customer-step::after {
  background: var(--line);
  content: "";
  height: 1px;
  left: calc(50% + 16px);
  position: absolute;
  right: calc(-50% - var(--customer-stepper-gap-half) + 16px);
  top: 13px;
  z-index: 0;
}

.customer-step:last-child::after {
  display: none;
}

.customer-step span {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  display: inline-flex;
  height: 26px;
  justify-content: center;
  position: relative;
  width: 26px;
  z-index: 1;
}

.customer-step strong {
  display: block;
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.25;
  max-width: 100%;
  overflow-wrap: normal;
  position: relative;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-break: normal;
  z-index: 1;
}

.customer-step.done::after {
  background: var(--brand-blue);
}

.customer-step.done span {
  background: var(--surface-blue);
  border-color: rgba(0, 74, 173, .34);
  color: var(--brand-blue);
}

.customer-step:hover span,
.customer-step:focus-visible span {
  border-color: var(--brand-blue);
}

.customer-step:focus-visible {
  border-radius: 8px;
  outline: 2px solid rgba(0, 74, 173, .28);
  outline-offset: 3px;
}

.customer-step.active span {
  background: var(--brand-blue);
  border-color: var(--brand-blue);
  box-shadow: 0 6px 16px rgba(0, 74, 173, .22);
  color: #fff;
}

.customer-step.active strong {
  color: var(--brand-blue);
}

.customer-activation-section {
  scroll-margin-top: 104px;
}

.customer-onboarding-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 340px);
  min-height: 0;
  overflow: auto;
  padding-bottom: 16px;
}

.customer-onboarding-main {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.customer-section {
  background: #ffffff;
  border: 1px solid rgba(0, 48, 120, .12);
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(0, 29, 75, .035);
  overflow: hidden;
  padding: 0;
  scroll-margin-top: 104px;
}

.customer-section legend {
  background: #ffffff;
  border-bottom: 1px solid rgba(0, 48, 120, .08);
  color: var(--brand-navy);
  float: left;
  font-weight: 800;
  margin: 0;
  padding: 13px 16px;
  width: 100%;
}

.customer-section-collapsible legend {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  width: 100%;
}

.customer-section-toggle {
  align-items: center;
  appearance: none;
  background: #ffffff;
  border: 1px solid rgba(0, 74, 173, .18);
  border-radius: 999px;
  color: var(--brand-blue);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  font: inherit;
  font-size: 15px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  line-height: 1;
  padding: 0;
  transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, color .16s ease;
  width: 28px;
}

.customer-section-toggle:hover,
.customer-section-toggle:focus-visible {
  background: #ffffff;
  border-color: rgba(0, 74, 173, .34);
  box-shadow: 0 0 0 3px rgba(0, 74, 173, .12);
  outline: 0;
}

.customer-section.collapsed {
  padding-bottom: 0;
}

.customer-section-body {
  clear: both;
  display: grid;
  gap: 14px;
  margin-top: 0;
  max-height: 5000px;
  opacity: 1;
  overflow: hidden;
  padding: 16px;
  transition: max-height .22s ease, opacity .18s ease, margin-top .18s ease;
}

.customer-section.collapsed .customer-section-body {
  margin-top: 0;
  max-height: 0;
  opacity: 0;
  padding-bottom: 0;
  padding-top: 0;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .customer-section-toggle,
  .customer-section-body {
    transition: none;
  }
}

.customer-address-row {
  display: grid;
  gap: 14px;
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}

.customer-address-row label {
  min-width: 0;
}

.customer-company-group-picker {
  display: grid;
  gap: 10px;
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 1fr);
}

.customer-company-group-picker label {
  min-width: 0;
}

.customer-rule-note {
  align-items: start;
  background: #fff7e8;
  border: 1px solid rgba(246, 135, 18, .24);
  border-radius: 8px;
  color: var(--brand-charcoal);
  display: grid;
  gap: 6px;
  grid-template-columns: 1fr;
  padding: 12px 14px;
}

.customer-rule-note strong {
  color: var(--brand-blue);
}

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

.customer-document-grid,
.customer-email-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 12px;
}

.customer-document-grid label,
.customer-email-grid label {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
}

.customer-power-document {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-soft);
}

.customer-document-grid .customer-power-document label {
  padding: 0;
  border: 0;
  background: transparent;
}

.customer-power-document .check-row {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.customer-document-grid { align-items: start; }
.customer-power-document .check-row input { flex: 0 0 auto; }
.customer-power-document button { margin-top: auto; white-space: normal; }
.customer-power-document .code-link { overflow-wrap: anywhere; }

.customer-document-grid input[type="file"] {
  min-height: auto;
  padding: 8px;
}

.customer-metric-grid div {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 12px;
}

.customer-system-field {
  background: #f8fbff;
  border: 1px solid rgba(0, 74, 173, .16);
  border-radius: 8px;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px 12px;
}

.customer-system-field span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}

.customer-system-field strong {
  color: var(--brand-navy);
  font-size: 14px;
  overflow-wrap: anywhere;
}

.customer-fleet-source-picker {
  background: #f8fbff;
  border: 1px solid rgba(0, 74, 173, .14);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.customer-fleet-source-picker .customer-reporting-option-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.customer-mobility-grid {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(240px, .78fr) minmax(360px, 1.22fr);
  min-width: 0;
}

.customer-transport-grid {
  grid-template-columns: minmax(0, 390px);
}

.customer-rental-note-card,
.customer-rental-classes-card {
  background: #f8fbff;
  border: 1px solid rgba(0, 74, 173, .14);
  border-radius: 8px;
  min-width: 0;
  padding: 12px;
}

.customer-rental-note-card {
  align-self: stretch;
  margin: 0;
}

.customer-rental-note-card textarea {
  font-weight: 500;
  line-height: 1.45;
  min-height: 142px;
  resize: vertical;
}

.customer-rental-note-card textarea::placeholder {
  color: rgba(66, 82, 110, .7);
  font-weight: 500;
}

.customer-rental-classes-card {
  gap: 10px;
}

.customer-rental-classes-card > span {
  color: var(--brand-navy);
  font-size: 13px;
  font-weight: 800;
}

.customer-rental-section .rental-rule-table {
  background: transparent;
  border: 0;
  border-radius: 0;
  display: grid;
  gap: 8px;
  max-height: min(380px, 46vh);
  overflow: auto;
  padding-right: 2px;
}

.customer-rental-section .rental-rule-head,
.customer-rental-section .rental-rule-row {
  gap: 8px;
  grid-template-columns: minmax(170px, 1fr) minmax(78px, 94px) minmax(104px, 118px);
}

.customer-rental-section .rental-rule-head {
  background: transparent;
  color: var(--muted);
  padding: 0 4px;
  text-transform: none;
}

.customer-rental-section .rental-rule-row {
  background: #ffffff;
  border: 1px solid rgba(0, 48, 120, .1);
  border-radius: 8px;
  padding: 10px;
}

.customer-rental-section .rental-rule-row:first-of-type {
  border-top: 1px solid rgba(0, 48, 120, .1);
}

.customer-rental-section .rental-rule-row > div {
  min-width: 0;
}

.customer-rental-section .rental-rule-row strong {
  color: var(--brand-navy);
}

.customer-rental-section .rental-rule-row select {
  min-height: 34px;
  padding: 7px 8px;
}

.customer-metric-grid span,
.customer-summary-panel dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}

.customer-metric-grid strong {
  color: var(--brand-navy);
  font-size: 18px;
  overflow-wrap: anywhere;
}

.customer-reporting-designer {
  display: grid;
  gap: 14px;
  margin-top: 14px;
}

.customer-reporting-designer section {
  background: #f8fbff;
  border: 1px solid rgba(0, 74, 173, .14);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 14px;
}

.customer-reporting-designer h4 {
  color: var(--brand-navy);
  font-size: 14px;
  margin: 0;
}

.customer-reporting-option-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.customer-reporting-option {
  align-items: flex-start;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
  padding: 10px;
}

.customer-reporting-option:has(input:checked) {
  border-color: rgba(0, 74, 173, .52);
  box-shadow: inset 0 0 0 1px rgba(0, 74, 173, .18);
}

.customer-reporting-option input {
  margin-top: 2px;
}

.customer-reporting-option strong,
.customer-reporting-option small {
  display: block;
}

.customer-reporting-option small,
.customer-reporting-subtitle {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.customer-reporting-split {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.customer-reporting-split > div {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.customer-reporting-module-matrix {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.customer-reporting-module-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.customer-reporting-module-card.active {
  background: #f8fbff;
  border-color: rgba(0, 70, 150, .24);
}

.customer-reporting-module-head {
  align-items: flex-start;
  display: grid;
  gap: 9px;
  grid-template-columns: auto minmax(0, 1fr);
  margin: 0;
}

.customer-reporting-module-head input {
  margin-top: 3px;
  width: auto;
}

.customer-reporting-module-head strong,
.customer-reporting-module-head small {
  display: block;
}

.customer-reporting-module-head small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.customer-reporting-module-controls {
  border-top: 1px solid rgba(15, 23, 42, .08);
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) 180px;
  padding-top: 10px;
}

.customer-reporting-module-controls label {
  margin: 0;
}

.customer-reporting-module-recipients {
  grid-column: 1 / -1;
}

.customer-reporting-format-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.customer-reporting-format-row label {
  align-items: center;
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 999px;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 5px;
  padding: 5px 8px;
}

.customer-reporting-format-row input {
  margin: 0;
  width: auto;
}

.customer-reporting-manual-box {
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
}

.customer-reporting-manual-box p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
  margin: 4px 0 10px;
}

.customer-reporting-preview {
  display: grid;
  gap: 18px;
}

.customer-reporting-preview h3 {
  color: var(--brand-navy);
  font-size: 15px;
  margin: 0 0 10px;
}

.customer-reporting-preview-metrics {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.customer-reporting-preview-metrics div,
.customer-reporting-preview-modules article,
.customer-reporting-preview-bundles article {
  background: #f8fbff;
  border: 1px solid rgba(0, 48, 120, .12);
  border-radius: 8px;
  min-width: 0;
  padding: 12px;
}

.customer-reporting-preview-metrics span,
.customer-reporting-preview-modules span,
.customer-reporting-preview-modules small,
.customer-reporting-preview-bundles span {
  color: var(--muted);
  display: block;
  font-size: 12px;
  line-height: 1.35;
}

.customer-reporting-preview-metrics strong {
  color: var(--brand-navy);
  display: block;
  font-size: 20px;
  margin-top: 4px;
}

.customer-reporting-preview-modules,
.customer-reporting-preview-bundles {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.customer-reporting-preview-modules article,
.customer-reporting-preview-bundles article {
  display: grid;
  gap: 8px;
}

.customer-reporting-preview-bundles article {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) auto;
}

.customer-onboarding-side {
  display: grid;
  gap: 14px;
  max-height: min(640px, calc(100vh - 246px));
  min-width: 0;
  overflow: auto;
  padding-right: 2px;
  position: sticky;
  top: 98px;
}

.customer-summary-panel,
.customer-config-panel {
  background: var(--surface);
  border: 1px solid rgba(0, 48, 120, .12);
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(0, 29, 75, .035);
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 16px;
}

.customer-summary-panel {
  border-left: 3px solid rgba(0, 74, 173, .32);
}

.customer-summary-panel h3 {
  color: var(--brand-navy);
  font-size: 15px;
  margin: 0;
}

.customer-summary-panel dl {
  display: grid;
  gap: 10px;
  margin: 0;
}

.customer-summary-panel dl div {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
  min-height: 24px;
}

.customer-summary-panel dd {
  margin: 0;
  max-width: 180px;
  overflow-wrap: anywhere;
  text-align: right;
}

.customer-hints {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 18px;
}

.customer-activation-state {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 13px 14px;
}

.customer-activation-state.ready {
  background: linear-gradient(135deg, #ecfdf3 0%, #f8fffb 100%);
  border-color: rgba(23, 114, 69, .24);
}

.customer-activation-state.blocked {
  background: linear-gradient(135deg, #fff7e8 0%, #fffdf7 100%);
  border-color: rgba(246, 135, 18, .24);
}

.customer-activation-heading {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.customer-activation-heading > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: uppercase;
}

.customer-activation-state strong {
  color: var(--brand-navy);
}

.customer-activation-score {
  align-items: flex-end;
  display: grid;
  gap: 2px;
  justify-items: end;
}

.customer-activation-score strong {
  font-size: 24px;
  line-height: 1;
}

.customer-activation-score span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}

.customer-activation-progress {
  background: rgba(15, 23, 42, .08);
  border-radius: 999px;
  grid-column: 1 / -1;
  height: 10px;
  overflow: hidden;
}

.customer-activation-progress span {
  background: linear-gradient(90deg, #f59e0b 0%, #16a34a 100%);
  border-radius: inherit;
  display: block;
  height: 100%;
  transition: width .18s ease;
  width: var(--customer-activation-progress, 0%);
}

.customer-activation-state.ready .customer-activation-progress span {
  background: linear-gradient(90deg, #16a34a 0%, #047857 100%);
}

.customer-activation-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  grid-column: 1 / -1;
}

.customer-activation-meta span {
  align-items: center;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-size: 12px;
  font-weight: 750;
  gap: 6px;
  padding: 5px 9px;
}

.customer-activation-meta strong {
  color: var(--brand-navy);
}

.customer-activation-list {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.customer-activation-item {
  align-items: center;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 50px;
  padding: 8px 9px;
}

.customer-activation-item.done {
  background: #f7fef9;
  border-color: rgba(22, 163, 74, .18);
}

.customer-activation-item.open {
  background: #fffaf0;
  border-color: rgba(245, 158, 11, .22);
}

.customer-activation-icon {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.customer-activation-item.done .customer-activation-icon {
  background: #dcfce7;
  color: #047857;
}

.customer-activation-item.open .customer-activation-icon {
  background: #ffedd5;
  color: #c2410c;
}

.customer-activation-item-body {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.customer-activation-item-label {
  color: var(--text);
  font-weight: 750;
  line-height: 1.25;
}

.customer-activation-item-state {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.customer-activation-approval {
  align-items: center;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 8px;
  padding: 12px;
}

.customer-activation-approval span {
  display: grid;
  gap: 2px;
}

.customer-activation-approval strong {
  color: var(--brand-navy);
}

.customer-activation-side-section .customer-section-body {
  gap: 12px;
}

.customer-activation-side-section .customer-activation-state,
.customer-activation-side-section .customer-activation-list {
  grid-template-columns: minmax(0, 1fr);
}

.customer-activation-side-section .customer-activation-score {
  justify-items: start;
}

.customer-activation-side-section .customer-activation-item {
  min-height: 0;
}

@media (max-width: 760px) {
  .customer-activation-state {
    grid-template-columns: minmax(0, 1fr);
  }

  .customer-activation-score {
    justify-items: start;
  }

  .customer-activation-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1180px) {
  .customer-stepper {
    align-items: stretch;
    display: flex;
    overflow-x: auto;
    padding-bottom: 12px;
  }

  .customer-step {
    flex: 0 0 142px;
  }

  .customer-step::after {
    right: -22px;
  }
}

.customer-config-panel summary {
  color: var(--brand-navy);
  cursor: pointer;
  font-weight: 800;
}

.customer-config-panel label,
.customer-summary-panel label {
  min-width: 0;
}

.customer-config-panel .form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.customer-config-panel .rental-rule-head {
  display: none;
}

.customer-config-panel .rental-rule-row {
  grid-template-columns: 1fr;
}

.customer-form-actions {
  background: rgba(255, 255, 255, .96);
  border-top: 1px solid var(--line);
  box-shadow: 0 -10px 24px rgba(0, 29, 75, .06);
  margin: 0 -22px;
  padding: 12px 22px;
  position: relative;
  z-index: 7;
}

.customer-form-actions .button {
  min-height: 36px;
  padding: 9px 14px;
}

@media (max-width: 980px) {
  .customer-stepper,
  .customer-onboarding-layout,
  .customer-metric-grid,
  .customer-document-grid,
  .customer-email-grid,
  .customer-address-row,
  .customer-reporting-split,
  .customer-reporting-module-matrix,
  .customer-reporting-preview-metrics,
  .customer-reporting-preview-modules,
  .customer-reporting-preview-bundles {
    grid-template-columns: 1fr;
  }

  .customer-reporting-option-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .customer-stepper {
    align-items: stretch;
    display: flex;
    overflow-x: auto;
    padding-bottom: 12px;
  }

  .customer-step {
    flex: 0 0 142px;
  }

  .customer-step::after {
    right: -22px;
  }

  .customer-mobility-grid {
    grid-template-columns: 1fr;
  }

  .customer-onboarding-side {
    max-height: none;
    overflow: visible;
    padding-right: 0;
    position: static;
  }
}

@media (max-width: 640px) {
  .modal:has(.customer-onboarding-form) {
    max-height: calc(100vh - 16px);
    width: min(100%, calc(100vw - 16px));
  }

  .modal:has(.customer-onboarding-form) > header {
    padding: 18px 18px 14px;
  }

  .customer-onboarding-form {
    padding: 0 14px;
  }

  .customer-stepper {
    margin: 0 -14px 12px;
    padding-left: 14px;
    padding-right: 14px;
  }

  .customer-rule-note,
  .customer-summary-panel dl div,
  .customer-config-panel .form-grid,
  .customer-reporting-option-grid,
  .customer-reporting-module-controls,
  .customer-reporting-preview-bundles article {
    grid-template-columns: 1fr;
  }

  .customer-summary-panel dd {
    max-width: none;
    text-align: left;
  }

  .customer-form-actions {
    margin: 0 -14px;
    padding: 12px 14px;
  }
}

.mail-viewer {
  display: grid;
  gap: 14px;
}

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

.mail-viewer-field {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-soft);
}

.mail-viewer-field span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.mail-viewer-field strong {
  overflow-wrap: anywhere;
}

.mail-viewer-body {
  max-height: 46vh;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
}

.unassigned-email-list {
  display: grid;
  gap: 16px;
  margin-top: 14px;
}

.unassigned-email-item {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-orange);
  border-radius: 8px;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.75fr);
  min-width: 0;
  padding: 16px;
}

.unassigned-email-message,
.unassigned-email-assignment,
.unassigned-email-assign-form {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.unassigned-email-message-head {
  align-items: flex-start;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  min-width: 0;
}

.unassigned-email-message-head h3,
.unassigned-email-assignment h3 {
  font-size: 16px;
  margin: 8px 0 4px;
}

.unassigned-email-preview {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--brand-navy);
  line-height: 1.5;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 12px;
}

.unassigned-email-match-list {
  display: grid;
  gap: 8px;
}

.unassigned-email-match {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--brand-navy);
  cursor: pointer;
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 11px 12px;
  text-align: left;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
  width: 100%;
}

.unassigned-email-match:hover,
.unassigned-email-match:focus,
.unassigned-email-match.selected {
  border-color: var(--brand-blue);
  box-shadow: 0 0 0 3px rgba(0, 88, 176, .12);
  outline: none;
}

.unassigned-email-match-head {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.unassigned-email-match-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

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

.unassigned-email-match-facts span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.unassigned-email-match-facts small,
.unassigned-email-selected span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.unassigned-email-match-facts b,
.unassigned-email-selected strong,
.unassigned-email-selected small {
  overflow-wrap: anywhere;
}

.unassigned-email-selected {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
  padding: 12px;
}

.empty-state.compact {
  padding: 12px;
}

.mail-template-usage {
  display: grid;
  gap: 16px;
}

.mail-template-usage-head {
  align-items: start;
  background: #f8fbff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) minmax(220px, .35fr);
  padding: 16px;
}

.mail-template-usage-head h3 {
  color: var(--brand-navy);
  font-size: 20px;
  margin: 10px 0 6px;
}

.mail-template-usage-head p {
  color: var(--ink);
  margin: 0;
  overflow-wrap: anywhere;
}

.mail-template-type-card,
.mail-template-usage-field,
.mail-template-flow-step {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  min-width: 0;
}

.mail-template-type-card {
  display: grid;
  gap: 6px;
  padding: 13px;
}

.mail-template-type-card span,
.mail-template-type-card small,
.mail-template-usage-field span {
  color: var(--muted);
  font-size: 12px;
}

.mail-template-type-card span,
.mail-template-usage-field span {
  font-weight: 850;
  text-transform: uppercase;
}

.mail-template-type-card strong,
.mail-template-usage-field strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.mail-template-flow {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.mail-template-flow-step {
  display: grid;
  gap: 9px;
  min-height: 112px;
  padding: 14px;
}

.mail-template-flow-step span {
  align-items: center;
  background: var(--surface-blue);
  border: 1px solid var(--brand-blue-soft-2);
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.mail-template-flow-step strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.mail-template-flow-step.is-mail-step {
  background: #fff8ef;
  border-color: rgba(246, 135, 18, .48);
  box-shadow: 0 10px 26px rgba(246, 135, 18, .12);
}

.mail-template-flow-step.is-mail-step span {
  background: var(--brand-orange);
  border-color: var(--brand-orange);
  color: #ffffff;
}

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

.mail-template-usage-field {
  display: grid;
  gap: 6px;
  padding: 12px;
}

.mail-rule-matrix-panel {
  display: grid;
  gap: 14px;
}

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

.mail-rule-summary div {
  background: #f8fbff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px;
}

.mail-rule-summary span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
}

.mail-rule-summary strong {
  color: var(--brand-navy);
  font-size: 24px;
  line-height: 1;
}

.mail-rule-table table {
  min-width: 1120px;
}

.mail-rule-table td {
  font-size: 13px;
}

.mail-rule-table strong {
  color: var(--brand-navy);
}

.mail-rule-trigger {
  max-width: 300px;
}

@media (max-width: 720px) {
  .mail-template-usage-head,
  .mail-template-usage-grid,
  .mail-rule-summary {
    grid-template-columns: 1fr;
  }
}

.photo-preview-modal {
  display: grid;
  gap: 12px;
  place-items: center;
}

.photo-preview-modal.has-gallery {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.photo-preview-figure {
  display: grid;
  gap: 8px;
  justify-items: center;
  margin: 0;
  min-width: 0;
}

.photo-preview-image {
  border-radius: 8px;
  max-height: calc(100vh - 180px);
  max-width: 100%;
  object-fit: contain;
}

.photo-preview-figure figcaption {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.photo-preview-nav {
  align-items: center;
  display: inline-flex;
  gap: 7px;
  justify-content: center;
  min-width: 92px;
}

.photo-preview-nav span[aria-hidden="true"] {
  font-size: 24px;
  line-height: .8;
}

@media (max-width: 720px) {
  .photo-preview-modal.has-gallery {
    grid-template-columns: 1fr 1fr;
  }

  .photo-preview-modal.has-gallery .photo-preview-figure {
    grid-column: 1 / -1;
    grid-row: 1;
  }

  .photo-preview-nav {
    width: 100%;
  }
}

.settlement-preview {
  display: grid;
  gap: 14px;
}

.settlement-reconciliation {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #f8fbff;
}

.settlement-reconciliation div {
  min-width: 0;
}

.settlement-reconciliation span,
.settlement-reconciliation p {
  color: var(--muted);
}

.settlement-reconciliation span,
.settlement-reconciliation strong {
  display: block;
}

.settlement-reconciliation strong {
  font-size: 1.05rem;
}

.settlement-reconciliation p {
  grid-column: 1 / -1;
  margin: 0;
}

.settlement-reconciliation.is-warning {
  border-color: #f2b166;
  background: #fff8ed;
}

.settlement-pdf-preview {
  width: 100%;
  height: min(62vh, 720px);
  min-height: 420px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
}

.code-link {
  display: block;
  width: 100%;
  border: 1px solid var(--line);
  background: var(--surface-blue);
  border-radius: 8px;
  padding: 10px;
  color: #314056;
  overflow-wrap: anywhere;
}

.damage-report-panel {
  margin: 0;
  max-width: none;
  width: 100%;
}

.damage-report-form {
  gap: 18px;
}

.nested-fieldset {
  background: #f8fbff;
}

.damage-opponent-email-hint {
  background: #fff8ee;
  border-left: 4px solid var(--brand-orange);
  border-radius: 6px;
  color: #314056;
  margin: 0 0 14px;
  padding: 10px 12px;
}

.damage-opponent-email-hint strong {
  color: var(--brand-blue);
}

.choice-grid {
  display: grid;
  gap: 8px;
}

.check-pill,
.inline-check {
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  gap: 9px;
  min-height: 42px;
  padding: 9px 11px;
}

.inline-check {
  background: #fff;
}

.check-pill input,
.inline-check input,
.damage-zone input {
  width: auto;
  min-width: auto;
}

.damage-upload {
  align-items: center;
  background: linear-gradient(135deg, #ffffff 0%, #f5f9ff 100%);
  border: 1.5px dashed #9fb4cf;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0, 58, 150, .06);
  cursor: pointer;
  display: grid;
  gap: 16px;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  min-height: 108px;
  overflow: hidden;
  padding: 18px 20px;
  position: relative;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.damage-upload:not(.muted):hover {
  background: linear-gradient(135deg, #ffffff 0%, #edf5ff 100%);
  border-color: var(--brand-blue);
  box-shadow: 0 12px 30px rgba(0, 58, 150, .11);
  transform: translateY(-1px);
}

.damage-upload:focus-within {
  border-color: var(--brand-orange);
  box-shadow: 0 0 0 4px rgba(246, 135, 18, .16), 0 12px 30px rgba(0, 58, 150, .1);
  outline: none;
}

.damage-upload.is-dragover {
  background: linear-gradient(135deg, #f8fbff 0%, #e5f0fe 100%);
  border-color: var(--brand-blue);
  border-style: solid;
  box-shadow: 0 0 0 4px rgba(0, 58, 150, .12), 0 14px 34px rgba(0, 58, 150, .13);
  transform: translateY(-2px);
}

.damage-upload.muted {
  cursor: not-allowed;
  opacity: .62;
  transform: none;
}

.damage-upload-icon {
  align-items: center;
  background: var(--brand-blue-soft);
  border: 1px solid rgba(0, 58, 150, .12);
  border-radius: 14px;
  color: var(--brand-blue);
  display: flex;
  height: 52px;
  justify-content: center;
  transition: background .18s ease, color .18s ease, transform .18s ease;
  width: 52px;
}

.damage-upload:not(.muted):hover .damage-upload-icon,
.damage-upload.is-dragover .damage-upload-icon {
  background: var(--brand-blue);
  color: #ffffff;
  transform: translateY(-1px);
}

.damage-upload-icon svg {
  fill: none;
  height: 25px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 25px;
}

.damage-upload-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
  text-align: left;
}

.damage-upload-title {
  color: var(--brand-navy);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
}

.damage-upload-hint {
  color: var(--muted);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.45;
}

.damage-upload-action {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .25);
  border-radius: 999px;
  color: var(--brand-blue);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
  padding: 10px 15px;
  text-align: center;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
  white-space: nowrap;
}

.damage-upload:not(.muted):hover .damage-upload-action,
.damage-upload.is-dragover .damage-upload-action {
  background: var(--brand-blue);
  border-color: var(--brand-blue);
  color: #ffffff;
}

.damage-upload input {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.damage-upload-wrap {
  display: grid;
  gap: 12px;
}

.upload-preview {
  background: #f8fbff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
}

.upload-preview-header {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  justify-content: space-between;
  margin-bottom: 10px;
}

.upload-preview-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.upload-preview-item {
  align-items: center;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: 62px minmax(0, 1fr) 36px;
  min-height: 78px;
  padding: 8px;
}

.upload-preview-item img,
.upload-preview-file {
  aspect-ratio: 1;
  background: #eaf1fb;
  border-radius: 6px;
  height: 62px;
  object-fit: cover;
  width: 62px;
}

.upload-preview-file {
  align-items: center;
  color: var(--brand-blue);
  display: flex;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
}

.upload-preview-item strong,
.upload-preview-item span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.upload-preview-item span {
  color: var(--muted);
  font-size: 12px;
}

@media (max-width: 680px) {
  .damage-upload {
    gap: 12px;
    grid-template-columns: 46px minmax(0, 1fr);
    padding: 16px;
  }

  .damage-upload-icon {
    border-radius: 12px;
    height: 46px;
    width: 46px;
  }

  .damage-upload-action {
    grid-column: 2;
    justify-self: start;
    padding: 9px 13px;
  }
}

.vehicle-damage-map {
  max-width: 780px;
}

.car-skeleton {
  background:
    radial-gradient(circle at 22% 25%, rgba(246, 135, 18, .13) 0 18px, transparent 19px),
    radial-gradient(circle at 78% 25%, rgba(246, 135, 18, .13) 0 18px, transparent 19px),
    radial-gradient(circle at 22% 76%, rgba(246, 135, 18, .13) 0 18px, transparent 19px),
    radial-gradient(circle at 78% 76%, rgba(246, 135, 18, .13) 0 18px, transparent 19px),
    linear-gradient(90deg, transparent 0 7%, #90abc8 7% 8%, transparent 8% 92%, #90abc8 92% 93%, transparent 93%),
    linear-gradient(180deg, #f8fbff, #ffffff);
  border: 2px solid #90abc8;
  border-radius: 56px;
  color: var(--brand-navy);
  min-height: 360px;
  position: relative;
  width: min(100%, 720px);
}

.car-skeleton::before {
  border: 2px solid #b8c9dc;
  border-radius: 38px;
  content: "";
  inset: 58px 110px;
  position: absolute;
}

.car-skeleton::after {
  border-left: 2px solid #b8c9dc;
  border-right: 2px solid #b8c9dc;
  content: "";
  inset: 112px 250px;
  position: absolute;
}

.damage-hotspot {
  position: absolute;
}

.damage-hotspot input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.damage-hotspot span {
  align-items: center;
  background: rgba(255, 255, 255, .94);
  border: 2px dashed var(--brand-orange);
  border-radius: 999px;
  box-shadow: 0 8px 22px rgba(0, 29, 75, .12);
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: 850;
  justify-content: center;
  min-height: 36px;
  min-width: 84px;
  padding: 7px 10px;
  text-align: center;
}

.damage-hotspot input:checked + span {
  background: var(--brand-orange);
  border-color: var(--brand-orange);
  color: #fff;
}

.damage-hotspot-front { left: 50%; top: 10px; transform: translateX(-50%); }
.damage-hotspot-hood { left: 50%; top: 62px; transform: translateX(-50%); }
.damage-hotspot-windshield { left: 50%; top: 112px; transform: translateX(-50%); }
.damage-hotspot-roof { left: 50%; top: 168px; transform: translateX(-50%); }
.damage-hotspot-rearWindow { left: 50%; bottom: 112px; transform: translateX(-50%); }
.damage-hotspot-rear { left: 50%; bottom: 10px; transform: translateX(-50%); }
.damage-hotspot-driverFront { left: 18px; top: 92px; }
.damage-hotspot-driverRear { left: 18px; bottom: 92px; }
.damage-hotspot-passengerFront { right: 18px; top: 92px; }
.damage-hotspot-passengerRear { right: 18px; bottom: 92px; }
.damage-hotspot-wheels { right: 24px; top: 50%; transform: translateY(-50%); }

.vehicle-part-map {
  aspect-ratio: 16 / 9;
  background:
    linear-gradient(#d6e0eb, #d6e0eb) 16% 22% / 67% 2px no-repeat,
    linear-gradient(#d6e0eb, #d6e0eb) 16% 72% / 67% 2px no-repeat,
    linear-gradient(90deg, #d6e0eb 0 2px, transparent 2px) 14% 38% / 73% 25% no-repeat,
    #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  max-width: 920px;
  min-height: auto;
  overflow: hidden;
  position: relative;
  width: min(100%, 920px);
}

.vehicle-side-marker {
  color: var(--brand-navy);
  font-size: clamp(24px, 5vw, 48px);
  font-weight: 800;
  left: 7%;
  line-height: 1;
  position: absolute;
}

.vehicle-side-marker-left {
  top: 9%;
}

.vehicle-side-marker-right {
  bottom: 9%;
}

.damage-part {
  display: block;
  position: absolute;
}

.damage-part input {
  opacity: 0;
  pointer-events: none;
  position: absolute;
}

.damage-part span {
  align-items: center;
  background: rgba(255, 255, 255, .82);
  border: 2px solid #9fb0c4;
  color: var(--brand-navy);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 2px;
  height: 100%;
  justify-content: center;
  padding: 6px;
  text-align: center;
  transition: background .14s ease, border-color .14s ease, box-shadow .14s ease, color .14s ease;
  width: 100%;
}

.damage-part strong {
  font-size: clamp(18px, 3vw, 34px);
  line-height: 1;
}

.damage-part small {
  font-size: clamp(9px, 1.3vw, 12px);
  font-weight: 750;
  line-height: 1.12;
}

.damage-part input:checked + span {
  background: rgba(246, 135, 18, .82);
  border-color: var(--brand-orange);
  box-shadow: inset 0 0 0 3px rgba(255, 255, 255, .72), 0 10px 24px rgba(246, 135, 18, .25);
  color: #fff;
}

.damage-part-leftRear { left: 16%; top: 7%; width: 15%; height: 19%; }
.damage-part-leftRear span { border-radius: 14px 0 0 28px; clip-path: polygon(7% 15%, 86% 2%, 100% 100%, 16% 94%); }
.damage-part-leftRearDoor { left: 31%; top: 6%; width: 18%; height: 20%; }
.damage-part-leftRearDoor span { clip-path: polygon(7% 5%, 100% 0, 94% 100%, 0 93%); }
.damage-part-leftFrontDoor { left: 49%; top: 6%; width: 18%; height: 20%; }
.damage-part-leftFrontDoor span { clip-path: polygon(2% 0, 91% 5%, 100% 91%, 7% 100%); }
.damage-part-leftFront { left: 67%; top: 7%; width: 15%; height: 19%; }
.damage-part-leftFront span { border-radius: 0 14px 28px 0; clip-path: polygon(0 0, 88% 13%, 98% 92%, 0 100%); }

.damage-part-rear { left: 3%; top: 36%; width: 12%; height: 24%; }
.damage-part-rear span { border-radius: 24px 6px 6px 24px; }
.damage-part-rearTop { left: 16%; top: 33%; width: 18%; height: 30%; }
.damage-part-rearTop span { border-radius: 24px 8px 8px 24px; clip-path: polygon(0 18%, 88% 0, 100% 100%, 0 88%); }
.damage-part-roof { left: 34%; top: 31%; width: 30%; height: 34%; }
.damage-part-roof span { border-radius: 18px; }
.damage-part-hood { left: 64%; top: 33%; width: 22%; height: 30%; }
.damage-part-hood span { border-radius: 8px 28px 28px 8px; clip-path: polygon(0 0, 88% 16%, 100% 84%, 0 100%); }
.damage-part-front { left: 87%; top: 36%; width: 10%; height: 24%; }
.damage-part-front span { border-radius: 6px 24px 24px 6px; }

.damage-part-rightRear { left: 16%; top: 74%; width: 15%; height: 19%; }
.damage-part-rightRear span { border-radius: 28px 0 0 14px; clip-path: polygon(16% 6%, 100% 0, 86% 98%, 7% 85%); }
.damage-part-rightRearDoor { left: 31%; top: 74%; width: 18%; height: 20%; }
.damage-part-rightRearDoor span { clip-path: polygon(0 7%, 94% 0, 100% 95%, 7% 100%); }
.damage-part-rightFrontDoor { left: 49%; top: 74%; width: 18%; height: 20%; }
.damage-part-rightFrontDoor span { clip-path: polygon(7% 0, 100% 7%, 91% 95%, 2% 100%); }
.damage-part-rightFront { left: 67%; top: 74%; width: 15%; height: 19%; }
.damage-part-rightFront span { border-radius: 0 28px 14px 0; clip-path: polygon(0 0, 98% 8%, 88% 87%, 0 100%); }

.vehicle-damage-map {
  max-width: 1100px;
}

.vehicle-part-map {
  aspect-ratio: 1000 / 620;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: inset 0 0 0 1px rgba(0, 51, 102, .03);
  max-width: 1100px;
  min-height: auto;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.vehicle-blueprint-svg {
  inset: 3.5% 2.5%;
  position: absolute;
  width: 95%;
  height: 93%;
}

.vehicle-blueprint-lines {
  fill: none;
  stroke: #233b5b;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3;
}

.vehicle-blueprint-lines rect {
  fill: rgba(255, 255, 255, .28);
}

.vehicle-side-marker {
  color: var(--brand-navy);
  font-size: clamp(28px, 4.4vw, 56px);
  font-weight: 900;
  left: 7%;
  line-height: 1;
  position: absolute;
  z-index: 2;
}

.vehicle-side-marker-left {
  top: 10%;
}

.vehicle-side-marker-right {
  bottom: 10%;
}

.damage-part {
  display: block;
  position: absolute;
  z-index: 3;
}

.damage-part input {
  opacity: 0;
  pointer-events: none;
  position: absolute;
}

.damage-part span {
  align-items: center;
  background: rgba(255, 255, 255, .12);
  border: 2px solid transparent;
  color: var(--brand-navy);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 4px;
  height: 100%;
  justify-content: center;
  padding: 6px;
  text-align: center;
  transition: background .14s ease, border-color .14s ease, box-shadow .14s ease, color .14s ease;
  width: 100%;
}

.damage-part strong {
  align-items: center;
  background: rgba(255, 255, 255, .88);
  border: 1px solid rgba(0, 51, 102, .16);
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(0, 29, 75, .08);
  display: flex;
  font-size: clamp(16px, 2.2vw, 30px);
  height: clamp(30px, 4vw, 48px);
  justify-content: center;
  line-height: 1;
  min-width: clamp(30px, 4vw, 48px);
  padding: 0 10px;
}

.damage-part small {
  background: rgba(255, 255, 255, .9);
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(0, 29, 75, .08);
  font-size: clamp(9px, 1.1vw, 12px);
  font-weight: 800;
  line-height: 1.12;
  max-width: 92%;
  padding: 3px 7px;
}

.damage-part:hover span {
  background: rgba(0, 75, 145, .08);
  border-color: rgba(0, 75, 145, .45);
}

.damage-part input:checked + span {
  background: rgba(246, 135, 18, .22);
  border-color: var(--brand-orange);
  box-shadow: inset 0 0 0 3px rgba(255, 255, 255, .72), 0 10px 24px rgba(246, 135, 18, .24);
  color: var(--brand-navy);
}

.damage-part input:checked + span strong,
.damage-part input:checked + span small {
  background: var(--brand-orange);
  border-color: var(--brand-orange);
  color: #fff;
}

.damage-part-leftRear { left: 18.5%; top: 7%; width: 15.5%; height: 18%; }
.damage-part-leftRear span { border-radius: 18px 8px 8px 28px; clip-path: polygon(4% 35%, 35% 12%, 100% 4%, 100% 95%, 20% 90%, 0 72%); }
.damage-part-leftRearDoor { left: 34%; top: 7%; width: 15%; height: 18%; }
.damage-part-leftRearDoor span { clip-path: polygon(0 18%, 100% 5%, 100% 95%, 0 88%); }
.damage-part-leftFrontDoor { left: 49%; top: 7%; width: 15%; height: 18%; }
.damage-part-leftFrontDoor span { clip-path: polygon(0 5%, 100% 15%, 100% 86%, 0 95%); }
.damage-part-leftFront { left: 64%; top: 7%; width: 19%; height: 18%; }
.damage-part-leftFront span { border-radius: 8px 28px 28px 8px; clip-path: polygon(0 5%, 75% 14%, 100% 34%, 97% 72%, 80% 90%, 0 95%); }

.damage-part-rear { left: 4%; top: 40%; width: 10.5%; height: 22%; }
.damage-part-rear span { border-radius: 26px 9px 9px 26px; }
.damage-part-rearTop { left: 15.5%; top: 34%; width: 18%; height: 32%; }
.damage-part-rearTop span { border-radius: 30px 10px 10px 30px; clip-path: polygon(0 18%, 72% 0, 100% 15%, 100% 86%, 72% 100%, 0 86%); }
.damage-part-roof { left: 33.5%; top: 33%; width: 28.5%; height: 34%; }
.damage-part-roof span { border-radius: 22px; }
.damage-part-hood { left: 62%; top: 34%; width: 25%; height: 32%; }
.damage-part-hood span { border-radius: 10px 34px 34px 10px; clip-path: polygon(0 12%, 72% 0, 100% 18%, 100% 84%, 72% 100%, 0 88%); }
.damage-part-front { left: 88%; top: 40%; width: 8.5%; height: 22%; }
.damage-part-front span { border-radius: 9px 26px 26px 9px; }

.damage-part-rightRear { left: 18.5%; top: 75%; width: 15.5%; height: 18%; }
.damage-part-rightRear span { border-radius: 28px 8px 8px 18px; clip-path: polygon(20% 10%, 100% 5%, 100% 96%, 35% 88%, 4% 65%, 0 28%); }
.damage-part-rightRearDoor { left: 34%; top: 75%; width: 15%; height: 18%; }
.damage-part-rightRearDoor span { clip-path: polygon(0 12%, 100% 5%, 100% 82%, 0 95%); }
.damage-part-rightFrontDoor { left: 49%; top: 75%; width: 15%; height: 18%; }
.damage-part-rightFrontDoor span { clip-path: polygon(0 5%, 100% 12%, 100% 88%, 0 95%); }
.damage-part-rightFront { left: 64%; top: 75%; width: 19%; height: 18%; }
.damage-part-rightFront span { border-radius: 8px 28px 28px 8px; clip-path: polygon(0 5%, 80% 10%, 97% 28%, 100% 66%, 75% 86%, 0 95%); }

.repeat-list {
  display: grid;
  gap: 14px;
}

.repeat-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.repeat-card-header {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

/* Schadenakte: fokussierte 360-Grad-Ansicht nach dem kompakten Referenzlayout. */
.case-overview.panel.compact.damage-cockpit-case-head {
  background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
  border-color: rgba(0, 58, 150, .14);
  gap: 0;
  overflow: hidden;
  padding: 12px 16px;
  position: relative;
}

.damage-cockpit-case-head::before {
  background: linear-gradient(90deg, var(--brand-blue), var(--brand-orange));
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.damage-cockpit-case-head .case-overview-header.compact {
  gap: 18px;
  grid-template-columns: minmax(0, 1.5fr) minmax(310px, .72fr);
}

.damage-cockpit-case-head .case-title-block {
  gap: 6px;
  padding: 1px 2px;
}

.damage-cockpit-case-head .case-title-row h2 {
  font-size: clamp(21px, 1.65vw, 27px);
  line-height: 1.08;
}

.damage-cockpit-case-head .case-focus-kicker {
  font-size: 11px;
  line-height: 1.25;
}

.damage-cockpit-case-head .case-title-block > p,
.damage-cockpit-case-head .case-title-meta > span:not(.status) {
  color: #52627a;
  font-size: 12px;
  line-height: 1.4;
}

.damage-cockpit-case-head .case-title-actions {
  gap: 8px;
  margin-top: 7px;
}

.damage-cockpit-case-head .case-title-actions .button {
  font-size: 11px;
  min-height: 32px;
  padding: 6px 10px;
}

.damage-cockpit-next-step {
  align-content: start;
  background: #ffffff;
  box-shadow: none;
  gap: 7px;
  min-height: 0;
  padding: 11px 13px;
}

.process-head .damage-cockpit-next-step {
  gap: 7px;
  min-height: 0;
  padding: 11px 13px;
}

.damage-cockpit-next-step-copy {
  gap: 2px;
}

.damage-cockpit-next-step strong,
.process-head .damage-cockpit-next-step strong {
  font-size: 16px;
  line-height: 1.25;
}

.damage-cockpit-next-step small {
  color: #52627a;
  font-size: 11px;
  line-height: 1.4;
  margin-top: 1px;
}

.damage-cockpit-next-meta-line {
  align-items: center;
  color: var(--muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 10px;
  gap: 5px 12px;
}

.damage-cockpit-next-meta-line strong {
  color: var(--muted);
  display: inline;
  font-size: inherit;
}

.damage-cockpit-overview {
  gap: 12px;
}

.damage-cockpit-orientation {
  background: #f8fbff;
  border: 1px solid rgba(0, 75, 145, .16);
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0, 34, 90, .045);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-width: 0;
  padding: 9px 11px;
}

.damage-cockpit-orientation-item {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: 38px minmax(0, 1fr);
  min-width: 0;
  padding: 8px 16px;
}

.damage-cockpit-orientation-item + .damage-cockpit-orientation-item {
  border-left: 1px solid rgba(216, 225, 235, .9);
}

.damage-cockpit-orientation-icon {
  align-items: center;
  background: #e9f2ff;
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  height: 38px;
  justify-content: center;
  width: 38px;
}

.damage-cockpit-orientation-icon svg {
  fill: none;
  height: 21px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 21px;
}

.damage-cockpit-orientation-item > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.damage-cockpit-orientation-item > div > span {
  color: #52627a;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .075em;
  text-transform: uppercase;
}

.damage-cockpit-orientation-item > div > strong {
  color: var(--brand-navy);
  font-size: 16px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.damage-cockpit-orientation-item.blocker.attention .damage-cockpit-orientation-icon {
  background: #feecec;
  color: #c92929;
}

.damage-cockpit-orientation-item.blocker.ready .damage-cockpit-orientation-icon {
  background: #e8f7ef;
  color: var(--green);
}

.damage-dashboard-foundation {
  align-items: stretch;
  display: grid;
  gap: 11px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
}

.damage-dashboard-foundation > * {
  margin: 0;
  min-width: 0;
}

.damage-dashboard-report-card {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .16);
  border-left: 4px solid var(--brand-blue);
  border-radius: 10px;
  box-shadow: 0 7px 18px rgba(0, 34, 90, .055);
  display: grid;
  gap: 10px;
  padding: 12px 13px;
}

.damage-dashboard-report-card.active,
.damage-dashboard-report-card.attention {
  border-left-color: var(--brand-orange);
}

.damage-dashboard-report-card.blocked {
  border-left-color: var(--red);
}

.damage-dashboard-report-card.done,
.damage-dashboard-report-card.ready {
  border-left-color: var(--green);
}

.damage-dashboard-report-card > header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.damage-dashboard-report-card > header > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.damage-dashboard-report-card > header span:not(.process-state-pill) {
  color: #52627a;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .075em;
  text-transform: uppercase;
}

.damage-dashboard-report-card h3 {
  color: var(--brand-navy);
  font-size: 16px;
  line-height: 1.25;
  margin: 0;
}

.damage-dashboard-report-card > header p,
.damage-dashboard-report-detail {
  color: #52627a;
  font-size: 11px;
  line-height: 1.4;
  margin: 0;
}

.damage-dashboard-report-detail {
  background: #f8fbff;
  border-left: 3px solid rgba(0, 58, 150, .35);
  border-radius: 5px;
  padding: 8px 9px;
}

.damage-dashboard-foundation .process-integrated-card {
  border-color: rgba(0, 58, 150, .16);
  border-left-color: var(--brand-blue);
  border-radius: 10px;
  box-shadow: 0 7px 18px rgba(0, 34, 90, .055);
  padding: 12px 13px;
}

.damage-dashboard-foundation .process-integrated-card header span {
  color: #52627a;
}

.damage-cockpit-grid {
  gap: 11px;
}

.damage-cockpit-grid .damage-cockpit-card {
  border-radius: 10px;
  border-top-color: rgba(0, 58, 150, .16);
  border-top-width: 1px;
  box-shadow: 0 7px 18px rgba(0, 34, 90, .055);
  gap: 10px;
  min-height: 0;
  padding: 12px 13px;
}

.damage-cockpit-grid .damage-cockpit-vehicle {
  border-top-color: rgba(0, 58, 150, .16);
}

.damage-cockpit-grid .damage-cockpit-documents {
  grid-column: 1 / span 2;
}

.damage-cockpit-section-head {
  gap: 9px;
}

.damage-cockpit-section-head span {
  color: #52627a;
  font-size: 11px;
}

.damage-cockpit-section-head strong {
  font-size: 15px;
  line-height: 1.25;
}

.damage-cockpit-section-head small {
  color: #52627a;
  font-size: 11px;
  line-height: 1.35;
}

.damage-cockpit-kv-list {
  display: grid;
  gap: 4px 14px;
}

.damage-cockpit-kv-list.two-column {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.damage-cockpit-kv-list > div {
  align-items: baseline;
  border-bottom: 1px solid rgba(216, 225, 235, .72);
  display: grid;
  gap: 9px;
  grid-template-columns: minmax(98px, .8fr) minmax(0, 1.2fr);
  min-width: 0;
  padding: 4px 0 5px;
}

.damage-cockpit-kv-list > div:last-child,
.damage-cockpit-kv-list.two-column > div:nth-last-child(-n + 2) {
  border-bottom: 0;
}

.damage-cockpit-kv-list span {
  color: #52627a;
  font-size: 11px;
  line-height: 1.35;
}

.damage-cockpit-kv-list strong {
  color: var(--brand-navy);
  font-size: 12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.damage-cockpit-kv-list > div.attention strong {
  color: #b45309;
}

.damage-cockpit-kv-list > div.ready strong {
  color: var(--green);
}

.damage-cockpit-description {
  gap: 2px;
  padding: 4px 0 4px 10px;
}

.damage-cockpit-description > span,
.damage-cockpit-description p {
  font-size: 11px;
}

.damage-cockpit-description > span {
  color: #52627a;
}

.damage-cockpit-description p {
  line-height: 1.45;
}

.damage-cockpit-order-list,
.damage-cockpit-blocker-list,
.damage-cockpit-document-list {
  gap: 5px;
}

.damage-cockpit-grid .damage-cockpit-order-row {
  align-items: center;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  padding: 6px 2px 7px;
}

.damage-cockpit-grid .damage-cockpit-order-row .process-state-pill {
  grid-column: auto;
  justify-self: end;
}

.damage-cockpit-order-row strong,
.damage-cockpit-document-list strong,
.damage-cockpit-blocker strong {
  font-size: 12px;
  line-height: 1.35;
}

.damage-cockpit-order-row small,
.damage-cockpit-document-list small,
.damage-cockpit-blocker p {
  color: #52627a;
  font-size: 10px;
  line-height: 1.4;
}

.damage-cockpit-order-count {
  font-size: 10px;
  height: 22px;
  width: 22px;
}

.damage-cockpit-blocker {
  gap: 3px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 8px 9px;
}

.damage-cockpit-blocker > strong {
  grid-column: 1;
}

.damage-cockpit-blocker > p {
  grid-column: 1 / -1;
}

.damage-cockpit-blocker > a {
  align-self: center;
  grid-column: 2;
  grid-row: 1;
}

.damage-cockpit-order-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 14px;
}

.damage-cockpit-money-grid {
  gap: 6px;
}

.damage-cockpit-money-grid > div {
  border-radius: 6px;
  gap: 2px;
  padding: 7px 8px;
}

.damage-cockpit-money-grid span {
  color: #52627a;
  font-size: 10px;
  line-height: 1.3;
}

.damage-cockpit-money-grid strong {
  font-size: 13px;
  line-height: 1.3;
}

.damage-cockpit-documents-layout {
  align-items: stretch;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1.15fr) minmax(270px, .85fr);
  min-width: 0;
}

.damage-cockpit-document-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.damage-cockpit-document-list > div {
  border-radius: 6px;
  padding: 7px 8px;
}

.damage-cockpit-photo-area {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.damage-cockpit-document-metrics {
  gap: 6px;
}

.damage-cockpit-document-metrics > span {
  border-radius: 6px;
  color: #52627a;
  font-size: 10px;
  line-height: 1.3;
  padding: 7px;
}

.damage-cockpit-document-metrics strong {
  font-size: 15px;
}

.damage-cockpit-photo-strip {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-height: 64px;
}

.damage-cockpit-photo-strip > a {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 5px;
  display: block;
  min-height: 64px;
  overflow: hidden;
}

.damage-cockpit-photo-strip img {
  display: block;
  height: 64px;
  object-fit: cover;
  width: 100%;
}

.damage-cockpit-grid .process-state-pill {
  font-size: 10px;
  min-height: 24px;
  padding: 4px 8px;
}

/* Prozesse & Aufträge: operative Arbeitsansicht mit klarer Führungs- und Quellenlogik. */
.damage-process-orders-layout {
  gap: 14px;
}

.process-ops-page-head {
  align-items: center;
  background: linear-gradient(135deg, #ffffff 0%, #f5f9ff 100%);
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 10px;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  overflow: hidden;
  padding: 14px 16px;
  position: relative;
}

.process-ops-page-head::before {
  background: linear-gradient(90deg, var(--brand-blue), var(--brand-orange));
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.process-ops-page-head > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.process-ops-page-head > div > span,
.process-ops-command-head > div > span,
.process-ops-section-head > div > span,
.process-ops-editor-head > span,
.process-order-details > header span,
.process-accounting-handoff span {
  color: var(--brand-blue);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .075em;
  text-transform: uppercase;
}

.process-ops-page-head h2,
.process-ops-command-head h3,
.process-ops-section-head h3 {
  color: var(--brand-navy);
  margin: 0;
}

.process-ops-page-head h2 {
  font-size: 21px;
  line-height: 1.2;
}

.process-ops-page-head p,
.process-ops-command-head p,
.process-ops-section-head p,
.process-ops-editor-head p {
  color: #52627a;
  font-size: 12px;
  line-height: 1.4;
  margin: 0;
}

.process-ops-page-head nav {
  display: flex;
  flex: 0 0 auto;
  gap: 7px;
}

.process-ops-page-head nav a,
.process-ops-page-head nav button {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: var(--brand-navy);
  display: inline-flex;
  font-size: 11px;
  font-weight: 800;
  gap: 6px;
  min-height: 34px;
  padding: 6px 9px;
}

.process-ops-page-head nav button {
  cursor: pointer;
  font-family: inherit;
}

.process-ops-page-head nav a:hover,
.process-ops-page-head nav button:hover {
  background: var(--surface-blue);
  border-color: rgba(0, 58, 150, .28);
}

.process-ops-page-head nav a span,
.process-ops-page-head nav button span {
  align-items: center;
  background: var(--brand-blue);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 10px;
  height: 20px;
  justify-content: center;
  width: 20px;
}

.process-ops-command {
  border-color: rgba(0, 58, 150, .14);
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr;
  padding: 14px;
}

.process-ops-command,
.process-ops-flow,
.order-process-overview {
  scroll-margin-top: 112px;
}

.process-ops-command-head {
  align-items: flex-start;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.process-ops-command-head > div {
  display: grid;
  gap: 3px;
}

.process-ops-command-head h3 {
  font-size: 18px;
  line-height: 1.2;
}

.process-ops-phase {
  background: #eaf2ff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 999px;
  color: var(--brand-navy);
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
  padding: 6px 9px;
  text-transform: uppercase;
}

.process-ops-command-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1.7fr) minmax(320px, .8fr);
  min-width: 0;
}

.process-tab-next-card.process-ops-leading {
  align-items: center;
  background: linear-gradient(135deg, #edf5ff 0%, #ffffff 100%);
  min-height: 112px;
  padding: 13px 14px;
}

.process-tab-next-card.process-ops-leading strong {
  font-size: 18px;
}

.process-tab-next-card.process-ops-leading p {
  color: #52627a;
  font-size: 12px;
  line-height: 1.4;
}

.process-tab-next-card.process-ops-leading .button {
  min-height: 34px;
}

.process-ops-metrics {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 0;
}

.process-ops-metrics > span,
.process-ops-progress {
  align-content: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: #52627a;
  display: grid;
  font-size: 10px;
  gap: 2px;
  min-width: 0;
  padding: 8px;
  text-align: center;
}

.process-ops-metrics strong {
  color: var(--brand-navy);
  display: block;
  font-size: 18px;
  line-height: 1.1;
}

.process-ops-progress {
  gap: 7px;
  grid-column: 1 / -1;
  text-align: left;
}

.process-ops-progress > span {
  align-items: baseline;
  display: flex;
  gap: 5px;
}

.process-ops-progress > span strong {
  display: inline;
  font-size: 15px;
}

.process-ops-progress > div {
  background: #e7edf5;
  border-radius: 999px;
  height: 7px;
  overflow: hidden;
}

.process-ops-progress > div > span {
  background: linear-gradient(90deg, var(--brand-blue), #2f7ed8);
  display: block;
  height: 100%;
}

.process-ops-parallel {
  border-top: 1px solid var(--line);
  gap: 8px;
  padding-top: 11px;
}

.process-ops-parallel .process-parallel-actions-head {
  align-items: center;
}

.process-ops-parallel .process-parallel-actions-head strong {
  font-size: 14px;
}

.process-ops-parallel .process-parallel-actions-head small {
  color: #52627a;
  font-size: 10px;
}

.process-ops-parallel .process-parallel-action-grid {
  gap: 8px;
}

.process-ops-parallel-card {
  gap: 6px;
  padding: 10px;
}

.process-ops-parallel-card header > span {
  color: #52627a;
  font-size: 10px;
}

.process-ops-parallel-card .process-state-pill {
  font-size: 9px;
  min-height: 21px;
  padding: 3px 6px;
}

.process-ops-parallel-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.process-ops-parallel-copy strong {
  color: var(--brand-navy);
  font-size: 13px;
  line-height: 1.3;
}

.process-ops-parallel-copy p {
  color: #52627a;
  font-size: 11px;
  line-height: 1.35;
  margin: 0;
}

.process-ops-parallel-card footer {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  min-width: 0;
}

.process-ops-parallel-card footer small {
  color: #52627a;
  font-size: 10px;
  line-height: 1.3;
}

.process-ops-parallel-card .button {
  font-size: 10px;
  min-height: 29px;
  padding: 5px 8px;
}

.process-ops-workbench {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(620px, 1.12fr) minmax(440px, .88fr);
  min-width: 0;
}

.process-ops-flow {
  display: grid;
  gap: 10px;
  padding: 14px;
}

.process-ops-section-head {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  min-width: 0;
}

.process-ops-section-letter {
  align-items: center;
  background: var(--brand-navy);
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.process-ops-section-head > div:not(.process-order-summary) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.process-ops-section-head h3 {
  font-size: 17px;
  line-height: 1.25;
}

.process-ops-flow > .process-workflow-list {
  gap: 6px;
}

.process-ops-editor {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.process-ops-editor-head {
  background: #eef5ff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  padding: 10px 12px;
}

.process-ops-editor-head strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.order-process-overview {
  gap: 12px;
  padding: 14px;
}

.order-process-head {
  border-bottom: 1px solid var(--line);
  padding-bottom: 11px;
}

.process-order-summary {
  display: flex;
  gap: 6px;
}

.process-order-summary > span {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 7px;
  color: #52627a;
  display: grid;
  font-size: 9px;
  gap: 1px;
  min-width: 72px;
  padding: 6px 8px;
  text-align: center;
}

.process-order-summary strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.process-order-list {
  display: grid;
  gap: 6px;
}

.process-order-row {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-blue);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(230px, .9fr) auto minmax(410px, 1.15fr) minmax(270px, .85fr);
  min-width: 0;
  padding: 10px 11px;
}

.process-order-row.attention,
.process-order-row.active,
.process-order-row.ready,
.process-order-row.in_progress,
.process-order-row.waiting_external {
  border-left-color: var(--brand-orange);
}

.process-order-row.blocked,
.process-order-row.data_error {
  border-left-color: var(--red);
}

.process-order-row.done {
  border-left-color: var(--green);
}

.process-order-row.not_relevant,
.process-order-row.waived {
  background: #f8fafc;
  border-left-color: #9aa7b7;
  opacity: .78;
}

.process-order-identity {
  align-items: center;
  display: grid;
  gap: 9px;
  grid-template-columns: 30px minmax(0, 1fr);
  min-width: 0;
}

.process-order-number {
  align-items: center;
  background: #eaf2ff;
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 10px;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.process-order-identity > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.process-order-identity > div > span {
  color: #52627a;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.process-order-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
}

.process-order-identity strong {
  color: var(--brand-navy);
  font-size: 13px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.process-order-state .process-state-pill {
  white-space: nowrap;
}

.process-order-facts {
  display: grid;
  gap: 8px;
  grid-template-columns: 1.15fr .55fr 1fr;
  margin: 0;
  min-width: 0;
}

.process-order-facts > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.process-order-facts dt {
  color: #52627a;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.process-order-facts dd {
  color: var(--brand-navy);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
  overflow-wrap: anywhere;
}

.process-order-actions {
  align-items: center;
  display: flex;
  gap: 6px;
  justify-content: flex-end;
  min-width: 0;
}

.process-order-actions .button {
  font-size: 10px;
  min-height: 30px;
  padding: 5px 8px;
}

.process-order-actions .order-process-document-button {
  max-width: 150px;
}

.process-order-details {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 10px;
  display: grid;
  gap: 10px;
  padding: 13px 14px;
}

.process-order-details > header {
  align-items: end;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.process-order-details > header > div {
  display: grid;
  gap: 2px;
}

.process-order-details > header strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.process-order-details > header small {
  color: #52627a;
  font-size: 10px;
}

.process-order-detail-grid {
  display: grid;
  gap: 7px;
}

.process-order-detail-fold {
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
}

.process-order-detail-fold > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  list-style: none;
  min-height: 48px;
  padding: 9px 12px;
}

.process-order-detail-fold > summary::-webkit-details-marker {
  display: none;
}

.process-order-detail-fold > summary > span:first-child {
  display: grid;
  gap: 1px;
}

.process-order-detail-fold > summary small {
  color: #52627a;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.process-order-detail-fold > summary strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.process-order-detail-fold > summary > span:last-child {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: #52627a;
  font-size: 10px;
  font-weight: 800;
  padding: 4px 7px;
}

.process-order-detail-fold[open] > summary {
  background: #eef5ff;
  border-bottom: 1px solid var(--line);
}

.process-order-detail-body {
  background: #ffffff;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.process-order-detail-body > .panel,
.process-order-detail-body > .process-integrated-card,
.process-order-detail-body > .process-step-embedded-panel {
  margin: 0;
}

.process-accounting-handoff {
  align-items: center;
  background: linear-gradient(135deg, #eef5ff 0%, #ffffff 100%);
  border: 1px solid rgba(0, 58, 150, .16);
  border-left: 4px solid var(--brand-blue);
  border-radius: 9px;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 12px 14px;
}

.process-accounting-handoff > div {
  display: grid;
  gap: 2px;
}

.process-accounting-handoff strong {
  color: var(--brand-navy);
  font-size: 15px;
}

.process-accounting-handoff p {
  color: #52627a;
  font-size: 11px;
  line-height: 1.4;
  margin: 0;
}

/* Prozesse & Aufträge: klare Liste real erteilter Aufträge. */
.damage-order-management {
  display: grid;
  gap: 12px;
}

.damage-order-management-head {
  align-items: center;
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 10px;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  overflow: hidden;
  padding: 15px 17px;
  position: relative;
}

.damage-order-management-head::before {
  background: linear-gradient(90deg, var(--brand-blue), var(--brand-orange));
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.damage-order-management-head > div:first-child,
.damage-order-list-head > div:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.damage-order-management-head > div:first-child > span,
.damage-order-list-head > div:first-child > span {
  color: var(--brand-blue);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .075em;
  text-transform: uppercase;
}

.damage-order-management-head h2,
.damage-order-list-head h3 {
  color: var(--brand-navy);
  line-height: 1.2;
  margin: 0;
}

.damage-order-management-head h2 {
  font-size: 22px;
}

.damage-order-management-head p,
.damage-order-list-head p {
  color: #52627a;
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
}

.damage-order-management-count {
  align-items: center;
  background: #eef5ff;
  border: 1px solid rgba(0, 58, 150, .14);
  border-radius: 9px;
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
  padding: 9px 12px;
}

.damage-order-management-count strong {
  color: var(--brand-blue);
  font-size: 23px;
  line-height: 1;
}

.damage-order-management-count span {
  color: var(--brand-navy);
  font-size: 11px;
  font-weight: 800;
}

.damage-order-setup {
  display: grid;
  gap: 8px;
}

.damage-order-setup-section {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .18);
  border-left: 4px solid var(--brand-orange);
  border-radius: 10px;
  overflow: hidden;
}

.damage-order-setup-section.done {
  border-left-color: var(--green);
}

.damage-order-setup-section.paused {
  border-left-color: #a56b00;
}

.damage-order-setup-section > summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 11px;
  grid-template-columns: 30px minmax(220px, 1fr) minmax(180px, 320px) auto 18px;
  list-style: none;
  min-height: 52px;
  padding: 9px 14px 9px 11px;
}

.damage-order-setup-section > summary::after {
  color: var(--brand-blue);
  content: "⌄";
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
  transform: translateY(-2px);
}

.damage-order-setup-section[open] > summary {
  background: #f7faff;
  border-bottom: 1px solid var(--line);
}

.damage-order-setup-section[open] > summary::after {
  transform: rotate(180deg) translateY(-1px);
}

.damage-order-setup-number {
  align-items: center;
  background: #eef5ff;
  border: 1px solid rgba(0, 58, 150, .16);
  border-radius: 999px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.damage-order-setup-title,
.damage-order-setup-value {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.damage-order-setup-title strong,
.damage-order-setup-value strong {
  color: var(--brand-navy);
  overflow-wrap: anywhere;
}

.damage-order-setup-title strong {
  font-size: 14px;
}

.damage-order-setup-title small,
.damage-order-setup-value small {
  color: #52627a;
  font-size: 10px;
}

.damage-order-setup-value {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 6px 8px;
}

.damage-order-setup-value small {
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.damage-order-setup-value strong {
  font-size: 11px;
}

.damage-order-setup-body {
  background: #f7f9fc;
  padding: 11px;
}

.damage-order-create {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .2);
  border-radius: 10px;
  overflow: hidden;
}

.damage-order-create > summary {
  align-items: center;
  background: var(--brand-blue);
  color: #ffffff;
  cursor: pointer;
  display: flex;
  gap: 11px;
  list-style: none;
  min-height: 52px;
  padding: 10px 15px;
}

.damage-order-create > summary::-webkit-details-marker,
.damage-order-setup-section > summary::-webkit-details-marker,
.damage-order-list-entry > summary::-webkit-details-marker,
.damage-order-process-secondary > summary::-webkit-details-marker {
  display: none;
}

.damage-order-create > summary:hover {
  background: #002f7a;
}

.damage-order-create > summary > span:nth-child(2) {
  display: grid;
  gap: 1px;
}

.damage-order-create > summary strong {
  font-size: 14px;
}

.damage-order-create > summary small {
  color: rgba(255, 255, 255, .8);
  font-size: 10px;
}

.damage-order-create > summary::after {
  content: "⌄";
  font-size: 22px;
  font-weight: 700;
  margin-left: 0;
  transform: translateY(-2px);
}

.damage-order-create[open] > summary::after {
  transform: rotate(180deg) translateY(-2px);
}

.damage-order-create-plus {
  align-items: center;
  background: var(--brand-orange);
  border-radius: 999px;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 20px;
  font-weight: 700;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.damage-order-create-type {
  align-items: end;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 7px;
  display: grid;
  gap: 1px;
  margin-left: auto;
  max-width: 300px;
  min-width: 150px;
  padding: 5px 8px;
  text-align: right;
}

.damage-order-create-type small {
  color: rgba(255, 255, 255, .7) !important;
  font-size: 8px !important;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.damage-order-create-type strong {
  color: #ffffff;
  font-size: 11px !important;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.damage-order-create-body {
  background: #f7f9fc;
  border-top: 1px solid var(--line);
  display: grid;
  gap: 9px;
  padding: 11px;
}

.damage-order-type-workspace {
  align-items: stretch;
  display: grid;
  gap: 9px;
  grid-template-columns: minmax(280px, .82fr) minmax(520px, 1.45fr);
  scroll-margin-top: 112px;
}

.damage-order-type-ai,
.damage-order-type-ai .damage-type-ai-suggestion {
  min-width: 0;
}

.damage-order-type-ai .damage-type-ai-suggestion {
  box-sizing: border-box;
  height: 100%;
}

.damage-order-type-ai .damage-type-ai-disclaimer {
  border-top: 1px solid rgba(92, 56, 180, .14);
  padding-top: 4px;
}

.damage-order-type-form {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .16);
  border-left: 4px solid var(--brand-orange);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  padding: 10px 11px;
}

.damage-order-type-form > header {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.damage-order-type-form > header > div {
  display: grid;
  gap: 2px;
}

.damage-order-type-form > header span {
  color: var(--brand-blue);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.damage-order-type-form > header strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.damage-order-type-form > header p,
.damage-order-type-empty p {
  color: #52627a;
  font-size: 10px;
  line-height: 1.35;
  margin: 0;
}

.damage-order-type-fields {
  align-items: end;
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
}

.damage-order-type-fields label {
  color: #52627a;
  display: grid;
  font-size: 9px;
  font-weight: 800;
  gap: 3px;
  min-width: 0;
}

.damage-order-type-fields select {
  min-height: 34px;
  min-width: 0;
  width: 100%;
}

.damage-order-type-fields .button {
  min-height: 34px;
  white-space: nowrap;
}

.damage-order-type-empty {
  background: #fff6e8;
  border: 1px solid rgba(240, 125, 0, .22);
  border-radius: 8px;
  display: grid;
  gap: 2px;
  padding: 10px;
}

.damage-order-type-empty strong {
  color: #8a4d00;
  font-size: 12px;
}

.damage-order-steering {
  background: #ffffff;
  border: 1px solid rgba(240, 125, 0, .26);
  border-left: 4px solid var(--brand-orange);
  border-radius: 8px;
  display: grid;
  gap: 9px;
  padding: 10px 11px;
  scroll-margin-top: 112px;
}

.damage-order-steering.done {
  border-color: rgba(31, 143, 83, .28);
  border-left-color: var(--green);
}

.damage-order-steering.paused {
  border-left-color: #a56b00;
}

.damage-order-steering > header {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.damage-order-steering > header > div {
  display: grid;
  gap: 2px;
}

.damage-order-steering > header span:first-child {
  color: var(--brand-blue);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.damage-order-steering > header strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.damage-order-steering > header p,
.damage-order-steering-form > p {
  color: #52627a;
  font-size: 10px;
  line-height: 1.35;
  margin: 0;
}

.damage-order-steering-form {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 6px;
  padding-top: 8px;
}

.damage-order-steering-fields {
  align-items: end;
  display: grid;
  gap: 7px;
  grid-template-columns: minmax(190px, 1fr) minmax(160px, .72fr) minmax(190px, .85fr) minmax(230px, 1.25fr) auto;
}

.damage-order-steering-fields label {
  color: #52627a;
  display: grid;
  font-size: 9px;
  font-weight: 800;
  gap: 3px;
  min-width: 0;
}

.damage-order-steering-fields select,
.damage-order-steering-fields input,
.damage-order-steering-fields textarea {
  min-height: 34px;
  min-width: 0;
  width: 100%;
}

.damage-order-steering-fields textarea {
  height: 34px;
  min-height: 34px;
  resize: vertical;
}

.damage-order-steering-fields .button {
  min-height: 34px;
  white-space: nowrap;
}

.damage-order-create-readiness {
  border: 1px solid;
  border-left-width: 4px;
  border-radius: 7px;
  display: grid;
  gap: 2px;
  padding: 8px 10px;
}

.damage-order-create-readiness span {
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}

.damage-order-create-readiness strong {
  font-size: 11px;
  line-height: 1.35;
}

.damage-order-create-readiness.is-blocked {
  background: #fff6e8;
  border-color: rgba(240, 125, 0, .28);
  color: #8a4d00;
}

.damage-order-create-readiness.is-ready {
  background: #effaf4;
  border-color: rgba(31, 143, 83, .28);
  color: #176c42;
}

.damage-order-create-grid {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.damage-order-create-option {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  min-width: 0;
  padding: 10px;
}

.damage-order-create-option > div:first-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.damage-order-requirement {
  border: 1px solid rgba(82, 98, 122, .22);
  border-radius: 999px;
  color: #52627a;
  font-size: 9px;
  font-weight: 800;
  justify-self: start;
  letter-spacing: .04em;
  line-height: 1;
  padding: 3px 6px;
  text-transform: uppercase;
}

.damage-order-requirement.required {
  background: #fff1e2;
  border-color: rgba(240, 125, 0, .32);
  color: #9a4e00;
}

.damage-order-requirement.recommended {
  background: #edf4ff;
  border-color: rgba(0, 58, 150, .24);
  color: var(--brand-blue);
}

.damage-order-create-option strong {
  color: var(--brand-navy);
  font-size: 12px;
  line-height: 1.3;
}

.damage-order-create-option p,
.damage-order-create-blocked {
  color: #52627a;
  font-size: 10px;
  line-height: 1.35;
  margin: 0;
}

.damage-order-create-option .button {
  min-width: 68px;
}

.damage-order-create-blocked {
  background: #fff6e8;
  border: 1px solid rgba(240, 125, 0, .22);
  border-radius: 7px;
  color: #8a4d00;
  font-weight: 700;
  padding: 8px 10px;
}

.damage-order-list-panel {
  display: grid;
  gap: 11px;
  padding: 0;
  scroll-margin-top: 112px;
}

.damage-order-list-head {
  align-items: center;
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 14px 15px 12px;
}

.damage-order-list-head h3 {
  font-size: 18px;
}

.damage-order-list-metrics {
  display: flex;
  flex: 0 0 auto;
  gap: 6px;
}

.damage-order-list-metrics > span {
  background: var(--surface-soft);
  border: 1px solid var(--line);
  border-radius: 7px;
  color: #52627a;
  display: grid;
  font-size: 9px;
  gap: 1px;
  min-width: 76px;
  padding: 6px 8px;
  text-align: center;
}

.damage-order-list-metrics strong {
  color: var(--brand-navy);
  font-size: 16px;
}

.damage-order-search {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  padding: 0 15px;
}

.damage-order-search span {
  color: #52627a;
  font-size: 10px;
  font-weight: 800;
}

.damage-order-search input {
  max-width: 320px;
  min-height: 34px;
  width: 100%;
}

.damage-order-table {
  min-width: 0;
  padding: 0 10px 10px;
}

.damage-order-table-head,
.damage-order-list-row {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(210px, 1.2fr) minmax(170px, .9fr) 92px 145px minmax(170px, .9fr) 112px;
  min-width: 0;
}

.damage-order-table-head {
  color: #52627a;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .055em;
  padding: 0 11px 6px;
  text-transform: uppercase;
}

.damage-order-table-body {
  display: grid;
  gap: 6px;
}

.damage-order-list-row {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--brand-orange);
  border-radius: 8px;
  padding: 10px 11px;
  position: relative;
}

.damage-order-list-row.closed {
  border-left-color: var(--green);
}

.damage-order-list-row.cancelled {
  background: #f8fafc;
  border-left-color: #9aa7b7;
}

.damage-order-list-row > div {
  color: var(--brand-navy);
  font-size: 11px;
  line-height: 1.35;
  min-width: 0;
  overflow-wrap: anywhere;
}

.damage-order-list-main {
  display: grid;
  gap: 2px;
}

.damage-order-list-main > span {
  color: var(--brand-blue);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.damage-order-list-main > strong,
.damage-order-list-recipient > strong,
.damage-order-list-next > strong {
  color: var(--brand-navy);
  font-size: 12px;
}

.damage-order-list-row .badge {
  white-space: normal;
}

.damage-order-list-action {
  justify-self: end;
}

.damage-order-list-action > .button {
  background: #ffffff;
  border-color: var(--brand-blue);
  color: var(--brand-blue);
  min-width: 100px;
}

.damage-order-list-action > .button:hover {
  background: #eef5ff;
}

.damage-order-list-entry {
  display: block;
  min-width: 0;
}

.damage-order-list-entry > summary {
  cursor: pointer;
  list-style: none;
  outline: none;
}

.damage-order-list-entry > summary:focus-visible {
  outline: 2px solid rgba(0, 58, 150, .42);
  outline-offset: 2px;
}

.damage-order-inline-trigger {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--brand-blue);
  border-radius: 6px;
  color: var(--brand-blue);
  display: inline-flex;
  font-size: 10px;
  font-weight: 800;
  gap: 6px;
  justify-content: center;
  min-width: 100px;
  padding: 7px 9px;
  text-align: center;
}

.damage-order-inline-trigger::after {
  content: "⌄";
  font-size: 13px;
  line-height: 1;
  transform: translateY(-1px);
}

.damage-order-list-entry[open] > .damage-order-list-row {
  background: #f7faff;
  border-color: rgba(0, 58, 150, .28);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.damage-order-list-entry[open] .damage-order-inline-trigger {
  background: #eef5ff;
}

.damage-order-list-entry[open] .damage-order-inline-trigger::after {
  transform: rotate(180deg) translateY(1px);
}

.damage-order-inline-detail {
  background: #ffffff;
  border: 1px solid rgba(0, 58, 150, .22);
  border-left: 4px solid var(--brand-blue);
  border-radius: 0 0 8px 8px;
  border-top: 0;
  padding: 12px;
}

.damage-order-inline-detail > div {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.damage-order-inline-detail .workshop-decision-mode {
  margin: 0;
}

.damage-order-inline-detail .actions {
  justify-content: flex-start;
}

.damage-order-list-empty {
  background: #f8fafc;
  border: 1px dashed #b8c4d3;
  border-radius: 8px;
  display: grid;
  gap: 3px;
  padding: 20px;
  text-align: center;
}

.damage-order-list-empty[hidden] {
  display: none;
}

.damage-order-list-empty strong {
  color: var(--brand-navy);
  font-size: 13px;
}

.damage-order-list-empty p {
  color: #52627a;
  font-size: 11px;
  margin: 0;
}

.process-accounting-handoff.compact {
  padding-block: 10px;
}

.damage-order-process-secondary {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 9px;
  overflow: hidden;
}

.damage-order-process-secondary > summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  list-style: none;
  min-height: 48px;
  padding: 9px 13px;
}

.damage-order-process-secondary > summary > span:first-child {
  display: grid;
  gap: 2px;
}

.damage-order-process-secondary > summary strong {
  color: var(--brand-navy);
  font-size: 12px;
}

.damage-order-process-secondary > summary small {
  color: #52627a;
  font-size: 10px;
}

.damage-order-process-secondary[open] > summary {
  background: #f5f8fc;
  border-bottom: 1px solid var(--line);
}

.damage-order-process-secondary-body {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .75fr);
  padding: 11px;
}

.damage-order-process-secondary-body > .panel,
.damage-order-process-secondary-body > aside > * {
  margin: 0;
}

@media (max-width: 1500px) {
  .process-ops-page-head {
    align-items: stretch;
    flex-direction: column;
  }

  .process-ops-page-head nav {
    align-self: flex-start;
  }

  .process-ops-command-grid,
  .process-ops-workbench {
    grid-template-columns: 1fr;
  }

  .process-order-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .process-order-facts,
  .process-order-actions {
    grid-column: 1 / -1;
  }

  .process-order-actions {
    justify-content: flex-start;
  }

  .damage-order-table-head,
  .damage-order-list-row {
    grid-template-columns: minmax(190px, 1.15fr) minmax(150px, .9fr) 88px 130px minmax(150px, .9fr) 108px;
  }

  .damage-order-process-secondary-body {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1180px) {
  .process-ops-parallel .process-parallel-action-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .process-order-head {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .process-order-summary {
    grid-column: 2;
  }

  .damage-order-create-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .damage-order-type-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .damage-order-type-workspace {
    grid-template-columns: 1fr;
  }

  .damage-order-steering-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .damage-order-steering-note {
    grid-column: 1 / -1;
  }

  .damage-order-table-head {
    display: none;
  }

  .damage-order-list-row {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(120px, .7fr);
  }

  .damage-order-list-row > div::before {
    color: #52627a;
    content: attr(data-label);
    display: block;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .05em;
    margin-bottom: 2px;
    text-transform: uppercase;
  }

  .damage-order-list-main::before {
    display: none !important;
  }

  .damage-order-list-action {
    justify-self: stretch;
  }
}

@media (max-width: 760px) {
  .process-ops-page-head nav,
  .process-order-details > header,
  .process-accounting-handoff,
  .process-ops-parallel-card footer {
    align-items: stretch;
    flex-direction: column;
  }

  .process-ops-page-head nav a,
  .process-ops-page-head nav button {
    justify-content: flex-start;
  }

  .process-ops-command-head,
  .process-parallel-actions-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .process-tab-next-card.process-ops-leading,
  .process-ops-metrics,
  .process-ops-parallel .process-parallel-action-grid,
  .process-order-facts {
    grid-template-columns: 1fr;
  }

  .process-ops-progress {
    grid-column: auto;
  }

  .process-ops-section-head,
  .process-order-head {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .process-order-summary {
    flex-wrap: wrap;
    grid-column: 1 / -1;
  }

  .process-order-facts,
  .process-order-actions {
    grid-column: auto;
  }

  .damage-order-management-head,
  .damage-order-list-head,
  .damage-order-list-metrics,
  .damage-order-create-option,
  .damage-order-search {
    align-items: stretch;
    flex-direction: column;
  }

  .damage-order-management-count {
    align-self: flex-start;
  }

  .damage-order-create > summary {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .damage-order-setup-section > summary {
    align-items: start;
    grid-template-columns: 30px minmax(0, 1fr) auto 18px;
  }

  .damage-order-setup-value {
    grid-column: 2 / -1;
    grid-row: 2;
  }

  .damage-order-create-type {
    margin-left: 41px;
    max-width: none;
    text-align: left;
    width: calc(100% - 41px);
  }

  .damage-order-create-grid,
  .damage-order-type-fields,
  .damage-order-steering-fields,
  .damage-order-list-row {
    grid-template-columns: 1fr;
  }

  .damage-order-type-form > header {
    align-items: flex-start;
    flex-direction: column;
  }

  .damage-order-steering > header {
    align-items: flex-start;
  }

  .damage-order-steering-note {
    grid-column: auto;
  }

  .damage-order-list-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
  }

  .damage-order-search input {
    max-width: none;
  }

  .damage-order-list-action {
    justify-self: stretch;
  }

  .damage-order-list-action .button,
  .damage-order-inline-trigger {
    width: 100%;
  }

  .damage-order-process-secondary > summary,
  .process-accounting-handoff.compact {
    align-items: stretch;
    flex-direction: column;
  }
}

@media (min-width: 1501px) {
  .layout.damage-focus-layout .damage-cockpit-grid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .layout.damage-focus-layout .damage-cockpit-damage,
  .layout.damage-focus-layout .damage-cockpit-repair,
  .layout.damage-focus-layout .damage-cockpit-accounting {
    grid-column: span 4;
  }

  .layout.damage-focus-layout .damage-cockpit-orders {
    grid-column: span 5;
  }

  .layout.damage-focus-layout .damage-cockpit-blockers {
    grid-column: span 7;
  }

  .layout.damage-focus-layout .damage-cockpit-documents {
    grid-column: span 7;
  }

  .layout.damage-focus-layout .damage-cockpit-vehicle {
    grid-column: span 5;
  }
}

@media (min-width: 1181px) {
  .layout.damage-focus-layout .topbar {
    gap: 12px;
    grid-template-columns: minmax(220px, 1fr) minmax(280px, 360px) auto;
    min-height: 56px;
    padding: 7px 13px;
  }

  .layout.damage-focus-layout .topbar h1 {
    font-size: 18px;
  }

  .layout.damage-focus-layout .topbar p {
    font-size: 10px;
    margin-top: 1px;
  }

  .layout.damage-focus-layout .global-search input {
    min-height: 34px;
  }

  .layout.damage-focus-layout .content {
    gap: 11px;
    padding: 11px 13px 15px;
  }

  .layout.damage-focus-layout .damage-target-layout,
  .layout.damage-focus-layout .damage-detail-tabs-shell,
  .layout.damage-focus-layout .damage-detail-tab-content,
  .layout.damage-focus-layout .damage-detail-tab-panel {
    gap: 8px;
  }

  .layout.damage-focus-layout .damage-detail-tabs {
    border-radius: 7px;
    gap: 3px;
    padding: 3px;
    top: 61px;
  }

  .layout.damage-focus-layout .damage-detail-tabs .tab {
    min-height: 34px;
    padding: 5px 10px;
  }

  .layout.damage-focus-layout .damage-detail-tabs .tab strong {
    font-size: 11px;
  }

  .layout.damage-focus-layout .damage-detail-tabs .tab small {
    display: none;
  }

  .layout.damage-focus-layout .damage-cockpit-order-row small {
    display: none;
  }
}

@media (min-width: 981px) and (max-width: 1500px) {
  .layout.damage-focus-layout .damage-cockpit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .layout.damage-focus-layout .damage-cockpit-documents,
  .layout.damage-focus-layout .damage-cockpit-vehicle {
    grid-column: 1 / -1;
  }
}

@media (max-width: 1180px) {
  .damage-dashboard-foundation {
    grid-template-columns: 1fr;
  }

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

  .damage-cockpit-grid .damage-cockpit-documents {
    grid-column: 1 / -1;
  }

  .damage-cockpit-layout {
    grid-template-columns: 1fr;
  }

  .damage-cockpit-rail {
    align-items: start;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .handler-dashboard-layout {
    grid-template-columns: 1fr;
  }

  .handler-metric-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .timeline-detailed {
    grid-template-columns: 1fr;
  }

  .timeline-detail-stack {
    position: static;
  }

  .order-tab-status-grid,
  .dashboard-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .layout {
    grid-template-columns: 1fr;
  }

  .sidebar {
    align-self: stretch;
    box-shadow: 0 12px 26px rgba(0, 29, 75, .16);
    gap: 12px;
    height: auto;
    max-height: 100vh;
    overflow: hidden;
    padding: 12px 14px;
    position: sticky;
    top: 0;
    z-index: 40;
  }

  .sidebar .brand {
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 12px;
  }

  .sidebar .brand-logo-card {
    padding: 6px 8px;
    width: auto;
  }

  .sidebar .brand-logo {
    width: min(132px, 34vw);
  }

  .mobile-nav-toggle {
    display: inline-flex;
    justify-self: end;
  }

  .sidebar .nav,
  .sidebar .sidebar-footer {
    display: none;
  }

  .layout.nav-open .sidebar {
    overflow-y: auto;
  }

  .layout.nav-open .sidebar .nav,
  .layout.nav-open .sidebar .sidebar-footer {
    display: grid;
  }

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

  .nav-group {
    grid-column: 1 / -1;
  }

  .toast.has-chatagent {
    bottom: calc(92px + env(safe-area-inset-bottom, 0px));
    right: 22px;
  }

  .toast.has-open-chatagent {
    bottom: auto;
    top: calc(22px + env(safe-area-inset-top, 0px));
  }

  .grid.three,
  .grid.four,
  .grid.five,
  .grid.six,
  .dashboard-priority-grid,
  .dashboard-work-grid,
  .dashboard-stage-grid,
  .system-cockpit-grid,
  .reporting-signal-grid,
  .accounting-cockpit,
  .accounting-aging,
  .accounting-detail-grid,
  .accounting-manual-totals,
  .accounting-position-row,
  .process-gate-grid,
  .process-checklist,
  .import-method-grid,
  .damage-summary-grid,
  .damage-filter-grid,
  .audit-filter-grid,
  .work-item-filter-grid,
  .damage-case-link,
  .case-overview-main,
  .case-command-row,
  .case-overview-header.compact,
  .case-workbench-grid,
  .case-process-workbench,
  .case-process-tool-grid,
  .process-tab-cockpit,
  .damage-target-document-mail-grid,
  .damage-tab-overview-grid,
  .damage-tab-cost-grid,
  .damage-tab-orders-grid,
  .order-tab-status-grid,
  .dashboard-summary-grid,
  .workspace-mail-layout,
  .communication-outlook,
  .document-preview-layout,
  .process-integrated-grid,
  .process-workshop-meta,
  .process-quality-target-grid,
  .case-detail-two,
  .case-document-grid,
  .case-stage-map,
  .guided-process-summary,
  .guided-process-cards,
  .routing-decision-grid,
  .assignment-process-list,
  .guided-next-action,
  .master-insurer-grid,
  .follow-up-board,
  .communication-split,
  .case-bottom,
  .chatagent-workspace,
  .hero-band {
    grid-template-columns: 1fr;
  }

  .damage-cockpit-case-head .case-overview-header.compact,
  .damage-cockpit-rail {
    grid-template-columns: 1fr;
  }

  .damage-cockpit-fact-grid,
  .damage-cockpit-money-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .damage-cockpit-titlebar {
    align-items: flex-start;
    flex-direction: column;
  }

  .damage-cockpit-responsibilities {
    max-width: none;
    min-width: 0;
    width: 100%;
  }

  .process-tab-side-stack {
    position: static;
  }

  .order-detail-group.primary {
    grid-row: auto;
  }

  .process-tab-next-card {
    grid-template-columns: 1fr;
  }

  .case-closure-action {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .case-closure-action .button {
    width: 100%;
  }

  .communication-outlook {
    height: auto;
    min-height: 0;
  }

  .mail-program-panel .communication-outlook {
    height: auto;
  }

  .document-preview-reader {
    position: static;
  }

  .communication-outlook-list {
    border-bottom: 1px solid var(--line);
    border-right: 0;
    max-height: 360px;
  }

  .case-detail-nav {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    position: static;
  }

  .damage-detail-tabs {
    position: static;
  }

  .case-process-timeline {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .damage-target-main-section .case-process-timeline::before {
    display: none;
  }

  .damage-target-main-section .case-process-step {
    background: #ffffff;
    border-top: 1px solid var(--line);
    padding: 9px 8px;
  }

  .case-process-step + .case-process-step {
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .case-process-side {
    position: static;
  }

  .process-integrated-head,
  .process-integrated-card header {
    display: grid;
    grid-template-columns: 1fr;
  }

  .process-deferral-summary,
  .process-workshop-order > summary,
  .process-launch-fold > summary {
    grid-template-columns: minmax(0, 1fr);
  }

  .damage-target-section-heading {
    gap: 8px;
  }

  .damage-target-letter {
    height: 28px;
    width: 28px;
  }

  .case-support-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .process-head .case-brief-grid {
    border: 0;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }

  .process-head .case-brief-grid div,
  .process-head .case-brief-grid div:last-child {
    border: 1px solid var(--line);
    border-radius: 8px;
    min-height: auto;
  }

  .communication-feed-list {
    border-bottom: 1px solid var(--line);
    border-right: 0;
    max-height: 300px;
  }

  .process-document-sidebar {
    position: static;
  }

  .damage-search-field {
    grid-column: auto;
  }

  .audit-search-field {
    grid-column: auto;
  }

  .work-item-filter-grid label:first-child {
    grid-column: auto;
  }

  .case-stage {
    border-bottom: 1px solid var(--line);
    border-right: 0;
    grid-template-columns: auto minmax(0, 1fr);
    min-height: auto;
  }

  .case-stage:last-child {
    border-bottom: 0;
  }

  .process-workflow-step summary {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .process-workflow-step summary .process-state-pill {
    grid-column: 2 / 4;
    grid-row: 2;
    justify-self: start;
  }

  .case-secondary-details > summary {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .case-secondary-details > summary .pill {
    grid-column: 1 / 3;
    grid-row: 2;
    justify-self: start;
  }

  .process-workflow-step summary::after {
    grid-column: 3;
    grid-row: 1;
  }

  .process-workflow-body {
    padding-left: 14px;
  }

  .document-detail-layout,
  .document-detail-toolbar {
    grid-template-columns: 1fr;
  }

  .document-detail-toolbar > strong {
    padding-bottom: 0;
  }

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

  .document-detail-nav > strong {
    grid-column: 1 / -1;
  }

  .document-photo-strip-small {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .document-list-head {
    display: none;
  }

  .document-list-row {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .document-list-date,
  .document-list-status,
  .document-list-row .document-card-actions {
    grid-column: 2;
    justify-content: flex-start;
  }

  .hero-panel {
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .topbar {
    align-items: stretch;
    grid-template-columns: 1fr;
    position: static;
  }

  .topbar-actions,
  .topbar-status {
    justify-content: flex-start;
  }
}

@media (max-width: 560px) {
  .damage-cockpit-case-facts > summary {
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .damage-cockpit-grid,
  .damage-cockpit-case-head .case-brief-grid {
    grid-template-columns: 1fr;
  }

  .damage-cockpit-grid .damage-cockpit-documents {
    grid-column: auto;
  }

  .damage-cockpit-documents-layout,
  .damage-cockpit-document-list,
  .damage-cockpit-kv-list.two-column {
    grid-template-columns: 1fr;
  }

  .damage-cockpit-kv-list.two-column > div:nth-last-child(2) {
    border-bottom: 1px solid rgba(216, 225, 235, .72);
  }

  .damage-cockpit-next-meta,
  .damage-cockpit-fact-grid,
  .damage-cockpit-money-grid,
  .damage-cockpit-document-metrics {
    grid-template-columns: 1fr;
  }

  .damage-cockpit-order-row {
    align-items: start;
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .damage-cockpit-order-row .process-state-pill {
    grid-column: 1 / 3;
    justify-self: start;
  }

  .damage-cockpit-export-actions > .actions {
    min-width: min(310px, calc(100vw - 48px));
  }

  .document-detail-nav,
  .document-photo-strip-small,
  .document-preview-meta,
  .order-tab-status-grid,
  .process-email-stats {
    grid-template-columns: 1fr;
  }

  .customer-insurance-contract-card header {
    display: grid;
  }

  .customer-insurance-contract-meta {
    grid-template-columns: 1fr;
  }

  .sidebar {
    padding-bottom: 12px;
  }

  .layout.nav-open .sidebar {
    padding-bottom: 92px;
  }

  .nav {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .content,
  .topbar {
    padding: 18px;
  }

  .topbar {
    gap: 12px;
  }

  .topbar-actions,
  .topbar-actions .button,
  .global-search {
    width: 100%;
  }

  .damage-detail-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }

  .damage-detail-tabs .tab {
    flex: 0 0 min(72vw, 190px);
    scroll-snap-align: start;
  }

  .case-detail-nav,
  .case-process-timeline,
  .case-support-nav,
  .case-brief-grid,
  .case-facts.compact {
    grid-template-columns: 1fr;
  }

  .process-head .case-brief-grid {
    grid-template-columns: 1fr;
  }

  .case-process-step + .case-process-step,
  .case-support-nav a + a {
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .case-detail-area-header,
  .case-overview-header,
  .case-overview-details > summary,
  .case-secondary-details > summary,
  .guided-process-more > summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .dashboard-command {
    align-items: flex-start;
    flex-direction: column;
  }

  .dashboard-details > summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .dashboard-details > summary small {
    text-align: left;
  }

  .dashboard-work-details dl div {
    grid-template-columns: 1fr;
  }

  .dashboard-command-actions,
  .dashboard-command-actions .button {
    width: 100%;
  }

  .grid.two,
  .form-grid,
  .form-grid.three,
  .form-grid.four,
  .chatagent-form,
  .document-upload-form .document-upload-grid,
  .inline-attachment-upload .document-upload-grid,
  .document-type-picker,
  .document-filter-bar,
  .document-sidebar-actions,
  .email-attachment-list,
  .accounting-dialog-summary,
  .settlement-reconciliation,
  .process-quality-summary,
  .workshop-process-hero .process-steps.compact,
  .mail-viewer-grid,
  .unassigned-email-item,
  .deferred-dashboard-item,
  .clarification-case-card header,
  .clarification-case-facts,
  .deferral-current,
  .damage-overview-title,
  .damage-filter-head,
  .master-vehicle-filter-grid,
  .case-overview-header,
  .document-card {
    grid-template-columns: 1fr;
  }

  .workshop-pickup-source-field,
  .workshop-delivery-address-field {
    grid-column: 1 / -1;
  }

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

  .process-workflow-actions,
  .process-workflow-actions .button {
    width: 100%;
  }

  .process-email-stats {
    grid-template-columns: 1fr;
  }

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

  .workspace-email-redirect .button {
    justify-content: center;
    width: 100%;
  }

  .accounting-action-stack,
  .accounting-facts div {
    grid-template-columns: 1fr;
  }

  .accounting-details summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .panel-header {
    flex-direction: column;
  }

  .panel-header .actions {
    width: 100%;
  }

  .unassigned-email-message-head,
  .unassigned-email-selected {
    align-items: stretch;
    flex-direction: column;
  }

  .unassigned-email-match-facts {
    grid-template-columns: 1fr;
  }

  .chatagent-message {
    max-width: 100%;
  }

  .chatagent-floating {
    bottom: 14px;
    left: 14px;
    right: 14px;
  }

  .chatagent-floating:not(.open) {
    left: auto;
    width: auto;
  }

  .toast {
    left: 14px;
    max-width: none;
    right: 14px;
  }

  .toast.has-chatagent {
    bottom: calc(84px + env(safe-area-inset-bottom, 0px));
    right: 14px;
  }

  .toast.has-open-chatagent {
    bottom: auto;
    top: calc(14px + env(safe-area-inset-top, 0px));
  }

  .chatagent-fab,
  .chatagent-window {
    width: 100%;
  }

  .chatagent-floating:not(.open) .chatagent-fab {
    justify-content: center;
    min-height: 46px;
    max-width: 46px;
    padding: 0;
    width: 46px;
  }

  .chatagent-floating:not(.open) .chatagent-fab span {
    background: transparent;
    height: 38px;
    width: 38px;
  }

  .chatagent-floating:not(.open) .chatagent-fab small {
    display: none;
  }

  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) {
    left: auto;
    right: 14px;
    width: auto;
  }

  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) .chatagent-fab {
    justify-content: center;
    min-height: 46px;
    max-width: 46px;
    padding: 0;
    width: 46px;
  }

  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) .chatagent-fab span {
    background: transparent;
    height: 38px;
    width: 38px;
  }

  .app-shell:has(.damage-target-layout) .chatagent-floating:not(.open) .chatagent-fab small {
    display: none;
  }

  .chatagent-window {
    max-height: calc(100vh - 92px);
  }

  .chatagent-window-form {
    grid-template-columns: 1fr;
  }

  .chatagent-window-tools {
    flex-direction: column;
  }

  .damage-overview-title,
  .damage-filter-head,
  .reporting-hero,
  .reporting-block-title,
  .case-overview-header {
    display: grid;
  }

  .reporting-hero-pills {
    justify-content: flex-start;
  }

  .reporting-bar-row {
    grid-template-columns: 1fr;
  }

  .reporting-total-line {
    align-items: flex-start;
    flex-direction: column;
  }

  .case-status-stack {
    align-items: start;
    justify-items: start;
  }

  .workspace-note-details summary,
  .workspace-email-details summary,
  .document-upload-details summary,
  .document-section.clean summary {
    align-items: flex-start;
  }

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

  .public-nav {
    align-items: flex-start;
    flex-direction: column;
  }

  .public-nav .brand {
    grid-template-columns: minmax(0, 1fr);
    max-width: 100%;
  }

  .public-nav .actions,
  .public-nav .actions .button {
    width: 100%;
  }

  .public-nav .language-switcher {
    width: 100%;
  }

  .hero-copy h1 {
    font-size: 28px;
  }

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

  .timeline-item,
  .role-model-list .timeline-item {
    grid-template-columns: 1fr;
  }

  .handler-metric-strip {
    grid-template-columns: 1fr;
  }

  .handler-team-copy {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .handler-task-card header,
  .handler-task-card footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .handler-task-card footer .actions,
  .handler-task-card footer .button {
    width: 100%;
  }

  .handler-task-card footer .button {
    justify-content: center;
  }

  .timeline-insights,
  .timeline-phase-board {
    grid-template-columns: 1fr;
  }

  .timeline-list::before,
  .timeline-entry::before {
    display: none;
  }

  .timeline-entry {
    grid-template-columns: 1fr;
  }

  .timeline-entry-delay {
    align-items: start;
    display: flex;
    gap: 8px;
  }
}

@media (max-width: 980px) {
  .partner-coverage-layout {
    grid-template-columns: 1fr;
  }

  .partner-coverage-map,
  .partner-coverage-map svg {
    min-height: 360px;
  }
}

@media (max-width: 560px) {
  .partner-coverage-stats,
  .partner-coverage-white-spots ul,
  .partner-coverage-regions {
    grid-template-columns: 1fr;
  }

  .partner-coverage-map,
  .partner-coverage-map svg {
    min-height: 320px;
  }
}

@media (max-width: 1180px) {
  .dashboard-work-table {
    grid-template-columns: 120px minmax(0, 1.8fr) minmax(140px, 1fr);
  }

  .dashboard-work-table-head span:last-child {
    display: none;
  }

  .dashboard-work-row-actions {
    grid-column: 2 / -1;
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .global-search-popover {
    min-width: 0;
  }

  .dashboard-work-table-head {
    display: none;
  }

  .dashboard-work-table {
    grid-template-columns: minmax(0, 1fr);
  }

  .dashboard-work-row {
    align-items: start;
  }

  .dashboard-work-row-state {
    display: flex;
    flex-wrap: wrap;
  }

  .dashboard-work-row-actions {
    grid-column: auto;
  }

  .dashboard-work-bundle li {
    grid-template-columns: 1fr;
  }

  .dashboard-work-bundle li small {
    grid-column: auto;
  }

  .damage-filter-summary {
    align-items: flex-start;
    grid-template-columns: 1fr;
  }

  .filter-chip-row {
    align-items: flex-start;
  }

  .case-sticky-workhead {
    align-items: flex-start;
    display: grid;
    top: 10px;
  }

  .case-sticky-workhead-actions {
    justify-content: flex-start;
  }
}

/* Damage overview shares the task workspace heading, filters and pagination. */
.damage-list-filters :is(label, input, select) {
  min-width: 0;
}

.damage-list-advanced > .damage-list-extra-content {
  grid-template-columns: minmax(0, 1fr);
}

.damage-list-secondary-filters {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.damage-advanced-filter-list {
  display: grid;
  gap: 8px;
}

.damage-advanced-filter-list:empty {
  display: none;
}

.damage-advanced-filter-row {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 1fr minmax(220px, 2fr) auto;
}

.damage-list-filter-footer {
  grid-column: 1 / -1;
}

.damage-list-filter-chips {
  flex: 1;
}

.damage-list-filter-chips > button {
  align-items: center;
  background: #edf3fa;
  border: 1px solid #d9e4f1;
  border-radius: 999px;
  color: #243b53;
  cursor: pointer;
  display: inline-flex;
  font-size: 12px;
  gap: 6px;
  padding: 6px 9px;
}

.damage-table-scroll {
  border: 1px solid #dce3eb;
  border-radius: 8px;
  overflow: auto;
  width: 100%;
}

.damage-overview-table {
  border-collapse: separate;
  border-spacing: 0;
  min-width: 1500px;
  table-layout: fixed;
  width: 100%;
}

.damage-overview-table th,
.damage-overview-table td {
  border-bottom: 1px solid var(--line);
  overflow: hidden;
  padding: 10px 12px;
  text-align: left;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}

.damage-overview-table th {
  background: #f5f8fc;
  color: #526579;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .035em;
  position: sticky;
  text-transform: uppercase;
  top: 0;
  z-index: 3;
}

.damage-overview-table th:first-child,
.damage-overview-table td:first-child {
  left: 0;
  position: sticky;
}

.damage-overview-table th:nth-child(2),
.damage-overview-table td:nth-child(2) {
  box-shadow: 8px 0 12px -12px rgba(28, 47, 69, .45);
  left: var(--damage-first-column-width, 118px);
  position: sticky;
}

.damage-overview-table th:first-child,
.damage-overview-table th:nth-child(2) {
  background: #f5f8fc;
  z-index: 5;
}

.damage-overview-table td:first-child,
.damage-overview-table td:nth-child(2) {
  background: #fff;
  z-index: 2;
}

.damage-overview-table tbody tr:hover td:first-child,
.damage-overview-table tbody tr:hover td:nth-child(2),
.damage-overview-table tbody tr:focus td:first-child,
.damage-overview-table tbody tr:focus td:nth-child(2) {
  background: #f7fbff;
}

.damage-overview-table th button {
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  font: inherit;
  padding: 0;
  text-transform: inherit;
}

.damage-overview-table tbody tr {
  cursor: pointer;
}

.damage-overview-table tbody tr:hover,
.damage-overview-table tbody tr:focus {
  background: #f7fbff;
  outline: none;
}

.damage-overview-table .numeric {
  text-align: right;
}

.damage-number-link {
  color: var(--primary);
  font-weight: 800;
}

.damage-work-area {
  color: var(--muted);
  display: block;
  font-size: 11px;
  margin-top: 2px;
}

.damage-status-hint {
  display: block;
  white-space: normal;
  overflow-wrap: anywhere;
}

.damage-overview-table .damage-cell-status,
.damage-overview-table .damage-cell-statusHint,
.damage-overview-table .damage-cell-liesWith,
.damage-overview-table .damage-cell-status .status {
  white-space: normal;
  overflow-wrap: anywhere;
  text-overflow: clip;
}

.damage-overview-table .damage-cell-status .status {
  max-width: 100%;
  line-height: 1.35;
}

@media (max-width: 700px) {
  .damage-overview-table th:first-child,
  .damage-overview-table td:first-child,
  .damage-overview-table th:nth-child(2),
  .damage-overview-table td:nth-child(2) {
    position: static;
  }
}

.damage-money {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}

.damage-column-manager,
.damage-export-menu {
  position: relative;
}

.damage-column-manager > summary,
.damage-export-menu > summary {
  list-style: none;
}

.damage-column-popover,
.damage-export-menu > div {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 14px;
  box-shadow: 0 18px 45px rgba(28, 47, 69, .18);
  display: grid;
  gap: 12px;
  max-height: min(70vh, 680px);
  min-width: 440px;
  overflow: auto;
  padding: 16px;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 20;
}

.damage-export-menu > div {
  min-width: 210px;
}

.damage-export-menu > div a {
  border-radius: 8px;
  color: var(--text);
  padding: 8px;
}

.damage-export-menu > div a:hover {
  background: #f2f6fa;
}

.damage-column-manager-head,
.damage-column-manager-head small {
  display: grid;
  gap: 3px;
}

.damage-column-manager-list {
  display: grid;
  gap: 5px;
}

.damage-column-manager-row {
  align-items: center;
  border-bottom: 1px solid var(--border);
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(160px, 1fr) 110px auto;
  padding: 7px 0;
}

.damage-column-width {
  align-items: center;
  display: grid;
  font-size: 10px;
  gap: 2px;
  grid-template-columns: auto 1fr;
}

.damage-column-width input {
  min-width: 0;
  padding: 5px;
}

.damage-column-order {
  display: flex;
  gap: 3px;
}

.damage-column-order button {
  background: #f2f6fa;
  border: 1px solid var(--border);
  border-radius: 6px;
  cursor: pointer;
  padding: 4px 7px;
}

.damage-list-pagination {
  min-height: 0;
}

.damage-list-pagination small {
  display: block;
  color: var(--muted);
  font-size: 11px;
  margin-top: 3px;
}

.damage-list-pagination label {
  align-items: center;
  display: flex;
  font-size: 12px;
  gap: 8px;
}

@media (min-width: 761px) and (max-width: 1100px) {
  .damage-list-workspace .damage-list-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .damage-list-secondary-filters,
  .damage-advanced-filter-row {
    grid-template-columns: 1fr;
  }

  .damage-list-pagination > div {
    flex-wrap: wrap;
  }

  .damage-column-popover {
    max-width: calc(100vw - 32px);
    min-width: min(440px, calc(100vw - 32px));
    position: fixed;
    right: 16px;
    top: 100px;
  }
}
.letterhead-grid { display: grid; grid-template-columns: minmax(260px, 0.8fr) minmax(340px, 1.2fr); gap: 20px; align-items: start; }
.letterhead-grid .panel { min-width: 0; }
.letterhead-grid strong { overflow-wrap: anywhere; }
.letterhead-sheet { margin-top: 20px; padding: 12px; background: #eef1f5; border-radius: 12px; }
.letterhead-sheet img { display: block; width: 100%; max-height: 660px; object-fit: contain; }
.letterhead-preview-pages { margin: 18px 0; padding: 12px; background: #eef1f5; border-radius: 12px; }
.letterhead-preview-pages img { display: block; width: 100%; height: auto; }
.letterhead-preview-pages img + img { margin-top: 12px; }
[data-letterhead-draft] .button { margin-top: 12px; }
@media (max-width: 850px) { .letterhead-grid { grid-template-columns: minmax(0, 1fr); } }

.settlement-workspace, [data-settlement-workspace], [data-accounting-bank-ledger] { min-width: 0; max-width: 100%; }
.settlement-workspace-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 18px; }
.settlement-workspace-header h2 { margin: 5px 0 8px; }
.settlement-workspace-header p { margin: 0; color: var(--muted, #596777); }
.settlement-tabs { display: flex; gap: 4px; overflow-x: auto; border-bottom: 1px solid var(--border, #d9e0e7); margin-bottom: 20px; padding: 4px 0 0; }
.settlement-tabs button { flex: 0 0 auto; appearance: none; border: 0; border-bottom: 3px solid transparent; background: transparent; padding: 13px 16px; color: var(--text, #253248); font: inherit; font-weight: 600; cursor: pointer; }
.settlement-tabs button[aria-selected="true"] { color: var(--primary, #124568); border-bottom-color: var(--primary, #124568); background: #f0f6fa; }
.settlement-tabs button:focus-visible { outline: 2px solid var(--primary, #124568); outline-offset: -3px; }
.settlement-tab-body { display: grid; grid-template-columns: minmax(0, 1fr); min-width: 0; gap: 18px; }
.settlement-panel { min-width: 0; margin: 0; }
.settlement-panel .panel-header { flex-wrap: wrap; gap: 12px; }
.settlement-panel h3 { margin: 0; }
.settlement-panel td { vertical-align: top; }
.settlement-panel td .actions { margin: 0; }
.settlement-panel .button.small { white-space: normal; }
.settlement-panel .table-wrap { min-width: 0; max-width: 100%; overflow-x: auto; }
.settlement-panel .actions, .settlement-workspace-header .actions { min-width: 0; flex-wrap: wrap; }
.settlement-panel .button, .settlement-workspace-header .button { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.damage-detail-tab-panel:has([data-settlement-workspace]) { grid-template-columns: minmax(0, 1fr); }
#damage-tab-panel-costs { grid-template-columns: minmax(0, 1fr); }
#damage-tab-panel-costs > div { min-width: 0; max-width: 100%; }
.settlement-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.settlement-metrics article { padding: 18px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); display: grid; gap: 10px; }
.settlement-metrics span { color: var(--muted, #596777); }
.settlement-metrics strong { font-size: 25px; }
.settlement-status-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.settlement-status-columns > div { display: grid; gap: 10px; justify-items: start; }
.settlement-state { display: inline-block; padding: 4px 9px; border-radius: 6px; font-size: 12px; background: #edf2f6; color: #304558; }
.settlement-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.settlement-facts dt { color: var(--muted, #596777); font-size: 13px; }
.settlement-facts dd { margin: 5px 0; font-weight: 600; }
.settlement-empty { color: var(--muted, #596777); padding: 16px 0; }
.settlement-blockers { padding-left: 22px; line-height: 1.6; }
.settlement-blockers li + li { margin-top: 8px; }
.settlement-form-error { margin: 10px 0; padding: 13px 16px; border: 1px solid #dcaa9c; border-radius: 8px; color: #8d3228; background: #fff5f1; overflow-wrap: anywhere; }
.settlement-form-error:focus { outline: 2px solid #a54130; outline-offset: 2px; }
.settlement-field-error { color: #a0382a; }
.settlement-field [aria-invalid="true"] { border-color: #a0382a; }
.settlement-editor { display: grid; gap: 16px; }
.settlement-editor-fields { border: 0; padding: 0; margin: 0; min-width: 0; display: grid; gap: 16px; }
.settlement-editor-fields fieldset { display: grid; gap: 10px; min-width: 0; padding: 16px; }
.settlement-editor-fields fieldset legend { font-weight: 600; padding: 0 6px; }
.settlement-field { display: grid; gap: 6px; min-width: 0; }
.settlement-field small { font-size: 12px; }
.settlement-check { display: flex; align-items: flex-start; gap: 10px; font-weight: 400; }
.settlement-check input[type="checkbox"] { flex: 0 0 auto; width: 16px; min-height: 16px; height: 16px; margin: 3px 0 0; }
.settlement-dialog-context { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; padding: 14px; border-radius: 8px; background: #f1f5f8; }
.settlement-allocation-line { padding: 14px; border: 1px solid var(--border, #d9e0e7); border-radius: 8px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 12px; align-items: end; }
.settlement-line-total { display: flex; gap: 20px; flex-wrap: wrap; padding: 14px; background: #eef4f7; border-radius: 8px; }
.settlement-unbalanced { color: #9a402b; }
.settlement-callout { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 16px; border-radius: 8px; background: #eff5f9; }
.settlement-callout strong { font-size: 23px; }
.settlement-closure-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.settlement-customer-pdf, .settlement-review-pdf { width: 100%; min-height: 420px; height: 56vh; border: 1px solid var(--border, #d9e0e7); border-radius: 8px; margin: 12px 0; }
.settlement-preview .actions { flex-wrap: wrap; }
@media (max-width: 900px) {
  .settlement-workspace-header { flex-direction: column; }
  .settlement-metrics, .settlement-facts { grid-template-columns: minmax(0, 1fr); }
  .settlement-closure-grid { grid-template-columns: minmax(0, 1fr); }
  .settlement-allocation-line { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .settlement-status-columns, .settlement-allocation-line { grid-template-columns: minmax(0, 1fr); }
  .settlement-tabs button { padding: 11px; }
  .settlement-metrics strong { font-size: 21px; }
  .settlement-callout { align-items: flex-start; flex-direction: column; }
}
.settlement-tax-row { display: grid; grid-template-columns: repeat(4, minmax(110px, 1fr)) auto; align-items: end; gap: 10px; margin-block: 12px; }
@media (max-width: 760px) { .settlement-tax-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Keep conditional review fields inside the existing modal grid. */
.settlement-editor [data-review-rejection] { grid-column: 1 / -1; }
.settlement-editor [data-review-rejection][hidden] { display: none; }

/* Fachkonzept v2: original/contract, allocation and the separate fee remain visible together. */
.modal:has(.settlement-allocation-layout), .modal:has(.settlement-review-layout) { width: min(1640px, 100%); }
.settlement-allocation-layout { display: grid; grid-template-columns: minmax(230px, .85fr) minmax(420px, 1.65fr) minmax(240px, .85fr); gap: 18px; align-items: start; font-family: var(--font-brand); }
.settlement-allocation-layout > *, .settlement-review-layout > * { min-width: 0; }
.settlement-allocation-context, .settlement-allocation-summary { display: grid; gap: 16px; }
.settlement-allocation-layout .settlement-facts { grid-template-columns: minmax(0, 1fr); gap: 10px; }
.settlement-allocation-layout .settlement-contract-context { padding: 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-soft); }
.settlement-allocation-main { padding: 18px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
.settlement-allocation-main > h3 { margin-top: 0; }
.settlement-allocation-main [data-allocation-coverage][hidden] { display: none; }
.settlement-allocation-main .settlement-allocation-line { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.settlement-allocation-layout .actions { flex-wrap: wrap; gap: 8px; }
.settlement-allocation-layout .button { max-width: 100%; white-space: normal; }
.settlement-allocation-layout .settlement-state { margin-block: 10px; }
.settlement-external-info { padding: 16px; margin-block: 16px; border-radius: 8px; background: var(--surface-blue); border: 1px solid var(--line); }
.settlement-review-layout { display: grid; grid-template-columns: minmax(350px, 1fr) minmax(420px, 1.2fr); gap: 22px; align-items: start; }
.settlement-review-layout > aside { position: sticky; top: 0; }
.settlement-review-layout .settlement-review-pdf { height: 65vh; }
.settlement-review-fields { display: grid; gap: 16px; }
.settlement-blockers li > span { display: inline-block; margin-inline: 8px; }
.settlement-billing-layout { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.settlement-billing-layout > * { min-width: 0; }
.settlement-billing-layout .settlement-customer-pdf { margin-bottom: 0; }
@media (max-width: 1250px) {
  .settlement-allocation-layout { grid-template-columns: minmax(230px, .85fr) minmax(0, 1.65fr); }
  .settlement-allocation-summary { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .settlement-allocation-layout, .settlement-review-layout, .settlement-billing-layout { grid-template-columns: minmax(0, 1fr); }
  .settlement-review-layout > aside { position: static; }
  .settlement-allocation-summary { grid-template-columns: minmax(0, 1fr); }
  .settlement-allocation-main { padding: 12px; }
}
@media (max-width: 560px) {
  .settlement-allocation-main .settlement-allocation-line { grid-template-columns: minmax(0, 1fr); }
}

/* Document references: embedded workspaces retain the case header and tabs. */
.settlement-workspace { font-family: var(--font-brand); font-size: 14px; }
.settlement-tabs { margin: 0 0 18px; padding: 0; background: var(--surface-soft); border: 0; border-radius: 8px; }
.settlement-tabs button { font-size: 13px; padding: 11px 18px; }
.settlement-tabs button[aria-selected="true"] { color: var(--brand-blue); border-bottom-color: var(--brand-blue); background: transparent; }
.settlement-screen-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin: 2px 0 18px; }
.settlement-screen-heading h2 { margin: 0 0 6px; color: var(--brand-navy); font-size: 22px; line-height: 1.25; }
.settlement-screen-heading p { margin: 0; color: var(--muted); font-size: 13px; }
.settlement-screen-heading .actions { flex-wrap: wrap; margin: 0; }
.settlement-screen-heading .button { font-size: 12px; }
.settlement-reference-grid { display: grid; grid-template-columns: minmax(230px,.85fr) minmax(410px,1.55fr) minmax(290px,1.1fr); align-items: start; gap: 14px; }
.settlement-reference-grid > *, .settlement-reference-main, .settlement-results-layout > * { min-width: 0; }
.settlement-reference-main, .settlement-reference-grid > aside { display: grid; gap: 14px; align-content: start; }
.settlement-screen-card, .settlement-results-layout .panel, .settlement-billing-layout .panel { padding: 16px; box-shadow: none; }
.settlement-screen-card > header { display: flex; gap: 12px; align-items: center; margin-bottom: 16px; }
.settlement-screen-card h3, .settlement-results-layout h3, .settlement-billing-layout h3 { color: var(--brand-navy); font-size: 15px; line-height: 1.35; }
.settlement-screen-icon { flex: 0 0 40px; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; background: var(--brand-blue-soft); color: var(--brand-blue); }
.settlement-screen-icon svg { width: 23px; height: 23px; }
.settlement-inline-editor { gap: 12px; }
.settlement-inline-editor fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.settlement-inline-editor .settlement-field { font-size: 12px; gap: 4px; }
.settlement-inline-editor input, .settlement-inline-editor select { min-height: 36px; padding: 8px 9px; font-size: 12px; }
.settlement-inline-editor .button { font-size: 12px; }
.settlement-inline-editor .fine { font-size: 11px; line-height: 1.6; }
.settlement-receipt-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 13px; }
.settlement-receipt-amounts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 16px 0 12px; }
.settlement-receipt-amounts > div + div { border-left: 1px solid var(--line); padding-left: 12px; }
.settlement-receipt-amounts dt, .settlement-receipt-meta { font-size: 11px; color: var(--muted); }
.settlement-receipt-amounts dd { margin: 0 0 5px; font-size: 19px; font-weight: bold; color: var(--brand-navy); white-space: nowrap; }
.settlement-receipt-meta { display: flex; justify-content: space-between; margin-bottom: 12px; }
.settlement-route-partner { display: grid; gap: 8px; border-top: 1px solid var(--line); margin-top: 18px; padding-top: 18px; }
.settlement-route-partner > span, .settlement-route-partner > small { font-size: 12px; color: var(--muted); }
.settlement-screen-notice { margin-top: 18px; padding: 13px; background: var(--surface-blue); border: 1px solid var(--line); border-radius: 8px; color: var(--brand-blue); font-size: 12px; line-height: 1.55; }
.settlement-screen-notice p:last-child { margin-bottom: 0; }
.settlement-context-details { border-top: 1px solid var(--line); padding-top: 14px; margin-top: 16px; }
.settlement-context-details summary, .settlement-history-details > summary { cursor: pointer; color: var(--brand-blue); font-weight: bold; padding: 6px 0; }
.settlement-context-details .settlement-contract-context { margin-top: 12px; }
.settlement-context-details .settlement-contract-context h3 { font-size: 13px; }
.settlement-context-details .settlement-facts { display: grid; grid-template-columns: 1fr; gap: 8px; }
.settlement-context-details .button { font-size: 11px; }
.settlement-compact-head, .settlement-compact-line > summary, .settlement-compact-readonly { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr) minmax(85px,.85fr) minmax(72px,.75fr); gap: 8px; align-items: center; }
.settlement-compact-head { background: var(--surface-soft); color: var(--brand-blue); padding: 10px; font-size: 10px; font-weight: bold; border-radius: 6px 6px 0 0; }
.settlement-compact-line, .settlement-compact-readonly { border-bottom: 1px solid var(--line); }
.settlement-compact-line > summary, .settlement-compact-readonly { padding: 12px 10px; font-size: 12px; cursor: pointer; list-style: none; }
.settlement-compact-line > summary::-webkit-details-marker { display: none; }
.settlement-compact-line small, .settlement-compact-readonly small { display: block; color: var(--muted); margin-top: 4px; font-size: 10px; }
.settlement-compact-line > summary > strong, .settlement-compact-readonly > strong { white-space: nowrap; text-align: right; }
.settlement-compact-line[open] { background: var(--surface-soft); }
.settlement-compact-line .settlement-allocation-line { margin: 0 10px 12px; grid-template-columns: repeat(2,minmax(0,1fr)); border: 0; padding: 8px 0; }
.settlement-inline-editor .settlement-line-total { padding: 10px; gap: 12px; font-size: 11px; margin: 8px 0; background: var(--surface-blue); }
.settlement-inline-editor .settlement-facts { grid-template-columns: 1fr; gap: 9px; }
.settlement-inline-editor .settlement-facts > div { display: flex; gap: 12px; justify-content: space-between; align-items: baseline; }
.settlement-inline-editor .settlement-facts dt { font-size: 11px; }
.settlement-inline-editor .settlement-facts dd { font-size: 13px; white-space: nowrap; margin: 0; }
.settlement-inline-editor table { font-size: 11px; }
.settlement-inline-editor th, .settlement-inline-editor td { padding: 9px 7px; }
.settlement-inline-editor td:not(:first-child) { white-space: nowrap; }
.settlement-inline-editor [data-allocation-coverage][hidden] { display: none; }
.settlement-inline-editor .settlement-coverage { padding: 12px; margin-bottom: 12px; background: var(--surface-soft); display: grid; gap: 10px; border-radius: 8px; }
.settlement-screen-actions { position: sticky; bottom: 0; z-index: 4; background: var(--surface); border-top: 1px solid var(--line); padding: 14px 0 4px; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.settlement-screen-actions .button { min-height: 42px; flex: 1 1 auto; }
.settlement-reference-grid.is-direct { grid-template-columns: minmax(300px,.85fr) minmax(0,1.55fr); }
.settlement-direct-claim { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: center; }
.settlement-direct-claim > div { display: grid; gap: 6px; padding: 18px; border-radius: 8px; background: var(--surface-soft); }
.settlement-direct-claim strong { color: var(--brand-navy); font-size: 28px; }
.settlement-direct-claim p { padding: 14px; background: var(--surface-blue); color: var(--brand-blue); line-height: 1.6; font-size: 13px; border-radius: 8px; }
.settlement-direct-claim small { color: var(--muted); font-size: 12px; }
.settlement-direct-external { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: center; }
.settlement-reference-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 24px; margin: 12px 0 0; }
.settlement-reference-facts > div { display: grid; grid-template-columns: minmax(100px,.7fr) minmax(0,1fr); gap: 10px; align-items: baseline; }
.settlement-reference-facts dt { color: var(--muted); font-size: 12px; }
.settlement-reference-facts dd { margin: 0; font-size: 12px; font-weight: bold; overflow-wrap: anywhere; }
.settlement-results-layout { display: grid; grid-template-columns: minmax(0,2.75fr) minmax(270px,1fr); gap: 14px; }
.settlement-results-layout table { font-size: 12px; }
.settlement-results-layout td, .settlement-results-layout th { padding: 11px 9px; }
.settlement-results-layout .button.small { font-size: 11px; padding: 7px 10px; }
.settlement-billing-layout { grid-template-columns: minmax(0,1.55fr) minmax(0,1fr); gap: 16px; }
.settlement-billing-preview { position: sticky; top: 80px; min-width: 0; }
.settlement-billing-preview .settlement-customer-pdf { height: 640px; min-height: 480px; }
.settlement-billing-layout table { font-size: 12px; }
.settlement-billing-layout td, .settlement-billing-layout th { padding: 10px 8px; }
.settlement-billing-layout .settlement-facts { gap: 14px; }
.settlement-document-row { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 12px; }
.settlement-document-row .button { font-size: 11px; }
.settlement-history-details { display: grid; gap: 16px; border-top: 1px solid var(--line); padding-top: 12px; }
.settlement-history-details > .panel { margin-top: 12px; }
@media (max-width: 1250px) {
  .settlement-reference-grid { grid-template-columns: minmax(220px,.8fr) minmax(0,1.5fr); }
  .settlement-reference-grid > aside:last-child { grid-column: 1 / -1; }
  .settlement-reference-grid.is-direct > aside { grid-column: auto; }
  .settlement-results-layout { grid-template-columns: minmax(0,1fr); }
  .settlement-results-layout > aside { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .settlement-receipt-amounts dd { font-size: 17px; }
}
@media (max-width: 900px) {
  .settlement-screen-heading { flex-direction: column; }
  .settlement-reference-grid, .settlement-reference-grid.is-direct, .settlement-billing-layout { grid-template-columns: minmax(0,1fr); }
  .settlement-billing-preview { position: static; }
  .settlement-reference-facts { grid-template-columns: minmax(0,1fr); }
  .settlement-screen-heading h2 { font-size: 20px; }
}
@media (max-width: 560px) {
  .settlement-screen-actions { position: static; }
  .settlement-screen-actions .button { flex-basis: 100%; }
  .settlement-direct-claim, .settlement-direct-external, .settlement-results-layout > aside { grid-template-columns: minmax(0,1fr); }
  .settlement-screen-card { padding: 12px; }
  .settlement-compact-head { display: none; }
  .settlement-compact-line > summary, .settlement-compact-readonly { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  .settlement-compact-line > summary > strong { text-align: left; }
  .settlement-compact-line .settlement-allocation-line { grid-template-columns: minmax(0,1fr); }
}
.settlement-workspace-nav { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.settlement-workspace-nav .settlement-tabs { flex: 1 1 auto; min-width: 0; }
@media(max-width:900px) { .settlement-workspace-nav { display: block; } }
.settlement-screen-card { display: block; }
.settlement-inline-editor .settlement-screen-card > fieldset { display: block; }
.settlement-inline-editor .settlement-screen-card > fieldset > .actions { margin: 12px 0; }
.settlement-inline-editor .settlement-screen-card > fieldset > .settlement-field { margin-top: 12px; }

.settlement-route-partner[hidden] { display: none; }
.settlement-compact-readonly { cursor: default; }

/* The regulation tab opens the allocation workspace, including its empty state. */
.settlement-allocation-navigation { display: flex; align-items: end; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin: 0 0 18px; }
.settlement-source-picker { display: grid; gap: 6px; flex: 1 1 350px; max-width: 690px; min-width: 0; font-size: 12px; }
.settlement-source-picker select { width: 100%; min-width: 0; font-size: 13px; }
.settlement-allocation-navigation .actions { margin: 0; flex-wrap: wrap; }
[data-settlement-empty-allocation] .settlement-screen-card > .actions { margin-top: 16px; flex-wrap: wrap; }
[data-settlement-empty-allocation] .settlement-reference-facts { grid-template-columns: 1fr; }
[data-settlement-empty-allocation] .settlement-screen-actions { margin-top: 18px; }
[data-settlement-empty-allocation] .settlement-screen-card .table-wrap { overflow: auto; }
@media(max-width:560px) { .settlement-source-picker { flex-basis: 100%; } .settlement-allocation-navigation .button { white-space: normal; } }

/* Fachkonzept v2 + Bildstrecke: contextual work pages, not a global wizard. */
.settlement-workspace { background: var(--surface-soft); padding: 20px; border-radius: 8px; font-family: var(--font-brand); }
.settlement-workspace .settlement-screen-heading h2, .settlement-work-page > header h2 { font-size: clamp(22px, 2vw, 30px); line-height: 1.25; }
.settlement-workspace .settlement-screen-heading p { font-size: 15px; line-height: 1.6; }
.settlement-workspace .settlement-panel { background: var(--surface); padding: 22px; box-shadow: none; }
.settlement-workspace .settlement-panel h3 { font-size: 18px; line-height: 1.4; }
.settlement-two-panels, .settlement-workspace .settlement-reference-grid, .settlement-workspace .settlement-billing-layout, .settlement-workspace .settlement-results-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: 20px; }
.settlement-two-panels > *, .settlement-process-grid > * { min-width: 0; }
.settlement-metrics.is-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.settlement-process-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.settlement-process-overview > summary { padding: 16px 0; font-weight: 700; cursor: pointer; }
.settlement-process-grid p { min-height: 3em; line-height: 1.6; }
.settlement-action-guide { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 20px; padding: 18px 20px; margin-top: 20px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; }
.settlement-action-guide > div { display: grid; gap: 8px; align-content: start; }
.settlement-action-guide > div + div { border-left: 1px solid var(--line); padding-left: 20px; }
.settlement-action-guide span { font-size: 11px; font-weight: 700; color: var(--brand-blue); letter-spacing: .04em; }
.settlement-action-guide p { margin: 0; line-height: 1.5; }
.settlement-action-guide strong { font-size: 16px; color: var(--brand-blue); }
.settlement-key-amount { display: block; font-size: 30px; padding: 16px; background: var(--surface-blue); border-radius: 8px; }
.settlement-work-page > header { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.settlement-work-page > header h2 { margin: 0 0 8px; }
.settlement-work-page .settlement-editor { max-width: none; }
.settlement-work-page .settlement-editor-fields { padding: 0; border: 0; }
.settlement-work-page .settlement-review-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
.settlement-work-page .settlement-review-layout > aside, .settlement-work-page .settlement-review-fields { background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 20px; }
.settlement-work-page .settlement-review-pdf { min-height: 650px; }
.settlement-work-page .settlement-two-panels > section { padding: 22px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; }
.settlement-workspace .settlement-screen-actions { position: static; margin-top: 20px; padding: 16px 0 0; }
.settlement-workspace .settlement-compact-head, .settlement-workspace .settlement-compact-line > summary, .settlement-workspace .settlement-compact-readonly { grid-template-columns: minmax(120px, 1.3fr) minmax(90px, 1fr) minmax(80px, .8fr) minmax(90px, .8fr); }
.settlement-coverage-details { padding: 16px 0; }
.settlement-coverage-details > summary { cursor: pointer; font-weight: 700; color: var(--brand-blue); }
.settlement-workspace .settlement-contract-context .settlement-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.settlement-workspace .settlement-contract-context .settlement-facts > div:last-child { grid-column: 1 / -1; padding: 14px; background: var(--surface-blue); border-radius: 8px; }
.settlement-checklist { display: grid; gap: 12px; padding: 0; list-style: none; }
.settlement-checklist li { display: flex; justify-content: space-between; gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.settlement-expectation-row + .settlement-expectation-row { border-top: 1px solid var(--line); margin-top: 18px; padding-top: 18px; }
.settlement-work-page .settlement-package-preview { max-width: 100%; }
.settlement-work-page .settlement-package-preview iframe { width: 100%; min-height: 480px; border: 1px solid var(--line); }
@media (max-width: 1100px) { .settlement-process-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .settlement-metrics.is-four { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 800px) {
  .settlement-workspace { padding: 12px; }
  .settlement-two-panels, .settlement-workspace .settlement-reference-grid, .settlement-workspace .settlement-billing-layout, .settlement-workspace .settlement-results-layout, .settlement-work-page .settlement-review-layout, .settlement-process-grid, .settlement-action-guide { grid-template-columns: minmax(0,1fr); }
  .settlement-action-guide > div + div { border-left: 0; border-top: 1px solid var(--line); padding: 14px 0 0; }
  .settlement-workspace .settlement-panel { padding: 16px; }
  .settlement-work-page .settlement-review-pdf { min-height: 400px; }
  .settlement-workspace .settlement-compact-head { display: none; }
  .settlement-workspace .settlement-compact-line > summary, .settlement-workspace .settlement-compact-readonly { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
}

.settlement-process-overview .settlement-process-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.settlement-overview-next { grid-template-columns: minmax(0,1.7fr) minmax(0,1fr); }
.settlement-metrics.is-four article h3 { margin: 0 0 18px; font-size: 20px; }
.settlement-metrics.is-four article p { margin: 16px 0 0; line-height: 1.6; font-size: 13px; }
.settlement-metric-value { background: var(--surface-soft); padding: 16px; border-radius: 8px; }
.settlement-metric-value strong { display: block; margin-top: 8px; font-size: 28px; }
.settlement-context-note { padding: 14px; background: var(--surface-soft); border-radius: 8px; }
@media(max-width:800px) { .settlement-overview-next, .settlement-process-overview .settlement-process-grid { grid-template-columns: minmax(0,1fr); } }
.settlement-work-page > header > .icon-button { align-self: start; width: 36px; height: 36px; flex: 0 0 36px; padding: 0; background: var(--surface); color: var(--brand-blue); border: 1px solid var(--line); }
.settlement-review-fields > .form-grid > .settlement-facts { grid-column: 1 / -1; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.settlement-workspace .settlement-facts dt { overflow-wrap: anywhere; }
@media(max-width:560px) { .settlement-review-fields > .form-grid > .settlement-facts { grid-template-columns: minmax(0,1fr); } }
.settlement-workspace .settlement-facts > div { min-width: 0; }
.settlement-workspace .settlement-facts dd { min-width: 0; overflow-wrap: anywhere; }

/* The established invoice review lives inside the settlement workspace. */
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review { gap: 18px; min-width: 0; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-context { padding: 18px; gap: 20px; grid-template-columns: minmax(180px, .7fr) minmax(0, 2fr); }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-context p { font-size: 12px; line-height: 1.6; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-facts { gap: 8px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-facts > div { padding: 9px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-facts span { font-size: 10px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-facts strong { font-size: 13px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-workspace { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: 20px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-document { position: sticky; top: 18px; padding: 16px; background: var(--surface); }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-details { overflow: visible; gap: 16px; padding: 0; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-comparison,
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-evidence,
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-decision { padding: 18px; background: var(--surface); gap: 14px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-panel-head { flex-wrap: wrap; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-panel-head h3 { font-size: 17px; overflow-wrap: anywhere; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review .settlement-review-pdf { height: 72vh; min-height: 540px; margin: 14px 0; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review .settlement-review-fields { border: 1px solid var(--line); }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-evidence .actions { flex-wrap: wrap; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-evidence .button { white-space: normal; overflow-wrap: anywhere; }
.settlement-cost-summary { display: flex; flex-wrap: wrap; gap: 10px; }
.settlement-cost-summary > span { display: flex; align-items: center; gap: 16px; padding: 11px 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); font-size: 13px; }
.settlement-cost-summary strong { font-size: 19px; color: var(--brand-blue); }
.settlement-cost-summary .is-pending { background: #fff7e9; border-color: #ebd2a5; }
.settlement-cost-summary .is-pending strong { color: #926016; }
.settlement-cost-row-tools { margin-top: 8px; font-size: 11px; }
.settlement-cost-row-tools > summary { cursor: pointer; color: var(--brand-blue); }
.settlement-cost-row-tools .actions { margin-top: 8px; }
@media (min-width: 1101px) {
  .settlement-workspace [data-cost-order-summary] + .panel table { table-layout: auto; }
  .settlement-workspace [data-cost-order-summary] + .panel th { overflow-wrap: normal; word-break: normal; }
  .settlement-workspace [data-cost-order-summary] + .panel td:is(:nth-child(5), :nth-child(6), :nth-child(7)) { white-space: nowrap; }
}
.settlement-workspace .settlement-line-amount-editor { min-width: 0; display: grid; gap: 4px; }
.settlement-workspace .settlement-line-amount-editor > .button { white-space: normal; padding: 4px; font-size: 10px; }
@media (max-width: 900px) {
  .settlement-allocation-simple .settlement-inline-line > .settlement-line-amount-editor { order: 2; }
}
.settlement-cost-toolbar { display: grid; grid-template-columns: minmax(0, 2fr) repeat(2, minmax(0, 1fr)); align-items: end; gap: 14px; margin: 8px 0 16px; }
.settlement-cost-toolbar label { min-width: 0; }
.settlement-cost-tools { border: 1px solid var(--line); border-radius: 8px; margin-bottom: 18px; padding: 12px 16px; background: var(--surface-soft); }
.settlement-cost-tools > summary { cursor: pointer; font-size: 13px; font-weight: 600; color: var(--brand-blue); }
.settlement-cost-tools[open] > summary { margin-bottom: 16px; }
.settlement-cost-tools > .actions { margin-top: 16px; }
.settlement-workspace tr[data-settlement-source-search] td { padding-top: 18px; padding-bottom: 18px; }
.settlement-workspace tr[data-settlement-source-search] td:first-child { min-width: 180px; max-width: 260px; overflow-wrap: anywhere; }
.settlement-workspace tr[data-settlement-source-search] td:last-child { min-width: 145px; max-width: 190px; }
.settlement-workspace tr[data-source-current="replaced"] { background: var(--surface-soft); }
.settlement-state { border: 1px solid transparent; line-height: 1.4; }
.settlement-state.is-success { background: #edf8f2; color: #216247; border-color: #c6e5d5; }
.settlement-state.is-attention { background: #fff7e8; color: #80551b; border-color: #efd9b0; }
.settlement-state.is-danger { background: #fff1ef; color: #9b352c; border-color: #efc9c4; }
.settlement-state.is-info { background: #edf4ff; color: #285a97; border-color: #cadcf5; }
.settlement-filter-feedback { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; min-height: 38px; margin: -4px 0 12px; }
.settlement-filter-feedback p { margin: 0; color: var(--muted); font-size: 12px; }
.settlement-mobile-label { display: none; }
.damage-detail-tabs-shell:has([data-settlement-workspace]) { grid-template-columns: minmax(0, 1fr); }
.damage-detail-tabs-shell:has([data-settlement-workspace]) > .damage-detail-tabs { min-width: 0; max-width: 100%; overflow-x: auto; }
@media (min-width: 761px) and (max-width: 1180px) {
  .layout.damage-focus-layout:has([data-settlement-workspace]) .topbar { grid-template-columns: minmax(130px, 1fr) minmax(180px, 1fr) auto; gap: 12px; }
  .layout.damage-focus-layout:has([data-settlement-workspace]) .damage-shell-brand > span:last-child { display: none; }
  .layout.damage-focus-layout:has([data-settlement-workspace]) .damage-shell-user-menu > summary > strong { max-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}
.settlement-review-actions { position: sticky; bottom: 12px; z-index: 4; justify-content: flex-end; flex-wrap: wrap; padding: 14px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 4px 20px #001f4b14; }
.settlement-review-actions .button { min-height: 44px; }
.settlement-review-actions [data-review-submit] { margin-left: auto; }
[data-review-checks] { scroll-margin-block: 24px; }
[data-review-checks]:focus-visible { outline: 2px solid var(--brand-blue); outline-offset: 4px; }
.settlement-workspace .settlement-inline-editor .settlement-contract-context .settlement-facts > div { display: grid; gap: 6px; }
.settlement-workspace .settlement-inline-editor .settlement-contract-context .settlement-facts dd { white-space: normal; }
@media (max-width: 1100px) {
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table,
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table tbody { display: block; width: 100%; min-width: 0; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table thead { display: none; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table tr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 14px; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table tr[hidden] { display: none; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table tr + tr { border-top: 1px solid var(--line); }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table tr > td { display: block; min-width: 0; max-width: none; padding: 0; border: 0; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table td:first-child,
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table td:last-child { grid-column: 1 / -1; min-width: 0; max-width: none; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table .settlement-mobile-label { display: block; margin-bottom: 6px; font-size: 11px; font-weight: 600; color: var(--muted); }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table .settlement-cell-content { min-width: 0; overflow-wrap: anywhere; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table .button { min-height: 44px; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table td:last-child .button { width: 100%; }
  .settlement-workspace .settlement-tabs { flex-wrap: wrap; overflow: visible; }
  :is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-context { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 800px) {
  .settlement-review-actions { position: static; box-shadow: none; }
  .settlement-review-actions .button { flex: 1 1 100%; white-space: normal; }
  .settlement-review-actions [data-review-submit] { margin-left: 0; }
  .settlement-cost-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .settlement-cost-toolbar > label:first-child { grid-column: 1 / -1; }
  :is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-workspace { grid-template-columns: minmax(0, 1fr); }
  :is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-document { position: static; }
  :is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review .settlement-review-pdf { min-height: 380px; height: 55vh; }
}
@media (max-width: 560px) {
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table tr { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .settlement-workspace .settlement-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; overflow: visible; border-bottom: 0; margin-bottom: 18px; padding: 0; }
  .settlement-workspace .settlement-tabs button { min-width: 0; min-height: 44px; padding: 10px 8px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); font-size: 12px; white-space: normal; overflow-wrap: anywhere; }
  .settlement-workspace .settlement-tabs button[aria-selected="true"] { border-color: var(--brand-blue); background: var(--surface-blue); color: var(--brand-blue); box-shadow: inset 3px 0 var(--brand-blue); }
  .settlement-cost-toolbar { grid-template-columns: minmax(0, 1fr); }
  .settlement-cost-summary { display: grid; }
  .settlement-cost-summary > span { justify-content: space-between; }
  .settlement-workspace .settlement-contract-context .settlement-facts { grid-template-columns: minmax(0, 1fr); }
  .settlement-workspace .settlement-receipt-amounts { grid-template-columns: minmax(0, 1fr); }
  .settlement-workspace .settlement-receipt-amounts > div + div { border-left: 0; padding-left: 0; border-top: 1px solid var(--line); padding-top: 10px; }
}

/* Invoice review remains above the current page; only the dialog scrolls. */
body:has(.settlement-review-modal) { overflow: hidden; }
/* The shared legacy review layout clips overflow; this form scrolls as a whole. */
.modal.settlement-review-modal { display: block; height: auto; overflow: auto; overscroll-behavior: contain; width: min(1560px, 100%); max-height: calc(100dvh - 44px); background: var(--surface-soft); }
.settlement-review-modal > header { position: sticky; top: -22px; z-index: 5; padding: 16px 0; background: var(--surface-soft); }
.settlement-review-modal > header h2 { font-size: 24px; }
.settlement-review-modal .settlement-editor { max-width: none; }
.settlement-review-modal .settlement-editor-fields { padding: 0; border: 0; }
.settlement-review-modal .settlement-facts > div { min-width: 0; }
.settlement-review-modal .settlement-facts dd { overflow-wrap: anywhere; }
.settlement-review-modal .settlement-review-actions { bottom: -8px; }
@media(max-width:800px) {
  .modal-backdrop:has(.settlement-review-modal) { padding: 8px; }
  .modal.settlement-review-modal { max-height: calc(100dvh - 16px); padding: 14px; }
  .settlement-review-modal > header { top: -14px; }
  .settlement-review-modal > header h2 { font-size: 20px; }
  .settlement-review-modal .form-grid.two { grid-template-columns: minmax(0, 1fr); }
}

.damage-target-task-link {
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  padding: 3px 0;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.damage-target-task-link:focus-visible { outline: 2px solid var(--brand-blue, #1768ac); outline-offset: 2px; }
.damage-estimate-review-tasks { border-left: 4px solid #e58b19; border-radius: 8px; }

/* Grouped inbox: every message keeps its own target and ownership action. */
.work-item-inbox-entry { display: flex; align-items: center; gap: 12px; justify-content: space-between; padding: 8px 0; }
.work-item-inbox-entry + .work-item-inbox-entry { border-top: 1px solid var(--line); }
.work-item-inbox-entry > div { min-width: 0; overflow-wrap: anywhere; }
.work-item-inbox-entry small { display: block; color: var(--muted); margin-top: 4px; }
.work-item-inbox-entry > .button { flex-shrink: 0; }
@media (min-width: 981px) {
  .work-item-inbox-list .work-item-case-head,
  .work-item-inbox-list .work-item-case-row { grid-template-columns: minmax(92px, .55fr) minmax(128px, .75fr) minmax(150px, 1fr) minmax(0, 2fr) minmax(96px, .65fr); }
}

/* Contextual settlement actions: submission and invoicing remain independent. */
.settlement-workspace .settlement-next-steps { margin: 0 0 22px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); overflow: hidden; }
.settlement-workspace .settlement-next-steps > header { padding: 16px 20px; background: var(--surface-blue); border-bottom: 1px solid var(--line); }
.settlement-workspace .settlement-next-steps > header > strong { font-size: 16px; color: var(--brand-blue); }
.settlement-workspace .settlement-next-steps p { margin: 6px 0 14px; color: var(--muted); line-height: 1.5; }
.settlement-workspace .settlement-next-steps > header p { margin-bottom: 0; }
.settlement-workspace .settlement-next-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--line); }
.settlement-workspace .settlement-next-cards > article { display: flex; gap: 14px; padding: 20px; background: var(--surface); min-width: 0; }
.settlement-workspace .settlement-next-cards > article > div { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; flex: 1; }
.settlement-workspace .settlement-next-cards h4 { margin: 0; font-size: 16px; }
.settlement-workspace .settlement-next-cards .actions,
.settlement-workspace .settlement-next-cards article > div > .button { margin-top: auto; }
.settlement-workspace .settlement-next-count { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; min-height: 24px; padding: 0 6px; border-radius: 6px; color: var(--brand-blue); background: var(--surface-blue); font-size: 13px; }
.settlement-workspace .settlement-next-steps [data-allocation-unsaved] { margin: 14px 20px; }
.settlement-workspace .settlement-next-cards .button { white-space: normal; text-align: center; }
@media (max-width: 800px) {
  .settlement-workspace .settlement-next-cards { grid-template-columns: minmax(0, 1fr); }
  .settlement-workspace .settlement-next-cards > article { padding: 16px; }
  .settlement-workspace .settlement-next-cards .actions,
  .settlement-workspace .settlement-next-cards .button { width: 100%; }
}
.settlement-workspace .settlement-next-cards .settlement-state { margin-right: 6px; }
.settlement-workspace .settlement-customer-due { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 20px 24px; margin-bottom: 22px; border: 1px solid var(--brand-blue); border-radius: 10px; background: var(--surface-blue); }
.settlement-workspace .settlement-customer-due h3 { margin: 0 0 6px; font-size: 16px; }
.settlement-workspace .settlement-customer-due p { margin: 0; color: var(--muted); line-height: 1.5; max-width: 760px; }
.settlement-workspace .settlement-customer-due > strong { font-size: 28px; white-space: normal; overflow-wrap: anywhere; color: var(--brand-blue); }
@media (max-width: 800px) { .settlement-workspace .settlement-customer-due { flex-direction: column; align-items: flex-start; gap: 12px; padding: 18px; } }
@media (min-width: 1201px) { .settlement-workspace .settlement-billing-layout { grid-template-columns: minmax(0, 1.65fr) minmax(320px, 1fr); } }
.settlement-workspace .settlement-screen-heading h2 { overflow-wrap: anywhere; hyphens: auto; }

/* Allocation: amounts and recipients first, supporting evidence alongside. */
.settlement-allocation-focused .settlement-allocation-caption { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 4px 0 18px; }
.settlement-allocation-caption h3 { margin: 0 0 6px; font-size: 20px; color: var(--brand-navy); }
.settlement-allocation-caption p { margin: 0; font-size: 13px; color: var(--muted); line-height: 1.5; }
.settlement-allocation-caption .settlement-state { flex-shrink: 0; font-size: 12px; }
.settlement-share-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 24px; }
.settlement-share-metric { display: grid; gap: 9px; padding: 20px 22px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); }
.settlement-share-metric > span { font-size: 13px; font-weight: 700; color: var(--brand-navy); }
.settlement-share-metric > strong { font-size: clamp(24px, 2.3vw, 32px); line-height: 1.15; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.settlement-share-metric > small { font-size: 12px; color: var(--muted); line-height: 1.4; }
.settlement-share-metric.is-customer { background: #f0faf7; border-color: #b7dfd3; }
.settlement-share-metric.is-customer > strong { color: #166854; }
.settlement-share-metric.is-regulation { background: var(--surface-blue); border-color: #bfd7f3; }
.settlement-share-metric.is-regulation > strong { color: var(--brand-blue); }
.settlement-workspace .settlement-allocation-focused .settlement-reference-grid { grid-template-columns: minmax(0, 1.8fr) minmax(280px, .8fr); gap: 22px; }
.settlement-allocation-focused .settlement-reference-grid > aside:last-child { grid-column: auto; }
.settlement-allocation-focused .settlement-reference-grid > aside .settlement-panel { padding: 18px; }
.settlement-allocation-focused .settlement-reference-grid > aside h3 { font-size: 16px; }
.settlement-allocation-focused .settlement-reference-grid > aside .settlement-screen-icon { width: 30px; height: 30px; }
.settlement-allocation-focused .settlement-receipt-heading { align-items: flex-start; overflow-wrap: anywhere; }
.settlement-allocation-focused .settlement-receipt-amounts { gap: 8px; }
.settlement-allocation-focused .settlement-receipt-amounts dd { font-size: 15px; white-space: normal; overflow-wrap: anywhere; }
.settlement-allocation-focused .settlement-receipt-amounts > div + div { padding-left: 8px; }
.settlement-workspace .settlement-allocation-focused .settlement-compact-head,
.settlement-workspace .settlement-allocation-focused .settlement-compact-line > summary,
.settlement-workspace .settlement-allocation-focused .settlement-compact-readonly { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(100px, .8fr) 82px; gap: 16px; }
.settlement-allocation-focused .settlement-compact-head { font-size: 12px; padding: 0 16px 12px; background: none; color: var(--muted); }
.settlement-allocation-focused .settlement-compact-head > span:nth-child(3) { text-align: right; }
.settlement-allocation-focused [data-settlement-lines] { display: grid; gap: 10px; }
.settlement-allocation-focused .settlement-compact-line,
.settlement-allocation-focused .settlement-compact-readonly { border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
.settlement-allocation-focused .settlement-compact-line > summary,
.settlement-allocation-focused .settlement-compact-readonly { padding: 18px 16px; font-size: 14px; }
.settlement-allocation-focused .settlement-compact-line > summary:hover { background: var(--surface-soft); border-radius: 8px; }
.settlement-allocation-focused .settlement-compact-line > summary:focus-visible { outline: 2px solid var(--brand-blue); outline-offset: 2px; border-radius: 8px; }
.settlement-allocation-focused .settlement-compact-line[open] { border-color: var(--brand-blue); }
.settlement-allocation-focused .settlement-compact-line[open] > summary { background: var(--surface-blue); border-radius: 8px 8px 0 0; }
.settlement-allocation-focused .settlement-compact-line small,
.settlement-allocation-focused .settlement-compact-readonly small { font-size: 12px; line-height: 1.45; }
.settlement-share-recipient { padding-left: 12px; border-left: 3px solid var(--brand-blue); overflow-wrap: anywhere; }
.settlement-share-recipient[data-share-route="customer"] { border-left-color: #27866d; }
.settlement-share-purpose { overflow-wrap: anywhere; }
.settlement-allocation-focused .settlement-share-amount { font-size: 19px; color: var(--brand-navy); font-variant-numeric: tabular-nums; }
.settlement-share-edit { color: var(--brand-blue); font-size: 12px; text-align: right; }
.settlement-share-edit > span[aria-hidden] { display: inline-block; margin-left: 4px; }
.settlement-compact-line[open] .settlement-share-edit > span[aria-hidden] { transform: rotate(180deg); }
.settlement-allocation-focused .settlement-compact-line .settlement-allocation-line { margin: 0; padding: 18px; gap: 16px; }
.settlement-allocation-focused .settlement-field { font-size: 13px; gap: 6px; }
.settlement-allocation-focused input, .settlement-allocation-focused select { min-height: 40px; font-size: 14px; }
.settlement-allocation-focused textarea { min-height: 76px; font-size: 14px; line-height: 1.5; resize: vertical; }
.settlement-allocation-focused .settlement-line-total { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 16px 0; padding: 16px; border: 1px solid #e6c495; border-radius: 8px; background: #fff8ee; font-size: 13px; }
.settlement-allocation-focused .settlement-line-total[data-balanced="true"] { border-color: #b7dfd3; background: #f0faf7; }
.settlement-balance-heading { flex-basis: 100%; font-size: 14px; color: #8c501a; }
[data-balanced="true"] .settlement-balance-heading { color: #166854; }
.settlement-allocation-focused .settlement-allocation-basis { border-top: 1px solid var(--line); margin-top: 22px; padding-top: 20px; }
.settlement-allocation-basis h4 { margin: 0 0 14px; font-size: 15px; color: var(--brand-navy); }
.settlement-allocation-focused [data-allocation-coverage-details][hidden] { display: none; }
.settlement-allocation-focused .settlement-coverage-details { padding: 0 0 18px; }
.settlement-allocation-extra { border: 1px solid var(--line); border-radius: 8px; background: var(--surface); min-width: 0; }
.settlement-allocation-extra > summary { padding: 18px; font-size: 14px; font-weight: 700; color: var(--brand-blue); cursor: pointer; }
.settlement-allocation-extra > .settlement-screen-card { border: 0; border-top: 1px solid var(--line); margin: 0; border-radius: 0 0 8px 8px; }
.settlement-allocation-focused .settlement-context-details { font-size: 13px; }
.settlement-allocation-focused .settlement-context-details .settlement-facts { grid-template-columns: minmax(0, 1fr); }
.settlement-allocation-focused .settlement-context-details .settlement-facts > div { flex-wrap: wrap; }
.settlement-workspace .settlement-allocation-focused .settlement-screen-actions { position: sticky; bottom: 0; z-index: 4; padding: 16px; border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 -4px 18px #18345408; }
.settlement-allocation-focused .settlement-screen-actions > p { flex: 1 1 240px; margin: 0; font-size: 13px; line-height: 1.5; color: var(--muted); }
.settlement-allocation-focused .settlement-screen-actions > .button { flex: 0 1 auto; padding-inline: 20px; }
.settlement-allocation-focused .settlement-screen-actions > [value="confirm"] { order: 3; }
.settlement-allocation-focused .settlement-screen-actions > [value="draft"] { order: 2; }
@media (max-width: 1100px) {
  .settlement-workspace .settlement-allocation-focused .settlement-reference-grid { grid-template-columns: minmax(0, 1fr); }
  .settlement-allocation-focused .settlement-reference-grid > aside { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .settlement-allocation-focused .settlement-reference-grid > aside > .settlement-allocation-extra { grid-column: 1 / -1; }
}
@media (max-width: 800px) {
  .settlement-allocation-focused .settlement-compact-head { display: grid; }
  .settlement-workspace .settlement-allocation-focused .settlement-screen-actions { position: static; }
}
@media (max-width: 640px) {
  .settlement-allocation-focused .settlement-allocation-caption { align-items: flex-start; flex-direction: column; }
  .settlement-share-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .settlement-share-metric { padding: 16px; }
  .settlement-share-metric.is-receipt { grid-column: 1 / -1; }
  .settlement-share-metric > strong { font-size: 23px; }
  .settlement-allocation-focused .settlement-reference-grid > aside { grid-template-columns: minmax(0, 1fr); }
  .settlement-workspace .settlement-allocation-focused .settlement-compact-head { display: none; }
  .settlement-workspace .settlement-allocation-focused .settlement-compact-line > summary,
  .settlement-workspace .settlement-allocation-focused .settlement-compact-readonly { grid-template-columns: minmax(0, 1fr) auto; gap: 12px; padding: 16px 12px; }
  .settlement-share-recipient { grid-column: 1; grid-row: 1; }
  .settlement-share-purpose { grid-column: 1; grid-row: 2; padding-left: 15px; }
  .settlement-share-amount { grid-column: 2; grid-row: 1; font-size: 17px; }
  .settlement-share-edit { grid-column: 2; grid-row: 2; }
  .settlement-allocation-focused .settlement-compact-line .settlement-allocation-line { grid-template-columns: minmax(0, 1fr); padding: 14px; }
  .settlement-allocation-focused .settlement-screen-actions > .button { flex-basis: 100%; }
  .settlement-allocation-focused .settlement-screen-actions > [value="confirm"] { order: 1; }
  .settlement-allocation-focused .settlement-screen-actions > p { flex-basis: 100%; }
  .settlement-allocation-focused .actions.compact .button { white-space: normal; }
}

/* A single worksheet for receipt and case fee, with direct amount editing. */
.settlement-allocation-simple { max-width: none; margin: 0; }
.settlement-allocation-simple { width: 100%; }
.settlement-workspace:has(.settlement-allocation-simple, .settlement-allocation-overview) > .settlement-workspace-nav { flex-wrap: wrap; }
.settlement-allocation-simple .settlement-source-picker { max-width: none; font-size: 13px; }
.settlement-allocation-simple .settlement-allocation-navigation { gap: 12px 20px; }
.settlement-allocation-simple .settlement-inline-editor { background: var(--surface); border: 1px solid var(--line); border-radius: 12px; padding: 28px; }
.settlement-split-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin: 18px 0 8px; color: var(--brand-navy); }
.settlement-split-heading h2 { margin: 0; font-size: 22px; }
.settlement-split-heading > strong { font-size: 17px; }
.settlement-split-toolbar { display: flex; align-items: end; flex-wrap: wrap; gap: 16px; margin: 18px 0; padding: 16px; background: var(--surface-soft); border-radius: 8px; }
.settlement-split-toolbar > fieldset { flex: 0 1 220px; }
.settlement-split-partner { display: grid; gap: 4px; flex: 1 1 280px; min-width: 0; font-size: 13px; }
.settlement-split-partner > span { font-weight: 700; color: var(--brand-navy); }
.settlement-split-partner > div { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; min-height: 40px; }
.settlement-split-partner strong { overflow-wrap: anywhere; }
.settlement-split-receipt { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 24px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.settlement-split-receipt-amount { display: grid; gap: 4px; color: var(--brand-navy); }
.settlement-split-receipt-amount > span { font-size: 13px; font-weight: 700; }
.settlement-split-receipt-amount > strong { font-size: 24px; font-variant-numeric: tabular-nums; }
.settlement-split-source { display: grid; gap: 4px; flex: 1 1 260px; min-width: 0; font-size: 13px; color: var(--muted); overflow-wrap: anywhere; }
.settlement-split-source > strong { color: var(--brand-navy); font-size: 14px; }
.settlement-split-receipt .actions { margin: 0; flex-wrap: wrap; gap: 8px; }
.settlement-inline-line { display: grid; grid-template-columns: minmax(140px,1fr) minmax(150px,1.1fr) minmax(100px,.7fr) minmax(150px,1.2fr) 38px; align-items: end; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.settlement-inline-line input, .settlement-fee-shares input { text-align: right; font-variant-numeric: tabular-nums; }
.settlement-allocation-simple .settlement-field { font-size: 13px; min-width: 0; }
.settlement-allocation-simple .settlement-inline-editor .fine { font-size: 13px; }
.settlement-allocation-simple .settlement-inline-editor .button { font-size: 13px; }
.settlement-allocation-simple input, .settlement-allocation-simple select { width: 100%; min-width: 0; min-height: 40px; font-size: 14px; }
.settlement-allocation-simple .settlement-line-total { background: none; border: 0; padding: 12px 0; display: flex; flex-wrap: wrap; gap: 8px 20px; font-size: 13px; }
.settlement-allocation-simple .settlement-line-total[data-balanced="true"], .settlement-allocation-simple [data-fee-balance] { color: #237653; }
.settlement-fee-inline { border-top: 1px solid var(--line); margin-top: 12px; padding-top: 8px; }
.settlement-fee-inline .settlement-split-heading { justify-content: flex-start; flex-wrap: wrap; }
.settlement-fee-shares { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-top: 16px; }
.settlement-allocation-simple [data-fee-balance] { font-size: 13px; }
.settlement-split-totals { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; background: var(--surface-blue); padding: 22px; border-radius: 8px; margin: 24px 0; }
.settlement-split-totals > div { display: grid; gap: 8px; }
.settlement-split-totals span { color: var(--muted); font-size: 13px; }
.settlement-split-totals strong { font-size: 23px; color: var(--brand-navy); font-variant-numeric: tabular-nums; }
.settlement-split-details { margin: 18px 0; }
.settlement-split-details summary { cursor: pointer; color: var(--brand-blue); font-size: 13px; padding: 8px 0; }
.settlement-allocation-simple .settlement-screen-actions { padding: 20px 0 0; margin-top: 20px; border-top: 1px solid var(--line); justify-content: flex-end; position: static; }
.settlement-allocation-simple .settlement-next-steps { margin-top: 24px; }
.settlement-allocation-simple [data-fee-coverage][hidden], .settlement-allocation-simple [data-route-context][hidden], .settlement-allocation-simple [data-allocation-coverage][hidden] { display: none; }
@media(max-width:900px) {
  .settlement-split-toolbar > .settlement-split-partner { flex-basis: calc(100% - 236px); }
  .settlement-split-toolbar > button { flex-basis: 100%; white-space: normal; }
  .settlement-inline-line { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  .settlement-inline-line > button { justify-self: end; grid-column: 2; }
}
@media(max-width:560px) {
  .settlement-allocation-simple .settlement-inline-editor { padding: 16px; }
  .settlement-split-heading { align-items: flex-start; flex-wrap: wrap; }
  .settlement-split-toolbar > fieldset, .settlement-split-toolbar > .settlement-split-partner { flex-basis: 100%; }
  .settlement-split-receipt { align-items: flex-start; gap: 12px; }
  .settlement-split-receipt > .actions { flex-basis: 100%; }
  .settlement-fee-shares { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .settlement-split-totals { grid-template-columns: minmax(0,1fr); gap: 16px; padding: 18px; }
  .settlement-split-totals > div { grid-template-columns: minmax(0,1fr) auto; align-items: center; }
  .settlement-split-totals strong { font-size: 18px; }
  .settlement-allocation-simple .settlement-screen-actions .button { flex-basis: 100%; }
  .settlement-allocation-simple .button { white-space: normal; }
}
.settlement-allocation-simple .settlement-inline-editor { display: block; }
.settlement-allocation-simple .settlement-inline-editor > .fine { margin: 8px 0 12px; }
.settlement-allocation-simple .settlement-inline-editor > .settlement-split-heading { margin-top: 0; }
.settlement-allocation-simple .settlement-inline-editor > fieldset { margin: 0; }
.settlement-allocation-simple [data-settlement-action="add-line"] { width: auto; justify-self: start; margin-top: 10px; }
.settlement-allocation-simple .settlement-screen-actions { display: flex; gap: 12px; }
.settlement-allocation-simple .settlement-screen-actions > .button { width: auto; flex: 0 1 auto; }
.settlement-allocation-simple .settlement-split-toolbar { margin: 18px 0; }
.settlement-allocation-simple .settlement-fee-inline > .fine { margin: 8px 0; }
@media(max-width:560px) { .settlement-allocation-simple .settlement-screen-actions { flex-wrap: wrap; } .settlement-allocation-simple .settlement-screen-actions > .button { flex-basis: 100%; } }
.settlement-allocation-simple [data-line-partner][hidden] { display: none; }
.settlement-allocation-simple .settlement-inline-line > button { grid-column: 5; }
.settlement-allocation-simple .settlement-next-steps { background: none; border: 0; padding: 16px 0 0; border-top: 1px solid var(--line); }
.settlement-allocation-simple .settlement-next-cards { gap: 20px; }
.settlement-allocation-simple .settlement-next-cards > article { box-shadow: none; background: none; border: 0; padding: 0; }
@media(max-width:900px) { .settlement-allocation-simple .settlement-inline-line > button { grid-column: 2; } }
.settlement-allocation-simple [data-fee-balance][data-balanced="false"] { color: var(--danger, #b54734); }
.settlement-allocation-simple textarea[name="reason"] { min-height: 58px; resize: vertical; line-height: 1.5; }
@media(max-width:560px) {
  .settlement-allocation-simple .settlement-inline-line > .settlement-field:nth-of-type(1) { order: 1; }
  .settlement-allocation-simple .settlement-inline-line > .settlement-field:nth-of-type(3) { order: 2; }
  .settlement-allocation-simple .settlement-inline-line > .settlement-field:nth-of-type(2) { order: 3; grid-column: 1 / -1; }
  .settlement-allocation-simple .settlement-inline-line > [data-line-partner] { order: 4; grid-column: 1 / -1; }
  .settlement-allocation-simple .settlement-inline-line > button { order: 5; }
}
@media(min-width:901px) {
  .settlement-allocation-simple .settlement-inline-line:not(:first-child) > .settlement-field,
  .settlement-allocation-simple .settlement-inline-line:not(:first-child) [data-line-partner] > .settlement-field { font-size: 0; gap: 0; }
}

.settlement-workspace:has(.settlement-allocation-overview) { padding: 20px 24px 24px; }
.settlement-workspace:has(.settlement-allocation-overview) > .settlement-workspace-nav { max-width: none; margin-inline: 0; padding-bottom: 12px; margin-bottom: 24px; border-bottom: 1px solid var(--line); }
.settlement-workspace:has(.settlement-allocation-overview) .settlement-tabs { margin-bottom: 0; }
.settlement-allocation-overview { width: 100%; min-width: 0; max-width: none; margin: 0; }
.settlement-allocation-overview .settlement-screen-heading { flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-bottom: 20px; }
.settlement-workspace .settlement-allocation-overview .settlement-screen-heading h2 { font-size: 24px; margin: 0 0 6px; }
.settlement-allocation-overview .settlement-screen-heading > div { min-width: 0; }
.settlement-allocation-overview .settlement-screen-heading p { max-width: 750px; font-size: 14px; margin: 0; }
.settlement-allocation-overview .button { white-space: normal; font-size: 13px; border: 1px solid var(--line); background: var(--surface); color: var(--brand-blue); padding: 9px 12px; }
.settlement-allocation-overview .button:hover { background: var(--surface-blue); border-color: var(--brand-blue); }
.settlement-allocation-overview .settlement-screen-heading .button { border-color: transparent; background: transparent; padding-inline: 8px; }
.settlement-allocation-overview .settlement-screen-heading .button:hover { background: var(--surface-blue); }
.settlement-overview-sheet { background: var(--surface); border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.settlement-overview-metrics { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 28px; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.settlement-overview-metrics > div { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.settlement-overview-metrics span, .settlement-overview-note { font-size: 13px; color: var(--muted); }
.settlement-overview-metrics strong { font-size: 16px; color: var(--brand-navy); overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.settlement-overview-metrics .settlement-overview-total { order: 1; margin-left: auto; }
.settlement-overview-total strong { font-size: 22px; }
.settlement-overview-note { line-height: 1.6; margin: 0; padding: 14px 20px; border-top: 1px solid var(--line); background: var(--surface-soft); }
.settlement-allocation-overview .table-wrap { border: 0; border-radius: 0; background: var(--surface); }
.settlement-allocation-overview table { width: 100%; min-width: 0; table-layout: fixed; font-size: 14px; }
.settlement-allocation-overview th, .settlement-allocation-overview td { min-width: 0; white-space: normal; overflow-wrap: anywhere; vertical-align: middle; padding: 18px 20px; }
.settlement-allocation-overview th { text-transform: none; font-size: 12px; font-weight: 600; background: var(--surface-soft); padding-block: 12px; }
.settlement-allocation-overview :is(th, td):first-child { width: 25%; }
.settlement-allocation-overview :is(th, td):nth-child(2), .settlement-allocation-overview :is(th, td):nth-child(3) { width: 12%; text-align: right; }
.settlement-allocation-overview :is(th, td):nth-child(4) { width: 20%; }
.settlement-allocation-overview :is(th, td):nth-child(5) { width: 15%; }
.settlement-allocation-overview :is(th, td):last-child { width: 16%; text-align: right; }
.settlement-allocation-overview td strong { font-variant-numeric: tabular-nums; }
.settlement-allocation-overview td small { display: block; margin-top: 6px; font-size: 13px; color: var(--muted); }
.settlement-allocation-overview td .settlement-unbalanced { color: var(--danger, #b54734); }
.settlement-allocation-overview .settlement-state { max-width: 100%; }
.settlement-overview-document { font-weight: 700; color: var(--brand-blue); text-decoration: none; }
.settlement-overview-document:hover { text-decoration: underline; text-underline-offset: 3px; }
.settlement-allocation-overview [data-allocation-needs-review] .settlement-state { background: #fff7e8; color: #80551b; border-color: #efd9b0; }
.settlement-allocation-overview [data-allocation-needs-review] [data-settlement-action="review"] { background: var(--brand-blue); color: var(--surface); border-color: var(--brand-blue); }
.settlement-overview-share { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 8px; }
.settlement-overview-share + .settlement-overview-share { margin-top: 12px; }
.settlement-overview-share small { grid-column: 1 / -1; }
.settlement-overview-fee-row { background: var(--surface-soft); }
.settlement-overview-fee-row > td { border-top: 2px solid var(--line); }
@media (max-width: 1100px) {
  .settlement-overview-metrics { gap: 12px 20px; }
  .settlement-allocation-overview .settlement-responsive-table tr { padding: 20px; gap: 16px; }
  .settlement-allocation-overview .settlement-responsive-table tr > td { width: auto; text-align: left; }
  .settlement-allocation-overview .settlement-responsive-table .settlement-overview-fee-row { border-top: 2px solid var(--line); }
  .settlement-allocation-overview .settlement-responsive-table td:last-child .button { width: auto; }
}
@media (max-width: 560px) {
  .settlement-workspace:has(.settlement-allocation-overview) { padding: 12px; }
  .settlement-workspace:has(.settlement-allocation-overview) > .settlement-workspace-nav { margin-bottom: 20px; }
  .settlement-workspace:has(.settlement-allocation-overview) .settlement-tabs { margin-bottom: 18px; }
  .settlement-overview-metrics { padding: 16px; gap: 8px; }
  .settlement-overview-metrics > div { flex: 1 1 100%; justify-content: space-between; }
  .settlement-overview-metrics .settlement-overview-total { margin-left: 0; padding-top: 8px; margin-top: 4px; border-top: 1px solid var(--line); }
  .settlement-overview-note { padding: 12px 16px; }
  .settlement-allocation-overview .settlement-responsive-table tr { padding: 16px; }
  .settlement-allocation-overview .settlement-screen-heading .actions { width: 100%; }
  .settlement-allocation-overview .settlement-screen-heading .button { flex: 1 1 auto; }
  .settlement-overview-share { grid-template-columns: minmax(0, 1fr); }
}

/* Shared presentation throughout Abrechnung & Abschluss. */
.settlement-workspace { padding: 20px 24px 24px; line-height: 1.5; }
.settlement-workspace > .settlement-workspace-nav { flex-wrap: wrap; align-items: center; max-width: none; margin: 0 0 24px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.settlement-workspace .settlement-tabs { margin: 0; border-radius: 0; }
.settlement-tab-body { gap: 20px; }
.settlement-workspace .settlement-screen-heading { flex-wrap: wrap; align-items: center; gap: 12px 24px; margin: 0; }
.settlement-workspace .settlement-screen-heading > div { min-width: 0; }
.settlement-workspace .settlement-screen-heading h2,
.settlement-work-page > header h2 { font-size: 24px; margin: 0 0 6px; }
.settlement-workspace .settlement-screen-heading p { max-width: 850px; font-size: 14px; line-height: 1.6; }
.settlement-workspace .settlement-screen-heading .actions { flex-wrap: wrap; }
.settlement-workspace :is(.actions, .panel-header) { gap: 8px 12px; }
.settlement-workspace .actions:empty { display: none; }
:is(.settlement-workspace, .modal:has(.settlement-editor)) .button { min-height: 40px; max-width: 100%; padding: 9px 14px; font-size: 13px; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; border: 1px solid var(--brand-blue); background: var(--brand-blue); color: #fff; box-shadow: none; }
:is(.settlement-workspace, .modal:has(.settlement-editor)) .button.secondary { border-color: var(--line); background: var(--surface); color: var(--brand-blue); }
:is(.settlement-workspace, .modal:has(.settlement-editor)) .button.secondary:hover:not(:disabled) { background: var(--surface-blue); border-color: var(--brand-blue); }
:is(.settlement-workspace, .modal:has(.settlement-editor)) .button:disabled { opacity: .55; cursor: not-allowed; }
:is(.settlement-workspace, .modal:has(.settlement-editor)) :is(button, a, input, select, textarea, summary):focus-visible { outline: 2px solid var(--brand-blue); outline-offset: 3px; }
.settlement-workspace :is(.settlement-allocation-navigation, .settlement-allocation-overview .settlement-screen-heading) .button { background: transparent; border-color: transparent; color: var(--brand-blue); }
.settlement-workspace .settlement-allocation-navigation > .button { border-color: var(--line); background: var(--surface); }
.settlement-workspace :is(.settlement-panel, .settlement-screen-card) { padding: 20px; border: 1px solid var(--line); border-radius: 10px; }
.settlement-workspace .settlement-panel :is(.panel-header, header) { align-items: center; margin-bottom: 16px; }
.settlement-workspace .settlement-panel h3 { font-size: 16px; }
.settlement-workspace .settlement-panel > p { margin: 8px 0 16px; }
.settlement-workspace .settlement-panel > :last-child { margin-bottom: 0; }
.settlement-workspace .fine { font-size: 13px; line-height: 1.6; }
.settlement-workspace .settlement-empty { margin: 0; padding: 20px 16px; background: var(--surface-soft); border-radius: 8px; font-size: 14px; }
.settlement-workspace .settlement-state { max-width: 100%; font-size: 12px; overflow-wrap: anywhere; }
.settlement-workspace .table-wrap { border: 1px solid var(--line); border-radius: 8px; }
.settlement-workspace table { width: 100%; min-width: 0; font-size: 13px; }
.settlement-workspace :is(th, td) { padding: 14px 16px; white-space: normal; overflow-wrap: anywhere; vertical-align: middle; line-height: 1.5; }
.settlement-workspace th { background: var(--surface-soft); text-transform: none; font-size: 12px; font-weight: 600; }
.settlement-workspace td :is(strong, .code) { font-variant-numeric: tabular-nums; }
.settlement-workspace td small { display: block; margin-top: 4px; font-size: 12px; color: var(--muted); }
.settlement-workspace td > .settlement-cell-content > .button + .button { margin: 6px 0 0 6px; }
.settlement-workspace .settlement-overview-sheet .table-wrap { border: 0; border-radius: 0; }
.settlement-workspace .settlement-allocation-overview [data-allocation-needs-review] [data-settlement-action="review"] { background: var(--brand-blue); border-color: var(--brand-blue); color: #fff; }
.settlement-workspace:has(.settlement-cost-screen) { background: var(--surface); }
.settlement-cost-screen { display: grid; gap: 26px; min-width: 0; color: var(--brand-navy); font-family: Arial, Helvetica, sans-serif; }
.settlement-workspace .settlement-cost-regulation { margin: 0; padding: 16px 12px; }
.settlement-cost-regulation > summary { display: flex; align-items: center; gap: 10px; cursor: pointer; font-size: 19px; font-weight: 700; list-style: none; }
.settlement-cost-regulation > summary::-webkit-details-marker { display: none; }
.settlement-cost-regulation > summary::after { content: "+"; margin-left: auto; color: #0054e8; font-size: 26px; }
.settlement-cost-regulation[open] > summary::after { content: "−"; }
.settlement-cost-regulation > summary small { display: block; margin-top: 5px; color: #52627a; font-size: 12px; font-weight: 400; line-height: 1.5; }
.settlement-cost-regulation-body { display: grid; gap: 16px; margin-top: 20px; min-width: 0; }
.settlement-workspace .settlement-cost-regulation-body .settlement-panel { margin: 0; padding: 12px; box-shadow: none; }
.settlement-cost-regulation-body th { background: #f1f5fa; color: var(--brand-navy); }
.settlement-cost-regulation-body .button { border-radius: 6px; font-size: 12px; }
.settlement-workspace .settlement-cost-orders .settlement-cost-allocation-status { margin-top: 7px; line-height: 1.45; }
.settlement-workspace .settlement-cost-screen .settlement-screen-heading h2 { font-size: 30px; letter-spacing: -.7px; margin-bottom: 2px; }
.settlement-workspace .settlement-cost-screen .settlement-screen-heading p { max-width: none; margin: 0; color: #52627a; }
.settlement-workspace .settlement-cost-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; border: 0; background: transparent; }
.settlement-cost-metric { display: flex; align-items: center; gap: 18px; min-width: 0; min-height: 96px; padding: 15px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
.settlement-cost-icon { display: inline-block; flex: 0 0 auto; width: 20px; height: 20px; vertical-align: middle; }
.settlement-cost-metric > .settlement-cost-icon { width: 56px; height: 56px; padding: 13px; border-radius: 50%; background: #edf5ff; color: #0054e8; }
.settlement-cost-metric.is-success > .settlement-cost-icon { color: #12852e; background: #eaf8ed; }
.settlement-cost-metric.is-danger > .settlement-cost-icon { color: #c72a35; background: #fdecef; }
.settlement-cost-metric.is-attention > .settlement-cost-icon { color: #dd7100; background: #fff4e4; }
.settlement-cost-metric > span { min-width: 0; color: #435570; font-size: 13px; line-height: 1.5; }
.settlement-cost-summary .settlement-cost-metric strong { display: block; margin-top: 3px; color: var(--brand-navy); font-size: 25px; line-height: 1.2; font-variant-numeric: tabular-nums; }
.settlement-workspace .settlement-cost-orders { padding: 12px 8px 10px; }
.settlement-workspace .settlement-cost-orders .panel-header { gap: 12px; margin: 0 4px 14px; }
.settlement-workspace .settlement-cost-orders h3 { display: flex; align-items: center; gap: 10px; font-size: 19px; }
.settlement-cost-step { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 36px; height: 36px; border-radius: 50%; background: #0054e8; color: white; font-size: 23px; font-weight: 700; }
.settlement-workspace .settlement-cost-orders .button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 38px; padding: 9px 12px; font-size: 12px; font-weight: 600; background: #0054e8; border-color: #0054e8; border-radius: 6px; }
.settlement-workspace .settlement-cost-orders .button.secondary { color: #0050d8; background: var(--surface); border-color: #d4dfef; }
.settlement-workspace .settlement-cost-orders .button:hover:not(:disabled) { background: #0046c4; }
.settlement-workspace .settlement-cost-orders .button.secondary:hover:not(:disabled) { background: #edf5ff; }
.settlement-workspace .settlement-cost-orders table { table-layout: fixed; border-collapse: separate; border-spacing: 0; font-size: 13px; }
.settlement-workspace .settlement-cost-orders :is(th, td) { padding: 17px 10px; border: 0; border-right: 1px solid #e8edf4; border-bottom: 1px solid #e8edf4; line-height: 1.55; }
.settlement-workspace .settlement-cost-orders th { padding: 12px 10px; background: #f1f5fa; color: var(--brand-navy); font-size: 12px; }
.settlement-cost-orders :is(th, td):nth-child(1) { width: 14%; }
.settlement-cost-orders :is(th, td):nth-child(2) { width: 10%; }
.settlement-cost-orders :is(th, td):nth-child(3) { width: 11%; }
.settlement-cost-orders :is(th, td):nth-child(4) { width: 12%; }
.settlement-cost-orders :is(th, td):nth-child(5) { width: 7%; text-align: right; }
.settlement-cost-orders :is(th, td):nth-child(6) { width: 6%; text-align: right; }
.settlement-cost-orders :is(th, td):nth-child(7) { width: 7%; text-align: right; }
.settlement-cost-orders :is(th, td):nth-child(8) { width: 10%; }
.settlement-cost-orders :is(th, td):nth-child(9) { width: 9%; }
.settlement-cost-orders :is(th, td):nth-child(10) { width: 12%; }
.settlement-workspace .settlement-cost-orders :is(th, td):last-child { width: 36px; padding: 4px; border-right: 0; }
.settlement-workspace .settlement-cost-orders th:last-child { font-size: 0; }
.settlement-workspace .settlement-cost-orders tr:last-child td { border-bottom: 0; }
.settlement-cost-orders td:nth-child(10) .button { width: 100%; }
.settlement-cost-amount { white-space: nowrap; font-variant-numeric: tabular-nums; }
.settlement-cost-amount.is-gross { font-weight: 700; }
.settlement-cost-badge { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 6px; border-radius: 6px; font-size: 11px; font-weight: 600; line-height: 1.4; background: #eff2f6; color: #435570; }
.settlement-cost-badge .settlement-cost-icon { width: 17px; height: 17px; }
.settlement-cost-badge.is-success { color: #147c2c; background: #e8f7ed; }
.settlement-cost-badge.is-attention { color: #ba6000; background: #fff3e3; }
.settlement-cost-badge.is-info { color: #0050d8; background: #eaf2ff; }
.settlement-cost-badge.is-danger { color: #b42318; background: #fdecec; }
.settlement-cost-orders .settlement-cost-row-tools { position: relative; margin: 0; }
.settlement-cost-row-tools > summary { display: flex; align-items: center; justify-content: center; min-height: 38px; border-radius: 5px; list-style: none; }
.settlement-cost-row-tools > summary::-webkit-details-marker { display: none; }
.settlement-cost-row-tools > summary:hover, .settlement-cost-row-tools[open] > summary { background: #edf5ff; }
.settlement-cost-orders .settlement-cost-row-tools .actions { position: absolute; z-index: 5; right: 0; bottom: calc(100% + 6px); display: grid; width: 220px; padding: 10px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 8px 24px #001d4b1f; }
.settlement-workspace .settlement-cost-notice { display: flex; align-items: center; gap: 12px; margin: 14px 4px 0; padding: 12px; background: #f1f6ff; border-color: #e0e9f7; color: #435570; font-size: 12px; }
.settlement-cost-notice > .settlement-cost-icon { width: 23px; height: 23px; color: #0054e8; }
.settlement-cost-notice p { margin: 0; }
.settlement-cost-notice strong { color: #0054e8; }
.settlement-cost-screen > .settlement-cost-tools { margin: -8px 0 0; padding: 12px 16px; background: var(--surface); }
@media (min-width: 1101px) {
  .settlement-workspace .settlement-cost-orders .table-wrap { overflow: visible; }
  .settlement-cost-orders th:first-child { border-top-left-radius: 8px; }
  .settlement-cost-orders th:last-child { border-top-right-radius: 8px; }
}
@media (max-width: 1250px) {
  .settlement-cost-metric { gap: 10px; padding: 12px; }
  .settlement-cost-metric > .settlement-cost-icon { width: 42px; height: 42px; padding: 10px; }
}
@media (min-width: 1101px) and (max-width: 1350px) {
  .settlement-workspace .settlement-cost-orders :is(th, td) { padding: 14px 6px; font-size: 11px; }
  .settlement-workspace .settlement-cost-orders .button { padding: 9px 6px; font-size: 11px; }
  .settlement-cost-badge { gap: 4px; padding: 6px 4px; }
}
@media (max-width: 1100px) {
  .settlement-workspace .settlement-cost-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .settlement-cost-orders .settlement-cost-row-tools .actions { position: static; width: 100%; margin: 8px 0 0; box-shadow: none; }
  .settlement-cost-orders .settlement-cost-row-tools > summary { justify-content: flex-start; width: 44px; }
  .settlement-workspace .settlement-cost-orders .settlement-responsive-table td:nth-child(10) { grid-column: 1 / -1; }
  .settlement-workspace .settlement-cost-orders .settlement-responsive-table td:last-child { width: auto; padding: 0; }
}
@media (max-width: 600px) {
  .settlement-cost-screen { gap: 20px; }
  .settlement-workspace .settlement-cost-screen .settlement-screen-heading h2 { font-size: 26px; }
  .settlement-workspace .settlement-cost-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .settlement-cost-metric { min-height: 92px; gap: 8px; padding: 10px; }
  .settlement-cost-metric > .settlement-cost-icon { width: 34px; height: 34px; padding: 7px; }
  .settlement-cost-metric > span { font-size: 11px; }
  .settlement-cost-metric:last-child { grid-column: 1 / -1; }
  .settlement-workspace .settlement-cost-orders { padding: 12px 8px; }
  .settlement-workspace .settlement-cost-orders .panel-header > .actions { width: 100%; }
  .settlement-workspace .settlement-cost-orders .panel-header .button { width: 100%; min-height: 44px; }
  .settlement-workspace .settlement-cost-notice { align-items: flex-start; margin: 12px 0 0; }
}
.settlement-workspace .settlement-case-summary { border: 1px solid #cbd9eb; border-radius: 12px; background: var(--surface); overflow: hidden; }
.settlement-case-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 22px 24px; background: linear-gradient(110deg, #f0f6ff, var(--surface)); }
.settlement-overview-eyebrow { display: block; color: var(--brand-navy); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.settlement-case-heading h3 { margin: 8px 0; }
.settlement-workspace .settlement-case-heading h3 .settlement-state { font-size: 22px; font-weight: 700; padding: 0; background: transparent; color: var(--brand-navy); border: 0; }
.settlement-case-heading p { max-width: 730px; margin: 0; color: #52627a; font-size: 13px; }
.settlement-case-heading > .button { flex-shrink: 0; }
.settlement-case-dimensions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.settlement-case-dimensions article { min-width: 0; padding: 18px 24px; }
.settlement-case-dimensions article + article { border-left: 1px solid var(--line); }
.settlement-case-dimensions article > div { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; justify-content: space-between; }
.settlement-case-dimensions strong { font-size: 13px; color: var(--brand-navy); }
.settlement-case-dimensions p { margin: 8px 0 0; font-size: 12px; color: var(--muted); }
.settlement-case-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.settlement-case-metrics > div { display: flex; align-items: center; gap: 14px; padding: 16px 20px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); }
.settlement-case-metrics strong { font-size: 26px; line-height: 1; font-variant-numeric: tabular-nums; color: var(--brand-navy); }
.settlement-case-metrics span { color: #52627a; font-size: 12px; }
.settlement-workspace .settlement-invoice-overview { margin: 0; }
.settlement-invoice-overview .panel-header p { margin: 5px 0 0; font-size: 13px; color: var(--muted); }
.settlement-invoice-overview th:nth-child(1) { width: 25%; }
.settlement-invoice-overview th:nth-child(2) { width: 10%; }
.settlement-invoice-overview th:nth-child(3) { width: 19%; }
.settlement-invoice-overview th:nth-child(4) { width: 23%; }
.settlement-workspace .settlement-invoice-overview td { vertical-align: top; padding-block: 20px; }
.settlement-workspace .settlement-invoice-overview td:nth-child(2) strong { white-space: nowrap; }
.settlement-invoice-tracks { margin: 0; display: grid; gap: 10px; font-size: 12px; }
.settlement-invoice-tracks dt { color: var(--muted); }
.settlement-invoice-tracks dd { margin: 2px 0 0; color: var(--brand-navy); font-weight: 600; }
.settlement-invoice-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.settlement-workspace .settlement-invoice-actions .button { text-align: left; min-height: 36px; font-size: 12px; }
.settlement-overview-fee { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); font-size: 13px; }
.settlement-workspace .settlement-overview-orders > .settlement-panel { margin: 16px 0 0; padding: 0; border: 0; }
.settlement-overview-orders > summary, .settlement-process-overview > summary { display: list-item; }
.settlement-overview-orders .settlement-next-count, .settlement-process-overview .settlement-next-count { margin-left: 6px; }
@media (max-width: 1100px) {
  .settlement-case-dimensions article { padding: 16px; }
  .settlement-case-metrics > div { padding: 14px; }
}
@media (max-width: 760px) {
  .settlement-case-heading { align-items: flex-start; flex-direction: column; padding: 18px; gap: 14px; }
  .settlement-case-dimensions { grid-template-columns: minmax(0, 1fr); }
  .settlement-case-dimensions article + article { border-left: 0; border-top: 1px solid var(--line); }
  .settlement-case-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .settlement-case-metrics > div { gap: 10px; align-items: flex-start; flex-direction: column; }
  .settlement-workspace .settlement-invoice-overview td { padding-block: 10px; }
  .settlement-invoice-actions, .settlement-workspace .settlement-invoice-actions .button { width: 100%; }
}
.settlement-workspace .settlement-next-steps { margin: 0; }
.settlement-workspace .settlement-next-steps > header { padding: 14px 20px; background: var(--surface); }
.settlement-workspace .settlement-next-cards > article { padding: 18px 20px; }
.settlement-workspace .settlement-next-cards h4 { font-size: 15px; }
.settlement-workspace .settlement-next-cards p { font-size: 13px; }
.settlement-workspace .settlement-blockers { list-style: none; padding: 0; margin: 12px 0 0; }
.settlement-workspace .settlement-blockers li { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.settlement-workspace .settlement-blockers li > strong { flex: 1 1 260px; font-size: 14px; }
.settlement-workspace .settlement-blockers li > span { margin: 0; }
.settlement-workspace .settlement-blockers li > small { color: var(--muted); }
.settlement-workspace .settlement-blockers li + li { margin-top: 0; }
.settlement-tab-body > details { padding: 14px 20px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); }
.settlement-tab-body > details > summary { cursor: pointer; padding: 0; font-weight: 600; color: var(--brand-blue); }
.settlement-tab-body > details[open] > summary { margin-bottom: 16px; }
.settlement-workspace .settlement-facts { gap: 12px 20px; margin: 12px 0; }
.settlement-workspace .settlement-facts dd { font-size: 15px; font-variant-numeric: tabular-nums; }
.settlement-workspace .settlement-process-grid p { min-height: 0; }
.settlement-workspace .settlement-process-grid .panel-header { align-items: flex-start; }
.settlement-workspace .settlement-process-grid .panel-header .actions { width: 100%; margin-top: 6px; }
.settlement-workspace .settlement-customer-due { margin: 0; padding: 18px 20px; }
.settlement-workspace .settlement-customer-due > strong { font-size: 26px; }
.settlement-workspace .settlement-action-guide { margin-top: 0; padding: 16px 20px; background: var(--surface-soft); }
.settlement-workspace .settlement-action-guide strong { font-size: 14px; }
.settlement-workspace .settlement-action-guide p { font-size: 13px; }
.settlement-workspace .settlement-work-page { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; min-width: 0; }
.settlement-editor { min-width: 0; grid-template-columns: minmax(0, 1fr); }
.settlement-work-page > header { margin: 0; align-items: center; }
.settlement-work-page .settlement-editor:not(:has(.settlement-two-panels, .settlement-review-layout, .manager-workshop-invoice-review)) { padding: 20px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); }
.settlement-work-page .settlement-editor > .actions { margin: 0; padding-top: 16px; border-top: 1px solid var(--line); justify-content: flex-end; }
:is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-field { font-size: 13px; gap: 6px; }
:is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-field :is(input, select, textarea) { width: 100%; min-width: 0; min-height: 42px; padding: 9px 11px; font-size: 14px; }
:is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-field textarea { min-height: 84px; resize: vertical; }
.settlement-workspace .settlement-two-panels > section { padding: 20px; }
.settlement-workspace .settlement-two-panels h3 { margin-top: 0; font-size: 16px; }
.settlement-invoice-contract { margin: 0; padding: 20px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-blue); }
.settlement-invoice-contract h3 { margin: 0 0 14px; font-size: 16px; }
.settlement-invoice-contract .settlement-facts { grid-template-columns: repeat(6, minmax(0, 1fr)); margin: 0; }
.settlement-invoice-contract .settlement-facts dd { overflow-wrap: anywhere; }
.settlement-invoice-contract .fine { margin: 14px 0 0; }
.settlement-invoice-pdf { margin-top: 20px; border-top: 1px solid var(--line); padding-top: 16px; }
.settlement-invoice-pdf > summary { cursor: pointer; font-weight: 700; color: var(--brand-blue); }
.settlement-invoice-pdf iframe { display: block; width: 100%; height: 720px; border: 1px solid var(--line); border-radius: 8px; background: white; }
@media (max-width: 560px) { .settlement-invoice-pdf iframe { height: 500px; } }
@media (max-width: 1100px) { .settlement-invoice-contract .settlement-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 560px) { .settlement-invoice-contract { padding: 16px; } .settlement-invoice-contract .settlement-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.settlement-workspace .settlement-screen-notice { margin: 14px 0; padding: 14px 16px; font-size: 13px; }
.settlement-allocation-simple .settlement-inline-editor { padding: 20px; border-radius: 10px; }
.settlement-allocation-simple .settlement-split-heading { gap: 12px; }
.settlement-allocation-simple .settlement-split-heading h2 { font-size: 24px; }
.settlement-allocation-simple .settlement-split-receipt { padding: 14px 0; gap: 12px 24px; }
.settlement-allocation-simple .settlement-split-toolbar { margin: 16px 0 8px; padding: 14px; gap: 12px 20px; }
.settlement-allocation-simple .settlement-split-toolbar > button { margin-left: auto; }
.settlement-allocation-simple [data-allocation-prerequisites] { background: #fff7e8; border-color: #efd9b0; color: #80551b; }
.settlement-prerequisite-item { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; margin-top: 8px; }
.settlement-prerequisite-item p { margin: 0; }
.settlement-allocation-simple [data-allocation-empty] { margin: 12px 0 0; padding: 16px; border: 1px dashed var(--line); background: var(--surface-soft); }
.settlement-allocation-simple .settlement-line-total { margin: 12px 0; padding: 10px 14px; border-radius: 8px; background: var(--surface-soft); }
.settlement-allocation-simple .settlement-line-total:empty { display: none; }
.settlement-allocation-simple .settlement-line-total[data-balanced="true"] { background: #edf8f2; }
.settlement-allocation-simple .settlement-line-total[data-balanced="false"] { background: #fff7e8; }
.settlement-allocation-simple .settlement-fee-inline { margin-top: 16px; padding: 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-soft); }
.settlement-allocation-simple .settlement-fee-inline .settlement-split-heading { margin-top: 0; }
.settlement-allocation-simple .settlement-split-totals { margin: 16px 0; padding: 16px; gap: 16px; }
.settlement-allocation-simple .settlement-split-totals strong { font-size: 22px; }
.settlement-allocation-simple .settlement-share-metric small { font-size: 12px; color: var(--muted); }
.settlement-allocation-simple .settlement-split-details { margin: 12px 0; }
.settlement-allocation-simple .settlement-screen-actions { margin-top: 16px; padding-top: 16px; }
.settlement-allocation-simple .settlement-next-steps { margin-top: 20px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-facts span { font-size: 12px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-facts strong { font-size: 15px; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-context p { font-size: 13px; }
@media (min-width: 1101px) {
  .settlement-workspace .settlement-results-layout { grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr); }
}
@media (max-width: 1100px) {
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table tr { padding: 16px; gap: 16px; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table tr > td { min-width: 0; width: auto; padding: 0; text-align: left; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table .settlement-mobile-label { font-size: 12px; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table td:last-child .button { width: auto; }
  :is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-responsive-table td .actions { justify-content: flex-start; }
}
@media (max-width: 900px) {
  .settlement-workspace > .settlement-workspace-nav { display: flex; }
  .settlement-workspace .settlement-screen-heading { align-items: flex-start; }
  .settlement-allocation-simple .settlement-split-toolbar > button { margin-left: 0; }
}
@media (max-width: 560px) {
  .settlement-workspace { padding: 12px; }
  .settlement-workspace > .settlement-workspace-nav { gap: 12px; margin-bottom: 20px; }
  .settlement-workspace .settlement-tabs { width: 100%; margin: 0; }
  .settlement-workspace .settlement-screen-heading h2, .settlement-work-page > header h2, .settlement-allocation-simple .settlement-split-heading h2 { font-size: 21px; }
  .settlement-workspace :is(.settlement-panel, .settlement-screen-card), .settlement-allocation-simple .settlement-inline-editor { padding: 16px; }
  .settlement-workspace .button { min-height: 44px; }
  .settlement-workspace .settlement-screen-heading .actions { width: 100%; }
  .settlement-workspace .settlement-screen-heading .button { flex: 1 1 auto; }
  .settlement-workspace .settlement-allocation-navigation { align-items: flex-start; gap: 12px; }
  .settlement-allocation-simple .settlement-split-totals > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .settlement-allocation-simple .settlement-split-totals strong { font-size: 20px; }
  .settlement-workspace .settlement-checklist li { flex-wrap: wrap; gap: 8px; }
  .settlement-work-page .settlement-editor:not(:has(.settlement-two-panels, .settlement-review-layout, .manager-workshop-invoice-review)), .settlement-workspace .settlement-two-panels > section { padding: 16px; }
  .settlement-work-page .settlement-editor > .actions > .button { width: 100%; }
}

/* Dialogs use the same readable controls and responsive tables as the workspace. */
.modal:has(.settlement-editor) { line-height: 1.5; }
.modal:has(.settlement-editor) > header h2 { font-size: 22px; overflow-wrap: anywhere; }
.modal:has(.settlement-editor) .actions { flex-wrap: wrap; gap: 8px; }
.modal:has(.settlement-editor) .table-wrap { max-width: 100%; overflow-x: auto; }
.modal:has(.settlement-editor) table { width: 100%; min-width: 0; font-size: 13px; }
.modal:has(.settlement-editor) :is(th, td) { white-space: normal; overflow-wrap: anywhere; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-nav { flex-wrap: wrap; overflow: visible; }
:is(.settlement-workspace, .settlement-review-modal) .manager-workshop-invoice-review-nav button { min-width: 0; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
:is(.settlement-workspace, .settlement-review-modal) .settlement-review-fields .settlement-tax-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
:is(.settlement-workspace, .settlement-review-modal) .settlement-tax-row > .button { grid-column: 1 / -1; justify-self: start; width: auto; }
:is(.settlement-workspace, .modal:has(.settlement-editor)) .settlement-check { overflow-wrap: anywhere; }
@media (max-width: 560px) {
  .settlement-editor .form-grid.two, .settlement-editor .form-grid.three { grid-template-columns: minmax(0, 1fr); }
  .modal:has(.settlement-editor) .button { min-height: 44px; }
}

.settlement-workspace .settlement-next-cards > article:only-child { grid-column: 1 / -1; }
.settlement-workspace .settlement-billing-preview { display: grid; gap: 16px; }
.settlement-workspace .settlement-billing-preview .settlement-facts { grid-template-columns: minmax(0, 1fr); }
.settlement-workspace .settlement-billing-preview .settlement-facts > div { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.settlement-workspace .settlement-billing-preview .settlement-facts dt { max-width: 65%; }
.settlement-workspace .settlement-billing-preview .settlement-facts dd { text-align: right; }
.settlement-workspace tr[data-settlement-source-search] td:last-child { min-width: 180px; max-width: 230px; }
.modal:has(.settlement-editor) > header > .icon-button { flex: 0 0 40px; width: 40px; height: 40px; padding: 0; background: var(--surface); color: var(--brand-blue); border: 1px solid var(--line); }
@media (min-width: 1101px) {
  .settlement-workspace .settlement-next-cards:has(> article:nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1251px) {
  .settlement-workspace .settlement-billing-layout { grid-template-columns: minmax(0, 1fr) 320px; }
}
@media (max-width: 1250px) {
  .settlement-workspace .settlement-billing-layout { grid-template-columns: minmax(0, 1fr); }
  .settlement-workspace .settlement-billing-preview { position: static; }
}
@media (min-width: 801px) and (max-width: 1100px) {
  .settlement-workspace .settlement-next-cards > article:last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@media (max-width: 1100px) {
  .settlement-workspace .settlement-responsive-table tr[data-settlement-source-search] > td:last-child { min-width: 0; max-width: none; }
}
.settlement-work-page > header > div, .modal:has(.settlement-editor) > header > div { min-width: 0; }
.settlement-work-page > header h2 { overflow-wrap: anywhere; }

.settlement-workspace .settlement-allocation-overview .settlement-screen-heading { margin-bottom: 20px; }

/* Global task list: each task keeps its own deadline, assignment and actions. */
.task-workspace { padding: 22px; }
.task-workspace-heading { display:flex; align-items:center; gap:20px; flex-wrap:wrap; margin-bottom:20px; }
.task-workspace-heading > div:first-child { flex:1; min-width:230px; }
.task-workspace-heading h2 { margin:0 0 5px; }
.task-workspace-heading p { margin:0; color:var(--muted, #627185); font-size:13px; }
.task-view-toggle { display:flex; }
.task-view-toggle .button { border-radius:0; white-space:nowrap; }
.task-view-toggle .button:first-child { border-radius:6px 0 0 6px; }
.task-view-toggle .button:last-child { border-radius:0 6px 6px 0; }
.task-filters { display:grid; grid-template-columns:minmax(220px, 2fr) minmax(180px, 1fr) minmax(190px, 1fr) auto; gap:12px; align-items:end; margin-bottom:16px; }
.task-filters label, .task-delegation-form label { display:grid; gap:5px; font-size:12px; font-weight:600; }
.task-extra-filters { grid-column:1 / -1; }
.task-extra-filters > summary { color:var(--muted, #627185); cursor:pointer; font-size:12px; }
.task-extra-filters > div { display:grid; grid-template-columns:repeat(3, 1fr) auto; gap:12px; align-items:end; padding-top:12px; }
.task-table-scroll { overflow-x:auto; border:1px solid #dce3eb; border-radius:8px; }
.task-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:12px; }
.task-table th { text-transform:none; letter-spacing:normal; background:#e9eef4; color:#18324c; font-size:11px; text-align:left; padding:12px 9px; font-weight:700; }
.task-table th:nth-child(1) { width:9%; }
.task-table th:nth-child(2) { width:8%; }
.task-table th:nth-child(3) { width:13%; }
.task-table th:nth-child(4) { width:9%; }
.task-table th:nth-child(5) { width:10%; }
.task-table th:nth-child(6) { width:19%; }
.task-table th:nth-child(7) { width:16%; }
.task-table th:nth-child(8) { width:4%; }
.task-table th:nth-child(9) { width:12%; }
.task-table td { padding:13px 9px; border-top:1px solid #e2e8ef; vertical-align:middle; color:#142b43; overflow-wrap:anywhere; }
.task-table tbody tr.task-row:hover { background:#f6f9fc; }
.task-table small { display:block; font-size:11px; font-weight:400; color:#57687a; margin-top:3px; }
.task-two-lines { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.task-due strong { font-variant-numeric:tabular-nums; white-space:nowrap; font-size:12px; }
.task-deadline { white-space:nowrap; }
.task-deadline.overdue, .task-deadline.today { display:inline-block; padding:5px 8px; border-radius:6px; font-weight:600; }
.task-deadline.overdue { color:#a52539; background:#ffe1e5; }
.task-deadline.today { color:#88591a; background:#fff0cb; }
.task-plate { display:inline-block; background:#eef1f5; border:1px solid #dce1e8; padding:3px 5px; border-radius:5px; white-space:nowrap; font-size:11px; }
.task-person { display:flex; gap:8px; align-items:center; }
.task-person > div { min-width:0; }
.task-person small { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.task-avatar { display:grid; place-items:center; flex:0 0 30px; height:30px; border-radius:50%; background:#0759c7; color:white; font-size:11px; font-weight:600; }
.task-actions { display:flex; align-items:center; gap:4px; }
.task-actions .button { padding:8px 10px; min-height:34px; font-size:12px; }
.task-actions a.button { background:#102d4e; border-color:#102d4e; color:white; }
.task-more { font-size:20px !important; padding:5px !important; min-width:28px; }
.task-note-button { border:0; background:transparent; padding:7px 2px; color:#12304c; cursor:pointer; position:relative; }
.task-note-dot { position:absolute; right:0; top:5px; width:7px; height:7px; background:#0063db; border-radius:50%; }
.task-pagination { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:15px; font-size:12px; }
.task-pagination > div { display:flex; align-items:center; gap:10px; }
.task-pagination select { width:auto; }
.task-pagination .button { min-height:32px; padding:4px 12px; }
.task-group-heading th { background:#f0f5fa; padding:12px; }
.task-group-heading span { font-weight:400; margin-left:20px; }
.task-note-content { padding:15px 0; border-bottom:1px solid #e2e8ef; }
.task-note-content p { white-space:pre-wrap; overflow-wrap:anywhere; }
.task-assignment-label { display:grid; gap:8px; margin-top:24px; }
.task-delegation-form { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:20px 0; }
.task-delegation-list article { display:flex; flex-wrap:wrap; gap:12px; align-items:center; padding:12px 0; border-top:1px solid #e2e8ef; }
.task-workspace :is(button, a, summary, select, input):focus-visible { outline:3px solid #3f8fed; outline-offset:3px; }
@media (min-width:761px) and (max-width:1200px) { .task-table { min-width:1050px; } }
@media (max-width:760px) {
  .task-workspace { padding:14px; }
  .task-workspace-heading { gap:12px; }
  .task-view-toggle { width:100%; }
  .task-view-toggle .button { flex:1; padding:9px 8px; font-size:12px; }
  .task-filters { grid-template-columns:1fr; }
  .task-extra-filters > div, .task-delegation-form { grid-template-columns:1fr; }
  .task-table, .task-table tbody { display:block; }
  .task-table thead { display:none; }
  .task-table .task-row { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #dce3eb; padding:10px; gap:10px; }
  .task-table td { display:block; border:0; padding:0; font-size:13px; }
  .task-table td::before { content:attr(data-label); display:block; color:#65758a; font-size:10px; margin-bottom:4px; }
  .task-table .task-title, .task-table .task-action-cell { grid-column:1 / -1; }
  .task-table .task-note-cell:empty { display:none; }
  .task-table .task-group-heading { display:block; }
  .task-table .task-group-heading th { display:block; width:auto; }
  .task-pagination { flex-wrap:wrap; }
  .task-actions { justify-content:space-between; }
}
.task-view-toggle .button[aria-pressed="true"] { background:#102d4e; border-color:#102d4e; color:white; }
@media (max-width:760px) { .task-table td:nth-child(7) { grid-column:1 / -1; } }

/* CW-AUF-005: temporary editing reservation, independent of assignment. */
.task-reservation-status { display: block; color: #17528a; font-size: 11px; line-height: 1.35; margin-top: 5px; }
.task-reservation-panel, .task-editing-banner { padding: 14px; margin: 14px 0; border: 1px solid #bbd7ec; border-radius: 10px; background: #f2f8fd; }
.task-reservation-panel .task-reservation-status { font-size: 14px; font-weight: 600; }
.task-reservation-panel p, .task-editing-banner p { margin: 5px 0; }
.task-reservation-panel .actions { margin-top: 12px; flex-wrap: wrap; }
.task-editing-banner { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
@media (max-width: 700px) { .task-editing-banner { align-items: stretch; flex-direction: column; } }

/* Shared table density follows Aufgaben & Fristen. Keep the claim dashboard,
   its dialogs, the costs reference layout and printed documents outside this scope. */
@media screen {
  :is(.layout, .public-shell, .modal-backdrop)
  :is(table, .damage-order-table):not(:where(
    [data-damage-tab-panel="overview"] *,
    .damage-target-dashboard-view *,
    .damage-target-task-dialog *,
    .settlement-cost-orders *,
    [data-damage-dashboard-modal] *,
    [data-damage-dashboard-parent-modal] *
  )) {
    font-size: 12px;
    line-height: 1.45;

    & th {
      background: #e9eef4;
      color: #18324c;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: normal;
      text-transform: none;
      padding: 12px 9px;
      line-height: 1.45;
    }

    & td {
      color: #142b43;
      font-size: 12px;
      padding: 13px 9px;
      vertical-align: middle;
      line-height: 1.45;
      overflow-wrap: break-word;
    }

    &:is(.task-table, .accounting-table, .damage-overview-table, .settlement-responsive-table) td {
      overflow-wrap: anywhere;
    }

    & :is(th, td) {
      border-bottom-color: #d7dde5;
    }

    & tbody > tr:hover {
      background-color: #f6f9fc;
    }

    & :is(small, .fine, .accounting-reference, .accounting-mail-ref) {
      font-size: 11px;
      line-height: 1.45;
    }

    & td small {
      margin-top: 3px;
    }

    & td:is(.invoice-cell, .amount-cell) {
      display: table-cell;
    }

    & :is(.invoice-cell, .amount-cell) > strong {
      display: block;
      margin-bottom: 3px;
    }

    & :is(.invoice-cell, .amount-cell) > span {
      font-size: 11px;
      margin-bottom: 3px;
    }

    & :is(.status, .pill, .settlement-state) {
      border-radius: 6px;
      padding: 5px 8px;
      font-size: 11px;
      line-height: 1.3;
    }

    & :is(.actions, .compact-actions) {
      gap: 4px;
    }

    & .button {
      min-height: 34px;
      padding: 8px 10px;
      font-size: 12px;
      line-height: 1.1;
      border-radius: 6px;
    }

    & .button.secondary {
      background: var(--brand-blue-soft);
      border-color: transparent;
      color: var(--brand-blue);
    }

    & :is(button, a, input, select, textarea, summary):focus-visible {
      outline: 3px solid #3f8fed;
      outline-offset: 2px;
    }

    /* Sticky columns must use the same header and hover colors. */
    &.damage-overview-table th:is(:first-child, :nth-child(2)) {
      background: #e9eef4;
    }

    &.damage-overview-table tbody tr:is(:hover, :focus) td:is(:first-child, :nth-child(2)) {
      background: #f6f9fc;
    }

    /* The orders list uses an accessible grid instead of native table cells. */
    &.damage-order-table {
      border: 1px solid #dce3eb;
      border-radius: 8px;
      padding: 0;
      overflow: hidden;
    }

    & .damage-order-table-head {
      background: #e9eef4;
      color: #18324c;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: normal;
      text-transform: none;
      padding: 12px 9px;
    }

    & .damage-order-table-body {
      gap: 0;
    }

    & .damage-order-list-row {
      border-width: 0 0 1px 4px;
      border-radius: 0;
      padding: 13px 9px;
    }

    & .damage-order-list-row:hover {
      background: #f6f9fc;
    }

    & .damage-order-list-row > [role="cell"] {
      font-size: 12px;
      line-height: 1.45;
    }

    & .damage-order-list-main > span {
      font-size: 11px;
      font-weight: 400;
      letter-spacing: normal;
      text-transform: none;
    }

    /* Preserve the existing stacked layouts and larger mobile hit targets. */
    @media (max-width: 1100px) {
      &.settlement-responsive-table tr > td {
        padding: 0;
        border: 0;
      }

      &.settlement-responsive-table .button {
        min-height: 44px;
      }
    }

    @media (max-width: 760px) {
      &.task-table td {
        padding: 0;
        border: 0;
        font-size: 13px;
      }

      & .button {
        min-height: 44px;
      }

      &.accounting-table {
        min-width: 760px;
      }
    }
  }
}

/* Accounting uses the same workspace, filter and row sizing as Tasks. */
.accounting-workspace #accounting-view-panel { display: block; }
.accounting-workspace .task-view-toggle [aria-selected="true"] { background: #102d4e; border-color: #102d4e; color: white; }
.accounting-workspace-filters .task-extra-filters > div {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.accounting-workspace-table th:nth-child(1) { width: 10%; }
.accounting-workspace-table th:nth-child(2) { width: 14%; }
.accounting-workspace-table th:nth-child(3) { width: 18%; }
.accounting-workspace-table th:nth-child(4) { width: 11%; }
.accounting-workspace-table th:nth-child(5) { width: 10%; }
.accounting-workspace-table th:nth-child(6),
.accounting-workspace-table th:nth-child(7) { width: 9%; }
.accounting-workspace-table th:nth-child(8) { width: 11%; }
.accounting-workspace-table th:nth-child(9) { width: 8%; }
.accounting-damages-table th:nth-child(1) { width: 9%; }
.accounting-damages-table th:nth-child(2) { width: 12%; }
.accounting-damages-table th:nth-child(3) { width: 7%; }
.accounting-damages-table th:nth-child(4) { width: 4%; }
.accounting-damages-table th:nth-child(5) { width: 8%; }
.accounting-damages-table th:nth-child(6),
.accounting-damages-table th:nth-child(8),
.accounting-damages-table th:nth-child(11),
.accounting-damages-table th:nth-child(12) { width: 7%; }
.accounting-damages-table th:nth-child(7) { width: 9%; }
.accounting-damages-table th:nth-child(9),
.accounting-damages-table th:nth-child(10) { width: 8%; }
.accounting-damages-table th:nth-child(13) { width: 7%; }
.accounting-workspace .accounting-damages-table .accounting-role-cell { background: #f5f8fd; }
.accounting-damages-table .accounting-role-amount { white-space: nowrap; font-variant-numeric: tabular-nums; }
.accounting-damages-table .accounting-role-amount.is-outstanding { font-weight: 700; }
.accounting-damages-table .accounting-role-amount.is-zero { color: var(--muted); }
.accounting-damages-table .accounting-other-open { white-space: normal; }
@media (min-width:761px) {
  .accounting-workspace .accounting-damages-table { min-width: 1450px; }
  .accounting-workspace .accounting-damages-table th:nth-child(n+5):nth-child(-n+11),
  .accounting-workspace .accounting-damages-table .accounting-amount-cell { text-align: right; font-variant-numeric: tabular-nums; }
  .accounting-workspace .accounting-damages-table :is(th, td):nth-child(8) { border-left: 1px solid #d7dde5; }
  .accounting-workspace .accounting-damages-table :is(th, td):nth-child(11) { border-right: 1px solid #d7dde5; }
}
.accounting-workspace-table td { border-top: 1px solid #d7dde5; }
.accounting-workspace-table .status { white-space: normal; }
.accounting-workspace-table .code-link { padding: 0; }
.accounting-workspace-extra { border-top: 1px solid var(--line); margin-top: 16px; }
.accounting-workspace-extra > summary { cursor: pointer; color: var(--muted); font-size: 12px; padding: 12px 0; }
.accounting-workspace-extra > :not(summary) { margin-bottom: 12px; }
.accounting-workspace .accounting-kpi { box-shadow: none; padding: 12px; }
.accounting-workspace .accounting-kpi strong { font-size: 18px; }
.accounting-workspace-actions { margin-top: 16px; }
.accounting-workspace-actions .button { font-size: 12px; min-height: 34px; padding: 8px 10px; }
.accounting-workspace-hint { margin: 12px 0 0; }
@media (max-width:760px) {
  .accounting-workspace-filters .task-extra-filters > div { grid-template-columns: 1fr; }
  .accounting-workspace .accounting-damages-table .task-row > .accounting-role-cell { padding: 8px; border-radius: 4px; }
  .accounting-damages-table .task-row > td:nth-child(7) { grid-column: 1 / -1; }
  .accounting-workspace-table { min-width: 0; }
  .accounting-workspace-table td:nth-child(7) { grid-column: auto; }
  .accounting-workspace-table .accounting-row td { background: transparent; }
  .accounting-workspace-table .accounting-row:is(.is-due, .is-soon) { background: #fffaf2; }
  .accounting-workspace-table .accounting-row:is(.is-overdue, .is-dunning) { background: #fff7f4; }
  .accounting-workspace-table .accounting-row:is(.is-paid, .is-credit, .is-memo, .is-corrected, .is-settled) { background: #fbfffd; }
  .accounting-workspace .accounting-cockpit,
  .accounting-workspace .accounting-aging { grid-template-columns: 1fr; }
  .accounting-workspace-actions { flex-wrap: wrap; }
}

/* Shared compact list workspaces; applied only to the explicitly listed views. */
.list-workspace,
.list-workspaces { min-width: 0; }
.list-workspaces { display: grid; gap: 22px; }
.list-workspace :is(.panel-header, .damage-overview-title),
.list-workspaces .panel-header { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; margin-bottom: 20px; }
.list-workspace :is(.panel-header, .damage-overview-title) > div:first-child,
.list-workspaces .panel-header > div:first-child { flex: 1; min-width: min(230px, 100%); }
.list-workspace h2,
.list-workspaces .panel h2 { font-size: 18px; line-height: 1.4; margin: 0 0 5px; }
.list-workspace :is(.panel-header, .damage-overview-title) p,
.list-workspaces .panel-header p { font-size: 13px; margin: 0; }
.list-workspaces .panel { padding: 22px; }
.list-workspace .table-wrap,
.list-workspaces .table-wrap { border: 1px solid #dce3eb; border-radius: 8px; overflow-x: auto; }
.list-workspace table,
.list-workspaces table { width: 100%; border-collapse: collapse; }
.list-workspace tbody td,
.list-workspaces tbody td { border-top: 1px solid #d7dde5; }
.list-workspace .table-wrap > table { margin: 0; }
.list-workspace-content { display: grid; gap: 20px; min-width: 0; }
.list-workspace-content > .panel,
.list-workspace-content > .master-insurer-tab-content > .panel {
  border: 0; border-radius: 0; box-shadow: none; padding: 0; background: transparent;
}
.list-workspace .tabs { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: 0; min-width: 0; border: 0; margin: 0 0 20px; }
.list-workspace .tabs .tab { flex: 0 0 auto; border: 0; border-radius: 0; padding: 10px 14px; background: #e4efff; color: #003a96; font-size: 15px; white-space: nowrap; }
.list-workspace .tabs .tab:first-child { border-radius: 6px 0 0 6px; }
.list-workspace .tabs .tab:last-child { border-radius: 0 6px 6px 0; }
.list-workspace .tabs .tab.active { background: #102d4e; color: white; }
.list-workspace :is(label, .field-block > span) { font-size: 12px; }
.list-workspace :is(input, select, textarea) { font-size: 13px; }
.list-workspace-extra { border-top: 1px solid var(--line); margin-top: 16px; }
.list-workspace-extra > summary { color: var(--muted); cursor: pointer; font-size: 12px; padding: 12px 0; }
.list-workspace-extra > :not(summary) { margin-bottom: 12px; }
.list-workspace-create { border: 0; margin: -8px 0 16px; }
.list-workspace .kpi strong,
.list-workspace .damage-summary-card strong,
.list-workspaces .reporting-kpi strong { font-size: 18px; }
.list-workspace .damage-list-more { padding: 0; }
.list-workspace .master-vehicle-filter-panel { padding: 0; border: 0; background: transparent; }
.list-workspace .master-vehicle-filter-grid { grid-template-columns: minmax(220px, 2fr) repeat(3, minmax(140px, 1fr)); gap: 12px; }
.list-workspace .master-vehicle-search-field { grid-column: auto; }
.list-workspace .master-vehicle-filter-actions .button { min-height: 34px; padding: 8px 10px; font-size: 12px; }
.reporting-workspace-filters { grid-template-columns: minmax(220px, 2fr) minmax(160px, 1fr) auto auto; margin-bottom: 0; }
.reporting-filter-count { display: grid; gap: 5px; font-size: 12px; padding-bottom: 8px; }
.reporting-workspace .reporting-hero-pills { margin-left: auto; }
.reporting-workspaces .reporting-bar-row { grid-template-columns: minmax(0, 1fr) minmax(60px, 1.4fr) auto; }
@media (min-width: 761px) and (max-width: 1250px) {
  .layout:not(.damage-focus-layout) .topbar { grid-template-columns: minmax(0, 1fr) auto; gap: 12px; }
  .layout:not(.damage-focus-layout) .topbar .global-search { grid-column: 1 / -1; grid-row: 2; }
  .reporting-workspaces > .grid.six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .list-workspaces .panel { padding: 14px; }
  .list-workspace :is(.panel-header, .damage-overview-title),
  .list-workspaces .panel-header { gap: 12px; }
  .list-workspace .tabs .tab { font-size: 12px; padding: 9px 10px; min-height: 40px; }
  .list-workspace .master-vehicle-filter-grid,
  .reporting-workspace-filters { grid-template-columns: 1fr; }
  .list-workspace .master-vehicle-filter-actions { flex-wrap: wrap; }
  .list-workspace .task-pagination { flex-wrap: wrap; }
  .reporting-workspace .reporting-hero-pills { margin-left: 0; }
  .reporting-workspaces .reporting-bar-row { grid-template-columns: 1fr; }
}

/* Compact invoice allocation, grouped by claim type. */
.settlement-workspace .settlement-allocation-grouped .settlement-inline-editor { padding: 0; border: 0; background: transparent; }
.settlement-workspace:has(.settlement-allocation-grouped) > .settlement-workspace-nav { margin-bottom: 12px; }
.settlement-workspace .settlement-allocation-grouped .settlement-allocation-navigation { margin-bottom: 8px; }
.settlement-workspace .settlement-allocation-grouped .settlement-allocation-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.settlement-workspace .settlement-allocation-grouped .settlement-allocation-title > div { min-width: 0; }
.settlement-workspace .settlement-allocation-grouped .settlement-split-heading { margin: 0 0 4px; justify-content: flex-start; flex-wrap: wrap; gap: 8px 16px; }
.settlement-workspace .settlement-allocation-grouped .settlement-split-heading h2 { font-size: 26px; }
.settlement-workspace .settlement-allocation-grouped .settlement-allocation-title p { margin: 0; font-size: 13px; color: var(--muted); }
.settlement-allocation-layout { display: grid; grid-template-columns: minmax(0, 2.5fr) minmax(280px, 1fr); align-items: stretch; gap: 12px; }
.settlement-allocation-grouped .settlement-allocation-main { padding: 0; border: 0; background: transparent; display: grid; align-content: start; gap: 8px; min-width: 0; }
.settlement-allocation-step { min-width: 0; padding: 6px 10px; background: var(--surface); border: 1px solid var(--line); border-radius: 6px; }
.settlement-workspace .settlement-allocation-grouped .settlement-allocation-step h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 4px; font-size: 14px; color: var(--brand-navy); }
.settlement-allocation-step h3 > span { display: inline-grid; place-items: center; flex: 0 0 24px; height: 24px; border-radius: 50%; background: var(--brand-blue); color: #fff; font-size: 18px; }
.settlement-allocation-facts { display: flex; margin: 0; padding: 6px 0; background: var(--surface-blue); border-radius: 3px; }
.settlement-allocation-facts > div { min-width: 0; flex: 1 1 0; padding: 0 9px; border-left: 1px solid var(--line); overflow-wrap: anywhere; }
.settlement-allocation-facts > div:first-child { border-left: 0; }
.settlement-allocation-facts dt { font-size: 10px; line-height: 1.4; color: var(--muted); }
.settlement-allocation-facts dd { margin: 3px 0 0; font-size: 12px; font-weight: 600; line-height: 1.4; font-variant-numeric: tabular-nums; }
.settlement-allocation-facts.is-receipt > div:nth-child(-n+2) { flex-grow: 1.4; }
.settlement-allocation-facts.is-receipt > div:last-child dd { font-size: 17px; font-weight: 700; }
.settlement-allocation-basis-note { margin: 6px 0 0; font-size: 11px; color: var(--muted); }
.settlement-allocation-original { display: flex; flex-direction: column; min-width: 0; min-height: 460px; overflow: hidden; border: 1px solid var(--line); border-radius: 6px; background: var(--surface-soft); }
.settlement-allocation-original > details[open] { position: relative; flex: 1; min-height: 448px; }
.settlement-allocation-original summary { cursor: pointer; list-style: none; }
.settlement-allocation-original summary::after { content: "⌄"; color: var(--brand-blue); }
.settlement-allocation-original summary::-webkit-details-marker { display: none; }
.settlement-allocation-original summary { min-height: 48px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px; padding: 8px 10px; }
.settlement-allocation-original h3 { margin: 0; font-size: 14px; }
.settlement-allocation-original iframe { position: absolute; top: 48px; left: 0; display: block; width: 100%; height: calc(100% - 48px); min-height: 0; border: 0; background: #e5e7eb; }
.settlement-allocation-original iframe[hidden] { display: none; }
.settlement-allocation-facts [data-settlement-pdf-field] { cursor: pointer; border-radius: 3px; }
.settlement-allocation-facts [data-settlement-pdf-field] dd { text-decoration: underline dotted; text-underline-offset: 3px; }
.settlement-allocation-facts [data-settlement-pdf-field]:is(:hover, :focus-visible, .is-pdf-active) { background: #fff2b3; outline: 2px solid var(--brand-blue); outline-offset: -2px; }
.settlement-pdf-focus { position: absolute; inset: 48px 0 0; display: flex; flex-direction: column; }
.settlement-pdf-focus[hidden] { display: none; }
.settlement-pdf-focus-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px; padding: 8px; font-size: 12px; border-bottom: 1px solid var(--line); }
.settlement-pdf-focus-scroll { flex: 1; min-height: 0; overflow: auto; overflow-anchor: none; background: #e5e7eb; padding: 8px; }
.settlement-pdf-focus-scroll figure { position: relative; margin: 0; width: 100%; background: white; }
.settlement-pdf-focus-scroll img { display: block; width: 100%; height: auto; }
.settlement-pdf-marker { position: absolute; min-width: 3px; min-height: 3px; background: #ffe00066; outline: 2px solid #b26a00; outline-offset: 2px; pointer-events: none; }
.settlement-pdf-status { position: absolute; z-index: 1; top: 48px; left: 0; right: 0; margin: 0; padding: 10px; background: #fff4ce; color: var(--brand-navy); font-size: 12px; }
.settlement-pdf-status:empty { display: none; }
.settlement-workspace .settlement-allocation-grouped .settlement-claim-group { margin-top: 6px; border: 1px solid var(--line); border-radius: 3px; overflow: hidden; }
.settlement-allocation-grouped fieldset:has(> [data-settlement-lines]) { gap: 4px; }
.settlement-claim-group-header { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 4px 9px; background: var(--surface-blue); }
.settlement-claim-group-header > div { min-width: 0; }
.settlement-workspace .settlement-allocation-grouped .settlement-inline-editor .settlement-field { gap: 2px; font-size: 11px; }
.settlement-workspace .settlement-allocation-grouped .settlement-field-error:empty { display: none; }
.settlement-workspace .settlement-allocation-grouped .settlement-field :is(input, select, textarea) { min-height: 28px; padding: 3px 8px; font-size: 12px; }
.settlement-workspace .settlement-allocation-grouped .settlement-field textarea { min-height: 46px; height: 46px; }
.settlement-claim-basis { display: grid; gap: 0; border-left: 1px solid var(--line); padding-left: 14px; font-size: 11px; line-height: 1.4; overflow-wrap: anywhere; }
.settlement-claim-basis > span:first-child { font-size: 10px; color: var(--muted); }
.settlement-workspace .settlement-allocation-grouped :is(.settlement-claim-columns, .settlement-compact-line > summary, .settlement-compact-readonly) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.55fr) minmax(88px, .55fr) 84px; align-items: center; column-gap: 10px; padding: 2px 10px; font-size: 12px; line-height: 1.35; }
.settlement-claim-columns { background: var(--surface-soft); font-weight: 600; }
.settlement-workspace .settlement-allocation-grouped .settlement-claim-columns { font-size: 10px; }
.settlement-claim-columns > :nth-child(3) { text-align: right; }
.settlement-workspace .settlement-allocation-grouped .settlement-compact-line { margin: 0; border: 0; border-radius: 0; border-bottom: 1px solid var(--line); background: var(--surface); }
.settlement-workspace .settlement-allocation-grouped .settlement-compact-line > summary { cursor: pointer; list-style: none; margin: 0; }
.settlement-workspace .settlement-allocation-grouped .settlement-compact-line > summary::-webkit-details-marker { display: none; }
.settlement-workspace .settlement-allocation-grouped .settlement-compact-line > summary::after { display: none; }
.settlement-workspace .settlement-allocation-grouped .settlement-compact-line > summary:hover { background: var(--surface-blue); }
.settlement-workspace .settlement-allocation-grouped .settlement-share-recipient, .settlement-workspace .settlement-allocation-grouped .settlement-share-purpose { display: block; min-width: 0; }
.settlement-workspace .settlement-allocation-grouped .settlement-share-recipient strong, .settlement-workspace .settlement-allocation-grouped .settlement-share-purpose strong { font-size: 12px; font-weight: 400; }
.settlement-workspace .settlement-allocation-grouped .settlement-share-recipient small, .settlement-workspace .settlement-allocation-grouped .settlement-share-purpose small { display: none; }
.settlement-workspace .settlement-allocation-grouped .settlement-share-amount { font-size: 12px; text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.settlement-workspace .settlement-allocation-grouped .settlement-share-edit { color: var(--brand-blue); text-align: right; font-size: 11px; }
.settlement-workspace .settlement-allocation-grouped .settlement-inline-line { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(85px, .65fr) minmax(0, 1fr) 30px; gap: 8px; padding: 10px; background: var(--surface-soft); }
.settlement-workspace .settlement-allocation-grouped .settlement-inline-line .settlement-field,
.settlement-workspace .settlement-allocation-grouped .settlement-inline-line [data-line-partner] > .settlement-field { font-size: 11px; gap: 3px; }
.settlement-claim-subtotal, .settlement-claim-total { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 6px 12px; padding: 2px 10px; font-size: 12px; }
.settlement-claim-subtotal > .button, .settlement-claim-total > .button { margin-right: auto; }
.settlement-claim-subtotal > strong, .settlement-claim-total > strong { min-width: 95px; text-align: right; font-variant-numeric: tabular-nums; }
.settlement-claim-total > strong { font-size: 16px; }
.settlement-workspace .settlement-allocation-grouped .button { min-height: 30px; padding: 5px 10px; }
.settlement-workspace .settlement-allocation-grouped [data-settlement-action="add-line"] { margin-top: 0; padding: 2px 0; min-height: 24px; border: 0; background: transparent; font-size: 11px; }
.settlement-workspace .settlement-allocation-grouped .settlement-proposal-settings { margin: 4px 0 0; }
.settlement-workspace .settlement-allocation-grouped .settlement-proposal-settings > summary { padding: 3px 0; font-size: 11px; }
.settlement-workspace .settlement-allocation-grouped .settlement-inline-editor > .settlement-allocation-step { margin-top: 8px; }
.settlement-allocation-closing { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 12px; }
.settlement-workspace .settlement-allocation-grouped .settlement-line-total { margin: 0 0 4px; padding: 4px 8px; font-size: 11px; border-radius: 3px; }
.settlement-review-note-count { text-align: right; color: var(--muted); font-size: 10px; }
.settlement-allocation-checks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.settlement-allocation-checks > div { display: grid; padding: 4px 8px; border: 1px solid var(--line); border-radius: 3px; font-size: 11px; }
.settlement-allocation-checks strong { font-size: 14px; font-variant-numeric: tabular-nums; }
.settlement-workspace .settlement-allocation-grouped .settlement-screen-actions { justify-content: space-between; padding: 6px 0 0; margin: 4px 0 0; border: 0; }
.settlement-workspace .settlement-allocation-grouped .settlement-allocation-extras { margin-top: 8px; font-size: 12px; }
.settlement-allocation-extras > summary { cursor: pointer; color: var(--brand-blue); }
@media (max-width: 1200px) {
  .settlement-allocation-layout { grid-template-columns: minmax(0, 2fr) minmax(240px, 1fr); }
  .settlement-allocation-facts { flex-wrap: wrap; gap: 8px 0; }
  .settlement-allocation-facts > div { flex: 1 1 25%; }
  .settlement-allocation-facts.is-receipt > div:nth-child(-n+2) { flex: 1 1 25%; }
  .settlement-workspace .settlement-allocation-grouped .settlement-inline-line { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .settlement-workspace .settlement-allocation-grouped .settlement-inline-line > button { grid-column: 2; }
}
@media (max-width: 1000px) {
  .settlement-workspace .settlement-allocation-grouped .settlement-inline-editor { display: flex; flex-direction: column; gap: 8px; }
  .settlement-allocation-layout { display: contents; }
  .settlement-allocation-main { order: 1; }
  .settlement-workspace .settlement-allocation-grouped .settlement-inline-editor > .settlement-allocation-step { order: 2; margin-top: 0; }
  .settlement-allocation-original { order: 3; }
  .settlement-allocation-extras { order: 4; }
  .settlement-workspace .settlement-allocation-grouped .settlement-next-steps { order: 5; }
  .settlement-allocation-original { min-height: 0; }
  .settlement-allocation-original > details[open] { min-height: 488px; }
  .settlement-allocation-closing { grid-template-columns: minmax(0, 1fr); }
  .settlement-workspace .settlement-allocation-grouped .settlement-allocation-title { align-items: flex-start; flex-wrap: wrap; }
}
@media (max-width: 560px) {
  .settlement-workspace .settlement-allocation-grouped .settlement-inline-editor { padding: 0; }
  .settlement-allocation-step { padding: 8px; }
  .settlement-workspace .settlement-allocation-grouped .button { min-height: 36px; }
  .settlement-allocation-facts > div, .settlement-allocation-facts.is-receipt > div:nth-child(-n+2) { flex: 1 1 50%; }
  .settlement-claim-group-header { grid-template-columns: minmax(0, 1fr) auto; gap: 6px; }
  .settlement-claim-basis { grid-column: 1; grid-row: 2; padding: 0; border: 0; }
  .settlement-claim-group-header > button { grid-column: 2; grid-row: 1; }
  .settlement-workspace .settlement-allocation-grouped .settlement-claim-columns[aria-hidden] { display: none; }
  .settlement-workspace .settlement-allocation-grouped :is(.settlement-compact-line > summary, .settlement-compact-readonly) { grid-template-columns: minmax(0, 1fr) auto; gap: 4px 8px; padding: 8px; }
  .settlement-workspace .settlement-allocation-grouped .settlement-share-recipient { grid-column: 1; grid-row: 1; }
  .settlement-workspace .settlement-allocation-grouped .settlement-share-purpose { grid-column: 1; grid-row: 2; color: var(--muted); }
  .settlement-workspace .settlement-allocation-grouped .settlement-share-amount { grid-column: 2; grid-row: 1; }
  .settlement-workspace .settlement-allocation-grouped .settlement-share-edit { grid-column: 2; grid-row: 2; }
  .settlement-allocation-checks { gap: 4px; }
  .settlement-allocation-checks > div { padding: 4px; font-size: 10px; }
  .settlement-allocation-checks strong { font-size: 12px; }
  .settlement-claim-total > .button { flex-basis: 100%; }
  .settlement-workspace .settlement-allocation-grouped .settlement-screen-actions > .actions { width: 100%; }
}

/* Closure: pending work alongside compact, independent closure states. */
.settlement-closure { width: 100%; max-width: 1480px; min-width: 0; margin-inline: auto; }
.settlement-workspace .settlement-closure .settlement-screen-heading { margin-bottom: 18px; }
.settlement-workspace .settlement-closure .settlement-screen-heading h2 { font-size: 24px; }
.settlement-workspace .settlement-closure .settlement-screen-heading p { font-size: 13px; }
.settlement-closure-summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 24px; margin-bottom: 20px; border: 1px solid #e8d6b7; border-left: 4px solid #bf842b; border-radius: 8px; background: #fffcf6; }
.settlement-closure-summary.is-ready { border-color: #c6e5d5; border-left-color: #338163; background: #f3faf6; }
.settlement-closure-eyebrow { display: block; margin-bottom: 5px; color: var(--muted); font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.settlement-closure-summary h3 { margin: 0; font-size: 20px; color: var(--brand-navy); }
.settlement-closure-summary p { margin: 7px 0 0; max-width: 760px; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.settlement-closure-summary > .button { flex-shrink: 0; }
.settlement-closure-layout { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(340px, 1fr); align-items: start; gap: 20px; }
.settlement-closure-panel { min-width: 0; padding: 22px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
.settlement-closure-panel > header { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.settlement-closure-panel h3 { margin: 0; font-size: 17px; color: var(--brand-navy); }
.settlement-closure-count { display: inline-flex; align-items: center; justify-content: center; min-width: 25px; padding: 3px 7px; border-radius: 5px; background: var(--surface-soft); color: var(--brand-navy); font-size: 12px; font-weight: 700; }
.settlement-closure-intro, .settlement-closure-empty { margin: 0 0 8px; font-size: 12px; line-height: 1.6; color: var(--muted); }
.settlement-closure .settlement-blockers { margin: 0; }
.settlement-closure .settlement-blockers:has(.settlement-closure-task) { list-style: none; padding: 0; }
.settlement-workspace .settlement-closure .settlement-closure-task { display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: nowrap; padding: 18px 0; margin: 0; border-bottom: 1px solid var(--line); }
.settlement-closure-task > div:first-child { display: grid; min-width: 0; gap: 5px; }
.settlement-closure-task strong { font-size: 14px; line-height: 1.5; color: var(--brand-navy); }
.settlement-closure-task > div > span { font-size: 12px; overflow-wrap: anywhere; }
.settlement-closure-task small { font-size: 11px; color: var(--muted); }
.settlement-closure-task-action { display: flex; flex-shrink: 0; align-items: center; gap: 14px; }
.settlement-closure-task-action > span { font-weight: 700; font-variant-numeric: tabular-nums; }
.settlement-closure .button { white-space: normal; font-size: 12px; }
.settlement-closure-dimension { padding: 16px 0; border-bottom: 1px solid var(--line); }
.settlement-closure-dimension > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.settlement-closure-dimension h4 { margin: 0; min-width: 0; font-size: 14px; color: var(--brand-navy); }
.settlement-closure-dimension .settlement-state { flex-shrink: 0; }
.settlement-closure-dimension p { margin: 6px 0 10px; font-size: 12px; line-height: 1.6; color: var(--muted); overflow-wrap: anywhere; }
.settlement-closure-checks { margin-top: 8px; }
.settlement-closure-checks > summary, .settlement-closure-finances > summary { padding: 14px 0 2px; cursor: pointer; color: var(--brand-blue); font-size: 12px; font-weight: 700; line-height: 1.6; }
.settlement-closure-checks > summary > span + span { display: inline-block; margin-left: 12px; font-size: 11px; font-weight: 400; color: var(--muted); }
.settlement-closure :is(summary, .button):focus-visible { outline: 2px solid var(--brand-blue); outline-offset: 4px; }
.settlement-closure-checks .settlement-checklist { gap: 0; margin: 10px 0 0; }
.settlement-closure-checks .settlement-checklist li { align-items: center; font-size: 12px; }
.settlement-closure-checks .settlement-checklist .settlement-state { flex-shrink: 0; }
.settlement-closure-finances .settlement-facts { grid-template-columns: minmax(0, 1fr); gap: 10px; margin: 16px 0; }
.settlement-closure-finances .settlement-facts > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.settlement-closure-finances .settlement-facts dt, .settlement-closure-finances .settlement-facts dd { font-size: 12px; margin: 0; }
.settlement-closure-finances .settlement-facts dd { flex-shrink: 0; }
.settlement-closure-finances p { font-size: 12px; color: var(--muted); line-height: 1.6; }
@media (max-width: 1000px) {
  .settlement-closure-layout { grid-template-columns: minmax(0, 1fr); }
  .settlement-closure-summary { flex-wrap: wrap; }
}
@media (max-width: 560px) {
  .settlement-closure-summary, .settlement-closure-panel { padding: 16px; }
  .settlement-closure-summary { gap: 16px; margin-bottom: 14px; }
  .settlement-closure-summary > .button { width: 100%; }
  .settlement-closure-layout { gap: 14px; }
  .settlement-workspace .settlement-closure .settlement-closure-task { align-items: stretch; flex-direction: column; gap: 12px; }
  .settlement-closure-task-action { justify-content: flex-end; }
  .settlement-closure-task-action > span { margin-right: auto; }
  .settlement-closure .button { min-height: 40px; }
  .settlement-closure-dimension > div { flex-wrap: wrap; gap: 6px; }
}

/* Supporting documents for insurer letters and settlement submissions. */
.settlement-invoice-inputs .settlement-invoice-section-title { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; line-height: 1.5; }
.settlement-invoice-section-title > span { display: inline-grid; place-items: center; flex: 0 0 28px; height: 28px; border-radius: 50%; background: var(--surface-blue); color: var(--brand-blue); font-size: 13px; }
.settlement-invoice-services > .fine { margin: 0 0 18px; }
.settlement-invoice-services > fieldset { margin: 0 0 16px; border: 1px solid var(--line); border-radius: 8px; }
.settlement-invoice-services > fieldset > p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.settlement-invoice-services > fieldset .settlement-check { padding: 6px 0; font-size: 13px; }
.settlement-invoice-fee { margin-top: 18px; padding: 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-soft); }
.settlement-invoice-fee h4 { margin: 0; font-size: 13px; }
.settlement-invoice-fee .settlement-facts { margin: 12px 0; gap: 10px; }
.settlement-invoice-fee .settlement-facts dd { margin-bottom: 0; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.settlement-invoice-fee .settlement-facts dt { font-size: 12px; }
.settlement-invoice-fee > p { margin: 8px 0 0; font-size: 12px; overflow-wrap: anywhere; }
.settlement-invoice-fee > p:not(.fine) { font-weight: 600; }
.settlement-invoice-inputs .settlement-invoice-fee > .fine { font-size: 12px; }
.settlement-attachments { margin: 24px 0 0; padding-top: 22px; border-top: 1px solid var(--line); }
.settlement-attachments > .fine { margin: 0 0 16px; }
.settlement-attachment-groups { display: grid; gap: 8px; }
.settlement-attachment-groups > details { border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.settlement-attachments summary { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 10px 12px; cursor: pointer; list-style: none; font-weight: 600; font-size: 13px; }
.settlement-attachments summary::-webkit-details-marker { display: none; }
.settlement-attachments summary:focus-visible { outline-offset: -3px; }
.settlement-attachments summary::before { content: ""; width: 6px; height: 6px; flex: 0 0 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(-45deg); }
.settlement-attachments details[open] > summary::before { transform: rotate(45deg); }
.settlement-attachments summary > span:first-of-type { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.settlement-attachment-groups summary { background: var(--surface-soft); }
.settlement-attachment-groups summary:hover { background: var(--surface-blue); }
.settlement-attachment-count { display: inline-grid; place-items: center; min-width: 24px; height: 24px; padding: 0 6px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); color: var(--muted); font-size: 11px; font-variant-numeric: tabular-nums; }
.settlement-attachment-files { padding: 0 12px; border-top: 1px solid var(--line); }
.settlement-attachment-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; padding: 8px 0; }
.settlement-attachment-row + .settlement-attachment-row { border-top: 1px solid var(--line); }
.settlement-attachment-row label { flex: 1; min-width: 0; margin: 0; overflow-wrap: anywhere; font-size: 13px; cursor: pointer; }
.settlement-attachment-row a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 32px; font-size: 12px; }
.settlement-attachments-missing { margin-top: 8px; color: var(--muted); }
.settlement-attachments-missing > summary { font-size: 12px; font-weight: 500; }
.settlement-attachments-missing > ul { margin: 4px 0 12px; padding-left: 34px; font-size: 12px; line-height: 1.8; }
.settlement-invoice-notes { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line); }
.settlement-invoice-notes > summary { cursor: pointer; min-height: 32px; font-weight: 600; font-size: 13px; }
.settlement-invoice-notes > .settlement-field { margin-top: 12px; }
@media (max-width: 640px) {
  .settlement-invoice-fee { padding: 12px; }
  .settlement-invoice-fee .settlement-facts { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .settlement-invoice-fee .settlement-facts > div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
  .settlement-invoice-fee .settlement-facts dd { margin: 0; }
  .settlement-attachment-row { align-items: stretch; flex-direction: column; gap: 2px; }
  .settlement-attachment-row label { min-height: 32px; padding-top: 4px; }
  .settlement-attachment-row a { align-self: flex-start; min-height: 40px; margin-left: 26px; }
}

/* Document filing: categories, selectable files and a dedicated preview. */
.document-filing { min-width: 0; padding: 14px; font-size: 12px; gap: 12px; }
.document-filing .button { min-height: 30px; padding: 5px 9px; border-radius: 5px; font-size: 12px; font-weight: 600; line-height: 1.4; }
.document-filing .pill,
.document-filing .communication-type { padding: 3px 6px; font-size: 10px; font-weight: 600; }
.document-filing input,
.document-filing select { min-height: 34px; padding: 7px 10px; font-size: 12px; font-weight: 500; }
.document-filing label { font-size: 11px; font-weight: 600; }
.document-filing [hidden] { display: none !important; }
.document-filing > #dokumente { height: 0; margin-bottom: -12px; }
.document-filing .document-filing-header {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding-bottom: 12px; border-bottom: 1px solid var(--line);
}
.document-filing-search { flex: 1; min-width: 0; max-width: 480px; margin: 0; }
.document-filing-header > .button { flex: 0 0 auto; }
.document-filing-upload { padding: 16px; background: var(--surface-soft); border: 1px solid var(--line); border-radius: 8px; scroll-margin-top: 100px; }
.document-filing-upload .document-upload-form { margin: 0; }
.document-filing .document-detail-layout { grid-template-columns: 190px minmax(0, 1fr); gap: 14px; }
.document-filing .document-detail-nav { padding: 6px; gap: 2px; background: var(--surface-soft); }
.document-filing .document-detail-nav > strong { padding: 6px; font-size: 10px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); }
.document-filing .document-detail-nav button {
  display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; align-items: center; gap: 6px;
  width: 100%; min-height: 34px; padding: 6px; border: 1px solid transparent; border-radius: 6px;
  background: transparent; color: var(--brand-navy); text-align: left; font: inherit; cursor: pointer;
}
.document-filing .document-detail-nav button:hover { background: #fff; }
.document-filing .document-detail-nav button.active { background: #fff; border-color: var(--line); box-shadow: inset 3px 0 var(--brand-blue); }
.document-filing .document-detail-nav button:focus-visible,
.document-filing .document-list-row:focus-visible { outline: 2px solid var(--brand-blue); outline-offset: -2px; }
.document-filing .document-detail-nav span { height: 20px; font-size: 8px; border-radius: 4px; }
.document-filing .document-detail-nav b { font-size: 11px; font-weight: 600; white-space: normal; overflow-wrap: anywhere; line-height: 1.4; }
.document-filing .document-detail-nav em { font-size: 11px; font-weight: 600; }
.document-filing .document-detail-content { gap: 10px; }
.document-filing-filters { display: none; }
.document-filing-filters label { min-width: 0; }
.document-filing .document-filing-category { display: none; }
.document-filing .document-preview-layout { grid-template-columns: minmax(260px, .85fr) minmax(320px, 1.15fr); gap: 12px; }
.document-filing .document-list-workspace { border: 1px solid var(--line); border-radius: 8px; overflow: hidden; background: #fff; }
.document-filing-list-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-height: 38px; padding: 8px 10px; border-bottom: 1px solid var(--line); }
.document-filing-list-heading > strong { font-size: 12px; font-weight: 600; }
.document-filing-list-heading > .button { margin-left: auto; padding: 4px; min-height: 28px; font-size: 11px; }
.document-filing .document-board { gap: 0; max-height: 690px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.document-filing .document-section { border: 0; border-radius: 0; overflow: visible; }
.document-filing .document-section + .document-section { border-top: 1px solid var(--line); }
.document-filing .document-section > summary { display: flex; align-items: center; gap: 8px; min-height: 32px; padding: 7px 10px; background: var(--surface-soft); }
.document-filing .document-section > summary::before { color: var(--muted); font-size: 13px; }
.document-filing .document-section > summary strong { font-size: 11px; font-weight: 600; }
.document-filing-group-count { margin-left: auto; color: var(--muted); font-size: 11px; }
.document-filing .document-list-row {
  appearance: none; grid-template-columns: 28px minmax(0, 1fr); width: 100%; min-height: 54px; gap: 8px;
  padding: 8px 10px; border: 0; border-top: 1px solid var(--line); border-radius: 0;
  background: #fff; color: var(--brand-navy); text-align: left; font: inherit; cursor: pointer;
}
.document-filing .document-list-row:hover { background: var(--surface-soft); }
.document-filing .document-list-row.active { background: var(--surface-blue); box-shadow: inset 3px 0 var(--brand-blue); }
.document-filing .document-list-icon { width: 28px; height: 32px; border-radius: 4px; font-size: 8px; }
.document-filing .document-list-main { gap: 3px; }
.document-filing .document-list-title-button { display: block; white-space: normal; overflow-wrap: anywhere; font-size: 12px; line-height: 1.4; font-weight: 600; }
.document-filing .document-list-main small { font-size: 10px; line-height: 1.4; }
.document-filing .document-filing-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 8px; }
.document-filing .document-filing-photo-grid .document-list-row { grid-template-columns: minmax(0, 1fr); align-content: start; gap: 8px; padding: 6px; border: 1px solid var(--line); border-radius: 6px; }
.document-filing .document-filing-photo-grid .document-list-icon { width: 100%; height: 80px; border: 0; }
.document-filing .document-filing-photo-grid .document-list-title-button { font-size: 11px; }
.document-filing .document-filing-photo-grid .document-list-main small { display: none; }
.document-filing .document-preview-reader { scroll-margin-top: 90px; }
.document-filing .document-preview-pane { min-height: 0; align-content: start; }
.document-filing .document-preview-pane.empty { min-height: 250px; }
.document-filing .document-preview-pane .mail-program-compose-head { min-width: 0; flex-wrap: wrap; gap: 6px; padding: 10px; }
.document-filing .document-preview-pane .mail-program-compose-head > div > span { font-size: 9px; }
.document-filing .document-preview-pane .mail-program-compose-head > div { min-width: 0; }
.document-filing .document-preview-pane .mail-program-compose-head strong { overflow-wrap: anywhere; font-size: 12px; font-weight: 600; }
.document-filing .document-preview-info { gap: 8px; padding: 8px 10px; }
.document-filing .document-preview-actions { gap: 6px; }
.document-filing .document-preview-actions .danger { margin-left: auto; background: transparent; border-color: transparent; color: var(--danger, #b42318); }
.document-filing .document-preview-actions .danger:hover { background: #fff1f0; border-color: #f4c7c3; }
.document-filing .document-preview-frame { height: 470px; min-height: 0; }
.document-filing .document-preview-stage { min-height: 260px; }
.document-filing .document-preview-stage img { max-height: 380px; }
.document-filing .document-preview-meta { gap: 6px; }
.document-filing .document-preview-meta > div { padding: 8px; }
.document-filing .document-preview-meta dd { font-size: 12px; overflow-wrap: anywhere; }
.document-filing .document-preview-reader .document-list-status { display: flex; }
.document-filing .document-preview-reader .document-list-status:empty { display: none; }
@media (max-width: 1300px) {
  .document-filing .document-detail-layout { grid-template-columns: 180px minmax(0, 1fr); gap: 12px; }
  .document-filing .document-preview-layout { grid-template-columns: minmax(220px, .9fr) minmax(280px, 1.1fr); gap: 12px; }
}
@media (max-width: 1100px) {
  .document-filing .document-detail-layout { grid-template-columns: minmax(0, 1fr); }
  .document-filing .document-detail-side { display: none; }
  .document-filing .document-filing-filters { display: grid; grid-template-columns: minmax(0, 1fr); }
  .document-filing .document-filing-category { display: grid; }
  .document-filing .document-preview-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .document-filing .document-preview-reader { position: static; }
}
@media (max-width: 760px) {
  .document-filing { padding: 12px; }
  .document-filing .document-filing-header { flex-wrap: wrap; gap: 8px; }
  .document-filing-search { flex-basis: 100%; max-width: none; }
  .document-filing-header > .button { margin-left: auto; }
  .document-filing .button,
  .document-filing .document-section > summary,
  .document-filing .document-preview-details > summary { min-height: 40px; }
  .document-filing input,
  .document-filing select { min-height: 40px; font-size: 16px; }
  .document-filing .document-filing-filters,
  .document-filing .document-preview-layout { grid-template-columns: minmax(0, 1fr); }
  .document-filing .document-board { max-height: 390px; }
  .document-filing .document-list-row { min-height: 54px; }
  .document-filing .document-preview-frame { height: 390px; }
  .document-filing .document-preview-meta { grid-template-columns: minmax(0, 1fr); }
  .document-filing-upload { padding: 10px; }
}
.document-filing .document-preview-details > summary { padding: 9px 10px; cursor: pointer; color: var(--brand-navy); font-size: 11px; font-weight: 600; }
.document-filing .document-preview-details[open] > summary { border-bottom: 1px solid var(--line); }
.damage-detail-tabs-shell:has(.document-filing) { grid-template-columns: minmax(0, 1fr); }
.damage-detail-tabs-shell:has(.document-filing) > .damage-detail-tabs { min-width: 0; overflow-x: auto; }

/* First-login introduction, scoped to keep operational screens unchanged. */
.onboarding-shell {
  min-height: 100dvh;
  background: radial-gradient(ellipse at 10% 85%, #e5f0fe 0, transparent 50%), #f6f8fb;
  color: var(--brand-navy);
}
.onboarding-header {
  max-width: 1240px;
  margin: auto;
  padding: 28px 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.onboarding-header > img { width: 158px; height: auto; }
.onboarding-header .actions { margin: 0; flex-wrap: wrap; justify-content: flex-end; }
.onboarding-main {
  max-width: 1120px;
  margin: auto;
  padding: 48px 40px 64px;
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: 80px;
  align-items: center;
}
.onboarding-eyebrow { font-size: 11px; font-weight: 700; letter-spacing: 1.4px; line-height: 1.7; }
.onboarding-intro h1 { font-size: clamp(30px, 3.4vw, 44px); line-height: 1.16; letter-spacing: -1.6px; margin: 20px 0; }
.onboarding-intro h1 span { color: var(--brand-blue); }
.onboarding-intro > p { max-width: 325px; font-size: 15px; line-height: 1.8; color: #52647c; }
.onboarding-steps { list-style: none; padding: 0; margin: 32px 0; display: grid; gap: 16px; }
.onboarding-steps li { display: flex; align-items: center; gap: 13px; color: #637087; font-size: 13px; }
.onboarding-step-number { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid #cdd8e8; border-radius: 50%; font-size: 12px; flex-shrink: 0; }
.onboarding-steps .is-current { font-weight: 700; color: var(--brand-blue); }
.onboarding-steps .is-current .onboarding-step-number { color: #fff; background: var(--brand-blue); border-color: var(--brand-blue); box-shadow: 0 0 0 5px #e0eafe; }
.onboarding-steps .is-done .onboarding-step-number { color: var(--brand-blue); background: #e0eafe; border-color: #e0eafe; }
.onboarding-signoff { font-size: 12px; color: #637087; }
.onboarding-card { min-width: 0; padding: 32px; background: #fff; border: 1px solid #e0e6ef; border-radius: 22px; box-shadow: 0 22px 65px #001d4b0c; }
.onboarding-card-top { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.onboarding-duration { font-size: 11px; color: #637087; white-space: nowrap; }
.onboarding-progress { display: flex; gap: 6px; margin-top: 15px; }
.onboarding-progress span { height: 4px; flex: 1; background: #edf1f7; border-radius: 3px; }
.onboarding-progress .is-filled { background: var(--brand-orange); }
.onboarding-copy { min-height: 352px; padding: 30px 0 24px; }
.onboarding-icon { display: grid; place-items: center; width: 56px; height: 56px; background: var(--brand-blue-soft); color: var(--brand-blue); border-radius: 17px; margin-bottom: 22px; }
.onboarding-icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.onboarding-greeting { font-size: 13px; font-weight: 700; margin: 0 0 7px; overflow-wrap: anywhere; }
.onboarding-copy h2 { font-size: 27px; line-height: 1.25; letter-spacing: -.7px; margin: 0 0 16px; }
.onboarding-copy h2:focus { outline: none; }
.onboarding-copy > p:not(.onboarding-greeting) { font-size: 14px; line-height: 1.85; color: #52647c; margin: 0; }
.onboarding-tip { margin-top: 23px; display: flex; align-items: flex-start; gap: 11px; border-radius: 10px; padding: 14px; background: #f5f8fd; }
.onboarding-tip > span { font-size: 20px; color: #ab5200; line-height: 1.2; }
.onboarding-tip p { margin: 0; font-size: 12px; line-height: 1.7; color: #52647c; }
.onboarding-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.onboarding-controls .button { min-height: 45px; font-size: 13px; }
.onboarding-skip { display: block; margin: 18px auto 0; padding: 9px 12px; background: transparent; color: #637087; text-decoration: underline; text-underline-offset: 4px; font-size: 12px; cursor: pointer; }
.onboarding-shell button:focus-visible { outline: 3px solid var(--brand-orange); outline-offset: 4px; }
.onboarding-error { color: var(--red); font-size: 13px; line-height: 1.6; }
.onboarding-shell button:disabled { opacity: .65; cursor: wait; }
@media (max-width: 800px) {
  .onboarding-header { padding: 20px 24px; }
  .onboarding-main { gap: 32px; padding: 32px 24px 48px; }
  .onboarding-card { padding: 24px; }
  .onboarding-copy h2 { font-size: 24px; }
}
@media (max-width: 620px) {
  .onboarding-header { padding: 17px 18px; gap: 12px; }
  .onboarding-header > img { width: 114px; }
  .onboarding-header .actions { gap: 4px; }
  .onboarding-header .button { font-size: 11px; min-height: 36px; padding: 8px; }
  .onboarding-main { grid-template-columns: 1fr; padding: 20px 18px 30px; gap: 22px; }
  .onboarding-intro h1 { margin: 10px 0 0; font-size: 30px; letter-spacing: -1px; }
  .onboarding-intro > p, .onboarding-steps, .onboarding-signoff { display: none; }
  .onboarding-card { border-radius: 17px; padding: 23px; }
  .onboarding-copy { min-height: 0; padding-top: 24px; }
  .onboarding-copy h2 { font-size: 25px; }
  .onboarding-controls { flex-wrap: wrap; }
  .onboarding-controls .button { flex: 1; }
  .onboarding-controls > span:empty { display: none; }
}

/* Customer master data: at most three single-line values per table cell. */
.master-customer-toolbar { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(210px, 280px) auto; gap: 12px; align-items: end; }
.master-customer-toolbar label { min-width: 0; }
.master-customer-count { margin: 10px 0; }
.master-customers-panel .master-customer-table { table-layout: fixed; min-width: 1180px; }
.master-customers-panel .master-customer-table :is(th, td) { padding: 9px 10px; }
.master-customers-panel .master-customer-table td { vertical-align: middle; }
.master-customers-panel .master-customer-line { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; line-height: 22px; height: 22px; }
.master-customer-name { font-weight: 700; }
.master-customers-panel .master-customer-line.status { width: fit-content; max-width: 100%; padding: 0 6px; font-size: 11px; }
.master-customers-panel .master-customer-table .button { max-width: 100%; min-height: 22px; height: 22px; padding: 2px 6px; line-height: 18px; font-size: 11px; white-space: nowrap; }
.master-customer-actions { display: grid; justify-items: start; gap: 0; }
.master-customers-panel .master-customer-table .master-customer-empty { padding: 22px 10px; color: var(--muted); }
@media (max-width: 760px) {
  .master-customer-toolbar { grid-template-columns: 1fr; gap: 10px; }
  .master-customer-toolbar > .button { justify-self: start; }
}
