/* [next]/internal/font/google/lato_9ab1087.module.css [app-client] (css) */
@font-face {
  font-family: Lato;
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../media/20f1c48c725d3555-s.0u-s08866kges.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Lato;
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../media/f30fd2e485acf1bc-s.p.35belnv3c2-b-.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Lato;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/b529365fa126a3f2-s.441olqq_uijdr.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Lato;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/8e451580e5e95631-s.p.27vw08z6_vw0m.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Lato;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/d74bdd14d6019bc6-s.097vcw437jzga.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Lato;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/345c85a432359eed-s.p.0zem_9y19rte6.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Lato;
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../media/da28569d36042d01-s.2tfobr5_17yq8.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Lato;
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../media/9be384ea93fe3f49-s.p.0ig786lf0ff2-.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Lato Fallback;
  src: local(Arial);
  ascent-override: 101.03%;
  descent-override: 21.8%;
  line-gap-override: 0.0%;
  size-adjust: 97.69%;
}

.lato_9ab1087-module__V4Zvqa__className {
  font-family: Lato, Lato Fallback;
  font-style: normal;
}

.lato_9ab1087-module__V4Zvqa__variable {
  --font-lato: "Lato", "Lato Fallback";
}

/* [project]/app/globals.css [app-client] (css) */
:root {
  --navy-900: #0e224d;
  --navy-800: #192038;
  --navy-700: #222b45;
  --navy-600: #2e3a59;
  --navy-500: #46586d;
  --navy-400: #7a849d;
  --navy-300: #8f9bb3;
  --navy-200: #c5cee0;
  --navy-150: #e4e9f2;
  --navy-100: #edf1f7;
  --navy-050: #f7f9fc;
  --navy-heading: #122958;
  --primary-700: #0040d2;
  --primary-600: #0053f5;
  --primary-500: #0053f5;
  --primary-400: #3e84f9;
  --primary-300: #7daefc;
  --primary-200: #bcd7ff;
  --primary-100: #d6e3fd;
  --primary-050: #e4edff;
  --primary-t08: #0053f514;
  --primary-t16: #0053f529;
  --primary-t32: #0053f552;
  --secondary-600: #00a8a8;
  --secondary-500: #00cfcf;
  --secondary-050: #e6fbfb;
  --accent-grad: linear-gradient(135deg,#ee68f8,#0040d2);
  --success-600: #0d905f;
  --success-500: #1bc965;
  --success-100: #e7f6ee;
  --warning-700: #c08015;
  --warning-600: #db941a;
  --warning-600-rgb: 219,148,26;
  --warning-500: #ffb624;
  --warning-text: #93580b;
  --warning-100: #ffdc7b;
  --danger-600: #c8362f;
  --danger-500: #ff4c4c;
  --danger-100: #fbeae9;
  --bg: #f7f9fc;
  --surface: #fff;
  --border: #e4e9f2;
  --shadow: 0 1px 5px 0 #002fb033,0 3px 4px 0 #002fb01f,0 2px 4px 0 #002fb024;
  --shadow-sm: 0 1px 3px 0 #002fb024,0 1px 2px 0 #002fb01a;
  --shadow-lg: 0 8px 24px #00000021;
  --pill: 999px;
  --topbar-h: 56px;
  --rail-w: 88px;
  --t360-space-0: 0;
  --t360-space-1: 2px;
  --t360-space-2: 4px;
  --t360-space-3: 8px;
  --t360-space-4: 12px;
  --t360-space-5: 16px;
  --t360-space-6: 20px;
  --t360-space-7: 24px;
  --t360-space-8: 32px;
  --t360-space-9: 40px;
  --t360-space-10: 48px;
  --t360-space-12: 64px;
  --t360-radius-1: 2px;
  --t360-radius-2: 4px;
  --t360-radius-3: 5px;
  --t360-radius-4: 8px;
  --t360-radius-5: 16px;
  --t360-radius-pill: 32px;
  --t360-shadow-1dp: 0 1px 2px 0 #00000024, 0 1px 1px 0 #0000001f, 0 1px 1px 0 #0003;
  --t360-shadow-8dp: 0 8px 10px 1px #00000024, 0 3px 14px 2px #0000001f, 0 5px 5px -3px #0003;
}

.setup-admin {
  gap: var(--t360-space-5);
  min-width: 0;
  padding: var(--t360-space-6);
  flex-direction: column;
  display: flex;
}

.setup-admin__head {
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--t360-space-5);
  display: flex;
}

.setup-admin__head h2 {
  color: var(--navy-heading);
  margin: 0;
}

.setup-admin__head p {
  margin: var(--t360-space-2) 0 0;
  color: var(--navy-500);
}

.setup-admin__tabs {
  gap: var(--t360-space-2);
  border-bottom: 1px solid var(--border);
  display: flex;
}

.setup-admin__tabs button {
  padding: var(--t360-space-4) var(--t360-space-5);
  color: var(--navy-500);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  border-bottom: 2px solid #0000;
  font-weight: 700;
}

.setup-admin__tabs button.active {
  color: var(--primary-600);
  border-bottom-color: var(--secondary-600);
}

.setup-admin__toolbar, .setup-admin__fields {
  align-items: end;
  gap: var(--t360-space-4);
  flex-wrap: wrap;
  display: flex;
}

.setup-admin__split {
  gap: var(--t360-space-5);
  grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr);
  min-width: 0;
  display: grid;
}

.setup-admin__panel, .setup-admin__form, .setup-simulation, .setup-simulation__result {
  gap: var(--t360-space-4);
  background: var(--surface);
  border: 1px solid var(--border);
  padding: var(--t360-space-5);
  border-radius: 8px;
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.setup-admin__panel h3, .setup-admin__panel h4, .setup-admin__form h3, .setup-simulation h3 {
  color: var(--navy-heading);
  margin: 0;
}

.setup-admin__message {
  border-left: 4px solid var(--primary-500);
  background: var(--primary-050);
  padding: var(--t360-space-4);
}

.setup-admin__message.error, .setup-simulation__result .error {
  border-color: var(--danger-600);
  background: var(--danger-100);
  color: var(--danger-600);
}

.setup-admin__message.warning, .setup-policy .warning {
  border-color: var(--warning-600);
  background: var(--warning-100);
  color: var(--warning-text);
}

.setup-admin__readonly, .setup-admin__empty {
  color: var(--navy-500);
}

.setup-admin__check {
  align-items: center;
  gap: var(--t360-space-3);
  display: flex;
}

.setup-admin__member {
  gap: var(--t360-space-2);
  border-top: 1px solid var(--border);
  padding-top: var(--t360-space-3);
  grid-template-columns: minmax(100px, 1fr) minmax(100px, 1fr) auto;
  align-items: center;
  display: grid;
}

.setup-admin__member strong, .setup-admin__member .btn {
  grid-column: 1 / -1;
}

.setup-admin__member-add {
  gap: var(--t360-space-3);
  border-top: 1px solid var(--border);
  padding-top: var(--t360-space-4);
  flex-direction: column;
  display: flex;
}

.setup-policy__meta {
  gap: var(--t360-space-3);
  color: var(--navy-500);
  flex-wrap: wrap;
  align-items: center;
  display: flex;
}

.setup-policy__meta span, .setup-policy__meta strong, .setup-policy__meta code {
  border: 1px solid var(--border);
  border-radius: var(--pill);
  padding: var(--t360-space-2) var(--t360-space-4);
  background: var(--surface);
}

.setup-policy__scroll {
  background: var(--surface);
  border: 1px solid var(--border);
  max-width: 100%;
  padding: var(--t360-space-4);
  border-radius: 8px;
  overflow-x: auto;
}

.setup-policy table.matrix {
  border-collapse: collapse;
  width: max(1180px, 100%);
}

.setup-policy .matrix th, .setup-policy .matrix td {
  padding: var(--t360-space-3);
  border-bottom: 1px solid var(--border);
  vertical-align: top;
  text-align: left;
}

.setup-policy .matrix th {
  color: var(--navy-600);
  font-size: 12px;
}

.setup-policy__conditions {
  gap: var(--t360-space-2);
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  display: grid;
}

.setup-policy__step {
  gap: var(--t360-space-2);
  border: 1px solid var(--border);
  padding: var(--t360-space-3);
  margin-bottom: var(--t360-space-3);
  border-radius: 4px;
  grid-template-columns: minmax(170px, 1fr);
  display: grid;
}

.setup-policy__step label {
  gap: var(--t360-space-2);
  align-items: center;
  display: flex;
}

.setup-policy__addressee {
  gap: var(--t360-space-2);
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  display: grid;
}

.setup-policy__addressee small {
  padding: var(--t360-space-2);
  grid-column: 1 / -1;
}

.setup-policy__actions {
  gap: var(--t360-space-3);
  padding: var(--t360-space-4);
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  flex-wrap: wrap;
  align-items: center;
  display: flex;
  position: sticky;
  bottom: 0;
}

.setup-policy__actions small {
  color: var(--navy-500);
}

.setup-simulation__result ol {
  padding-left: var(--t360-space-6);
  margin: 0;
}

@media (max-width: 900px) {
  .setup-admin {
    padding: var(--t360-space-4);
  }

  .setup-admin__split, .setup-admin__member, .setup-policy__conditions {
    grid-template-columns: minmax(0, 1fr);
  }
}

* {
  box-sizing: border-box;
}

html, body {
  height: 100%;
}

body {
  font-family: var(--font-lato), Lato, Arial, sans-serif;
  color: var(--navy-800);
  background: var(--bg);
  margin: 0;
  font-size: 13px;
  overflow: hidden;
}

button, input, select {
  font: inherit;
}

select:not([multiple]) {
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2346586d' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-position: right 12px center !important;
  background-repeat: no-repeat !important;
  background-size: 10px 6px !important;
  padding-right: 32px !important;
}

a {
  color: inherit;
  text-decoration: none;
}

h1, h2, h3, p {
  margin: 0;
}

::-webkit-scrollbar {
  background: #f2f6ff;
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: #f2f6ff;
}

::-webkit-scrollbar-button {
  width: 0;
  height: 0;
  display: none;
}

::-webkit-scrollbar-thumb {
  background: var(--navy-200);
  background-clip: padding-box;
  border: 2px solid #f2f6ff;
  border-bottom-width: 3px;
  border-radius: 8px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--navy-600);
}

::-webkit-scrollbar-corner {
  background: none;
}

.topbar {
  height: var(--topbar-h);
  box-shadow: 0 1px 0 var(--navy-150), 0 2px 6px 0 #002fb029, 0 1px 3px 0 #002fb01f;
  z-index: 100;
  background: #fff;
  grid-template-columns: 1fr minmax(260px, 480px) 1fr;
  align-items: center;
  gap: 14px;
  padding: 0 14px;
  display: grid;
  position: relative;
}

.topbar--settings {
  grid-template-columns: auto 1fr auto;
}

.brand {
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.client-logo {
  flex-shrink: 0;
  width: auto;
  height: 22px;
}

.brand-divider {
  background: var(--navy-150);
  flex-shrink: 0;
  width: 1px;
  height: 24px;
}

.app-id {
  align-items: center;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.app-icon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
}

.name {
  color: var(--navy-800);
  letter-spacing: .02em;
  font: 700 17px / 22px Lato, sans-serif;
}

.search {
  border: 2px solid var(--primary-200);
  background: var(--navy-050);
  height: 40px;
  color: var(--navy-400);
  border-radius: 4px;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  display: flex;
}

.search input {
  min-width: 0;
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: 0;
  flex: 1;
}

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

.tb-btn {
  background: var(--navy-100);
  width: 36px;
  height: 36px;
  color: var(--navy-600);
  cursor: pointer;
  border: 2px solid #0000;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  transition: background .14s, border-color .14s;
  display: flex;
  position: relative;
}

.tb-btn.ai {
  background: var(--primary-t08);
}

.tb-btn.ai:hover {
  background: var(--primary-t16);
  border-color: var(--primary-200);
}

.tb-btn.notif {
  color: var(--warning-500);
  background: #ffb62424;
}

.tb-btn.notif:hover {
  background: #ffb62447;
  border-color: #ffb62473;
}

.notif-wrap {
  display: flex;
}

.notif-pop {
  top: calc(var(--topbar-h) + 14px);
  z-index: 200;
  width: 380px;
  max-width: calc(100vw - 32px);
  box-shadow: var(--shadow);
  background: #fff;
  border-radius: 14px;
  padding: 14px 16px;
  position: fixed;
  right: 16px;
}

.notif-pop:before {
  content: "";
  top: -6px;
  right: var(--notif-caret-offset, 26px);
  background: #fff;
  width: 12px;
  height: 12px;
  position: absolute;
  transform: rotate(45deg);
  box-shadow: -1px -1px 3px #002fb014;
}

.notif-pop-head {
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 10px;
  display: flex;
}

.notif-pop-title {
  color: var(--navy-heading);
  margin: 0;
  font: 900 16px / 20px Lato, sans-serif;
}

.notif-pop-action {
  cursor: pointer;
  color: var(--primary-600);
  background: none;
  border: 0;
  padding: 0;
  font: 700 12px / 16px Lato, sans-serif;
}

.notif-pop-action:hover {
  text-decoration: underline;
}

.notif-pop-empty {
  color: var(--navy-500);
  margin: 0;
  padding: 8px 0;
  font: 400 13px / 18px Lato, sans-serif;
}

.notif-pop-list {
  max-height: 360px;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-y: auto;
}

.notif-pop-item {
  border-top: 1px solid var(--navy-100);
}

.notif-pop-item:first-child {
  border-top: 0;
}

.notif-pop-link {
  color: var(--navy-900);
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 9px 0;
  text-decoration: none;
  display: flex;
}

.notif-pop-link:hover .notif-pop-item-title {
  color: var(--primary-500);
}

.notif-pop-item-title {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  font: 400 13px / 18px Lato, sans-serif;
  overflow: hidden;
}

.notif-pop-item.is-unread .notif-pop-item-title {
  font-weight: 700;
}

.notif-pop-item-age {
  color: var(--navy-500);
  flex-shrink: 0;
  font: 400 11px / 16px Lato, sans-serif;
}

.apps-btn {
  border-radius: var(--pill);
  background: var(--primary-t08);
  cursor: pointer;
  border: 2px solid #0000;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  height: 36px;
  padding: 0 4px 0 14px;
  transition: background .14s, border-color .14s;
  display: flex;
}

.apps-btn:hover {
  background: var(--primary-t16);
  border-color: var(--primary-500);
}

.apps-label {
  color: var(--primary-600);
  white-space: nowrap;
  font: 700 13px / 1 Lato, sans-serif;
}

.apps-icon {
  background: #0053f521;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  transition: background .14s;
  display: flex;
}

.apps-btn:hover .apps-icon {
  background: #0053f538;
}

.apps {
  position: relative;
}

.apps-pop {
  top: calc(var(--topbar-h) + 14px);
  z-index: 200;
  width: 640px;
  max-width: calc(100vw - 40px);
  box-shadow: var(--shadow);
  background: #fff;
  border-radius: 14px;
  padding: 16px;
  position: fixed;
  right: 16px;
}

.apps-pop:before {
  content: "";
  top: -6px;
  right: var(--apps-caret-offset, 26px);
  background: #fff;
  width: 12px;
  height: 12px;
  position: absolute;
  transform: rotate(45deg);
  box-shadow: -1px -1px 3px #002fb014;
}

.apps-pop-title {
  color: var(--primary-t32);
  margin: 0 0 14px;
  font: 900 24px / 28px Lato, sans-serif;
}

.apps-pop-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  display: grid;
}

.apps-pop-card {
  border: 1px solid var(--primary-200);
  text-align: left;
  cursor: default;
  background: #fff;
  border-radius: 10px;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  padding: 4px;
  font-family: inherit;
  transition: border-color .14s, border-width .14s, box-shadow .14s;
  display: flex;
}

.apps-pop-card:hover {
  border-width: 2px;
  border-color: var(--primary-300);
  box-shadow: var(--shadow-sm);
}

.apps-pop-card:hover strong {
  color: var(--primary-400);
}

button.apps-pop-card {
  cursor: pointer;
}

.apps-pop-icon-wrap {
  background: var(--primary-t08);
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  display: flex;
}

.apps-pop-icon {
  width: 48px;
  height: 48px;
  display: block;
}

.apps-pop-copy {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.apps-pop-card strong {
  color: var(--navy-900);
  font: 900 18px / 24px Lato, sans-serif;
  transition: color .14s;
}

.apps-pop-card p {
  color: var(--navy-700);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  height: 32px;
  margin: 0;
  font: 400 12px / 16px Lato, sans-serif;
  display: -webkit-box;
  overflow: hidden;
}

.dot {
  background: var(--danger-500);
  color: #fff;
  pointer-events: none;
  border: 2px solid #fff;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  min-width: 18px;
  height: 16px;
  padding: 0 4px;
  font: 700 10px / 1 Lato;
  display: inline-flex;
  position: absolute;
  top: -3px;
  right: -5px;
}

.who {
  background: var(--primary-t08);
  border: 2px solid var(--primary-200);
  border-radius: 10px;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 0 8px 0 10px;
  display: flex;
}

.who.lang {
  padding-left: 10px;
}

.who select {
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: 0;
  font-weight: 700;
}

.av {
  background: var(--primary-500);
  color: #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  font: 700 11px / 1 Lato;
  display: flex;
}

.profile {
  position: relative;
}

.profile-trigger {
  border: 2px solid var(--primary-200);
  background: var(--primary-t08);
  cursor: pointer;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  height: 40px;
  padding: 0 6px 0 12px;
  transition: background .14s, border-color .14s;
  display: flex;
}

.profile-trigger:hover {
  background: var(--primary-t16);
  border-color: var(--primary-500);
}

.profile-trigger .t360-logo {
  flex-shrink: 0;
  width: auto;
  height: 20px;
}

.profile-trigger .av {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
}

.profile-pop {
  z-index: 200;
  width: 260px;
  box-shadow: var(--shadow);
  background: #fff;
  border-radius: 12px;
  padding: 20px 18px 8px;
  position: absolute;
  top: calc(100% + 14px);
  right: 0;
}

.profile-pop:before {
  content: "";
  background: #fff;
  width: 12px;
  height: 12px;
  position: absolute;
  top: -6px;
  right: 15px;
  transform: rotate(45deg);
  box-shadow: -1px -1px 3px #002fb014;
}

.profile-pop-head {
  border-bottom: 1px solid var(--border);
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  margin-bottom: 6px;
  padding-bottom: 14px;
  display: flex;
}

.profile-pop-av {
  background: var(--primary-500);
  color: #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 64px;
  height: 64px;
  margin-bottom: 6px;
  font: 700 22px / 1 Lato;
  display: flex;
}

.profile-pop-head strong {
  color: var(--navy-800);
  font: 900 15px / 1.2 Lato, sans-serif;
}

.profile-pop-role {
  color: var(--navy-400);
  font-size: 12px;
}

.profile-pop-row {
  border-bottom: 1px solid var(--border);
  color: var(--navy-500);
  align-items: center;
  gap: 10px;
  padding: 10px 4px;
  display: flex;
}

.profile-pop-row:last-child {
  border-bottom: 0;
}

.profile-pop-row > span:first-of-type {
  flex: 1;
  font: 700 12px / 1 Lato, sans-serif;
}

.profile-pop-row select {
  color: var(--navy-800);
  text-align: right;
  background: none;
  border: 0;
  outline: 0;
  max-width: 130px;
  font-weight: 700;
}

.main {
  height: calc(100vh - var(--topbar-h));
  display: flex;
  overflow: hidden;
}

.rail {
  width: var(--rail-w);
  flex: 0 0 var(--rail-w);
  background: var(--navy-900);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  flex-direction: column;
  align-items: center;
  display: flex;
}

.rail-pinned {
  flex-direction: column;
  flex-shrink: 0;
  align-items: center;
  width: 100%;
  padding: 12px 0 0;
  display: flex;
}

.rail-scroll {
  scrollbar-color: var(--primary-400) transparent;
  scrollbar-width: thin;
  flex-direction: column;
  flex: 1;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 0;
  padding: 8px 0 6px;
  display: flex;
  overflow: hidden auto;
}

.rail-scroll::-webkit-scrollbar {
  width: 4px;
}

.rail-scroll::-webkit-scrollbar-track {
  background: none;
}

.rail-scroll::-webkit-scrollbar-thumb {
  background: var(--primary-400);
  border-radius: 2px;
}

.nav {
  cursor: pointer;
  background: none;
  border: 0;
  flex-direction: column;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  width: 100%;
  padding: 0 8px;
  display: flex;
  position: relative;
}

.ico {
  width: 68px;
  height: 44px;
  color: var(--primary-200);
  border-radius: 22px;
  justify-content: center;
  align-items: center;
  transition: background .12s, color .12s;
  display: flex;
  position: relative;
}

.nav:hover .ico {
  background: rgba(var(--warning-600-rgb),.35);
}

.nav.active .ico {
  background: var(--warning-600);
  color: #fff;
}

.lbl {
  letter-spacing: .01em;
  color: var(--primary-200);
  text-align: center;
  white-space: nowrap;
  text-overflow: ellipsis;
  flex-shrink: 0;
  max-width: 76px;
  font: 700 12px / 16px Lato;
  display: block;
  overflow: hidden;
}

.lbl--wrap {
  -webkit-line-clamp: 2;
  white-space: normal;
  overflow-wrap: break-word;
  -webkit-box-orient: vertical;
  height: 32px;
  display: -webkit-box;
}

.nav.active .lbl {
  color: var(--warning-600);
}

.nav.disabled {
  opacity: .45;
  cursor: not-allowed;
}

.badge {
  background: var(--danger-500);
  color: #fff;
  border: 2px solid var(--navy-900);
  z-index: 1;
  border-radius: 9px;
  justify-content: center;
  align-items: center;
  min-width: 20px;
  height: 18px;
  padding: 0 5px;
  font: 700 10px / 1 Lato;
  display: inline-flex;
  position: absolute;
  top: -4px;
  right: -6px;
}

.rail-sep {
  background: #bcd7ff26;
  width: 44px;
  height: 1px;
  margin: 4px 0;
}

.rail-pinned--asset .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--asset {
  padding-top: 42.5px;
}

.rail-pinned--asset .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--lease .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--lease {
  padding-top: 42.5px;
}

.rail-pinned--lease .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--unit .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--unit {
  padding-top: 42.5px;
}

.rail-pinned--unit .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--bka .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--bka {
  padding-top: 42.5px;
}

.rail-pinned--bka .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--vendor .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--vendor {
  padding-top: 42.5px;
}

.rail-pinned--vendor .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--invoice .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--invoice {
  padding-top: 42.5px;
}

.rail-pinned--invoice .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--debtor .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--debtor {
  padding-top: 42.5px;
}

.rail-pinned--debtor .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--mahncase .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--mahncase {
  padding-top: 42.5px;
}

.rail-pinned--mahncase .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--meter .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--meter {
  padding-top: 42.5px;
}

.rail-pinned--meter .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--run .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--run {
  padding-top: 42.5px;
}

.rail-pinned--run .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--mialease .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--mialease {
  padding-top: 42.5px;
}

.rail-pinned--mialease .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--indexseries .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--indexseries {
  padding-top: 42.5px;
}

.rail-pinned--indexseries .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--vatobjekt .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--vatobjekt {
  padding-top: 42.5px;
}

.rail-pinned--vatobjekt .rail-sep {
  margin-top: 42.5px;
}

.rail-pinned--vatdocument .rail-sep {
  background: var(--navy-100);
  width: 100%;
}

.rail-pinned--vatdocument {
  padding-top: 42.5px;
}

.rail-pinned--vatdocument .rail-sep {
  margin-top: 42.5px;
}

.rail-back {
  background: var(--navy-100);
  width: 40px;
  height: 40px;
  color: var(--navy-800);
  cursor: pointer;
  border: 0;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  transition: background .12s;
  display: flex;
}

.rail-back:hover {
  background: var(--navy-150);
}

.rail-tooltip {
  background: var(--primary-600);
  color: #fff;
  letter-spacing: .01em;
  white-space: nowrap;
  box-shadow: var(--shadow);
  pointer-events: none;
  z-index: 110;
  border-radius: 4px;
  padding: 9px 14px;
  font: 700 12px / 16px Lato;
  position: fixed;
  transform: translateY(-50%);
}

.rail-tooltip:before {
  content: "";
  border-top: 7px solid #0000;
  border-bottom: 7px solid #0000;
  border-right: 7px solid var(--primary-600);
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  left: -6px;
  transform: translateY(-50%);
}

.content {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.pageHeader {
  z-index: 96;
  border-bottom: 1px solid var(--border);
  background: #fff;
  flex-shrink: 0;
  position: relative;
}

.ph-top {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  height: 48px;
  padding: 0 16px;
  display: flex;
}

.ph-title {
  color: var(--navy-heading);
  font: 900 20px / 26px Lato;
}

.ph-lead {
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.ph-lead .ph-title {
  flex-shrink: 0;
}

.ph-lead-meta {
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.moduleActions {
  align-items: center;
  gap: 8px;
  display: flex;
}

.moduleActions > * {
  flex-shrink: 0;
}

.bka-context-strip {
  border-top: 1px solid var(--border);
  background: var(--secondary-050);
  align-items: center;
  gap: 12px;
  padding: 7px 16px;
  display: flex;
}

.bka-context-banner {
  min-width: 0;
  color: var(--navy-600);
  margin: 0;
  font: 600 12px / 1.4 Lato, sans-serif;
}

.bka-context-return {
  flex-shrink: 0;
  margin-left: auto;
}

.subtabs {
  gap: 2px;
  min-height: 38px;
  padding: 0 16px;
  display: flex;
}

.subtab {
  cursor: pointer;
  height: 38px;
  color: var(--navy-400);
  background: none;
  border: 0;
  border-bottom: 3px solid #0000;
  align-items: center;
  gap: 6px;
  padding: 0 14px;
  font: 700 14px / 1 Lato;
  display: flex;
}

.subtab:hover {
  color: var(--navy-600);
}

.subtab.active {
  color: var(--primary-600);
  border-bottom-color: var(--secondary-500);
}

.body {
  flex: 1;
  padding: 16px;
  overflow-y: auto;
}

.btn {
  cursor: pointer;
  border: 0;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-width: 120px;
  min-height: 32px;
  padding: 0 12px;
  font: 700 13px / 1 Lato;
  display: inline-flex;
}

.btn-primary {
  background: var(--primary-600);
  color: #fff;
}

.btn-primary:hover {
  background: var(--primary-700);
}

.btn-success {
  background: var(--success-500);
  color: #fff;
}

.btn-success:hover {
  background: var(--success-600);
}

.btn-ghost {
  color: var(--navy-800);
  border: 2px solid var(--navy-200);
  background: #fff;
}

.btn-ghost:hover {
  color: var(--primary-700);
  border-color: var(--primary-200);
  background: var(--primary-050);
}

.btn-outline-primary {
  color: var(--primary-500);
  border: 2px solid var(--primary-500);
  background: #fff;
}

.btn-outline-primary:hover {
  background: var(--primary-050);
}

.btn-outline-danger {
  color: var(--danger-600);
  border: 2px solid var(--danger-600);
  background: #fff;
}

.btn-outline-danger:hover {
  background: var(--danger-100);
}

.btn:disabled {
  cursor: not-allowed;
  opacity: 1;
  background: var(--navy-150);
  color: var(--navy-300);
  border-color: var(--navy-150);
}

.filter-tabs {
  border: 1px solid var(--navy-200);
  border-radius: 4px;
  flex-wrap: nowrap;
  gap: 0;
  margin-right: auto;
  display: flex;
  overflow: hidden;
}

.filter-tab {
  border: none;
  border-right: 1px solid var(--navy-200);
  min-height: 32px;
  color: var(--navy-700);
  cursor: pointer;
  background: #fff;
  align-items: center;
  gap: 10px;
  padding: 0 18px;
  font: 700 13px / 1 Lato;
  display: inline-flex;
}

.filter-tab:last-child {
  border-right: none;
}

.filter-tab:hover {
  background: var(--navy-050);
}

.filter-tab.active {
  background: var(--navy-800);
  color: #fff;
}

.filter-tab.active:hover {
  background: var(--navy-800);
}

.filter-tab:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: -3px;
  z-index: 1;
}

.filter-tab-count {
  border-radius: var(--pill);
  background: var(--navy-100);
  min-width: 26px;
  height: 16px;
  color: inherit;
  justify-content: center;
  align-items: center;
  padding: 0 8px;
  font: 700 12px / 16px Lato, sans-serif;
  display: inline-flex;
}

.filter-tab.active .filter-tab-count {
  background: #ffffff3d;
}

.chip {
  border-radius: var(--pill);
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  font: 900 11px / 1 Lato, sans-serif;
  display: inline-flex;
}

.chip.blue {
  color: var(--primary-700);
  background: var(--primary-050);
}

.split-band {
  grid-template-columns: minmax(320px, 1fr) 320px;
  align-items: stretch;
  gap: 16px;
  display: grid;
}

.native-note, .status-strip, .empty-card {
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 8px;
}

.native-note {
  padding: 18px 20px;
}

.native-note > span {
  color: var(--primary-600);
  text-transform: uppercase;
  letter-spacing: 0;
  margin-bottom: 11px;
  font: 900 11px / 1 Lato;
  display: inline-flex;
}

.native-note h2 {
  color: var(--navy-800);
  margin-bottom: 10px;
  font: 900 22px / 1.2 Lato;
}

.native-note p {
  color: var(--navy-500);
  max-width: 760px;
  margin-bottom: 16px;
  line-height: 1.55;
}

.status-strip {
  padding: 8px 14px;
}

.status-strip div {
  border-bottom: 1px dashed var(--navy-100);
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  display: flex;
}

.status-strip div:last-child {
  border-bottom: 0;
}

.status-strip strong {
  color: var(--navy-400);
  font-size: 12px;
}

.status-strip span {
  color: var(--navy-800);
  text-align: right;
  font-weight: 700;
}

.empty-card {
  text-align: center;
  min-height: 260px;
  color: var(--navy-400);
  padding: 48px;
}

.empty-card h2 {
  color: var(--navy-800);
  margin: 10px 0 6px;
  font: 900 20px / 1.2 Lato;
}

.empty-icon {
  color: var(--navy-200);
  justify-content: center;
  display: flex;
}

#toast {
  z-index: 200;
  border: 1px solid;
  border-radius: 10px;
  max-width: 380px;
  padding: 13px 16px;
  font-size: 13px;
  position: fixed;
  top: 64px;
  right: 24px;
  box-shadow: 0 8px 24px #0e224d1f;
}

#toast.ok {
  background: var(--success-100);
  color: #14613a;
  border-color: #bfe6cf;
}

#toast.err {
  background: var(--danger-100);
  color: #92231d;
  border-color: #f0c4c0;
}

#toast p {
  margin-top: 5px;
  line-height: 1.4;
}

#toast .x {
  float: right;
  cursor: pointer;
  opacity: .6;
  background: none;
  border: 0;
  margin-left: 10px;
  font-weight: 900;
}

@media (max-width: 860px) {
  .topbar {
    grid-template-columns: 1fr;
    height: auto;
    padding: 10px 14px;
  }

  .main {
    height: calc(100vh - 144px);
  }

  .split-band {
    grid-template-columns: 1fr;
  }

  .search {
    order: 3;
  }

  .tbright {
    justify-content: flex-start;
  }
}

.grid-demo-page {
  background: var(--bg);
  min-height: 100vh;
  padding: 24px;
  overflow: auto;
}

.t360grid {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 0;
  box-shadow: var(--shadow);
  background: #fff;
  border-radius: 8px;
  flex-direction: column;
  display: flex;
  position: relative;
}

.tg-toolbar {
  border-bottom: 1px solid var(--navy-100);
  background: #fff;
  border-radius: 8px 8px 0 0;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  min-height: 56px;
  padding: 10px 12px 10px 16px;
  display: flex;
}

.tg-toolbar h2 {
  color: var(--navy-800);
  margin: 0;
  font: 900 15px / 1.2 Lato, sans-serif;
}

.tg-toolbar p {
  color: var(--navy-400);
  margin: 4px 0 0;
  font-size: 12px;
}

.tg-tools {
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  display: flex;
  position: relative;
}

.tg-quick {
  border: 1px solid var(--navy-200);
  min-width: 220px;
  height: 32px;
  color: var(--navy-400);
  background: #fff;
  border-radius: 4px;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  display: flex;
}

.tg-quick input {
  width: 100%;
  min-width: 0;
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: 0;
}

.tg-tool {
  border: 1px solid var(--navy-200);
  width: 32px;
  height: 32px;
  color: var(--navy-500);
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.tg-tool:hover, .tg-tool.active {
  border-color: var(--primary-600);
  color: var(--primary-600);
  background: var(--primary-t08);
}

.tg-body, .tg-scroll-region {
  display: contents;
}

.tg-table-shell {
  scrollbar-color: var(--primary-200) var(--navy-050);
  width: 100%;
  max-height: calc(100vh - 156px);
  overflow: auto;
}

.tg-table {
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
  min-width: 1120px;
}

.tg-table th {
  z-index: 3;
  border-bottom: 1px solid var(--navy-200);
  background: var(--navy-100);
  height: 36px;
  color: var(--navy-800);
  text-align: left;
  padding: 0;
  position: sticky;
  top: 0;
}

.tg-table th.pinned, .tg-table td.pinned {
  z-index: 4;
  position: sticky;
}

.tg-table th.pinned {
  z-index: 6;
}

.tg-table .tg-filter-row th.pinned {
  z-index: 5;
}

.tg-table td.pinned-left, .tg-table th.pinned-left {
  box-shadow: 1px 0 0 var(--navy-200);
}

.tg-table td.pinned-right, .tg-table th.pinned-right {
  box-shadow: -1px 0 0 var(--navy-200);
}

.tg-table .tg-filter-row th {
  border-bottom: 1px solid var(--navy-200);
  background: #fff;
  height: 38px;
  top: 36px;
}

.tg-table th.right, .tg-table td.right {
  text-align: right;
}

.tg-table .tg-group-row td {
  border-bottom: 1px solid var(--navy-200);
  background: var(--navy-050);
  padding: 0;
}

.tg-th {
  width: 100%;
  height: 36px;
  color: inherit;
  cursor: default;
  background: none;
  border: 0;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  font: 700 12.5px / 1.1 Lato, sans-serif;
  display: inline-flex;
}

.tg-th.sortable {
  cursor: pointer;
}

.tg-th.sortable:hover {
  color: var(--primary-600);
}

.tg-filter-cell {
  align-items: center;
  gap: 5px;
  padding: 4px 8px;
  display: flex;
  position: relative;
}

.tg-filter-cell input {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-width: 0;
  height: 28px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 0 8px;
  font-size: 12px;
}

.tg-filter-cell input:disabled {
  background: var(--navy-050);
  color: var(--navy-300);
}

.tg-funnel, .tg-reset {
  border: 1px solid var(--navy-200);
  width: 28px;
  height: 28px;
  color: var(--navy-400);
  cursor: pointer;
  background: #fff;
  border-radius: 6px;
  flex: 0 0 28px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
  position: relative;
}

.tg-funnel:hover, .tg-funnel.on, .tg-reset:hover {
  border-color: var(--primary-600);
  color: var(--primary-600);
}

.tg-red-dot {
  background: var(--danger-500);
  border: 1px solid #fff;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  position: absolute;
  top: 3px;
  right: 3px;
}

.tg-table tbody td, .tg-table tfoot td {
  border-bottom: 1px solid var(--navy-100);
  height: 36px;
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #fff;
  padding: 0 10px;
  overflow: hidden;
}

.tg-table tbody tr:nth-child(2n) td {
  background: var(--navy-050);
}

.tg-table tbody tr:hover td {
  background: var(--primary-t08);
}

.tg-table tbody tr.clickable {
  cursor: pointer;
}

.tg-table tbody tr.tg-child-row td {
  background: var(--navy-050);
  color: var(--navy-600);
}

.tg-table tbody tr.tg-child-row td:first-child {
  padding-left: 30px;
}

.tg-num, .tg-summary {
  font-variant-numeric: tabular-nums;
}

.tg-pill {
  border-radius: var(--pill);
  justify-content: center;
  align-items: center;
  min-width: 86px;
  height: 22px;
  padding: 0 8px;
  font: 700 11px / 1 Lato, sans-serif;
  display: inline-flex;
}

.tg-pill.green {
  color: #0f8d46;
  background: #e8fbef;
}

.tg-pill.amber {
  color: var(--warning-text);
  background: var(--warning-100);
}

.tg-pill.blue {
  color: var(--primary-700);
  background: var(--primary-050);
}

.tg-pill.red {
  color: #b11d1d;
  background: #ffe7e7;
}

.tg-pill.gray {
  color: var(--navy-500);
  background: var(--navy-100);
}

.tg-empty {
  text-align: center;
  height: 116px !important;
  color: var(--navy-400) !important;
}

.tg-empty svg {
  color: var(--navy-300);
  margin: 0 auto 8px;
  display: block;
}

.tg-table tfoot td {
  z-index: 2;
  background: var(--primary-050);
  border-top: 1px solid var(--primary-200);
  border-bottom: 0;
  height: 38px;
  font-weight: 900;
  position: sticky;
  bottom: 0;
}

.tg-summary-sum {
  color: var(--danger-500);
}

.tg-summary-avg {
  color: var(--primary-600);
}

.tg-summary-count, .tg-count-summary {
  color: var(--navy-500);
}

.tg-dash {
  color: var(--navy-300);
}

.tg-footer {
  border-top: 1px solid var(--navy-100);
  height: 34px;
  color: var(--navy-500);
  background: #fff;
  border-radius: 0 0 8px 8px;
  align-items: center;
  padding: 0 14px;
  font-size: 12px;
  display: flex;
}

.tg-footer b {
  color: var(--navy-800);
  margin: 0 3px;
}

.tg-pop {
  z-index: 20;
  border: 1px solid var(--navy-200);
  width: 230px;
  box-shadow: var(--shadow-lg);
  text-align: left;
  background: #fff;
  border-radius: 8px;
  position: absolute;
  top: 34px;
  right: 0;
}

.tg-columns-pop {
  top: 38px;
}

.tg-pop-h {
  border-bottom: 1px solid var(--navy-100);
  height: 34px;
  color: var(--navy-500);
  text-transform: uppercase;
  justify-content: space-between;
  align-items: center;
  padding: 0 10px;
  font: 900 11px / 1 Lato, sans-serif;
  display: flex;
}

.tg-pop-h button {
  width: 24px;
  height: 24px;
  color: var(--navy-400);
  cursor: pointer;
  background: none;
  border: 0;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.tg-pop-b {
  max-height: 260px;
  padding: 9px;
  overflow: auto;
}

.tg-pop-search, .tg-num-pop input, .tg-num-pop select, .tg-date-pop input {
  border: 1px solid var(--navy-200);
  width: 100%;
  height: 30px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 0 8px;
  font-size: 12px;
}

.tg-opt {
  min-height: 28px;
  color: var(--navy-700);
  align-items: center;
  gap: 8px;
  font-size: 12px;
  display: flex;
}

.tg-opt input {
  width: 14px;
  height: 14px;
}

.tg-num-pop, .tg-date-pop {
  gap: 8px;
  display: grid;
}

.tg-date-pop label {
  color: var(--navy-400);
  gap: 4px;
  font: 700 11px / 1 Lato, sans-serif;
  display: grid;
}

.tg-date-presets {
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  display: grid;
}

.tg-date-presets button, .tg-apply {
  background: var(--primary-600);
  color: #fff;
  cursor: pointer;
  border: 0;
  border-radius: 6px;
  height: 30px;
  font: 700 12px / 1 Lato, sans-serif;
}

.tg-date-presets button {
  border: 1px solid var(--primary-200);
  background: var(--primary-050);
  color: var(--primary-700);
}

@media (max-width: 760px) {
  .grid-demo-page {
    padding: 10px;
  }

  .tg-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .tg-tools {
    width: 100%;
  }

  .tg-quick {
    flex: 1;
    min-width: 0;
  }

  .tg-table-shell {
    max-height: calc(100vh - 190px);
  }
}

.vat-hub {
  gap: 14px;
  display: grid;
}

.vat-toolbar {
  justify-content: space-between;
  align-items: flex-end;
  gap: 14px;
  display: flex;
}

.vat-toolbar > .vat-actions {
  margin-left: auto;
}

.vat-toolbar h2 {
  color: var(--navy-800);
  margin-top: 6px;
  font: 900 20px / 1.15 Lato, sans-serif;
}

.vat-status {
  border-radius: var(--pill);
  align-items: center;
  gap: 6px;
  min-height: 24px;
  padding: 3px 9px;
  font: 900 11px / 1 Lato, sans-serif;
  display: inline-flex;
}

.vat-status.ok {
  background: var(--success-100);
  color: #0f8d46;
}

.vat-status.warn {
  background: var(--warning-100);
  color: var(--warning-text);
}

.vat-actions {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 8px;
  display: flex;
}

.vat-actions label, .vat-form-grid label {
  min-width: 0;
  color: var(--navy-400);
  gap: 5px;
  font: 700 11.5px / 1 Lato, sans-serif;
  display: grid;
}

.vat-actions input, .vat-actions select, .vat-form-grid input, .vat-form-grid select, .vat-panel-head select {
  border: 1px solid var(--navy-200);
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  width: 100%;
  min-width: 0;
  padding: 0 10px;
  font: 700 13px / 1 Lato, sans-serif;
}

.vat-actions .btn, .vat-panel .btn {
  justify-content: center;
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.vat-message {
  border-radius: 8px;
  padding: 10px 12px;
  font-weight: 700;
}

.vat-message.ok {
  background: var(--success-100);
  color: #0f8d46;
}

.vat-message.err {
  background: var(--danger-100);
  color: #b11d1d;
}

.vat-message.warn {
  background: var(--warning-100);
  color: var(--warning-text);
}

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

.vat-stack, .vat-side {
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  min-width: 0;
  display: grid;
}

.vat-panel {
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 8px;
  min-width: 0;
  overflow: hidden;
}

.vat-panel-head {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  padding: 12px 14px;
  display: flex;
}

.vat-panel-head h3 {
  color: var(--navy-800);
  align-items: center;
  gap: 8px;
  font: 900 15px / 1.15 Lato, sans-serif;
  display: inline-flex;
}

.vat-panel-head p {
  color: var(--navy-400);
  margin-top: 3px;
  font: 700 12px / 1.3 Lato, sans-serif;
}

.vat-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  display: grid;
}

.vat-setup-groups {
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  gap: 12px;
  padding: 14px;
  display: grid;
}

.vat-setup-group {
  border: 1px solid var(--navy-150);
  background: var(--navy-050);
  border-radius: 4px;
  min-width: 0;
  margin: 0;
  padding: 12px;
}

.vat-setup-group legend {
  color: var(--navy-500);
  padding: 0 6px;
  font: 700 12px / 1.2 Lato, sans-serif;
}

.vat-setup-group .vat-form-grid {
  padding: 0;
}

.vat-extension-history {
  gap: 10px;
  min-width: 0;
  margin-top: 14px;
  display: grid;
}

.vat-extension-history h4 {
  color: var(--navy-800);
  font: 900 13px / 1.2 Lato, sans-serif;
}

.vat-extension-history > p {
  color: var(--navy-400);
  font: 700 12px / 1.4 Lato, sans-serif;
}

.vat-extension-history table {
  border-collapse: collapse;
  width: 100%;
  font-size: 12px;
}

.vat-extension-history th, .vat-extension-history td {
  border: 1px solid var(--navy-150);
  text-align: left;
  vertical-align: top;
  padding: 8px;
}

.vat-extension-history th {
  background: var(--navy-050);
  color: var(--navy-500);
  font-weight: 900;
}

.vat-extension-history td {
  color: var(--navy-800);
}

.vat-extension-history td small {
  color: var(--navy-400);
  margin-top: 3px;
  line-height: 1.35;
  display: block;
}

.vat-extension-action {
  grid-template-columns: minmax(130px, .65fr) minmax(0, 1.35fr);
  align-items: end;
  gap: 8px;
  display: grid;
}

.vat-extension-action > .btn {
  grid-column: 1 / -1;
  justify-self: start;
}

.vat-extension-action label, .vat-svz-remedy label {
  color: var(--navy-400);
  gap: 5px;
  font: 700 11.5px / 1 Lato, sans-serif;
  display: grid;
}

.vat-extension-action input, .vat-svz-remedy input {
  border: 1px solid var(--navy-200);
  width: 100%;
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  padding: 0 10px;
  font: 700 13px / 1 Lato, sans-serif;
}

.vat-svz-remedy {
  grid-template-columns: minmax(0, 1fr) minmax(260px, .6fr) auto;
  align-items: end;
  gap: 10px;
  padding: 0 14px 14px;
  display: grid;
}

.vat-svz-remedy .vat-message {
  align-self: stretch;
  align-items: center;
  display: flex;
}

.vat-readonly {
  border: 1px solid var(--navy-200);
  background: var(--navy-050);
  height: 36px;
  color: var(--navy-800);
  overflow-wrap: anywhere;
  border-radius: 8px;
  align-items: center;
  min-width: 0;
  padding: 0 10px;
  font: 900 13px / 1 Lato, sans-serif;
  display: flex;
}

.vat-check {
  flex-direction: row;
  grid-template-columns: none;
  align-self: end;
  align-items: center;
  min-height: 34px;
  color: var(--navy-700) !important;
  gap: 8px !important;
  display: flex !important;
}

.vat-check input {
  width: 15px;
  height: 15px;
  padding: 0;
}

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

.vat-kpi {
  border: 1px solid var(--border);
  min-height: 76px;
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 8px;
  padding: 12px;
}

.vat-kpi strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font: 900 20px / 1 Lato, sans-serif;
  display: block;
}

.vat-kpi span {
  color: var(--navy-400);
  margin-top: 6px;
  font: 900 11px / 1.2 Lato, sans-serif;
  display: block;
}

.vat-gate {
  gap: 9px;
  margin: 0;
  padding: 13px 14px;
  display: grid;
}

.vat-gate li {
  color: var(--navy-700);
  overflow-wrap: anywhere;
  align-items: flex-start;
  gap: 8px;
  line-height: 1.35;
  display: flex;
}

.vat-gate li.ok {
  color: #0f8d46;
}

.vat-gate li.warn {
  color: var(--warning-text);
}

.vat-output-list, .vat-account-list {
  gap: 9px;
  padding: 13px 14px;
  display: grid;
}

.vat-output-list div {
  grid-template-columns: 18px 1fr;
  align-items: center;
  gap: 3px 8px;
  display: grid;
}

.vat-output-list code {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  grid-column: 2;
  font-size: 11px;
}

.vat-batch-kpis {
  padding: 14px;
}

.vat-commit {
  gap: 12px;
  padding: 14px;
  display: grid;
}

.vat-commit label {
  color: var(--navy-400);
  gap: 5px;
  font: 900 11.5px / 1 Lato, sans-serif;
  display: grid;
}

.vat-commit input {
  border: 1px solid var(--navy-200);
  height: 36px;
  color: var(--navy-800);
  border-radius: 4px;
  padding: 0 10px;
  font: 700 13px / 1 Lato, sans-serif;
}

.vat-gate div {
  color: var(--navy-700);
  align-items: center;
  gap: 8px;
  font-weight: 700;
  display: flex;
}

.vat-gate div:before {
  content: "";
  background: var(--success-500);
  border-radius: 50%;
  flex: 0 0 9px;
  width: 9px;
  height: 9px;
}

.vat-gate div.warn:before {
  background: var(--warning-500);
}

.vat-batch .vat-output-list div {
  grid-template-columns: 72px minmax(0, 1fr);
}

.vat-runs-subtitle {
  color: var(--navy-400);
  margin-top: 5px;
  font: 700 12.5px / 1.35 Lato, sans-serif;
}

.vat-runs-kpis {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.vat-runs-month-card .vat-panel-head {
  align-items: flex-start;
}

.vat-runs-month-card .vat-panel-head > div {
  max-width: 780px;
}

.vat-stepper--itd {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 14px;
}

.vat-runs-no-run {
  border-left: 4px solid var(--secondary-500);
  border-radius: var(--t360-radius-2);
  color: var(--navy-600);
  background: var(--navy-050);
  margin: 14px;
  padding: 12px 14px;
  font-size: 12px;
  line-height: 1.45;
}

.vat-runs-month-card .vat-gate-box {
  margin: 0 14px 14px;
}

.vat-runs-month-actions {
  align-items: center;
  gap: 12px;
  padding: 0 14px 14px;
  display: flex;
}

.vat-runs-month-actions span {
  color: var(--navy-400);
  font-size: 11px;
  line-height: 1.35;
}

.vat-runs-console .tgv2-empty {
  overflow-wrap: anywhere;
  white-space: normal;
  padding-inline: 18px;
}

.vat-runs-preview-empty {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  min-height: 116px;
  color: var(--navy-400);
  background: var(--surface);
  text-align: center;
  overflow-wrap: anywhere;
  place-items: center;
  padding: 20px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.45;
  display: grid;
}

.vat-runs-annual-history {
  border-top: 1px solid var(--navy-150);
  padding-top: 14px;
}

.vat-runs-annual-history > h3 {
  color: var(--navy-800);
  margin: 0 14px 10px;
  font: 900 15px / 1.2 Lato, sans-serif;
}

.vat-runs-layout {
  grid-template-columns: minmax(0, 1fr) 360px;
}

.vat-run-row-actions {
  white-space: nowrap;
  align-items: center;
  gap: 6px;
  display: flex;
}

.vat-run-row-actions .btn-sm {
  min-width: auto;
}

.vat-runs-review-band {
  border-top: 1px solid var(--warning-500);
  color: var(--warning-text);
  background: var(--warning-100);
  align-items: flex-start;
  gap: 9px;
  padding: 10px 14px;
  display: flex;
}

.vat-runs-review-band div {
  gap: 2px;
  display: grid;
}

.vat-runs-review-band strong {
  font: 900 12.5px / 1.2 Lato, sans-serif;
}

.vat-runs-review-band span {
  font: 700 11.5px / 1.35 Lato, sans-serif;
}

.vat-runs-close {
  border: 1px solid var(--navy-150);
  width: 30px;
  height: 30px;
  color: var(--navy-500);
  cursor: pointer;
  background: #fff;
  border-radius: 4px;
  flex: 0 0 30px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.vat-runs-review-form {
  gap: 12px;
  padding: 14px;
  display: grid;
}

.vat-runs-review-form label {
  color: var(--navy-400);
  gap: 5px;
  font: 900 11.5px / 1.2 Lato, sans-serif;
  display: grid;
}

.vat-runs-review-form select, .vat-runs-review-form textarea {
  border: 1px solid var(--navy-200);
  width: 100%;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 8px 10px;
  font: 700 13px / 1.35 Lato, sans-serif;
}

.vat-runs-review-form select {
  min-height: 36px;
  padding-block: 0;
}

.vat-runs-review-form textarea {
  resize: vertical;
  min-height: 88px;
}

.vat-runs-selected-item {
  border: 1px solid var(--navy-150);
  background: var(--navy-050);
  border-radius: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  padding: 10px;
  display: grid;
}

.vat-runs-selected-item strong {
  min-width: 0;
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.vat-runs-selected-item span {
  color: var(--primary-600);
  font-variant-numeric: tabular-nums;
  font-weight: 900;
}

.vat-runs-review-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  display: flex;
}

.vat-runs-ack-body {
  gap: 8px;
  padding: 14px;
  display: grid;
}

.vat-runs-ack-body > span {
  color: var(--navy-400);
  font: 900 11.5px / 1.2 Lato, sans-serif;
}

.vat-runs-ack-body > strong {
  color: var(--success-600);
  font-variant-numeric: tabular-nums;
  font: 900 24px / 1 Lato, sans-serif;
}

.vat-runs-ack-reason {
  color: var(--ink-700);
  margin: -4px 0 4px;
  font-size: 13px;
}

.vat-runs-ack-kind {
  color: var(--navy-800);
  font: 900 14px / 1.2 Lato, sans-serif;
}

.vat-runs-ack-body h4 {
  color: var(--navy-800);
  margin-top: 7px;
  font: 900 13px / 1.2 Lato, sans-serif;
}

.vat-runs-ack-body ol {
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.vat-runs-ack-body li {
  border-left: 3px solid var(--secondary-500);
  background: var(--navy-050);
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2px 8px;
  padding: 6px 8px;
  display: grid;
}

.vat-runs-ack-body li b, .vat-runs-ack-body li span {
  overflow-wrap: anywhere;
  min-width: 0;
}

.vat-runs-ack-body li span {
  color: var(--navy-500);
  grid-column: 1 / -1;
  font-size: 12px;
}

.vat-runs-ack-body li small {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  grid-area: 1 / 2;
  font-weight: 900;
}

.vat-runs-history-empty {
  color: var(--navy-400);
  padding: 20px 14px;
  font-weight: 700;
}

.vat-runs-history-list {
  background: var(--navy-050);
  gap: 12px;
  padding: 14px;
  display: grid;
}

.vat-runs-history-list article {
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
}

.vat-runs-annual-ladder {
  counter-reset: vat-annual-step;
  list-style: none;
}

.vat-runs-annual-ladder > li {
  border: 1px solid var(--navy-150);
  counter-increment: vat-annual-step;
  background: #fff;
  border-radius: 8px;
  gap: 10px;
  padding: 14px;
  display: grid;
}

.vat-runs-annual-ladder > li > h4 {
  color: var(--navy-800);
  margin: 0;
  font: 900 14px / 1.25 Lato, sans-serif;
}

.vat-runs-annual-ladder > li > h4:before {
  content: counter(vat-annual-step) ". ";
}

.vat-runs-annual-ladder > li > p {
  color: var(--navy-600);
  margin: 0;
  font-weight: 700;
}

.vat-runs-annual-ladder > li > [role="alert"] {
  color: var(--warning-text);
}

.vat-runs-annual-ladder > li > .btn {
  justify-self: start;
}

.vat-runs-event {
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px 18px;
  padding: 12px;
  display: grid;
}

.vat-runs-event > span {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font-weight: 900;
}

.vat-runs-general-run > button {
  text-align: left;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 12px;
  display: flex;
}

.vat-runs-general-run > button > span, .vat-runs-general-run > small {
  color: var(--navy-400);
  font-size: 11.5px;
  font-weight: 700;
}

.vat-runs-general-run > small {
  padding: 0 12px 10px;
  display: block;
}

.vat-runs-general-detail {
  border-top: 1px solid var(--navy-150);
  gap: 10px;
  padding: 14px;
  display: grid;
}

.vat-runs-general-detail > h4, .vat-runs-general-detail > p {
  margin: 0;
}

.vat-runs-general-posting {
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 8px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 5px 18px;
  padding: 12px;
  display: grid;
}

.vat-runs-general-posting > strong {
  color: var(--navy-800);
}

.vat-runs-general-posting > span {
  color: var(--navy-500);
  font-size: 12px;
}

.vat-runs-general-posting > a {
  grid-area: 1 / 3 / span 2;
}

.vat-runs-history-list article > header {
  border-bottom: 1px solid var(--navy-100);
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  padding: 12px;
  display: flex;
}

.vat-runs-history-list header > div:first-child {
  gap: 3px;
  display: grid;
}

.vat-runs-history-list header strong {
  color: var(--navy-800);
  font: 900 13px / 1.2 Lato, sans-serif;
}

.vat-runs-history-list header span {
  color: var(--navy-400);
  font: 700 11.5px / 1.25 Lato, sans-serif;
}

.vat-runs-history-totals {
  text-align: right;
  grid-template-columns: auto auto;
  gap: 3px 12px;
  display: grid;
}

.vat-runs-history-totals b {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
}

.vat-runs-history-columns {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 12px;
  display: grid;
}

.vat-runs-history-columns h4 {
  color: var(--navy-800);
  margin-bottom: 7px;
  font: 900 12px / 1.2 Lato, sans-serif;
}

.vat-runs-history-row {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2px 8px;
  padding: 7px 0;
  display: grid;
}

.vat-runs-history-row span, .vat-runs-history-row small {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.vat-runs-history-row span {
  color: var(--navy-700);
  font-weight: 800;
}

.vat-runs-history-row small {
  color: var(--navy-400);
  grid-column: 1;
}

.vat-runs-history-row b {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  grid-area: 1 / 2 / span 2;
  align-self: center;
}

.vat-account-list code {
  color: var(--navy-700);
  background: var(--navy-050);
  border: 1px solid var(--navy-100);
  overflow-wrap: anywhere;
  border-radius: 6px;
  padding: 7px 8px;
  display: block;
}

.vat-15a-layout {
  grid-template-columns: minmax(0, 1fr) 340px;
}

.vat-15a-card-body {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 12px;
  padding: 14px;
  display: grid;
}

.vat-15a-facts, .vat-15a-quota {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  min-width: 0;
  display: grid;
}

.vat-15a-fact, .vat-15a-qbox {
  border: 1px solid var(--border);
  background: var(--navy-050);
  border-radius: 8px;
  min-width: 0;
  padding: 10px;
}

.vat-15a-qbox {
  border-left: 4px solid var(--primary-600);
  background: #fff;
  min-height: 88px;
}

.vat-15a-fact span, .vat-15a-qbox span {
  color: var(--navy-400);
  font: 900 11px / 1.1 Lato, sans-serif;
  display: block;
}

.vat-15a-fact strong, .vat-15a-qbox strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  margin-top: 7px;
  font: 900 17px / 1.1 Lato, sans-serif;
  display: block;
}

.vat-15a-qbox strong {
  font-size: 22px;
}

.vat-15a-qbox em {
  color: var(--navy-500);
  overflow-wrap: anywhere;
  margin-top: 6px;
  font: 700 12px / 1.2 Lato, sans-serif;
  display: block;
}

.vat-15a-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.vat-15a-side-body {
  gap: 10px;
  padding: 14px;
  display: grid;
}

.vat-15a-side-body .btn {
  justify-content: center;
  align-items: center;
  gap: 7px;
  display: inline-flex;
}

.vat-note {
  border: 1px solid var(--primary-200);
  background: var(--primary-050);
  color: var(--navy-700);
  overflow-wrap: anywhere;
  border-radius: 8px;
  padding: 10px;
  font-weight: 700;
}

.vat-15a-timeline {
  gap: 9px;
  padding: 13px 14px;
  display: grid;
}

.vat-15a-timeline div {
  grid-template-columns: 78px minmax(0, 1fr) auto;
  align-items: center;
  gap: 4px 8px;
  display: grid;
}

.vat-15a-timeline strong, .vat-15a-timeline b {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font: 900 12px / 1.1 Lato, sans-serif;
}

.vat-15a-timeline span {
  color: var(--navy-700);
  overflow-wrap: anywhere;
  font-weight: 700;
}

.vat-15a-timeline small {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  grid-column: 2 / 4;
  font-weight: 700;
}

.vat-15a-timeline p {
  color: var(--navy-400);
  font-weight: 700;
}

@media (max-width: 1100px) {
  .vat-layout {
    grid-template-columns: 1fr;
  }

  .vat-side, .vat-runs-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .vat-15a-card-body {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .vat-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .vat-actions {
    align-items: stretch;
  }

  .vat-form-grid, .vat-kpis, .vat-runs-kpis, .vat-runs-history-columns, .vat-15a-facts, .vat-15a-quota, .vat-side {
    grid-template-columns: 1fr;
  }

  .vat-runs-history-list article > header {
    flex-direction: column;
  }

  .vat-runs-history-totals {
    text-align: left;
  }

  .vat-extension-action, .vat-svz-remedy {
    grid-template-columns: 1fr;
  }

  .vat-extension-action > .btn {
    grid-column: auto;
    justify-self: stretch;
  }

  .vat-runs-event, .vat-runs-general-posting {
    grid-template-columns: minmax(0, 1fr);
  }

  .vat-runs-general-posting > a {
    grid-area: auto / 1;
  }

  .vat-stepper--itd {
    grid-template-columns: 1fr;
  }

  .vat-runs-month-actions {
    flex-direction: column;
    align-items: flex-start;
  }
}

.bka-console {
  gap: 14px;
  display: grid;
}

.bka-console.bka-console--fill {
  flex-direction: column;
  height: 100%;
  min-height: 0;
  display: flex;
}

.bka-toolbar {
  justify-content: space-between;
  align-items: flex-end;
  gap: 14px;
  display: flex;
}

.bka-toolbar h2 {
  color: var(--navy-800);
  margin-top: 6px;
  font: 900 20px / 1.15 Lato, sans-serif;
}

.bka-status {
  border-radius: var(--pill);
  align-items: center;
  gap: 6px;
  min-height: 24px;
  padding: 3px 9px;
  font: 900 11px / 1 Lato, sans-serif;
  display: inline-flex;
}

.bka-status.ok {
  color: #0f8d46;
  background: var(--success-100);
}

.bka-status.warn {
  color: var(--warning-text);
  background: var(--warning-100);
}

.bka-actions {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 8px;
  display: flex;
}

.bka-actions label, .bka-form-grid label {
  min-width: 0;
  color: var(--navy-400);
  gap: 5px;
  font: 900 11.5px / 1 Lato, sans-serif;
  display: grid;
}

.bka-actions select, .bka-form-grid input, .bka-form-grid select {
  border: 1px solid var(--navy-200);
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  min-width: 0;
  padding: 0 10px;
  font: 700 13px / 1 Lato, sans-serif;
}

.bka-message {
  border-radius: 8px;
  padding: 10px 12px;
  font-weight: 900;
}

.bka-message.ok {
  color: #0f8d46;
  background: var(--success-100);
}

.bka-message.err {
  color: #b11d1d;
  background: var(--danger-100);
}

.bka-stack {
  align-content: start;
  gap: 14px;
  min-width: 0;
  display: grid;
}

.bka-layout {
  grid-template-columns: minmax(0, 1fr) 340px;
  align-items: start;
  gap: 14px;
  display: grid;
}

.bka-stack, .bka-side {
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  min-width: 0;
  display: grid;
}

.bka-panel {
  border: 1px solid var(--border);
  min-width: 0;
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
}

.bka-panel-head {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  padding: 12px 14px;
  display: flex;
}

.bka-panel-head h3 {
  color: var(--navy-800);
  align-items: center;
  gap: 8px;
  font: 900 15px / 1.15 Lato, sans-serif;
  display: inline-flex;
}

.bka-form-grid {
  grid-template-columns: minmax(180px, 1.2fr) minmax(220px, 1.4fr) repeat(3, minmax(130px, .8fr)) auto;
  align-items: end;
  gap: 12px;
  padding: 14px;
  display: grid;
}

.bka-readonly {
  border: 1px solid var(--navy-200);
  min-height: 34px;
  color: var(--navy-800);
  background: var(--navy-050);
  overflow-wrap: anywhere;
  border-radius: 8px;
  align-items: center;
  padding: 0 10px;
  font: 900 13px / 1.2 Lato, sans-serif;
  display: flex;
}

.bka-form-button {
  min-width: 116px;
}

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

.ar-view-kpis-comparison {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ar-run-workspace {
  width: 100%;
}

.ar-create-form {
  gap: 9px;
  padding: 11px;
  display: grid;
}

.ar-create-form label {
  min-width: 0;
  color: var(--navy-400);
  gap: 5px;
  font: 900 11.5px / 1 Lato, sans-serif;
  display: grid;
}

.ar-create-form input {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-width: 0;
  height: 32px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 0 8px;
  font-weight: 700;
}

.ar-period-fields {
  grid-template-columns: 1fr 76px;
  gap: 8px;
  display: grid;
}

.ar-create-disclosure-form {
  gap: 14px;
  padding: 18px;
}

.ar-create-disclosure-form > p {
  color: var(--navy-500);
  margin: 0;
  line-height: 1.45;
}

.ar-run-history-list {
  overscroll-behavior: contain;
  min-height: 0;
  overflow-y: auto;
}

.ar-run-list-empty {
  color: var(--navy-400);
  text-align: center;
  padding: 18px 12px;
}

.ar-run-option {
  border: 0;
  border-bottom: 1px solid var(--border);
  width: 100%;
  color: var(--navy-800);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border-left: 4px solid #0000;
  gap: 7px;
  padding: 11px 10px 11px 9px;
  display: grid;
}

.ar-run-option:hover {
  background: var(--navy-050);
}

.ar-run-option:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: -2px;
}

.ar-run-option.selected {
  border-left-color: var(--primary-600);
  background: var(--primary-050);
}

.ar-run-option-primary, .ar-run-option-secondary {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: flex;
}

.ar-run-option-primary strong {
  font-size: 13px;
}

.ar-run-option-primary b {
  text-align: right;
  font-size: 12px;
}

.ar-run-option-secondary small {
  color: var(--navy-400);
  font-weight: 700;
}

.ar-run-status {
  border-radius: var(--pill);
  min-height: 22px;
  color: var(--navy-600);
  background: var(--navy-100);
  align-items: center;
  padding: 3px 8px;
  font: 900 10.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.ar-run-status.released {
  color: #6f4309;
  background: var(--warning-100);
}

.ar-run-status.posted {
  color: #0f6e3b;
  background: var(--success-100);
}

.ar-run-status.cancelled {
  color: #9b1c1c;
  background: var(--danger-100);
}

.ar-run-detail {
  gap: 10px;
  min-width: 0;
  scroll-margin-top: 12px;
  display: grid;
}

.ar-run-header {
  grid-template-columns: minmax(150px, .65fr) minmax(360px, 1.4fr) auto;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  display: grid;
}

.ar-run-header-title {
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.ar-run-header-title span:first-child {
  color: var(--navy-400);
  margin-bottom: 4px;
  font-size: 11px;
  font-weight: 900;
  display: block;
}

.ar-run-header-title h3 {
  color: var(--navy-800);
  font: 900 20px / 1 Lato, sans-serif;
}

.ar-run-header-title > .ar-run-status {
  margin-left: auto;
}

.ar-run-header-facts {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  display: grid;
}

.ar-run-header-facts div {
  border-left: 1px solid var(--border);
  min-width: 0;
  padding-left: 12px;
}

.ar-run-header-facts dt {
  color: var(--navy-400);
  font-size: 10.5px;
  font-weight: 900;
}

.ar-run-header-facts dd {
  color: var(--navy-800);
  overflow-wrap: anywhere;
  margin: 4px 0 0;
  font-weight: 900;
}

.ar-context-actions {
  justify-content: flex-end;
  gap: 8px;
  display: flex;
}

.ar-run-actions {
  flex-wrap: wrap;
  gap: 7px;
  display: flex;
}

.ar-detail-empty {
  min-height: 180px;
  color: var(--navy-400);
  place-items: center;
  display: grid;
}

.ar-disclosure-layer {
  z-index: 120;
  justify-content: flex-end;
  display: flex;
  position: fixed;
  inset: 0;
}

.ar-disclosure-scrim {
  cursor: pointer;
  background: #121c2e75;
  border: 0;
  width: 100%;
  padding: 0;
  position: absolute;
  inset: 0;
}

.ar-disclosure {
  width: min(470px, 100vw - 32px);
  min-width: 0;
  height: 100%;
  color: var(--navy-700);
  background: #fff;
  flex-direction: column;
  display: flex;
  position: relative;
  box-shadow: -12px 0 35px #121c2e38;
}

.ar-disclosure-header {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 16px 18px;
  display: flex;
}

.ar-disclosure-header span {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 10.5px;
  font-weight: 900;
}

.ar-disclosure-header h3 {
  color: var(--primary-700);
  margin: 3px 0 0;
  font: 900 20px / 1.1 Lato, sans-serif;
}

.ar-disclosure-close {
  width: 34px;
  height: 34px;
  color: var(--danger-600);
  background: var(--navy-100);
  cursor: pointer;
  border: 0;
  border-radius: 50%;
  flex: none;
  place-items: center;
  display: grid;
}

.ar-disclosure-close:focus-visible, .ar-disclosure-footer .btn:focus-visible {
  outline: 2px solid var(--primary-500);
  outline-offset: 2px;
}

.ar-disclosure-footer {
  border-top: 1px solid var(--border);
  justify-content: flex-end;
  gap: 8px;
  padding-top: 14px;
  display: flex;
}

.ar-journal-scroll {
  width: 100%;
  overflow-x: auto;
}

.ar-journal table {
  border-collapse: collapse;
  table-layout: auto;
  width: 100%;
  min-width: 760px;
}

.ar-journal th {
  border-bottom: 1px solid var(--border);
  color: var(--navy-400);
  background: var(--navy-050);
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 9px 10px;
  font-size: 10.5px;
}

.ar-journal td {
  border-bottom: 1px solid var(--border);
  vertical-align: middle;
  overflow-wrap: anywhere;
  padding: 10px;
}

.ar-journal th.right, .ar-journal td.right {
  text-align: right;
}

.ar-journal-document > td:first-child {
  min-width: 245px;
}

.ar-journal-document > td:nth-child(4) {
  min-width: 190px;
}

.ar-journal-document button {
  width: 100%;
  color: var(--navy-800);
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  align-items: flex-start;
  gap: 7px;
  padding: 0;
  display: flex;
}

.ar-journal-document button svg {
  color: var(--primary-600);
  flex: none;
  margin-top: 1px;
}

.ar-journal-document button span {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.ar-journal-document button small {
  color: var(--danger-600);
  font-weight: 700;
}

.ar-journal-document:hover {
  background: var(--navy-050);
}

.ar-journal-leg {
  background: #f8faff;
}

.ar-journal-leg td {
  padding-block: 8px;
}

.ar-journal-leg td:first-child {
  padding-left: 34px;
}

.ar-journal-leg-identity {
  grid-template-columns: 25px minmax(70px, auto) minmax(180px, 1fr) auto auto;
  align-items: center;
  gap: 7px 10px;
  display: grid;
}

.ar-journal-leg-identity code {
  color: var(--navy-800);
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: 12px;
  font-weight: 900;
}

.ar-journal-leg-identity > span:not(.ar-leg-side) {
  min-width: 0;
  color: var(--navy-600);
  overflow-wrap: anywhere;
  font-weight: 700;
}

.ar-journal-leg-identity small {
  color: var(--navy-500);
  white-space: normal;
  overflow-wrap: anywhere;
}

.ar-leg-side {
  color: #fff;
  background: var(--navy-600);
  border-radius: 5px;
  place-items: center;
  width: 24px;
  height: 24px;
  font-weight: 900;
  display: inline-grid;
}

.ar-leg-side.credit {
  background: var(--primary-600);
}

.ar-reversal-leg {
  border-radius: var(--pill);
  background: var(--danger-100);
  padding: 3px 7px;
  font-weight: 900;
  color: #9b1c1c !important;
}

.ar-money {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  min-width: 105px;
  font-weight: 900;
}

.ar-journal-empty {
  height: 100px;
  color: var(--navy-400);
  text-align: center;
}

.ar-detail-tabs {
  border: 1px solid var(--border);
  background: #fff;
  border-radius: 8px;
  gap: 4px;
  padding: 4px;
  display: flex;
}

.ar-detail-tabs button {
  color: var(--navy-500);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 6px;
  align-items: center;
  gap: 7px;
  padding: 9px 13px;
  font: 900 12px / 1 Lato, sans-serif;
  display: inline-flex;
}

.ar-detail-tabs button.active {
  color: #fff;
  background: var(--navy-700);
}

.ar-detail-panel {
  gap: 12px;
  display: grid;
}

.ar-projection-label {
  color: var(--navy-400);
  font-size: 12px;
}

.ar-balance-check {
  color: #0f6e3b;
  background: var(--success-100);
  border: 1px solid #8dd5a8;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  display: flex;
}

.ar-balance-check.error {
  color: #a41010;
  background: var(--danger-100);
  border-color: #ef9a9a;
}

.ar-balance-check span {
  font-variant-numeric: tabular-nums;
  margin-left: auto;
}

.ar-protocol {
  gap: 12px;
  display: grid;
}

.ar-scope-aggregate {
  color: var(--navy-600);
  background: var(--navy-050);
  border-radius: 7px;
  padding: 10px 12px;
}

.ar-protocol-class {
  border: 1px solid var(--border);
  border-left: 5px solid var(--navy-300);
  background: #fff;
  border-radius: 8px;
  padding: 12px;
}

.ar-protocol-class.blocking {
  background: #fff2f1;
  border-left-color: #791515;
}

.ar-protocol-class.error {
  border-left-color: var(--danger-600);
  background: #fff8f8;
}

.ar-protocol-class.hint {
  border-left-color: var(--warning-600);
  background: #fffaf0;
}

.ar-protocol-class.info {
  background: #f7fbff;
  border-left-color: #3977b9;
}

.ar-protocol-class h4 {
  color: var(--navy-800);
  justify-content: space-between;
  margin: 0 0 8px;
  display: flex;
}

.ar-protocol-class h4 span {
  text-align: center;
  color: #fff;
  background: var(--navy-500);
  border-radius: 999px;
  min-width: 26px;
  padding: 2px 8px;
}

.ar-protocol-class p {
  color: var(--navy-400);
  font-size: 12px;
}

.ar-protocol-group {
  border-top: 1px solid var(--border);
  grid-template-columns: minmax(240px, 1fr) auto;
  gap: 5px 14px;
  padding: 9px 0;
  display: grid;
}

.ar-protocol-group > div {
  align-items: center;
  gap: 8px;
  display: flex;
}

.ar-protocol-group code, .ar-protocol-item code {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  font-size: 11px;
}

.ar-protocol-group small {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  grid-column: 1 / -1;
}

.ar-protocol-group small:empty {
  display: none;
}

.ar-protocol-links {
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  display: flex;
}

.ar-protocol-links a, .ar-protocol-targets a {
  color: var(--primary-700);
  text-underline-offset: 2px;
  align-items: center;
  gap: 3px;
  font-weight: 900;
  text-decoration: underline;
  display: inline-flex;
}

.ar-protocol-group .ar-blocking-code {
  color: var(--danger-600);
  font-weight: 900;
}

.ar-protocol-page {
  gap: 5px;
  display: grid;
}

.ar-protocol-item {
  border-bottom: 1px solid var(--border);
  grid-template-columns: 120px minmax(220px, 1fr) minmax(250px, 1fr);
  align-items: center;
  gap: 10px;
  padding: 8px 4px;
  display: grid;
}

.ar-protocol-targets {
  color: var(--navy-500);
  flex-wrap: wrap;
  grid-column: 2 / -1;
  gap: 7px 16px;
  font-size: 11px;
  display: flex;
}

.ar-protocol-targets span {
  overflow-wrap: anywhere;
  min-width: 0;
}

.ar-protocol-pill {
  text-align: center;
  color: #fff;
  background: var(--navy-500);
  border-radius: 999px;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 900;
}

.ar-protocol-pill.blocking {
  background: #791515;
}

.ar-protocol-pill.error {
  background: var(--danger-600);
}

.ar-protocol-pill.hint {
  color: #5f3905;
  background: var(--warning-500);
}

.ar-protocol-pagination {
  justify-content: center;
  align-items: center;
  gap: 14px;
  display: flex;
}

.ar-review-console .ar-console-toolbar p {
  color: var(--navy-500);
  margin: 3px 0 0;
  font-size: 12px;
}

.ar-scope-required {
  text-align: center;
  place-content: center;
  gap: 6px;
  min-height: 150px;
  padding: 24px;
  display: grid;
}

.ar-scope-required h3 {
  color: var(--navy-800);
  margin: 0;
  font: 900 18px / 1.2 Lato, sans-serif;
}

.ar-scope-required p {
  color: var(--navy-500);
  margin: 0;
}

.ar-workflow {
  padding: 11px 18px 9px;
  position: relative;
}

.ar-workflow ol {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.ar-workflow li {
  color: var(--navy-400);
  text-align: center;
  justify-items: center;
  gap: 6px;
  font-size: 11px;
  display: grid;
  position: relative;
}

.ar-workflow li:before {
  content: "";
  background: var(--navy-100);
  height: 2px;
  position: absolute;
  top: 11px;
  left: -50%;
  right: 50%;
}

.ar-workflow li:first-child:before {
  display: none;
}

.ar-workflow li > span {
  z-index: 1;
  border: 2px solid var(--navy-200);
  width: 24px;
  height: 24px;
  color: var(--navy-500);
  background: #fff;
  border-radius: 50%;
  place-items: center;
  font-weight: 900;
  display: grid;
}

.ar-workflow li.complete {
  color: var(--primary-700);
}

.ar-workflow li.complete:before {
  background: var(--primary-500);
}

.ar-workflow li.complete > span {
  border-color: var(--primary-500);
  color: #fff;
  background: var(--primary-500);
}

.ar-workflow li.active {
  color: var(--primary-700);
}

.ar-workflow li.active:before {
  background: var(--primary-500);
}

.ar-workflow li.active > span {
  border-color: var(--primary-500);
  box-shadow: 0 0 0 4px var(--primary-t08);
}

.ar-cancelled-fact {
  border-top: 1px solid var(--border);
  color: var(--danger-600);
  text-align: center;
  margin: 12px 0 0;
  padding-top: 10px;
  font-weight: 900;
}

.ar-review-tabs {
  border: 1px solid var(--border);
  background: #fff;
  border-radius: 4px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  display: grid;
  overflow: hidden;
}

.ar-review-tabs button {
  border: 0;
  border-right: 1px solid var(--border);
  min-height: 58px;
  color: var(--navy-500);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border-bottom: 4px solid #0000;
  gap: 3px;
  padding: 9px 12px 7px;
  display: grid;
}

.ar-review-tabs button:last-child {
  border-right: 0;
}

.ar-review-tabs button strong {
  font: 900 12.5px / 1.1 Lato, sans-serif;
}

.ar-review-tabs button small {
  font-size: 10.5px;
}

.ar-review-tabs button.active {
  border-bottom-color: var(--secondary-500);
  color: var(--primary-700);
  background: var(--primary-050);
}

.ar-review-tabs button:disabled {
  color: var(--navy-300);
  background: var(--navy-050);
  cursor: not-allowed;
}

.ar-review-tabs button:focus-visible, .ar-contract-summary:focus-visible, .ar-booking-contract-toggle:focus-visible, .ar-document-card > button:focus-visible, .ar-comparison-toolbar .filter-tab:focus-visible {
  z-index: 2;
  outline: 2px solid var(--primary-500);
  outline-offset: -2px;
  position: relative;
}

.ar-comparison-toolbar {
  justify-content: space-between;
  align-items: flex-end;
  gap: 14px;
  display: flex;
}

.ar-comparison-toolbar h3 {
  color: var(--navy-800);
  margin: 0;
  font: 900 18px / 1.2 Lato, sans-serif;
}

.ar-comparison-toolbar p {
  color: var(--navy-500);
  margin: 4px 0 0;
  font-size: 12px;
}

.ar-comparison-toolbar .filter-tabs {
  margin-right: 0;
}

.ar-contract-list {
  gap: 8px;
  display: grid;
}

.ar-contract-card, .ar-booking-contract, .ar-document-card {
  border: 1px solid var(--border);
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
}

.ar-contract-card.changed {
  border-left: 4px solid var(--primary-500);
}

.ar-contract-summary {
  width: 100%;
  color: var(--navy-700);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border: 0;
  grid-template-columns: 18px minmax(190px, 1.5fr) repeat(3, minmax(95px, .65fr)) minmax(175px, 1fr);
  align-items: center;
  gap: 12px;
  padding: 11px 12px;
  display: grid;
}

.ar-contract-summary:hover, .ar-booking-contract-toggle:hover, .ar-document-card > button:hover {
  background: var(--primary-050);
}

.ar-contract-summary > svg, .ar-booking-contract-toggle > svg, .ar-document-card > button > svg {
  color: var(--primary-600);
}

.ar-contract-summary > span:not(.ar-contract-identity) {
  gap: 3px;
  display: grid;
}

.ar-contract-summary small, .ar-booking-contract-toggle small, .ar-document-card small {
  color: var(--navy-500);
  font-size: 10.5px;
}

.ar-contract-summary b {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
}

.ar-contract-identity {
  gap: 4px;
  display: grid;
}

.ar-contract-identity strong {
  color: var(--navy-900);
  font-size: 13px;
}

.ar-contract-summary .positive b {
  color: var(--success-600);
}

.ar-contract-summary .negative b {
  color: var(--danger-600);
}

.ar-contract-reason {
  color: var(--navy-600);
  font-size: 11px;
  line-height: 1.35;
}

.ar-contract-expanded {
  border-top: 1px solid var(--border);
  background: var(--navy-050);
  gap: 10px;
  padding: 12px;
  display: grid;
}

.ar-contract-links {
  flex-wrap: wrap;
  gap: 7px;
  display: flex;
}

.ar-review-empty {
  color: var(--navy-500);
  text-align: center;
  margin: 0;
  padding: 28px;
}

.ar-review-table-wrap, .ar-component-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.ar-review-table {
  border-collapse: collapse;
  width: 100%;
  min-width: 760px;
  font-size: 11.5px;
}

.ar-review-table th {
  border-bottom: 1px solid var(--border);
  color: var(--navy-500);
  background: var(--navy-050);
  letter-spacing: .03em;
  text-align: left;
  text-transform: uppercase;
  padding: 8px 10px;
  font-size: 10px;
}

.ar-review-table td {
  border-bottom: 1px solid var(--border);
  color: var(--navy-700);
  vertical-align: top;
  padding: 9px 10px;
}

.ar-review-table tbody tr:last-child td {
  border-bottom: 0;
}

.ar-review-table th.right, .ar-review-table td.right {
  text-align: right;
}

.ar-review-table td > strong, .ar-review-table td > small {
  display: block;
}

.ar-review-table td > small {
  color: var(--navy-500);
  overflow-wrap: anywhere;
  margin-top: 3px;
  font-size: 10.5px;
}

.ar-account-assignment small {
  color: var(--navy-500);
  overflow-wrap: anywhere;
  margin-top: 2px;
  font-size: 10px;
  display: block;
}

.ar-component-table {
  background: #fff;
  min-width: 680px;
}

.ar-fallback-key {
  color: var(--warning-text);
  margin-top: 3px;
  font-weight: 900;
  display: block;
}

.ar-projected-ar, .ar-release-snapshot {
  border-left: 4px solid var(--warning-500);
  color: var(--warning-text);
  background: var(--warning-100);
  margin: 0;
  padding: 10px 12px;
  font-weight: 900;
}

.ar-release-snapshot {
  border-left-color: var(--primary-500);
  color: var(--navy-600);
  background: var(--primary-050);
  font-weight: 700;
}

.ar-section-heading {
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  display: flex;
}

.ar-section-heading h3 {
  color: var(--navy-800);
  margin: 0;
  font: 900 17px / 1.2 Lato, sans-serif;
}

.ar-section-heading span {
  color: var(--navy-500);
  font-size: 11px;
}

.ar-account-impact-disclosure {
  overflow: hidden;
}

.ar-account-impact-disclosure > summary {
  color: var(--navy-700);
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 12px 14px;
  list-style: none;
  display: flex;
}

.ar-account-impact-disclosure > summary::-webkit-details-marker {
  display: none;
}

.ar-account-impact-disclosure > summary span {
  gap: 3px;
  display: grid;
}

.ar-account-impact-disclosure > summary strong {
  color: var(--navy-800);
  font: 900 14px / 1.2 Lato, sans-serif;
}

.ar-account-impact-disclosure > summary small {
  color: var(--navy-500);
  font-size: 10.5px;
}

.ar-account-impact-disclosure > summary svg {
  color: var(--primary-600);
  flex: none;
  transition: transform .15s;
}

.ar-account-impact-disclosure[open] > summary {
  border-bottom: 1px solid var(--border);
  background: var(--primary-050);
}

.ar-account-impact-disclosure[open] > summary svg {
  transform: rotate(180deg);
}

.ar-account-impact-disclosure > summary:focus-visible {
  outline: 2px solid var(--primary-500);
  outline-offset: -2px;
}

.ar-account-impact-disclosure-body {
  gap: 10px;
  padding: 10px;
  display: grid;
}

.ar-account-impact-disclosure-body .ar-account-impact {
  box-shadow: none;
}

.ar-phase {
  border-radius: var(--pill);
  color: var(--navy-600);
  background: var(--navy-100);
  padding: 3px 7px;
  font-size: 10px;
  font-weight: 900;
  display: inline-flex;
}

.ar-phase.projection {
  color: var(--primary-700);
  background: var(--primary-050);
}

.ar-phase.reversal {
  color: var(--danger-600);
  background: var(--danger-100);
}

.ar-booking-contracts, .ar-document-list {
  gap: 8px;
  display: grid;
}

.ar-booking-contract-toggle {
  width: 100%;
  color: var(--navy-700);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border: 0;
  grid-template-columns: 18px minmax(260px, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  display: grid;
}

.ar-booking-contract-toggle > span {
  gap: 3px;
  display: grid;
}

.ar-booking-contract-toggle > b {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
}

.ar-booking-contract-body {
  border-top: 1px solid var(--border);
  background: var(--navy-050);
  gap: 10px;
  padding: 10px;
  display: grid;
}

.ar-document-card > button {
  width: 100%;
  color: var(--navy-700);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border: 0;
  grid-template-columns: 18px minmax(220px, 1fr) minmax(90px, auto) minmax(90px, auto);
  align-items: center;
  gap: 12px;
  padding: 9px 11px;
  display: grid;
}

.ar-document-card > button > span {
  gap: 3px;
  display: grid;
}

.ar-document-card > button > span:not(:first-of-type) {
  justify-items: end;
}

.ar-document-card > button b {
  font-variant-numeric: tabular-nums;
}

.ar-document-legs {
  border-top: 1px solid var(--border);
}

.ar-document-journal-table {
  background: #fff;
  min-width: 860px;
}

.ar-document-journal-table .ar-document-leg {
  background: #f8faff;
}

.ar-document-journal-table tfoot th {
  border-top: 2px solid var(--navy-200);
  color: var(--navy-700);
  background: var(--navy-050);
  text-align: left;
  padding: 9px 10px;
}

.ar-document-journal-table tfoot th.right {
  text-align: right;
}

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

.ar-result-table {
  min-width: 1180px;
}

.ar-receivable-status {
  border-radius: var(--pill);
  color: var(--navy-600);
  background: var(--navy-100);
  white-space: nowrap;
  padding: 4px 8px;
  font-size: 10.5px;
  font-weight: 900;
  display: inline-flex;
}

.ar-receivable-status.open {
  color: var(--warning-text);
  background: var(--warning-100);
}

.ar-receivable-status.partial {
  color: var(--primary-700);
  background: var(--primary-050);
}

.ar-receivable-status.cleared {
  color: var(--success-600);
  background: var(--success-100);
}

.ar-receivable-status.cancelled {
  color: var(--danger-600);
  background: var(--danger-100);
}

.ar-opos-link {
  color: var(--primary-700);
  white-space: nowrap;
  align-items: center;
  gap: 4px;
  font-weight: 900;
  display: inline-flex;
}

.ar-cancelled-result {
  font-weight: 900;
  color: var(--danger-600) !important;
}

.ar-protocol-raw {
  color: var(--navy-500);
  flex-wrap: wrap;
  grid-column: 2 / -1;
  gap: 5px 16px;
  font-size: 10.5px;
  display: flex;
}

.ar-protocol-raw span {
  overflow-wrap: anywhere;
  min-width: 0;
}

.ar-view-kpis .bka-kpi {
  min-height: 68px;
  padding: 10px 12px;
}

.bka-kpi {
  border: 1px solid var(--border);
  min-width: 0;
  min-height: 76px;
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 8px;
  padding: 12px;
}

.bka-kpi strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  font: 900 20px / 1 Lato, sans-serif;
  display: block;
}

.bka-kpi span {
  color: var(--navy-400);
  margin-top: 6px;
  font: 900 11px / 1.2 Lato, sans-serif;
  display: block;
}

.bka-run-facts {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  padding: 14px;
  display: grid;
}

.bka-fact {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  min-width: 0;
  padding: 10px;
}

.bka-fact span {
  color: var(--navy-400);
  font: 900 11px / 1.1 Lato, sans-serif;
  display: block;
}

.bka-fact strong {
  color: var(--navy-800);
  overflow-wrap: anywhere;
  margin-top: 7px;
  font: 900 14px / 1.2 Lato, sans-serif;
  display: block;
}

.bka-side-body, .bka-feed, .bka-gates {
  gap: 10px;
  padding: 14px;
  display: grid;
}

.bka-side-body .btn {
  width: 100%;
}

.bka-gate {
  color: var(--navy-700);
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: start;
  gap: 8px;
  display: grid;
}

.bka-gate.ok {
  color: #0f8d46;
}

.bka-gate.warn {
  color: var(--warning-text);
}

.bka-gate b, .bka-feed b {
  color: inherit;
  font: 900 12px / 1.2 Lato, sans-serif;
  display: block;
}

.bka-gate small, .bka-feed small {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  margin-top: 3px;
  font: 700 11px / 1.3 Lato, sans-serif;
  display: block;
}

.bka-muted {
  color: var(--navy-400);
  font-weight: 900;
}

.bka-note {
  border: 1px solid var(--primary-200);
  color: var(--navy-700);
  background: var(--primary-050);
  overflow-wrap: anywhere;
  border-radius: 8px;
  gap: 6px;
  padding: 10px;
  font-weight: 900;
  line-height: 1.35;
  display: grid;
}

.bka-tieout {
  border: 1px solid var(--border);
  border-radius: 8px;
  gap: 7px;
  padding: 12px;
  display: grid;
}

.bka-tieout.ok {
  color: #0f8d46;
  background: var(--success-100);
  border-color: #bfe6cf;
}

.bka-tieout.warn {
  color: var(--warning-text);
  background: var(--warning-100);
  border-color: #efd58f;
}

.bka-tieout strong {
  font: 900 15px / 1 Lato, sans-serif;
}

.bka-tieout span {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font: 900 18px / 1 Lato, sans-serif;
}

.bka-output {
  gap: 12px;
  display: grid;
}

.bka-output-tabs {
  border-bottom: 1px solid var(--border);
  gap: 4px;
  display: flex;
}

.bka-output-tabs button {
  color: var(--navy-400);
  cursor: pointer;
  background: none;
  border: 0;
  border-bottom: 2px solid #0000;
  padding: 10px 14px;
  font: 900 12px / 1 Lato, sans-serif;
}

.bka-output-tabs button.active {
  color: var(--primary-700);
  border-color: var(--primary-600);
  background: var(--primary-050);
}

.bka-subtabs {
  border-bottom: 1px solid var(--border);
  gap: 4px;
  margin-top: 4px;
  display: flex;
}

.bka-subtabs button {
  color: var(--navy-400);
  cursor: pointer;
  background: none;
  border: 0;
  border-bottom: 2px solid #0000;
  padding: 8px 14px;
  font: 900 12px / 1 Lato, sans-serif;
}

.bka-subtabs button.active {
  color: var(--primary-700);
  border-color: var(--primary-600);
  background: var(--primary-050);
}

.bka-output-grid, .bka-tenant-layout {
  gap: 14px;
  display: grid;
}

.bka-output-pools {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 14px;
  display: grid;
}

.bka-output-pools div {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  gap: 6px;
  padding: 12px;
  display: grid;
}

.bka-output-pools span, .bka-statement-head span, .bka-doc-row small {
  color: var(--navy-400);
  font-size: 11px;
  font-weight: 700;
}

.bka-output-pools strong {
  color: var(--navy-800);
  font-size: 16px;
}

.bka-table-wrap {
  overflow-x: auto;
}

.bka-output-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 12px;
}

.bka-output-table th {
  color: var(--navy-400);
  background: var(--navy-050);
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .04em;
  padding: 10px 12px;
  font-size: 10px;
}

.bka-output-table td {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-700);
  white-space: nowrap;
  padding: 11px 12px;
  font-weight: 700;
}

.bka-output-table tbody tr {
  cursor: pointer;
}

.bka-output-table tbody tr:hover, .bka-output-table tbody tr:focus {
  background: var(--primary-050);
  outline: 0;
}

.bka-output-table .negative {
  color: #b11d1d;
  font-weight: 900;
}

.bka-output-table .positive {
  color: #0f8d46;
  font-weight: 900;
}

.bka-statement {
  gap: 14px;
  padding: 14px;
  display: grid;
}

.bka-statement-head {
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  display: flex;
}

.bka-result {
  min-width: 300px;
  color: var(--navy-700);
  grid-template-columns: 1fr auto;
  gap: 8px 14px;
  margin-left: auto;
  display: grid;
}

.bka-result strong {
  text-align: right;
}

.bka-back {
  color: var(--primary-700);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
}

.bka-statement-notes {
  color: var(--navy-700);
  padding: 14px;
  line-height: 1.45;
}

.bka-statement-notes h3 {
  color: var(--navy-800);
  margin: 0 0 12px;
  font-size: 15px;
}

.bka-vat-block {
  border-top: 1px solid var(--border);
  margin-top: 16px;
  padding-top: 12px;
}

.bka-vat-block h4 {
  color: var(--navy-800);
  margin: 0 0 8px;
}

.bka-vat-row {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: 1.3fr repeat(3, auto);
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  font-size: 12px;
  display: grid;
}

.bka-vat-row small {
  color: var(--navy-400);
  grid-column: 1 / -1;
}

.bka-dispatch-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 14px;
  display: flex;
}

.bka-dispatch-actions > span {
  color: var(--navy-500);
  flex: 1;
  font-weight: 700;
}

.bka-owner-actions, .bka-doc-actions {
  flex-wrap: wrap;
  align-items: end;
  gap: 8px;
  display: flex;
}

.bka-doc-list {
  gap: 8px;
  padding: 14px;
  display: grid;
}

.bka-doc-row {
  border: 1px solid var(--navy-100);
  border-radius: 8px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  padding: 10px;
  display: grid;
}

.bka-doc-row--download {
  grid-template-columns: minmax(180px, 1fr) auto minmax(300px, auto);
}

.bka-doc-row div {
  gap: 4px;
  display: grid;
}

.bka-doc-row .bka-doc-actions, .bka-owner-actions {
  display: flex;
}

.bka-doc-row small {
  overflow-wrap: anywhere;
}

.bka-doc-successor-marker, .bka-doc-supplement-marker {
  border-radius: var(--t360-radius-pill);
  width: fit-content;
  padding: var(--t360-space-1) var(--t360-space-3);
  font-size: 11px;
  font-weight: 900;
  display: inline-flex;
}

.bka-doc-successor-marker {
  color: var(--danger-600);
  background: var(--danger-100);
}

.bka-doc-supplement-marker {
  color: var(--primary-700);
  background: var(--primary-050);
}

.bka-access-date {
  color: var(--navy-500);
  gap: 4px;
  font-size: 11px;
  font-weight: 700;
  display: grid;
}

.bka-access-date input, .bka-access-date select {
  border: 1px solid var(--navy-200);
  min-height: 34px;
  color: var(--navy-700);
  background: #fff;
  border-radius: 4px;
  padding: 6px 8px;
}

.bka-access-value {
  color: var(--navy-600);
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
}

@media (max-width: 960px) {
  .bka-doc-row--download {
    grid-template-columns: 1fr auto;
  }

  .bka-doc-row--download .bka-doc-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .bka-output-pools, .bka-vat-row {
    grid-template-columns: 1fr;
  }

  .bka-result {
    width: 100%;
    min-width: 0;
  }

  .bka-doc-row {
    grid-template-columns: 1fr auto;
  }

  .bka-doc-row button {
    grid-column: 1 / -1;
  }
}

.bka-output-screen {
  gap: 14px;
  display: grid;
}

.bka-output-screen-crumb {
  color: var(--navy-400);
  font-size: 12px;
  font-weight: 700;
}

.bka-output-screen-crumb b {
  color: var(--navy-700);
}

.bka-output-screen-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  display: flex;
}

.bka-output-screen-head h1 {
  color: var(--navy-heading);
  margin: 0;
  font: 900 20px / 1.2 Lato, sans-serif;
}

.bka-output-screen-head p {
  color: var(--navy-500);
  margin: 5px 0 0;
  font-size: 13px;
}

.bka-output-run-picker {
  color: var(--navy-400);
  gap: 4px;
  font-size: 12px;
  font-weight: 700;
  display: grid;
}

.bka-output-run-picker select {
  border: 1px solid var(--navy-200);
  min-width: 210px;
  min-height: 34px;
  color: var(--navy-700);
  background: var(--surface);
  border-radius: 4px;
  padding: 6px 9px;
  font: 700 12px / 1.2 Lato, sans-serif;
}

.bka-output-state {
  color: var(--navy-500);
  margin: 0;
  padding: 20px;
}

.bka-output-state h2 {
  color: var(--warning-text);
  margin: 0;
  font: 900 16px / 1.2 Lato, sans-serif;
}

.bka-output-state p {
  margin: 7px 0 0;
}

.bka-output-state small {
  margin-top: 10px;
  display: block;
}

.bka-output-state--empty {
  text-align: center;
  padding: 28px 20px;
}

.bka-output-state--empty h2 {
  color: var(--navy-800);
}

.bka-ov, .bka-fd, .bka-ws {
  gap: 14px;
  display: grid;
}

.bka-ov-title {
  color: var(--navy-800);
  margin: 0;
  font: 900 20px / 1.2 Lato, sans-serif;
}

.bka-ov-subtitle {
  color: var(--navy-500);
  max-width: 760px;
  margin: 0;
  font-size: 13px;
}

.bka-ov-hint {
  color: var(--navy-400);
  font-size: 12px;
  font-weight: 700;
}

.bka-ov-muted {
  color: var(--navy-400);
}

.bka-ov-empty {
  text-align: center;
  color: var(--navy-400);
  padding: 18px;
}

.bka-ov-banner {
  font-weight: 700;
}

.bka-ov-status-cell {
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.bka-ov-zugang {
  font-size: 11px;
  font-weight: 700;
}

.bka-ov-deadline-red {
  color: var(--danger-600);
  font-weight: 700;
}

.bka-ov-deadline-amber {
  color: var(--warning-text);
  font-weight: 700;
}

.bka-kpi-good strong {
  color: #0f8d46;
}

.bka-kpi-bad strong {
  color: #b11d1d;
}

.md-table tr.clickable {
  cursor: pointer;
}

.md-table tr.clickable:hover td {
  background: var(--primary-050);
}

.md-subtab {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.md-subtab-dot {
  background: var(--warning-500);
  border-radius: 50%;
  width: 7px;
  height: 7px;
}

.bka-ws-head {
  align-items: center;
  gap: 10px;
  display: flex;
}

.bka-ws-head h2 {
  color: var(--navy-800);
  margin: 0;
  font: 900 18px / 1.2 Lato, sans-serif;
}

.bka-operator-period {
  align-items: flex-end;
  gap: var(--t360-space-4);
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  padding: var(--t360-space-4);
  background: var(--surface);
  box-shadow: var(--t360-shadow-1dp);
  display: flex;
}

.bka-operator-period > div {
  gap: var(--t360-space-1);
  margin-right: auto;
  display: grid;
}

.bka-operator-period > div strong {
  color: var(--navy-heading);
}

.bka-operator-period > div span {
  color: var(--navy-500);
  font-size: 12px;
}

.bka-operator-period label {
  gap: var(--t360-space-1);
  color: var(--navy-500);
  font-size: 11px;
  font-weight: 900;
  display: grid;
}

.bka-operator-period input {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-4);
  min-height: 34px;
  color: var(--navy-800);
  background: var(--surface);
  padding: 5px 8px;
}

.bka-operator-toolbar {
  align-items: center;
  gap: var(--t360-space-3);
  min-width: 0;
  display: flex;
}

.bka-operator-toolbar .filter-tabs {
  min-width: 0;
  overflow-x: auto;
}

.bka-operator-search {
  align-items: center;
  gap: var(--t360-space-2);
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-4);
  min-width: 210px;
  min-height: 34px;
  color: var(--navy-400);
  background: var(--surface);
  padding: 0 9px;
  display: flex;
}

.bka-operator-search input {
  width: 100%;
  min-width: 0;
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: 0;
}

.bka-operator-table-wrap {
  max-width: 100%;
}

.bka-operator-table {
  min-width: 1120px;
}

.bka-operator-table td {
  vertical-align: top;
}

.bka-operator-table td > b, .bka-operator-table td > small {
  display: block;
}

.bka-operator-table td > small {
  margin-top: var(--t360-space-1);
  color: var(--navy-400);
  font-size: 11px;
}

.bka-operator-period-cell {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.bka-operator-next {
  white-space: nowrap;
}

.bka-operator-none {
  align-items: center;
  gap: var(--t360-space-1);
  color: var(--success-600);
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
}

.bka-operator-unavailable {
  color: var(--navy-400);
  font-size: 11px;
  font-weight: 700;
  display: block;
}

.bka-operator-issues {
  position: relative;
}

.bka-operator-issues summary {
  align-items: center;
  gap: var(--t360-space-1);
  border-radius: var(--t360-radius-pill);
  cursor: pointer;
  width: fit-content;
  padding: 3px 9px;
  font-weight: 900;
  list-style: none;
  display: inline-flex;
}

.bka-operator-issues.blocker summary {
  color: var(--danger-600);
  background: var(--danger-100);
}

.bka-operator-issues.warning summary {
  color: var(--warning-text);
  background: var(--warning-100);
}

.bka-operator-issues ul {
  z-index: 20;
  width: 320px;
  margin: var(--t360-space-2) 0 0;
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  padding: var(--t360-space-3);
  background: var(--surface);
  box-shadow: var(--shadow-lg);
  list-style: none;
  position: absolute;
}

.bka-ws .bkaz > .crumb, .bka-ws .bka-output-screen-crumb {
  display: none;
}

.bka-operator-issues li {
  gap: var(--t360-space-1);
  padding: var(--t360-space-2);
  white-space: normal;
  display: grid;
}

.bka-operator-issues li + li {
  border-top: 1px solid var(--navy-100);
}

.bka-operator-issues li span, .bka-operator-issues li small {
  color: var(--navy-500);
  font-size: 11px;
}

.bka-selection-error {
  gap: var(--t360-space-3);
  max-width: 720px;
  padding: var(--t360-space-6);
  display: grid;
}

.bka-selection-error h2, .bka-selection-error p {
  margin: 0;
}

.bka-selection-error > div {
  gap: var(--t360-space-3);
  display: flex;
}

.bka-operator-summary {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  box-shadow: var(--t360-shadow-1dp);
  overflow: hidden;
}

.bka-operator-summary-main {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-5);
  padding: var(--t360-space-4) var(--t360-space-5);
  display: flex;
}

.bka-operator-summary-main h2 {
  color: var(--navy-heading);
  margin: 3px 0;
  font: 900 20px / 1.2 Lato, sans-serif;
}

.bka-operator-summary-main p {
  color: var(--navy-500);
  margin: 2px 0 0;
  font-size: 12px;
}

.bka-operator-eyebrow {
  color: var(--primary-700);
  letter-spacing: .05em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.bka-operator-primary {
  align-items: center;
  gap: var(--t360-space-3);
  display: flex;
}

.bka-operator-run-line {
  align-items: flex-end;
  gap: var(--t360-space-3);
  border-top: 1px solid var(--navy-100);
  padding: var(--t360-space-3) var(--t360-space-5);
  background: var(--navy-050);
  display: flex;
}

.bka-operator-run-line label {
  gap: var(--t360-space-1);
  min-width: min(520px, 100%);
  color: var(--navy-500);
  font-size: 11px;
  font-weight: 900;
  display: grid;
}

.bka-operator-run-line select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-4);
  min-height: 34px;
  color: var(--navy-800);
  background: var(--surface);
  padding: 5px 8px;
}

.bka-operator-kpis {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  display: grid;
}

.bka-operator-kpi {
  gap: var(--t360-space-1);
  border: 0;
  border-right: 1px solid var(--navy-100);
  min-width: 0;
  padding: var(--t360-space-3) var(--t360-space-5);
  color: inherit;
  text-align: left;
  font: inherit;
  background: none;
  display: grid;
}

button.bka-operator-kpi {
  cursor: pointer;
}

button.bka-operator-kpi:hover {
  background: var(--primary-050);
}

.bka-operator-kpi:last-child {
  border-right: 0;
}

.bka-operator-kpi span, .bka-operator-kpi small {
  color: var(--navy-400);
  text-transform: uppercase;
  font-size: 10.5px;
  font-weight: 900;
}

.bka-operator-kpi strong {
  overflow-wrap: anywhere;
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font-size: 17px;
}

.bka-operator-document-line {
  border-top: 1px solid var(--navy-100);
  padding: var(--t360-space-2) var(--t360-space-5);
  color: var(--navy-600);
  background: var(--primary-050);
  font-size: 12px;
  font-weight: 700;
}

@media (max-width: 900px) {
  .bka-operator-period, .bka-operator-toolbar, .bka-operator-summary-main, .bka-operator-primary, .bka-operator-run-line {
    flex-wrap: wrap;
    align-items: stretch;
  }

  .bka-operator-period > div, .bka-operator-toolbar .filter-tabs {
    flex-basis: 100%;
  }

  .bka-operator-search {
    flex: 1;
  }

  .bka-operator-summary-main > div:first-child {
    flex: 100%;
  }

  .bka-operator-run-line label {
    flex: 100%;
    min-width: 0;
  }

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

  .bka-operator-kpi:nth-child(2) {
    border-right: 0;
  }

  .bka-operator-kpi:nth-child(n+3) {
    border-top: 1px solid var(--navy-100);
  }
}

@media (max-width: 560px) {
  .bka-operator-period label {
    flex: 130px;
  }

  .bka-operator-period .btn {
    flex: auto;
    justify-content: center;
  }

  .bka-operator-kpis {
    grid-template-columns: 1fr;
  }

  .bka-operator-kpi {
    border-right: 0;
    border-top: 1px solid var(--navy-100);
  }

  .bka-operator-kpi:first-child {
    border-top: 0;
  }
}

.bka-correction-heading, .bka-correction-detail-head, .bka-correction-pending, .bka-correction-committed {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-4);
  display: flex;
}

.bka-correction-heading {
  flex-wrap: wrap;
  align-items: flex-end;
}

.bka-correction-head-actions {
  gap: var(--t360-space-3);
  flex-wrap: wrap;
  display: flex;
}

.bka-correction-heading.embedded {
  margin-bottom: var(--t360-space-4);
  align-items: center;
}

.bka-correction-heading.embedded > h3 {
  color: var(--primary-500);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.bka-correction-detail-head {
  margin: var(--t360-space-5) 0 var(--t360-space-4);
  align-items: flex-start;
}

.bka-correction-detail-head h2 {
  color: var(--navy-heading);
  font: 900 17px / 1.2 Lato, sans-serif;
}

.bka-correction-detail-head p {
  margin-top: var(--t360-space-2);
  color: var(--navy-500);
  font-size: 12px;
}

.bka-correction-no-root {
  border-top: 1px solid var(--border);
  color: var(--warning-text);
  background: var(--warning-100);
  font-weight: 700;
}

.bka-correction .bka-danger-value {
  color: var(--danger-600);
}

.bka-correction-actions > .cb {
  gap: var(--t360-space-4);
  display: grid;
}

.bka-correction-ack-toggle {
  align-items: center;
  gap: var(--t360-space-3);
  color: var(--navy-700);
  font-weight: 700;
  display: inline-flex;
}

.bka-correction-ack {
  gap: var(--t360-space-4);
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-4);
  padding: var(--t360-space-4);
  background: var(--warning-100);
  display: grid;
}

.bka-correction-ack > p {
  color: var(--warning-text);
  font-size: 12px;
}

.bka-correction-ack-fields {
  gap: var(--t360-space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
}

.bka-correction-ack-fields label, .bka-correction-create-form label {
  gap: var(--t360-space-2);
  color: var(--navy-600);
  font-size: 12px;
  font-weight: 700;
  display: grid;
}

.bka-correction-ack-fields input, .bka-correction-ack-fields select, .bka-correction-create-form select, .bka-correction-create-form textarea {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-4);
  min-height: 36px;
  padding: var(--t360-space-3);
  color: var(--navy-800);
  background: var(--surface);
}

.bka-correction-create-form {
  gap: var(--t360-space-5);
  min-width: min(520px, 100vw - 80px);
  display: grid;
}

.bka-correction-create-form p {
  color: var(--navy-500);
  font-size: 12px;
  line-height: 1.45;
}

.bka-correction-pending, .bka-correction-committed {
  border-radius: var(--t360-radius-4);
  padding: var(--t360-space-4);
  flex-wrap: wrap;
  justify-content: flex-start;
  font-weight: 700;
}

.bka-correction-pending {
  color: var(--primary-700);
  background: var(--primary-050);
}

.bka-correction-pending > span, .bka-correction-committed {
  align-items: center;
  gap: var(--t360-space-3);
  display: flex;
}

.bka-correction-pending .btn {
  margin-left: auto;
}

.bka-correction-committed {
  color: var(--success-600);
  background: var(--success-100);
}

@media (max-width: 760px) {
  .bka-correction .kpi {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bka-correction-ack-fields {
    grid-template-columns: 1fr;
  }

  .bka-correction-detail-head {
    flex-direction: column;
  }
}

.bka-objekte {
  gap: var(--t360-space-4);
  display: grid;
}

.bka-objekte-toolbar {
  align-items: center;
  gap: var(--t360-space-3);
  min-width: 0;
  display: flex;
}

.bka-objekte-toolbar .filter-tabs {
  min-width: 0;
  overflow-x: auto;
}

.bka-objekte-panel {
  padding: 0;
}

.bka-objekte-table td {
  vertical-align: top;
}

.bka-objekte-table td > b, .bka-objekte-table td > small {
  display: block;
}

.bka-objekte-table td > small {
  margin-top: var(--t360-space-1);
  color: var(--navy-400);
  font-size: 11px;
  font-weight: 500;
}

.bka-objekte-blockers {
  color: var(--navy-400);
  font-size: 11px;
  font-weight: 700;
}

.bka-objekte-note {
  color: var(--navy-400);
  margin: 0;
  font-size: 12px;
}

.bka-lnk {
  color: var(--primary-600);
  cursor: pointer;
  font-weight: 700;
}

.bka-lnk:hover {
  text-decoration: underline;
}

.bka-lnk-btn {
  color: var(--primary-600);
  cursor: pointer;
  font-weight: 700;
  font: inherit;
  background: none;
  border: 0;
  padding: 0;
}

.bka-lnk-btn:hover {
  text-decoration: underline;
}

.bka-datenbasis-actions {
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  display: flex;
}

.bka-evidence-panel {
  padding: 10px 0;
}

.bka-evidence-error {
  color: var(--danger-600);
  font-weight: 700;
}

.bka-evidence-missing {
  margin-top: 10px;
}

.bka-evidence-head {
  border: 1px solid var(--border);
  background: var(--navy-050);
  border-radius: 10px;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 10px;
  padding: 8px 10px;
  display: flex;
}

.bka-evidence-head-line {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.bka-evidence-queried {
  color: var(--navy-500);
  font-size: 12px;
}

.bka-evidence-basis {
  flex-wrap: wrap;
  gap: 4px 18px;
  margin: 0;
  display: flex;
}

.bka-evidence-basis-group {
  align-items: baseline;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.bka-evidence-basis-group dt {
  color: var(--navy-400);
  text-transform: uppercase;
  letter-spacing: .3px;
  font-size: 11px;
  font-weight: 800;
}

.bka-evidence-basis-group dd {
  color: var(--navy-600);
  margin: 0;
  font-size: 12px;
}

.bka-evidence-basis-group.is-frozen dd {
  color: var(--primary-600);
}

.bka-evidence-section {
  margin-top: 12px;
}

.bka-evidence-section > h4 {
  color: var(--navy-heading);
  margin: 0 0 6px;
  font-size: 13px;
  font-weight: 800;
}

.bka-evidence-section > h5, .bka-evidence-subtable > h5 {
  color: var(--navy-500);
  margin: 10px 0 4px;
  font-size: 12px;
  font-weight: 800;
}

.bka-evidence-reasons {
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.bka-evidence-reason {
  border-left: 3px solid var(--navy-200);
  background: var(--navy-050);
  border-radius: 0 6px 6px 0;
  align-items: baseline;
  gap: 8px;
  padding: 5px 8px;
  display: flex;
}

.bka-evidence-reason.is-blocking {
  border-left-color: var(--danger-500);
}

.bka-evidence-reason.is-unresolved {
  border-left-color: var(--warning-500);
}

.bka-evidence-reason-text {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
}

.bka-evidence-reason-text small {
  color: var(--navy-400);
  font-size: 11px;
}

.bka-evidence-reason-amount {
  white-space: nowrap;
  font-weight: 700;
}

.bka-evidence-callout {
  border: 1px solid var(--border);
  border-left: 3px solid var(--navy-200);
  background: var(--surface);
  border-radius: 0 8px 8px 0;
  flex-direction: column;
  gap: 3px;
  padding: 8px 10px;
  display: flex;
}

.bka-evidence-callout.is-unresolved {
  border-left-color: var(--warning-500);
}

.bka-evidence-callout.is-import {
  border-left-color: var(--success-500);
}

.bka-evidence-callout.is-current {
  border-left-color: var(--secondary-500);
}

.bka-evidence-figures {
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
  display: flex;
}

.bka-evidence-figures > div {
  border: 1px solid var(--border);
  background: var(--surface);
  border-radius: 8px;
  flex-direction: column;
  gap: 2px;
  min-width: 140px;
  padding: 6px 10px;
  display: flex;
}

.bka-evidence-figures > div > span {
  color: var(--navy-400);
  font-size: 11px;
}

.bka-evidence-figures > div.is-total {
  background: var(--navy-050);
}

.bka-evidence-chips {
  flex-wrap: wrap;
  gap: 4px;
  display: inline-flex;
}

.bka-evidence-list {
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.bka-evidence-links {
  white-space: nowrap;
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.bka-evidence-body > :first-child {
  margin-top: 0;
}

.bka-evidence-table td, .bka-evidence-table th {
  padding: 5px 8px;
  font-size: 12px;
}

.bka-evidence-table small {
  color: var(--navy-400);
  font-size: 11px;
  display: block;
}

.bka-evidence-readings small {
  white-space: normal;
}

.bka-evidence-estimate {
  color: var(--warning-text);
}

.bka-evidence-flagged td {
  background: var(--warning-100);
}

.bka-evidence-meter-table td {
  vertical-align: top;
}

.bka-evidence-subrow > td {
  background: var(--navy-050);
  padding-top: 0;
}

.bka-evidence-subtable {
  margin-top: 6px;
}

.bka-evidence-details > summary {
  cursor: pointer;
  color: var(--primary-600);
  font-size: 12px;
  font-weight: 700;
}

.bka-evidence-import-detail {
  padding: 6px 0;
}

.bka-nowrap {
  white-space: nowrap;
}

.bka-muted {
  color: var(--navy-400);
}

.bka-pos {
  color: var(--danger-600);
  font-weight: 700;
}

.bka-neg {
  color: var(--success-600);
  font-weight: 700;
}

.md-table td small.bka-pos, .md-table td small.bka-neg {
  font-weight: 700;
}

.bka-record {
  flex-direction: column;
  min-width: 0;
  height: 100%;
  min-height: 0;
  display: flex;
}

.bka-yearsel {
  border: 0;
  border-bottom: 2px solid var(--primary-200);
  color: var(--navy-900);
  cursor: pointer;
  background: none;
  border-radius: 0;
  min-width: 0;
  padding: 0 26px 1px 2px;
  font: 900 17px / 1.2 Lato, sans-serif;
}

.bka-record > .subtabs {
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
  margin-top: 12px;
  padding: 0;
}

.bka-record-body {
  flex: 1;
  min-height: 0;
  padding: 14px 12px 0 0;
  overflow-y: auto;
}

.bka-record-body > * + * {
  margin-top: 14px;
}

@media (max-width: 1279px) {
  .bka-record > .pdm-kpi-strip {
    flex-wrap: wrap;
    row-gap: 8px;
    height: auto;
    padding: 10px 16px 12px;
  }

  .bka-record > .pdm-kpi-strip > .pdm-asset-card {
    margin-left: 0;
  }

  .bka-record > .pdm-kpi-strip > .pdm-kpi-cards {
    flex-wrap: wrap;
    row-gap: 8px;
    margin-right: 0;
    overflow-x: visible;
  }
}

.bka-record-note {
  margin-top: 10px;
  font-size: 12px;
}

.bka-record-body .md-table td small, .bka-plan-create-page .md-table td small, .bka-sheet .md-table td small {
  color: var(--navy-400);
  font-size: 11.5px;
  font-weight: 500;
  display: block;
}

.bka-record-body .md-table td small.bka-pos {
  color: var(--danger-600);
  font-weight: 700;
}

.bka-record-body .md-table [data-money-cents], .bka-sheet .md-table [data-money-cents] {
  white-space: nowrap;
}

.bka-record-detail-line {
  display: block;
}

.bka-record-message {
  border-radius: var(--t360-radius-2);
  color: var(--primary-700);
  background: var(--primary-050);
  margin: 12px 0 0;
  padding: 8px 14px;
  font-weight: 700;
}

.bka-gate-box {
  align-items: center;
  gap: var(--t360-space-4);
  border-radius: var(--t360-radius-2);
  flex-wrap: wrap;
  flex-shrink: 0;
  margin: 12px 0 0;
  padding: 10px 14px;
  font-weight: 700;
  display: flex;
}

.bka-gate-box.warn {
  color: var(--warning-text);
  background: var(--warning-100);
}

.bka-gate-box.ok {
  color: var(--success-600);
  background: var(--success-100);
}

.bka-gate-box.bad {
  color: var(--danger-600);
  background: var(--danger-100);
}

.bka-gate-spacer {
  flex: 1;
}

.bka-record-provenance {
  color: var(--navy-500);
  font-size: 12px;
  font-weight: 700;
}

.bka-tieout-strip {
  align-items: center;
  gap: var(--t360-space-4);
  border-radius: var(--t360-radius-2);
  color: var(--success-600);
  background: var(--success-100);
  flex-wrap: wrap;
  margin-top: 12px;
  padding: 10px 14px;
  font-weight: 700;
  display: flex;
}

.bka-tieout-equation {
  color: inherit;
  font-weight: 600;
}

.bka-tieout-rest {
  font-variant-numeric: tabular-nums;
  margin-left: auto;
  font-weight: 900;
}

.bka-ausgabe-actions {
  align-items: center;
  gap: var(--t360-space-2);
  flex-wrap: wrap;
  display: flex;
}

.bka-ausgabe-actions input[type="date"] {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  min-height: 28px;
  color: var(--navy-800);
  background: var(--surface);
  padding: 2px 8px;
}

.bka-facts {
  grid-template-columns: auto 1fr;
  gap: 8px 20px;
  margin: 0;
  font-size: 13px;
  display: grid;
}

.bka-facts dt {
  color: var(--navy-500);
  font-weight: 700;
}

.bka-facts dd {
  color: var(--navy-900);
  margin: 0;
}

.bka-facts-pair {
  display: contents;
}

.bka-sheet-layer {
  z-index: 400;
  position: fixed;
  inset: 0;
}

.bka-sheet-scrim {
  background: color-mix(in srgb, var(--navy-900) 34%, transparent);
  cursor: default;
  border: 0;
  width: 100%;
  position: absolute;
  inset: 0;
}

.bka-sheet {
  top: var(--topbar-h);
  background: var(--navy-100);
  width: min(900px, 94vw);
  box-shadow: var(--shadow-lg);
  flex-direction: column;
  display: flex;
  position: absolute;
  bottom: 0;
  right: 0;
}

.bka-sheet-head {
  align-items: center;
  gap: var(--t360-space-3);
  border-bottom: 1px solid var(--border);
  background: var(--surface);
  flex-shrink: 0;
  padding: 10px 16px;
  display: flex;
}

.bka-sheet-head h2 {
  min-width: 0;
  color: var(--navy-900);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 0;
  font: 900 15px / 1.2 Lato, sans-serif;
  overflow: hidden;
}

.bka-sheet-head > .btn, .bka-sheet-head .bka-sheet-close, .bka-sheet-head .bka-sheet-views {
  flex-shrink: 0;
}

.bka-sheet-seal {
  color: var(--navy-400);
  font-size: 12px;
  font-weight: 700;
}

.bka-sheet-views {
  border: 0;
  min-height: 0;
  padding: 0;
}

.bka-sheet-views .subtab {
  height: 30px;
  font-size: 13px;
}

.bka-sheet-close {
  width: 30px;
  height: 30px;
  color: var(--navy-600);
  background: var(--navy-100);
  cursor: pointer;
  border: 0;
  border-radius: 50%;
  place-items: center;
  display: grid;
}

.bka-sheet-body {
  flex: 1;
  min-height: 0;
  padding: 18px;
  overflow: auto;
}

.bka-sheet-screen {
  gap: 14px;
  display: grid;
}

.bka-sheet-screen .pdm-kpi-cards {
  margin-right: 0;
}

.bka-sheet-screen .md-panel {
  margin-bottom: 0;
}

.pdm-kpi-card.bka-kpi-ok {
  border-color: var(--success-500);
  background: var(--success-100);
}

.pdm-kpi-card.bka-kpi-ok strong {
  color: var(--success-600);
}

.bka-doc {
  background: var(--surface);
  max-width: 820px;
  box-shadow: var(--shadow);
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  margin: 0 auto;
  padding: 36px 44px 40px;
  font-size: 12.5px;
}

.bka-sheet-body.draft .bka-doc {
  position: relative;
}

.bka-sheet-body.draft .bka-doc:before {
  content: attr(data-draft-mark);
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  letter-spacing: .1em;
  padding: 5px 9px;
  font: 900 11px / 1 Lato, sans-serif;
  position: absolute;
  top: 14px;
  right: 16px;
}

.bka-doc-preview-scope {
  border-radius: var(--t360-radius-2);
  background: var(--primary-050);
  color: var(--primary-700);
  margin: 12px 0 4px;
  padding: 6px 10px;
  font-size: 11.5px;
  font-weight: 800;
}

.bka-group-key {
  justify-items: start;
  gap: 2px;
  display: grid;
}

.bka-group-key b {
  color: var(--navy-800);
}

.bka-key-line {
  color: var(--navy-500);
  font-size: 10.5px;
  font-weight: 600;
  display: block;
}

@media print {
  .bka-doc {
    box-shadow: none;
    max-width: none;
  }

  .bka-sheet-body.draft .bka-doc:before, .bka-doc-preview-scope {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}

.bka-doc-letterhead {
  justify-content: space-between;
  gap: var(--t360-space-5);
  border-bottom: 2px solid var(--navy-900);
  margin-bottom: 16px;
  padding-bottom: 10px;
  display: flex;
}

.bka-doc-letterhead b {
  color: var(--navy-900);
  font-size: 15px;
}

.bka-doc-letterhead small {
  color: var(--navy-500);
  font-size: 11px;
  display: block;
}

.bka-doc-right {
  text-align: right;
}

.bka-doc h2 {
  color: var(--navy-900);
  margin: 14px 0 4px;
  font-size: 17px;
  font-weight: 900;
}

.bka-doc h3 {
  color: var(--navy-500);
  letter-spacing: .06em;
  text-transform: uppercase;
  margin: 18px 0 6px;
  font-size: 11px;
  font-weight: 800;
}

.bka-doc-kv {
  grid-template-columns: 1fr auto;
  gap: 4px 20px;
  margin: 0;
  font-size: 12.5px;
  display: grid;
}

.bka-doc-kv dt {
  color: var(--navy-500);
}

.bka-doc-kv dd {
  color: var(--navy-900);
  text-align: right;
  margin: 0;
}

.bka-doc-table {
  border-collapse: collapse;
  width: 100%;
}

.bka-doc-table th, .bka-doc-table td {
  border-bottom: 1px solid var(--navy-100);
  text-align: left;
  vertical-align: top;
  padding: 5px 6px;
}

.bka-doc-table th {
  color: var(--navy-500);
  letter-spacing: .03em;
  text-transform: uppercase;
  font-size: 10.5px;
  font-weight: 800;
}

.bka-doc-table td.right, .bka-doc-table th.right {
  text-align: right;
}

.bka-doc-table tr.sum td {
  border-top: 1.5px solid var(--navy-800);
  border-bottom: 0;
  font-weight: 900;
}

.bka-doc-result-table {
  margin-top: 10px;
}

.bka-doc-note {
  border-left: 3px solid var(--navy-200);
  background: var(--navy-050);
  color: var(--navy-600);
  margin: 10px 0;
  padding: 8px 12px;
  font-size: 11.5px;
}

.bka-doc-foot {
  border-top: 1px solid var(--navy-150);
  color: var(--navy-500);
  margin-top: 18px;
  padding-top: 10px;
  font-size: 11px;
  line-height: 1.5;
}

.bka-doc-empty {
  justify-items: center;
  gap: var(--t360-space-4);
  color: var(--navy-500);
  text-align: center;
  padding: 40px 20px;
  display: grid;
}

@media (max-width: 760px) {
  .bka-sheet {
    width: 100%;
    top: 0;
  }
}

.bka-tieout small {
  color: inherit;
  font-weight: 900;
  line-height: 1.35;
}

.bka-feed div {
  border-bottom: 1px dashed var(--navy-100);
  padding-bottom: 9px;
}

.bka-feed div:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.bka-feed span {
  color: var(--navy-800);
  margin-top: 4px;
  font: 900 13px / 1.2 Lato, sans-serif;
  display: block;
}

.bka-empty {
  min-height: 160px;
  color: var(--navy-400);
  justify-content: center;
  align-items: center;
  display: flex;
}

.bka-run-steps {
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  margin: 0 0 4px;
  padding: 0;
  list-style: none;
  display: flex;
}

.bka-run-step {
  color: var(--navy-400);
  align-items: center;
  gap: 7px;
  font: 900 12px / 1 Lato, sans-serif;
  display: flex;
}

.bka-run-step .n {
  background: var(--navy-100);
  width: 22px;
  height: 22px;
  color: var(--navy-500);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font: 900 11px / 1 Lato, sans-serif;
  display: flex;
}

.bka-run-step.active {
  color: var(--primary-700);
}

.bka-run-step.active .n {
  background: var(--primary-600);
  color: #fff;
}

.bka-run-step.done {
  color: var(--success-600);
}

.bka-run-step.done .n {
  background: var(--success-100);
  color: var(--success-600);
}

.bka-run-step-arrow {
  color: var(--navy-200);
  margin-left: 7px;
  font-size: 13px;
}

.bka-readiness-banner {
  border-radius: 8px;
  align-items: flex-start;
  gap: 10px;
  padding: 11px 14px;
  font-size: 12.5px;
  display: flex;
}

.bka-readiness-banner.ok {
  background: var(--success-100);
  color: #0f8d46;
}

.bka-readiness-banner.caution {
  background: var(--warning-100);
  color: var(--warning-text);
}

.bka-readiness-banner.warn {
  background: var(--danger-100);
  color: #b11d1d;
}

.bka-readiness-banner ul {
  margin: 4px 0 0;
  padding-left: 18px;
}

.bka-inbox-card {
  gap: 10px;
}

@media (max-width: 1180px) {
  .bka-layout {
    grid-template-columns: 1fr;
  }

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

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

  .ar-contract-summary {
    grid-template-columns: 18px minmax(180px, 1.4fr) repeat(3, minmax(90px, .7fr));
  }

  .ar-contract-reason {
    grid-column: 2 / -1;
  }
}

@media (max-width: 899px) {
  .ar-run-header {
    grid-template-columns: 1fr;
  }

  .ar-context-actions {
    justify-content: flex-start;
  }

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

  .ar-review-tabs button:nth-child(2) {
    border-right: 0;
  }

  .ar-review-tabs button:nth-child(-n+2) {
    border-bottom-color: var(--border);
  }

  .ar-review-tabs button:nth-child(-n+2).active {
    border-bottom-color: var(--secondary-500);
  }

  .ar-comparison-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .ar-comparison-toolbar .filter-tabs {
    align-self: flex-start;
  }

  .ar-disclosure {
    width: min(440px, 100vw - 20px);
  }
}

@media (max-width: 760px) {
  .bka-toolbar, .bka-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .bka-layout, .bka-side, .bka-form-grid, .bka-kpis, .bka-run-facts {
    grid-template-columns: 1fr;
  }

  .ar-run-header-facts, .ar-view-kpis {
    grid-template-columns: 1fr 1fr;
  }

  .ar-context-actions {
    flex-wrap: wrap;
  }

  .ar-balance-check {
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .ar-balance-check span {
    width: 100%;
    margin-left: 28px;
  }

  .ar-journal-leg-identity {
    grid-template-columns: 25px minmax(70px, auto) minmax(180px, 1fr);
  }

  .ar-journal-leg-identity small {
    grid-column: 2 / -1;
  }

  .ar-workflow {
    overflow-x: auto;
  }

  .ar-workflow ol {
    min-width: 520px;
  }

  .ar-contract-summary {
    grid-template-columns: 18px minmax(170px, 1fr) repeat(3, minmax(90px, auto));
    overflow-x: auto;
  }

  .ar-contract-reason {
    grid-column: 2 / -1;
  }

  .ar-section-heading {
    flex-direction: column;
    align-items: flex-start;
  }

  .ar-booking-contract-toggle {
    grid-template-columns: 18px minmax(190px, 1fr) auto;
    overflow-x: auto;
  }

  .ar-booking-contract-toggle > small {
    grid-column: 2 / -1;
  }
}

.btn-sm {
  min-width: auto;
  min-height: 24px;
  padding: 0 10px;
  font-size: 12px;
}

.btn-icon {
  width: 32px;
  min-width: 32px;
  padding: 0;
}

.btn-sm.btn-icon {
  width: 24px;
  min-width: 24px;
}

.chip.green {
  color: #0f8d46;
  background: #e8fbef;
}

.chip.amber {
  color: var(--warning-text);
  background: var(--warning-100);
}

.chip.red {
  color: #b11d1d;
  background: #ffe7e7;
}

.chip.gray {
  color: var(--navy-500);
  background: var(--navy-100);
}

.chip.teal {
  color: var(--secondary-600);
  background: var(--secondary-050);
}

.mahn-screen {
  flex-direction: column;
  gap: 14px;
  display: flex;
}

.mahn-screen--fill {
  height: 100%;
  min-height: 0;
}

.mahn-toolbar {
  justify-content: flex-end;
  align-items: flex-end;
  gap: 16px;
  display: flex;
}

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

.mahn-property-filter {
  color: var(--navy-500);
  gap: 4px;
  font: 800 11px / 1 Lato, sans-serif;
  display: grid;
}

.mahn-property-filter select {
  border: 1px solid var(--navy-200);
  min-width: 190px;
  height: 32px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  padding: 0 28px 0 9px;
  font: 700 12.5px / 1 Lato, sans-serif;
}

.mahn-message {
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 13px;
}

.mahn-message.ok {
  background: var(--success-100);
  color: var(--success-600);
}

.mahn-message.err {
  background: var(--danger-100);
  color: var(--danger-600);
}

.mahn-muted {
  color: var(--navy-400);
  padding: 8px 2px;
  font-size: 13px;
}

.mahn-holds {
  border: 1px solid var(--warning-500);
  background: var(--warning-100);
  border-radius: 10px;
  padding: 12px 14px;
}

.mahn-holds h3 {
  color: var(--warning-text);
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  font: 900 13px / 1 Lato, sans-serif;
  display: flex;
}

.mahn-hold {
  color: var(--warning-text);
  font-size: 13px;
}

.mahn-case-head-chips {
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  display: flex;
}

.mahn-legal-status {
  max-width: 260px;
  color: var(--navy-700);
  white-space: normal;
  align-items: center;
  gap: 6px;
  font: 800 12px / 1.35 Lato, sans-serif;
  display: inline-flex;
}

.mahn-legal-status svg {
  flex-shrink: 0;
}

.mahn-case-chips-card {
  border: 1px solid var(--border);
  background: var(--navy-050);
  border-radius: 12px;
  flex-shrink: 0;
  align-items: center;
  min-height: 58px;
  padding: 10px 16px;
  display: inline-flex;
}

.mahn-unit-overflow {
  position: relative;
}

.mahn-unit-overflow-trigger {
  border: 1px solid var(--border);
  background: var(--navy-100);
  color: var(--navy-500);
  cursor: pointer;
  border-radius: 999px;
  padding: 3px 8px;
  font: 700 11px / 1.2 Lato, sans-serif;
}

.mahn-unit-overflow-trigger:hover {
  background: var(--primary-t08);
  border-color: var(--primary-200);
}

.mahn-unit-overflow-panel {
  z-index: 10;
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 9px;
  min-width: 190px;
  max-height: 220px;
  padding: 8px;
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  overflow-y: auto;
  box-shadow: 0 14px 35px #07153029;
}

.mahn-unit-overflow-panel strong {
  color: var(--navy-400);
  text-transform: uppercase;
  letter-spacing: .02em;
  margin-bottom: 6px;
  padding: 0 8px;
  font: 700 11px / 1.2 Lato, sans-serif;
  display: block;
}

.mahn-unit-overflow-panel ul {
  flex-direction: column;
  gap: 2px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.mahn-unit-overflow-panel li {
  color: var(--navy-700);
  border-radius: 6px;
  padding: 6px 8px;
  font: 600 13px / 1.3 Lato, sans-serif;
}

.mahn-verdict {
  border: 1px solid var(--primary-300);
  border-left: 4px solid var(--primary-500);
  background: var(--primary-050);
  border-radius: 8px;
  align-items: center;
  gap: 16px;
  padding: 13px 15px;
  display: flex;
}

.mahn-verdict.hold {
  border-color: var(--warning-500);
  border-left-color: var(--warning-500);
  background: var(--warning-100);
}

.mahn-verdict-copy {
  flex-direction: column;
  flex: 1;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.mahn-verdict-copy strong {
  color: var(--navy-800);
  font: 900 15px / 1.2 Lato, sans-serif;
}

.mahn-verdict-copy > span {
  color: var(--navy-600);
  font: 700 13px / 1.35 Lato, sans-serif;
}

.mahn-verdict-copy small {
  color: var(--warning-text);
  align-items: center;
  gap: 5px;
  font-size: 11px;
  display: flex;
}

.mahn-panel {
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  border-radius: 4px;
  padding: 14px 16px;
}

.mahn-panel h3 {
  color: var(--navy-700);
  margin-bottom: 10px;
  font: 900 13px / 1 Lato, sans-serif;
}

.mahn-panel-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  display: flex;
}

.mahn-panel-head h3 {
  margin-bottom: 0;
}

.mahn-panel-aside {
  color: var(--navy-400);
  font-size: 11px;
  font-weight: 700;
}

.mahn-open-items-meta {
  flex-direction: column;
  align-items: flex-end;
  gap: 3px;
  display: flex;
}

.mahn-open-items-meta > span {
  align-items: center;
  gap: 4px;
  display: flex;
}

.mahn-row-profile {
  margin-top: 3px;
  display: block;
}

.mahn-overview-row {
  flex: 1;
  min-height: 0;
  display: flex;
}

.mahn-overview-row > .pdm-detail-body {
  min-width: 0;
}

.mahn-history-panel {
  flex-direction: column;
  flex: 0 0 var(--history-panel-width, 360px);
  border: 0;
  border-left: 1px solid var(--border);
  background: var(--surface);
  min-height: 0;
  margin: -14px -16px -14px 0;
  display: flex;
  position: relative;
}

.mahn-history-panel-body {
  flex: 1;
  min-height: 0;
  padding: 0 20px 0 16px;
  overflow-y: auto;
}

.mahn-history-panel > .pdm-panel-head {
  flex-shrink: 0;
  margin-bottom: 0;
  padding: 16px 32px 10px 16px;
}

.mahn-history-panel > .pdm-panel-head h3 {
  color: var(--primary-500);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.mahn-history-resize-handle {
  cursor: col-resize;
  z-index: 2;
  touch-action: none;
  width: 14px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -7px;
}

.mahn-history-panel:has(.mahn-history-resize-handle:hover) {
  border-left-color: var(--primary-500);
}

.mahn-prepare-row {
  flex: 1;
  min-height: 0;
  display: flex;
}

.mahn-prepare-left-col {
  flex-direction: column;
  flex: 1;
  gap: 14px;
  min-width: 0;
  min-height: 0;
  margin-top: -14px;
  display: flex;
}

.mahn-prepare-figures-panel {
  border: 0;
  border-left: 1px solid var(--border);
  background: var(--surface);
  flex-direction: column;
  flex: 0 0 320px;
  min-height: 0;
  margin: -14px -16px -14px 0;
  display: flex;
  position: relative;
}

.mahn-prepare-figures-panel-body {
  flex: 1;
  min-height: 0;
  padding: 0 20px 0 16px;
  overflow-y: auto;
}

.mahn-prepare-figures-panel > .pdm-panel-head {
  flex-shrink: 0;
  margin-bottom: 0;
  padding: 16px 16px 10px;
}

.mahn-prepare-figures-panel > .pdm-panel-head h3 {
  color: var(--primary-500);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.mahn-prepare-figures-panel-body .mahn-prepare-facts {
  box-shadow: none;
  background: none;
  border: 0;
  padding: 0;
}

@media (max-width: 1150px) {
  .mahn-overview-row {
    flex-direction: column;
    flex: initial;
    min-height: 0;
    display: flex;
  }

  .mahn-overview-row > .pdm-detail-body, .mahn-history-panel {
    min-height: 0;
    overflow-y: visible;
  }

  .mahn-history-panel {
    border-left: 0;
    flex-basis: auto;
    margin: 0;
  }

  .mahn-history-panel > .pdm-panel-head {
    padding: 14px 16px 10px;
  }

  .mahn-history-panel-body {
    padding: 0 16px 14px;
  }

  .mahn-history-resize-handle {
    display: none;
  }

  .mahn-prepare-row {
    flex-direction: column;
    flex: initial;
    min-height: 0;
    display: flex;
  }

  .mahn-prepare-left-col, .mahn-prepare-figures-panel {
    min-height: 0;
    overflow-y: visible;
  }

  .mahn-prepare-left-col {
    margin-top: 0;
  }

  .mahn-prepare-figures-panel {
    border-left: 0;
    flex-basis: auto;
    margin: 0;
  }

  .mahn-prepare-figures-panel > .pdm-panel-head {
    padding: 14px 16px 10px;
  }

  .mahn-prepare-figures-panel-body {
    padding: 0 16px 14px;
  }
}

.mahn-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}

.mahn-table th {
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--navy-500);
  background: var(--navy-050);
  border-bottom: 1px solid var(--border);
  padding: 6px 10px;
  font: 900 11px / 1 Lato, sans-serif;
}

.mahn-table td {
  border-bottom: 1px solid var(--navy-100);
  vertical-align: middle;
  padding: 8px 10px;
}

.mahn-table td small {
  color: var(--navy-400);
  font-size: 11px;
  display: block;
}

.mahn-table .right, .mahn-mini-table .right {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.mahn-table tr.reversed {
  opacity: .5;
}

.mahn-claim-group-row td, .tg-table tbody tr.mahn-claim-group-row td {
  background: var(--surface);
  color: var(--navy-700);
  font-weight: 800;
}

.mahn-open-items-grid {
  margin: 0 -16px -14px;
}

.mahn-open-items-grid .tg-table {
  min-width: 0;
}

.mahn-open-items-grid .t360grid {
  box-shadow: none;
  background: none;
  border: 0;
  border-radius: 0;
}

.mahn-claim-toggle {
  color: inherit;
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 5px;
  padding: 0;
  display: inline-flex;
}

.mahn-claim-toggle svg {
  flex-shrink: 0;
  transition: transform .15s;
  transform: rotate(-90deg);
}

.mahn-claim-toggle[aria-expanded="true"] svg {
  transform: rotate(0);
}

.mahn-claim-toggle[aria-disabled="true"] {
  cursor: default;
}

.mahn-mixed-level-marker {
  color: var(--warning-text);
  margin-left: 5px;
}

.mahn-claim-component-copy {
  align-items: baseline;
  gap: 12px;
  display: flex;
}

.mahn-claim-component-copy > span {
  min-width: 78px;
  color: var(--navy-400);
  font-size: 11px;
}

.mahn-claim-component-copy > strong {
  color: var(--navy-700);
  font-size: 12px;
}

.mahn-pay-input {
  text-align: right;
  border: 1px solid var(--navy-200);
  font-variant-numeric: tabular-nums;
  border-radius: 4px;
  width: 96px;
  padding: 4px 6px;
}

.mahn-value-date-input {
  text-align: left;
  width: 132px;
}

.mahn-table .money-input {
  width: 112px;
  margin-left: auto;
}

.mahn-table .money-input input {
  border: 1px solid var(--navy-200);
  text-align: right;
  font-variant-numeric: tabular-nums;
  border-radius: 4px;
  width: 100%;
  padding: 4px 25px 4px 6px;
}

.mahn-table .money-input span {
  right: 7px;
}

.mahn-panel > .pdm-panel-head h3 {
  color: var(--primary-500);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.mahn-payments-subtitle {
  color: var(--navy-500);
  margin: -4px 0 10px;
  font-size: 12px;
  font-weight: 700;
}

.mahn-payment-history-summary {
  color: var(--navy-400);
  padding: 6px 0;
  font-size: 11px;
  display: block;
}

.mahn-payment-history-link {
  width: 100%;
  font: inherit;
  text-align: left;
  color: var(--primary-600);
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.mahn-payment-history-link:hover {
  text-decoration: underline;
}

.mahn-payment-history-link svg {
  flex-shrink: 0;
  transition: transform .15s;
}

.mahn-payment-history-link:hover svg {
  transform: translateX(2px);
}

.mahn-contact-notes > div {
  border-bottom: 1px dotted var(--navy-150);
  color: var(--navy-500);
  padding: 7px 0;
  font-size: 12.5px;
}

.mahn-contact-notes > div:last-child {
  border-bottom: 0;
}

.mahn-contact-notes strong {
  color: var(--navy-800);
  font-weight: 800;
}

.mahn-case-action-bar {
  border-top: 2px solid var(--navy-150);
  background: var(--surface);
  min-height: 52px;
  box-shadow: var(--shadow);
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin: 0 -16px -16px;
  padding: 9px 16px;
  display: flex;
}

.mahn-case-action-bar > div:first-child {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.mahn-case-action-bar strong {
  color: var(--navy-800);
  font: 900 13px / 1.2 Lato, sans-serif;
}

.mahn-case-action-bar span {
  color: var(--navy-500);
  font-size: 11px;
  line-height: 1.35;
}

.mahn-case-action-buttons {
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  display: flex;
}

.mahn-timeline {
  flex-direction: column;
  display: flex;
}

.mahn-tl-entry {
  padding: 10px 0 16px 26px;
  position: relative;
}

.mahn-tl-entry:before {
  content: "";
  background: var(--navy-150);
  width: 2px;
  position: absolute;
  top: 0;
  bottom: -16px;
  left: 6px;
}

.mahn-tl-entry:last-child:before {
  height: 24px;
  bottom: auto;
}

.mahn-tl-entry:first-child:before {
  top: 20px;
}

.mahn-tl-entry:after {
  content: "";
  background: var(--surface);
  border: 2px solid var(--primary-500);
  width: 12px;
  height: 12px;
  box-shadow: 0 0 0 3px var(--primary-100);
  border-radius: 50%;
  position: absolute;
  top: 20px;
  left: 1px;
}

.mahn-tl-entry[data-history-kind="sollstellung"]:after {
  border-color: var(--navy-300);
  box-shadow: 0 0 0 3px var(--navy-050);
}

.mahn-tl-entry:has([data-document-status="storniert"]):after {
  border-color: var(--warning-500);
  box-shadow: 0 0 0 3px var(--warning-100);
}

.mahn-tl-entry[data-history-kind="approval-pending"]:after {
  border-color: var(--warning-500);
  box-shadow: 0 0 0 3px var(--warning-100);
}

.mahn-tl-row {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.mahn-tl-date {
  width: 82px;
  color: var(--navy-500);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
  font-size: 12px;
}

.mahn-tl-title {
  color: var(--navy-700);
  font: 800 13px / 1.2 Lato, sans-serif;
}

.mahn-tl-spacer {
  flex: 1;
}

.mahn-tl-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  display: flex;
}

.mahn-tl-posting-card {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 10px 12px;
  display: flex;
}

.mahn-tl-posting-card .mahn-tl-date {
  width: auto;
}

.mahn-tl-notice-card {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  flex-direction: column;
  gap: 6px;
  padding: 10px 12px;
  display: flex;
}

.mahn-tl-notice-card .mahn-tl-profiles {
  margin: 0;
}

.mahn-tl-profiles {
  margin: 7px 0 0 92px;
}

.mahn-tl-profiles summary {
  width: fit-content;
  color: var(--navy-400);
  cursor: pointer;
  align-items: center;
  gap: 7px;
  font-size: 10px;
  font-weight: 750;
  list-style: none;
  display: flex;
}

.mahn-tl-profiles summary::-webkit-details-marker {
  display: none;
}

.mahn-tl-profiles summary svg {
  transition: transform .15s;
}

.mahn-tl-profiles[open] summary svg {
  transform: rotate(180deg);
}

.mahn-tl-profiles-empty {
  color: var(--navy-400);
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 750;
  display: flex;
}

.mahn-tl-profile-details {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
  margin-top: 7px;
  display: flex;
}

.mahn-tl-profile-details > .dunning-profile-snapshot {
  border: 1px solid var(--navy-150);
  background: var(--navy-050);
  border-radius: 4px;
  flex-direction: column;
  gap: 3px;
  min-width: 210px;
  padding: 5px 7px;
  display: flex;
}

.dunning-profile-snapshot > small {
  color: var(--navy-400);
  font-size: 9px;
  font-weight: 650;
}

.dunning-profile-snapshot.config-error {
  border-color: var(--danger-600);
  background: var(--danger-100);
}

.mahn-tl-profiles small.config-error {
  color: var(--danger-700);
  align-items: center;
  gap: 4px;
  font-size: 10px;
  display: flex;
}

.mahn-pdf-preview {
  border: 1px solid var(--border);
  background: var(--bg);
  border-radius: 8px;
  overflow: hidden;
}

.mahn-pdf-preview-meta {
  border-bottom: 1px solid var(--border);
  color: var(--navy-600);
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 12px;
  display: flex;
}

.mahn-pdf-preview-meta code {
  color: var(--navy-500);
  overflow-wrap: anywhere;
  margin-left: auto;
  font: 11px / 1.2 monospace;
}

.mahn-pdf-preview object {
  background: var(--surface);
  border: 0;
  width: 100%;
  height: min(72vh, 820px);
  min-height: 520px;
  display: block;
}

.mahn-letter {
  border: 1px solid var(--border);
  background: var(--bg);
  border-radius: 10px;
  margin-top: 10px;
}

.mahn-letter-prov {
  border-bottom: 1px solid var(--border);
  color: var(--navy-500);
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 12px;
  display: flex;
}

.mahn-letter-prov code {
  color: var(--navy-700);
  font-family: monospace;
}

.mahn-letter-prov button {
  margin-left: auto;
}

.mahn-letter-raw {
  white-space: pre-wrap;
  word-break: break-all;
  max-height: 320px;
  margin: 0;
  padding: 12px;
  font: 12px / 1.5 monospace;
  overflow: auto;
}

.mahn-letter-body {
  flex-direction: column;
  gap: 10px;
  padding: 14px 16px;
  display: flex;
}

.mahn-letter-heading {
  color: var(--navy-800);
  margin: 0;
  font: 900 18px / 1.2 Lato, sans-serif;
}

.mahn-letter-body h4 {
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--navy-500);
  margin-top: 4px;
  font: 900 12px / 1 Lato, sans-serif;
}

.mahn-letter-parties {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}

.mahn-letter-parties b {
  color: var(--navy-400);
  text-transform: uppercase;
  font-size: 11px;
  display: block;
}

.mahn-letter-parties span {
  font: 700 14px / 1.3 Lato, sans-serif;
}

.mahn-letter-parties small {
  color: var(--navy-500);
  font-size: 12px;
  display: block;
}

.mahn-mini-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}

.mahn-mini-table-wrap {
  max-width: 100%;
  overflow-x: auto;
}

.mahn-mini-table th {
  text-align: left;
  color: var(--navy-500);
  border-bottom: 1px solid var(--border);
  padding: 4px 8px;
  font: 900 11px / 1 Lato, sans-serif;
}

.mahn-mini-table td {
  border-bottom: 1px solid var(--navy-100);
  padding: 5px 8px;
}

.mahn-mini-table .mahn-contract-group-row th {
  border-top: 1px solid var(--primary-200);
  border-bottom-color: var(--primary-100);
  color: var(--navy-600);
  background: var(--primary-050);
  letter-spacing: 0;
  text-transform: none;
  padding: 7px 8px;
  font: 700 12px / 1.2 Lato, sans-serif;
}

.mahn-contract-group-row th > span + span {
  margin-left: 24px;
}

.mahn-contract-group-row b {
  color: var(--navy-800);
  font-weight: 900;
}

.mahn-letter-totals {
  flex-wrap: wrap;
  gap: 16px;
  margin: 0;
  display: flex;
}

.mahn-letter-totals > div {
  flex-direction: column;
  display: flex;
}

.mahn-letter-totals dt {
  color: var(--navy-400);
  font-size: 11px;
}

.mahn-letter-totals dd {
  font-variant-numeric: tabular-nums;
  margin: 0;
  font: 700 14px / 1.2 Lato, sans-serif;
}

.mahn-letter-totals .strong dd {
  color: var(--primary-700);
}

.mahn-letter-disclaimer {
  color: var(--navy-400);
  align-items: center;
  gap: 6px;
  font-size: 11px;
  display: flex;
}

.mahn-prepare {
  flex-direction: column;
  flex: 1;
  gap: 14px;
  min-height: 0;
  display: flex;
}

.mahn-prepare-head {
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  display: flex;
}

.mahn-prepare-head > div:first-child {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.mahn-prepare-head h2 {
  color: var(--navy-800);
  margin: 0;
  font: 900 18px / 1.2 Lato, sans-serif;
}

.mahn-prepare-head p {
  color: var(--navy-500);
  margin: 0;
  font-size: 12px;
}

.mahn-prepare-eyebrow {
  color: var(--primary-700);
  letter-spacing: .04em;
  text-transform: uppercase;
  align-items: center;
  gap: 5px;
  font: 800 11px / 1.2 Lato, sans-serif;
  display: inline-flex;
}

.mahn-prepare-head-meta {
  flex-direction: column;
  flex-shrink: 0;
  align-items: flex-end;
  gap: 6px;
  display: flex;
}

.mahn-prepare-head-meta code {
  color: var(--navy-400);
  font: 11px / 1.2 monospace;
}

.mahn-prepare-approval {
  border: 1px solid var(--warning-500);
  color: var(--warning-text);
  background: var(--warning-100);
  border-left: 0;
  border-right: 0;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  margin-left: -16px;
  padding: 10px 16px;
  display: flex;
}

.mahn-prepare-approval strong {
  font: 900 13px / 1.2 Lato, sans-serif;
}

.mahn-prepare-compare {
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 20px;
  display: grid;
}

.mahn-prepare-compare-col {
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.mahn-prepare-compare-col > h4 {
  color: var(--navy-500);
  letter-spacing: .04em;
  text-transform: uppercase;
  align-items: center;
  gap: 6px;
  margin: 0;
  font: 800 11px / 1.2 Lato, sans-serif;
  display: flex;
}

.mahn-prepare-facts {
  border: 1px solid var(--border);
  background: var(--navy-050);
  box-shadow: var(--shadow-sm);
  border-radius: 8px;
  padding: 14px 16px;
}

.mahn-prepare-facts h3 {
  color: var(--navy-700);
  margin: 0 0 10px;
  font: 900 13px / 1.2 Lato, sans-serif;
}

.mahn-prepare-facts dl {
  flex-direction: column;
  margin: 0;
  display: flex;
}

.mahn-prepare-facts dl > div {
  border-bottom: 1px dotted var(--navy-200);
  justify-content: space-between;
  gap: 16px;
  padding: 6px 0;
  display: flex;
}

.mahn-prepare-facts dl > div:last-child {
  border-bottom: 0;
}

.mahn-prepare-facts dl > div.total {
  border-top: 1px solid var(--navy-300);
  color: var(--primary-700);
  margin-top: 3px;
  padding-top: 10px;
}

.mahn-prepare-facts dt {
  color: var(--navy-500);
  font-size: 12px;
  line-height: 1.3;
}

.mahn-prepare-facts dd {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
  margin: 0;
  font: 800 13px / 1.2 Lato, sans-serif;
}

.mahn-prepare-facts .total dd {
  color: var(--primary-700);
  font-size: 15px;
  font-weight: 900;
}

.mahn-prepare-facts > p {
  color: var(--navy-400);
  margin: 10px 0 0;
  font-size: 11px;
  line-height: 1.4;
}

.mahn-prepare-letters {
  flex-direction: column;
  flex-shrink: 0;
  gap: 14px;
  min-width: 0;
  display: flex;
}

.mahn-prepare-letter {
  min-width: 0;
}

.mahn-prepare-letter-head {
  color: var(--navy-500);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 6px;
  font-size: 11px;
  display: flex;
}

.mahn-prepare-letter-head strong {
  color: var(--navy-700);
  font: 900 12px / 1.2 Lato, sans-serif;
}

.mahn-prepare-letter .mahn-letter {
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  margin-top: 0;
  overflow: hidden;
}

.mahn-prepare-items {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  min-height: 0;
  display: flex;
}

.mahn-prepare-items > .pdm-panel-head {
  flex-shrink: 0;
}

.mahn-prepare-items > .pdm-panel-head h3 {
  color: var(--primary-500);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.mahn-prepare-items-grid {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.mahn-prepare-items-grid .tgv2 {
  min-height: 200px;
}

.mahn-prepare-actions {
  border: 1px solid var(--navy-150);
  background: var(--navy-050);
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 12px 16px;
  display: flex;
}

.mahn-prepare-actions > span {
  max-width: 62ch;
  color: var(--navy-500);
  font-size: 12px;
  line-height: 1.4;
}

.mahn-prepare-actions > div {
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  display: flex;
}

@media (max-width: 900px) {
  .mahn-letter-parties, .mahn-contact-grid {
    grid-template-columns: 1fr;
  }

  .mahn-case-action-bar {
    flex-direction: column;
    align-items: stretch;
  }

  .mahn-case-action-buttons {
    flex-wrap: wrap;
  }

  .mahn-case-action-buttons .btn {
    flex: 220px;
    justify-content: center;
  }

  .mahn-prepare-compare {
    grid-template-columns: 1fr;
  }

  .mahn-prepare-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .mahn-prepare-actions > div {
    flex-wrap: wrap;
  }

  .mahn-prepare-actions .btn {
    flex: 220px;
    justify-content: center;
  }
}

.md-screen {
  flex-direction: column;
  gap: 14px;
  display: flex;
}

.md-screen--fill {
  height: 100%;
  min-height: 0;
}

.md-toolbar {
  justify-content: flex-end;
  gap: 8px;
  display: flex;
}

.pdm-units-toolbar {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.pdm-overlet-count {
  border-radius: var(--pill);
  color: #fff;
  background: var(--danger-600);
  place-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  font: 900 10px / 1 Lato, sans-serif;
  display: inline-grid;
}

.pdm-occupancy-summary {
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 8px;
  min-width: 0;
  line-height: 1.25;
  display: flex;
  position: relative;
}

.pdm-occupancy-summary > .chip {
  flex: none;
}

.pdm-occupancy-detail, .pdm-occupancy-future, .pdm-occupancy-shares {
  color: var(--navy-500);
  font-size: 11.5px;
}

.pdm-occupancy-future {
  color: var(--primary-700);
  font-weight: 700;
}

.pdm-occupancy-shares {
  text-overflow: ellipsis;
  white-space: nowrap;
  flex-basis: 100%;
  overflow: hidden;
}

.md-fact-box .pdm-occupancy-detail, .md-fact-box .pdm-occupancy-future, .md-fact-box .pdm-occupancy-shares {
  color: var(--navy-800);
  font: 700 14px / 1.3 Lato, sans-serif;
}

.pdm-occupancy-quality {
  width: 17px;
  height: 17px;
  color: var(--warning-text);
  background: var(--warning-100);
  cursor: help;
  border-radius: 50%;
  place-items: center;
  font: 900 11px / 1 Lato, sans-serif;
  display: inline-grid;
}

.md-crumb {
  display: flex;
}

.md-message {
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 13px;
}

.md-message.err {
  background: var(--danger-100);
  color: var(--danger-600);
}

.md-message.warn {
  background: var(--warning-100);
  color: var(--warning-text);
}

.coa-hub {
  gap: 12px;
  min-width: 0;
  display: grid;
}

.coa-head {
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 10px;
  gap: 8px;
  padding: 15px 17px;
  display: grid;
}

.coa-title-row {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  display: flex;
}

.coa-title-copy {
  gap: 6px;
  min-width: 0;
  display: grid;
}

.coa-eyebrow {
  color: var(--navy-400);
  font: 700 11.5px / 1.2 Lato, sans-serif;
}

.coa-title-line {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.coa-title-line h2 {
  color: var(--navy-800);
  font: 900 21px / 1.2 Lato, sans-serif;
}

.coa-head p {
  max-width: 900px;
  color: var(--navy-500);
  font-size: 12px;
  line-height: 1.45;
}

.coa-entity-controls {
  align-items: flex-end;
  margin-left: auto;
}

.coa-status-block {
  gap: 10px;
  display: grid;
}

.coa-status {
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 10px 14px;
  font: 700 13px / 1.4 Lato, sans-serif;
  display: flex;
}

.coa-status.ok {
  color: var(--success-600);
  background: var(--success-100);
}

.coa-status.warn {
  color: var(--warning-text);
  background: var(--warning-100);
}

.coa-status.neutral {
  color: var(--navy-500);
  background: var(--navy-100);
}

.coa-status .btn {
  flex-shrink: 0;
}

.coa-status-kpis {
  margin: 0 0 14px;
}

.coa-offenders {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}

.coa-offenders th {
  border-bottom: 1px solid var(--navy-200);
  color: var(--navy-500);
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 0 10px 6px;
  font: 700 10.5px / 1 Lato, sans-serif;
}

.coa-offenders td {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-800);
  vertical-align: top;
  padding: 7px 10px;
  font-size: 12.5px;
}

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

.coa-offenders-empty {
  color: var(--navy-400) !important;
}

.coa-offenders th.coa-num, .coa-num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.coa-toolbar {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  display: flex;
}

.coa-toolbar-actions {
  align-items: center;
  gap: 8px;
  margin-left: auto;
  display: flex;
}

.coa-add-panel {
  border: 1px solid var(--primary-200);
  background: var(--primary-t08);
  border-radius: 10px;
  padding: 14px;
}

.coa-panel-title {
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 12px;
  display: flex;
}

.coa-panel-title h3 {
  color: var(--navy-800);
  font: 900 16px / 1.2 Lato, sans-serif;
}

.coa-panel-title p {
  color: var(--navy-500);
  margin-top: 4px;
  font-size: 12px;
}

.coa-add-error {
  margin-bottom: 12px;
}

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

.coa-form-grid label {
  min-width: 0;
  color: var(--navy-500);
  gap: 5px;
  font: 700 11px / 1 Lato, sans-serif;
  display: grid;
}

.coa-form-grid label.wide {
  grid-column: span 2;
}

.coa-form-grid input, .coa-form-grid select, .coa-rename-input {
  border: 1px solid var(--navy-200);
  min-width: 0;
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 0 10px;
}

.coa-form-grid input:focus, .coa-form-grid select:focus, .coa-rename-input:focus {
  border-color: var(--primary-600);
  box-shadow: 0 0 0 3px var(--primary-t08);
}

.coa-grid-shell {
  min-width: 0;
}

.coa-hub .tgv2-group-head {
  grid-template-columns: auto auto auto;
}

.coa-cell {
  align-items: center;
  gap: 6px;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.coa-ellipsis {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.coa-strong {
  font-weight: 700;
}

.coa-number {
  font: 900 12.5px / 1.4 ui-monospace, Cascadia Mono, Consolas, monospace;
}

.coa-code {
  color: var(--navy-500);
  font: 700 12px / 1.4 ui-monospace, Cascadia Mono, Consolas, monospace;
}

.coa-tag {
  border-radius: var(--pill);
  color: var(--secondary-600);
  background: var(--secondary-050);
  cursor: help;
  flex-shrink: 0;
  padding: 2px 6px;
  font: 900 10px / 1.3 Lato, sans-serif;
}

.coa-rename {
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
  display: inline-flex;
}

.coa-rename-input {
  flex: 1;
  height: 28px;
}

.coa-row-actions {
  justify-content: center;
  align-items: center;
  gap: 8px;
  display: flex;
}

.coa-hub .tgv2-table tbody tr.tgv2-row-tone.coa-archived td {
  color: var(--navy-400);
  background: var(--navy-050);
}

.coa-hub .tgv2-table tbody tr.tgv2-row-tone.coa-archived:hover td {
  background: var(--navy-100);
}

.coa-menu {
  z-index: 120;
  border: 1px solid var(--navy-200);
  width: 232px;
  box-shadow: var(--shadow-lg);
  background: #fff;
  border-radius: 8px;
  padding: 5px;
  display: grid;
  position: fixed;
}

.coa-menu-item {
  color: var(--navy-800);
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 6px;
  padding: 8px 10px;
  font: 700 13px / 1 Lato, sans-serif;
}

.coa-menu-item:hover:not(:disabled) {
  background: var(--primary-t08);
  color: var(--primary-700);
}

.coa-menu-item:disabled {
  color: var(--navy-300);
  cursor: not-allowed;
}

.coa-dialog-body {
  color: var(--navy-600);
  font-size: 13px;
  line-height: 1.5;
}

.icon-action-btn {
  background: var(--navy-100);
  width: 32px;
  height: 32px;
  color: var(--primary-500);
  cursor: pointer;
  border: 0;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  transition: background 80ms, color 80ms;
  display: inline-flex;
}

.icon-action-btn:hover {
  background: var(--primary-500);
  color: #fff;
}

.icon-action-btn:disabled {
  cursor: not-allowed;
  opacity: .5;
}

.icon-action-btn--danger {
  color: #b42318;
}

.icon-action-btn--danger:hover {
  color: #fff;
  background: #b42318;
}

.coa-empty {
  border: 1px solid var(--border);
  color: var(--navy-500);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 10px;
  justify-items: center;
  gap: 8px;
  padding: 44px 16px;
  font: 700 13px / 1.4 Lato, sans-serif;
  display: grid;
}

@media (max-width: 1050px) {
  .coa-title-row {
    flex-direction: column;
    align-items: stretch;
  }

  .coa-entity-controls {
    margin-left: 0;
  }

  .coa-form-grid {
    grid-template-columns: repeat(2, minmax(150px, 1fr));
  }

  .coa-toolbar-actions {
    margin-left: 0;
  }
}

.md-muted {
  color: var(--navy-400);
  padding: 8px 2px;
  font-size: 13px;
}

.md-head {
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  border-radius: 12px;
  flex-wrap: wrap;
  align-items: center;
  gap: 22px;
  padding: 16px;
  display: flex;
}

.md-head-title h2 {
  margin: 6px 0 2px;
  font: 900 18px / 1.2 Lato, sans-serif;
}

.md-head-title small {
  color: var(--navy-400);
  font-size: 12px;
}

.md-head-figures {
  flex-wrap: wrap;
  gap: 24px;
  display: flex;
}

.md-figure {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.md-figure span {
  color: var(--navy-400);
  font-size: 11px;
}

.md-figure strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font: 700 15px / 1.2 Lato, sans-serif;
}

.md-figure.strong strong {
  color: var(--primary-700);
}

.md-subtabs {
  border-bottom: 1px solid var(--border);
  gap: 2px;
  display: flex;
}

.md-subtab {
  cursor: pointer;
  height: 38px;
  color: var(--navy-400);
  background: none;
  border: 0;
  border-bottom: 3px solid #0000;
  padding: 0 16px;
  font: 700 13px / 1 Lato, sans-serif;
}

.md-subtab:hover {
  color: var(--navy-600);
}

.md-subtab.active {
  color: var(--primary-600);
  border-bottom-color: var(--secondary-500);
}

.md-tab {
  flex-direction: column;
  gap: 14px;
  padding-top: 4px;
  display: flex;
}

.md-panel {
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  border-radius: 4px;
  padding: 14px 16px;
}

.md-panel h3 {
  color: var(--primary-500);
  align-items: center;
  gap: 14px;
  margin-bottom: 10px;
  font: 700 16px / 1.2 Lato, sans-serif;
  display: flex;
}

.md-panel h3:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  min-width: 24px;
  height: 1px;
}

.md-seam {
  border-style: dashed;
}

.md-facts {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px 20px;
  margin: 0;
  display: grid;
}

.md-fact {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.md-fact dt {
  color: var(--navy-400);
  font-size: 14px;
}

.md-fact dd {
  color: var(--navy-800);
  margin: 0;
  font: 700 14px / 1.3 Lato, sans-serif;
}

.md-fact-boxes {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 12px;
  margin: 12px 0;
  display: grid;
}

.md-fact-boxes--cols-2 {
  grid-template-columns: repeat(2, 1fr);
}

.md-fact-box {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  padding: 12px 14px;
}

.md-fact-box .md-facts {
  gap: 10px 16px;
}

.md-fact-box-title {
  color: var(--navy-400);
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
  font: 700 16px / 1.2 Lato, sans-serif;
  display: flex;
}

.md-fact-box-title:after {
  content: "";
  background: var(--navy-200);
  flex: 1;
  min-width: 16px;
  height: 1px;
}

.md-fact-box--positive {
  background: var(--success-100);
  border-color: var(--success-100);
}

.md-fact-box--warning {
  background: rgba(var(--warning-600-rgb), .14);
  border-color: rgba(var(--warning-600-rgb), .14);
}

.md-fact-box--highlight {
  background: var(--primary-050);
  border-color: var(--primary-100);
}

.md-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}

.md-table th {
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--navy-500);
  background: var(--navy-050);
  border-bottom: 1px solid var(--border);
  padding: 6px 10px;
  font: 900 11px / 1 Lato, sans-serif;
}

.md-table td {
  border-bottom: 1px solid var(--navy-100);
  padding: 8px 10px;
}

.md-table .right {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.md-head-title {
  align-items: center;
  gap: 12px;
  display: flex;
}

.md-overview-grid {
  grid-template-columns: 1.2fr 1fr;
  gap: 20px;
  display: grid;
}

.md-averages h4, .md-cards h3 {
  color: var(--navy-500);
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 8px;
  font: 900 12px / 1 Lato, sans-serif;
}

.md-cards {
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  display: grid;
}

.md-money-card h3 {
  color: var(--navy-700);
}

.md-money-rows {
  gap: 28px;
  display: flex;
}

.md-money-row {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.md-money-row span {
  color: var(--navy-400);
  font-size: 11px;
}

.md-money-row strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font: 700 16px / 1.2 Lato, sans-serif;
}

.md-index-cards {
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 12px;
  display: grid;
}

.md-index-card {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  padding: 10px 12px;
}

.md-index-card b {
  text-transform: uppercase;
  color: var(--navy-600);
  margin-bottom: 6px;
  font: 900 11px / 1 Lato, sans-serif;
  display: block;
}

.md-index-card .md-fact {
  margin-top: 4px;
}

.md-timeline {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.md-timeline-bar {
  background: var(--navy-050);
  border: 1px solid var(--navy-100);
  border-radius: 6px;
  height: 30px;
  position: relative;
}

.md-timeline-term {
  background: var(--secondary-050);
  border-radius: 6px;
  position: absolute;
  inset: 0;
}

.md-timeline-today {
  background: var(--primary-600);
  width: 2px;
  position: absolute;
  top: -3px;
  bottom: -3px;
}

.md-timeline-marker {
  background: var(--danger-500);
  width: 2px;
  position: absolute;
  top: -3px;
  bottom: -3px;
}

.md-timeline-legend {
  color: var(--navy-500);
  font-variant-numeric: tabular-nums;
  justify-content: space-between;
  font-size: 11px;
  display: flex;
}

@media (max-width: 900px) {
  .md-overview-grid, .md-cards, .md-index-cards {
    grid-template-columns: 1fr;
  }
}

.pdm-detail {
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  display: flex;
}

.pdm-detail--fill {
  height: 100%;
  min-height: 0;
}

.pdm-kpi-strip {
  background: var(--surface);
  height: 76px;
  box-shadow: var(--shadow);
  z-index: 90;
  flex-shrink: 0;
  align-items: center;
  gap: 12px;
  margin: -16px -16px 0;
  display: flex;
  position: relative;
}

.pdm-detail-body {
  flex-direction: column;
  flex: 1;
  gap: 14px;
  min-height: 0;
  padding-right: 12px;
  display: flex;
  overflow-y: auto;
}

.pdm-asset-card {
  border: 1px solid var(--border);
  background: var(--navy-050);
  border-radius: 12px;
  flex-shrink: 0;
  align-items: center;
  gap: 12px;
  margin-left: 16px;
  padding: 6px 16px 6px 6px;
  display: inline-flex;
}

.pdm-kpi-strip > .pdm-asset-card:not(:first-child) {
  margin-left: 0;
}

.pdm-asset-card--plain {
  padding: 10px 16px;
}

.pdm-asset-card-photo {
  object-fit: cover;
  border-radius: 8px;
  width: 48px;
  height: 48px;
}

.pdm-asset-card-photo.empty {
  background: var(--navy-100);
  color: var(--navy-300);
  place-items: center;
  display: grid;
}

.pdm-asset-card-copy {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.pdm-asset-card-copy strong {
  color: var(--navy-900);
  font: 900 16px / 1.2 Lato, sans-serif;
}

.pdm-asset-card-copy span {
  color: var(--navy-400);
  font: 600 12px / 1.3 Lato, sans-serif;
}

.pdm-kpi-cards {
  scrollbar-width: none;
  align-items: center;
  gap: 10px;
  min-width: 0;
  margin-right: 16px;
  display: flex;
  overflow-x: auto;
}

.pdm-kpi-cards::-webkit-scrollbar {
  display: none;
}

.pdm-kpi-card {
  border: 1px solid var(--border);
  background: var(--navy-050);
  border-radius: 12px;
  flex-direction: column;
  flex-shrink: 0;
  justify-content: center;
  gap: 3px;
  min-width: 96px;
  height: 58px;
  padding: 8px 16px;
  display: flex;
}

.pdm-kpi-card span {
  color: var(--navy-500);
  white-space: nowrap;
  font: 700 12px / 1.3 Lato, sans-serif;
}

.pdm-kpi-card strong {
  text-align: right;
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font: 900 18px / 1.2 Lato, sans-serif;
  display: block;
}

.pdm-kpi-card-button {
  cursor: pointer;
  text-align: left;
  font: inherit;
}

.pdm-kpi-card-button:hover {
  background: var(--primary-t08);
  border-color: var(--primary-200);
}

.pdm-kpi-card.danger {
  border-color: var(--danger-500);
  background: var(--danger-100);
}

.pdm-kpi-card.danger strong {
  color: var(--danger-600);
}

.pdm-kpi-card--stacked {
  height: auto;
  min-height: 82px;
  padding: 10px 16px;
}

.pdm-kpi-card small {
  text-align: right;
  color: var(--navy-500);
  white-space: nowrap;
  font: 700 11px / 1.2 Lato, sans-serif;
  display: block;
}

.pdm-skeleton-block, .pdm-skeleton-line {
  background: var(--navy-100);
  border-radius: 4px;
  animation: 1.4s ease-in-out infinite pdm-skeleton-pulse;
}

.pdm-skeleton-line--title {
  width: 140px;
  height: 14px;
}

.pdm-skeleton-line--subtitle {
  width: 96px;
  height: 11px;
  margin-top: 6px;
}

@keyframes pdm-skeleton-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .45;
  }
}

.pdm-head-right {
  flex-shrink: 0;
  align-items: center;
  gap: 20px;
  margin-left: auto;
  padding: 0 18px;
  display: flex;
}

.chip.pdm-standard {
  color: var(--warning-text);
  background: var(--warning-100);
  align-self: flex-start;
  margin-left: auto;
}

.pdm-panel-head {
  align-items: center;
  margin-bottom: 10px;
  display: flex;
}

.pdm-panel-head > :first-child {
  flex-shrink: 0;
  order: 0;
  margin-right: 14px;
}

.pdm-panel-head:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  order: 1;
  min-width: 24px;
  height: 1px;
}

.pdm-panel-head > :not(:first-child) {
  flex-shrink: 0;
  order: 2;
}

.pdm-panel-head h3 {
  margin: 0;
  display: block;
}

.pdm-panel-head h3:after {
  content: none;
}

.pdm-table-panel > h3 {
  margin: 0;
}

.pdm-panel-head span {
  color: var(--navy-400);
  font-size: 11.5px;
  font-weight: 700;
}

.pdm-panel-disclosure {
  background: var(--navy-100);
  width: 28px;
  height: 28px;
  color: var(--navy-600);
  cursor: pointer;
  border: 0;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  transition: background .12s;
  display: inline-flex;
}

.pdm-panel-disclosure:hover {
  background: var(--navy-150);
}

.pdm-panel-disclosure svg {
  transition: transform .15s;
}

.pdm-panel-disclosure[aria-expanded="false"] svg {
  transform: rotate(-90deg);
}

.pdm-table-panel {
  padding: 0;
  overflow: hidden;
}

.pdm-table-panel > h3 {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
  text-transform: uppercase;
  letter-spacing: .04em;
  padding: 12px 16px;
}

.pdm-table-panel > .pdm-panel-head {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
  margin: 0;
  padding: 12px 16px;
}

.pdm-table-scroll {
  width: 100%;
  overflow-x: auto;
}

.pdm-units-table, .pdm-defaults-table, .pdm-rules-table, .pdm-tax-table {
  min-width: 850px;
}

.pdm-units-table th, .pdm-units-table td, .pdm-defaults-table th, .pdm-defaults-table td, .pdm-rules-table th, .pdm-rules-table td, .pdm-tax-table th, .pdm-tax-table td {
  white-space: nowrap;
  padding: 9px 12px;
}

.pdm-table-scroll tbody tr:hover td {
  background: var(--navy-050);
}

.pdm-empty {
  color: var(--navy-400);
  text-align: center;
  padding: 28px !important;
}

.pdm-list-empty-action {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.tg-table tbody tr.selected > td {
  background: var(--primary-050);
}

.pdm-mono {
  font-family: ui-monospace, Cascadia Mono, Consolas, monospace !important;
}

.pdm-inheritance {
  border: 1px solid var(--primary-200);
  color: var(--navy-700);
  background: var(--primary-t08);
  border-radius: 10px;
  align-items: flex-start;
  gap: 10px;
  padding: 13px 15px;
  font-size: 12.5px;
  line-height: 1.5;
  display: flex;
}

.pdm-inheritance > svg {
  color: var(--primary-600);
  flex: none;
  margin-top: 1px;
}

.pdm-inheritance p {
  color: var(--navy-500);
  margin: 2px 0 0;
}

.pdm-symbol {
  border-radius: var(--pill);
  color: var(--primary-700);
  background: var(--primary-050);
  padding: 3px 8px;
  font: 700 10.5px / 1.3 ui-monospace, Cascadia Mono, Consolas, monospace;
  display: inline-block;
}

.pdm-filter {
  border: 1px solid var(--navy-200);
  background: var(--navy-050);
  width: min(340px, 100% - 30px);
  height: 34px;
  color: var(--navy-400);
  border-radius: 8px;
  align-items: center;
  gap: 7px;
  margin: 10px 15px;
  padding: 0 10px;
  display: flex;
}

.pdm-filter input {
  width: 100%;
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: 0;
  font: 400 13px / 1 Lato, sans-serif;
}

.pdm-rules-head {
  align-items: center;
}

.pdm-account-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.pdm-toggle {
  color: var(--navy-600);
  white-space: nowrap;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
}

.pdm-deviation-form {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 10px;
  padding: 14px 16px;
  display: grid;
}

.pdm-deviation-form label {
  color: var(--navy-600);
  flex-direction: column;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.pdm-deviation-form input, .pdm-deviation-form select {
  border: 1px solid var(--navy-200);
  background: var(--surface);
  width: 100%;
  min-height: 35px;
  color: var(--navy-800);
  border-radius: 4px;
  padding: 6px 9px;
}

.pdm-deviation-submit {
  grid-column: 1 / -1;
  align-items: flex-end;
  gap: 7px;
  display: flex;
}

.pdm-deviation-form > .md-message {
  grid-column: 1 / -1;
  margin: 0;
}

.pdm-standard-setup {
  border-color: var(--primary-200);
  background: linear-gradient(90deg, var(--primary-050), var(--surface));
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 12px 22px;
  display: grid;
}

.pdm-standard-setup-copy {
  min-width: 0;
}

.pdm-standard-setup-copy h3 {
  color: var(--navy-800);
  margin: 3px 0 5px;
  font: 900 16px / 1.2 Lato, sans-serif;
}

.pdm-standard-setup-copy p {
  max-width: 760px;
  color: var(--navy-500);
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
}

.pdm-setup-kicker {
  color: var(--primary-600);
  letter-spacing: .05em;
  text-transform: uppercase;
  font: 900 10px / 1 Lato, sans-serif;
}

.pdm-standard-setup-form {
  justify-content: flex-end;
  align-items: flex-end;
  gap: 8px;
  display: flex;
}

.pdm-standard-setup-form label, .pdm-setup-form label, .pdm-key-values-toolbar label {
  color: var(--navy-600);
  flex-direction: column;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.pdm-standard-setup-form input, .pdm-setup-form input, .pdm-setup-form select, .pdm-key-values-toolbar input, .pdm-key-values-table input {
  border: 1px solid var(--navy-200);
  min-height: 35px;
  color: var(--navy-800);
  background: var(--surface);
  border-radius: 4px;
  padding: 6px 9px;
  font: 400 13px / 1 Lato, sans-serif;
}

.pdm-standard-setup > .md-message {
  grid-column: 1 / -1;
  margin: 0;
}

.pdm-standard-setup .md-message.ok, .pdm-setup-message.ok {
  color: var(--success-600);
  background: var(--success-100);
}

.pdm-account-console {
  grid-template-columns: minmax(0, 1fr) 290px;
  align-items: start;
  gap: 14px;
  display: grid;
}

.pdm-account-console > [data-testid="pdm-account-readiness"] {
  position: sticky;
  top: 76px;
}

.pdm-setup-builder {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
}

.pdm-setup-steps {
  color: var(--navy-400);
  align-items: center;
  gap: 10px;
  padding: 12px 16px 0;
  font-size: 11.5px;
  font-weight: 700;
  display: flex;
}

.pdm-setup-steps span {
  align-items: center;
  gap: 7px;
  display: inline-flex;
}

.pdm-setup-steps span b {
  border-radius: var(--pill);
  width: 23px;
  height: 23px;
  color: var(--navy-500);
  background: var(--navy-150);
  place-items: center;
  font-size: 11px;
  display: inline-grid;
}

.pdm-setup-steps span.active {
  color: var(--navy-800);
}

.pdm-setup-steps span.active b {
  color: var(--surface);
  background: var(--primary-500);
}

.pdm-setup-steps i {
  color: var(--navy-300);
  font-style: normal;
}

.pdm-setup-form {
  grid-template-columns: repeat(3, minmax(145px, 1fr));
  gap: 10px;
  padding: 13px 16px 15px;
  display: grid;
}

.pdm-setup-form input, .pdm-setup-form select {
  width: 100%;
}

.pdm-setup-submit {
  grid-column: 1 / -1;
  align-items: center;
  gap: 7px;
  display: flex;
}

.pdm-setup-message {
  margin: 12px 16px;
}

.pdm-key-values-toolbar {
  align-items: flex-end;
  gap: 12px;
  padding: 13px 16px;
  display: flex;
}

.pdm-key-values-toolbar > div:first-child {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  margin-right: auto;
  display: flex;
}

.pdm-key-values-toolbar > div:first-child b {
  color: var(--navy-800);
  font-size: 12.5px;
}

.pdm-key-values-toolbar > div:first-child small {
  color: var(--navy-400);
  font-size: 11px;
}

.pdm-key-values-table {
  min-width: 600px;
}

.pdm-key-values-table input {
  text-align: right;
  font-variant-numeric: tabular-nums;
  width: 130px;
}

.pdm-key-values-submit {
  padding: 12px 16px 15px;
}

.pdm-circle-builder {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
  grid-template-columns: minmax(0, 1.2fr) minmax(240px, .8fr);
  gap: 12px;
  padding: 0 16px 15px;
  display: grid;
}

.pdm-circle-builder > .pdm-setup-form {
  grid-template-columns: 1fr;
  align-content: start;
  padding: 13px 0 0;
}

.pdm-circle-builder > .pdm-setup-submit {
  align-self: end;
}

.pdm-member-picker {
  border: 1px solid var(--navy-150);
  background: var(--surface);
  border-radius: 8px;
  min-width: 0;
  margin: 13px 0 0;
  padding: 10px 12px;
}

.pdm-member-picker legend {
  color: var(--navy-600);
  align-items: center;
  gap: 5px;
  padding: 0 4px;
  font-size: 11px;
  font-weight: 900;
  display: flex;
}

.pdm-member-picker > label {
  color: var(--navy-700);
  cursor: pointer;
  align-items: flex-start;
  gap: 8px;
  padding: 6px 2px;
  font-size: 12px;
  display: flex;
}

.pdm-member-picker > label + label {
  border-top: 1px solid var(--navy-100);
}

.pdm-member-picker input {
  min-height: 0;
  margin-top: 2px;
}

.pdm-member-picker span {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.pdm-member-picker small {
  color: var(--navy-400);
  font-size: 10.5px;
}

.pdm-pager {
  border-top: 1px solid var(--border);
  color: var(--navy-400);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 9px 15px;
  font-size: 11.5px;
  display: flex;
}

.pdm-cross-property-hint {
  color: var(--navy-400);
  margin: 0;
  padding: 10px 16px 14px;
  font-size: 11.5px;
  line-height: 1.5;
}

.pdm-pager > div {
  gap: 6px;
  display: flex;
}

.pdm-filters-slot {
  flex: 1;
  align-self: flex-start;
  min-width: 0;
}

.pdm-filters-row {
  display: contents;
}

.pdm-toolbar-btn {
  align-self: flex-start;
}

.pdm-asset-cell {
  align-items: center;
  gap: 10px;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.pdm-asset-photo {
  border: 1px solid var(--navy-150);
  object-fit: cover;
  background: var(--navy-050);
  border-radius: 6px;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
}

.pdm-asset-photo.empty {
  color: var(--navy-300);
  place-items: center;
  display: grid;
}

.pdm-asset-text {
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.pdm-asset-name {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  color: var(--navy-800);
  font: 700 13px / 14px Lato, sans-serif;
  overflow: hidden;
}

.pdm-asset-id {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  color: var(--navy-400);
  font: 400 11px / 13px Lato, sans-serif;
  overflow: hidden;
}

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

.center-modal-backdrop {
  z-index: 1100;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  background: #08142d85;
  place-items: center;
  padding: 20px;
  display: grid;
  position: fixed;
  inset: 0;
}

.center-modal-shell {
  position: relative;
}

.center-modal {
  border: 1px solid var(--navy-150);
  background: var(--bg);
  border-radius: 8px;
  outline: none;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(560px, 100vw - 32px);
  max-height: 90vh;
  display: grid;
  overflow: hidden;
  box-shadow: 0 24px 70px #07153052;
}

.center-modal.center-modal--wide {
  width: min(880px, 100vw - 32px);
}

.center-modal.center-modal--xwide {
  width: min(1120px, 100vw - 32px);
  max-height: 94vh;
}

.center-modal.center-modal--xwide .center-modal-body {
  flex-direction: column;
  min-height: min(560px, 70vh);
  display: flex;
}

.center-modal-head {
  border-bottom: 1px solid var(--border);
  background: #fff;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 16px 19px;
  display: flex;
}

.center-modal-head span {
  color: var(--navy-400);
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: 4px;
  font: 700 10.5px / 1 Lato, sans-serif;
  display: block;
}

.center-modal-head h2 {
  color: var(--navy-800);
  font: 900 19px / 1.2 Lato, sans-serif;
}

.center-modal-head--accent {
  gap: 0;
}

.center-modal-head--accent > div:first-child {
  flex: 1;
  min-width: 0;
}

.center-modal-head--accent h2 {
  color: var(--primary-500);
  align-items: center;
  gap: 14px;
  font: 700 16px / 1.2 Lato, sans-serif;
  display: flex;
}

.center-modal-head--accent h2:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  min-width: 24px;
  height: 1px;
}

.center-modal-head-actions {
  flex: none;
  align-items: center;
  gap: 8px;
  display: flex;
}

.center-modal-close {
  border: 1px solid var(--navy-200);
  width: 34px;
  height: 34px;
  color: var(--navy-500);
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  flex: none;
  place-items: center;
  display: grid;
}

.center-modal-close:hover {
  border-color: var(--primary-600);
  color: var(--primary-600);
}

.center-modal-close--corner {
  width: 32px;
  height: 32px;
  color: var(--danger-500);
  background: var(--navy-100);
  border: none;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(40%, -40%);
  box-shadow: 0 4px 14px #07153038;
}

.center-modal-close--corner:hover {
  color: var(--danger-600);
  background: var(--danger-100);
}

.center-modal-body {
  overscroll-behavior: contain;
  min-height: 0;
  padding: 16px 18px 24px;
  overflow-y: auto;
}

.center-modal-foot {
  border-top: 1px solid var(--border);
  background: #fff;
  justify-content: flex-end;
  gap: 8px;
  padding: 12px 18px;
  display: flex;
  position: sticky;
  bottom: 0;
}

.pdm-modal-form {
  flex-direction: column;
  gap: 13px;
  display: flex;
}

.pdm-form-panel {
  padding: 16px;
}

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

.pdm-field {
  min-width: 0;
  color: var(--navy-500);
  flex-direction: column;
  gap: 5px;
  font: 700 11px / 1.2 Lato, sans-serif;
  display: flex;
}

.pdm-field.wide {
  grid-column: 1 / -1;
}

.pdm-field > span b {
  color: var(--danger-600);
}

.pdm-field-label-row > span > b {
  color: var(--danger-500);
}

.pdm-field input, .pdm-field select {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 37px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: none;
  padding: 7px 10px;
  font: 500 13px / 1.2 Lato, sans-serif;
}

.pdm-field input:focus, .pdm-field select:focus {
  border-color: var(--primary-600);
  box-shadow: 0 0 0 3px var(--primary-t08);
}

.pdm-field input.pdm-readonly {
  color: var(--navy-400);
  background: var(--navy-050);
  cursor: not-allowed;
}

.pdm-field small {
  color: var(--navy-400);
  font-size: 10.5px;
  font-weight: 500;
}

.pdm-field.invalid input, .pdm-field.invalid select {
  border-color: var(--danger-600);
}

.pdm-field small.pdm-field-error {
  color: var(--danger-600);
  font-weight: 700;
}

.pdm-field-label-row {
  color: var(--navy-800);
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 700;
  display: flex;
}

.pdm-field-help {
  display: inline-flex;
  position: relative;
}

.pdm-field-help-icon {
  cursor: help;
  background: none;
  border: 0;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: flex;
}

.pdm-field-help-tip {
  z-index: 20;
  background: var(--navy-800);
  color: #fff;
  min-width: 160px;
  max-width: 240px;
  box-shadow: var(--shadow);
  opacity: 0;
  pointer-events: none;
  border-radius: 6px;
  padding: 8px 10px;
  font: 500 11.5px / 1.4 Lato, sans-serif;
  transition: opacity .12s, transform .12s;
  position: absolute;
  top: 24px;
  right: 0;
  transform: translateY(-4px);
}

.pdm-field-help:hover .pdm-field-help-tip, .pdm-field-help:focus-within .pdm-field-help-tip {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.pdm-photo-picker {
  border: 1px dashed var(--navy-200);
  min-height: 118px;
  color: var(--primary-600);
  background: var(--navy-050);
  cursor: pointer;
  border-radius: 9px;
  place-items: center;
  display: grid;
  position: relative;
  overflow: hidden;
}

.pdm-photo-picker:hover {
  border-color: var(--primary-600);
  background: var(--primary-050);
}

.pdm-photo-picker > span {
  align-items: center;
  gap: 7px;
  font-weight: 700;
  display: flex;
}

.pdm-photo-picker img {
  object-fit: cover;
  width: 100%;
  height: 150px;
}

.pdm-photo-picker input {
  opacity: 0;
  width: 1px;
  height: 1px;
  position: absolute;
}

.pdm-edit-photo img {
  height: 180px;
}

.pdm-advanced {
  padding: 0;
  overflow: hidden;
}

.pdm-advanced summary {
  color: var(--navy-700);
  background: var(--navy-050);
  cursor: pointer;
  padding: 14px 16px;
  font: 900 12px / 1 Lato, sans-serif;
}

.pdm-advanced > p {
  color: var(--navy-400);
  margin: 13px 16px 0;
  font-size: 11.5px;
}

.pdm-advanced > .pdm-form-grid {
  padding: 15px 16px 17px;
}

.pdm-advanced-helper {
  color: var(--navy-400);
  margin: 0 0 13px;
  font-size: 11.5px;
}

.pdm-check {
  border: 1px solid var(--navy-150);
  min-height: 37px;
  color: var(--navy-600);
  background: #fff;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.pdm-check input {
  width: 16px;
  height: 16px;
  accent-color: var(--primary-600);
}

.ecp-page {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  min-height: 0;
  display: flex;
  overflow: hidden;
}

.ecp-shell {
  flex: 1;
  min-width: 0;
  min-height: 0;
  display: flex;
  overflow: hidden;
}

.ecp-rail {
  border-right: 1px solid var(--border);
  background: var(--surface);
  flex-direction: column;
  flex: 0 0 300px;
  width: 300px;
  padding: 22px 0 24px;
  display: flex;
  overflow-y: auto;
  box-shadow: 2px 0 8px #002fb02e;
}

.ecp-rail-head {
  flex-direction: column;
  gap: 12px;
  margin-bottom: 20px;
  padding: 0 14px;
  display: flex;
}

.ecp-back {
  background: var(--secondary-500);
  color: #fff;
  cursor: pointer;
  border: 0;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  transition: background .12s;
  display: flex;
}

.ecp-back:hover {
  background: var(--secondary-600);
}

.ecp-heading {
  color: var(--navy-heading);
  text-transform: uppercase;
  letter-spacing: .01em;
  font: 700 18px / 24px Lato, sans-serif;
}

.ecp-sub {
  color: var(--navy-400);
  margin-top: -6px;
  font: 700 13px / 1.3 Lato, sans-serif;
}

.ecp-steps {
  border-top: 1px solid var(--border);
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.ecp-step {
  border-bottom: 1px solid var(--border);
}

.ecp-step-btn {
  width: 100%;
  height: 56px;
  color: var(--navy-700);
  text-align: left;
  cursor: default;
  background: none;
  border: 0;
  align-items: center;
  gap: 12px;
  padding: 15px 14px;
  font: 700 14px / 1.3 Lato, sans-serif;
  display: flex;
}

button.ecp-step-btn {
  cursor: pointer;
}

button.ecp-step-btn:hover {
  background: var(--navy-050);
}

.ecp-step.active .ecp-step-btn {
  background: var(--primary-t16);
  color: var(--primary-500);
}

.ecp-step-icon {
  flex-shrink: 0;
}

.ecp-step-icon--complete {
  color: var(--success-500);
}

.ecp-step-icon--incomplete {
  color: var(--warning-600);
}

.ecp-step-icon--pending {
  border: 2px solid var(--navy-200);
  border-radius: 50%;
  width: 12px;
  height: 12px;
  margin: 0 4px;
  display: inline-block;
}

.ecp-step-label {
  flex: 1;
  min-width: 0;
}

.ecp-step-chevron {
  width: 26px;
  height: 26px;
  color: var(--navy-800);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.ecp-main {
  background: var(--bg);
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.ecp-body {
  flex: 1;
  min-height: 0;
  padding: 24px 16px;
  overflow-y: auto;
}

.ecp-card {
  flex-direction: column;
  gap: 13px;
  max-width: 560px;
  margin: 0 auto;
  display: flex;
}

.ecp-card .pdm-form-panel, .ecp-card .pdm-photo-picker {
  border-radius: 4px;
}

.ecp-card .pdm-form-grid {
  gap: 16px;
}

.mia-index-create-page .ecp-card {
  max-width: 760px;
}

.mia-rent-reference-create-page .ecp-card {
  max-width: 1200px;
}

.lease-position-create-page .ecp-card {
  max-width: 900px;
}

.lease-create-context-line {
  color: var(--navy-400);
  margin-bottom: -3px;
  font: 700 13px / 1.3 Lato, sans-serif;
}

.ecp-footer {
  border-top: 1px solid var(--border);
  background: #fff;
  flex-shrink: 0;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 24px;
  display: flex;
}

.ecp-footer .btn {
  min-height: 36px;
}

@media (max-width: 900px) {
  .ecp-rail {
    flex-basis: 220px;
    width: 220px;
  }
}

.pdm-edit-group {
  padding: 16px;
}

.pdm-edit-group-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 14px;
  display: flex;
}

.pdm-edit-group-head h3 {
  margin: 0 0 4px;
}

.pdm-edit-group-head p {
  color: var(--navy-400);
  margin: 0;
  font-size: 11.5px;
  line-height: 1.45;
}

.pdm-effective-row {
  border: 1px solid var(--primary-200);
  background: var(--primary-t08);
  border-radius: 9px;
  grid-template-columns: minmax(180px, .8fr) 1.4fr;
  gap: 14px;
  margin-top: 14px;
  padding: 13px;
  display: grid;
}

.pdm-window-preview {
  color: var(--navy-400);
  grid-template-columns: auto 1fr;
  align-content: center;
  gap: 5px 12px;
  font-size: 10.5px;
  display: grid;
}

.pdm-window-preview b {
  color: var(--navy-700);
  font: 700 12px / 1.2 ui-monospace, Cascadia Mono, Consolas, monospace;
}

.pdm-locked-group {
  border-style: dashed;
  padding: 16px;
}

.pdm-locked-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  display: grid;
}

.pdm-locked-field {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 4px;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  padding: 9px 10px;
  display: flex;
}

.pdm-locked-field > span {
  color: var(--navy-400);
  font-size: 10.5px;
}

.pdm-locked-field > b {
  color: var(--navy-600);
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 700 12.5px / 1.3 ui-monospace, Cascadia Mono, Consolas, monospace;
  overflow: hidden;
}

.pdm-locked-field > small {
  color: var(--navy-400);
  align-items: center;
  gap: 4px;
  font-size: 9.5px;
  line-height: 1.35;
  display: flex;
}

.lease-tab {
  gap: 14px;
  display: grid;
}

.md-screen.lease-tab.md-screen--fill {
  flex-direction: column;
  height: 100%;
  min-height: 0;
  display: flex;
}

.lease-tab-rollup {
  flex-wrap: wrap;
  align-items: stretch;
  gap: 10px;
  display: flex;
}

.lease-tab-rollup > .btn:first-of-type {
  margin-left: auto;
}

.lease-list-row {
  cursor: pointer;
}

.lease-list-row:hover {
  background: var(--primary-t08);
}

.lease-list-row td small {
  max-width: 190px;
  color: var(--navy-400);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
  display: block;
  overflow: hidden;
}

.lease-incomplete-chip {
  margin-left: 7px;
  font-size: 9px;
  display: inline-flex;
}

.lease-units-cell {
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.lease-units-cell b {
  color: var(--navy-800);
  font: 700 13px / 14px Lato, sans-serif;
}

.lease-units-cell small {
  min-width: 0;
  color: var(--navy-400);
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 400 11px / 13px Lato, sans-serif;
  overflow: hidden;
}

.lease-stepper {
  align-items: center;
  gap: 12px;
  display: flex;
}

.lease-stepper > span {
  color: var(--navy-300);
  align-items: center;
  gap: 5px;
  font-size: 10px;
  display: flex;
}

.lease-stepper > span b {
  text-transform: none;
  letter-spacing: 0;
  margin: 0;
  font-size: 10px;
}

.lease-stepper > span.active {
  color: var(--primary-700);
}

.lease-stepper > span.done {
  color: var(--success-600);
}

.lease-wizard {
  gap: 12px;
}

.lease-regime-picker {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
  margin-bottom: 16px;
  display: grid;
}

.lease-regime-picker button {
  border: 1px solid var(--navy-200);
  min-height: 42px;
  color: var(--navy-600);
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  padding: 8px;
  font-weight: 700;
}

.lease-regime-picker button.active {
  border-color: var(--primary-600);
  color: var(--primary-700);
  background: var(--primary-t08);
  box-shadow: inset 0 0 0 1px var(--primary-400);
}

.tenant-picker {
  position: relative;
}

.tenant-picker-input {
  border: 1px solid var(--navy-200);
  background: #fff;
  border-radius: 4px;
  align-items: center;
  gap: 7px;
  padding: 6px 10px;
  display: flex;
}

.tenant-picker-input:focus-within {
  border-color: var(--primary-600);
  box-shadow: 0 0 0 3px var(--primary-t08);
}

.tenant-picker-input input {
  border: 0;
  outline: 0;
  flex: 1;
  min-height: 28px;
}

.tenant-picker.invalid .tenant-picker-input {
  border-color: var(--danger-600);
}

.tenant-picker-menu {
  z-index: 10;
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 9px;
  max-height: 230px;
  padding: 5px;
  position: absolute;
  top: calc(100% + 5px);
  left: 0;
  right: 0;
  overflow-y: auto;
  box-shadow: 0 14px 35px #07153029;
}

.tenant-picker-menu button {
  width: 100%;
  color: var(--navy-700);
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 6px;
  gap: 2px;
  padding: 8px 10px;
  display: grid;
}

.tenant-picker-menu button:hover {
  background: var(--primary-t08);
}

.tenant-picker-menu small {
  color: var(--navy-400);
}

.tenant-picker-create {
  font-weight: 700;
  color: var(--primary-700) !important;
}

.tenant-inline-create {
  border: 1px solid var(--primary-200);
  background: var(--primary-t08);
  border-radius: 9px;
  gap: 10px;
  margin-top: 10px;
  padding: 13px;
  display: grid;
}

.tenant-inline-actions {
  justify-content: flex-end;
  gap: 7px;
  display: flex;
}

.lease-debtor-card {
  border: 1px solid var(--navy-150);
  color: var(--navy-600);
  background: var(--navy-050);
  border-radius: 9px;
  align-items: center;
  gap: 12px;
  padding: 11px 13px;
  display: flex;
}

.lease-debtor-card > svg {
  color: var(--primary-600);
  flex: none;
}

.lease-debtor-card b, .lease-debtor-card small {
  display: block;
}

.lease-debtor-card small {
  color: var(--navy-400);
  margin-top: 3px;
}

.lease-debtor-card.concrete {
  border-color: var(--success-500);
  background: var(--success-100);
}

.lease-disabled-radio {
  opacity: .62;
  margin-left: auto;
}

.lease-wizard-step3 {
  gap: 12px;
  display: grid;
}

.lease-summary-card {
  padding: 16px;
}

.lease-deposit-fields {
  margin-top: 12px;
}

.money-input {
  align-items: center;
  display: flex;
  position: relative;
}

.money-input input {
  padding-right: 28px;
}

.money-input span {
  color: var(--navy-400);
  pointer-events: none;
  position: absolute;
  right: 10px;
}

.lease-positions-editor {
  gap: 12px;
  display: grid;
}

.lease-position-rollup {
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 9px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 11px 13px;
  display: flex;
}

.lease-position-row td {
  vertical-align: top;
}

.lease-position-view {
  flex-direction: column;
  flex: 1;
  gap: 14px;
  min-height: 0;
  display: flex;
}

.lease-charge-lines {
  gap: 5px;
  min-width: 230px;
  display: grid;
}

.lease-charge-lines > div:not(.lease-position-actions) {
  border-left: 2px solid var(--navy-200);
  background: #fff;
  grid-template-columns: minmax(150px, 1.3fr) minmax(105px, .8fr) minmax(90px, .7fr) minmax(190px, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
  display: grid;
}

.lease-charge-lines > div.active {
  border-left-color: var(--primary-500);
  background: var(--primary-050);
}

.lease-charge-label {
  overflow-wrap: break-word;
  word-break: break-word;
  min-width: 0;
}

.charge-amount-primary {
  gap: 2px;
  font-weight: 700;
  display: grid;
}

.charge-amount-primary small {
  color: var(--navy-400);
  font-size: 10px;
  font-weight: 600;
}

.lease-position-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-bottom: 5px;
  display: flex;
}

.lease-position-actions > small {
  color: var(--navy-400);
}

.rent-change-preview {
  border: 1px solid var(--primary-200);
  background: var(--primary-050);
  border-radius: 8px;
  gap: 5px;
  padding: 11px 12px;
  display: grid;
}

.lease-position-draft {
  padding: 15px;
}

.lease-position-draft > h3 {
  margin: 0 0 13px;
}

.lease-charge-drafts {
  gap: 8px;
  margin-top: 12px;
  display: grid;
}

.lease-charge-drafts > .pdm-panel-head {
  margin-bottom: 0;
}

.lease-charge-draft {
  border: 1px solid var(--navy-150);
  background: var(--navy-050);
  border-radius: 8px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  gap: 10px 14px;
  padding: 14px 16px;
  display: grid;
}

.lease-charge-draft-head {
  grid-column: 1 / -1;
  align-items: center;
  display: flex;
}

.lease-charge-draft-head > :first-child {
  flex-shrink: 0;
  order: 0;
  margin-right: 14px;
}

.lease-charge-draft-head:after {
  content: "";
  background: var(--navy-200);
  flex: 1;
  order: 1;
  min-width: 16px;
  height: 1px;
}

.lease-charge-draft-head > :not(:first-child) {
  flex-shrink: 0;
  order: 2;
}

.lease-charge-draft-index {
  color: var(--navy-400);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.lease-charge-draft > .charge-basis-fields {
  grid-column: 1 / 5;
}

.charge-basis-fields {
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  align-items: end;
  gap: 8px;
  display: grid;
}

.charge-basis-fields > .basis-toggle {
  grid-column: 1 / -1;
}

.basis-toggle {
  border: 1px solid var(--navy-150);
  background: var(--navy-100);
  border-radius: 8px;
  grid-template-columns: repeat(3, minmax(78px, 1fr));
  gap: 3px;
  padding: 3px;
  display: inline-grid;
}

.basis-toggle button {
  min-height: 30px;
  color: var(--navy-500);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 5px;
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 700;
}

.basis-toggle button.active {
  color: var(--primary-700);
  background: #fff;
  box-shadow: 0 1px 4px #0715301f;
}

.basis-toggle button:disabled {
  cursor: not-allowed;
  opacity: .48;
}

.basis-implied {
  color: var(--navy-400);
  font-size: 10px;
}

.lease-position-draft-actions {
  justify-content: space-between;
  gap: 10px;
  margin-top: 13px;
  display: flex;
}

.lease-occupied-warning {
  margin: 10px 0 0;
}

.lease-empty-position {
  color: var(--navy-400);
  text-align: center;
  padding: 22px;
}

.lease-incomplete-banner {
  align-items: center;
  gap: 10px;
  display: flex;
}

.lease-incomplete-banner .btn {
  margin-left: auto;
}

.lease-managed-panel {
  padding: 16px;
  position: relative;
}

.lease-managed-panel > .pdm-panel-head {
  margin-bottom: 14px;
}

.lease-managed-panel .pdm-panel-actions {
  position: relative;
}

.lease-two-column {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  display: grid;
}

.lease-follow-seam {
  border: 1px dashed var(--navy-200);
  color: var(--navy-400);
  background: var(--navy-050);
  border-radius: 7px;
  align-items: center;
  gap: 6px;
  margin-top: 11px;
  padding: 9px 10px;
  font-size: 11px;
  display: flex;
}

.lease-lock-hint {
  color: var(--navy-400);
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  font-size: 10px;
  display: flex;
}

.lease-machine-fact dd {
  color: var(--navy-500);
}

@media (max-width: 760px) {
  .pdm-head-right {
    flex-wrap: wrap;
  }

  .pdm-kpi-card {
    flex: 135px;
  }

  .pdm-pager {
    flex-direction: column;
    align-items: flex-start;
  }

  .chip.pdm-standard {
    margin-left: 0;
  }

  .pdm-deviation-form, .pdm-standard-setup {
    grid-template-columns: 1fr;
  }

  .pdm-standard-setup-form {
    flex-direction: column;
    align-items: stretch;
  }

  .pdm-standard-setup-form .btn {
    justify-content: center;
  }

  .pdm-account-console {
    grid-template-columns: 1fr;
  }

  .pdm-account-console > [data-testid="pdm-account-readiness"] {
    position: static;
  }

  .pdm-setup-form {
    grid-template-columns: 1fr;
  }

  .pdm-key-values-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .pdm-key-values-toolbar > div:first-child {
    margin-right: 0;
  }

  .pdm-circle-builder {
    grid-template-columns: 1fr;
  }

  .pdm-panel-actions {
    justify-content: flex-start;
    width: 100%;
  }

  .pdm-form-grid, .pdm-locked-grid, .pdm-effective-row {
    grid-template-columns: 1fr;
  }

  .pdm-field.wide {
    grid-column: auto;
  }

  .center-modal-backdrop {
    padding: 8px;
  }

  .center-modal {
    width: 100%;
    max-height: 96vh;
  }

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

  .lease-charge-draft {
    grid-template-columns: 1fr 1fr;
  }

  .lease-charge-draft > .charge-basis-fields {
    grid-column: 1 / -1;
  }

  .charge-basis-fields {
    grid-template-columns: 1fr;
  }

  .charge-basis-fields > .basis-toggle {
    grid-column: auto;
  }

  .lease-charge-lines > div:not(.lease-position-actions) {
    grid-template-columns: 1fr 1fr;
  }

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

  .lease-tab-rollup > .btn:first-of-type {
    margin-left: 0;
  }
}

.cp {
  flex-direction: column;
  gap: 14px;
  padding-top: 4px;
  display: flex;
}

.lease-pending-rent-kpi {
  border-color: var(--warning-500);
  background: var(--warning-100);
  width: 240px;
}

.lease-pending-rent-kpi strong {
  color: var(--warning-text);
}

.lease-pending-rent-kpi.transferred {
  border-color: var(--success-500);
  background: var(--success-100);
}

.lease-pending-rent-kpi.transferred strong {
  color: var(--success-600);
}

.cp-inflight {
  border-color: var(--warning-500);
  background: color-mix(in srgb, var(--warning-100) 48%, #fff);
}

.cp-inflight-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.cp-inflight-head > div {
  min-width: 0;
}

.cp-inflight-head > div > span {
  color: var(--warning-text);
  letter-spacing: .05em;
  text-transform: uppercase;
  margin-bottom: 5px;
  font: 900 10px / 1 Lato, sans-serif;
  display: block;
}

.cp-inflight-head h3 {
  overflow-wrap: anywhere;
}

.cp-inflight-summary {
  color: var(--navy-600);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 10px;
  font-size: 12px;
  display: flex;
}

.cp-inflight-summary strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
}

.cp-inflight-lines {
  gap: 6px;
  margin-top: 10px;
  display: grid;
}

.cp-inflight-lines > div {
  border: 1px solid var(--warning-500);
  font-variant-numeric: tabular-nums;
  background: #fff;
  border-radius: 8px;
  grid-template-columns: minmax(160px, 1fr) minmax(210px, auto) auto;
  align-items: center;
  gap: 14px;
  padding: 8px 10px;
  font-size: 12px;
  display: grid;
}

.cp-history-pending td {
  background: var(--warning-100);
}

.cp-run-ref {
  overflow-wrap: anywhere;
  max-width: 240px;
  color: var(--navy-500);
  font: 700 11px / 1.35 Lato, sans-serif;
  display: block;
}

.cp-history-lineage-row td {
  background: var(--navy-050);
  padding: 0 10px 12px;
}

.cp-condition-lineages {
  gap: 8px;
  padding-top: 10px;
  display: grid;
}

.cp-condition-lineage {
  grid-template-columns: minmax(220px, 1fr) 24px minmax(220px, 1fr);
  align-items: center;
  gap: 8px;
  display: grid;
}

.cp-condition-node {
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 3px 12px;
  padding: 9px 11px;
  display: grid;
}

.cp-condition-node > span {
  color: var(--navy-500);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 10px / 1 Lato, sans-serif;
}

.cp-condition-node > strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
}

.cp-condition-node > small {
  color: var(--navy-500);
}

.cp-condition-node > code {
  overflow-wrap: anywhere;
  color: var(--navy-400);
  grid-column: 1 / -1;
  font-size: 10px;
}

.cp-condition-node.superseded {
  border-style: dashed;
}

.cp-condition-node.scheduled {
  opacity: .85;
  border-style: dashed;
}

.cp-condition-node.effective {
  border-color: var(--success-500);
  background: var(--success-100);
}

.cp-condition-arrow {
  color: var(--navy-400);
  text-align: center;
  font-size: 18px;
}

.cp-routes {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.cp-route {
  border: 1px solid var(--navy-100);
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  padding: 10px 12px;
  display: flex;
}

.cp-route.on {
  border-color: var(--primary-200);
  background: #f4f8ff;
}

.cp-route-nm {
  font: 700 13px / 1.2 Lato, sans-serif;
}

.cp-index-line {
  border: 1px solid var(--navy-100);
  border-radius: 8px;
  margin-top: 14px;
  padding: 14px;
}

.cp-index-line h4 {
  color: var(--navy-800);
  margin: 0 0 12px;
}

.cp-cap {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.cp-cap-bar {
  background: var(--navy-100);
  border-radius: 8px;
  height: 16px;
  overflow: hidden;
}

.cp-cap-fill {
  background: var(--warning-500);
  height: 100%;
}

.cp-cap-legend {
  color: var(--navy-600);
  font-variant-numeric: tabular-nums;
  flex-wrap: wrap;
  gap: 20px;
  font-size: 12px;
  display: flex;
}

.cp-actions {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  display: flex;
}

.cp-action-btns {
  gap: 8px;
  display: flex;
}

@media (max-width: 900px) {
  .md-fact-boxes {
    grid-template-columns: 1fr;
  }

  .cp-inflight-lines > div {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .cp-condition-lineage {
    grid-template-columns: 1fr;
  }

  .cp-condition-arrow {
    transform: rotate(90deg);
  }
}

.mia-screen {
  flex-direction: column;
  gap: 14px;
  display: flex;
}

.mia-screen--fill {
  height: 100%;
  min-height: 0;
}

.mia-toolbar {
  justify-content: flex-end;
  align-items: center;
  gap: 16px;
  display: flex;
}

.mia-note {
  background: var(--primary-050);
  color: var(--primary-700);
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 12px;
  display: flex;
}

.mia-gap {
  border: 1px dashed var(--navy-200);
  background: var(--surface);
  color: var(--navy-600);
  border-radius: 12px;
  align-items: flex-start;
  gap: 10px;
  padding: 16px;
  display: flex;
}

.mia-runs-contracts {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.mia-runs-contracts b {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
}

.mia-runs-contracts small {
  color: var(--navy-500);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.mia-runs-money {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.mia-runs-actions {
  white-space: nowrap;
  justify-content: center;
  align-items: center;
  gap: 6px;
  display: flex;
}

.mia-runs-action-reason {
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.mia-proposal {
  min-width: 0;
}

.mia-proposal--fill {
  flex: 1;
  min-height: 0;
}

.mia-proposal-actions {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.mia-proposal-actions > div {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.mia-proposal-mechanism-group {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.mia-proposal-positive {
  color: var(--success-600);
  font-variant-numeric: tabular-nums;
}

.tgv2-table tbody tr.mia-runs-overview-row:hover td, .tgv2-table tbody tr.mia-runs-overview-row:hover td.tgv2-rownum {
  background: #fff;
}

.tgv2--striped .tgv2-table tbody tr.mia-runs-overview-row:nth-child(2n):hover td {
  background: var(--navy-050);
}

.mia-proposal-mechanism-head > div {
  color: var(--primary-500);
  align-items: center;
  gap: 14px;
  margin-bottom: 8px;
  font: 700 16px / 1.2 Lato, sans-serif;
  display: flex;
}

.mia-proposal-mechanism-head > div:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  min-width: 24px;
  height: 1px;
}

.mia-proposal-mechanism-head > div b {
  color: inherit;
}

.mia-proposal-mechanism-head > div span {
  color: var(--navy-500);
  font-size: 12px;
  font-weight: 400;
}

.mia-proposal-mechanism-head details {
  margin-top: 10px;
}

.mia-proposal-mechanism-head summary {
  cursor: pointer;
  color: var(--primary-700);
  font: 700 12px / 1.2 Lato, sans-serif;
}

.mia-proposal-derivation {
  border: 1px solid var(--navy-100);
  background: #fff;
  border-radius: 8px;
  grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
  margin-top: 10px;
  display: grid;
  overflow: hidden;
}

.mia-proposal-derivation-set {
  display: contents;
}

.mia-proposal-derivation-fact {
  border-right: 1px solid var(--navy-100);
  min-width: 0;
  padding: 10px 12px;
}

.mia-proposal-derivation-fact span {
  color: var(--navy-500);
  font-size: 10.5px;
  display: block;
}

.mia-proposal-derivation-fact strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  margin-top: 4px;
  font-size: 14px;
  display: block;
}

.mia-proposal-gate {
  border: 1px solid var(--warning-100);
  color: var(--warning-text);
  background: #fff8e1;
  border-radius: 8px;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  font-size: 12px;
  display: flex;
}

.mia-proposal-line-grid-legend {
  color: var(--navy-500);
  margin: 0;
  font-size: 14px;
}

.mia-proposal-line-grid {
  border-top: 1px solid var(--navy-100);
  isolation: isolate;
  min-height: 320px;
}

.mia-proposal-line-grid > .tgv2 {
  height: 100%;
}

.mia-proposal-line-grid .tgv2-table-shell {
  max-height: none;
  overflow: auto hidden;
}

.mia-proposal-line-grid .tgv2-table thead tr:first-child th, .mia-proposal-line-grid .tgv2-table thead th, .mia-proposal-line-grid .tgv2-table thead tr:first-child th.tgv2-rownum, .mia-proposal-line-grid .tgv2-table .tgv2-filter-row th.tgv2-rownum {
  top: auto;
}

.mia-proposal-line-grid .tgv2-filler-row {
  display: none;
}

.mia-proposal-line-grid .tgv2-table tbody tr:hover td, .mia-proposal-line-grid .tgv2-table tbody tr:hover td.tgv2-rownum {
  background: #fff;
}

.mia-proposal-line-grid .tgv2-table tbody tr.tgv2-group-row:hover td {
  background: var(--navy-050);
}

.mia-proposal-unit {
  color: var(--navy-700);
  align-items: center;
  gap: 7px;
  font-weight: 700;
  display: inline-flex;
}

.mia-proposal-account {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.mia-proposal-account b {
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.mia-proposal-account small {
  color: var(--navy-500);
}

.mia-proposal-account em {
  color: var(--warning-700);
  white-space: normal;
  font-size: 10.5px;
  font-style: normal;
}

.mia-proposal-account .mia-proposal-consent {
  color: var(--navy-600);
  flex-wrap: wrap;
  gap: 2px 8px;
  display: flex;
}

.mia-proposal-account .mia-proposal-consent b {
  color: var(--navy-700);
  font-size: inherit;
  white-space: normal;
}

.mia-proposal-release-control {
  color: var(--navy-600);
  align-items: center;
  gap: 7px;
  font-size: 11px;
  display: flex;
}

.mia-proposal-release-control input {
  accent-color: var(--primary-600);
}

.mia-proposal-adjusted {
  border-radius: 999px;
  align-items: center;
  gap: 4px;
  padding: 4px 7px;
  font: 900 10.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.mia-proposal-adjusted.yes {
  background: var(--success-100);
  color: var(--success-600);
}

.mia-proposal-adjusted.no {
  background: var(--navy-100);
  color: var(--navy-600);
}

.mia-proposal-bottom-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  display: grid;
}

.mia-proposal-mini {
  padding: 14px 16px;
}

.mia-proposal-mini h3 {
  color: var(--navy-900);
  margin: 0 0 10px;
  font: 900 14px / 1.2 Lato, sans-serif;
}

.mia-proposal-mini dl {
  margin: 0;
}

.mia-proposal-mini dl > div {
  border-top: 1px solid var(--navy-100);
  justify-content: space-between;
  gap: 16px;
  padding: 7px 0;
  display: flex;
}

.mia-proposal-mini dt {
  color: var(--navy-500);
}

.mia-proposal-mini dd {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  margin: 0;
  font-weight: 700;
}

.mia-proposal-mini p {
  align-items: center;
  gap: 6px;
  margin: 10px 0 0;
  font-size: 11px;
  display: flex;
}

.mia-proposal-mini p.ok {
  color: var(--success-600);
}

.mia-proposal-mini p.err {
  color: var(--danger-600);
}

.mia-proposal-actions {
  border: 1px solid var(--navy-200);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  border-radius: 10px;
  padding: 10px 12px;
}

.mia-proposal-primary-actions {
  flex-direction: column;
  flex: 1;
  align-items: flex-start !important;
}

.mia-proposal-primary-buttons {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.mia-proposal-approval-input {
  border: 1px solid var(--warning-100);
  background: #fff8e1;
  border-radius: 8px;
  grid-template-columns: minmax(280px, auto) minmax(180px, auto);
  align-items: end;
  gap: 6px 18px;
  padding: 10px 12px;
  display: grid;
}

.mia-proposal-dispatch-confirmation {
  min-height: 32px;
  color: var(--warning-text);
  align-items: center;
  gap: 8px;
  font: 700 12px / 1.3 Lato, sans-serif;
  display: flex;
}

.mia-proposal-dispatch-confirmation input {
  accent-color: var(--primary-600);
}

.mia-proposal-receipt-date {
  color: var(--navy-600);
  gap: 4px;
  font: 700 11px / 1.2 Lato, sans-serif;
  display: grid;
}

.mia-proposal-receipt-date input {
  border: 1px solid var(--navy-200);
  height: 32px;
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  background: #fff;
  border-radius: 4px;
  padding: 0 8px;
}

.mia-proposal-approval-note, .mia-proposal-approval-gap {
  grid-column: 1 / -1;
  font-size: 11px;
}

.mia-proposal-approval-note {
  color: var(--navy-500);
}

.mia-proposal-approval-gap {
  color: var(--danger-600);
  font-weight: 700;
}

.mia-proposal-activation-arrears {
  border-top: 1px solid var(--warning-100);
  grid-column: 1 / -1;
  padding-top: 6px;
}

.mia-proposal-activation-arrears h4 {
  color: var(--warning-text);
  margin: 0 0 4px;
  font: 900 12px / 1.2 Lato, sans-serif;
}

.mia-proposal-activation-arrears-contract + .mia-proposal-activation-arrears-contract {
  border-top: 1px solid var(--warning-100);
  margin-top: 7px;
  padding-top: 7px;
}

.mia-proposal-activation-arrears-contract h5 {
  color: var(--navy-700);
  margin: 0 0 4px;
  font: 700 11px / 1.2 Lato, sans-serif;
}

.mia-proposal-activation-arrears dl {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  display: grid;
}

.mia-proposal-activation-arrears dl > div {
  min-width: 0;
}

.mia-proposal-activation-arrears dt {
  color: var(--navy-500);
  font-size: 10px;
}

.mia-proposal-activation-arrears dd {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  margin: 2px 0 0;
  font-weight: 700;
}

.mia-proposal-discard {
  color: var(--danger-600);
}

.mia-review-body {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.mia-review-body > * {
  flex-shrink: 0;
}

.mia-review-body > .pdm-kpi-strip {
  margin: -24px -16px 0;
  position: sticky;
  top: -24px;
}

.mia-review-step-label {
  flex-direction: column;
  gap: 1px;
  display: flex;
}

.mia-review-step-label strong {
  font: 900 13px / 1.3 Lato, sans-serif;
}

.mia-review-step-label small {
  color: var(--navy-400);
  font: 700 11px / 1.3 Lato, sans-serif;
}

.ecp-step.active .mia-review-step-label small {
  color: inherit;
  opacity: .75;
}

.mia-review-open-lease {
  align-self: flex-start;
}

.mia-review-footer-primary {
  align-items: center;
  gap: 8px;
  display: flex;
}

.mia-review-actions-portal {
  display: contents;
}

.mia-review-actions-portal [data-testid="mia-proposal-discard"] {
  order: 1;
}

.mia-review-actions-portal [data-testid="mia-proposal-submit"] {
  order: 2;
}

.mia-review-footer-primary [data-testid="mia-review-next"] {
  order: 3;
}

@media (max-width: 1000px) {
  .mia-proposal-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mia-proposal-kpi {
    border-bottom: 1px solid var(--navy-100);
  }

  .mia-proposal-bottom-grid, .mia-proposal-approval-input {
    grid-template-columns: 1fr;
  }

  .mia-proposal-activation-arrears dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.mia-gap b {
  font: 900 13px / 1 Lato, sans-serif;
}

.mia-gap p {
  color: var(--navy-500);
  margin: 6px 0 0;
  font-size: 13px;
}

.miawl {
  min-width: 0;
}

.miawl-headline {
  border: 1px solid var(--navy-200);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 12px;
  grid-template-columns: 1.25fr repeat(4, 1fr);
  gap: 0;
  display: grid;
  overflow: hidden;
}

.miawl-headline.has-reconciliation {
  grid-template-columns: 1.25fr repeat(5, 1fr);
}

.miawl-headline > div {
  border-right: 1px solid var(--navy-100);
  padding: 15px 18px;
}

.miawl-headline > div.primary {
  background: linear-gradient(135deg, var(--primary-050), #fff);
}

.miawl-headline span {
  color: var(--navy-500);
  font: 700 11.5px / 1.2 Lato, sans-serif;
  display: block;
}

.miawl-headline strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  margin-top: 5px;
  font: 900 23px / 1.1 Lato, sans-serif;
  display: block;
}

.miawl-headline .primary strong {
  color: var(--primary-700);
  font-size: 27px;
}

.miawl-headline > div.negative strong {
  color: var(--primary-700);
}

.miawl-headline strong small {
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: 11px;
}

.miawl-headline > p {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-600);
  background: var(--navy-050);
  grid-column: 1 / -1;
  margin: 0;
  padding: 9px 18px;
  font: 700 12px / 1.3 Lato, sans-serif;
}

.miawl-kpi-strip {
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  gap: 6px;
  height: auto;
  min-height: 76px;
  padding: 10px 16px;
}

.miawl-kpi-strip-context {
  color: var(--navy-500);
  margin: 0;
  font: 700 12px / 1.3 Lato, sans-serif;
}

.miawl-kpi-strip .pdm-kpi-cards {
  margin-right: 0;
}

.miawl-controls, .miawl-selection {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px;
  display: flex;
}

.miawl-scope {
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  display: flex;
}

.miawl-scope select {
  border: 1px solid var(--navy-200);
  min-width: 185px;
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  padding: 0 28px 0 9px;
  font: 700 12.5px / 1 Lato, sans-serif;
}

.miawl-selection {
  border: 1px solid var(--primary-200);
  min-height: 42px;
  color: var(--primary-700);
  background: var(--primary-050);
  border-radius: 9px;
  justify-content: flex-start;
  align-items: center;
  padding: 8px 10px 8px 12px;
  font-size: 11.5px;
}

.miawl-selection > span {
  flex: 1;
  min-width: 280px;
}

.miawl-selection > strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
}

.miawl-proposal-action:disabled, .miawl-proposal-action:disabled:hover {
  border-color: var(--navy-200);
  color: var(--navy-400);
  background: var(--navy-050);
  box-shadow: none;
  cursor: not-allowed;
  opacity: 1;
}

.miawl .tgv2-table {
  min-width: 1940px;
}

.miawl .tgv2-table tbody > tr:not(.tgv2-group-row) > td {
  vertical-align: top;
  min-height: 48px;
  padding-top: 7px;
  padding-bottom: 7px;
}

.miawl .tgv2-group-head {
  padding-left: 86px;
}

.miawl .tgv2-group-copy {
  width: 277px;
}

.miawl .tgv2-table tbody > tr.miawl-row-hot > td {
  background: #fff8ec;
}

.miawl .tgv2-table tbody > tr.miawl-row-hot > td:first-child {
  box-shadow: inset 3px 0 0 var(--danger-500);
}

.miawl .tgv2-table tbody > tr.miawl-row-hot:hover > td {
  background: #fbe8c4;
}

.miawl .tgv2-table tbody > tr.miawl-row-reduction > td {
  background: #f3f8ff;
}

.miawl .tgv2-table tbody > tr.miawl-row-reduction > td:first-child {
  box-shadow: inset 3px 0 0 var(--primary-500);
}

.miawl .tgv2-table tbody > tr.miawl-row-reduction:hover > td {
  background: #dceaff;
}

.miawl-identity-row {
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: flex;
}

.miawl-identity {
  flex: 1;
  align-items: start;
  gap: 2px;
  min-width: 0;
  display: grid;
}

.miawl-identity b {
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  overflow: hidden;
}

.miawl-identity small {
  color: var(--navy-500);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
  overflow: hidden;
}

.miawl-identity em {
  color: var(--primary-700);
  white-space: normal;
  margin-top: 4px;
  font: 700 10.5px / 1.35 Lato, sans-serif;
}

.miawl-open-run {
  border: 1px solid var(--border);
  width: 28px;
  height: 28px;
  color: var(--primary-700);
  cursor: pointer;
  background: #fff;
  border-radius: 6px;
  flex: 0 0 28px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.miawl-open-run:hover {
  color: var(--primary-700);
  background: var(--primary-050);
  border-color: var(--primary-200);
}

.miawl-select-included {
  align-items: center;
  gap: 2px;
  display: inline-flex;
}

.miawl-select-included input {
  width: 15px;
  height: 15px;
  accent-color: var(--primary-600);
  opacity: .85;
  margin: 0;
}

.miawl-select-disabled {
  color: var(--navy-400);
  justify-items: start;
  gap: 3px;
  display: grid;
}

.miawl-select-disabled input {
  opacity: .55;
  width: 15px;
  height: 15px;
  margin: 0;
}

.miawl-select-disabled small {
  white-space: normal;
  max-width: 86px;
  font-size: 8.5px;
  line-height: 1.2;
}

.miawl-lock {
  color: var(--navy-300);
  margin: 4px;
}

.miawl-handoff-locked {
  color: var(--danger-600);
  align-items: center;
  gap: 2px;
  display: flex;
}

.miawl-handoff-locked .miawl-lock {
  color: currentColor;
  flex: none;
  margin: 2px 0;
}

.miawl-handoff-locked small {
  white-space: normal;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.15;
}

.miawl-money {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.miawl-money.positive {
  color: var(--success-600);
}

.miawl-money.negative {
  color: var(--primary-700);
}

.miawl-procedure-value {
  justify-items: end;
  gap: 2px;
  display: grid;
}

.miawl-procedure-value > small {
  color: var(--navy-500);
  white-space: normal;
  font-size: 9.5px;
  line-height: 1.15;
}

.miawl-delta {
  justify-items: end;
  gap: 3px;
  display: grid;
}

.miawl-reduction {
  border-radius: var(--pill);
  width: fit-content;
  color: var(--primary-700);
  background: var(--primary-100);
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 3px 7px;
  font: 900 9.5px / 1 Lato, sans-serif;
}

.miawl-deadline {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  display: inline-block;
}

.miawl-deadline.hot {
  color: var(--danger-600);
  background: var(--danger-100);
  border-radius: 5px;
  padding: 3px 6px;
  font-weight: 900;
}

.miawl-status {
  white-space: normal;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 4px 7px;
  font-size: 10.5px;
  line-height: 1.35;
  display: grid;
}

.miawl-state {
  white-space: nowrap;
  border-radius: 20px;
  padding: 3px 7px;
  font: 900 9.5px / 1 Lato, sans-serif;
}

.miawl-state.due {
  color: var(--success-600);
  background: var(--success-100);
}

.miawl-state.blocked {
  color: var(--danger-600);
  background: var(--danger-100);
}

.miawl-state.not_yet, .miawl-state.versendet, .miawl-state.wartet_auf_zustimmung, .miawl-state.zugang_bestaetigt {
  color: var(--navy-600);
  background: var(--navy-100);
}

.miawl-state.frist_laeuft_ab, .miawl-state.klagefrist_laeuft, .miawl-state.teilzugestimmt {
  color: var(--warning-text);
  background: var(--warning-100);
}

.miawl-state.zugestimmt, .miawl-state.klage_erhoben {
  color: var(--success-600);
  background: var(--success-100);
}

.miawl-state.abgelehnt, .miawl-state.zugang_gescheitert, .miawl-state.verbraucht, .miawl-state.zurückgenommen {
  color: var(--danger-600);
  background: var(--danger-100);
}

.miawl-status > span:nth-child(2) {
  color: var(--navy-600);
}

.miawl-status > b, .miawl-status > small {
  grid-column: 2;
}

.miawl-status > b {
  color: var(--warning-text);
}

.miawl-status > small {
  color: var(--primary-700);
  font-weight: 700;
}

.miawl-status > small.miawl-handoff-gap {
  color: var(--danger-600);
}

.miawl-trigger-gap {
  color: var(--navy-600);
  white-space: normal;
  gap: 3px;
  font-size: 10.5px;
  line-height: 1.35;
  display: grid;
}

.miawl-trigger-gap > span:last-child {
  color: var(--primary-700);
  font-weight: 900;
}

@media (max-width: 900px) {
  .miawl-headline {
    grid-template-columns: 1fr;
  }

  .miawl-headline > div {
    border-right: 0;
    border-bottom: 1px solid var(--navy-100);
  }

  .miawl-controls {
    align-items: stretch;
  }

  .miawl-scope {
    width: 100%;
  }

  .miawl-scope select {
    flex: 1;
    width: 100%;
    min-width: 0;
  }
}

.inbox {
  flex-direction: column;
  gap: 14px;
  display: flex;
}

.inbox-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.inbox-head h2 {
  align-items: center;
  gap: 8px;
  font: 900 18px / 1.1 Lato, sans-serif;
  display: flex;
}

.inbox-sub {
  color: var(--navy-500);
  margin-top: 4px;
  font-size: 12px;
}

.inbox-explain {
  color: var(--warning-text);
}

.inbox-msg {
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 13px;
}

.inbox-msg.ok {
  background: var(--success-100);
  color: var(--success-600);
}

.inbox-msg.err {
  background: var(--danger-100);
  color: var(--danger-600);
}

.inbox-layout {
  grid-template-columns: 200px 1fr 320px;
  align-items: start;
  gap: 14px;
  display: grid;
}

.inbox-rail {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 10px;
}

.inbox-rail h4 {
  text-transform: uppercase;
  color: var(--navy-400);
  margin: 4px 6px 8px;
  font: 900 11px / 1 Lato, sans-serif;
}

.inbox-frow {
  cursor: pointer;
  width: 100%;
  color: var(--navy-700);
  background: none;
  border: 0;
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  padding: 8px;
  font: 700 12.5px / 1 Lato, sans-serif;
  display: flex;
}

.inbox-frow:hover {
  background: var(--navy-050);
}

.inbox-frow.on {
  background: var(--primary-050);
  color: var(--primary-700);
}

.inbox-frow .c {
  color: var(--navy-500);
  background: var(--navy-100);
  border-radius: 20px;
  padding: 2px 7px;
  font: 900 11px / 1 Lato, sans-serif;
}

.inbox-queue {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
}

.inbox-qh {
  border-bottom: 1px solid var(--border);
  padding: 11px 14px;
  font: 900 13px / 1 Lato, sans-serif;
}

.inbox-row {
  border: 0;
  border-bottom: 1px solid var(--border);
  cursor: pointer;
  text-align: left;
  background: none;
  align-items: flex-start;
  gap: 11px;
  width: 100%;
  padding: 12px 14px;
  display: flex;
}

.inbox-row:hover {
  background: #f9fbff;
}

.inbox-row.sel {
  box-shadow: inset 3px 0 0 var(--primary-600);
  background: #f4f8ff;
}

.inbox-mod {
  text-transform: uppercase;
  letter-spacing: .04em;
  white-space: nowrap;
  border-radius: 20px;
  flex: none;
  margin-top: 1px;
  padding: 4px 8px;
  font: 900 10px / 1 Lato, sans-serif;
}

.inbox-mod.mia {
  background: var(--primary-050);
  color: var(--primary-700);
}

.inbox-mod.mahn {
  background: var(--warning-100);
  color: var(--warning-text);
}

.inbox-mod.gen {
  background: var(--navy-100);
  color: var(--navy-500);
}

.inbox-mid {
  flex-direction: column;
  flex: 1;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.inbox-mid .nm {
  font: 700 13.5px / 1.2 Lato, sans-serif;
}

.inbox-mid .who {
  color: var(--navy-500);
  font-size: 12px;
}

.inbox-age {
  color: var(--navy-400);
  white-space: nowrap;
  flex: none;
  font-size: 11.5px;
}

.inbox-pane {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  position: sticky;
  top: 16px;
}

.inbox-pane-h {
  border-bottom: 1px solid var(--border);
  padding: 12px 14px;
  font: 900 13px / 1 Lato, sans-serif;
}

.inbox-pane-b {
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px;
  display: flex;
}

.inbox-arrears {
  border: 1px solid var(--warning-100);
  background: #fff8e1;
  border-radius: 8px;
  gap: 8px;
  padding: 9px 10px;
  display: grid;
}

.inbox-arrears h4 {
  color: var(--warning-text);
  margin: 0;
  font: 900 12px / 1.2 Lato, sans-serif;
}

.inbox-arrears .md-facts {
  border-top: 1px solid var(--warning-100);
  padding-top: 7px;
}

.inbox-dunning {
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  display: flex;
}

.inbox-dunning-advisory {
  color: var(--warning-text);
  background: var(--warning-100);
  border-radius: 8px;
  align-items: flex-start;
  gap: 6px;
  padding: 8px 10px;
  font-size: 11.5px;
  line-height: 1.35;
  display: flex;
}

.inbox-dunning .md-table {
  min-width: 620px;
}

.inbox-steps {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  gap: 6px;
  padding: 9px 10px;
  display: grid;
}

.inbox-steps h4 {
  color: var(--navy-600);
  margin: 0;
  font: 900 12px / 1.2 Lato, sans-serif;
}

.inbox-steps ol {
  color: var(--navy-600);
  gap: 4px;
  margin: 0;
  padding-left: 18px;
  font-size: 11.5px;
  display: grid;
}

.inbox-steps ol li b {
  color: var(--navy-800);
}

.inbox-sod {
  color: var(--warning-text);
  background: var(--warning-100);
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  font-size: 11.5px;
  display: flex;
}

.inbox-btns {
  gap: 8px;
  display: flex;
}

.inbox-btns .btn {
  flex: 1;
}

.inbox-ap-facts {
  grid-template-columns: minmax(0, 1fr);
  gap: 7px;
}

.inbox-ap-facts .md-fact {
  grid-template-columns: minmax(0, 40%) minmax(0, 1fr);
  align-items: baseline;
  column-gap: 10px;
  display: grid;
}

.inbox-ap-facts .md-fact dt {
  font-size: 11.5px;
  line-height: 1.3;
}

.inbox-ap-facts .md-fact dd {
  overflow-wrap: anywhere;
  font-size: 12.5px;
}

.inbox-ap-facts .md-fact[data-available="false"] dd {
  color: var(--navy-400);
  font-style: italic;
  font-weight: 400;
}

.inbox-ap-note {
  color: var(--navy-500);
  margin: 0;
  font-size: 11.5px;
}

.inbox-ap-decision {
  gap: 6px;
  display: grid;
}

.inbox-ap-date {
  color: var(--navy-800);
  font: 700 12.5px / 1.3 Lato, sans-serif;
}

.inbox-ap-decision .inbox-sod {
  flex-wrap: wrap;
}

.inbox-ap-decision .inbox-sod .btn {
  margin-left: auto;
}

.inbox-refusal {
  gap: 4px;
  font-size: 12px;
  line-height: 1.4;
  display: grid;
}

.inbox-refusal-code {
  letter-spacing: .02em;
  font: 700 11px / 1.3 Lato, sans-serif;
}

.inbox-refusal-link {
  color: var(--danger-600);
  font-weight: 700;
  text-decoration: underline;
}

.inbox-ap-btns .btn {
  white-space: nowrap;
  flex: auto;
}

.inbox-lock {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.inbox-lock .btn {
  flex: none;
}

.inbox-tabs {
  border-bottom: 1px solid var(--border);
  background: var(--surface);
  gap: 2px;
  display: flex;
}

.inbox-tabs button {
  cursor: pointer;
  color: var(--navy-500);
  background: none;
  border: 0;
  border-bottom: 2px solid #0000;
  align-items: center;
  gap: 6px;
  padding: 10px 14px;
  font: 900 12.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.inbox-tabs button.active {
  color: var(--primary-700);
  border-bottom-color: var(--primary-600);
}

.inbox-row-wrap {
  border-bottom: 1px solid var(--border);
  align-items: flex-start;
  gap: 0;
  display: flex;
}

.inbox-row-wrap .inbox-row {
  border-bottom: 0;
}

.inbox-row-check {
  width: 15px;
  height: 15px;
  accent-color: var(--primary-600);
  cursor: pointer;
  flex: none;
  margin: 15px 0 0 12px;
}

.inbox-row-check:disabled {
  cursor: not-allowed;
  opacity: .45;
}

.inbox-interaction {
  border-top: 1px solid var(--border);
  gap: 8px;
  padding: 10px 0 0;
  display: grid;
}

.inbox-interaction-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.inbox-interaction-head h4 {
  color: var(--navy-800);
  align-items: center;
  gap: 6px;
  margin: 0;
  font: 900 12.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.inbox-interaction-badges {
  flex-wrap: wrap;
  gap: 6px;
  display: inline-flex;
}

.inbox-badge {
  border: 1px solid var(--navy-200);
  background: var(--navy-050);
  color: var(--navy-600);
  border-radius: 999px;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  font: 700 11px / 1.5 Lato, sans-serif;
  display: inline-flex;
}

.inbox-badge.warn {
  border-color: var(--warning-100);
  background: var(--warning-100);
  color: var(--warning-text);
}

.inbox-question {
  border: 1px solid var(--navy-200);
  background: var(--navy-050);
  border-radius: 8px;
  gap: 4px;
  padding: 8px 10px;
  display: grid;
}

.inbox-question-meta {
  color: var(--navy-500);
  flex-wrap: wrap;
  gap: 10px;
  font: 400 11px / 1.4 Lato, sans-serif;
  display: flex;
}

.inbox-question-text {
  color: var(--navy-800);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 12.5px;
  line-height: 1.45;
}

.inbox-forwards {
  gap: 3px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.inbox-forwards li {
  color: var(--navy-600);
  align-items: center;
  gap: 5px;
  font-size: 11.5px;
  display: flex;
}

.inbox-interaction-actions {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.inbox-interaction-action {
  gap: 2px;
  display: grid;
}

.inbox-interaction-why {
  color: var(--navy-500);
  max-width: 280px;
  font-size: 11px;
  line-height: 1.35;
}

.inbox-interaction-history summary {
  cursor: pointer;
  color: var(--navy-600);
  font: 700 11.5px / 1.4 Lato, sans-serif;
}

.inbox-interaction-history ol {
  color: var(--navy-600);
  gap: 6px;
  margin: 6px 0 0;
  padding-left: 18px;
  font-size: 11.5px;
  display: grid;
}

.inbox-interaction-dialog {
  gap: 12px;
  display: grid;
}

.inbox-interaction-field {
  color: var(--navy-500);
  gap: 4px;
  font-size: 11.5px;
  display: grid;
}

.inbox-interaction-field > span:first-child {
  color: var(--navy-700);
  font: 700 11.5px / 1.4 Lato, sans-serif;
}

.inbox-interaction-field input, .inbox-interaction-field select {
  border: 1px solid var(--navy-200);
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  padding: 0 10px;
  font-size: 13px;
}

.inbox-interaction-field textarea {
  border: 1px solid var(--navy-200);
  color: var(--navy-800);
  resize: vertical;
  background: #fff;
  border-radius: 4px;
  padding: 8px 10px;
  font: 400 13px / 1.5 Lato, sans-serif;
}

.inbox-questions {
  display: grid;
}

.inbox-questions .inbox-qh {
  align-items: center;
  gap: 8px;
  display: flex;
}

.inbox-questions .inbox-qh .c {
  color: var(--primary-700);
  margin-left: auto;
  font: 900 12px / 1 Lato, sans-serif;
}

.inbox-batch {
  border-top: 1px solid var(--border);
  background: var(--navy-050);
}

.inbox-batch-bar {
  color: var(--navy-600);
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  font-size: 12px;
  display: flex;
}

.inbox-batch-title {
  color: var(--navy-800);
  align-items: center;
  gap: 6px;
  font: 900 12.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.inbox-batch-actions {
  gap: 6px;
  margin-left: auto;
  display: inline-flex;
}

.inbox-batch-results {
  gap: 8px;
  padding: 0 14px 12px;
  display: grid;
}

.inbox-batch-results h5 {
  color: var(--navy-800);
  margin: 0;
  font: 900 12px / 1 Lato, sans-serif;
}

.inbox-batch-confirm {
  gap: 10px;
  display: grid;
}

.inbox-batch-results tr[data-outcome="refused"] td, .inbox-batch-results tr[data-outcome="unknown"] td {
  color: var(--danger-600);
}

.inbox-batch-results tr[data-outcome="releasedPostingFailed"] td {
  color: var(--warning-text);
}

.miarun-params {
  grid-template-columns: repeat(4, 1fr) auto;
  align-items: end;
  gap: 12px;
  display: grid;
}

.miarun-params label {
  color: var(--navy-500);
  flex-direction: column;
  gap: 4px;
  font-size: 11px;
  display: flex;
}

.miarun-params input, .miarun-params select {
  border: 1px solid var(--navy-200);
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  padding: 0 10px;
  font-size: 13px;
}

.miarun-params input[readonly] {
  color: var(--navy-600);
  background: var(--navy-050);
}

.miarun-row-facts {
  gap: 8px;
  margin-top: 12px;
  display: grid;
}

.miarun-row-fact {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(180px, 1fr));
  align-items: end;
  gap: 10px;
  padding: 10px;
  display: grid;
}

.miarun-row-fact header {
  align-self: center;
  gap: 2px;
  display: grid;
}

.miarun-row-fact header b {
  color: var(--navy-800);
  font-size: 12px;
}

.miarun-row-fact header span, .miarun-row-fact header code, .miarun-row-fact > small {
  color: var(--navy-500);
  overflow-wrap: anywhere;
  font-size: 10px;
}

.miarun-row-fact label {
  color: var(--navy-500);
  gap: 4px;
  font-size: 10.5px;
  display: grid;
}

.miarun-row-fact input, .miarun-row-fact select {
  border: 1px solid var(--navy-200);
  height: 32px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  padding: 0 8px;
  font-size: 12px;
}

.miarun-row-fact > small {
  grid-column: 2 / -1;
}

.miarun-resulthead {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  display: flex;
}

.miarun-foot {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 12px;
  display: flex;
}

.miarun-sod {
  color: var(--warning-text);
  align-items: center;
  gap: 6px;
  font-size: 12px;
  display: flex;
}

.miarun-scope-note, .miarun-unsupported {
  border-radius: 7px;
  margin: 10px 0 0;
  padding: 8px 10px;
  font-size: 11.5px;
}

.miarun-scope-note {
  color: var(--primary-700);
  background: var(--primary-050);
}

.miarun-unsupported {
  color: var(--warning-text);
  background: var(--warning-100);
  font-weight: 700;
}

.miarun-open {
  border: 1px solid var(--primary-200);
  color: var(--primary-700);
  background: var(--primary-050);
  border-radius: 9px;
  align-items: center;
  gap: 9px;
  padding: 11px 13px;
  display: flex;
}

.miarun-open > span {
  gap: 3px;
  display: grid;
}

.miarun-open b {
  font: 900 12.5px / 1.1 Lato, sans-serif;
}

.miarun-open small {
  color: var(--navy-500);
  overflow-wrap: anywhere;
  font-size: 10.5px;
}

.miarun-table-scroll {
  width: 100%;
  margin-top: 12px;
  overflow: auto;
}

.miarun-table {
  min-width: 1740px;
}

.miarun-table td {
  vertical-align: top;
}

.miarun-contract {
  white-space: nowrap;
  font-family: ui-monospace, Cascadia Mono, Consolas, monospace;
}

.miarun-money {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.miarun-reason {
  min-width: 280px;
  color: var(--navy-600);
  font-size: 11px;
  line-height: 1.4;
}

.miarun-headline {
  margin-top: 0;
}

@media (max-width: 900px) {
  .inbox-layout {
    grid-template-columns: 1fr;
  }

  .miarun-params {
    grid-template-columns: 1fr 1fr;
  }

  .miarun-row-fact {
    grid-template-columns: 1fr;
  }

  .miarun-row-fact > small {
    grid-column: 1;
  }
}

.metering-console, .metering-stack {
  gap: 14px;
  min-width: 0;
  display: grid;
}

.metering-console.metering-console--fill {
  flex-direction: column;
  height: 100%;
  min-height: 0;
  display: flex;
}

.metering-stack.metering-stack--fill, .metering-grid-fill {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.metering-toolbar {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 14px;
  display: flex;
}

.metering-section-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 14px;
  display: flex;
}

.metering-section-head h3 {
  color: var(--navy-800);
  margin: 5px 0 0;
  font: 900 17px / 1.15 Lato, sans-serif;
}

.metering-section-head p {
  color: var(--navy-400);
  margin: 4px 0 0;
  font: 700 12px / 1.3 Lato, sans-serif;
}

.metering-actions, .metering-analysis-controls {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 8px;
  display: flex;
}

.metering-actions label:not(.btn), .metering-inline-select, .metering-form label, .metering-analysis-controls label {
  color: var(--navy-400);
  gap: 5px;
  font: 900 11.5px / 1 Lato, sans-serif;
  display: grid;
}

.metering-actions select, .metering-inline-select select, .metering-form input, .metering-form select, .metering-analysis-controls input {
  border: 1px solid var(--navy-200);
  min-width: 0;
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 0 10px;
  font: 700 13px / 1 Lato, sans-serif;
}

.metering-message {
  border-radius: 8px;
  padding: 10px 12px;
  font-weight: 900;
}

.metering-message.ok {
  color: #0f8d46;
  background: var(--success-100);
}

.metering-message.err {
  color: #b11d1d;
  background: var(--danger-100);
}

.metering-panel {
  border: 1px solid var(--border);
  background: var(--surface);
  min-width: 0;
  box-shadow: var(--shadow-sm);
  border-radius: 8px;
  overflow: hidden;
}

.metering-panel-head {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  padding: 12px 14px;
  display: flex;
}

.metering-panel-head h3 {
  color: var(--navy-800);
  align-items: center;
  gap: 8px;
  margin: 0;
  font: 900 15px / 1.15 Lato, sans-serif;
  display: inline-flex;
}

.metering-empty {
  color: var(--navy-500);
  padding: 24px;
}

.metering-empty h3 {
  margin: 0;
  font: 900 15px / 1.2 Lato, sans-serif;
}

.metering-form-grid {
  align-items: end;
  gap: 12px;
  padding: 14px;
  display: grid;
}

.metering-master-grid {
  grid-template-columns: repeat(5, minmax(130px, 1fr));
}

.metering-swap-grid {
  grid-template-columns: repeat(4, minmax(130px, 1fr)) auto;
}

.metering-mapping-grid {
  grid-template-columns: repeat(4, minmax(150px, 1fr));
}

.metering-check {
  grid-template-columns: auto 1fr;
  align-self: end;
  align-items: center;
  min-height: 34px;
  color: var(--navy-700) !important;
  display: inline-flex !important;
}

.metering-check input {
  width: 15px;
  height: 15px;
}

.metering-reading-layout {
  grid-template-columns: minmax(0, 1fr) 270px;
  align-items: start;
  gap: 14px;
  display: grid;
}

.metering-reading-actions .metering-side-body {
  gap: 9px;
  padding: 14px;
  display: grid;
}

.metering-reading-actions .btn {
  justify-content: center;
  width: 100%;
}

.metering-plausibility {
  border-top: 1px solid var(--border);
  background: var(--navy-050);
  color: var(--navy-700);
  grid-template-columns: auto repeat(2, minmax(0, 1fr));
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  font: 700 12px / 1.25 Lato, sans-serif;
  display: grid;
}

.metering-plausibility span {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.metering-plausibility .ok {
  color: #0f8d46;
}

.metering-plausibility .err {
  color: #b11d1d;
}

.metering-muted {
  color: var(--navy-400);
  font: 700 12px / 1.35 Lato, sans-serif;
}

.metering-note {
  border: 1px solid var(--primary-200);
  color: var(--navy-700);
  background: var(--primary-050);
  border-radius: 8px;
  margin: 0;
  padding: 10px 12px;
  font: 700 12px / 1.4 Lato, sans-serif;
}

.metering-chip {
  white-space: nowrap;
  gap: 5px;
}

.metering-chip.green {
  background: var(--success-100);
}

.metering-chip.red {
  background: var(--danger-100);
}

.metering-chip.gray, .metering-chip.unknown {
  color: var(--navy-600);
  background: var(--navy-100);
}

.metering-table-wrap {
  overflow: auto;
}

.metering-table-wrap table {
  border-collapse: collapse;
  width: 100%;
  min-width: 680px;
  color: var(--navy-700);
  font: 700 12.5px / 1.25 Lato, sans-serif;
}

.metering-table-wrap th {
  border-bottom: 1px solid var(--border);
  color: var(--navy-400);
  background: var(--navy-050);
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 10px 14px;
  font: 900 10.5px / 1 Lato, sans-serif;
}

.metering-table-wrap td {
  border-bottom: 1px solid var(--border);
  vertical-align: middle;
  padding: 10px 14px;
}

.metering-table-wrap tr:last-child td {
  border-bottom: 0;
}

.metering-table-wrap .right {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.metering-table-button {
  min-height: 28px;
  padding: 5px 8px;
  font-size: 11px;
}

.metering-analysis-controls {
  align-items: flex-end;
}

.metering-analysis-controls label {
  min-width: 140px;
}

.metering-readiness {
  justify-content: flex-end;
  margin-top: -6px;
  display: flex;
}

.metering-inline-bar {
  border-radius: var(--pill);
  vertical-align: middle;
  background: var(--navy-100);
  width: 86px;
  height: 7px;
  margin-right: 7px;
  display: inline-flex;
  overflow: hidden;
}

.metering-inline-bar span {
  background: var(--primary-500);
  height: 100%;
}

.metering-deviation-list {
  background: var(--navy-050);
  gap: 12px;
  padding: 14px;
  display: grid;
}

.metering-deviation-list > .metering-muted {
  padding: 2px 0;
}

.metering-deviation-card {
  border: 1px solid var(--navy-200);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  border-radius: 8px;
  overflow: hidden;
}

.metering-deviation-summary {
  border-bottom: 1px solid var(--border);
  background: linear-gradient(90deg, var(--primary-050), var(--surface));
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  display: flex;
}

.metering-deviation-summary > div {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.metering-deviation-summary > div > span {
  color: var(--primary-700);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 10.5px / 1 Lato, sans-serif;
}

.metering-deviation-summary strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font: 900 14px / 1.2 Lato, sans-serif;
}

.metering-deviation-summary small {
  color: var(--navy-500);
  font-variant-numeric: tabular-nums;
  font: 700 11.5px / 1.25 Lato, sans-serif;
}

.metering-meter-decisions {
  gap: 10px;
  padding: 12px;
  display: grid;
}

.metering-meter-decision {
  border: 1px solid var(--border);
  background: var(--surface);
  border-radius: 8px;
  grid-template-columns: minmax(220px, .75fr) minmax(300px, 1.5fr);
  gap: 14px;
  padding: 13px;
  display: grid;
}

.metering-case-identity {
  border-right: 1px solid var(--border);
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  padding-right: 14px;
  display: flex;
}

.metering-case-identity > div, .metering-case-route, .metering-undetermined-copy {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.metering-case-identity > div > span, .metering-case-route > span, .metering-undetermined-copy > span {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 10.5px / 1 Lato, sans-serif;
}

.metering-case-identity strong, .metering-case-route > strong, .metering-undetermined-copy > strong {
  color: var(--navy-800);
  text-overflow: ellipsis;
  font: 900 14px / 1.25 Lato, sans-serif;
  overflow: hidden;
}

.metering-case-identity small {
  color: var(--navy-500);
  font: 700 11.5px / 1.2 Lato, sans-serif;
}

.metering-case-icon {
  border-radius: 8px;
  flex: none;
  place-items: center;
  width: 34px;
  height: 34px;
  display: grid;
}

.metering-case-icon.warning {
  color: var(--warning-text);
  background: var(--warning-100);
}

.metering-case-icon.primary {
  color: var(--primary-700);
  background: var(--primary-050);
}

.metering-case-icon.unknown {
  color: var(--navy-500);
  background: var(--navy-100);
}

.metering-instrument-list {
  gap: 7px;
  margin-top: 4px;
  display: grid;
}

.metering-instrument {
  border: 1px solid var(--border);
  border-radius: 8px;
  align-items: flex-start;
  gap: 9px;
  padding: 10px 11px;
  display: flex;
}

.metering-instrument > svg {
  flex: none;
  margin-top: 1px;
}

.metering-instrument > div {
  gap: 3px;
  display: grid;
}

.metering-instrument span {
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 10px / 1 Lato, sans-serif;
}

.metering-instrument strong {
  font: 900 13px / 1.25 Lato, sans-serif;
}

.metering-instrument p, .metering-undetermined-copy p {
  margin: 0;
  font: 700 11.5px / 1.4 Lato, sans-serif;
}

.metering-instrument.warning {
  border-color: var(--warning-500);
  color: var(--warning-text);
  background: var(--warning-100);
}

.metering-instrument.primary {
  border-color: var(--primary-200);
  color: var(--primary-700);
  background: var(--primary-050);
}

.metering-instrument.unknown {
  color: var(--navy-600);
  background: var(--navy-050);
}

.metering-meter-decision.undetermined {
  color: var(--navy-600);
  background: var(--navy-050);
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

.metering-evidence-body {
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 14px;
  display: flex;
}

.metering-evidence-copy {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.metering-evidence-copy strong {
  color: var(--navy-800);
  font: 900 14px / 1.2 Lato, sans-serif;
}

.metering-evidence-copy p {
  max-width: 760px;
  color: var(--navy-500);
  margin: 0;
  font: 700 12px / 1.4 Lato, sans-serif;
}

.metering-evidence-result, .metering-evidence-error {
  border-radius: 8px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  margin: 0 14px 14px;
  padding: 11px 12px;
  display: grid;
}

.metering-evidence-result {
  border: 1px solid var(--success-500);
  color: #0f8d46;
  background: var(--success-100);
}

.metering-evidence-error {
  border: 1px solid var(--danger-500);
  color: #b11d1d;
  background: var(--danger-100);
  grid-template-columns: auto minmax(0, 1fr);
}

.metering-evidence-result > div, .metering-evidence-error > div {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.metering-evidence-result span {
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 10.5px / 1 Lato, sans-serif;
}

.metering-evidence-result code {
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 700 12px / 1.35 ui-monospace, Cascadia Mono, Consolas, monospace;
  overflow: hidden;
}

.metering-evidence-result small, .metering-evidence-error small {
  color: var(--navy-500);
  font: 700 11px / 1.2 Lato, sans-serif;
}

.metering-evidence-error strong {
  font: 900 12px / 1.35 Lato, sans-serif;
}

.metering-file-button.disabled {
  opacity: .55;
  cursor: wait;
}

.metering-spin {
  animation: .9s linear infinite metering-spin;
}

@keyframes metering-spin {
  to {
    transform: rotate(360deg);
  }
}

.metering-file-button {
  cursor: pointer;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 6px;
  display: inline-flex !important;
}

.metering-file-button input {
  opacity: 0;
  pointer-events: none;
  width: 1px;
  height: 1px;
  position: absolute;
}

.metering-benign-route {
  align-items: center;
  gap: 12px;
  display: flex;
}

.metering-benign-route .metering-instrument {
  flex: 1;
}

.metering-benign-route > .btn {
  flex: none;
}

.metering-ack-workflow {
  border-top: 1px solid var(--border);
  background: var(--navy-050);
  gap: 12px;
  padding: 14px;
  display: grid;
}

.metering-ack-head {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 14px 16px;
  display: flex;
}

.metering-ack-head > div {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.metering-ack-head span {
  color: var(--primary-700);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 10.5px / 1 Lato, sans-serif;
}

.metering-ack-head h3 {
  color: var(--navy-800);
  font: 900 18px / 1.2 Lato, sans-serif;
}

.metering-ack-head p {
  max-width: 780px;
  color: var(--navy-500);
  font: 700 12px / 1.4 Lato, sans-serif;
}

.metering-ack-steps {
  margin: 2px 2px 0;
}

.metering-ack-steps .bka-run-step:last-child .bka-run-step-arrow {
  display: none;
}

.metering-ack-step {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}

.metering-ack-step-head {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 10px 14px;
  display: flex;
}

.metering-ack-step-head > span {
  width: 26px;
  height: 26px;
  color: var(--primary-700);
  background: var(--primary-050);
  border-radius: 50%;
  flex: none;
  place-items: center;
  font: 900 12px / 1 Lato, sans-serif;
  display: grid;
}

.metering-ack-step-head > div {
  gap: 3px;
  display: grid;
}

.metering-ack-step-head h4 {
  color: var(--navy-800);
  margin: 0;
  font: 900 14px / 1.2 Lato, sans-serif;
}

.metering-ack-step-head p {
  color: var(--navy-400);
  margin: 0;
  font: 700 11.5px / 1.3 Lato, sans-serif;
}

.metering-ack-fields {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  display: grid;
}

.metering-ack-fields label {
  min-width: 0;
  color: var(--navy-500);
  align-content: start;
  gap: 6px;
  font: 900 11.5px / 1.2 Lato, sans-serif;
  display: grid;
}

.metering-ack-fields input, .metering-ack-fields select, .metering-ack-fields textarea {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 36px;
  color: var(--navy-800);
  background: var(--surface);
  border-radius: 4px;
  outline: 0;
  padding: 7px 10px;
  font: 700 13px / 1.25 Lato, sans-serif;
}

.metering-ack-fields input:focus, .metering-ack-fields select:focus, .metering-ack-fields textarea:focus {
  border-color: var(--primary-500);
  box-shadow: 0 0 0 2px var(--primary-t16);
}

.metering-ack-fields select:disabled {
  color: var(--navy-400);
  background: var(--navy-100);
}

.metering-ack-fields textarea {
  resize: vertical;
  min-height: 82px;
}

.metering-ack-fields small {
  color: var(--navy-400);
  font: 700 10.5px / 1.35 Lato, sans-serif;
}

.metering-ack-note {
  grid-column: 1 / -1;
}

.metering-ack-preview-row {
  align-items: center;
  gap: 14px;
  min-height: 72px;
  padding: 14px;
  display: flex;
}

.metering-ack-money {
  border: 1px solid var(--primary-200);
  border-radius: var(--t360-radius-4);
  min-width: 250px;
  color: var(--primary-700);
  background: var(--primary-050);
  grid-template-columns: auto auto;
  align-items: baseline;
  gap: 3px 12px;
  padding: 11px 13px;
  display: grid;
}

.metering-ack-money span {
  letter-spacing: .03em;
  text-transform: uppercase;
  font: 900 10.5px / 1 Lato, sans-serif;
}

.metering-ack-money strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  justify-self: end;
  font: 900 20px / 1 Lato, sans-serif;
}

.metering-ack-money small {
  color: var(--navy-500);
  grid-column: 1 / -1;
  font: 700 10.5px / 1.2 Lato, sans-serif;
}

.metering-ack-step > .metering-evidence {
  box-shadow: none;
  margin: 14px;
}

.metering-ack-actions {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  justify-content: flex-end;
  align-items: center;
  gap: 14px;
  padding: 11px 12px;
  display: flex;
}

.metering-ack-actions > span {
  color: var(--navy-500);
  margin-right: auto;
  font: 700 11.5px / 1.35 Lato, sans-serif;
}

.metering-ack-receipt {
  border: 1px solid var(--success-500);
  border-radius: var(--t360-radius-4);
  color: var(--success-600);
  background: var(--success-100);
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  margin: 0 12px 12px;
  padding: 14px;
  display: grid;
}

.metering-ack-receipt > div {
  gap: 4px;
  display: grid;
}

.metering-ack-receipt span {
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 10.5px / 1 Lato, sans-serif;
}

.metering-ack-receipt h4 {
  color: var(--navy-800);
  margin: 0;
  font: 900 16px / 1.2 Lato, sans-serif;
}

.metering-ack-receipt dl {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 8px 0 0;
  display: grid;
}

.metering-ack-receipt dl > div {
  border-left: 2px solid var(--success-500);
  gap: 3px;
  padding-left: 9px;
  display: grid;
}

.metering-ack-receipt dt {
  color: var(--success-600);
  letter-spacing: .03em;
  text-transform: uppercase;
  font: 900 10px / 1 Lato, sans-serif;
}

.metering-ack-receipt dd {
  color: var(--navy-800);
  overflow-wrap: anywhere;
  margin: 0;
  font: 700 12px / 1.35 Lato, sans-serif;
}

@media (max-width: 1100px) {
  .metering-master-grid, .metering-mapping-grid {
    grid-template-columns: repeat(3, minmax(130px, 1fr));
  }

  .metering-reading-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .metering-ack-fields {
    grid-template-columns: 1fr 1fr;
  }

  .metering-ack-note {
    grid-column: 1 / -1;
  }

  .metering-ack-receipt dl {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 720px) {
  .metering-master-grid, .metering-mapping-grid, .metering-swap-grid, .metering-meter-decision, .metering-ack-fields, .metering-plausibility {
    grid-template-columns: 1fr;
  }

  .metering-toolbar, .metering-section-head, .metering-evidence-body, .metering-benign-route, .metering-ack-head, .metering-ack-preview-row, .metering-ack-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .metering-benign-route > .btn {
    justify-content: center;
  }

  .metering-evidence-body {
    flex-direction: column;
  }

  .metering-evidence-result {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .metering-evidence-result .btn {
    grid-column: 1 / -1;
    justify-content: center;
  }

  .metering-deviation-summary {
    align-items: flex-start;
  }

  .metering-case-identity {
    border-right: 0;
    border-bottom: 1px solid var(--border);
    padding-bottom: 12px;
    padding-right: 0;
  }

  .metering-ack-note {
    grid-column: auto;
  }

  .metering-ack-money {
    width: 100%;
    min-width: 0;
  }

  .metering-ack-actions > span {
    margin-right: 0;
  }

  .metering-ack-receipt dl {
    grid-template-columns: 1fr;
  }
}

.bank-screen {
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  display: flex;
}

.bank-screen--fill {
  height: 100%;
  min-height: 0;
}

.bank-toolbar, .bank-result-actions, .bank-run-actions, .bank-proposal-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  display: flex;
}

.bank-form-grid {
  grid-template-columns: 1.1fr 1.5fr 1fr 1.2fr auto;
  align-items: end;
  gap: 12px;
  display: grid;
}

.bank-form-grid label, .bank-run-form label, .bank-import-form label {
  color: var(--navy-500);
  gap: 5px;
  font: 700 11.5px / 1.2 Lato, sans-serif;
  display: grid;
}

.bank-form-grid input, .bank-run-form input, .bank-run-form select, .bank-import-form input, .bank-import-form select, .bank-proposal-search input {
  border: 1px solid var(--navy-200);
  min-width: 0;
  min-height: 36px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 7px 10px;
  font: 700 13px / 1.2 Lato, sans-serif;
}

.bank-form-grid input:focus, .bank-run-form input:focus, .bank-run-form select:focus, .bank-import-form input:focus, .bank-import-form select:focus, .bank-proposal-search input:focus {
  border-color: var(--primary-500);
  box-shadow: 0 0 0 3px var(--primary-t08);
}

.bank-form-grid input[readonly] {
  color: var(--navy-500);
  background: var(--navy-050);
}

.bank-message {
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 700;
}

.bank-message.ok {
  color: #0f8d46;
  background: var(--success-100);
}

.bank-message.err {
  color: #b11d1d;
  background: var(--danger-100);
}

.bank-panel-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 12px;
  display: flex;
}

.bank-panel-head h3 {
  align-items: center;
  gap: 7px;
  margin: 0;
  display: flex;
}

.bank-panel-head p {
  color: var(--navy-400);
  margin: 5px 0 0;
  font-size: 12px;
  line-height: 1.35;
}

.bank-run-form {
  grid-template-columns: 170px 190px minmax(260px, 1fr) auto;
  align-items: end;
  gap: 12px;
  display: grid;
}

.bank-run-actions {
  flex-wrap: nowrap;
}

.bank-kpis {
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 12px;
  display: grid;
}

.bank-kpis > div {
  border: 1px solid var(--border);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  border-radius: 10px;
  padding: 11px 14px;
}

.bank-kpis strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  font: 900 20px / 1.15 Lato, sans-serif;
  display: block;
}

.bank-kpis span {
  color: var(--navy-500);
  margin-top: 3px;
  font-size: 12px;
  display: block;
}

.bank-table-scroll {
  width: 100%;
  min-width: 0;
  overflow-x: auto;
}

.bank-payment-table {
  min-width: 1120px;
}

.bank-payment-table td, .bank-statement-lines td {
  vertical-align: top;
}

.bank-payment-table td > small, .bank-statement-lines td > small, .bank-proposal-panel td > small {
  color: var(--navy-400);
  margin-top: 3px;
  font-size: 10.5px;
  display: block;
}

.bank-payment-table code, .bank-statement-lines code, .bank-proposal-panel code {
  color: var(--navy-600);
  overflow-wrap: anywhere;
  font: 700 10.5px / 1.3 ui-monospace, Cascadia Mono, Consolas, monospace;
}

.bank-reasons {
  gap: 4px;
  display: grid;
}

.bank-reasons > span {
  color: var(--navy-600);
  gap: 2px;
  font-size: 11px;
  display: grid;
}

.bank-reasons code {
  color: var(--warning-text);
}

.bank-empty {
  height: 90px;
  color: var(--navy-400);
  text-align: center;
}

.miarun-sod.blocked {
  color: var(--danger-600);
}

.bank-import-form {
  grid-template-columns: minmax(240px, .8fr) minmax(280px, 1.2fr) auto;
  align-items: end;
  gap: 12px;
  display: grid;
}

.bank-import-form > small {
  color: var(--navy-400);
  grid-column: 1 / -1;
  font-size: 11px;
}

.bank-file-field input {
  padding: 5px 7px;
}

.bank-matcher-layout {
  grid-template-columns: minmax(0, 1fr) 330px;
  align-items: start;
  gap: 14px;
  display: grid;
}

.bank-matcher-main {
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  min-width: 0;
  display: grid;
}

.bank-statement-lines {
  min-width: 1120px;
}

.bank-statement-lines tr.selected td {
  background: var(--primary-050);
}

.bank-line-action {
  white-space: nowrap;
  min-height: 28px;
  padding: 5px 8px;
  font-size: 11px;
}

.bank-proposal-panel {
  padding: 14px 0 0;
  overflow: hidden;
}

.bank-proposal-panel > .bank-panel-head {
  padding: 0 16px;
}

.bank-proposal-search {
  gap: 8px;
  padding: 0 16px 12px;
  display: flex;
}

.bank-proposal-search label {
  border: 1px solid var(--navy-200);
  min-width: 220px;
  color: var(--navy-400);
  background: #fff;
  border-radius: 8px;
  flex: 1;
  align-items: center;
  padding-left: 10px;
  display: flex;
}

.bank-proposal-search label input {
  width: 100%;
  box-shadow: none;
  border: 0;
}

.bank-proposal-actions {
  flex-wrap: nowrap;
  justify-content: flex-start;
}

.bank-proposal-actions .btn {
  white-space: nowrap;
  min-height: 29px;
  padding: 5px 8px;
  font-size: 10.5px;
}

.bank-reconciliation-panel {
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 10px;
  position: sticky;
  top: 14px;
  overflow: hidden;
}

.bank-reconciliation-panel > .bank-panel-head {
  border-bottom: 1px solid var(--border);
  margin: 0;
  padding: 13px 14px;
}

.bank-icon-button {
  border: 1px solid var(--navy-200);
  width: 31px;
  height: 31px;
  color: var(--navy-500);
  cursor: pointer;
  background: #fff;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.bank-reconciliation-list {
  gap: 10px;
  padding: 12px;
  display: grid;
}

.bank-reconciliation-list article {
  border: 1px solid var(--navy-100);
  border-left: 4px solid var(--warning-500);
  background: var(--navy-050);
  border-radius: 8px;
  gap: 10px;
  padding: 11px;
  display: grid;
}

.bank-reconciliation-list article.ok {
  border-left-color: var(--success-500);
}

.bank-reconciliation-list article > div, .bank-reconciliation-list article > footer {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.bank-reconciliation-list article code {
  color: var(--navy-400);
  font-size: 10.5px;
}

.bank-reconciliation-list dl {
  grid-template-columns: 1fr 1fr;
  gap: 7px 12px;
  margin: 0;
  display: grid;
}

.bank-reconciliation-list dl > div {
  gap: 2px;
  display: grid;
}

.bank-reconciliation-list dt {
  color: var(--navy-400);
  font-size: 10.5px;
}

.bank-reconciliation-list dd {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  margin: 0;
  font: 700 12.5px / 1.2 Lato, sans-serif;
}

.bank-reconciliation-list footer small {
  color: var(--navy-400);
  text-align: right;
  font-size: 10.5px;
}

.bank-reconciliation-blocking {
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.bank-reconciliation-blocking li {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-500);
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 7px;
  padding-top: 6px;
  font-size: 10.5px;
  display: grid;
}

.bank-reconciliation-blocking li > span:first-child {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.bank-reconciliation-blocking strong {
  color: var(--navy-700);
  font-variant-numeric: tabular-nums;
}

.bank-modal-backdrop {
  z-index: 1000;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  background: #08142d8c;
  place-items: center;
  padding: 24px;
  display: grid;
  position: fixed;
  inset: 0;
}

.bank-document-modal {
  background: #fff;
  border-radius: 8px;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  width: min(920px, 96vw);
  height: min(760px, 92vh);
  display: grid;
  overflow: hidden;
  box-shadow: 0 24px 70px #07153052;
}

.bank-document-modal > header, .bank-document-modal > footer {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  display: flex;
}

.bank-document-modal > footer {
  border-top: 1px solid var(--border);
  border-bottom: 0;
  justify-content: flex-end;
}

.bank-document-modal header h2 {
  color: var(--navy-800);
  align-items: center;
  gap: 8px;
  font: 900 17px / 1.2 Lato, sans-serif;
  display: flex;
}

.bank-document-modal header p {
  color: var(--navy-400);
  margin: 4px 0 0;
  font-size: 11.5px;
}

.bank-modal-close {
  border: 1px solid var(--navy-200);
  width: 32px;
  height: 32px;
  color: var(--navy-500);
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.bank-document-meta {
  color: var(--navy-500);
  background: var(--navy-050);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 8px 16px;
  font-size: 11.5px;
  display: flex;
}

.bank-document-meta code {
  font-size: 10.5px;
}

.bank-document-body {
  background: #eef2f7;
  min-height: 0;
  padding: 16px;
  overflow: auto;
}

.bank-document-body pre {
  border: 1px solid var(--border);
  min-height: 100%;
  color: var(--navy-800);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  background: #fff;
  border-radius: 8px;
  margin: 0;
  padding: 14px;
  font: 12px / 1.5 ui-monospace, Cascadia Mono, Consolas, monospace;
}

.bank-document-body object {
  background: #fff;
  border: 0;
  width: 100%;
  height: 100%;
  min-height: 520px;
}

.bank-document-body img {
  object-fit: contain;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
  display: block;
}

.bank-ar-worklist-label {
  color: var(--primary-700);
  white-space: nowrap;
  align-items: center;
  gap: 5px;
  font: 800 11px / 1.25 Lato, sans-serif;
  display: inline-flex;
}

.bank-result-actions .btn.btn-secondary {
  color: var(--primary-700);
  border-color: var(--primary-200);
  background: var(--primary-050);
}

.bank-result-actions .btn.btn-secondary:hover {
  border-color: var(--primary-500);
  background: var(--primary-100);
}

.bank-klaerfall-screen {
  gap: var(--t360-space-4);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.bank-klaerfall-heading {
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--t360-space-5);
  display: flex;
}

.bank-klaerfall-heading h2 {
  color: var(--navy-heading);
  margin-top: 4px;
  font: 900 24px / 1.15 Lato, sans-serif;
}

.bank-klaerfall-heading p {
  max-width: 760px;
  color: var(--navy-500);
  margin-top: 5px;
  font-size: 12.5px;
  line-height: 1.45;
}

.bank-klaerfall-eyebrow {
  color: var(--primary-600);
  letter-spacing: .07em;
  text-transform: uppercase;
  align-items: center;
  gap: 6px;
  font: 900 10.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.bank-klaerfall-heading .bank-icon-button {
  background: var(--surface);
  width: 36px;
  height: 36px;
}

.bank-klaerfall-heading .spin {
  animation: .9s linear infinite bank-klaerfall-spin;
}

@keyframes bank-klaerfall-spin {
  to {
    transform: rotate(360deg);
  }
}

.bank-klaerfall-kpis {
  gap: var(--t360-space-4);
  grid-template-columns: repeat(4, minmax(140px, 1fr));
  display: grid;
}

.bank-klaerfall-kpis article {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  min-width: 0;
  color: var(--primary-600);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  align-items: center;
  gap: 11px;
  padding: 11px 13px;
  display: flex;
}

.bank-klaerfall-kpis article:nth-child(3) {
  color: var(--secondary-600);
}

.bank-klaerfall-kpis article:nth-child(4) {
  color: var(--warning-700);
}

.bank-klaerfall-kpis article > div {
  gap: 2px;
  display: grid;
}

.bank-klaerfall-kpis strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  font: 900 20px / 1 Lato, sans-serif;
}

.bank-klaerfall-kpis span {
  color: var(--navy-500);
  font: 700 10.5px / 1.2 Lato, sans-serif;
}

.bank-klaerfall-board {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  min-height: 620px;
  box-shadow: var(--shadow-sm);
  grid-template-columns: 380px minmax(0, 1fr);
  align-items: start;
  display: grid;
  overflow: hidden;
}

.bank-klaerfall-panel {
  background: var(--surface);
  min-width: 0;
}

.bank-klaerfall-list-panel {
  border-right: 1px solid var(--border);
  background: var(--navy-050);
  align-self: stretch;
}

.bank-klaerfall-panel-head {
  border-bottom: 1px solid var(--border);
  background: var(--surface);
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  padding: 14px 15px 12px;
  display: flex;
}

.bank-klaerfall-panel-head h3 {
  color: var(--navy-800);
  font: 900 14px / 1.2 Lato, sans-serif;
}

.bank-klaerfall-panel-head p {
  color: var(--navy-400);
  margin-top: 3px;
  font-size: 10.5px;
}

.bank-klaerfall-list {
  align-content: start;
  max-height: 760px;
  display: grid;
  overflow-y: auto;
}

.bank-klaerfall-list-row {
  border: 0;
  border-bottom: 1px solid var(--border);
  width: 100%;
  color: inherit;
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  grid-template-columns: 4px minmax(0, 1fr);
  gap: 0;
  padding: 0;
  display: grid;
  position: relative;
}

.bank-klaerfall-list-row:hover {
  background: var(--navy-050);
}

.bank-klaerfall-list-row.selected {
  background: var(--primary-050);
  box-shadow: inset 0 0 0 1px var(--primary-200);
}

.bank-klaerfall-stripe {
  background: var(--warning-500);
  display: block;
}

.bank-klaerfall-stripe.ar {
  background: var(--primary-500);
}

.bank-klaerfall-stripe.ap {
  background: var(--secondary-600);
}

.bank-klaerfall-stripe.cleared {
  background: var(--success-500);
}

.bank-klaerfall-list-body {
  gap: 6px;
  min-width: 0;
  padding: 11px 12px;
  display: grid;
}

.bank-klaerfall-list-top {
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.bank-klaerfall-list-top strong {
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 900 12.5px / 1.2 Lato, sans-serif;
  overflow: hidden;
}

.bank-klaerfall-list-top b {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  flex: none;
  font: 900 13px / 1 Lato, sans-serif;
}

.bank-klaerfall-list-meta {
  min-width: 0;
  color: var(--navy-500);
  gap: 2px;
  font-size: 10.5px;
  display: grid;
}

.bank-klaerfall-list-meta span:last-child {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.bank-klaerfall-list-chips {
  align-items: center;
  gap: 5px;
  display: flex;
}

.bank-klaerfall-list-chips .chip.violet, .bank-klaerfall-detail-head .chip.violet {
  color: var(--secondary-600);
  background: var(--secondary-050);
}

.bank-klaerfall-age {
  color: var(--navy-400);
  align-items: center;
  gap: 3px;
  margin-left: auto;
  font: 800 10.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.bank-klaerfall-empty {
  color: var(--navy-400);
  text-align: center;
  padding: 42px 16px;
}

.bank-klaerfall-detail {
  padding: 0 18px 16px;
}

.bank-klaerfall-detail-head {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  margin: 0 -18px;
  padding: 14px 18px 13px;
  display: flex;
}

.bank-klaerfall-detail-head > div {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.bank-klaerfall-detail-head h3 {
  color: var(--navy-900);
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 900 18px / 1.2 Lato, sans-serif;
  overflow: hidden;
}

.bank-klaerfall-detail-head p {
  color: var(--navy-400);
  font-size: 10.5px;
}

.bank-klaerfall-detail-head > strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  flex: none;
  font: 900 23px / 1 Lato, sans-serif;
}

.bank-klaerfall-facts, .bank-klaerfall-section {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  margin-top: 14px;
  overflow: hidden;
}

.bank-klaerfall-section-title {
  border-bottom: 1px solid var(--border);
  min-height: 36px;
  color: var(--primary-600);
  background: var(--navy-050);
  align-items: center;
  gap: 7px;
  padding: 8px 11px;
  display: flex;
}

.bank-klaerfall-section-title h4 {
  color: var(--navy-800);
  margin: 0;
  font: 900 11.5px / 1.2 Lato, sans-serif;
}

.bank-klaerfall-section-title span {
  color: var(--navy-400);
  letter-spacing: .03em;
  text-transform: uppercase;
  margin-left: auto;
  font: 800 9.5px / 1 Lato, sans-serif;
}

.bank-klaerfall-facts dl {
  grid-template-columns: 1fr 1.1fr;
  margin: 0;
  display: grid;
}

.bank-klaerfall-facts dl > div {
  border-top: 1px solid var(--navy-100);
  gap: 4px;
  min-width: 0;
  padding: 10px 11px;
  display: grid;
}

.bank-klaerfall-facts dl > div:nth-child(odd) {
  border-right: 1px solid var(--navy-100);
}

.bank-klaerfall-facts dt, .bank-klaerfall-proposal-summary span, .bank-klaerfall-context span {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 9.5px / 1.1 Lato, sans-serif;
}

.bank-klaerfall-facts dd {
  min-width: 0;
  color: var(--navy-700);
  overflow-wrap: anywhere;
  margin: 0;
  font: 800 11px / 1.35 Lato, sans-serif;
}

.bank-klaerfall-facts dd small {
  color: var(--navy-400);
  margin-top: 2px;
  font-weight: 700;
  display: block;
}

.bank-klaerfall-facts code {
  font: 700 10.5px / 1.3 ui-monospace, Cascadia Mono, Consolas, monospace;
}

.bank-klaerfall-context {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--navy-050);
  grid-template-columns: 1.35fr 1fr 1fr;
  margin-top: 12px;
  display: grid;
}

.bank-klaerfall-context > div {
  border-right: 1px solid var(--border);
  gap: 4px;
  min-width: 0;
  padding: 10px 11px;
  display: grid;
}

.bank-klaerfall-context > div:last-child {
  border-right: 0;
}

.bank-klaerfall-context strong {
  color: var(--navy-800);
  overflow-wrap: anywhere;
  font: 900 11.5px / 1.3 Lato, sans-serif;
}

.bank-klaerfall-context small {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  font-size: 10px;
}

.bank-klaerfall-verdict {
  border-left: 4px solid var(--warning-500);
  border-radius: var(--t360-radius-4);
  color: var(--warning-700);
  background: var(--warning-100);
  align-items: flex-start;
  gap: 9px;
  margin-top: 12px;
  padding: 10px 12px;
  display: flex;
}

.bank-klaerfall-verdict > div {
  gap: 2px;
  display: grid;
}

.bank-klaerfall-verdict strong {
  color: var(--navy-800);
  font: 900 11.5px / 1.3 Lato, sans-serif;
}

.bank-klaerfall-verdict span {
  color: var(--warning-text);
  font-size: 10.5px;
  line-height: 1.35;
}

.bank-klaerfall-candidate-groups {
  gap: 8px;
  padding: 9px;
  display: grid;
}

.bank-klaerfall-candidate-groups > details {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  overflow: hidden;
}

.bank-klaerfall-candidate-groups summary {
  background: var(--primary-050);
  cursor: pointer;
  border-bottom: 1px solid #0000;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  list-style: none;
  display: flex;
}

.bank-klaerfall-candidate-groups summary::-webkit-details-marker {
  display: none;
}

.bank-klaerfall-candidate-groups details[open] summary {
  border-bottom-color: var(--navy-100);
}

.bank-klaerfall-candidate-groups summary:before {
  content: "›";
  color: var(--primary-600);
  flex: none;
  font: 900 18px / 1 Lato, sans-serif;
  transform: rotate(0);
}

.bank-klaerfall-candidate-groups details[open] summary:before {
  transform: rotate(90deg);
}

.bank-klaerfall-candidate-groups summary > div {
  flex: 1;
  gap: 2px;
  display: grid;
}

.bank-klaerfall-candidate-groups summary > div span {
  color: var(--primary-700);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 9px / 1 Lato, sans-serif;
}

.bank-klaerfall-candidate-groups summary strong {
  color: var(--navy-800);
  overflow-wrap: anywhere;
  font: 900 11.5px / 1.25 Lato, sans-serif;
}

.bank-klaerfall-group-figures {
  color: var(--navy-800);
  text-align: right;
  flex: none;
  gap: 2px;
  display: grid;
}

.bank-klaerfall-group-figures b {
  font-variant-numeric: tabular-nums;
  font: 900 11.5px / 1.2 Lato, sans-serif;
}

.bank-klaerfall-group-figures small {
  color: var(--navy-400);
  font: 700 9.5px / 1.1 Lato, sans-serif;
}

.bank-klaerfall-member-list {
  display: grid;
}

.bank-klaerfall-member-list > article, .bank-klaerfall-member-list > div {
  border-top: 1px solid var(--navy-100);
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  padding: 8px 10px;
  display: flex;
}

.bank-klaerfall-member-list > :first-child {
  border-top: 0;
}

.bank-klaerfall-member-list > article > span, .bank-klaerfall-member-list > div > span {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.bank-klaerfall-member-list > article > span:last-child, .bank-klaerfall-member-list > div > span:last-child {
  text-align: right;
  flex: none;
}

.bank-klaerfall-member-list strong {
  color: var(--navy-700);
  font-variant-numeric: tabular-nums;
  font: 800 10.5px / 1.3 Lato, sans-serif;
}

.bank-klaerfall-member-list small {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  font-size: 9.5px;
  line-height: 1.25;
}

.bank-klaerfall-proposal {
  border-color: var(--primary-200);
}

.bank-klaerfall-proposal .bank-klaerfall-section-title {
  background: var(--primary-050);
}

.bank-klaerfall-proposal-summary {
  border-bottom: 1px solid var(--navy-100);
  grid-template-columns: 1.3fr repeat(3, 1fr);
  display: grid;
}

.bank-klaerfall-proposal-summary > div {
  border-right: 1px solid var(--navy-100);
  gap: 4px;
  padding: 9px 10px;
  display: grid;
}

.bank-klaerfall-proposal-summary > div:last-child {
  border-right: 0;
}

.bank-klaerfall-proposal-summary strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  font: 900 11.5px / 1.25 Lato, sans-serif;
}

.bank-klaerfall-proposal-meta {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-400);
  padding: 7px 10px;
  font-size: 9.5px;
}

.bank-klaerfall-history {
  display: grid;
}

.bank-klaerfall-history article {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  display: grid;
}

.bank-klaerfall-history article:first-child {
  border-top: 0;
}

.bank-klaerfall-history article > div {
  gap: 2px;
  display: grid;
}

.bank-klaerfall-history article > div:last-child {
  text-align: right;
}

.bank-klaerfall-history strong {
  color: var(--navy-700);
  font: 800 10.5px / 1.25 Lato, sans-serif;
}

.bank-klaerfall-history small {
  color: var(--navy-400);
  font-size: 9.5px;
}

.bank-klaerfall-readonly-foot {
  border-top: 1px solid var(--border);
  color: var(--navy-400);
  text-align: center;
  justify-content: center;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  padding-top: 12px;
  font-size: 10.5px;
  display: flex;
}

.bank-klaerfall-detail-empty {
  color: var(--navy-300);
  text-align: center;
  justify-items: center;
  gap: 8px;
  padding: 80px 20px;
  display: grid;
}

.bank-klaerfall-readonly {
  gap: 7px;
  margin-top: 12px;
  display: grid;
}

.bank-klaerfall-readonly:empty {
  display: none;
}

.bank-klaerfall-readonly-statement {
  border: 1px dashed var(--navy-200);
  border-radius: var(--t360-radius-4);
  color: var(--navy-400);
  background: var(--navy-050);
  align-items: flex-start;
  gap: 9px;
  padding: 9px 11px;
  display: flex;
}

.bank-klaerfall-readonly-statement > svg {
  color: var(--navy-400);
  flex: none;
  margin-top: 1px;
}

.bank-klaerfall-readonly-statement > div {
  gap: 3px;
  display: grid;
}

.bank-klaerfall-readonly-statement strong {
  color: var(--navy-700);
  font: 900 10.5px / 1.25 Lato, sans-serif;
}

.bank-klaerfall-readonly-statement p {
  color: var(--navy-500);
  margin: 0;
  font-size: 10px;
  line-height: 1.4;
}

.bank-klaerfall-actions {
  border: 1px solid var(--primary-200);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  margin-top: 14px;
  overflow: hidden;
}

.bank-klaerfall-actions > .bank-klaerfall-section-title {
  background: var(--primary-050);
}

.bank-klaerfall-actions-body {
  gap: 9px;
  padding: 11px;
  display: grid;
}

.bank-klaerfall-action {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-4);
  width: 100%;
  min-height: 54px;
  color: var(--navy-800);
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 10px 12px;
  display: flex;
}

.bank-klaerfall-action:hover {
  border-color: var(--primary-300);
  background: var(--navy-050);
}

.bank-klaerfall-action:focus-visible {
  outline: 2px solid var(--primary-500);
  outline-offset: 2px;
}

.bank-klaerfall-action > span {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.bank-klaerfall-action > span strong {
  color: inherit;
  font: 900 11.5px / 1.25 Lato, sans-serif;
}

.bank-klaerfall-action > span small {
  color: var(--navy-500);
  font-size: 10.5px;
  line-height: 1.35;
}

.bank-klaerfall-action > b {
  color: inherit;
  flex: none;
  display: inline-flex;
}

.bank-klaerfall-action.primary {
  border-color: var(--primary-500);
  color: #fff;
  background: var(--primary-500);
}

.bank-klaerfall-action.primary:hover {
  border-color: var(--primary-600);
  background: var(--primary-600);
}

.bank-klaerfall-action.primary > span small {
  color: #ffffffd6;
}

.bank-klaerfall-action.danger {
  border-color: var(--danger-500);
  color: var(--danger-600);
  background: var(--danger-100);
}

.bank-klaerfall-action.danger:hover {
  border-color: var(--danger-600);
  background: var(--danger-100);
}

.bank-klaerfall-action:disabled {
  border-color: var(--navy-150);
  color: var(--navy-300);
  background: var(--navy-100);
  cursor: not-allowed;
  opacity: 1;
}

.bank-klaerfall-action:disabled > span small {
  color: var(--navy-300);
}

.bank-klaerfall-rejection-form {
  border-top: 1px solid var(--navy-100);
  gap: 6px;
  padding-top: 9px;
  display: grid;
}

.bank-klaerfall-rejection-form label {
  color: var(--navy-600);
  font: 900 10px / 1.2 Lato, sans-serif;
}

.bank-klaerfall-rejection-form textarea {
  resize: vertical;
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 68px;
  color: var(--navy-800);
  background: var(--surface);
  border-radius: 4px;
  padding: 8px 9px;
  font: 400 11px / 1.4 Lato, sans-serif;
}

.bank-klaerfall-rejection-form textarea:focus {
  border-color: var(--primary-500);
  outline: 2px solid var(--primary-100);
}

.bank-klaerfall-rejection-form > small {
  color: var(--warning-700);
  font-size: 9.5px;
}

.bank-klaerfall-resolution-note {
  border: 1px dashed var(--warning-500);
  border-radius: var(--t360-radius-4);
  color: var(--warning-text);
  background: var(--warning-100);
  align-items: flex-start;
  gap: 7px;
  margin: 0;
  padding: 9px 10px;
  font-size: 10.5px;
  line-height: 1.4;
  display: flex;
}

.bank-klaerfall-resolution-note svg {
  flex: none;
  margin-top: 1px;
}

.bank-klaerfall-action-error {
  border-left: 3px solid var(--danger-500);
  color: var(--danger-600);
  background: var(--danger-100);
  margin: 0;
  padding: 7px 9px;
  font-size: 10.5px;
}

@media (max-width: 1150px) {
  .bank-form-grid {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }

  .bank-run-form {
    grid-template-columns: repeat(2, minmax(200px, 1fr));
  }

  .bank-matcher-layout {
    grid-template-columns: 1fr;
  }

  .bank-reconciliation-panel {
    position: static;
  }

  .bank-klaerfall-board {
    grid-template-columns: 330px minmax(0, 1fr);
  }
}

@media (max-width: 720px) {
  .bank-form-grid, .bank-run-form, .bank-import-form, .bank-kpis {
    grid-template-columns: 1fr;
  }

  .bank-import-form > small {
    grid-column: auto;
  }

  .bank-run-actions, .bank-result-actions {
    justify-content: stretch;
  }

  .bank-run-actions .btn, .bank-result-actions .btn {
    flex: 1;
  }

  .bank-modal-backdrop {
    padding: 8px;
  }

  .bank-document-modal {
    width: 100%;
    height: 96vh;
  }

  .bank-klaerfall-kpis, .bank-klaerfall-board, .bank-klaerfall-context {
    grid-template-columns: 1fr;
  }

  .bank-klaerfall-list-panel {
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }

  .bank-klaerfall-list {
    max-height: 360px;
  }

  .bank-klaerfall-context > div {
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }

  .bank-klaerfall-context > div:last-child {
    border-bottom: 0;
  }

  .bank-klaerfall-proposal-summary {
    grid-template-columns: 1fr 1fr;
  }
}

.global-search {
  position: relative;
}

.global-search-results {
  z-index: 300;
  border: 1px solid var(--navy-200);
  background: #fff;
  border-radius: 10px;
  position: absolute;
  top: calc(100% + 7px);
  left: 0;
  right: 0;
  overflow: hidden;
  box-shadow: 0 16px 40px #0a1c402e;
}

.global-search-results section + section {
  border-top: 1px solid var(--navy-100);
}

.global-search-results h4 {
  color: var(--navy-500);
  background: var(--navy-050);
  text-transform: uppercase;
  letter-spacing: .05em;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 8px 11px;
  font-size: 11px;
  display: flex;
}

.global-search-results button {
  border: 0;
  border-top: 1px solid var(--navy-050);
  width: 100%;
  color: var(--navy-800);
  cursor: pointer;
  text-align: left;
  background: #fff;
  justify-content: space-between;
  align-items: center;
  padding: 9px 11px;
  display: flex;
}

.global-search-results button:hover {
  background: var(--primary-050);
}

.global-search-results code {
  color: var(--navy-500);
}

.global-search-results p {
  color: var(--navy-400);
  margin: 0;
  padding: 12px;
}

.debtor-console {
  gap: 14px;
  display: grid;
}

.debtor-list-controls {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 12px;
  display: flex;
}

.debtor-list-controls > label {
  color: var(--navy-500);
  gap: 5px;
  font-size: 11px;
  display: grid;
}

.debtor-list-controls select, .debtor-search {
  border: 1px solid var(--navy-200);
  background: #fff;
  border-radius: 4px;
  min-height: 38px;
}

.debtor-list-controls select {
  min-width: 190px;
  color: var(--navy-700);
  padding: 8px 10px;
}

.debtor-search {
  min-width: 260px;
  color: var(--navy-400);
  flex: 1;
  align-items: center;
  padding: 0 10px;
  display: flex !important;
}

.debtor-search input {
  background: none;
  border: 0;
  outline: 0;
  width: 100%;
  padding: 8px;
}

.debtor-filter-chips {
  gap: 6px;
  display: flex;
}

.debtor-filter-chips .chip {
  cursor: pointer;
  min-height: 34px;
}

.debtor-list-panel {
  overflow: hidden;
}

.debtor-list-panel tbody tr {
  cursor: pointer;
}

.debtor-list-panel tbody tr:hover td {
  background: var(--primary-050);
}

.debtor-row-link, .lease-debtor-link {
  color: var(--primary-700);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 5px;
  padding: 0;
  font-weight: 700;
  display: inline-flex;
}

.debtor-credit {
  color: #087d5b;
  font-weight: 900;
}

.debtor-status.settled {
  color: var(--success-600);
  background: var(--success-100);
}

.debtor-status.open {
  color: var(--primary-700);
  background: var(--primary-100);
}

.debtor-status.overdue {
  color: var(--danger-600);
  background: var(--danger-100);
}

.debtor-status.credit {
  color: #087d5b;
  background: #daf7ed;
}

.debtor-pagination {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-500);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 13px;
  font-size: 12px;
  display: flex;
}

.debtor-pagination > div {
  align-items: center;
  gap: 8px;
  display: flex;
}

.debtor-leases .pdm-panel-head {
  padding: 12px 14px 0;
}

.debtor-leases .pdm-panel-head h3 {
  color: var(--primary-500);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.debtor-lease-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 9px;
  padding: 12px;
  display: grid;
}

.debtor-lease-grid > div {
  border: 1px solid var(--navy-100);
  background: var(--navy-050);
  border-radius: 8px;
  gap: 3px;
  padding: 10px;
  display: grid;
}

.debtor-lease-grid span, .debtor-lease-grid small {
  color: var(--navy-500);
}

.debtor-aging {
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 8px;
  display: grid;
}

.debtor-aging > div {
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 9px;
  gap: 4px;
  padding: 10px 12px;
  display: grid;
}

.debtor-aging span {
  color: var(--navy-500);
  font-size: 11px;
}

.debtor-aging strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
}

.debtor-statement-title {
  color: var(--primary-500);
  align-items: center;
  gap: 14px;
  font: 700 16px / 1.2 Lato, sans-serif;
  display: flex;
}

.debtor-statement-title:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  min-width: 24px;
  height: 1px;
}

.debtor-statement-controls {
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  display: flex;
}

.debtor-statement-controls .pdm-field {
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.debtor-statement-controls .pdm-field-label-row {
  white-space: nowrap;
  flex-shrink: 0;
}

.tgv2-table tbody tr.tgv2-row-tone.debtor-opening td, .tgv2-table tbody tr.tgv2-row-tone.debtor-closing td {
  background: var(--navy-050);
}

.tgv2-table tbody tr.tgv2-row-tone.debtor-opening:hover td, .tgv2-table tbody tr.tgv2-row-tone.debtor-closing:hover td {
  background: var(--navy-100);
}

.tgv2-table tbody tr.tgv2-row-tone.debtor-closing td {
  border-top: 2px solid var(--navy-300);
}

.debtor-statement-panel {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.lease-debtor-detail .lease-debtor-link {
  align-self: start;
}

@media (max-width: 900px) {
  .debtor-statement-head {
    display: grid;
  }

  .debtor-balance {
    border-top: 1px solid var(--navy-200);
    border-left: 0;
    justify-items: start;
    padding: 14px 0 0;
  }

  .debtor-aging {
    grid-template-columns: repeat(2, 1fr);
  }
}

.opening-balance-console {
  gap: 14px;
  display: grid;
}

.opening-balance-layout {
  grid-template-columns: minmax(0, 1fr) 340px;
  align-items: start;
  gap: 14px;
  display: grid;
}

.opening-balance-input {
  min-width: 0;
  overflow: hidden;
}

.opening-balance-side {
  gap: 14px;
  min-width: 0;
  display: grid;
  position: sticky;
  top: 14px;
}

.opening-balance-context {
  grid-template-columns: minmax(220px, 1fr) minmax(180px, .55fr);
  gap: 12px;
  padding: 0 14px 13px;
  display: grid;
}

.opening-balance-context label, .opening-balance-paste label {
  color: var(--navy-500);
  gap: 5px;
  font-size: 11px;
  display: grid;
}

.opening-balance-context select, .opening-balance-context input, .opening-balance-side select, .opening-balance-grid select, .opening-balance-grid input, .opening-balance-paste textarea {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 36px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  padding: 7px 9px;
}

.opening-balance-grid input:disabled, .opening-balance-grid select:disabled {
  color: var(--navy-400);
  background: var(--navy-050);
}

.opening-balance-source-tabs {
  border: 1px solid var(--navy-200);
  border-radius: 8px;
  margin: 0 14px;
  display: flex;
  overflow: hidden;
}

.opening-balance-source-tabs button {
  min-height: 36px;
  color: var(--navy-600);
  cursor: pointer;
  background: #fff;
  border: 0;
  flex: 1;
}

.opening-balance-source-tabs button + button {
  border-left: 1px solid var(--navy-200);
}

.opening-balance-source-tabs button.active {
  color: var(--primary-700);
  background: var(--primary-050);
  font-weight: 700;
}

.opening-balance-upload, .opening-balance-paste {
  border: 1px dashed var(--navy-200);
  background: var(--navy-050);
  border-radius: 8px;
  gap: 10px;
  margin: 12px 14px;
  padding: 12px;
  display: grid;
}

.opening-balance-upload > div {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.opening-balance-upload p, .opening-balance-paste small {
  color: var(--navy-500);
  font-size: 11px;
}

.opening-balance-paste textarea {
  resize: vertical;
  min-height: 74px;
  font-family: ui-monospace, Cascadia Mono, Consolas, monospace;
}

.opening-balance-paste .btn {
  justify-self: start;
}

.opening-balance-hash {
  gap: 3px;
  margin: 0;
  display: grid;
}

.opening-balance-hash dt {
  color: var(--navy-500);
  font-size: 10.5px;
}

.opening-balance-hash dd {
  overflow-wrap: anywhere;
  color: var(--navy-700);
  margin: 0;
  font: 10.5px / 1.4 ui-monospace, Cascadia Mono, Consolas, monospace;
}

.opening-balance-errors {
  border: 1px solid var(--danger-500);
  color: var(--danger-600);
  background: var(--danger-100);
  border-radius: 8px;
  gap: 7px;
  margin: 0 14px 12px;
  padding: 10px 12px;
  display: grid;
}

.opening-balance-errors strong {
  align-items: center;
  gap: 6px;
  display: flex;
}

.opening-balance-errors ul {
  gap: 4px;
  margin: 0;
  padding-left: 19px;
  font-size: 11.5px;
  display: grid;
}

.opening-balance-grid-scroll {
  max-width: 100%;
  overflow: auto;
}

.opening-balance-grid-scroll table, .opening-balance-grid {
  border-collapse: collapse;
  width: 100%;
}

.opening-balance-grid {
  min-width: 910px;
}

.opening-balance-grid th, .opening-balance-grid td, .opening-balance-preview th, .opening-balance-preview td, .opening-balance-tieout th, .opening-balance-tieout td {
  border-top: 1px solid var(--navy-100);
  text-align: left;
  padding: 7px 8px;
}

.opening-balance-grid th, .opening-balance-preview th, .opening-balance-tieout th {
  color: var(--navy-500);
  background: var(--navy-050);
  white-space: nowrap;
  font-size: 10.5px;
}

.opening-balance-grid td {
  padding: 5px;
}

.opening-balance-grid .icon-button {
  border: 1px solid var(--navy-200);
  width: 32px;
  height: 32px;
  color: var(--danger-600);
  cursor: pointer;
  background: #fff;
  border-radius: 7px;
}

.opening-balance-grid-actions {
  border-top: 1px solid var(--navy-100);
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  display: flex;
}

.opening-balance-side > .bka-panel {
  gap: 12px;
  padding-bottom: 14px;
  display: grid;
  overflow: hidden;
}

.opening-balance-side > .bka-panel > select, .opening-balance-side > .bka-panel > p, .opening-balance-side > .bka-panel > dl, .opening-balance-side > .bka-panel > strong, .opening-balance-side > .bka-panel > details, .opening-balance-side > .bka-panel > div:not(.bka-panel-head) {
  margin-left: 14px;
  margin-right: 14px;
}

.opening-balance-side > .bka-panel > p {
  color: var(--navy-500);
}

.opening-balance-run-facts {
  gap: 7px;
  margin-top: 0;
  margin-bottom: 0;
  display: grid;
}

.opening-balance-run-facts > div {
  justify-content: space-between;
  gap: 10px;
  display: flex;
}

.opening-balance-run-facts dt {
  color: var(--navy-500);
}

.opening-balance-run-facts dd {
  color: var(--navy-800);
  text-align: right;
  overflow-wrap: anywhere;
  margin: 0;
  font-weight: 700;
}

.opening-balance-four-eyes {
  border: 1px solid var(--primary-200);
  background: var(--primary-050);
  border-radius: 8px;
  align-items: flex-start;
  gap: 7px;
  padding: 9px;
  font-size: 11.5px;
  display: flex;
  color: var(--primary-700) !important;
}

.opening-balance-four-eyes svg {
  flex: none;
}

.opening-balance-run-actions {
  gap: 8px;
  display: flex;
}

.opening-balance-run-actions .btn {
  flex: 1;
}

.opening-balance-tieout {
  border-left: 4px solid var(--danger-500);
}

.opening-balance-tieout.ok {
  border-left-color: var(--success-500);
}

.opening-balance-tieout > strong {
  color: var(--danger-600);
}

.opening-balance-tieout.ok > strong {
  color: var(--success-600);
}

.opening-balance-tieout > dl {
  gap: 7px;
  margin-top: 0;
  margin-bottom: 0;
  display: grid;
}

.opening-balance-tieout > dl > div {
  justify-content: space-between;
  gap: 10px;
  display: flex;
}

.opening-balance-tieout dt {
  color: var(--navy-500);
}

.opening-balance-tieout dd {
  font-variant-numeric: tabular-nums;
  margin: 0;
  font-weight: 700;
}

.opening-balance-tieout .opening-balance-residual {
  color: var(--danger-600);
  background: var(--danger-100);
  border-radius: 7px;
  margin-top: 4px;
  padding: 10px;
  font-size: 13px;
}

.opening-balance-tieout.ok .opening-balance-residual {
  color: var(--success-600);
  background: var(--success-100);
}

.opening-balance-tieout summary {
  color: var(--primary-700);
  cursor: pointer;
  font-weight: 700;
}

.opening-balance-tieout details .opening-balance-grid-scroll {
  border: 1px solid var(--navy-100);
  border-radius: 7px;
  margin-top: 8px;
}

.opening-balance-tieout table {
  min-width: 430px;
  font-size: 10.5px;
}

.opening-balance-preview {
  overflow: hidden;
}

.opening-balance-preview table {
  min-width: 860px;
}

.opening-balance-preview .right {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.opening-balance-controls, .opening-balance-out-of-scope {
  border: 1px solid var(--navy-200);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 10px;
  gap: 9px;
  padding: 14px 16px;
  display: grid;
}

.opening-balance-controls h3, .opening-balance-out-of-scope h3 {
  color: var(--navy-800);
}

.opening-balance-controls p {
  color: var(--navy-600);
  align-items: flex-start;
  gap: 7px;
  display: flex;
}

.opening-balance-controls p svg {
  color: var(--success-600);
  flex: none;
}

.opening-balance-out-of-scope {
  border-left: 4px solid var(--warning-500);
  background: var(--warning-100);
}

.opening-balance-out-of-scope p, .opening-balance-out-of-scope li {
  color: var(--warning-text);
}

.opening-balance-out-of-scope ul {
  gap: 5px;
  margin: 0;
  padding-left: 20px;
  display: grid;
}

@media (max-width: 1150px) {
  .opening-balance-layout {
    grid-template-columns: 1fr;
  }

  .opening-balance-side {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    position: static;
  }
}

@media (max-width: 720px) {
  .opening-balance-context, .opening-balance-side {
    grid-template-columns: 1fr;
  }

  .opening-balance-grid-actions, .opening-balance-run-actions {
    flex-direction: column;
  }

  .opening-balance-grid-actions .btn {
    width: 100%;
  }
}

.trial-balance-console {
  gap: 13px;
  display: grid;
}

.trial-balance-toolbar {
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  display: flex;
}

.trial-balance-toolbar h2 {
  color: var(--navy-900);
  margin: 5px 0 3px;
  font: 900 21px / 1.15 Lato, sans-serif;
}

.trial-balance-toolbar p {
  color: var(--navy-500);
}

.trial-balance-eyebrow {
  color: var(--primary-700);
  text-transform: uppercase;
  letter-spacing: .04em;
  align-items: center;
  gap: 6px;
  font: 900 10.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.trial-balance-exports {
  gap: 8px;
  display: flex;
}

.trial-balance-filters {
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 9px;
  grid-template-columns: 105px 145px 145px minmax(220px, 1fr) minmax(220px, 1fr) auto;
  align-items: end;
  gap: 10px;
  padding: 12px;
  display: grid;
}

.trial-balance-filters label {
  min-width: 0;
  color: var(--navy-500);
  gap: 5px;
  font: 700 11px / 1 Lato, sans-serif;
  display: grid;
}

.trial-balance-filters input, .trial-balance-filters select {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-width: 0;
  height: 35px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 0 9px;
}

.trial-balance-variants {
  border: 1px solid var(--navy-200);
  background: #fff;
  border-radius: 8px;
  justify-self: start;
  display: inline-flex;
  overflow: hidden;
}

.trial-balance-variants button {
  min-width: 120px;
  height: 35px;
  color: var(--navy-600);
  cursor: pointer;
  background: #fff;
  border: 0;
  padding: 0 16px;
  font-weight: 700;
}

.trial-balance-variants button + button {
  border-left: 1px solid var(--navy-200);
}

.trial-balance-variants button.active {
  color: var(--primary-700);
  background: var(--primary-050);
}

.trial-balance-message, .trial-balance-loading {
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 11px 13px;
  font-weight: 700;
  display: flex;
}

.trial-balance-message.error {
  color: var(--danger-600);
  background: var(--danger-100);
}

.trial-balance-loading {
  color: var(--navy-500);
  background: var(--navy-100);
}

.trial-balance-check {
  border: 2px solid;
  border-radius: 9px;
  grid-template-columns: auto minmax(260px, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 11px 13px;
  display: grid;
}

.trial-balance-check.ok {
  color: var(--success-600);
  border-color: var(--success-500);
  background: var(--success-100);
}

.trial-balance-check.error {
  color: var(--danger-600);
  border-color: var(--danger-500);
  background: var(--danger-100);
}

.trial-balance-check > svg {
  align-self: start;
}

.trial-balance-check strong, .trial-balance-check span {
  display: block;
}

.trial-balance-check span {
  color: var(--navy-600);
  margin-top: 3px;
  font-size: 11.5px;
}

.trial-balance-check dl {
  gap: 20px;
  margin: 0;
  display: flex;
}

.trial-balance-check dl > div {
  text-align: right;
  gap: 3px;
  display: grid;
}

.trial-balance-check dt {
  color: var(--navy-500);
  font-size: 10px;
}

.trial-balance-check dd {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  margin: 0;
  font-weight: 900;
}

.trial-balance-basis {
  grid-template-columns: minmax(260px, .8fr) minmax(360px, 1.2fr);
  gap: 10px;
  display: grid;
}

.trial-balance-basis p {
  border: 1px solid var(--navy-200);
  color: var(--navy-600);
  background: #fff;
  border-radius: 8px;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  line-height: 1.4;
  display: flex;
}

.trial-balance-basis p:first-child svg {
  color: var(--success-600);
}

.trial-balance-basis p:last-child svg {
  color: var(--warning-600);
  flex: none;
}

.trial-balance-table-card {
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 9px;
  overflow: hidden;
}

.trial-balance-table-scroll {
  max-height: calc(100vh - 445px);
  overflow: auto;
}

.trial-balance-table-card table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  min-width: 900px;
}

.trial-balance-table-card th {
  z-index: 2;
  color: var(--navy-500);
  background: var(--navy-100);
  border-bottom: 1px solid var(--navy-200);
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 10px 12px;
  font-size: 10.5px;
  position: sticky;
  top: 0;
}

.trial-balance-table-card td {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-800);
  padding: 9px 12px;
}

.trial-balance-table-card tbody tr:nth-child(2n) td {
  background: var(--navy-050);
}

.trial-balance-table-card .right {
  text-align: right;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.trial-balance-table-card .account {
  font-variant-numeric: tabular-nums;
  font-weight: 900;
}

.trial-balance-table-card .closing {
  font-weight: 900;
}

.trial-balance-table-card .empty {
  height: 90px;
  color: var(--navy-400);
  text-align: center;
}

.trial-balance-table-card tfoot td {
  border-top: 2px solid var(--navy-700);
  color: var(--navy-900);
  background: var(--primary-050);
  border-bottom: 0;
  font-weight: 900;
  position: sticky;
  bottom: 0;
}

@media (max-width: 1250px) {
  .trial-balance-filters {
    grid-template-columns: repeat(3, minmax(140px, 1fr));
  }

  .trial-balance-filters .btn {
    width: 100%;
  }

  .trial-balance-check {
    grid-template-columns: auto 1fr;
  }

  .trial-balance-check dl {
    grid-column: 2;
    justify-content: flex-start;
  }

  .trial-balance-check dl > div {
    text-align: left;
  }
}

@media (max-width: 760px) {
  .trial-balance-toolbar, .trial-balance-exports {
    flex-direction: column;
    align-items: stretch;
  }

  .trial-balance-filters, .trial-balance-basis {
    grid-template-columns: 1fr;
  }

  .trial-balance-variants {
    width: 100%;
  }

  .trial-balance-variants button {
    flex: 1;
    min-width: 0;
    padding: 0 8px;
  }

  .trial-balance-check {
    grid-template-columns: auto 1fr;
  }

  .trial-balance-check dl {
    flex-direction: column;
    gap: 7px;
  }
}

.statement-console {
  gap: 13px;
  display: grid;
}

.statement-toolbar {
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  display: flex;
}

.statement-toolbar h2 {
  color: var(--navy-900);
  margin: 5px 0 3px;
  font: 900 21px / 1.15 Lato, sans-serif;
}

.statement-toolbar p {
  color: var(--navy-500);
}

.statement-eyebrow {
  color: var(--primary-700);
  text-transform: uppercase;
  letter-spacing: .04em;
  align-items: center;
  gap: 6px;
  font: 900 10.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.statement-filters {
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 9px;
  grid-template-columns: minmax(250px, auto) 145px 145px minmax(260px, 1fr) auto;
  align-items: end;
  gap: 10px;
  padding: 12px;
  display: grid;
}

.statement-filters > label {
  min-width: 0;
  color: var(--navy-500);
  gap: 5px;
  font: 700 11px / 1 Lato, sans-serif;
  display: grid;
}

.statement-filters input, .statement-filters select {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-width: 0;
  height: 35px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 0 9px;
}

.statement-kind {
  border: 1px solid var(--navy-200);
  background: #fff;
  border-radius: 7px;
  height: 35px;
  display: inline-flex;
  overflow: hidden;
}

.statement-kind button {
  min-width: 105px;
  color: var(--navy-600);
  cursor: pointer;
  background: #fff;
  border: 0;
  padding: 0 13px;
  font-weight: 700;
}

.statement-kind button + button {
  border-left: 1px solid var(--navy-200);
}

.statement-kind button.active {
  color: var(--primary-700);
  background: var(--primary-050);
}

.statement-message, .statement-loading {
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 11px 13px;
  font-weight: 700;
  display: flex;
}

.statement-message.error {
  color: var(--danger-600);
  background: var(--danger-100);
}

.statement-loading {
  color: var(--navy-500);
  background: var(--navy-100);
}

.statement-document {
  gap: 16px;
  width: min(100%, 960px);
  margin: 4px auto 36px;
  display: grid;
}

.statement-heading {
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  padding: 12px 2px 0;
  display: flex;
}

.statement-heading h2 {
  color: var(--navy-900);
  margin: 6px 0 4px;
  font: 900 19px / 1.2 Lato, sans-serif;
}

.statement-heading > div > p:last-child {
  color: var(--navy-500);
  font-size: 12px;
}

.statement-kicker {
  letter-spacing: .05em;
  text-transform: uppercase;
  font: 900 10.5px / 1 Lato, sans-serif;
  color: var(--primary-700) !important;
}

.statement-validity {
  border-radius: var(--pill);
  white-space: nowrap;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 4px 10px;
  font-weight: 900;
  display: inline-flex;
}

.statement-validity.ok {
  color: var(--success-600);
  background: var(--success-100);
}

.statement-validity.error {
  color: var(--danger-600);
  background: var(--danger-100);
}

.statement-card {
  border: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
}

.statement-meta {
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: 13px 24px;
  margin: 0;
  padding: 15px 18px;
  display: grid;
}

.statement-meta dt {
  color: var(--navy-400);
  letter-spacing: .06em;
  text-transform: uppercase;
  margin: 0 0 5px;
  font: 900 10px / 1 Lato, sans-serif;
}

.statement-meta dd {
  color: var(--navy-800);
  margin: 0;
  font-weight: 900;
}

.statement-card > h3 {
  border-bottom: 1px solid var(--border);
  color: var(--navy-800);
  letter-spacing: .06em;
  text-transform: uppercase;
  margin: 0;
  padding: 14px 18px;
  font: 900 13px / 1 Lato, sans-serif;
}

.statement-table-scroll {
  overflow-x: auto;
}

.statement-card table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  min-width: 680px;
}

.statement-value-column {
  width: 170px;
}

.statement-card th, .statement-card td {
  vertical-align: baseline;
  padding: 6px 18px;
}

.statement-card thead th {
  border-bottom: 1px solid var(--border);
  color: var(--navy-400);
  background: var(--navy-050);
  text-align: left;
  letter-spacing: .05em;
  text-transform: uppercase;
  font: 900 10px / 1.35 Lato, sans-serif;
}

.statement-card thead th span {
  margin-top: 2px;
  display: block;
}

.statement-card .statement-amount {
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums lining-nums;
}

.statement-line > td:first-child, .statement-account > td:first-child {
  padding-left: calc(18px + var(--statement-depth, 0) * 17px);
}

.statement-line.depth-0 > td:first-child {
  padding-top: 13px;
  font-weight: 900;
}

.statement-line.depth-1 > td:first-child {
  font-weight: 700;
}

.statement-line.subtotal > td {
  border-top: 1px solid var(--navy-150);
  padding-top: 8px;
  padding-bottom: 8px;
  font-weight: 900;
}

.statement-line.subtotal:first-child > td {
  border-top: 0;
}

.statement-line.result > td {
  border-top: 1px solid var(--navy-700);
  padding-top: 9px;
  padding-bottom: 9px;
  font-weight: 900;
}

.statement-line.total > td {
  border-top: 2px solid var(--navy-800);
  color: var(--navy-900);
  background: var(--navy-050);
  padding-top: 10px;
  padding-bottom: 10px;
  font-weight: 900;
}

.statement-line.disclosure > td {
  color: var(--navy-400);
  font-size: 11.5px;
  font-style: italic;
}

.statement-account > td {
  color: var(--navy-500);
  background: var(--navy-050);
  padding-top: 4px;
  padding-bottom: 4px;
  font-size: 11.5px;
}

.statement-account > td:first-child:before {
  content: "—";
  color: var(--navy-200);
  margin-right: 7px;
}

.statement-tie {
  border: 1px solid var(--primary-200);
  color: var(--navy-700);
  background: var(--primary-050);
  font-variant-numeric: tabular-nums;
  border-radius: 10px;
  flex-wrap: wrap;
  gap: 5px 12px;
  padding: 14px 18px;
  display: flex;
}

.statement-tie strong {
  color: var(--primary-700);
}

.statement-tie.error {
  border-color: var(--danger-500);
  color: var(--danger-600);
  background: var(--danger-100);
}

@media (max-width: 1150px) {
  .statement-filters {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }

  .statement-filters .btn {
    width: 100%;
  }
}

@media (max-width: 720px) {
  .statement-toolbar, .statement-heading {
    flex-direction: column;
    align-items: stretch;
  }

  .statement-filters {
    grid-template-columns: 1fr;
  }

  .statement-kind {
    width: 100%;
  }

  .statement-kind button {
    flex: 1;
    min-width: 0;
  }
}

.sr-only {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}

.moduleActions .ar-scope-select {
  color: var(--navy-800);
  align-items: center;
  gap: 10px;
  margin-left: auto;
  padding-left: 14px;
  font-size: 14px;
  font-weight: 700;
  display: flex;
}

.ar-scope-select select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  min-width: 235px;
  min-height: 38px;
  color: var(--navy-800);
  background: var(--surface);
  outline: 0;
  padding: 7px 32px 7px 10px;
  font-size: 13px;
  font-weight: 500;
}

.ar-scope-select select:focus {
  border-color: var(--primary-500);
  box-shadow: 0 0 0 2px var(--primary-t16);
}

.opos-console {
  gap: 12px;
  position: relative;
}

.opos-toolbar {
  justify-content: space-between;
  align-items: flex-end;
  gap: 18px;
  display: flex;
}

.opos-toolbar.opos-toolbar--plain {
  align-items: center;
}

.opos-subtitle {
  color: var(--navy-500);
  font-size: 12px;
  font-weight: 600;
}

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

.opos-mode-toggle {
  border: 1px solid var(--navy-200);
  min-height: 36px;
  color: var(--navy-600);
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  font-weight: 700;
  display: inline-flex;
}

.opos-mode-toggle.active {
  border-color: var(--primary-500);
  color: var(--primary-700);
  background: var(--primary-050);
}

.opos-toggle-track {
  border-radius: var(--pill);
  background: var(--navy-200);
  width: 28px;
  height: 16px;
  padding: 2px;
  transition: all .15s;
}

.opos-toggle-track span {
  width: 12px;
  height: 12px;
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 50%;
  transition: all .15s;
  display: block;
}

.opos-mode-toggle.active .opos-toggle-track {
  background: var(--primary-600);
}

.opos-mode-toggle.active .opos-toggle-track span {
  transform: translateX(12px);
}

.opos-reconciliation-warning button {
  color: inherit;
  cursor: pointer;
  font: inherit;
  background: none;
  border: 0;
  border-bottom: 1px solid;
  padding: 0;
}

.opos-reconciliation-warning {
  border: 1px solid var(--warning-500);
  border-left: 4px solid var(--warning-600);
  width: 100%;
  color: var(--warning-text);
  background: var(--warning-100);
  border-radius: 8px;
  align-items: flex-start;
  gap: 9px;
  padding: 10px 12px;
  display: flex;
}

.opos-reconciliation-warning > svg {
  flex: none;
}

.opos-reconciliation-warning div {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 9px;
  display: flex;
}

.opos-reconciliation-warning p {
  flex-basis: 100%;
  font-size: 11.5px;
}

.opos-scope-prompt, .opos-state {
  border: 1px solid var(--navy-200);
  min-height: 210px;
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  padding: 24px;
  display: flex;
}

.opos-scope-prompt > div {
  max-width: 570px;
}

.opos-scope-prompt strong {
  color: var(--navy-900);
  font-size: 17px;
}

.opos-scope-prompt p {
  color: var(--navy-500);
  margin-top: 5px;
  line-height: 1.45;
}

.opos-scope-prompt .ar-scope-select {
  color: var(--navy-500);
  gap: 5px;
  font-size: 11px;
  font-weight: 900;
  display: grid;
}

.opos-state {
  color: var(--navy-600);
  text-align: center;
  flex-direction: column;
}

.opos-state.opos-error > svg {
  color: var(--danger-600);
}

.opos-debtor-cell strong {
  color: var(--navy-900);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12.5px;
  font-weight: 700;
  display: block;
  overflow: hidden;
}

.opos-debtor-cell > span {
  color: var(--navy-400);
  margin-top: 3px;
  font-size: 11px;
  font-weight: 700;
  display: block;
}

.opos-age-pill {
  border-radius: var(--pill);
  min-height: 19px;
  color: var(--navy-600);
  background: var(--navy-100);
  white-space: nowrap;
  border: 0;
  align-items: center;
  padding: 3px 7px;
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  display: inline-flex;
}

button.opos-age-pill {
  cursor: pointer;
}

.opos-age-pill.warning {
  color: var(--warning-text);
  background: var(--warning-100);
}

.opos-age-pill.danger {
  color: var(--danger-600);
  background: var(--danger-100);
}

.opos-bucket-cell {
  color: var(--navy-700);
  font-weight: 700;
}

.opos-bucket-cell.warning-soft {
  color: var(--warning-text);
  background: color-mix(in srgb, var(--warning-100) 45%, white);
}

.opos-bucket-cell.warning {
  color: var(--warning-text);
  background: var(--warning-100);
}

.opos-bucket-cell.danger-soft {
  color: var(--danger-600);
  background: color-mix(in srgb, var(--danger-100) 58%, white);
}

.opos-bucket-cell.danger {
  color: var(--danger-600);
  background: var(--danger-100);
}

.opos-bucket-cell.zero {
  color: var(--navy-400);
  background: #fff;
  font-weight: 700;
}

.opos-total-cell {
  font-weight: 900;
  color: var(--navy-900) !important;
}

.opos-skeleton {
  border-radius: var(--pill);
  background: var(--navy-150);
  width: 64%;
  height: 12px;
  animation: 1.25s ease-in-out infinite opos-pulse;
  display: block;
}

.opos-skeleton.wide {
  width: 88%;
}

@keyframes opos-pulse {
  0%, 100% {
    opacity: .45;
  }

  50% {
    opacity: 1;
  }
}

.opos-voucher {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font-weight: 900;
}

.opos-debtor-sheet {
  top: var(--content-top, calc(var(--topbar-h) + 86px));
  z-index: 95;
  border-left: 1px solid var(--navy-200);
  background: #fff;
  flex-direction: column;
  width: min(60vw, 920px);
  min-width: 640px;
  animation: .18s ease-out opos-sheet-in;
  display: flex;
  position: fixed;
  bottom: 0;
  right: 0;
  box-shadow: -12px 0 35px #0a1c4029;
}

@keyframes opos-sheet-in {
  from {
    opacity: .65;
    transform: translateX(24px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.opos-debtor-sheet--narrow {
  width: min(38vw, 520px);
  min-width: 420px;
}

.opos-sheet-header {
  border-bottom: 1px solid var(--navy-150);
  flex: none;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 16px 18px 14px;
  display: flex;
}

.opos-sheet-header--flush {
  border-bottom: 0;
  padding-bottom: 0;
}

.opos-sheet-header > div {
  flex: 1;
  min-width: 0;
}

.opos-sheet-header span {
  color: var(--navy-500);
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: 10.5px;
  font-weight: 900;
}

.opos-sheet-header h2 {
  color: var(--navy-900);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 3px;
  font: 900 21px / 1.2 Lato, sans-serif;
  overflow: hidden;
}

.opos-sheet-header .opos-sheet-title, .vat-drawer-head .opos-sheet-title {
  color: var(--primary-500);
  align-items: center;
  gap: 14px;
  margin-top: 3px;
  font: 700 16px / 1.2 Lato, sans-serif;
  display: flex;
}

.opos-sheet-header .opos-sheet-title:after, .vat-drawer-head .opos-sheet-title:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  min-width: 24px;
  height: 1px;
}

.opos-sheet-header .opos-sheet-subject, .vat-drawer-head .opos-sheet-subject {
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 3px;
  font: 700 15px / 1.3 Lato, sans-serif;
  overflow: hidden;
}

.opos-sheet-header p {
  color: var(--navy-500);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 4px;
  font-size: 11.5px;
  overflow: hidden;
}

.opos-sheet-close {
  border: 1px solid var(--navy-200);
  width: 34px;
  height: 34px;
  color: var(--navy-600);
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  flex: none;
  place-items: center;
  display: grid;
}

.opos-sheet-kpis {
  border-bottom: 1px solid var(--navy-150);
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  display: flex;
}

.opos-sheet-kpis .pdm-kpi-cards {
  flex-shrink: 0;
  margin-right: 0;
}

.opos-sheet-kpis .opos-sheet-asset-card {
  flex-shrink: 1;
  min-width: 0;
  max-width: 320px;
  margin-left: 0;
  padding: 10px 16px;
}

.opos-sheet-kpis .opos-sheet-asset-card .pdm-asset-card-copy {
  min-width: 0;
}

.opos-sheet-kpis .opos-sheet-asset-card .pdm-asset-card-copy .opos-asset-number {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.opos-sheet-kpis .opos-sheet-asset-card .opos-asset-name {
  outline: none;
  min-width: 0;
  display: block;
  position: relative;
}

.opos-sheet-kpis .opos-sheet-asset-card .opos-asset-name strong {
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden;
}

.opos-asset-name-tip {
  z-index: 20;
  background: var(--navy-800);
  color: #fff;
  white-space: normal;
  max-width: 280px;
  box-shadow: var(--shadow);
  opacity: 0;
  pointer-events: none;
  border-radius: 6px;
  padding: 8px 10px;
  font: 500 11.5px / 1.4 Lato, sans-serif;
  transition: opacity .12s, transform .12s;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  transform: translateY(-4px);
}

.opos-asset-name:hover .opos-asset-name-tip, .opos-asset-name:focus .opos-asset-name-tip, .opos-asset-name:focus-within .opos-asset-name-tip {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.opos-sheet-close:hover {
  color: var(--navy-900);
  background: var(--navy-100);
}

.opos-sheet-scroll {
  flex: auto;
  min-height: 0;
  padding: 14px 18px 20px;
  overflow-y: auto;
}

.opos-sheet-scroll--fill {
  flex-direction: column;
  display: flex;
  overflow: hidden;
}

.opos-sheet-scroll--fill .opos-aging-chips {
  flex-shrink: 0;
  margin-bottom: 14px;
}

.opos-sheet-scroll--fill .opos-sheet-actions {
  flex-shrink: 0;
}

.opos-aging-chips {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 5px;
  display: grid;
}

.opos-aging-chips button {
  border: 1px solid var(--navy-150);
  min-width: 0;
  color: var(--navy-600);
  background: var(--navy-050);
  cursor: pointer;
  text-align: left;
  border-radius: 8px;
  gap: 4px;
  padding: 8px 7px;
  display: grid;
}

.opos-aging-chips button span {
  white-space: nowrap;
  font-size: 9.5px;
  font-weight: 900;
}

.opos-aging-chips button strong {
  text-overflow: ellipsis;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font-size: 10.5px;
  overflow: hidden;
}

.opos-aging-chips button.warning-soft, .opos-aging-chips button.warning {
  color: var(--warning-text);
  background: var(--warning-100);
}

.opos-aging-chips button.danger-soft, .opos-aging-chips button.danger {
  color: var(--danger-600);
  background: var(--danger-100);
}

.opos-aging-chips button.active {
  border-color: currentColor;
  box-shadow: inset 0 0 0 1px;
}

.opos-context-tiles {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
  display: grid;
}

.opos-context-tiles article {
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 9px;
  align-content: center;
  gap: 4px;
  min-height: 82px;
  padding: 11px 12px;
  display: grid;
}

.opos-context-tiles article > span:first-child {
  color: var(--navy-500);
  font-size: 10.5px;
  font-weight: 700;
}

.opos-context-tiles strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  font-size: 17px;
}

.opos-context-tiles small {
  color: var(--navy-500);
  font-weight: 700;
}

.opos-context-tiles article.danger {
  border-color: var(--danger-500);
  background: var(--danger-100);
}

.opos-context-tiles article.danger strong {
  color: var(--danger-600);
}

.opos-sheet-actions {
  flex-wrap: wrap;
  gap: 7px;
  margin: 12px 0;
  display: flex;
}

.opos-sheet-footer {
  border-top: 1px solid var(--navy-200);
  min-height: 58px;
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  background: #fff;
  flex: none;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 18px;
  display: flex;
  box-shadow: 0 -6px 16px #0a1c400f;
}

.opos-sheet-footer-actions {
  align-items: center;
  gap: 8px;
  display: flex;
}

.opos-sheet-footer--end {
  justify-content: flex-end;
}

@media (max-width: 1180px) {
  .opos-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .opos-toolbar-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 900px) {
  .subtabs {
    flex-wrap: wrap;
  }

  .moduleActions .ar-scope-select {
    width: 100%;
    margin-left: 0;
    padding: 6px 0 8px;
  }

  .moduleActions .ar-scope-select select {
    flex: 1;
  }

  .opos-debtor-sheet {
    width: 92vw;
    min-width: 0;
  }

  .opos-aging-chips {
    grid-template-columns: repeat(3, 1fr);
  }
}

.recon-table {
  font-variant-numeric: tabular-nums;
}

.recon-table td {
  padding: 8px 12px;
}

.recon-amount {
  text-align: right;
  white-space: nowrap;
}

.recon-empty {
  color: var(--navy-400);
  font-style: italic;
}

.recon-subtotal td {
  border-top: 1px solid var(--border);
  color: var(--navy-700);
  font-weight: 700;
}

.recon-subtotal + .recon-subtotal td {
  border-top: 0;
}

.recon-difference td {
  border-top: 2px solid var(--navy-800);
  background: var(--navy-050);
  font-weight: 900;
}

.recon-difference.ok td {
  color: var(--success-600);
}

.recon-difference.warn td {
  color: var(--warning-text);
  background: var(--warning-100);
}

.recon-summary {
  cursor: pointer;
}

.recon-summary.empty {
  cursor: default;
  color: var(--navy-400);
}

.recon-summary:hover:not(.empty) td {
  background: var(--primary-t08);
}

.recon-summary.open td {
  background: var(--primary-t08);
  box-shadow: inset 3px 0 0 var(--primary-600);
  font-weight: 700;
}

.recon-toggle {
  width: 2rem;
  color: var(--navy-400);
}

.recon-muted {
  color: var(--navy-400);
}

.recon-ok {
  color: var(--success-600);
  font-weight: 700;
}

.recon-warn {
  color: var(--warning-text);
  font-weight: 700;
}

.recon-detail-row > td {
  background: var(--navy-050);
  padding: 0 12px 12px 0;
}

.recon-nested {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 8px;
}

.recon-nested td {
  padding: 7px 12px;
}

.rr-console {
  gap: 12px;
  min-width: 0;
  display: grid;
}

.rr-toolbar {
  justify-content: space-between;
  align-items: flex-end;
  gap: 18px;
  padding: 3px 2px 0;
  display: flex;
}

.rr-toolbar h2 {
  color: var(--navy-900);
  margin: 5px 0 3px;
  font: 900 21px / 1.15 Lato, sans-serif;
}

.rr-toolbar p {
  color: var(--navy-500);
  font-size: 11.5px;
}

.rr-kicker {
  color: var(--primary-700);
  letter-spacing: .04em;
  text-transform: uppercase;
  align-items: center;
  gap: 6px;
  font-size: 10.5px;
  font-weight: 900;
  display: inline-flex;
}

.rr-title-row {
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.rr-back {
  border: 1px solid var(--navy-200);
  width: 34px;
  height: 34px;
  color: var(--navy-600);
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  flex: none;
  place-items: center;
  margin-top: 2px;
  display: grid;
}

.rr-back:hover {
  color: var(--primary-700);
  border-color: var(--primary-300);
  background: var(--primary-050);
}

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

.rr-message {
  border: 1px solid;
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 700;
}

.rr-message.ok {
  border-color: var(--success-500);
  color: var(--success-600);
  background: var(--success-100);
}

.rr-message.err {
  border-color: var(--danger-500);
  color: var(--danger-600);
  background: var(--danger-100);
}

.rr-kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  display: grid;
}

.rr-kpi {
  border: 1px solid var(--navy-150);
  min-height: 70px;
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 9px;
  align-content: center;
  gap: 4px;
  padding: 11px 14px;
  display: grid;
}

.rr-kpi strong {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  font: 900 22px / 1 Lato, sans-serif;
}

.rr-kpi span {
  color: var(--navy-500);
  letter-spacing: .045em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.rr-panel, .rr-copy-panel {
  border: 1px solid var(--navy-150);
  min-width: 0;
  box-shadow: var(--shadow-sm);
  background: #fff;
  border-radius: 9px;
  overflow: hidden;
}

.rr-panel-head {
  border-bottom: 1px solid var(--navy-150);
  background: var(--navy-050);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 45px;
  padding: 8px 12px;
  display: flex;
}

.rr-panel-head h3 {
  color: var(--navy-800);
  letter-spacing: .035em;
  text-transform: uppercase;
  align-items: center;
  gap: 8px;
  font: 900 12px / 1.2 Lato, sans-serif;
  display: flex;
}

.rr-panel-head h3 > span {
  color: #fff;
  background: var(--primary-600);
  border-radius: 50%;
  place-items: center;
  width: 22px;
  height: 22px;
  font-size: 10px;
  display: grid;
}

.rr-form-grid {
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: 12px;
  padding: 14px;
  display: grid;
}

.rr-form-grid label, .rr-copy-panel label, .rr-preview-form label {
  color: var(--navy-500);
  gap: 5px;
  font-size: 10px;
  font-weight: 900;
  display: grid;
}

.rr-form-grid input, .rr-form-grid select, .rr-copy-panel input, .rr-copy-panel select, .rr-preview-form input, .rr-preview-form select, .rr-edit-table input, .rr-edit-table select {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-width: 90px;
  height: 32px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  padding: 0 8px;
  font: 700 11.5px / 1 Lato, sans-serif;
}

.rr-form-grid input:focus, .rr-form-grid select:focus, .rr-copy-panel input:focus, .rr-preview-form input:focus, .rr-edit-table input:focus, .rr-edit-table select:focus {
  border-color: var(--primary-500);
  box-shadow: 0 0 0 2px var(--primary-t16);
}

.rr-form-grid input:disabled, .rr-form-grid select:disabled, .rr-edit-table input:disabled, .rr-edit-table select:disabled {
  color: var(--navy-500);
  background: var(--navy-050);
}

.rr-form-grid .rr-wide {
  grid-column: span 2;
}

.rr-form-grid .rr-check, .rr-copy-panel .rr-check {
  align-self: end;
  align-items: center;
  gap: 7px;
  min-height: 32px;
  display: flex;
}

.rr-check input {
  width: 15px;
  min-width: 15px;
  height: 15px;
  accent-color: var(--primary-600);
}

.rr-lock-note {
  border: 1px solid var(--warning-500);
  border-left: 4px solid var(--warning-600);
  color: var(--warning-text);
  background: var(--warning-100);
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  display: flex;
}

.rr-lock-note > div {
  gap: 2px;
  display: grid;
}

.rr-lock-note span {
  font-size: 11px;
}

.rr-lock-note b {
  white-space: nowrap;
  margin-left: auto;
}

.rr-copy-panel {
  border-color: var(--primary-300);
  background: var(--primary-050);
  grid-template-columns: 1.2fr repeat(4, minmax(130px, 1fr)) auto;
  align-items: end;
  gap: 10px;
  padding: 13px;
  display: grid;
}

.rr-copy-panel h3 {
  color: var(--primary-800);
  align-items: center;
  gap: 7px;
  font-size: 13px;
  display: flex;
}

.rr-copy-panel p {
  color: var(--navy-500);
  margin-top: 4px;
  font-size: 10.5px;
}

.rr-table-scroll {
  overflow-x: auto;
}

.rr-edit-table {
  border-collapse: separate;
  border-spacing: 0;
  table-layout: auto;
  width: 100%;
  min-width: 920px;
}

.rr-edit-table th {
  color: var(--navy-500);
  background: var(--navy-050);
  text-align: left;
  letter-spacing: .035em;
  text-transform: uppercase;
  white-space: nowrap;
  padding: 8px 7px;
  font-size: 9px;
  font-weight: 900;
}

.rr-edit-table td {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-700);
  padding: 6px 5px;
}

.rr-edit-table tbody tr:hover td {
  background: color-mix(in srgb, var(--primary-050) 55%, white);
}

.rr-structure-table {
  min-width: 1160px;
}

.rr-remove {
  width: 28px;
  height: 28px;
  color: var(--danger-600);
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 6px;
  place-items: center;
  display: grid;
}

.rr-remove:hover:not(:disabled) {
  border-color: var(--danger-500);
  background: var(--danger-100);
}

.rr-remove:disabled {
  color: var(--navy-300);
  cursor: default;
}

.rr-two-column {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 12px;
  display: grid;
}

.rr-two-column .rr-edit-table {
  min-width: 650px;
}

.rr-muted {
  color: var(--navy-400);
  font-size: 11px;
}

.rr-preview-body {
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, .8fr);
  gap: 14px;
  padding: 14px;
  display: grid;
}

.rr-preview-body > div:first-child > p {
  color: var(--navy-500);
  font-size: 11.5px;
  line-height: 1.45;
}

.rr-preview-form {
  grid-template-columns: minmax(240px, 1fr) 170px auto;
  align-items: end;
  gap: 10px;
  margin-top: 12px;
  display: grid;
}

.rr-preview-result {
  border: 1px solid var(--navy-150);
  min-height: 110px;
  color: var(--navy-600);
  background: var(--navy-050);
  border-radius: 8px;
  grid-template-columns: auto 1fr;
  align-content: center;
  gap: 5px 9px;
  padding: 12px;
  display: grid;
}

.rr-preview-result > svg {
  grid-row: 1 / span 3;
}

.rr-preview-result.empty {
  align-items: center;
}

.rr-preview-result.success {
  border-color: var(--success-500);
  color: var(--success-600);
  background: var(--success-100);
}

.rr-preview-result.blocked {
  border-color: var(--danger-500);
  color: var(--danger-600);
  background: var(--danger-100);
}

.rr-preview-result code {
  width: max-content;
  color: inherit;
  background: #ffffff8c;
  border-radius: 4px;
  padding: 3px 5px;
  font-size: 9px;
}

.rr-preview-result dl {
  grid-column: 2;
  gap: 5px;
  margin: 4px 0 0;
  display: grid;
}

.rr-preview-result dl div {
  justify-content: space-between;
  gap: 10px;
  display: flex;
}

.rr-preview-result dt {
  font-size: 10px;
  font-weight: 700;
}

.rr-preview-result dd {
  white-space: nowrap;
  margin: 0;
  font-size: 11px;
  font-weight: 900;
}

@media (max-width: 1250px) {
  .rr-form-grid, .rr-copy-panel {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
  }

  .rr-copy-panel > div:first-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .rr-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .rr-actions {
    justify-content: flex-start;
  }

  .rr-kpis, .rr-form-grid, .rr-two-column, .rr-preview-body, .rr-preview-form {
    grid-template-columns: 1fr;
  }

  .rr-form-grid .rr-wide {
    grid-column: auto;
  }
}

.mia-index-screen {
  gap: 16px;
  display: grid;
}

.md-screen.mia-index-screen.md-screen--fill {
  flex-direction: column;
  height: 100%;
  min-height: 0;
  display: flex;
}

.mia-index-card, .mia-index-values-card, .mia-index-gap-card {
  border: 1px solid var(--line, #dfe5ea);
  background: var(--surface, #fff);
  border-radius: 12px;
  box-shadow: 0 1px 2px #1018280d;
}

.mia-index-gap-card {
  flex-shrink: 0;
  gap: 16px;
  padding: 20px;
  display: grid;
}

.mia-index-values-tab {
  flex-direction: column;
  flex: 1;
  gap: 16px;
  min-height: 0;
  display: flex;
}

.mia-index-values-card {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.mia-index-values-card .mia-index-value-form {
  flex-shrink: 0;
}

.mia-index-feed-tab {
  flex-direction: column;
  flex: 1;
  gap: 16px;
  min-height: 0;
  display: flex;
}

.mia-index-feed-grid {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.mia-index-feed-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 14px;
  display: flex;
}

.mia-index-feed-selected {
  color: #475467;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 650;
}

.mia-index-section-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  display: flex;
}

.mia-index-section-head h3 {
  color: #17324d;
  margin: 4px 0;
}

.mia-index-section-head p {
  color: #667085;
  margin: 0;
  font-size: 13px;
}

.mia-index-feed-meta {
  color: #475467;
  background: #f5f9fb;
  border: 1px solid #d7e5ec;
  border-radius: 8px;
  flex-wrap: wrap;
  gap: 8px 18px;
  padding: 11px 13px;
  font-size: 12px;
  display: flex;
}

.mia-index-feed-empty {
  color: #667085;
  text-align: center;
  border: 1px dashed #cfd8e3;
  border-radius: 8px;
  padding: 18px;
}

.mia-index-feed-error {
  color: #b42318;
  background: #fef3f2;
  border: 1px solid #fda29b;
  border-radius: 8px;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  font-size: 12px;
  display: flex;
}

.mia-index-feed-error svg {
  flex: none;
}

.mia-index-stage-status {
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 750;
  display: inline-flex;
}

.mia-index-stage-status.proposed {
  color: #175cd3;
  background: #eff8ff;
}

.mia-index-stage-status.noop {
  color: #475467;
  background: #f2f4f7;
}

.mia-index-stage-status.conflict {
  color: #b42318;
  background: #fef3f2;
}

.mia-index-stage-status.applied {
  color: #067647;
  background: #ecfdf3;
}

.mia-index-stage-conflict {
  color: #b42318;
  white-space: normal;
  align-items: flex-start;
  gap: 6px;
  font-size: 12px;
  line-height: 1.4;
  display: inline-flex;
}

.mia-index-stage-conflict svg {
  flex: none;
  margin-top: 1px;
}

.mia-index-stage-conflict > span {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.mia-index-stage-conflict small {
  color: #7a271a;
  font-size: 11px;
}

.mia-index-gap-card .has-gaps, .mia-index-gap-card .complete {
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 12px;
}

.mia-index-gap-card .has-gaps {
  color: #b54708;
  background: #fffaeb;
}

.mia-index-gap-card .complete {
  color: #067647;
  background: #ecfdf3;
}

.mia-index-gap-list {
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.mia-index-gap-list li {
  color: #93370d;
  font-variant-numeric: tabular-nums;
  background: #fffaeb;
  border: 1px solid #f5c57a;
  border-radius: 7px;
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 700;
}

.mia-index-card {
  padding: 22px;
}

.mia-index-eyebrow {
  color: #176b5b;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 700;
}

.mia-index-rebasing-card {
  flex-direction: row;
  align-items: center;
  gap: 8px;
  margin-right: 16px;
}

.mia-index-screen .pdm-kpi-cards {
  margin-right: 0;
}

.mia-index-screen .pdm-kpi-strip {
  overflow: clip visible;
}

.mia-index-rebasing-card strong {
  max-width: 150px;
  color: var(--navy-700);
  white-space: normal;
  font: 700 12px / 1.3 Lato, sans-serif;
}

.mia-index-rebasing-card .pdm-field-help-tip {
  white-space: normal;
  color: #fff;
  width: 400px;
  max-width: 400px;
  font: 500 11.5px / 1.4 Lato, sans-serif;
}

.mia-index-series-form, .mia-index-value-form {
  align-items: end;
  gap: 12px;
  display: grid;
}

.mia-index-series-form {
  grid-template-columns: minmax(150px, .8fr) minmax(260px, 2fr) minmax(120px, .7fr) minmax(150px, .8fr);
  margin-top: 18px;
}

.mia-index-series-form .wide {
  grid-column: span 2;
}

.mia-index-catalogue {
  gap: 6px;
  display: grid;
  position: relative;
}

.mia-index-catalogue-input {
  background: #fff;
  border: 1px solid #cfd8e3;
  border-radius: 4px;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 10px;
  display: flex;
}

.mia-index-catalogue-input:focus-within {
  border-color: var(--primary-500);
  box-shadow: 0 0 0 2px #0053f51a;
}

.mia-index-series-form .mia-index-catalogue-input input {
  border: 0;
  border-radius: 0;
  outline: 0;
  min-height: 36px;
  padding: 0;
}

.mia-index-catalogue small {
  color: #667085;
}

.mia-index-catalogue small.error {
  color: #b42318;
}

.mia-index-catalogue-results {
  z-index: 20;
  box-shadow: var(--shadow);
  background: #fff;
  border: 1px solid #c5cee0;
  border-radius: 8px;
  display: grid;
  position: absolute;
  top: calc(100% + 3px);
  left: 0;
  right: 0;
  overflow: hidden;
}

.mia-index-catalogue-results button {
  color: #222b45;
  font: inherit;
  text-align: left;
  cursor: pointer;
  background: #fff;
  border: 0;
  border-bottom: 1px solid #e4e9f2;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 10px 12px;
  display: flex;
}

.mia-index-catalogue-results button:last-child {
  border-bottom: 0;
}

.mia-index-catalogue-results button:hover {
  background: #0053f514;
}

.mia-index-catalogue-results code {
  color: #0053f5;
  flex: none;
}

.mia-index-value-form {
  border-bottom: 1px solid var(--line, #dfe5ea);
  grid-template-columns: 130px 110px minmax(190px, 1fr) auto auto;
  padding: 18px 20px;
}

.mia-index-series-form label, .mia-index-value-form label {
  color: #475467;
  gap: 6px;
  font-size: 12px;
  font-weight: 650;
  display: grid;
}

.mia-index-series-form input, .mia-index-value-form input {
  color: #172b3e;
  min-height: 38px;
  font: inherit;
  background: #fff;
  border: 1px solid #cfd8e3;
  border-radius: 4px;
  padding: 8px 10px;
}

.mia-index-check {
  align-self: center;
  align-items: center;
  min-height: 38px;
  gap: 7px !important;
  display: flex !important;
}

.mia-index-check input {
  min-height: auto;
}

.mia-index-points {
  color: #17324d;
  font-variant-numeric: tabular-nums;
}

.mia-index-row-actions {
  justify-content: center;
  gap: 5px;
  display: flex;
}

.mia-index-locked {
  color: #7a5d18;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 650;
  display: inline-flex;
}

.btn.danger, .icon-btn.danger {
  color: #b42318;
}

@media (max-width: 980px) {
  .mia-index-series-form, .mia-index-value-form {
    grid-template-columns: 1fr 1fr;
  }

  .mia-index-series-form .wide {
    grid-column: span 2;
  }

  .mia-index-section-head {
    flex-direction: column;
    align-items: stretch;
  }

  .mia-index-feed-actions {
    justify-content: flex-start;
  }
}

.rrc-workspace, .rrc-unit-editor {
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  display: flex;
}

.rrc-workspace-head, .rrc-editor-toolbar, .rrc-section-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  display: flex;
}

.rrc-workspace-head h2, .rrc-section h3 {
  color: var(--navy-900);
  margin: 0;
}

.rrc-workspace-head p, .rrc-section-head p {
  color: var(--navy-400);
  margin: 4px 0 0;
  font-size: 12px;
}

.rrc-workspace-head > label, .rrc-editor-toolbar > label {
  color: var(--navy-500);
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.rrc-workspace-head input, .rrc-editor-toolbar input {
  border: 1px solid var(--navy-200);
  background: #fff;
  border-radius: 8px;
  min-height: 36px;
  padding: 6px 9px;
}

.rrc-editor-toolbar > strong, .rrc-target {
  border: 1px solid var(--primary-200);
  color: var(--primary-700);
  background: var(--primary-t08);
  border-radius: 8px;
  padding: 9px 12px;
  font-size: 12px;
}

.rrc-target {
  font-weight: 700;
}

.rrc-version-warning {
  border: 1px solid var(--warning-300);
  color: var(--warning-text);
  background: var(--warning-100);
  border-radius: 9px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 11px 13px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.rrc-version-warning label {
  align-items: center;
  gap: 7px;
  display: flex;
}

.rrc-section {
  padding: 15px;
}

.rrc-section-head {
  margin-bottom: 13px;
}

.rrc-section-head h3 {
  align-items: center;
  gap: 7px;
  display: flex;
}

.rrc-flat-grid {
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 10px;
  display: grid;
}

.rrc-flat-grid label, .rrc-feature > label, .rrc-default-grid label {
  min-width: 0;
  color: var(--navy-500);
  flex-direction: column;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.rrc-flat-grid input, .rrc-feature input, .rrc-feature select, .rrc-default-grid input, .rrc-default-grid select {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 36px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 7px;
  padding: 6px 9px;
}

.rrc-flat-grid label.dirty input, .rrc-feature.dirty input, .rrc-feature.dirty select, .rrc-default-grid article.dirty input, .rrc-default-grid article.dirty select {
  border-color: var(--secondary-500);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--secondary-500) 15%, transparent);
}

.rrc-feature-list {
  gap: 9px;
  display: grid;
}

.rrc-feature {
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 9px;
  grid-template-columns: minmax(180px, .8fr) minmax(180px, 1fr) minmax(300px, 1.4fr) auto;
  align-items: center;
  gap: 11px;
  padding: 11px;
  display: grid;
}

.rrc-feature.inherited {
  border-color: var(--primary-200);
  background: var(--primary-t08);
}

.rrc-feature-name {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.rrc-feature-name strong {
  color: var(--navy-800);
}

.rrc-feature-name code {
  color: var(--navy-400);
  font-size: 10px;
}

.rrc-fallback {
  grid-template-columns: repeat(3, minmax(90px, 1fr));
  gap: 6px;
  display: grid;
}

.rrc-fallback > span {
  background: var(--navy-050);
  border-radius: 6px;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  padding: 6px 7px;
  display: flex;
}

.rrc-fallback > span.winner {
  box-shadow: inset 3px 0 0 var(--primary-600);
}

.rrc-fallback small {
  color: var(--navy-400);
  font-size: 9px;
}

.rrc-fallback b {
  color: var(--navy-700);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  overflow: hidden;
}

.rrc-fallback em {
  color: var(--primary-700);
  text-transform: uppercase;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
}

.rrc-value-input {
  align-items: center;
  display: flex;
  position: relative;
}

.rrc-value-input > small {
  color: var(--navy-400);
  pointer-events: none;
  font-size: 9px;
  position: absolute;
  right: 7px;
}

.rrc-value-input:has( > small) input {
  padding-right: 52px;
}

.rrc-save {
  align-self: flex-end;
}

.rrc-history {
  padding: 0;
  overflow: hidden;
}

.rrc-history > .rrc-section-head {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
  margin: 0;
  padding: 13px 15px;
}

.rrc-history > .md-muted {
  padding: 15px;
}

.rrc-default-grid {
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  gap: 9px;
  display: grid;
}

.rrc-default-grid article {
  border: 1px solid var(--navy-150);
  border-radius: 8px;
  gap: 8px;
  padding: 10px;
  display: grid;
}

.rrc-default-grid label small {
  color: var(--navy-400);
  font-weight: 500;
}

.rrc-grid-section {
  padding: 0;
  overflow: hidden;
}

.rrc-grid-section > .rrc-section-head {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
  margin: 0;
  padding: 13px 15px;
}

.rrc-grid-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.rrc-grid-scroll {
  max-height: 590px;
}

.rrc-grid {
  min-width: 1350px;
}

.rrc-grid th {
  z-index: 2;
  background: var(--navy-050);
  position: sticky;
  top: 0;
}

.rrc-grid th, .rrc-grid td {
  vertical-align: middle;
  min-width: 150px;
  padding: 6px;
}

.rrc-grid th:first-child, .rrc-grid td:first-child {
  z-index: 1;
  background: #fff;
  min-width: 180px;
  position: sticky;
  left: 0;
}

.rrc-grid th:first-child {
  z-index: 3;
  background: var(--navy-050);
}

.rrc-grid input, .rrc-grid select {
  border: 1px solid var(--navy-150);
  width: 100%;
  min-height: 31px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 6px;
  padding: 5px 7px;
}

.rrc-grid td.inherited {
  background: var(--primary-t08);
}

.rrc-grid input.inherited, .rrc-grid select.inherited {
  color: var(--primary-700);
  background: var(--primary-050);
  border-style: dashed;
}

.rrc-grid td.dirty {
  box-shadow: inset 0 0 0 2px var(--secondary-500);
  background: var(--secondary-050);
}

.rrc-grid tr.invalid td {
  border-bottom-color: var(--danger-600);
}

.rrc-unit-cell button {
  width: 100%;
  min-width: 0;
  color: var(--navy-700);
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  flex-direction: column;
  display: flex;
}

.rrc-unit-cell small {
  color: var(--navy-400);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.rrc-cell-clear {
  width: 22px;
  height: 22px;
  color: var(--primary-700);
  background: var(--primary-100);
  cursor: pointer;
  border: 0;
  border-radius: 5px;
  place-items: center;
  display: grid;
  position: absolute;
  top: 10px;
  right: 8px;
}

.rrc-grid td:has(.rrc-cell-clear) {
  position: relative;
}

.rrc-grid td > small {
  color: var(--navy-400);
  margin-top: 2px;
  font-size: 9px;
  display: block;
}

.rrc-row-error {
  color: var(--danger-700);
  font-size: 10px;
  font-weight: 700;
  min-width: 240px !important;
}

.rrc-stand {
  color: var(--navy-400);
  margin: 0 0 10px;
  font-size: 11px;
  font-weight: 700;
}

.rrc-coverage-cards {
  grid-template-columns: repeat(6, minmax(105px, 1fr));
  gap: 8px;
  margin-bottom: 12px;
  display: grid;
}

.rrc-coverage-cards button {
  border: 1px solid var(--navy-150);
  color: var(--navy-600);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  flex-direction: column;
  gap: 4px;
  padding: 10px;
  display: flex;
}

.rrc-coverage-cards button.active {
  border-color: var(--primary-600);
  background: var(--primary-050);
  box-shadow: inset 0 0 0 1px var(--primary-600);
}

.rrc-coverage-cards strong {
  color: var(--navy-900);
  font-size: 20px;
}

.rrc-coverage-cards span {
  font-size: 10px;
  font-weight: 700;
}

.rrc-coverage-table {
  width: 100%;
}

.rrc-coverage-table td:last-child {
  text-align: right;
}

.miawl-dataset-link {
  color: var(--primary-700);
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  margin-top: 4px;
  padding: 0;
  font-size: 10.5px;
  font-weight: 700;
  display: block;
}

.miawl-dataset-link:hover {
  text-decoration: underline;
}

.cp-dataset-list {
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  display: flex;
}

@media (max-width: 980px) {
  .rrc-flat-grid, .rrc-default-grid, .rrc-feature, .rrc-fallback {
    grid-template-columns: 1fr;
  }

  .rrc-coverage-cards {
    grid-template-columns: repeat(2, minmax(120px, 1fr));
  }
}

.ap-journal-toolbar {
  flex-wrap: wrap;
  gap: 12px;
}

.ap-journal-period {
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  display: flex;
}

.ap-journal-period .pdm-field {
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.ap-journal-period small {
  color: var(--navy-400);
  font: 700 11px / 1.2 Lato, sans-serif;
}

.ap-journal-toolbar .filter-tabs {
  margin-left: auto;
  margin-right: 0;
}

.ap-journal-balance {
  border-radius: 999px;
  align-items: center;
  gap: 5px;
  padding: 3px 10px;
  font: 900 11px / 1 Lato, sans-serif;
  display: inline-flex;
}

.ap-journal-balance.ok {
  color: #0f8d46;
  background: var(--success-100);
}

.ap-journal-balance.bad {
  color: #b11d1d;
  background: var(--danger-100);
}

tr.ap-journal-unbalanced td {
  background: var(--danger-100);
}

@media (max-width: 720px) {
  .ap-journal-toolbar .filter-tabs {
    margin-left: 0;
  }

  .ap-journal-period {
    width: 100%;
  }
}

.apr012-workspace .ap-posting-preview-notposted {
  border: 1px solid var(--navy-150);
  color: var(--navy-500);
  letter-spacing: .04em;
  text-transform: uppercase;
  background: var(--navy-050);
  border-radius: 999px;
  padding: 1px 8px;
  font: 900 10px / 1.5 Lato, sans-serif;
}

.apr012-workspace .ap-invoice-status-stamp {
  min-width: 0;
  color: var(--navy-500);
  flex-direction: column;
  gap: 3px;
  font: 700 10.5px / 1.2 Lato, sans-serif;
  display: flex;
}

.apr012-workspace .ap-invoice-status-line {
  align-items: center;
  gap: 5px;
  min-width: 0;
  display: flex;
}

.apr012-workspace .ap-invoice-status-main, .apr012-workspace .ap-invoice-payment-block, .apr012-workspace .ap-invoice-payment-error {
  white-space: nowrap;
  border-radius: 999px;
  align-items: center;
  min-width: 0;
  padding: 3px 7px;
  display: inline-flex;
}

.apr012-workspace .ap-invoice-status-main {
  text-overflow: ellipsis;
  overflow: hidden;
}

.apr012-workspace .ap-invoice-status-main.gray {
  background: var(--navy-100);
  color: var(--navy-600);
}

.apr012-workspace .ap-invoice-status-main.blue {
  background: var(--primary-050);
  color: var(--primary-700);
}

.apr012-workspace .ap-invoice-status-main.amber {
  background: rgba(var(--warning-600-rgb), .14);
  color: var(--warning-text);
}

.apr012-workspace .ap-invoice-status-main.green {
  background: var(--success-100);
  color: var(--success-600);
}

.apr012-workspace .ap-invoice-status-main.red {
  background: var(--danger-100);
  color: var(--danger-600);
}

.apr012-workspace .ap-invoice-payment-block {
  background: rgba(var(--warning-600-rgb), .14);
  color: var(--warning-text);
  flex: none;
}

.apr012-workspace .ap-invoice-payment-error {
  background: var(--danger-100);
  color: var(--danger-600);
  flex: none;
}

.apr012-workspace .ap-invoice-status-meta {
  min-width: 0;
  color: var(--navy-400);
  font-variant-numeric: tabular-nums;
  white-space: normal;
}

.apr012-workspace .ap-capture-head > .ap-invoice-status-stamp {
  max-width: min(470px, 34vw);
}

@media (max-width: 760px) {
  .apr012-workspace .ap-capture-head > .ap-invoice-status-stamp {
    max-width: 100%;
  }
}

.apr012-workspace .ap-invoice-status-cell {
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.apr012-workspace .ap-invoice-hold-chip {
  background: rgba(var(--warning-600-rgb), .14);
  max-width: 100%;
  color: var(--warning-text);
  white-space: normal;
  overflow-wrap: anywhere;
  border-radius: 999px;
  align-items: center;
  padding: 3px 7px;
  font: 700 10.5px / 1.25 Lato, sans-serif;
  display: inline-flex;
}

.apr012-workspace .ap-capture-head > .ap-invoice-hold-chip {
  flex: 0 auto;
  max-width: min(320px, 26vw);
}

@media (max-width: 760px) {
  .apr012-workspace .ap-capture-head > .ap-invoice-hold-chip {
    max-width: 100%;
  }
}

.dph-screen {
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  display: flex;
}

.dph-head, .dph-section-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  display: flex;
}

.dph-head h2, .dph-section-head h3 {
  color: var(--navy-900);
  margin: 0;
}

.dph-head p, .dph-section-head p {
  color: var(--navy-400);
  margin: 4px 0 0;
  font-size: 12px;
}

.dph-breadcrumb {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  margin-bottom: 3px;
  font-size: 10px;
  font-weight: 800;
  display: block;
}

.dph-head-actions, .dph-save-row {
  justify-content: flex-end;
  gap: 8px;
  display: flex;
}

.dph-layout {
  grid-template-columns: minmax(210px, 260px) minmax(0, 1fr);
  align-items: start;
  gap: 14px;
  display: grid;
}

.dph-editor {
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  display: flex;
}

.dph-section, .dph-profile-list {
  padding: 15px;
}

.dph-profile-list {
  flex-direction: column;
  gap: 7px;
  display: flex;
}

.dph-profile-list > .dph-section-head {
  margin-bottom: 5px;
}

.dph-profile-list > .dph-section-head > span {
  color: var(--navy-400);
  font-size: 12px;
  font-weight: 900;
}

.dph-profile-list > button {
  border: 1px solid var(--navy-150);
  width: 100%;
  min-width: 0;
  color: var(--navy-700);
  text-align: left;
  cursor: pointer;
  background: #fff;
  border-radius: 4px;
  flex-direction: column;
  gap: 3px;
  padding: 10px;
  display: flex;
}

.dph-profile-list > button:hover {
  border-color: var(--primary-300);
}

.dph-profile-list > button.active {
  border-color: var(--primary-600);
  box-shadow: inset 3px 0 0 var(--primary-600);
  background: var(--primary-050);
}

.dph-profile-list code, .dph-coverage-table small, .dph-profile-list small {
  color: var(--navy-400);
  font-size: 10px;
}

.dph-form-grid {
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  gap: 10px;
  margin-top: 14px;
  display: grid;
}

.dph-form-grid > label, .dph-entity-select {
  min-width: 0;
  color: var(--navy-500);
  flex-direction: column;
  gap: 5px;
  font-size: 11px;
  font-weight: 800;
  display: flex;
}

.dph-form-grid input, .dph-form-grid select, .dph-entity-select select, .dph-level-table input[type="number"] {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 36px;
  color: var(--navy-800);
  font: inherit;
  background: #fff;
  border-radius: 4px;
  padding: 6px 9px;
}

.dph-check-grid {
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 9px 16px;
  margin-top: 13px;
  display: grid;
}

.dph-check-grid label, .dph-fee-cell > label, .dph-interest-toggle {
  color: var(--navy-600);
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 750;
  display: flex;
}

.dph-check-grid input, .dph-fee-cell input, .dph-interest-toggle input {
  width: auto;
  min-height: auto;
}

.dph-level-section {
  padding: 0;
  overflow: hidden;
}

.dph-level-section > .dph-section-head {
  border-bottom: 1px solid var(--navy-100);
  background: var(--navy-050);
  padding: 15px;
}

.dph-table-scroll {
  overflow-x: auto;
}

.dph-level-table, .dph-coverage-table {
  border-collapse: collapse;
  width: 100%;
}

.dph-level-table th, .dph-level-table td, .dph-coverage-table th, .dph-coverage-table td {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-700);
  text-align: left;
  vertical-align: middle;
  padding: 9px 12px;
  font-size: 11px;
}

.dph-level-table thead th, .dph-coverage-table thead th {
  color: var(--navy-500);
  background: var(--navy-050);
  letter-spacing: .03em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.dph-level-table tbody tr:last-child th, .dph-level-table tbody tr:last-child td, .dph-coverage-table tbody tr:last-child th, .dph-coverage-table tbody tr:last-child td {
  border-bottom: 0;
}

.dph-inline-number {
  align-items: center;
  gap: 7px;
  display: flex;
}

.dph-inline-number input {
  max-width: 90px;
}

.dph-inline-number span {
  color: var(--navy-400);
  font-size: 10px;
}

.dph-interest-toggle {
  cursor: pointer;
}

.dph-fee-cell {
  grid-template-columns: auto minmax(120px, 180px);
  align-items: center;
  gap: 10px;
  display: grid;
}

.dph-fee-cell .money-input input {
  border-radius: 4px;
}

.dph-cadence-note {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-400);
  background: var(--navy-050);
  margin: 0;
  padding: 10px 15px;
  font-size: 10px;
}

.dph-fallback-error {
  border: 1px solid var(--danger-600);
  color: var(--danger-700);
  background: var(--danger-100);
  border-radius: 4px;
  align-items: flex-start;
  gap: 10px;
  padding: 13px 15px;
  display: flex;
}

.dph-fallback-error strong {
  font-size: 13px;
}

.dph-fallback-error p {
  margin: 4px 0;
  font-size: 11px;
}

.dph-fallback-error ul {
  flex-wrap: wrap;
  gap: 4px 16px;
  margin: 7px 0 0;
  padding-left: 18px;
  font-size: 10px;
  display: flex;
}

.dph-coverage-table th > small {
  margin-top: 2px;
  font-weight: 500;
  display: block;
}

.dph-error-row th, .dph-error-row td {
  color: var(--danger-700);
  background: var(--danger-100);
}

.dph-error-row th {
  align-items: center;
  gap: 5px;
  display: flex;
}

.dph-entity-select {
  max-width: 360px;
  margin: 13px 0;
}

.dph-account-list {
  grid-template-columns: repeat(2, minmax(230px, 1fr));
  gap: 8px;
  display: grid;
}

.dph-account-list > div {
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 4px;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  display: flex;
}

.dph-account-list code {
  color: var(--primary-700);
  font-size: 10px;
  font-weight: 800;
}

.dph-account-list span {
  color: var(--navy-600);
  font-size: 11px;
}

.dph-account-list > div.unresolved {
  border-color: var(--danger-600);
  background: var(--danger-100);
}

.dph-account-list > div.unresolved span {
  color: var(--danger-700);
  align-items: center;
  gap: 5px;
  font-weight: 800;
  display: flex;
}

.dunning-profile-value {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.dunning-profile-value small {
  color: var(--navy-400);
  align-items: center;
  gap: 4px;
  font-size: 10px;
  font-weight: 650;
  display: flex;
}

.dunning-profile-value.config-error, .dunning-profile-value.config-error small {
  color: var(--danger-700);
}

.dunning-profile-value.compact {
  flex-direction: row;
  align-items: baseline;
  gap: 4px;
  display: inline-flex;
}

.dunning-profile-value.compact small:before {
  content: "·";
  margin-right: 1px;
}

@media (max-width: 900px) {
  .dph-layout {
    grid-template-columns: 1fr;
  }

  .dph-profile-list {
    max-height: 280px;
    overflow-y: auto;
  }

  .dph-form-grid, .dph-check-grid, .dph-account-list {
    grid-template-columns: 1fr;
  }
}

.vat-cockpit {
  gap: var(--t360-space-5);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.vat-context-bar {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-6);
  border-bottom: 1px solid var(--navy-150);
  background: var(--surface);
  min-height: 64px;
  margin: -16px -16px 0;
  padding: 10px 18px;
  display: flex;
}

.vat-context-copy {
  gap: var(--t360-space-2);
  color: var(--navy-800);
  flex-direction: column;
  display: flex;
}

.vat-context-copy > span, .vat-eyebrow {
  color: var(--primary-700);
  letter-spacing: .08em;
  text-transform: uppercase;
  font: 900 10px / 1.2 Lato, sans-serif;
}

.vat-context-copy > strong {
  color: var(--navy-heading);
  font: 900 15px / 1.2 Lato, sans-serif;
}

.vat-context-identity {
  min-width: 0;
  color: var(--navy-500);
  white-space: nowrap;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  display: flex;
}

.vat-context-identity strong {
  color: var(--navy-heading);
  text-overflow: ellipsis;
  overflow: hidden;
}

.vat-filing-warning {
  cursor: pointer;
  border: 0;
  gap: 5px;
}

.vat-entity-select {
  grid-template-columns: auto auto;
  align-items: center;
  gap: 10px;
  display: grid;
}

.vat-entity-select > span {
  color: var(--navy-800);
  font-size: 14px;
  font-weight: 700;
}

.vat-entity-select select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  min-width: 235px;
  min-height: 38px;
  color: var(--navy-800);
  background: var(--surface);
  padding: 7px 32px 7px 10px;
  font-size: 13px;
  font-weight: 500;
}

.vat-entity-select select:focus-visible, .vat-period-link:focus-visible, .vat-kz-link:focus-visible, .vat-period-picker button:focus-visible, .vat-drawer-close:focus-visible, .vat-drawer-back:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: 2px;
}

.vat-screen-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--t360-space-6);
  padding: 4px 2px 0;
  display: flex;
}

.vat-screen-head > div {
  gap: var(--t360-space-2);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.vat-eyebrow {
  align-items: center;
  gap: var(--t360-space-2);
  display: inline-flex;
}

.vat-screen-head h2 {
  color: var(--navy-heading);
  font: 900 24px / 1.15 Lato, sans-serif;
}

.vat-screen-head p {
  max-width: 760px;
  color: var(--navy-500);
  font-size: 12px;
  line-height: 1.5;
}

.vat-screen-head > .vat-screen-head-actions {
  align-items: center;
  gap: var(--t360-space-4);
  flex-flow: wrap;
  margin-left: auto;
  display: flex;
}

.vat-overview-grid {
  align-items: start;
  gap: var(--t360-space-5);
  grid-template-columns: minmax(340px, .92fr) minmax(480px, 1.35fr);
  display: grid;
}

.vat-setup-block-banner {
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 13px 15px;
  display: grid;
}

.vat-setup-block-banner > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.vat-setup-block-banner strong {
  color: var(--warning-text);
  font-size: 12px;
}

.vat-setup-block-banner span {
  color: var(--navy-600);
  font-size: 10.5px;
}

.vat-readiness-head {
  align-items: center;
}

.vat-readiness-deadline {
  color: var(--primary-700);
  margin-top: 7px;
  font-size: 11px;
  display: block;
}

.vat-readiness-grid {
  table-layout: fixed;
  min-width: 820px;
}

.vat-readiness-grid thead th:first-child {
  width: 190px;
}

.vat-readiness-grid tbody > tr > th {
  border-bottom: 1px solid var(--navy-100);
  background: var(--navy-050);
  text-align: left;
  padding: 12px 14px;
}

.vat-readiness-grid tbody > tr > th strong, .vat-readiness-grid tbody > tr > th span {
  display: block;
}

.vat-readiness-grid tbody > tr > th strong {
  color: var(--navy-heading);
  font-size: 12px;
}

.vat-readiness-grid tbody > tr > th span {
  color: var(--navy-400);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 3px;
  font-size: 10px;
  overflow: hidden;
}

.vat-readiness-grid td {
  vertical-align: top;
  height: 118px;
  padding: 6px;
}

.vat-readiness-grid td.selected {
  background: var(--primary-050);
  box-shadow: inset 0 0 0 2px var(--primary-300);
}

.vat-readiness-cell-wrap {
  width: 100%;
  height: 100%;
  position: relative;
}

.vat-readiness-cell {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  width: 100%;
  height: 100%;
  min-height: 104px;
  color: var(--navy-700);
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  padding: 10px;
  display: flex;
}

.vat-readiness-cell.has-correction-action {
  padding-top: 39px;
}

.vat-period-correction-action {
  z-index: 1;
  cursor: pointer;
  text-overflow: ellipsis;
  white-space: nowrap;
  border: 0;
  max-width: calc(100% - 16px);
  min-height: 22px;
  position: absolute;
  top: 8px;
  right: 8px;
  overflow: hidden;
}

.vat-period-correction-action:hover {
  filter: brightness(.97);
}

.vat-period-correction-action:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: 2px;
}

.vat-period-correction-action:disabled {
  cursor: not-allowed;
  opacity: .65;
}

.vat-readiness-cell:hover {
  border-color: var(--primary-300);
  background: var(--primary-t08);
}

.vat-readiness-cell > strong {
  font-size: 11px;
  font-weight: 900;
}

.vat-readiness-cell > small {
  color: currentColor;
  font-size: 9.5px;
  line-height: 1.3;
}

.vat-readiness-cell .vat-payable-inline {
  color: currentColor;
  align-items: flex-start;
  margin-top: auto;
}

.vat-readiness-cell.booked {
  color: var(--success-700);
  border-color: var(--success-500);
  background: var(--success-100);
}

.vat-readiness-cell.draft, .vat-readiness-cell.test, .vat-readiness-cell.approved {
  color: var(--navy-600);
  border-color: var(--navy-200);
  background: var(--navy-050);
}

.vat-readiness-cell .vat-cell-status {
  color: var(--navy-500);
  font-weight: 900;
}

.vat-readiness-cell-static {
  cursor: default;
}

.vat-readiness-cell-static.beforeStart {
  color: var(--navy-400);
  border-style: dashed;
  border-color: var(--navy-200);
  background: var(--navy-050);
}

.vat-readiness-cell-static.notCreated {
  color: var(--danger-600);
  border-color: var(--danger-600);
  background: var(--danger-100);
}

.vat-readiness-cell-static .btn {
  min-width: 0;
  margin-top: auto;
}

.vat-readiness-cell.blocked {
  color: var(--warning-text);
  border-color: var(--warning-500);
  background: var(--warning-100);
}

.vat-readiness-cell.transmitted {
  color: var(--primary-700);
  border-color: var(--primary-300);
  background: var(--primary-050);
}

.vat-readiness-cell.settled, .vat-readiness-cell.nothing, .vat-readiness-cell.uncheckable {
  color: var(--navy-500);
  border-color: var(--navy-200);
  background: var(--navy-100);
}

.vat-readiness-cell:disabled {
  cursor: not-allowed;
}

.vat-readiness-actions {
  overflow: visible;
}

.vat-readiness-actions-row {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px;
  padding: 13px 15px;
  display: flex;
}

.vat-readiness-action {
  flex-direction: column;
  gap: 5px;
  max-width: 280px;
  display: flex;
}

.vat-readiness-action small {
  color: var(--warning-text);
  font-size: 9.5px;
  line-height: 1.35;
}

.vat-readiness-success {
  border-top: 1px solid var(--success-500);
  color: var(--success-700);
  background: var(--success-100);
  padding: 10px 15px;
  font-size: 11px;
  font-weight: 700;
}

.vat-readiness-checks {
  padding: 12px;
}

.vat-readiness-checks > div.uncheckable {
  color: var(--navy-500);
  border-color: var(--navy-200);
  background: var(--navy-100);
}

.vat-readiness-checks > div.uncheckable .vat-check-icon {
  background: var(--navy-400);
}

.vat-readiness-checks > div > span:last-child b {
  color: currentColor;
  text-transform: uppercase;
  margin-top: 2px;
  font-size: 9px;
  font-weight: 900;
}

.vat-entity-queue {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-3);
  background: var(--surface);
  align-items: center;
  gap: 7px;
  min-height: 34px;
  padding: 5px 8px;
  display: flex;
  overflow-x: auto;
}

.vat-entity-queue > small {
  color: var(--navy-400);
  letter-spacing: .055em;
  text-transform: uppercase;
  flex: none;
  margin-right: 3px;
  font-size: 9px;
  font-weight: 900;
}

.vat-entity-queue > button {
  cursor: pointer;
  border: 0;
  flex: none;
}

.vat-entity-queue > button.active {
  color: var(--primary-700);
  background: var(--primary-050);
  box-shadow: inset 0 0 0 1px var(--primary-200);
}

.vat-overview-deadline {
  color: var(--primary-700);
  white-space: nowrap;
  align-self: center;
  font-size: 11px;
  font-weight: 900;
}

.vat-card.vat-year-card, .vat-card.vat-earlier-card, .vat-card.vat-close-card, .vat-card.vat-lifecycle-card {
  overflow: visible;
}

.vat-year-head h3 {
  color: var(--primary-500);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.vat-year-head {
  margin-bottom: 0;
  padding: 14px 16px 10px;
}

.vat-year-switcher {
  flex: none;
  align-items: center;
  gap: 6px;
  display: flex;
}

.vat-year-strip-wrap {
  padding: 12px;
  overflow-x: auto;
}

.vat-year-strip {
  gap: 10px;
  width: 100%;
  display: grid;
}

.vat-year-cell {
  border: 1px solid var(--navy-200);
  min-width: 148px;
  min-height: 96px;
  color: var(--navy-700);
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  border-radius: 12px;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 10px 14px;
  display: flex;
}

.vat-year-cell:hover {
  border-color: var(--primary-300);
  background: var(--primary-t08);
}

.vat-year-cell > strong {
  color: var(--navy-heading);
  font-size: 11px;
  font-weight: 900;
}

.vat-year-cell > small {
  color: var(--navy-400);
  font-size: 9px;
  line-height: 1.35;
}

.vat-year-cell > .chip {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
}

.vat-year-cell.selected {
  z-index: 1;
  outline: 3px solid var(--primary-600);
  outline-offset: 2px;
  position: relative;
}

.vat-year-cell.related {
  border-color: var(--primary-200);
  background: var(--primary-050);
}

.vat-year-cell.draft, .vat-year-cell.test, .vat-year-cell.approved {
  background: var(--navy-050);
}

.vat-year-cell.booked {
  border-color: var(--success-500);
  background: var(--success-100);
}

.vat-year-cell.transmitted {
  border-color: var(--primary-300);
  background: var(--primary-050);
}

.vat-year-cell.settled, .vat-year-cell.nothing {
  background: var(--navy-100);
}

.vat-year-cell.beforeStart, .vat-year-cell.future {
  color: var(--navy-400);
  background: var(--navy-050);
  border-style: dashed;
}

.vat-year-cell.notCreated {
  border-color: var(--danger-600);
  background: var(--danger-100);
}

.vat-year-cell.auxiliary {
  border-color: var(--secondary-500);
  background: var(--secondary-050);
}

.vat-year-cell.static {
  cursor: not-allowed;
}

.vat-year-cell.static .btn {
  min-width: 0;
  margin-top: auto;
}

.vat-year-payable {
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  width: 100%;
  margin-top: auto;
  display: flex;
}

.vat-year-payable small {
  color: var(--navy-400);
  white-space: nowrap;
  text-transform: uppercase;
  font-size: 8.5px;
  font-weight: 800;
}

.vat-year-payable b {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font-size: 13px;
}

.vat-earlier-card .vat-card-head.compact {
  align-items: center;
  min-height: 54px;
}

.vat-earlier-strip {
  min-height: 48px;
  color: var(--navy-400);
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  padding: 10px 14px;
  font-size: 10.5px;
  display: flex;
}

.vat-earlier-strip > button {
  cursor: pointer;
  border: 0;
}

.vat-close-ladder {
  display: grid;
}

.vat-close-group {
  border-bottom: 1px solid var(--navy-100);
  grid-template-columns: 118px minmax(0, 1fr);
  display: grid;
}

.vat-close-group:last-child {
  border-bottom: 0;
}

.vat-close-group-label {
  color: var(--navy-500);
  background: var(--navy-050);
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 16px 14px;
  font-size: 10px;
  font-weight: 900;
}

.vat-close-steps {
  min-width: 0;
}

.vat-close-rung {
  border-bottom: 1px solid var(--navy-100);
  background: var(--surface);
}

.vat-close-rung:last-child {
  border-bottom: 0;
}

.vat-close-rung.current {
  border-left: 4px solid var(--primary-600);
  background: var(--primary-050);
}

.vat-close-rung.pending {
  border-left: 4px solid var(--warning-600);
  background: var(--warning-100);
}

.vat-close-rung.uncheckable {
  color: var(--navy-500);
  background: var(--navy-050);
}

.vat-close-rung.locked {
  color: var(--navy-500);
}

.vat-close-line {
  grid-template-columns: 24px minmax(160px, .9fr) auto minmax(160px, 1.25fr) auto 28px;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 8px 11px;
  display: grid;
}

.vat-close-line > strong {
  color: var(--navy-heading);
  font-size: 11.5px;
}

.vat-close-icon {
  width: 22px;
  height: 22px;
  color: var(--navy-500);
  background: var(--navy-100);
  border-radius: 50%;
  place-items: center;
  font-size: 17px;
  font-weight: 900;
  display: grid;
}

.vat-close-rung.done .vat-close-icon {
  color: var(--surface);
  background: var(--success-600);
}

.vat-close-rung.current .vat-close-icon {
  color: var(--surface);
  background: var(--primary-600);
}

.vat-close-rung.pending .vat-close-icon {
  color: var(--warning-text);
  background: var(--warning-100);
}

.vat-close-fact {
  color: var(--navy-500);
  font-size: 10.5px;
  line-height: 1.35;
}

.vat-close-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  display: flex;
}

.vat-close-more {
  width: 27px;
  height: 27px;
  color: var(--navy-500);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 50%;
  place-items: center;
  display: grid;
}

.vat-close-more:hover {
  background: var(--navy-100);
}

.vat-close-rung.open .vat-close-more svg {
  transform: rotate(180deg);
}

.vat-close-details {
  color: var(--navy-500);
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 6px 12px;
  padding: 0 14px 11px 45px;
  font-size: 10px;
  line-height: 1.4;
  display: flex;
}

.vat-close-details > span {
  flex-basis: 100%;
}

.vat-close-details code {
  color: var(--primary-700);
  font-size: 9px;
}

.vat-close-next {
  border-top: 1px solid var(--navy-150);
  min-height: 52px;
  color: var(--navy-700);
  background: var(--surface);
  box-shadow: var(--shadow);
  flex-shrink: 0;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  margin: 0 -16px -16px;
  padding: 10px 16px;
  font-size: 12.5px;
  font-weight: 700;
  display: flex;
}

@media (max-width: 900px) {
  .vat-screen-head, .vat-year-head {
    flex-direction: column;
    align-items: stretch;
  }

  .vat-overview-deadline {
    align-self: flex-start;
  }

  .vat-close-group {
    grid-template-columns: 1fr;
  }

  .vat-close-group-label {
    border-bottom: 1px solid var(--navy-100);
    padding: 9px 12px;
  }

  .vat-close-line {
    grid-template-columns: 24px minmax(120px, 1fr) auto 28px;
  }

  .vat-close-fact {
    grid-column: 2 / -1;
  }

  .vat-close-actions {
    grid-column: 2 / -1;
    justify-content: flex-start;
  }

  .vat-close-details {
    padding-left: 45px;
  }
}

.vat-card {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  min-width: 0;
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}

.vat-card-head {
  border-bottom: 1px solid var(--navy-100);
  background: var(--navy-050);
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  min-height: 66px;
  padding: 14px 16px;
  display: flex;
}

.vat-card-head h2 {
  color: var(--navy-heading);
  font: 900 15px / 1.25 Lato, sans-serif;
}

.vat-card-head p {
  color: var(--navy-400);
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.35;
}

.vat-card-head h2 .chip {
  vertical-align: 2px;
  margin-left: 8px;
}

.vat-card-head h2 .chip + .chip {
  margin-left: 4px;
}

.vat-filing-identity {
  color: var(--navy-600);
  flex-wrap: wrap;
  align-items: baseline;
  gap: 3px 8px;
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.4;
  display: flex;
}

.vat-card.vat-lifecycle-card {
  box-shadow: none;
  background: none;
  border: 0;
  border-radius: 0;
  overflow: visible;
}

.vat-lifecycle-card .vat-card-head {
  background: none;
  border-bottom: 0;
  padding: 0 0 16px;
}

.vat-lifecycle-card .vat-card-head h2 {
  font-size: 18px;
}

.vat-lifecycle-title-period {
  color: var(--primary-500);
}

.vat-lifecycle-card .vat-lifecycle-body {
  padding: 0;
}

.vat-lifecycle-card .vat-lifecycle-body > .vat-gate-box:first-child {
  margin-top: 0;
}

.vat-lifecycle-stepper {
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.vat-lifecycle-stepper li {
  flex: none;
  align-items: center;
  min-width: 0;
  display: flex;
}

.vat-lifecycle-stepper li:before {
  content: "";
  background: var(--navy-200);
  flex: 0 0 40px;
  width: 40px;
  height: 1px;
}

.vat-lifecycle-stepper li:first-child:before {
  content: none;
}

.vat-lifecycle-stepper li.done:before {
  background: var(--success-500);
}

.vat-lifecycle-stepper li.current:before {
  background: var(--primary-400);
}

.vat-lifecycle-stepper-pill {
  border: 1.5px solid var(--navy-200);
  background: var(--navy-050);
  white-space: nowrap;
  border-radius: 999px;
  flex-shrink: 0;
  align-items: center;
  gap: 10px;
  padding: 6px 18px 6px 6px;
  display: inline-flex;
}

.vat-lifecycle-stepper-pill strong {
  color: var(--navy-500);
  font-size: 14px;
  font-weight: 700;
}

.vat-lifecycle-stepper-pill.current {
  border-color: var(--primary-300);
  background: var(--primary-050);
}

.vat-lifecycle-stepper-pill.current strong {
  color: var(--primary-700);
}

.vat-lifecycle-stepper-pill.done {
  border-color: color-mix(in srgb, var(--success-500) 38%, var(--navy-150));
  background: var(--success-100);
}

.vat-lifecycle-stepper-pill.done strong {
  color: var(--success-600);
}

.vat-lifecycle-stepper-marker {
  width: 20px;
  height: 20px;
  color: var(--surface);
  background: var(--navy-300);
  border-radius: 50%;
  flex-shrink: 0;
  place-items: center;
  font-size: 10px;
  font-weight: 900;
  display: grid;
}

.vat-lifecycle-stepper-pill.current .vat-lifecycle-stepper-marker {
  background: var(--primary-600);
}

.vat-lifecycle-stepper-pill.done .vat-lifecycle-stepper-marker {
  color: var(--success-500);
  background: none;
}

.vat-lifecycle-deadline {
  text-align: right;
  flex-direction: column;
  flex-shrink: 0;
  align-items: flex-end;
  gap: 8px;
  display: flex;
}

.vat-lifecycle-deadline-row {
  align-items: center;
  gap: 12px;
  display: flex;
}

.vat-lifecycle-deadline small {
  color: var(--navy-400);
  font-size: 10.5px;
}

.vat-lifecycle-due-line {
  align-items: center;
  gap: 5px;
  display: flex;
}

.vat-lifecycle-due-label {
  color: var(--navy-600);
  font-size: 14px;
  font-weight: 700;
}

.vat-lifecycle-due {
  font-size: 14px;
  font-weight: 800;
}

.vat-lifecycle-due.warning {
  color: var(--warning-text);
}

.vat-lifecycle-due.danger {
  color: var(--danger-600);
}

.vat-lifecycle-due-line .pdm-field-help-icon {
  color: var(--navy-400);
}

.vat-lifecycle-due-line .pdm-field-help-tip {
  top: 22px;
  right: -8px;
}

.vat-filing-identity > span:first-child {
  color: var(--navy-heading);
  letter-spacing: -.01em;
  font-size: 14px;
  font-weight: 700;
}

.vat-identity-missing {
  color: var(--warning-text);
  background: var(--warning-100);
  font-weight: 700;
}

.vat-readonly {
  border: 1px solid var(--navy-200);
  border-radius: var(--pill);
  min-height: 24px;
  color: var(--navy-500);
  background: var(--surface);
  letter-spacing: .04em;
  text-transform: uppercase;
  flex: none;
  align-items: center;
  padding: 3px 9px;
  font-size: 10px;
  font-weight: 900;
  display: inline-flex;
}

.vat-table-wrap {
  overflow-x: auto;
}

.vat-grid {
  border-collapse: collapse;
  width: 100%;
  color: var(--navy-700);
  font-size: 11.5px;
}

.vat-grid th, .vat-grid td {
  border-bottom: 1px solid var(--navy-100);
  text-align: left;
  vertical-align: middle;
  padding: 11px 14px;
}

.vat-grid thead th {
  color: var(--navy-500);
  background: var(--surface);
  letter-spacing: .055em;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 900;
}

.vat-grid tbody tr:last-child td {
  border-bottom: 0;
}

.vat-grid tbody tr:hover td {
  background: var(--primary-t08);
}

.vat-grid tbody tr.selected td {
  background: var(--primary-050);
}

.vat-clickable-row {
  cursor: pointer;
}

.vat-property-route-link {
  color: var(--primary-700);
  font-weight: 900;
}

.vat-clickable-row:hover .vat-property-route-link {
  text-decoration: underline;
}

.vat-grid .num {
  text-align: right;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.vat-grid tfoot th {
  border-top: 2px solid var(--navy-150);
  color: var(--navy-heading);
  background: var(--navy-050);
  border-bottom: 0;
  font-size: 11px;
}

.vat-period-link, .vat-kz-link {
  color: var(--primary-700);
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  font-weight: 900;
}

.vat-period-link:hover, .vat-kz-link:hover {
  text-decoration: underline;
}

.vat-kz-link {
  border-radius: var(--t360-radius-2);
  background: var(--primary-050);
  min-width: 38px;
  padding: 4px 8px;
  text-decoration: none;
}

.vat-kz-static {
  justify-content: center;
  min-width: 38px;
}

.vat-status {
  border-radius: var(--pill);
  min-height: 22px;
  color: var(--navy-600);
  background: var(--navy-100);
  white-space: nowrap;
  align-items: center;
  padding: 3px 8px;
  font-size: 10px;
  font-weight: 900;
  display: inline-flex;
}

.vat-status.action {
  color: var(--warning-text);
  background: var(--warning-100);
}

.vat-unavailable {
  color: var(--danger-600);
  white-space: normal;
  font-size: 10.5px;
  font-weight: 800;
}

.vat-state {
  justify-content: center;
  align-items: center;
  gap: var(--t360-space-3);
  min-height: 120px;
  padding: var(--t360-space-6);
  color: var(--navy-400);
  text-align: center;
  flex-direction: column;
  display: flex;
}

.vat-state strong {
  color: var(--navy-700);
}

.vat-state span {
  max-width: 420px;
  font-size: 11px;
  line-height: 1.4;
}

.vat-state-error {
  color: var(--danger-600);
  background: var(--danger-100);
}

.vat-state-error strong {
  color: var(--danger-600);
}

.vat-page-error {
  border: 1px solid var(--danger-600);
  border-radius: var(--t360-radius-2);
  text-align: left;
  align-items: flex-start;
  min-height: auto;
  padding: 12px 16px;
}

.vat-period-picker {
  z-index: 96;
  align-items: center;
  gap: var(--t360-space-2);
  background: var(--surface);
  min-height: 52px;
  box-shadow: var(--shadow);
  color: var(--navy-400);
  border: 0;
  border-radius: 0;
  flex-shrink: 0;
  margin: -16px -16px 0;
  padding: 10px 16px;
  display: flex;
  position: relative;
  overflow-x: auto;
}

.vat-period-picker button {
  border: 1px solid var(--navy-150);
  border-radius: var(--pill);
  min-height: 30px;
  color: var(--navy-600);
  cursor: pointer;
  white-space: nowrap;
  background: none;
  padding: 5px 11px;
  font-size: 11px;
  font-weight: 900;
}

.vat-period-picker button:hover {
  background: var(--navy-100);
}

.vat-period-picker button.active {
  border-color: var(--primary-200);
  color: var(--primary-700);
  background: var(--primary-050);
}

.vat-kz-card .vat-grid {
  min-width: 760px;
}

.vat-kz-card .vat-grid td:nth-child(2) {
  width: 55%;
}

.vat-drawer-layer {
  z-index: 400;
  position: fixed;
  inset: 0;
}

.vat-drawer-scrim {
  background: color-mix(in srgb, var(--navy-900) 34%, transparent);
  cursor: default;
  border: 0;
  width: 100%;
  position: absolute;
  inset: 0;
}

.vat-drawer {
  width: min(760px, calc(100vw - var(--rail-w)));
  background: var(--surface);
  min-width: 560px;
  box-shadow: var(--shadow-lg);
  flex-direction: column;
  display: flex;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
}

.vat-drawer--panel {
  top: var(--content-top, calc(var(--topbar-h) + 86px));
  z-index: 95;
  border-left: 1px solid var(--navy-200);
  position: fixed;
  bottom: 0;
  right: 0;
}

.vat-drilldown-panel {
  top: var(--vat-drilldown-top, calc(var(--content-top, calc(var(--topbar-h) + 86px)) + 52px));
}

.vat-drawer-head {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-5);
  border-bottom: 1px solid var(--navy-150);
  min-height: 82px;
  padding: 16px 20px;
  display: flex;
}

.vat-drawer-head > div {
  gap: var(--t360-space-2);
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
}

.vat-drawer-head span {
  color: var(--primary-700);
  letter-spacing: .07em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.vat-drawer-head h2 {
  color: var(--navy-heading);
  font: 900 20px / 1.2 Lato, sans-serif;
}

.vat-drawer-close:not(.btn) {
  border: 1px solid var(--navy-150);
  width: 36px;
  height: 36px;
  color: var(--navy-600);
  background: var(--navy-050);
  cursor: pointer;
  border-radius: 50%;
  place-items: center;
  display: grid;
}

.vat-drawer-head.opos-sheet-header--flush {
  border-bottom: 0;
  align-items: flex-start;
  min-height: auto;
  padding-bottom: 0;
}

.vat-drawer-body {
  flex: 1;
  overflow: auto;
}

.vat-drawer-body .vat-grid {
  min-width: 680px;
}

.vat-drawer-body code {
  color: var(--primary-700);
  font-size: 10px;
  font-weight: 800;
}

.vat-measure-hint {
  max-width: 280px;
  color: var(--navy-400);
  text-align: right;
  font-size: 11px;
  line-height: 1.35;
}

.vat-15a-disposal-note {
  border-top: 1px solid var(--navy-100);
  text-align: left;
  max-width: none;
  margin: 0;
  padding: 10px 14px;
}

.vat-measure-row {
  cursor: pointer;
}

.vat-measure-row:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: -2px;
}

.vat-measure-chevron {
  width: 22px;
  color: var(--navy-200);
  font-size: 15px;
  font-weight: 900;
}

.vat-measure-row:hover .vat-measure-chevron {
  color: var(--primary-600);
}

.vat-15a-drill-section {
  border-bottom: 1px solid var(--navy-100);
  padding: 14px 20px;
}

.vat-15a-drill-section h3 {
  margin-bottom: var(--t360-space-3);
  color: var(--navy-heading);
  font: 900 13px / 1.2 Lato, sans-serif;
}

.vat-15a-drill-fact {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-4);
  border-bottom: 1px solid var(--navy-100);
  padding: 8px 0;
  font-size: 12px;
  display: flex;
}

.vat-15a-drill-fact:last-of-type {
  border-bottom: 0;
}

.vat-15a-drill-fact span {
  color: var(--navy-500);
}

.vat-15a-drill-fact strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
}

.vat-15a-drill-conclusion {
  margin-top: var(--t360-space-3);
  border-left: 3px solid var(--warning-600);
  background: var(--warning-100);
  color: var(--navy-700);
  padding: 10px 12px;
  font-size: 11.5px;
  line-height: 1.5;
}

.vat-15a-decreed {
  background: var(--warning-100);
  color: var(--warning-text);
  letter-spacing: .03em;
  text-transform: uppercase;
  vertical-align: 1px;
  border-radius: 999px;
  margin-left: 6px;
  padding: 1px 6px;
  font-size: 9.5px;
  font-weight: 900;
  display: inline-block;
}

.vat-15a-drill-decree {
  margin: var(--t360-space-3) 0;
  border-left: 3px solid var(--warning-600);
  background: var(--warning-100);
  color: var(--navy-700);
  padding: 10px 12px;
  font-size: 11.5px;
  line-height: 1.5;
}

.vat-15a-drill-decree strong {
  color: var(--warning-text);
  margin-bottom: 3px;
  display: block;
}

.vat-15a-drill-decree-meta {
  color: var(--navy-500);
  margin-top: 4px;
  font-size: 10.5px;
}

.vat-15a-drafts {
  margin-bottom: var(--t360-space-4);
}

.vat-15a-draft-row {
  border-bottom: 1px solid var(--navy-100);
  grid-template-columns: 110px 1fr auto auto;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  font-size: 12px;
  display: grid;
}

.vat-15a-draft-row:last-child {
  border-bottom: 0;
}

.vat-15a-draft-row > b {
  color: var(--navy-heading);
}

.vat-15a-draft-meta {
  color: var(--navy-500);
  font-size: 12px;
  line-height: 1.4;
}

.vat-15a-draft-meta b {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
}

.vat-15a-draft-status {
  background: var(--navy-100);
  color: var(--navy-500);
  letter-spacing: .04em;
  text-transform: uppercase;
  white-space: nowrap;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 9.5px;
  font-weight: 900;
  display: inline-block;
}

.vat-15a-draft-empty {
  color: var(--navy-400);
  padding: 14px 16px;
  font-size: 12px;
}

.vat-15a-drafts .vat-card-head .head-right {
  align-items: center;
  gap: 8px;
  display: flex;
}

.vat-15a-dialog-form {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}

.vat-15a-dialog-form .wide {
  grid-column: 1 / -1;
}

.vat-15a-dialog-form label {
  color: var(--navy-500);
  flex-direction: column;
  gap: 5px;
  font-size: 10px;
  font-weight: 700;
  display: flex;
}

.vat-15a-dialog-form input, .vat-15a-dialog-form select, .vat-15a-dialog-form textarea {
  border: 1px solid var(--navy-150);
  width: 100%;
  color: var(--navy-heading);
  background: var(--surface);
  border-radius: 6px;
  padding: 8px 10px;
  font: 500 12.5px / 1.35 Lato, sans-serif;
}

.vat-15a-dialog-form input[readonly] {
  background: var(--navy-050);
  color: var(--navy-700);
}

.vat-15a-dialog-form textarea {
  resize: vertical;
  min-height: 72px;
}

.vat-15a-dialog-form small {
  color: var(--navy-400);
  font-size: 10.5px;
  font-weight: 500;
  line-height: 1.35;
}

.vat-15a-dialog-note {
  border-left: 3px solid var(--warning-600);
  background: var(--warning-100);
  color: var(--warning-text);
  margin-top: 12px;
  padding: 10px 12px;
  font-size: 11.5px;
  line-height: 1.5;
}

.vat-15a-dialog-note.info {
  border-left-color: var(--primary-600);
  background: var(--primary-050);
  color: var(--primary-700);
}

.vat-15a-dialog-error {
  color: var(--danger-600);
  margin-top: 10px;
  font-size: 11.5px;
  font-weight: 700;
}

.vat-15a-dialog-actions {
  justify-content: flex-end;
  gap: 8px;
  display: flex;
}

.vat-15a-override-current {
  border: 1px solid var(--warning-500);
  background: var(--warning-100);
  color: var(--warning-text);
  border-radius: 6px;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  font-size: 11.5px;
  font-weight: 700;
  display: flex;
}

.vat-15a-override-current .btn {
  margin-left: auto;
}

.vat-15a-override-form textarea {
  border: 1px solid var(--navy-150);
  width: 100%;
  min-height: 64px;
  color: var(--navy-heading);
  resize: vertical;
  border-radius: 6px;
  padding: 8px 10px;
  font: 500 12px / 1.4 Lato, sans-serif;
}

.vat-15a-override-actions {
  justify-content: flex-end;
  gap: 8px;
  margin-top: 8px;
  display: flex;
}

.vat-15a-history {
  margin: 0;
  padding: 0;
  list-style: none;
}

.vat-15a-history li {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-700);
  padding: 7px 0;
  font-size: 11.5px;
}

.vat-15a-history li:last-child {
  border-bottom: 0;
}

.vat-15a-history li small {
  color: var(--navy-400);
  font-size: 10.5px;
  display: block;
}

.vat-rate-source {
  flex-direction: column;
  gap: 2px;
  min-width: 170px;
  display: flex;
}

.vat-rate-source strong {
  color: var(--navy-heading);
  white-space: nowrap;
  font-size: 11px;
}

.vat-rate-source small {
  color: var(--navy-400);
  font-size: 9px;
  line-height: 1.3;
}

.vat-object-tab {
  min-width: 0;
}

.vat-object-toolbar {
  background: none;
  border-bottom: 0;
  justify-content: flex-start;
  min-height: auto;
  margin: 0;
  padding: 0;
}

.vat-object-toolbar .btn {
  margin-left: auto;
}

.vat-object-toolbar .vat-coverage-banner {
  flex: 1;
  min-width: 0;
}

.vat-object-select, .vat-object-period {
  color: var(--navy-800);
  flex-direction: row;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 700;
  display: flex;
}

.vat-object-select select {
  border: 1px solid var(--navy-200);
  min-width: 250px;
  min-height: 38px;
  color: var(--navy-800);
  background: var(--surface);
  border-radius: 4px;
  padding: 7px 10px;
  font-size: 13px;
  font-weight: 500;
}

.vat-coverage-banner {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-4);
  border: 1px solid var(--primary-200);
  border-left: 4px solid var(--primary-600);
  border-radius: var(--t360-radius-2);
  background: var(--primary-050);
  padding: 11px 14px;
  display: flex;
}

.vat-coverage-banner > strong {
  color: var(--navy-heading);
  font-size: 12px;
  font-weight: 900;
}

.vat-coverage-banner > small {
  color: var(--navy-500);
  white-space: nowrap;
  font-size: 10.5px;
}

.vat-coverage-banner-info {
  border-color: var(--navy-150);
  border-left-color: var(--navy-300);
  background: var(--navy-050);
}

.vat-coverage-cell {
  vertical-align: top;
  min-width: 190px;
}

.vat-coverage-rate {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.vat-coverage-rate > strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font: 900 13px / 1.2 Lato, sans-serif;
}

.vat-coverage-rate > small {
  color: var(--navy-400);
  font-size: 10px;
  line-height: 1.35;
}

.vat-coverage-state {
  white-space: normal;
}

.vat-coverage-actions {
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
  display: flex;
}

.vat-coverage-tile {
  grid-template-columns: minmax(240px, 1.2fr) minmax(220px, 1fr);
  display: grid;
  overflow: hidden;
}

.vat-coverage-tile-main, .vat-coverage-tile-meta {
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  min-width: 0;
  padding: 16px 18px;
  display: flex;
}

.vat-coverage-tile-main {
  border-left: 4px solid var(--secondary-600);
  background: var(--secondary-050);
}

.vat-coverage-tile-meta {
  background: var(--surface);
}

.vat-coverage-tile-main > span, .vat-coverage-tile-meta > span {
  color: var(--navy-400);
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 900;
}

.vat-coverage-tile-main > strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font: 900 28px / 1 Lato, sans-serif;
}

.vat-coverage-tile-meta .chip {
  align-self: flex-start;
}

.vat-coverage-tile-main > small, .vat-coverage-tile-meta > small {
  color: var(--navy-500);
  text-overflow: ellipsis;
  font-size: 10.5px;
  line-height: 1.35;
  overflow: hidden;
}

.vat-coverage-decision .vat-option-drawer-body p {
  color: var(--navy-600);
  font-size: 11.5px;
  line-height: 1.45;
}

.vat-coverage-decision textarea {
  border: 1px solid var(--navy-200);
  min-height: 84px;
  color: var(--navy-800);
  background: var(--surface);
  font: inherit;
  resize: vertical;
  border-radius: 4px;
  padding: 8px 10px;
}

.vat-object-chooser-card {
  box-shadow: none;
}

.vat-object-chooser-card .vat-state svg {
  color: var(--primary-600);
}

.vat-cockpit.vat-object-tab--fill {
  height: 100%;
  min-height: 0;
}

.vat-object-tab--fill .vat-object-list-card, .vat-object-tab--fill .vat-object-panel-stack, .vat-object-tab--fill [data-testid="vat-tax-item-list"] {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.vat-cockpit.vat-overview--fill {
  height: 100%;
  min-height: 0;
}

.vat-overview--fill .vat-overview-scroll {
  gap: var(--t360-space-5);
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
  overflow-y: auto;
}

.vat-cockpit.vat-uva--fill {
  height: 100%;
  min-height: 0;
}

.vat-uva--fill .vat-uva-scroll {
  gap: var(--t360-space-5);
  flex-direction: column;
  flex: 1;
  min-height: 0;
  margin-right: -16px;
  padding-right: 16px;
  display: flex;
  overflow-y: auto;
}

.vat-cockpit:not(.vat-uva--fill) > .vat-uva-scroll {
  display: contents;
}

.vat-uva-surface.vat-uva-kz-slot {
  flex: 1;
  min-height: 0;
}

.vat-uva--fill .vat-uva-surface.vat-uva-kz-slot {
  min-height: 240px;
}

.vat-uva-actionbar-slot {
  flex-shrink: 0;
}

.vat-uva-actionbar-slot:empty {
  display: none;
}

.vat-uva-actionbar {
  border-top: 1px solid var(--navy-150);
  background: var(--surface);
  min-height: 52px;
  box-shadow: var(--shadow);
  flex-shrink: 0;
  align-items: center;
  margin: 0 -16px -16px;
  padding: 10px 16px;
  display: flex;
}

.vat-uva-actionbar .vat-lifecycle-actionrow {
  flex: 1;
  margin-top: 0;
}

.vat-object-property-row:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: -2px;
}

.vat-object-property-cell {
  min-width: 250px;
}

.vat-object-property-cell strong, .vat-object-property-cell small {
  display: block;
}

.vat-object-property-cell small {
  color: var(--navy-400);
  margin-top: 3px;
  font-size: 10px;
  line-height: 1.35;
}

.vat-object-open-cell {
  color: var(--primary-700);
  white-space: nowrap;
  font-weight: 900;
  text-align: right !important;
}

.vat-object-header-actions {
  align-items: flex-end;
  gap: var(--t360-space-4);
  flex-direction: column;
  flex: none;
  display: flex;
}

.vat-object-messages:empty {
  display: none;
}

.vat-object-panel-stack {
  gap: var(--t360-space-5);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.vat-object-panel {
  min-width: 0;
}

.vat-object-panel .vat-table-wrap {
  max-height: 360px;
  overflow: auto;
}

.vat-object-panel .vat-grid {
  min-width: 620px;
}

.vat-object-panel .vat-governing {
  color: var(--primary-700);
  background: var(--primary-050);
  font-weight: 900;
}

.vat-object-panel .vat-option-rate-wrap {
  max-height: none;
}

.vat-option-scope-bar {
  align-items: center;
  gap: var(--t360-space-5);
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  min-height: 62px;
  box-shadow: var(--shadow-sm);
  padding: 10px 14px;
  display: flex;
}

.vat-option-scope-bar .vat-object-select select {
  min-width: 310px;
}

.vat-option-scope-bar > span {
  color: var(--navy-400);
  font-size: 10.5px;
  line-height: 1.4;
}

.vat-option-save-notice {
  border: 1px solid var(--success-500);
  border-radius: var(--t360-radius-2);
  color: var(--success-600);
  background: var(--success-100);
  padding: 11px 14px;
  font-size: 11px;
  font-weight: 700;
}

.vat-option-lead {
  grid-template-columns: minmax(260px, 1.35fr) repeat(2, minmax(170px, .8fr));
  display: grid;
  overflow: hidden;
}

.vat-option-lead-main, .vat-option-lead-meta {
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  min-width: 0;
  padding: 16px 18px;
  display: flex;
}

.vat-option-lead-main {
  border-left: 4px solid var(--primary-600);
  background: var(--primary-050);
}

.vat-option-lead-meta {
  background: var(--surface);
}

.vat-option-lead-main > span, .vat-option-lead-meta > span {
  color: var(--navy-400);
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 900;
}

.vat-option-lead-main > strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font: 900 32px / 1 Lato, sans-serif;
}

.vat-option-lead-meta > strong {
  color: var(--navy-heading);
  align-self: flex-start;
  font: 900 20px / 1.1 Lato, sans-serif;
}

.vat-option-lead-main > small, .vat-option-lead-meta > small {
  color: var(--navy-500);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
  line-height: 1.35;
  overflow: hidden;
}

.vat-method-chip {
  border-radius: var(--pill);
  min-height: 23px;
  color: var(--navy-600);
  background: var(--navy-100);
  white-space: nowrap;
  align-items: center;
  padding: 3px 9px;
  font-size: 10px;
  font-weight: 900;
  display: inline-flex;
}

.vat-method-chip.finanzamt {
  color: var(--primary-700);
  background: var(--primary-050);
}

.vat-version-history-wrap {
  max-height: none !important;
}

.vat-option-rate-row:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: -2px;
}

.vat-option-rate-carrier {
  color: var(--navy-heading);
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.vat-option-rate-carrier svg {
  color: var(--primary-600);
  flex: none;
}

.vat-option-basis-host > td {
  border-bottom: 1px solid var(--navy-150);
  background: var(--navy-050);
  padding: 0;
}

.vat-grid tbody .vat-option-basis-host:hover > td {
  background: var(--navy-050);
}

.vat-option-basis {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  margin: 12px 14px 16px 36px;
  overflow: hidden;
}

.vat-option-basis-head {
  border-bottom: 1px solid var(--navy-100);
  background: var(--navy-050);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  padding: 10px 14px;
  display: flex;
}

.vat-option-basis-head > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.vat-option-basis-head > div > span {
  color: var(--primary-700);
  letter-spacing: .07em;
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 900;
}

.vat-option-basis-head h3 {
  color: var(--navy-heading);
  font: 900 14px / 1.25 Lato, sans-serif;
}

.vat-basis-source {
  border-radius: var(--pill);
  white-space: nowrap;
  flex: none;
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  font-size: 9.5px;
  font-weight: 900;
  display: inline-flex;
}

.vat-basis-source.snapshot {
  color: var(--success-700);
  background: var(--success-100);
}

.vat-basis-source.fallback {
  color: var(--warning-text);
  background: var(--warning-100);
}

.vat-option-basis-equation {
  color: var(--primary-700);
  background: var(--surface);
  font-variant-numeric: tabular-nums;
  padding: 13px 14px 5px;
  font: 900 20px / 1.25 Lato, sans-serif;
}

.vat-option-basis-copy {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-400);
  background: var(--surface);
  padding: 0 14px 12px;
  font-size: 10px;
  line-height: 1.4;
}

.vat-option-basis-kpis {
  border-top: 0;
}

.vat-option-basis .vat-table-wrap {
  max-height: 320px;
}

.vat-option-basis-grid {
  min-width: 940px;
}

.vat-option-basis-grid thead th {
  background: var(--navy-050);
}

.vat-basis-unit, .vat-basis-position {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.vat-basis-unit strong, .vat-basis-position strong {
  color: var(--navy-heading);
  font-size: 11px;
}

.vat-basis-unit small, .vat-basis-position small {
  color: var(--navy-400);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 9px;
  overflow: hidden;
}

.vat-basis-status {
  border-radius: var(--pill);
  min-height: 21px;
  color: var(--navy-600);
  background: var(--navy-100);
  white-space: nowrap;
  align-items: center;
  padding: 2px 8px;
  font-size: 9.5px;
  font-weight: 900;
  display: inline-flex;
}

.vat-basis-status.success {
  color: var(--success-700);
  background: var(--success-100);
}

.vat-basis-status.warning {
  color: var(--warning-text);
  background: var(--warning-100);
}

.vat-option-basis-state {
  min-height: 120px;
  color: var(--navy-400);
  place-items: center;
  font-size: 11px;
  display: grid;
}

.vat-option-basis-state.error {
  color: var(--danger-600);
  background: var(--danger-100);
}

.vat-object-kpis {
  border-bottom: 1px solid var(--navy-100);
  background: var(--navy-100);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  display: grid;
}

.vat-object-kpis > div {
  background: var(--surface);
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  padding: 12px 14px;
  display: flex;
}

.vat-object-kpis span {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 900;
}

.vat-object-kpis strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font-size: 15px;
}

.vat-object-card-head {
  align-items: center;
}

.vat-object-period input {
  border: 1px solid var(--navy-200);
  min-height: 38px;
  color: var(--navy-800);
  background: var(--surface);
  border-radius: 4px;
  padding: 6px 9px;
  font-size: 13px;
  font-weight: 500;
}

.vat-rollup-empty-level {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-500);
  background: var(--navy-050);
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  font-size: 11px;
  display: flex;
}

.vat-rollup-empty-level strong {
  color: var(--navy-700);
  flex: none;
}

.vat-use-change, .vat-scenario-results {
  gap: var(--t360-space-5);
  min-width: 0;
  display: grid;
}

.vat-scenario-head {
  align-items: center;
}

.vat-scenario-head h2, .vat-scenario-variants .vat-card-head h2, .vat-scenario-clocks .vat-card-head h2, .vat-scenario-corrections .vat-card-head h2, .vat-scenario-measures .vat-card-head h2 {
  align-items: center;
  gap: 7px;
  display: inline-flex;
}

.vat-scenario-kind {
  border-bottom: 1px solid var(--navy-100);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 14px 16px;
  display: grid;
}

.vat-scenario-kind > button {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-4);
  min-width: 0;
  color: var(--navy-700);
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  align-items: center;
  gap: 11px;
  padding: 12px 14px;
  display: flex;
}

.vat-scenario-kind > button:hover {
  border-color: var(--primary-200);
  background: var(--navy-050);
}

.vat-scenario-kind > button.active {
  border-color: var(--primary-600);
  background: var(--primary-050);
  box-shadow: inset 0 0 0 1px var(--primary-600);
}

.vat-scenario-kind-icon {
  border-radius: var(--t360-radius-2);
  width: 36px;
  height: 36px;
  color: var(--primary-700);
  background: var(--primary-100);
  flex: none;
  place-items: center;
  display: grid;
}

.vat-scenario-kind button > span:last-child {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.vat-scenario-kind strong {
  color: var(--navy-heading);
  font-size: 13px;
}

.vat-scenario-kind small {
  color: var(--navy-500);
  font-size: 10.5px;
  line-height: 1.35;
}

.vat-scenario-form-body {
  gap: 10px;
  min-width: 0;
  padding: 0 16px 14px;
  display: grid;
}

.vat-scenario-form-intro {
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  display: flex;
}

.vat-scenario-form-intro > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.vat-scenario-form-intro > div strong {
  color: var(--navy-heading);
  font-size: 13px;
}

.vat-scenario-form-intro > div span {
  color: var(--navy-500);
  font-size: 10.5px;
  line-height: 1.4;
}

.vat-scenario-year, .vat-disposal-date-row label {
  color: var(--navy-500);
  flex-direction: column;
  flex: none;
  gap: 5px;
  font-size: 10px;
  font-weight: 900;
  display: flex;
}

.vat-scenario-year input, .vat-disposal-date-row input, .vat-scenario-roster select, .vat-scenario-roster input {
  border: 1px solid var(--navy-200);
  min-height: 34px;
  color: var(--navy-800);
  background: var(--surface);
  border-radius: 4px;
  padding: 6px 9px;
  font: 700 11px / 1.2 Lato, sans-serif;
}

.vat-scenario-year input {
  width: 110px;
}

.vat-scenario-rule {
  border: 1px dashed var(--primary-200);
  border-radius: var(--t360-radius-2);
  color: var(--navy-600);
  background: var(--primary-050);
  align-items: flex-start;
  gap: 8px;
  padding: 9px 11px;
  font-size: 10.5px;
  line-height: 1.45;
  display: flex;
}

.vat-scenario-rule svg {
  color: var(--primary-600);
  flex: none;
}

.vat-scenario-roster {
  min-width: 1040px !important;
}

.vat-scenario-roster td > strong, .vat-scenario-roster td > small, .vat-scenario-measures td > strong, .vat-scenario-measures td > small {
  display: block;
}

.vat-scenario-roster td > strong, .vat-scenario-measures td > strong {
  color: var(--navy-heading);
}

.vat-scenario-roster td > small, .vat-scenario-measures td > small {
  color: var(--navy-400);
  margin-top: 3px;
  font-size: 9.5px;
  line-height: 1.35;
}

.vat-scenario-roster select {
  min-width: 170px;
}

.vat-scenario-roster input {
  min-width: 132px;
}

.vat-scenario-block-reason {
  max-width: 230px;
  color: var(--warning-text) !important;
}

.vat-scenario-assumption {
  max-width: 220px;
  color: var(--primary-700) !important;
}

.vat-scenario-basis {
  border-radius: var(--pill);
  width: fit-content;
  color: var(--navy-500);
  background: var(--navy-100);
  white-space: nowrap;
  margin-top: 4px;
  padding: 2px 6px;
  font-size: 8.5px;
  font-weight: 900;
  display: block;
}

.vat-scenario-basis.parking_spaces {
  color: var(--warning-text);
  background: var(--warning-100);
}

.vat-scenario-vacancy td {
  background: var(--navy-050);
}

.vat-scenario-roster tfoot th {
  vertical-align: middle;
}

.vat-scenario-actions {
  border-top: 1px solid var(--navy-100);
  background: var(--navy-050);
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  display: flex;
}

.vat-scenario-actions > div:first-child {
  color: var(--navy-500);
  margin-right: auto;
  font-size: 10.5px;
  font-weight: 700;
}

.vat-scenario-incomplete {
  color: var(--danger-600);
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.vat-disposal-date-row {
  align-items: flex-end;
  gap: 16px;
  padding-top: 2px;
  display: flex;
}

.vat-disposal-date-row p {
  max-width: 620px;
  color: var(--navy-500);
  padding-bottom: 8px;
  font-size: 10.5px;
  line-height: 1.4;
}

.vat-disposal-routes {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  display: grid;
}

.vat-disposal-routes button {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-4);
  min-height: 116px;
  color: var(--navy-700);
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  align-content: start;
  gap: 7px;
  padding: 12px;
  display: grid;
}

.vat-disposal-routes button:hover {
  border-color: var(--primary-200);
}

.vat-disposal-routes button.active {
  border-color: var(--primary-600);
  background: var(--primary-050);
  box-shadow: inset 0 0 0 1px var(--primary-600);
}

.vat-disposal-routes button > span {
  border-radius: var(--t360-radius-2);
  width: 31px;
  height: 31px;
  color: var(--primary-700);
  background: var(--primary-100);
  place-items: center;
  display: grid;
}

.vat-disposal-routes strong {
  color: var(--navy-heading);
  font-size: 12px;
}

.vat-disposal-routes small {
  color: var(--navy-500);
  font-size: 10.5px;
  line-height: 1.4;
}

.vat-scenario-variant-list {
  display: grid;
}

.vat-scenario-variant-list > button {
  border: 0;
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-700);
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  grid-template-columns: 30px minmax(0, 1fr) minmax(220px, auto);
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  display: grid;
}

.vat-scenario-variant-list > button:last-child {
  border-bottom: 0;
}

.vat-scenario-variant-list > button:hover {
  background: var(--navy-050);
}

.vat-scenario-variant-list > button.active {
  background: var(--primary-050);
  box-shadow: inset 3px 0 0 var(--primary-600);
}

.vat-scenario-variant-index {
  width: 25px;
  height: 25px;
  color: var(--surface);
  background: var(--navy-400);
  border-radius: 50%;
  place-items: center;
  font-size: 10px;
  font-weight: 900;
  display: grid;
}

.vat-scenario-variant-list > button.active .vat-scenario-variant-index {
  background: var(--primary-600);
}

.vat-scenario-variant-list button > span:nth-child(2) {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.vat-scenario-variant-list button > span:nth-child(2) strong {
  color: var(--navy-heading);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11.5px;
  overflow: hidden;
}

.vat-scenario-variant-list button small {
  color: var(--navy-400);
  font-size: 9.5px;
  line-height: 1.35;
}

.vat-scenario-variant-list button em {
  color: var(--primary-700);
  font-size: 9.5px;
  font-style: normal;
  font-weight: 700;
}

.vat-scenario-variant-rate {
  text-align: right;
  justify-items: end;
  gap: 3px;
  display: grid;
}

.vat-scenario-variant-rate b, .vat-scenario-variant-rate strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
}

.vat-scenario-variant-rate strong {
  color: var(--primary-700);
}

.vat-scenario-empty {
  border: 1px dashed var(--navy-200);
  border-radius: var(--t360-radius-4);
  min-height: 170px;
  color: var(--navy-400);
  background: var(--navy-050);
  text-align: center;
  align-content: center;
  place-items: center;
  gap: 7px;
  padding: 24px;
  display: grid;
}

.vat-scenario-empty svg {
  color: var(--primary-600);
}

.vat-scenario-empty strong {
  color: var(--navy-heading);
  font-size: 14px;
}

.vat-scenario-empty span {
  max-width: 560px;
  font-size: 11px;
  line-height: 1.45;
}

.vat-scenario-warning {
  border: 1px solid var(--warning-500);
  border-left: 4px solid var(--warning-600);
  border-radius: var(--t360-radius-4);
  color: var(--warning-text);
  background: var(--warning-100);
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  font-size: 11px;
  line-height: 1.45;
  display: flex;
}

.vat-scenario-warning svg {
  flex: none;
}

.vat-scenario-warning strong {
  color: var(--warning-text);
  display: block;
}

.vat-scenario-clock-grid, .vat-scenario-correction-grid {
  background: var(--navy-100);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  display: grid;
}

.vat-scenario-correction-grid {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.vat-scenario-figure {
  background: var(--surface);
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  min-height: 104px;
  padding: 14px 16px;
  display: flex;
}

.vat-scenario-figure > span {
  color: var(--navy-400);
  letter-spacing: .055em;
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 900;
}

.vat-scenario-figure > strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font: 900 22px / 1 Lato, sans-serif;
}

.vat-scenario-figure > small {
  color: var(--navy-500);
  font-size: 9.5px;
  line-height: 1.35;
}

.vat-scenario-clock-foot {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-500);
  background: var(--navy-050);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  font-size: 10.5px;
  line-height: 1.4;
  display: flex;
}

.vat-scenario-clock-foot strong {
  color: var(--navy-heading);
}

.vat-scenario-decree-note {
  color: var(--warning-text);
  text-align: right;
  font-weight: 800;
}

.vat-scenario-impact {
  border-left: 4px solid var(--primary-600);
  background: var(--primary-050);
  grid-template-columns: auto minmax(0, 1fr) minmax(250px, .8fr);
  align-items: center;
  gap: 16px;
  padding: 17px 18px;
  display: grid;
}

.vat-scenario-impact[data-direction="repayment"] {
  border-left-color: var(--danger-600);
  background: var(--danger-100);
}

.vat-scenario-impact[data-direction="reimbursement"] {
  border-left-color: var(--success-600);
  background: var(--success-100);
}

.vat-scenario-impact > svg {
  color: var(--primary-600);
}

.vat-scenario-impact > div {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.vat-scenario-impact span {
  color: var(--navy-500);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 900;
}

.vat-scenario-impact strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font: 900 26px / 1 Lato, sans-serif;
}

.vat-scenario-impact small {
  color: var(--navy-500);
  font-size: 9.5px;
}

.vat-scenario-impact[data-direction="repayment"] strong {
  color: var(--danger-600);
}

.vat-scenario-impact[data-direction="reimbursement"] strong {
  color: var(--success-600);
}

.vat-scenario-measures .vat-table-wrap {
  max-height: none;
}

.vat-scenario-measures .vat-grid {
  min-width: 1020px;
}

.vat-scenario-measures td:nth-child(3) small {
  color: var(--primary-700);
  font-weight: 900;
  display: block;
}

.vat-scenario-unevaluable {
  border-left: 3px solid var(--warning-600);
  max-width: 250px;
  color: var(--warning-text);
  background: var(--warning-100);
  padding: 5px 7px;
  font-size: 9.5px;
  font-weight: 700;
  line-height: 1.4;
  display: inline-block;
}

.vat-scenario-measure-foot {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-500);
  background: var(--navy-050);
  text-align: right;
  padding: 9px 14px;
  font-size: 10px;
  font-weight: 900;
}

.vat-scenario-disclosures {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  display: grid;
}

.vat-scenario-disclosures > div {
  border-right: 1px solid var(--navy-100);
  align-items: flex-start;
  gap: 10px;
  padding: 13px 14px;
  display: flex;
}

.vat-scenario-disclosures > div:last-child {
  border-right: 0;
}

.vat-scenario-disclosures svg {
  color: var(--primary-600);
  flex: none;
}

.vat-scenario-disclosures p {
  color: var(--navy-600);
  font-size: 10.5px;
  line-height: 1.45;
}

.vat-scenario-disclosures strong {
  color: var(--navy-heading);
  margin-bottom: 4px;
  font-size: 11px;
  display: block;
}

.vat-scenario-disclosures .vat-scenario-year-basis {
  background: var(--warning-100);
}

.vat-scenario-disclosures .vat-scenario-year-basis svg, .vat-scenario-disclosures .vat-scenario-year-basis strong {
  color: var(--warning-text);
}

.vat-disposal-figures {
  background: var(--navy-100);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  display: grid;
}

.vat-gig-statement {
  border-left: 4px solid var(--secondary-500);
  background: var(--teal-050);
  align-items: flex-start;
  gap: 14px;
  padding: 20px;
  display: flex;
}

.vat-gig-statement > svg {
  color: var(--teal-600);
  flex: none;
}

.vat-gig-statement strong {
  color: var(--navy-heading);
  font-size: 16px;
}

.vat-gig-statement p {
  color: var(--navy-600);
  margin-top: 7px;
  font-size: 11px;
  line-height: 1.5;
}

@media (max-width: 1100px) {
  .vat-scenario-clock-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .vat-scenario-disclosures {
    grid-template-columns: 1fr;
  }

  .vat-scenario-disclosures > div {
    border-right: 0;
    border-bottom: 1px solid var(--navy-100);
  }

  .vat-scenario-disclosures > div:last-child {
    border-bottom: 0;
  }
}

@media (max-width: 760px) {
  .vat-scenario-kind, .vat-disposal-routes, .vat-scenario-clock-grid, .vat-scenario-correction-grid, .vat-disposal-figures {
    grid-template-columns: 1fr;
  }

  .vat-scenario-form-intro, .vat-disposal-date-row, .vat-scenario-actions, .vat-scenario-clock-foot {
    flex-direction: column;
    align-items: stretch;
  }

  .vat-scenario-year input {
    width: 100%;
  }

  .vat-scenario-actions > div:first-child {
    margin-right: 0;
  }

  .vat-scenario-variant-list > button {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .vat-scenario-variant-rate {
    text-align: left;
    grid-column: 2;
    justify-items: start;
  }

  .vat-scenario-impact {
    grid-template-columns: 1fr;
  }
}

.vat-tax-items-head-controls {
  flex: none;
  align-items: center;
  gap: 12px;
  display: flex;
}

.vat-tax-items-live {
  border-color: var(--success-500);
  color: var(--success-700);
  background: var(--success-100);
}

.vat-tax-items-deductibility-head {
  justify-content: flex-end;
  align-items: center;
  gap: 5px;
  width: 100%;
  height: 32px;
  padding: 0 10px;
  display: inline-flex;
}

.vat-tax-items-deductibility-head .pdm-field-help-tip {
  text-align: left;
  text-transform: none;
  letter-spacing: normal;
  white-space: normal;
}

:is([data-testid="vat-tax-items-rollup"] th:has(.vat-tax-items-deductibility-head:hover), [data-testid="vat-tax-items-rollup"] th:has(.vat-tax-items-deductibility-head:focus-within)) {
  z-index: 30;
}

.vat-tax-items-drill {
  border-top: 1px solid var(--navy-150);
  background: var(--surface);
}

.vat-tax-items-drill-kpis {
  border-bottom: 1px solid var(--navy-100);
  background: var(--surface);
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  display: flex;
}

.vat-tax-items-drill-kpis .vat-tax-items-drill-asset-card {
  flex-shrink: 1;
  min-width: 0;
  max-width: 320px;
  margin-left: 0;
}

.vat-tax-items-drill-kpis .vat-tax-items-drill-asset-card .pdm-asset-card-copy {
  min-width: 0;
}

.vat-tax-items-drill-kpis .vat-tax-items-drill-asset-card .pdm-asset-card-copy strong {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.vat-tax-items-drill-kpis .pdm-kpi-cards {
  flex-shrink: 0;
  margin-right: 0;
}

.vat-tax-items-drill-kpis .pdm-kpi-cards .pdm-kpi-card {
  flex: none;
}

.vat-drawer-body--fill {
  flex-direction: column;
  padding: 0;
  display: flex;
  overflow: hidden;
}

.vat-drawer-body--fill .vat-tax-items-drill {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.vat-drawer-body--fill .vat-tax-items-drill-kpis, .vat-drawer-body--fill .vat-inline-error, .vat-drawer-body--fill .vat-tax-items-direction-tabs {
  flex-shrink: 0;
}

.vat-drawer-body--fill .vat-tax-items-direction, .vat-drawer-body--fill .vat-tax-items-evidence-body {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  padding: 14px 18px 20px;
  display: flex;
}

.vat-drawer-body--fill .vat-tax-items-direction-tabs {
  margin-bottom: 0;
}

.vat-tax-items-direction-tabs {
  margin: 12px 16px;
  display: inline-flex;
}

.vat-tax-allocation-cell {
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  min-width: 145px;
  display: flex;
}

.vat-tax-allocation-cell small {
  color: var(--navy-500);
  white-space: nowrap;
  font-size: 9px;
}

.vat-tax-allocation {
  border-radius: var(--pill);
  min-height: 21px;
  color: var(--navy-600);
  background: var(--navy-100);
  white-space: nowrap;
  align-items: center;
  padding: 2px 8px;
  font-size: 9.5px;
  font-weight: 700;
  display: inline-flex;
}

.vat-tax-allocation--common_split {
  color: var(--primary-700);
  background: var(--primary-050);
}

.vat-tax-allocation--direct_recoverable {
  color: var(--success-700);
  background: var(--success-100);
}

.vat-tax-allocation--direct_blocked {
  color: var(--danger-600);
  background: var(--danger-100);
}

.vat-tax-allocation--capex_measure {
  color: var(--warning-text);
  background: var(--warning-100);
}

.vat-cockpit.vat-tax-items-screen--fill {
  height: 100%;
  min-height: 0;
}

.vat-tax-items-screen--fill [data-testid="vat-tax-item-list"] {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.vat-tax-items-footer {
  border-top: 2px solid var(--navy-150);
  background: var(--surface);
  min-height: 52px;
  box-shadow: var(--shadow);
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin: 0 -16px -16px;
  padding: 9px 16px;
  display: flex;
}

.vat-tax-items-tie {
  border-radius: var(--pill);
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  font-size: 10px;
  font-weight: 700;
  display: inline-flex;
}

.vat-tax-items-tie.ok {
  color: var(--success-700);
  background: var(--success-100);
}

.vat-tax-items-tie.bad {
  color: var(--danger-600);
  background: var(--danger-100);
}

.vat-tax-items-uva-link {
  color: var(--primary-700);
  font-size: 11px;
  font-weight: 700;
}

.vat-tax-items-uva-link:hover {
  text-decoration: underline;
}

.vat-beleg-drawer[data-drawer-content="asset"] {
  width: min(980px, calc(100vw - var(--rail-w)));
}

.vat-drawer .vat-tax-items-drill {
  border-top: 0;
}

.vat-beleg-drawer-body {
  flex-direction: column;
  gap: 18px;
  min-height: 100%;
  padding: 18px 20px 28px;
  display: flex;
}

.vat-beleg-facts {
  border: 1px solid var(--navy-150);
  background: var(--navy-100);
  border-radius: 4px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 0;
  display: grid;
  overflow: hidden;
}

.vat-beleg-facts > div {
  background: var(--surface);
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  padding: 12px 14px;
  display: flex;
}

.vat-beleg-facts dt {
  color: var(--navy-400);
  letter-spacing: .05em;
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 900;
}

.vat-beleg-facts dd {
  color: var(--navy-heading);
  text-overflow: ellipsis;
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  overflow: hidden;
}

.vat-beleg-section {
  border-bottom: 1px solid var(--navy-100);
  flex-direction: column;
  gap: 10px;
  padding-bottom: 16px;
  display: flex;
}

.vat-beleg-section h3 {
  color: var(--primary-500);
  align-items: center;
  gap: 12px;
  font: 700 16px / 1.2 Lato, sans-serif;
  display: flex;
}

.vat-beleg-section h3:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  min-width: 24px;
  height: 1px;
}

.vat-beleg-treatment {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.vat-beleg-treatment > strong {
  color: var(--navy-heading);
  font-size: 12px;
}

.vat-beleg-origin {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.vat-beleg-origin strong {
  color: var(--navy-heading);
  font-size: 12px;
}

.vat-beleg-origin code {
  overflow-wrap: anywhere;
  color: var(--primary-700);
  font-size: 10px;
}

.vat-beleg-no-route {
  border-left: 4px solid var(--warning-600);
  color: var(--warning-text);
  background: var(--warning-100);
  border-radius: 4px;
  padding: 11px 13px;
  font-size: 10.5px;
  line-height: 1.4;
}

.vat-option-drawer-form {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.vat-option-drawer-body {
  gap: var(--t360-space-5);
  flex-direction: column;
  flex: 1;
  min-height: 0;
  padding: 18px 20px 28px;
  display: flex;
  overflow-y: auto;
}

.vat-option-drawer-scope {
  border: 1px solid var(--primary-100);
  border-radius: var(--t360-radius-2);
  background: var(--primary-050);
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 11px 13px;
  display: flex;
}

.vat-option-drawer-scope span {
  color: var(--navy-500);
  letter-spacing: .05em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.vat-option-drawer-scope strong {
  color: var(--primary-700);
  text-align: right;
  font-size: 12px;
}

.vat-option-form-section {
  border-bottom: 1px solid var(--navy-100);
  flex-direction: column;
  gap: 12px;
  padding-bottom: 16px;
  display: flex;
}

.vat-option-form-section h3 {
  color: var(--primary-500);
  align-items: center;
  gap: 12px;
  font: 700 16px / 1.2 Lato, sans-serif;
  display: flex;
}

.vat-option-form-section h3:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  min-width: 24px;
  height: 1px;
}

.vat-option-field {
  min-width: 0;
  color: var(--navy-800);
  flex-direction: column;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.vat-option-field > span {
  font-size: 12px;
}

.vat-option-field input, .vat-option-field select, .vat-option-field textarea {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 38px;
  color: var(--navy-800);
  background: var(--surface);
  border-radius: 4px;
  outline: none;
  padding: 8px 10px;
  font: 500 13px / 1.35 Lato, sans-serif;
}

.vat-option-field textarea {
  resize: vertical;
  min-height: 86px;
}

.vat-option-field input:focus, .vat-option-field select:focus, .vat-option-field textarea:focus {
  border-color: var(--primary-600);
  box-shadow: 0 0 0 3px var(--primary-t08);
}

.vat-option-field input[readonly] {
  color: var(--navy-500);
  background: var(--navy-050);
  cursor: not-allowed;
}

.vat-option-field small {
  color: var(--navy-400);
  font-size: 10px;
  font-weight: 500;
  line-height: 1.35;
}

.vat-option-field.invalid input, .vat-option-field.invalid textarea {
  border-color: var(--danger-600);
}

.vat-option-fallback-note {
  border-left: 4px solid var(--warning-600);
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  padding: 10px 12px;
  font-size: 10.5px;
  line-height: 1.4;
}

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

.vat-option-methods > label {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  cursor: pointer;
  align-items: flex-start;
  gap: 9px;
  min-width: 0;
  padding: 12px;
  display: flex;
}

.vat-option-methods > label.selected {
  border-color: var(--primary-600);
  background: var(--primary-050);
  box-shadow: inset 0 0 0 1px var(--primary-600);
}

.vat-option-methods input {
  width: 16px;
  height: 16px;
  accent-color: var(--primary-600);
  flex: none;
  margin: 1px 0 0;
}

.vat-option-methods label > span {
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.vat-option-methods strong {
  color: var(--navy-heading);
  font-size: 12px;
}

.vat-option-methods small {
  color: var(--navy-400);
  font-size: 10px;
  font-weight: 500;
  line-height: 1.35;
}

.vat-option-rate-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.vat-option-readonly-rate {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 11px 12px;
  display: flex;
}

.vat-option-readonly-rate > span {
  color: var(--navy-800);
  font-size: 12px;
  font-weight: 700;
}

.vat-option-readonly-rate > strong {
  color: var(--primary-700);
  font-variant-numeric: tabular-nums;
  font: 900 21px / 1.2 Lato, sans-serif;
}

.vat-option-readonly-rate > small {
  color: var(--navy-400);
  font-size: 10px;
  line-height: 1.35;
}

.vat-option-percent-input {
  position: relative;
}

.vat-option-percent-input input {
  text-align: right;
  font-variant-numeric: tabular-nums;
  padding-right: 34px;
}

.vat-option-percent-input > span {
  color: var(--navy-500);
  position: absolute;
  top: 50%;
  right: 11px;
  transform: translateY(-50%);
}

.vat-option-drawer-basis {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  overflow: hidden;
}

.vat-option-basis-toggle {
  width: 100%;
  min-height: 42px;
  color: var(--primary-700);
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 8px;
  padding: 8px 11px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.vat-option-basis-toggle span {
  text-align: left;
  flex: 1;
}

.vat-option-basis-toggle:hover {
  background: var(--primary-t08);
}

.vat-option-drawer-basis .vat-option-basis {
  margin: 0 10px 10px;
}

.vat-option-lock-note {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  color: var(--navy-500);
  background: var(--navy-050);
  align-items: flex-start;
  gap: 10px;
  padding: 11px 12px;
  font-size: 10.5px;
  line-height: 1.45;
  display: flex;
}

.vat-option-lock-note svg {
  color: var(--navy-600);
  flex: none;
}

.vat-inline-error {
  border: 1px solid var(--danger-600);
  border-radius: var(--t360-radius-2);
  color: var(--danger-600);
  background: var(--danger-100);
  padding: 10px 12px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
}

.vat-option-drawer-foot {
  border-top: 1px solid var(--navy-150);
  background: var(--surface);
  flex: none;
  justify-content: flex-end;
  gap: 8px;
  padding: 13px 20px;
  display: flex;
}

.vat-uva-surface, .vat-uva-lifecycle {
  gap: var(--t360-space-5);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.vat-lifecycle-body, .vat-panel-body {
  padding: 16px;
}

.vat-lifecycle-prepare-summary {
  cursor: pointer;
  border: 0;
  gap: 6px;
  margin-bottom: 10px;
}

.vat-lifecycle-prepare-summary:hover {
  filter: brightness(.96);
}

.vat-stepper {
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.vat-stepper li {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  min-width: 0;
  color: var(--navy-400);
  background: var(--navy-050);
  align-items: flex-start;
  gap: 8px;
  padding: 10px;
  display: flex;
}

.vat-stepper li.done {
  color: var(--success-600);
  border-color: color-mix(in srgb, var(--success-500) 38%, var(--navy-150));
  background: var(--success-100);
}

.vat-stepper li.current {
  color: var(--primary-700);
  border-color: var(--primary-300);
  background: var(--primary-050);
  box-shadow: inset 0 -2px 0 var(--primary-600);
}

.vat-step-marker {
  width: 24px;
  height: 24px;
  color: var(--surface);
  background: var(--navy-300);
  border-radius: 50%;
  flex: none;
  place-items: center;
  font-size: 10px;
  font-weight: 900;
  display: grid;
}

.vat-stepper li.done .vat-step-marker {
  background: var(--success-500);
}

.vat-stepper li.current .vat-step-marker {
  background: var(--primary-600);
}

.vat-step-copy {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.vat-step-copy strong {
  color: currentColor;
  font-size: 11px;
  line-height: 1.2;
}

.vat-step-copy small {
  color: var(--navy-400);
  font-size: 9.5px;
  line-height: 1.25;
}

.vat-lifecycle-summary {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  grid-template-columns: repeat(3, minmax(160px, 1fr));
  margin-top: 14px;
  display: grid;
}

.vat-lifecycle-summary > div {
  border-right: 1px solid var(--navy-100);
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding: 10px 12px;
  display: flex;
}

.vat-lifecycle-summary > div:last-child {
  border-right: 0;
}

.vat-lifecycle-summary span, .vat-evidence-grid span {
  color: var(--navy-400);
  letter-spacing: .03em;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 800;
}

.vat-lifecycle-summary strong, .vat-evidence-grid strong {
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  overflow: hidden;
}

.vat-transmission-evidence {
  border: 1px solid var(--primary-200);
  border-radius: var(--t360-radius-2);
  background: var(--primary-050);
  grid-template-columns: minmax(220px, 1fr) minmax(260px, 1.3fr);
  align-items: end;
  gap: 10px 16px;
  margin-top: 14px;
  padding: 12px;
  display: grid;
}

.vat-transmission-evidence > label:not(.vat-transmission-confirmation) {
  min-width: 0;
  color: var(--navy-600);
  flex-direction: column;
  gap: 5px;
  font-size: 10px;
  font-weight: 900;
  display: flex;
}

.vat-transmission-evidence input[type="text"], .vat-correction-create select {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 36px;
  color: var(--navy-800);
  background: var(--surface);
  font: inherit;
  border-radius: 4px;
  padding: 7px 9px;
}

.vat-transmission-confirmation {
  color: var(--navy-700);
  cursor: pointer;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 800;
  display: flex;
}

.vat-transmission-confirmation input {
  width: auto;
  min-height: auto;
}

.vat-transmission-evidence > small {
  color: var(--navy-400);
  grid-column: 1 / -1;
  font-size: 9.5px;
}

.vat-transmission-evidence input:focus-visible, .vat-correction-create select:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: 2px;
}

.vat-lifecycle-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  display: flex;
}

.vat-lifecycle-action {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  max-width: 360px;
  display: flex;
}

.vat-lifecycle-actionrow {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  display: flex;
}

.vat-lifecycle-actionrow-left {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.vat-lifecycle-reconciliation-card {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  font-size: 10.5px;
  font-weight: 800;
  display: inline-flex;
}

.vat-lifecycle-reconciliation-card.ties {
  color: var(--success-600);
}

.vat-lifecycle-reconciliation-card.difference {
  color: var(--danger-600);
}

.vat-lifecycle-reconciliation-card span {
  font-variant-numeric: tabular-nums;
}

.vat-lifecycle-actionrow-fact {
  min-width: 0;
  color: var(--navy-600);
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.vat-lifecycle-actionrow-fact > span:first-child {
  color: var(--navy-400);
  flex-shrink: 0;
  display: inline-flex;
}

.vat-lifecycle-actionrow-reason {
  color: var(--navy-500);
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 500;
  display: inline-flex;
}

.vat-lifecycle-actionrow-sep {
  color: var(--navy-200);
}

.vat-lifecycle-actionrow-buttons {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.vat-more-actions {
  position: relative;
}

.vat-more-actions .btn svg:last-child {
  margin-left: 2px;
}

.vat-more-menu {
  z-index: 10;
  border: 1px solid var(--navy-150);
  background: #fff;
  border-radius: 9px;
  min-width: 220px;
  padding: 5px;
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  box-shadow: 0 14px 35px #07153029;
}

.vat-uva-actionbar .vat-more-menu {
  top: auto;
  bottom: calc(100% + 6px);
}

.vat-more-menu button {
  width: 100%;
  color: var(--navy-700);
  text-align: left;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font: 700 12px / 1.3 Lato, sans-serif;
  display: flex;
}

.vat-more-menu button:hover:not(:disabled) {
  background: var(--primary-t08);
}

.vat-more-menu button:disabled {
  color: var(--navy-300);
  cursor: not-allowed;
}

.vat-more-menu button svg {
  color: var(--navy-400);
  flex-shrink: 0;
}

.vat-inline-error {
  border: 1px solid var(--danger-600);
  border-radius: var(--t360-radius-2);
  color: var(--danger-600);
  background: var(--danger-100);
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  padding: 9px 11px;
  font-size: 10.5px;
  display: flex;
}

.vat-inline-error code {
  color: inherit;
  margin-left: auto;
  font-size: 9.5px;
}

.vat-settlement-blockers {
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-2);
  background: color-mix(in srgb, var(--warning-100) 45%, var(--surface));
  flex-direction: column;
  gap: 4px;
  margin-top: 12px;
  padding: 11px 12px;
  display: flex;
}

.vat-settlement-blockers > strong {
  color: var(--navy-800);
  font-size: 11px;
  font-weight: 900;
}

.vat-settlement-blockers > small {
  color: var(--navy-500);
  font-size: 10px;
  font-weight: 700;
}

.vat-settlement-blockers ul {
  flex-direction: column;
  gap: 7px;
  margin: 5px 0 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.vat-settlement-blockers li {
  color: var(--navy-700);
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
  font-size: 10.5px;
  line-height: 1.45;
  display: flex;
}

.vat-settlement-blockers li > svg {
  color: var(--warning-text);
  flex: none;
  margin-top: 1px;
}

.vat-settlement-blockers li > span {
  flex: 1;
  min-width: 240px;
}

.vat-payable-inline {
  font-variant-numeric: tabular-nums;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  display: inline-flex;
}

.vat-payable-inline small {
  font-size: 9px;
  font-weight: 900;
}

.vat-payable-inline.erstattung {
  color: var(--success-600);
}

.vat-payable-inline.zahllast {
  color: var(--danger-600);
}

.vat-payable-inline.neutral, .vat-payable-inline.ausgeglichen {
  color: var(--navy-600);
}

.vat-elster-steps {
  background: var(--navy-100);
  flex-direction: column;
  gap: 1px;
  display: flex;
}

.vat-elster-step {
  background: var(--surface);
  grid-template-columns: 26px 1fr auto;
  align-items: start;
  gap: 10px;
  padding: 13px 16px;
  display: grid;
}

.vat-elster-step.locked {
  background: var(--navy-050);
}

.vat-elster-step.accepted {
  background: var(--success-100);
}

.vat-elster-step.rejected {
  background: var(--danger-100);
}

.vat-elster-icon {
  width: 22px;
  height: 22px;
  color: var(--navy-500);
  background: var(--navy-100);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.vat-elster-step.accepted .vat-elster-icon {
  color: var(--success-600);
  background: var(--success-100);
}

.vat-elster-step.rejected .vat-elster-icon {
  color: var(--danger-600);
  background: var(--danger-100);
}

.vat-elster-copy {
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 10px;
  min-width: 0;
  display: flex;
}

.vat-elster-copy strong {
  color: var(--navy-heading);
  font-size: 12px;
  font-weight: 900;
}

.vat-elster-copy small {
  color: var(--navy-400);
  flex-basis: 100%;
  font-size: 10.5px;
  line-height: 1.4;
}

.vat-elster-actions {
  align-items: center;
  gap: 6px;
  display: flex;
}

.vat-elster-rules {
  background: var(--surface);
  padding: 0 16px 12px;
}

.vat-elster-rules .vat-grid {
  min-width: 720px;
}

.vat-elster-source {
  color: var(--navy-400);
  margin-top: 8px;
  font-size: 10px;
  line-height: 1.4;
  display: block;
}

.vat-elster-manual-hint {
  color: var(--navy-500);
  grid-column: 2 / -1;
  font-size: 10.5px;
}

.vat-elster-card .vat-inline-error {
  margin: 0 16px 14px;
}

.vat-setup-elster .vat-form-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.vat-elster-facts > div {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.vat-elster-facts > div > span {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 800;
}

.vat-elster-facts > div > strong {
  color: var(--navy-700);
  font-size: 12px;
}

.vat-elster-facts > div > small {
  color: var(--navy-400);
  font-size: 10px;
}

.vat-elster-receipt-facts {
  overflow-wrap: anywhere;
  flex-basis: 100%;
  gap: 3px;
  display: grid;
}

.vat-elster-facts > div > strong.vat-elster-warn {
  color: var(--danger-600);
}

.vat-elster-privacy {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 10px 12px;
  display: flex;
}

.vat-elster-privacy-state {
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 8px;
  display: flex;
}

.vat-elster-privacy-state strong {
  color: var(--navy-heading);
  font-size: 11.5px;
}

.vat-elster-privacy-state small {
  color: var(--navy-400);
  flex-basis: 100%;
  font-size: 10.5px;
}

.vat-elster-notice {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  max-height: 320px;
  margin-top: 10px;
  padding: 10px 12px;
  overflow: auto;
}

.vat-elster-notice pre {
  color: var(--navy-700);
  white-space: pre-wrap;
  word-break: break-word;
  margin-top: 6px;
  font: 400 10.5px / 1.5 ui-monospace, SFMono-Regular, Menlo, monospace;
}

.vat-panel-note {
  color: var(--navy-400);
  margin-top: 10px;
  font-size: 10.5px;
  line-height: 1.45;
}

.vat-payable-band {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  border-left-width: 5px;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 4px 18px;
  padding: 14px 16px;
  display: grid;
}

.vat-payable-band > div {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.vat-payable-band > div span, .vat-payable-band small {
  color: var(--navy-400);
  font-size: 9.5px;
  font-weight: 800;
}

.vat-payable-band > div strong {
  color: var(--navy-700);
  font-size: 12px;
}

.vat-payable-band > strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font-size: 24px;
}

.vat-payable-band > small {
  grid-column: 1 / -1;
}

.vat-payable-band.erstattung {
  border-left-color: var(--success-500);
  background: var(--success-100);
}

.vat-payable-band.zahllast {
  border-left-color: var(--danger-500);
  background: var(--danger-100);
}

.vat-payable-band.neutral, .vat-payable-band.ausgeglichen {
  border-left-color: var(--navy-300);
  background: var(--navy-050);
}

.vat-lifecycle-grid {
  align-items: start;
  gap: var(--t360-space-5);
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
  display: grid;
}

.vat-evidence-grid {
  grid-template-columns: repeat(2, minmax(120px, 1fr));
  gap: 10px;
  display: grid;
}

.vat-evidence-grid > div {
  border: 1px solid var(--navy-100);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding: 9px 10px;
  display: flex;
}

.vat-evidence-list {
  flex-direction: column;
  display: flex;
}

.vat-evidence-list > .vat-evidence-row {
  border-bottom: 1px solid var(--navy-100);
  grid-template-columns: 132px 1fr;
  align-items: baseline;
  gap: 10px;
  padding: 13px 16px;
  display: grid;
}

.vat-evidence-list > .vat-evidence-row:last-child {
  border-bottom: 0;
}

.vat-evidence-list .vat-elster-steps {
  display: contents;
}

.vat-evidence-list .vat-elster-step {
  border-bottom: 1px solid var(--navy-100);
  background: none;
  grid-template-columns: 132px 1fr;
  align-items: baseline;
  column-gap: 10px;
  padding: 13px 16px;
  display: grid;
}

.vat-evidence-list .vat-elster-step:last-child {
  border-bottom: 0;
}

.vat-evidence-label {
  color: var(--navy-500);
  font-size: 12.5px;
  font-weight: 700;
}

.vat-evidence-fact {
  color: var(--navy-800);
  font-size: 12.5px;
  line-height: 1.4;
}

.vat-evidence-link {
  color: var(--primary-700);
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  font-weight: 800;
  text-decoration: underline;
}

.vat-evidence-link:hover {
  color: var(--primary-800);
}

.vat-correction-card .vat-table-wrap {
  border-top: 1px solid var(--navy-100);
  margin: 12px -16px -16px;
}

.vat-correction-create {
  grid-template-columns: minmax(220px, 1fr) auto;
  align-items: end;
  gap: 12px;
  display: grid;
}

.vat-correction-create label {
  min-width: 0;
  color: var(--navy-500);
  flex-direction: column;
  gap: 5px;
  font-size: 10px;
  font-weight: 900;
  display: flex;
}

.vat-state.compact {
  min-height: 72px;
  padding: 12px;
}

.vat-close-grid {
  grid-template-columns: minmax(320px, 1fr) minmax(320px, 1fr);
  gap: 18px;
  padding: 16px;
  display: grid;
}

.vat-checklist {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.vat-checklist > div {
  border: 1px solid var(--navy-100);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  align-items: flex-start;
  gap: 9px;
  padding: 8px 10px;
  display: flex;
}

.vat-checklist > div.satisfied {
  color: var(--success-600);
  border-color: color-mix(in srgb, var(--success-500) 35%, var(--navy-100));
  background: var(--success-100);
}

.vat-checklist > div.unsatisfied {
  color: var(--warning-text);
  border-color: var(--warning-500);
  background: color-mix(in srgb, var(--warning-100) 45%, var(--surface));
}

.vat-check-icon {
  width: 22px;
  height: 22px;
  color: var(--surface);
  background: currentColor;
  border-radius: 50%;
  flex: none;
  place-items: center;
  display: grid;
}

.vat-check-icon svg {
  color: var(--surface);
}

.vat-checklist > div > span:last-child {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.vat-checklist strong {
  color: currentColor;
  font-size: 10.5px;
}

.vat-checklist small {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  font-size: 9.5px;
}

.vat-checklist-later {
  color: var(--navy-400);
  justify-content: center;
  font-style: italic;
}

.vat-verprobung {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  padding: 12px;
}

.vat-verprobung-head {
  color: var(--primary-700);
  align-items: flex-start;
  gap: 9px;
  display: flex;
}

.vat-verprobung-head > div {
  flex-direction: column;
  gap: 3px;
  display: flex;
}

.vat-verprobung-head strong {
  color: var(--navy-800);
  font-size: 11px;
}

.vat-verprobung-head small {
  color: var(--navy-400);
  font-size: 9.5px;
}

.vat-reconciliation-result {
  border-radius: var(--t360-radius-2);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 12px;
  padding: 10px;
  font-size: 11px;
  display: flex;
}

.vat-reconciliation-result.ties {
  color: var(--success-600);
  background: var(--success-100);
}

.vat-reconciliation-result.difference {
  color: var(--danger-600);
  background: var(--danger-100);
}

.vat-reconciliation-result span {
  font-variant-numeric: tabular-nums;
  font-weight: 900;
}

.vat-kz-source-line {
  color: var(--navy-400);
  margin-top: 2px;
  font-size: 9.5px;
  font-weight: 700;
  display: block;
}

.vat-kz-wrap {
  flex-direction: column;
  flex: 1;
  gap: 16px;
  min-height: 0;
  display: flex;
}

.vat-kz-title-row {
  flex-shrink: 0;
  align-items: center;
  display: flex;
}

.vat-kz-title-row:after {
  content: "";
  background: var(--primary-200);
  flex: 1;
  order: 1;
  min-width: 24px;
  height: 1px;
}

.vat-kz-title-row > .vat-kz-title {
  flex-shrink: 0;
  margin-right: 14px;
}

.vat-kz-title-row > .vat-kz-zero-toggle {
  flex-shrink: 0;
  order: 2;
}

.vat-kz-title {
  color: var(--primary-500);
  font: 700 16px / 1.2 Lato, sans-serif;
}

.vat-kz-grid-shell {
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
}

.vat-kz-zero-toggle {
  cursor: pointer;
  border: 0;
}

.vat-kz-zero-toggle:hover {
  filter: brightness(.96);
}

.vat-finding {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-600);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 8px 4px;
  font-size: 10px;
  display: flex;
}

.vat-finding:last-child {
  border-bottom: 0;
}

.vat-finding strong {
  font-variant-numeric: tabular-nums;
}

.vat-close-footer {
  border-top: 1px solid var(--navy-100);
  background: var(--navy-050);
  justify-content: flex-end;
  padding: 12px 16px;
  display: flex;
}

.vat-close-footer .chip {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.vat-annual-state {
  min-height: 220px;
  color: var(--primary-700);
  text-align: left;
  justify-content: center;
  align-items: center;
  gap: 18px;
  padding: 28px;
  display: flex;
}

.vat-annual-state > div {
  max-width: 620px;
}

.vat-annual-state span {
  color: var(--primary-700);
  letter-spacing: .07em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.vat-annual-state h2 {
  color: var(--navy-heading);
  margin-top: 5px;
  font: 900 20px / 1.2 Lato, sans-serif;
}

.vat-annual-state p {
  color: var(--navy-500);
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.5;
}

.vat-period-picker button:disabled {
  color: var(--navy-300);
  cursor: not-allowed;
  background: none;
}

.vat-evaluations-toolbar {
  align-items: flex-end;
}

.vat-evaluations-filters {
  align-items: flex-end;
  gap: 10px;
  margin-left: auto;
  display: flex;
}

.vat-evaluations-filters .vat-object-select select {
  min-width: 280px;
}

.vat-evaluations-filters .btn {
  justify-content: center;
  width: 38px;
  min-width: 38px;
  min-height: 36px;
  padding: 0;
}

.vat-evaluation-stack {
  gap: var(--t360-space-5);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.vat-evaluation-card .vat-card-head {
  align-items: center;
}

.vat-evaluation-card .vat-grid {
  min-width: 880px;
}

.vat-evaluation-auditor-grid {
  min-width: 960px;
}

.vat-evaluation-auditor-grid td:last-child {
  width: 32%;
}

.vat-evaluation-governing {
  color: var(--primary-700);
  background: var(--primary-050);
  font-weight: 900;
}

.vat-evaluation-total td {
  border-top: 2px solid var(--navy-150);
  background: var(--navy-050);
}

.vat-evaluation-match {
  color: var(--success-600);
  font-size: 10.5px;
  font-weight: 700;
}

.vat-evaluation-divergence {
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  padding: 5px 7px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.35;
  display: inline-block;
}

.vat-evaluation-input-grid {
  min-width: 1120px;
}

.vat-evaluation-carrier {
  max-width: 180px;
  color: var(--secondary-700);
  background: var(--secondary-050);
  text-overflow: ellipsis;
  vertical-align: middle;
  overflow: hidden;
}

.vat-evaluation-source {
  max-width: 205px;
  color: var(--navy-500);
  font-size: 10px;
  line-height: 1.35;
  display: block;
}

.vat-evaluation-control-body {
  padding: 14px 16px 16px;
}

.vat-evaluation-control-grid {
  border: 1px solid var(--navy-100);
  border-radius: var(--t360-radius-2);
  background: var(--navy-100);
  grid-template-columns: repeat(5, minmax(130px, 1fr));
  gap: 1px;
  display: grid;
  overflow: hidden;
}

.vat-evaluation-control-grid > div {
  background: var(--surface);
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  padding: 11px 12px;
  display: flex;
}

.vat-evaluation-control-grid span {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 700;
}

.vat-evaluation-control-grid strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font-size: 14px;
}

.vat-evaluation-mismatches {
  border: 1px solid var(--danger-600);
  border-radius: var(--t360-radius-2);
  background: var(--danger-100);
  margin-top: 10px;
  padding: 2px 10px;
}

.vat-gobd-slot {
  color: var(--navy-300);
  box-shadow: none;
  border-style: dashed;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 18px;
  display: grid;
}

.vat-gobd-slot > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.vat-gobd-slot h2 {
  color: var(--navy-700);
  font: 900 15px / 1.25 Lato, sans-serif;
}

.vat-gobd-slot p {
  color: var(--navy-400);
  font-size: 11px;
  line-height: 1.4;
}

.vat-gobd-slot > strong {
  border-radius: var(--pill);
  color: var(--navy-500);
  background: var(--navy-100);
  white-space: nowrap;
  padding: 5px 9px;
  font-size: 10px;
}

@media (max-width: 980px) {
  .vat-overview-grid, .vat-lifecycle-grid, .vat-close-grid, .vat-entity-select {
    grid-template-columns: 1fr;
  }

  .vat-stepper {
    grid-template-columns: repeat(3, minmax(140px, 1fr));
  }

  .vat-evaluation-control-grid {
    grid-template-columns: repeat(2, minmax(150px, 1fr));
  }
}

@media (max-width: 700px) {
  .vat-context-bar, .vat-screen-head {
    flex-direction: column;
    align-items: stretch;
  }

  .vat-drawer {
    width: 100%;
    min-width: 0;
  }

  .vat-beleg-facts {
    grid-template-columns: 1fr;
  }

  .vat-beleg-treatment {
    flex-direction: column;
  }

  .vat-stepper, .vat-lifecycle-summary, .vat-transmission-evidence, .vat-evidence-grid, .vat-correction-create {
    grid-template-columns: 1fr;
  }

  .vat-lifecycle-summary > div {
    border-right: 0;
    border-bottom: 1px solid var(--navy-100);
  }

  .vat-lifecycle-summary > div:last-child {
    border-bottom: 0;
  }

  .vat-screen-head > .vat-screen-head-actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    margin-left: 0;
  }

  .vat-object-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .vat-object-toolbar .btn {
    margin-left: 0;
  }

  .vat-object-select, .vat-object-period {
    flex-direction: column;
    align-items: stretch;
    gap: 5px;
  }

  .vat-object-select select {
    width: 100%;
    min-width: 0;
  }

  .vat-coverage-banner {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }

  .vat-coverage-tile {
    grid-template-columns: 1fr;
  }

  .vat-object-header-actions {
    align-items: flex-start;
    width: 100%;
  }

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

  .vat-tax-items-head-controls, .vat-tax-items-drill-kpis, .vat-tax-items-footer {
    flex-direction: column;
    align-items: stretch;
  }

  .vat-tax-items-toolbar {
    grid-template-columns: 1fr;
    justify-items: stretch;
  }

  .vat-tax-items-toolbar > .filter-tabs, .vat-tax-items-status-chips {
    justify-self: stretch;
  }

  .vat-option-scope-bar, .vat-option-lead {
    flex-direction: column;
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .vat-option-scope-bar .vat-object-select select {
    width: 100%;
    min-width: 0;
  }

  .vat-option-methods, .vat-option-rate-fields {
    grid-template-columns: 1fr;
  }

  .vat-option-basis {
    margin-left: 12px;
  }

  .vat-evaluations-filters {
    flex-direction: column;
    align-items: stretch;
  }

  .vat-evaluations-filters .vat-object-select select {
    width: 100%;
    min-width: 0;
  }

  .vat-evaluations-filters .btn {
    width: 100%;
  }

  .vat-evaluation-control-grid {
    grid-template-columns: 1fr;
  }

  .vat-gobd-slot {
    grid-template-columns: auto 1fr;
  }

  .vat-gobd-slot > strong {
    grid-column: 1 / -1;
    justify-self: start;
  }
}

.payment-allocation-screen {
  gap: var(--t360-space-4);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.payment-allocation-context, .payment-allocation-controls {
  flex-shrink: 0;
}

.payment-allocation-context, .payment-allocation-history {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
}

.payment-allocation-context {
  justify-content: space-between;
  align-items: center;
  padding: 11px 14px;
  display: flex;
}

.payment-allocation-context strong {
  color: var(--navy-800);
  font-size: 12px;
}

.payment-allocation-context p {
  color: var(--navy-500);
  margin-top: 3px;
  font-size: 10.5px;
}

.payment-allocation-controls {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.payment-allocation-scope {
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  display: flex;
}

.payment-allocation-scope select {
  border: 1px solid var(--navy-200);
  min-width: 185px;
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  padding: 0 28px 0 9px;
  font: 700 12.5px / 1 Lato, sans-serif;
}

.payment-allocation-scope select:focus {
  border-color: var(--primary-500);
  outline: 2px solid var(--primary-100);
}

.payment-allocation-scope .bank-statement-picker {
  min-width: 260px;
}

.payment-allocation-list {
  flex-direction: column;
  flex: 1;
  gap: 8px;
  min-width: 0;
  min-height: 0;
  display: flex;
}

.payment-allocation-main-cell, .payment-allocation-amount-cell {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.payment-allocation-main-cell strong, .payment-allocation-amount-cell strong {
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 900;
  overflow: hidden;
}

.payment-allocation-main-cell small, .payment-allocation-amount-cell small {
  color: var(--navy-500);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
  line-height: 1.25;
  overflow: hidden;
}

.payment-allocation-amount-cell {
  font-variant-numeric: tabular-nums;
  align-items: flex-end;
}

.payment-allocation-target-cell > strong {
  color: var(--primary-700);
}

.payment-allocation-muted {
  color: var(--navy-400);
  font-size: 10.5px;
}

.payment-allocation-screen .chip.violet, .payment-allocation-detail .chip.violet {
  color: var(--secondary-600);
  background: var(--secondary-050);
}

.payment-allocation-pager {
  flex-shrink: 0;
  justify-content: flex-end;
  display: flex;
}

.payment-allocation-state, .payment-allocation-detail-state {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  min-height: 180px;
  color: var(--navy-400);
  background: var(--surface);
  justify-content: center;
  align-items: center;
  display: flex;
}

.bank-allocation-link {
  color: var(--primary-600);
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 4px;
  margin-top: 5px;
  padding: 0;
  font: 800 10px / 1.2 Lato, sans-serif;
  display: inline-flex;
}

.bank-allocation-link:hover {
  color: var(--primary-700);
  text-decoration: underline;
}

.payment-allocation-detail {
  gap: var(--t360-space-4);
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.payment-allocation-detail-top {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  display: grid;
}

.payment-allocation-detail-top h2 {
  color: var(--navy-heading);
  font: 900 20px / 1.2 Lato, sans-serif;
}

.payment-allocation-detail-top p {
  color: var(--navy-400);
  margin-top: 3px;
  font-size: 10.5px;
}

.payment-allocation-detail-layout {
  grid-template-columns: minmax(280px, .78fr) minmax(500px, 1.55fr);
  align-items: start;
  gap: 14px;
  display: grid;
}

.payment-allocation-detail-panel {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}

.payment-allocation-detail-panel > header {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 9px 13px;
  display: flex;
}

.payment-allocation-detail-panel > header h3 {
  color: var(--navy-800);
  align-items: center;
  gap: 7px;
  font: 900 13px / 1.2 Lato, sans-serif;
  display: inline-flex;
}

.payment-allocation-detail-panel > header h3 svg {
  color: var(--primary-600);
}

.payment-allocation-detail-amount {
  border-bottom: 1px solid var(--border);
  background: var(--navy-050);
  padding: 15px;
}

.payment-allocation-detail-amount strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font: 900 25px / 1 Lato, sans-serif;
  display: block;
}

.payment-allocation-detail-amount span {
  color: var(--navy-500);
  margin-top: 5px;
  font-size: 10.5px;
  display: block;
}

.payment-allocation-detail-facts {
  grid-template-columns: 1fr 1fr;
  margin: 0;
  display: grid;
}

.payment-allocation-detail-facts > div {
  border-bottom: 1px solid var(--navy-100);
  min-width: 0;
  padding: 9px 12px;
}

.payment-allocation-detail-facts > div:nth-child(odd) {
  border-right: 1px solid var(--navy-100);
}

.payment-allocation-detail-facts dt, .payment-allocation-immutable dt, .payment-allocation-decision dt {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 9px / 1.1 Lato, sans-serif;
}

.payment-allocation-detail-facts dd, .payment-allocation-immutable dd, .payment-allocation-decision dd {
  min-width: 0;
  color: var(--navy-700);
  overflow-wrap: anywhere;
  margin: 3px 0 0;
  font: 800 10.5px / 1.35 Lato, sans-serif;
}

.payment-allocation-rule-explanation {
  border-left: 4px solid var(--primary-500);
  background: var(--primary-050);
  gap: 4px;
  padding: 11px 13px;
  display: grid;
}

.payment-allocation-rule-explanation span {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 9px / 1 Lato, sans-serif;
}

.payment-allocation-rule-explanation strong {
  color: var(--navy-800);
  font-size: 11px;
  line-height: 1.35;
}

.payment-allocation-rule-explanation small {
  color: var(--navy-500);
  font-size: 9.5px;
}

.payment-allocation-immutable {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  margin: 12px;
}

.payment-allocation-immutable h4 {
  border-bottom: 1px solid var(--navy-150);
  min-height: 34px;
  color: var(--navy-700);
  background: var(--navy-050);
  align-items: center;
  gap: 6px;
  padding: 7px 9px;
  font-size: 10.5px;
  display: flex;
}

.payment-allocation-immutable dl {
  grid-template-columns: 1fr 1fr;
  margin: 0;
  display: grid;
}

.payment-allocation-immutable dl > div {
  min-width: 0;
  padding: 8px 9px;
}

.payment-allocation-target-card {
  border: 1px solid var(--primary-400);
  border-radius: var(--t360-radius-2);
  box-shadow: inset 4px 0 0 var(--primary-500);
  margin: 12px;
  overflow: hidden;
}

.payment-allocation-target-head {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 13px;
  display: flex;
}

.payment-allocation-target-head > div {
  gap: 3px;
  display: grid;
}

.payment-allocation-target-head span {
  color: var(--navy-400);
  letter-spacing: .04em;
  text-transform: uppercase;
  font: 900 9px / 1 Lato, sans-serif;
}

.payment-allocation-target-head strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font-size: 12px;
}

.payment-allocation-target-card details {
  border-top: 1px solid var(--navy-100);
}

.payment-allocation-target-card summary {
  color: var(--primary-700);
  background: var(--navy-050);
  cursor: pointer;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  font: 900 10.5px / 1.2 Lato, sans-serif;
  display: flex;
}

.payment-allocation-component-list > div {
  border-top: 1px solid var(--navy-100);
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  padding: 8px 12px;
  display: flex;
}

.payment-allocation-component-list > div > span {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.payment-allocation-component-list > div > span:last-child {
  text-align: right;
  flex: none;
}

.payment-allocation-component-list strong {
  color: var(--navy-700);
  font-variant-numeric: tabular-nums;
  font-size: 10px;
}

.payment-allocation-component-list small {
  color: var(--navy-400);
  font-size: 9px;
  line-height: 1.3;
}

.payment-allocation-figures {
  border-top: 1px solid var(--primary-100);
  background: var(--primary-100);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  display: grid;
}

.payment-allocation-figures > div {
  background: var(--primary-050);
  padding: 9px 11px;
}

.payment-allocation-figures span {
  color: var(--navy-400);
  font-size: 9px;
  display: block;
}

.payment-allocation-figures strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  margin-top: 3px;
  font-size: 12px;
  display: block;
}

.payment-allocation-impact, .payment-allocation-decision {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  margin: 12px;
}

.payment-allocation-impact h4, .payment-allocation-decision h4 {
  border-bottom: 1px solid var(--navy-150);
  min-height: 34px;
  color: var(--navy-800);
  background: var(--navy-050);
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  font-size: 11px;
  display: flex;
}

.payment-allocation-impact > div {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: minmax(0, 1fr) 58px 110px;
  align-items: center;
  gap: 9px;
  padding: 7px 10px;
  display: grid;
}

.payment-allocation-impact > h4 + div {
  border-top: 0;
}

.payment-allocation-impact > div > span {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.payment-allocation-impact > div strong {
  color: var(--navy-700);
  font-size: 10px;
}

.payment-allocation-impact > div small {
  color: var(--navy-400);
  font-size: 9px;
}

.payment-allocation-impact > div > b {
  color: var(--primary-700);
  font-size: 9.5px;
}

.payment-allocation-impact > div > strong {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.payment-allocation-impact > p {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-400);
  margin: 0;
  padding: 7px 10px;
  font-size: 9px;
}

.payment-allocation-unavailable {
  line-height: 1.4;
  color: var(--navy-500) !important;
  padding: 12px !important;
}

.payment-allocation-decision > p {
  color: var(--navy-600);
  margin: 0;
  padding: 10px;
  font-size: 10.5px;
  line-height: 1.4;
}

.payment-allocation-decision dl {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  display: grid;
}

.payment-allocation-decision dl > div {
  min-width: 0;
  padding: 8px 10px;
}

.payment-allocation-actions {
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-2);
  margin: 12px;
  overflow: hidden;
}

.payment-allocation-actions > header {
  border-bottom: 1px solid var(--warning-500);
  background: var(--warning-100);
  padding: 8px 10px;
}

.payment-allocation-actions h4 {
  color: var(--warning-text);
  align-items: center;
  gap: 6px;
  font-size: 11px;
  display: flex;
}

.payment-allocation-rejection {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-600);
  gap: 5px;
  padding: 9px 10px;
  font-size: 10px;
  font-weight: 800;
  display: grid;
}

.payment-allocation-rejection textarea {
  resize: vertical;
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  min-height: 58px;
  padding: 7px 8px;
}

.payment-allocation-actions article {
  border-top: 1px solid var(--navy-100);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 9px 10px;
  display: flex;
}

.payment-allocation-actions article:first-child {
  border-top: 0;
}

.payment-allocation-actions article > span {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.payment-allocation-actions article > span strong {
  color: var(--navy-800);
  font-size: 10.5px;
}

.payment-allocation-actions article > span small {
  color: var(--navy-500);
  font-size: 9.5px;
  line-height: 1.35;
}

.payment-allocation-actions article .btn {
  flex: none;
}

.payment-allocation-readonly {
  border: 1px solid var(--success-500);
  border-radius: var(--t360-radius-2);
  color: var(--success-600);
  background: var(--success-100);
  justify-content: center;
  align-items: center;
  gap: 7px;
  margin: 12px;
  padding: 10px;
  font-size: 10.5px;
  font-weight: 800;
  display: flex;
}

.payment-allocation-readonly--open {
  border-color: var(--warning-500);
  color: var(--warning-text);
  background: var(--warning-100);
}

.manual-disposition {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  padding: var(--t360-space-4);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
}

.manual-disposition > header {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.manual-disposition > header > div {
  gap: 3px;
  display: grid;
}

.manual-disposition > header span:first-child {
  color: var(--primary-600);
  letter-spacing: .05em;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 900;
}

.manual-disposition > header h3 {
  color: var(--navy-900);
  margin: 0;
  font-size: 16px;
}

.manual-disposition-authority {
  border-left: 4px solid var(--primary-500);
  border-radius: var(--t360-radius-2);
  background: var(--primary-050);
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 3px 10px;
  margin-top: 12px;
  padding: 10px 12px;
  display: grid;
}

.manual-disposition-authority > span {
  color: var(--navy-500);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 900;
}

.manual-disposition-authority > strong {
  color: var(--navy-800);
  font-size: 11.5px;
}

.manual-disposition-authority > small {
  color: var(--navy-600);
  grid-column: 1 / -1;
  font-size: 10.5px;
  line-height: 1.45;
}

.manual-disposition-kinds {
  border: 0;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 7px;
  margin: 14px 0 0;
  padding: 0;
  display: grid;
}

.manual-disposition-kinds legend {
  color: var(--navy-500);
  grid-column: 1 / -1;
  margin-bottom: 2px;
  font-size: 10px;
  font-weight: 900;
}

.manual-disposition-kinds label {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  min-height: 42px;
  color: var(--navy-700);
  background: var(--surface);
  cursor: pointer;
  align-items: center;
  gap: 7px;
  padding: 7px 9px;
  font-size: 10px;
  font-weight: 800;
  display: flex;
}

.manual-disposition-kinds label.selected {
  border-color: var(--primary-500);
  color: var(--primary-700);
  background: var(--primary-050);
  box-shadow: inset 0 0 0 1px var(--primary-500);
}

.manual-disposition-kinds label:has(input:disabled) {
  opacity: .48;
  cursor: not-allowed;
}

.manual-disposition-targets {
  grid-template-columns: minmax(210px, .4fr) minmax(0, 1.6fr);
  gap: 10px;
  margin-top: 12px;
  display: grid;
}

.manual-disposition-targets > h4 {
  color: var(--navy-500);
  grid-column: 1 / -1;
  margin: 0;
  font-size: 10px;
  font-weight: 900;
}

.manual-disposition-search {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  color: var(--navy-400);
  align-self: start;
  align-items: center;
  gap: 7px;
  padding: 0 9px;
  display: flex;
}

.manual-disposition-search input {
  width: 100%;
  height: 36px;
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: 0;
}

.manual-disposition-targets [role="listbox"] {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  max-height: 230px;
  display: grid;
  overflow-y: auto;
}

.manual-disposition-targets [role="listbox"] > label {
  border-top: 1px solid var(--navy-100);
  cursor: pointer;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: 9px;
  padding: 9px 10px;
  display: grid;
}

.manual-disposition-targets [role="listbox"] > label:first-child {
  border-top: 0;
}

.manual-disposition-targets [role="listbox"] > label.selected {
  background: var(--primary-050);
}

.manual-disposition-targets label > span {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.manual-disposition-targets label strong {
  color: var(--navy-800);
  font-size: 10.5px;
}

.manual-disposition-targets label small {
  color: var(--navy-400);
  font-size: 9px;
  line-height: 1.35;
}

.manual-disposition-targets label > b {
  color: var(--navy-700);
  font-variant-numeric: tabular-nums;
  font-size: 10.5px;
}

.manual-disposition-target-party {
  gap: 2px;
  display: grid;
}

.manual-disposition-target-facts {
  grid-template-columns: repeat(3, minmax(110px, 1fr));
  gap: 5px 12px;
  margin: 5px 0;
  display: grid;
}

.manual-disposition-target-facts div {
  min-width: 0;
}

.manual-disposition-target-facts dt {
  color: var(--navy-400);
  font-size: 8.5px;
  font-weight: 800;
}

.manual-disposition-target-facts dd {
  color: var(--navy-700);
  overflow-wrap: anywhere;
  margin: 1px 0 0;
  font-size: 9.5px;
  font-weight: 900;
}

.manual-disposition-targets label > .manual-disposition-supplement {
  grid-column: 2 / -1;
}

.manual-disposition-return-target {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3px 10px;
  margin: 5px 0 0;
  display: grid;
}

.manual-disposition-return-target div {
  min-width: 0;
}

.manual-disposition-return-target dt {
  color: var(--navy-400);
  font-size: 8.5px;
}

.manual-disposition-return-target dd {
  color: var(--navy-700);
  overflow-wrap: anywhere;
  margin: 1px 0 0;
  font-size: 9px;
  font-weight: 800;
}

.manual-disposition-targets [role="listbox"] > p {
  color: var(--navy-500);
  margin: 0;
  padding: 12px;
  font-size: 10px;
}

.manual-disposition-fields {
  grid-template-columns: minmax(180px, .5fr) minmax(260px, 1.5fr);
  gap: 10px;
  margin-top: 12px;
  display: grid;
}

.manual-disposition-fields label {
  color: var(--navy-600);
  gap: 5px;
  font-size: 10px;
  font-weight: 800;
  display: grid;
}

.manual-disposition-fields label:last-child {
  grid-column: 1 / -1;
}

.manual-disposition-fields input, .manual-disposition-fields textarea {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  width: 100%;
  color: var(--navy-800);
  background: var(--surface);
  padding: 7px 9px;
}

.manual-disposition-fields input {
  height: 36px;
}

.manual-disposition-fields textarea {
  resize: vertical;
  min-height: 58px;
}

.manual-disposition > .btn {
  margin-top: 10px;
}

.manual-disposition-error, .manual-disposition-notice {
  border-radius: var(--t360-radius-2);
  align-items: flex-start;
  gap: 7px;
  margin-top: 10px;
  padding: 9px 10px;
  font-size: 10.5px;
  line-height: 1.4;
  display: flex;
}

.manual-disposition-error {
  color: var(--danger-700);
  background: var(--danger-100);
}

.manual-disposition-notice {
  color: var(--warning-text);
  background: var(--warning-100);
}

.manual-disposition-preview {
  border: 1px solid var(--primary-400);
  border-radius: var(--t360-radius-3);
  margin-top: 12px;
  overflow: hidden;
}

.manual-disposition-preview > header {
  background: var(--primary-050);
  justify-content: space-between;
  gap: 10px;
  padding: 9px 11px;
  display: flex;
}

.manual-disposition-preview h4, .manual-disposition-preview h5 {
  color: var(--navy-800);
  margin: 0;
  font-size: 11px;
}

.manual-disposition-preview > dl, .manual-disposition-367 dl {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  display: grid;
}

.manual-disposition-preview dl > div {
  border-top: 1px solid var(--navy-100);
  min-width: 0;
  padding: 8px 10px;
}

.manual-disposition-preview dt {
  color: var(--navy-400);
  font-size: 9px;
}

.manual-disposition-preview dd {
  color: var(--navy-800);
  overflow-wrap: anywhere;
  margin: 3px 0 0;
  font-size: 10.5px;
  font-weight: 900;
}

.manual-disposition-preview-targets {
  border-top: 1px solid var(--navy-150);
  padding: 10px;
}

.manual-disposition-preview-targets > h5 {
  margin-bottom: 6px;
}

.manual-disposition-preview-targets > article {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  padding: 8px 0;
  display: grid;
}

.manual-disposition-preview-targets > article:first-of-type {
  border-top: 0;
}

.manual-disposition-preview-targets .manual-disposition-target-copy {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.manual-disposition-preview-targets article > b {
  color: var(--navy-700);
  font-variant-numeric: tabular-nums;
  font-size: 10.5px;
}

.manual-disposition-no-impact {
  border-top: 1px solid var(--warning-500);
  color: var(--warning-text);
  background: var(--warning-100);
  margin: 0;
  padding: 10px;
  font-size: 10.5px;
  font-weight: 800;
}

.manual-disposition-367, .manual-disposition-return, .manual-disposition-impact {
  border-top: 1px solid var(--navy-150);
  padding: 10px;
}

.manual-disposition-367 > p {
  color: var(--primary-700);
  margin: 4px 0 6px;
  font-size: 10px;
  font-weight: 900;
}

.manual-disposition-367 dl, .manual-disposition-return dl {
  border: 1px solid var(--navy-100);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 6px 0 0;
  display: grid;
}

.manual-disposition-367 dl > div, .manual-disposition-return dl > div {
  border-top: 0;
  border-right: 1px solid var(--navy-100);
}

.manual-disposition-untouched {
  margin-top: 9px;
}

.manual-disposition-untouched h6 {
  color: var(--navy-500);
  margin: 0 0 5px;
  font-size: 9px;
}

.manual-disposition-untouched ul {
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.manual-disposition-untouched li {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-700);
  justify-content: space-between;
  gap: 10px;
  padding-top: 5px;
  font-size: 10px;
  display: flex;
}

.manual-disposition-impact > div {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: minmax(0, 1fr) 70px 110px;
  gap: 8px;
  padding: 7px 0;
  font-size: 10px;
  display: grid;
}

.manual-disposition-impact > div span {
  color: var(--navy-700);
  font-weight: 800;
  display: grid;
}

.manual-disposition-impact > div small {
  color: var(--navy-400);
}

.manual-disposition-impact > div > strong {
  text-align: right;
}

.manual-disposition-preview > .btn {
  float: right;
  margin: 0 10px 10px;
}

.payment-allocation-history {
  padding: 12px;
}

.payment-allocation-history h3 {
  color: var(--navy-800);
  font-size: 13px;
}

.payment-allocation-history > div {
  margin-top: 8px;
  display: grid;
}

.payment-allocation-history article {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 7px 0;
  display: grid;
}

.payment-allocation-history article:first-child {
  border-top: 0;
}

.payment-allocation-history article strong {
  color: var(--navy-700);
  font-size: 10.5px;
}

.payment-allocation-history article > span:last-child {
  color: var(--navy-400);
  font-size: 9.5px;
}

.rail-pinned--payment-allocation {
  padding-top: 42.5px;
}

.rail-pinned--payment-allocation .rail-sep {
  margin-top: 42.5px;
}

@media (max-width: 1250px) {
  .payment-allocation-detail-layout {
    grid-template-columns: minmax(260px, .9fr) minmax(430px, 1.3fr);
  }
}

@media (max-width: 900px) {
  .payment-allocation-detail-layout {
    grid-template-columns: 1fr;
  }

  .payment-allocation-controls {
    flex-direction: column;
    align-items: stretch;
  }

  .payment-allocation-controls > .filter-tabs {
    overflow-x: auto;
  }

  .payment-allocation-controls > .filter-tabs .filter-tab {
    flex: none;
  }

  .payment-allocation-scope {
    width: 100%;
  }

  .payment-allocation-scope select {
    flex: 1;
    width: 100%;
    min-width: 0;
  }

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

  .manual-disposition-targets {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .payment-allocation-detail-top {
    flex-direction: column;
    grid-template-columns: 1fr;
    align-items: flex-start;
  }

  .payment-allocation-detail-facts, .payment-allocation-immutable dl, .payment-allocation-decision dl {
    grid-template-columns: 1fr;
  }

  .payment-allocation-actions article {
    flex-direction: column;
    align-items: stretch;
  }

  .payment-allocation-actions article .btn {
    width: 100%;
  }

  .manual-disposition > header {
    flex-direction: column;
    align-items: flex-start;
  }

  .manual-disposition-kinds, .manual-disposition-fields {
    grid-template-columns: 1fr;
  }

  .manual-disposition-target-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .manual-disposition-fields label:last-child {
    grid-column: auto;
  }

  .manual-disposition-preview > dl, .manual-disposition-367 dl, .manual-disposition-return dl, .manual-disposition-return-target {
    grid-template-columns: 1fr;
  }

  .manual-disposition-impact > div {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .manual-disposition-impact > div > strong {
    text-align: left;
    grid-column: 1 / -1;
  }

  .manual-disposition-preview > .btn {
    float: none;
    width: calc(100% - 20px);
  }
}

.bank-control-view, .bank-statement-inbox, .bank-reconciliation-view {
  gap: var(--t360-space-4);
}

.bank-page-actions {
  justify-content: flex-end;
  align-items: center;
  gap: var(--t360-space-5);
  display: flex;
}

.bank-kpi-strip {
  padding: 0 16px;
}

.bank-kpi-strip .pdm-kpi-cards {
  margin-right: 0;
}

.bank-status-stack {
  flex-wrap: wrap;
  gap: 4px;
  display: flex;
}

.bank-row-link {
  color: var(--primary-600);
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 4px;
  padding: 3px 0;
  font-size: 11px;
  font-weight: 900;
  text-decoration: none;
  display: inline-flex;
}

.bank-account-grid-cell {
  gap: 2px;
  min-width: 0;
  max-width: 100%;
  display: grid;
}

.bank-account-grid-cell strong, .bank-account-grid-cell small {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  display: block;
  overflow: hidden;
}

.bank-account-grid-cell small {
  color: var(--navy-400);
  font-size: 9.5px;
  font-weight: 700;
}

.bank-account-detail {
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  gap: 18px;
  padding: 16px;
  display: grid;
}

.bank-account-detail header {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  display: flex;
}

.bank-account-detail h3 {
  color: var(--navy-800);
  margin: 0;
  font-size: 14px;
}

.bank-account-detail-connections {
  border-top: 1px solid var(--border);
  padding-top: 18px;
}

.bank-account-detail-connections > header > span {
  width: 24px;
  height: 24px;
  color: var(--primary-700);
  background: var(--primary-050);
  border-radius: 999px;
  place-items: center;
  font-size: 11px;
  font-weight: 900;
  display: grid;
}

.bank-definition-list {
  gap: 0;
  margin: 0;
  display: grid;
}

.bank-definition-list > div {
  border-top: 1px solid var(--navy-100);
  grid-template-columns: 135px minmax(0, 1fr);
  gap: 10px;
  padding: 8px 0;
  display: grid;
}

.bank-definition-list > div:first-child {
  border-top: 0;
}

.bank-definition-list dt {
  color: var(--navy-400);
  font-size: 10.5px;
}

.bank-definition-list dd {
  min-width: 0;
  color: var(--navy-800);
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 11.5px;
  font-weight: 800;
}

.bank-connection-list {
  gap: 9px;
  display: grid;
}

.bank-connection-list article {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-3);
  padding: 11px;
}

.bank-connection-heading {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  display: grid;
}

.bank-connection-heading > div {
  gap: 2px;
  display: grid;
}

.bank-connection-heading strong {
  color: var(--navy-800);
  font-size: 12px;
}

.bank-connection-heading small {
  color: var(--navy-400);
  font-size: 10px;
}

.bank-connection-icon {
  border-radius: var(--t360-radius-2);
  width: 34px;
  height: 34px;
  color: var(--primary-600);
  background: var(--primary-050);
  place-items: center;
  display: grid;
}

.bank-connection-facts {
  grid-template-columns: 1.3fr .7fr;
  gap: 10px;
  margin: 10px 0 0;
  display: grid;
}

.bank-connection-facts div {
  gap: 2px;
  display: grid;
}

.bank-connection-facts dt {
  color: var(--navy-400);
  font-size: 9.5px;
}

.bank-connection-facts dd {
  color: var(--navy-700);
  margin: 0;
  font-size: 10px;
}

.bank-adapter-notice {
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  align-items: center;
  gap: 6px;
  margin: 9px 0 0;
  padding: 8px;
  font-size: 10px;
  display: flex;
}

.bank-connection-actions {
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 9px;
  display: flex;
}

.bank-connection-actions .btn {
  min-height: 30px;
  font-size: 10px;
}

.bank-upload-panel {
  grid-template-columns: minmax(220px, .8fr) minmax(260px, 1.2fr) auto;
  align-items: end;
  gap: 10px;
  padding: 12px;
  display: grid;
}

.bank-upload-panel small {
  color: var(--navy-400);
  grid-column: 1 / -1;
}

.opos-sheet-kpis .bank-evidence-chips {
  flex: 1;
}

.bank-screen .chan {
  border-radius: var(--t360-radius-2);
  letter-spacing: .04em;
  white-space: nowrap;
  border: 1px solid #0000;
  align-items: center;
  gap: 6px;
  min-width: 0;
  max-width: 100%;
  min-height: 22px;
  padding: 0 8px;
  font-size: 10.5px;
  font-weight: 900;
  line-height: 1;
  display: inline-flex;
}

.bank-screen .chan .chan-label {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.bank-screen .chan:before {
  content: "";
  background: currentColor;
  border-radius: 1px;
  flex: 0 0 6px;
  width: 6px;
  height: 6px;
}

.bank-screen .chan.ebics {
  color: var(--navy-heading);
  background: var(--navy-100);
}

.bank-screen .chan.xs2a {
  color: var(--primary-700);
  background: var(--primary-050);
}

.bank-screen .chan.bk01 {
  color: var(--secondary-700);
  background: var(--secondary-050);
}

.bank-screen .chan.demo {
  color: var(--warning-text);
  background: var(--warning-100);
  border: 1px dashed var(--warning-600);
}

.bank-screen .chan.datei {
  color: var(--navy-500);
  background: var(--navy-050);
  border: 1px solid var(--navy-200);
}

.bank-screen .sync {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  color: var(--navy-600);
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin: 0 16px;
  padding: 10px 16px;
  font-size: 11.5px;
  display: flex;
}

.bank-screen .sync .dot {
  background: var(--success-500);
  width: 10px;
  height: 10px;
  box-shadow: 0 0 0 4px var(--success-100);
  border-radius: 50%;
}

.bank-screen .sync .dot.warn {
  background: var(--warning-500);
  box-shadow: 0 0 0 4px var(--warning-100);
}

.bank-screen .sync b {
  color: var(--navy-heading);
  font-weight: 900;
}

.bank-screen .sync .sep {
  background: var(--navy-150);
  width: 1px;
  height: 18px;
}

.bank-screen .sync .grow {
  flex: 1;
}

.bank-feed-counts {
  align-items: center;
  gap: 6px;
  margin-right: auto;
  padding-left: 4px;
  display: flex;
}

.bank-feed-counts .chip b {
  margin-left: 4px;
}

.bank-screen .src {
  align-items: center;
  gap: 6px;
  min-width: 0;
  max-width: 100%;
  display: inline-flex;
}

.bank-screen .src .src-label {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  color: var(--navy-600);
  overflow: hidden;
}

.bank-screen .src i {
  border-radius: 50%;
  flex: 0 0 18px;
  place-items: center;
  width: 18px;
  height: 18px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  display: inline-grid;
}

.bank-screen .src.auto i {
  color: var(--success-600);
  background: var(--success-100);
}

.bank-screen .src.manual i {
  color: var(--navy-600);
  background: var(--navy-100);
}

.bank-statement-inbox .tgv2-table .tgv2-group-row td {
  background: var(--navy-050);
  border-bottom: 1px solid var(--navy-150);
  padding: 7px 12px;
}

.bank-feed-group {
  color: var(--navy-500);
  letter-spacing: .01em;
  text-transform: none;
  font-size: 11.5px;
  font-weight: 800;
  display: inline-block;
}

.bank-statement-inbox .tgv2-table tbody tr.gap {
  cursor: default;
}

.bank-statement-inbox .tgv2-table tbody tr.gap td {
  background: var(--danger-100);
  color: var(--danger-600);
  font-weight: 700;
}

.bank-statement-inbox .tgv2-table tbody tr.gap:hover td {
  background: var(--danger-100);
}

.bank-statement-inbox .tgv2-table tbody tr.gap .bank-gap-label:before {
  content: "!";
  background: var(--danger-600);
  color: #fff;
  vertical-align: -3px;
  border-radius: 50%;
  place-items: center;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  font-size: 10px;
  font-weight: 900;
  display: inline-grid;
}

.bank-statement-inbox .tgv2-table tbody tr.gap .bank-gap-explain, .bank-statement-inbox .tgv2-table tbody tr.gap .bank-gap-label {
  color: var(--danger-600);
}

.bank-statement-inbox .chip.bank-result-carried {
  border: 1px dashed var(--navy-200);
  background: var(--navy-050);
  color: var(--navy-400);
  font-weight: 700;
}

.bank-connection-list article.conn {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  flex-direction: column;
  gap: 12px;
  padding: 14px;
  display: flex;
}

.conn-top {
  align-items: flex-start;
}

.conn-top .chan {
  margin-top: 4px;
}

.caps {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.cap {
  border: 1px solid var(--navy-200);
  border-radius: var(--pill);
  background: var(--surface);
  min-height: 24px;
  color: var(--navy-500);
  align-items: center;
  gap: 5px;
  padding: 0 9px;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
}

.cap.on {
  border-color: var(--success-500);
  color: var(--success-700);
  background: var(--success-100);
}

.cap.off {
  color: var(--navy-300);
  border-style: dashed;
}

.bank-connection-facts.kv {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 0;
}

.bank-connection-facts.kv dt {
  font-size: 11px;
}

.bank-connection-facts.kv dd {
  color: var(--navy-heading);
  font-size: 12.5px;
  font-weight: 700;
}

.bank-account-detail .chip.sim {
  border: 1px dashed var(--warning-600);
  color: var(--warning-text);
  background: var(--warning-100);
}

.bank-connection-list article.conn .bank-connection-actions {
  margin-top: 0;
}

.bank-reconciliation-view .feed {
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  color: var(--navy-600);
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 6px 10px;
  font-size: 11.5px;
  display: flex;
}

.bank-reconciliation-view .feed i {
  background: var(--success-500);
  border-radius: 50%;
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
}

.bank-reconciliation-view .feed.warn {
  background: var(--danger-100);
  color: var(--danger-600);
}

.bank-reconciliation-view .feed.warn i {
  background: var(--danger-500);
}

.bank-evidence-chips {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
  display: flex;
}

.bank-balance-proof {
  border: 1px solid var(--primary-100);
  border-radius: var(--t360-radius-2);
  color: var(--navy-600);
  background: var(--primary-050);
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  font-size: 11px;
  display: flex;
}

.bank-balance-proof strong {
  color: var(--primary-700);
  font-size: 14px;
}

.bank-balance-proof span:last-child {
  margin-left: auto;
}

.bank-reconciliation-grid {
  grid-template-columns: repeat(2, minmax(320px, 1fr));
  gap: 12px;
  display: grid;
}

.bank-reconciliation-grid article {
  padding: 13px;
}

.bank-reconciliation-grid article > header {
  justify-content: space-between;
  gap: 12px;
  display: flex;
}

.bank-reconciliation-grid article > header > div {
  gap: 2px;
  display: grid;
}

.bank-reconciliation-grid header strong {
  color: var(--navy-800);
}

.bank-reconciliation-grid header small {
  color: var(--navy-400);
}

.bank-reconciliation-grid dl {
  border: 1px solid var(--navy-100);
  border-radius: var(--t360-radius-2);
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 12px 0 0;
  display: grid;
}

.bank-reconciliation-grid dl > div {
  border-right: 1px solid var(--navy-100);
  min-width: 0;
  padding: 8px;
}

.bank-reconciliation-grid dl > div:last-child {
  border-right: 0;
}

.bank-reconciliation-grid dt {
  color: var(--navy-400);
  font-size: 9px;
}

.bank-reconciliation-grid dd {
  color: var(--navy-800);
  margin: 4px 0 0;
  font-size: 11px;
  font-weight: 900;
}

.bank-reconciliation-grid footer {
  justify-content: flex-end;
  gap: 14px;
  margin-top: 10px;
  display: flex;
}

.bank-reconciliation-grid footer a {
  color: var(--primary-600);
  align-items: center;
  gap: 4px;
  font-size: 10px;
  font-weight: 900;
  text-decoration: none;
  display: flex;
}

.bank-create-card {
  max-width: 720px;
}

.bank-step-heading {
  margin-bottom: 10px;
}

.bank-step-heading span {
  color: var(--primary-600);
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.bank-step-heading h2 {
  color: var(--navy-900);
  margin: 3px 0 0;
  font-size: 18px;
}

.bank-step-intro {
  color: var(--navy-500);
  margin: 0 0 16px;
  font-size: 12px;
  line-height: 1.5;
}

.bank-provider-grid {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  display: grid;
}

.bank-provider-option {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-3);
  min-height: 72px;
  color: var(--navy-800);
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px;
  display: grid;
}

.bank-provider-option.selected {
  border-color: var(--primary-500);
  background: var(--primary-050);
  box-shadow: 0 0 0 1px var(--primary-500);
}

.bank-provider-option > span:nth-child(2) {
  gap: 3px;
  display: grid;
}

.bank-provider-option small {
  color: var(--navy-400);
}

.bank-provider-radio {
  border: 1px solid var(--navy-300);
  border-radius: 50%;
  width: 15px;
  height: 15px;
}

.bank-provider-option.selected .bank-provider-radio {
  border: 4px solid var(--primary-500);
}

.bank-capability-confirm, .bank-test-result {
  border-radius: var(--t360-radius-3);
  color: var(--success-700);
  background: var(--success-100);
  align-items: flex-start;
  gap: 9px;
  margin-top: 14px;
  padding: 11px;
  display: flex;
}

.bank-capability-confirm span, .bank-test-result div {
  gap: 3px;
  display: grid;
}

.bank-capability-confirm small {
  color: var(--navy-500);
  font-size: 9.5px;
}

.bank-future-adapter {
  color: var(--warning-text);
  gap: 12px;
  display: flex;
}

.bank-future-adapter h3 {
  margin: 0;
}

.bank-future-adapter p {
  max-width: 540px;
  line-height: 1.5;
}

.bank-future-adapter code {
  font-size: 10px;
}

.bank-resolved-gl {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  min-height: 42px;
  color: var(--primary-600);
  background: var(--navy-050);
  align-items: center;
  gap: 9px;
  padding: 8px;
  display: flex;
}

.bank-resolved-gl span {
  display: grid;
}

.bank-resolved-gl small {
  color: var(--navy-400);
}

.bank-activation-review .bank-definition-list {
  margin-top: 12px;
}

@media (max-width: 1100px) {
  .bank-reconciliation-grid {
    grid-template-columns: 1fr;
  }

  .bank-reconciliation-grid dl {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 640px) {
  .bank-page-actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .bank-page-actions .btn {
    width: 100%;
  }

  .bank-upload-panel {
    grid-template-columns: 1fr;
  }

  .bank-upload-panel small {
    grid-column: auto;
  }

  .bank-provider-grid, .bank-definition-list > div, .bank-reconciliation-grid dl {
    grid-template-columns: 1fr;
  }

  .bank-reconciliation-grid dl > div {
    border-right: 0;
    border-bottom: 1px solid var(--navy-100);
  }

  .bank-reconciliation-grid dl > div:last-child {
    border-bottom: 0;
  }
}

.bank-reconciliation-toolbar {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 12px;
  display: flex;
}

.bank-reconciliation-toolbar .bank-page-actions {
  margin-left: auto;
}

.bank-reconciliation-scope {
  min-width: 220px;
  color: var(--navy-500);
  gap: 5px;
  font: 800 10.5px / 1.1 Lato, sans-serif;
  display: grid;
}

.bank-reconciliation-scope select {
  border: 1px solid var(--navy-200);
  height: 34px;
  color: var(--navy-800);
  background: var(--surface);
  border-radius: 4px;
  padding: 0 9px;
  font-size: 11.5px;
}

.bank-reconciliation-headline {
  color: var(--navy-500);
  margin: 0;
  font-size: 11.5px;
}

.bank-reconciliation-account {
  gap: 10px;
  display: grid;
}

.bank-reconciliation-account.attention {
  border-left: 4px solid var(--warning-500);
}

.bank-reconciliation-account-head-right {
  align-items: center;
  gap: 10px;
  display: flex;
}

.bank-reconciliation-account-head-right .chip {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.bank-reconciliation-identity {
  border: 1px solid var(--primary-100);
  border-radius: var(--t360-radius-2);
  color: var(--primary-700);
  background: var(--primary-050);
  font-variant-numeric: tabular-nums;
  margin: 0;
  padding: 7px 9px;
  font-size: 10.5px;
  font-weight: 800;
}

.bank-reconciliation-memo {
  color: var(--navy-500);
  margin: 0;
  font-size: 10.5px;
  font-style: italic;
}

.bank-reconciliation-chain {
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.bank-reconciliation-chain li {
  color: var(--warning-text);
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 6px;
  font-size: 10.5px;
  display: grid;
}

.bank-reconciliation-chain li small {
  color: var(--navy-500);
  grid-column: 2;
}

.bank-reconciliation-chain-clear, .bank-reconciliation-compact {
  color: var(--navy-500);
  font-variant-numeric: tabular-nums;
  margin: 0;
  font-size: 10.5px;
}

.bank-reconciliation-grid footer {
  align-items: center;
}

.bank-reconciliation-drawer {
  border-left: 1px solid var(--border);
  background: var(--surface);
  flex-direction: column;
  width: min(920px, 96vw);
  height: 100%;
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  box-shadow: 0 12px 32px #101d363d;
}

.bank-reconciliation-drawer > header {
  border-bottom: 1px solid var(--border);
  flex: none;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  display: flex;
}

.bank-reconciliation-drawer > header > div {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.bank-reconciliation-drawer > header span {
  color: var(--primary-600);
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.bank-reconciliation-drawer > header strong {
  color: var(--navy-800);
  font-size: 15px;
}

.bank-reconciliation-drawer > header small {
  color: var(--navy-400);
  font-size: 10.5px;
}

.bank-reconciliation-drawer-table {
  border-collapse: collapse;
  flex: auto;
  width: 100%;
  display: block;
  overflow: auto;
}

.bank-reconciliation-drawer-table th {
  z-index: 1;
  border-bottom: 1px solid var(--border);
  color: var(--navy-400);
  background: var(--navy-050);
  text-align: left;
  text-transform: uppercase;
  padding: 8px 10px;
  font-size: 9.5px;
  position: sticky;
  top: 0;
}

.bank-reconciliation-drawer-table td {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-800);
  vertical-align: top;
  padding: 8px 10px;
  font-size: 11px;
}

.bank-reconciliation-drawer-table td small {
  color: var(--navy-400);
  font-size: 9.5px;
  display: block;
}

.bank-reconciliation-drawer-table .numeric {
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.bank-reconciliation-drawer-links {
  gap: 3px;
  display: grid;
}

.bank-reconciliation-drawer-links a {
  color: var(--primary-600);
  white-space: nowrap;
  align-items: center;
  gap: 4px;
  font-size: 10px;
  font-weight: 900;
  text-decoration: none;
  display: inline-flex;
}

.bank-reconciliation-drawer-pager {
  border-top: 1px solid var(--border);
  flex: none;
  justify-content: flex-end;
  padding: 10px 16px;
  display: flex;
}

.bank-account-detail-views {
  border-bottom: 1px solid var(--navy-100);
  gap: 6px;
  padding-bottom: 8px;
  display: flex;
}

.bank-account-detail-views button {
  min-height: 28px;
  color: var(--navy-500);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 4px;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  font: 800 11.5px / 1 Lato, sans-serif;
  display: inline-flex;
}

.bank-account-detail-views button:hover {
  color: var(--primary-700);
  background: var(--primary-050);
}

.bank-account-detail-views button.is-active {
  color: var(--primary-700);
  background: var(--primary-050);
  box-shadow: inset 0 -2px 0 var(--primary-500);
}

.bank-virtual-iban-link {
  color: var(--primary-600);
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  font: 800 11.5px / 1 Lato, sans-serif;
  text-decoration: underline;
}

.bank-virtual-iban-link:hover {
  color: var(--primary-700);
}

.virtual-iban-tab {
  gap: 10px;
  display: grid;
}

.virtual-iban-stock-line {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-3);
  color: var(--navy-800);
  background: var(--navy-050);
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 11.5px;
  display: flex;
}

.virtual-iban-stock-line b {
  font-weight: 900;
}

.virtual-iban-stock-spacer {
  flex: auto;
}

.virtual-iban-table {
  border-collapse: collapse;
  width: 100%;
}

.virtual-iban-table th {
  border-bottom: 1px solid var(--border);
  color: var(--navy-400);
  background: var(--navy-050);
  text-align: left;
  text-transform: uppercase;
  padding: 8px 10px;
  font-size: 9.5px;
}

.virtual-iban-table td {
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-800);
  vertical-align: top;
  padding: 8px 10px;
  font-size: 11px;
}

.virtual-iban-lease-cell {
  gap: 2px;
  display: grid;
}

.virtual-iban-lease-cell small {
  color: var(--navy-400);
  font-size: 9.5px;
}

.virtual-iban-note, .virtual-iban-hint {
  color: var(--navy-500);
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
}

.virtual-iban-pick {
  align-content: start;
  gap: 6px;
  max-height: 250px;
  margin: 12px 0;
  display: grid;
  overflow-y: auto;
}

.virtual-iban-pick-label {
  color: var(--navy-500);
  font: 800 11px / 1.2 Lato, sans-serif;
}

.virtual-iban-pick-row {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-3);
  cursor: pointer;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  padding: 8px 10px;
  display: grid;
}

.virtual-iban-pick-row:hover {
  border-color: var(--primary-200);
  background: var(--primary-050);
}

.virtual-iban-pick-copy {
  gap: 2px;
  min-width: 0;
  display: grid;
}

.virtual-iban-pick-copy small {
  color: var(--navy-400);
  overflow-wrap: anywhere;
  font-size: 9.5px;
}

.virtual-iban-pick-empty {
  color: var(--navy-400);
  margin: 0;
  font-size: 11px;
}

.virtual-iban-notice-toggle {
  color: var(--navy-800);
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  font-size: 12px;
  display: flex;
}

.lease-virtual-iban {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.lease-virtual-iban-actions {
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  display: flex;
}

.lease-virtual-iban-actions small {
  color: var(--navy-400);
  font-size: 10px;
}

.payment-allocation-evidence {
  border-radius: var(--t360-radius-2);
  color: var(--navy-800);
  background: var(--surface);
  align-items: center;
  gap: 7px;
  margin-top: 6px;
  padding: 6px 8px;
  font-size: 10.5px;
  line-height: 1.35;
  display: flex;
}

.payment-allocation-evidence-lock {
  width: 19px;
  height: 19px;
  color: var(--success-700);
  background: var(--success-100);
  border-radius: 999px;
  flex: none;
  place-items: center;
  display: grid;
}

.payment-allocation-rule-explanation .payment-allocation-evidence span {
  color: var(--navy-800);
  letter-spacing: 0;
  text-transform: none;
  font: 700 10.5px / 1.35 Lato, sans-serif;
}

.payment-allocation-rule-explanation .payment-allocation-evidence .payment-allocation-evidence-lock {
  color: var(--success-700);
}

.bank-statement-picker {
  align-content: start;
  gap: 5px;
  min-width: 0;
  display: grid;
  position: relative;
}

.bank-statement-picker-label {
  color: var(--navy-500);
  font: 800 10.5px / 1.1 Lato, sans-serif;
}

.bank-statement-picker-control {
  border: 1px solid var(--navy-200);
  height: 34px;
  color: var(--navy-400);
  background: var(--surface);
  border-radius: 4px;
  align-items: center;
  gap: 6px;
  padding: 0 8px;
  display: flex;
}

.bank-statement-picker-control input {
  min-width: 0;
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: none;
  flex: 1;
  padding: 0;
  font-size: 11.5px;
}

.bank-statement-picker-clear {
  width: 18px;
  height: 18px;
  color: var(--navy-500);
  background: var(--navy-100);
  cursor: pointer;
  border: 0;
  border-radius: 999px;
  place-items: center;
  display: grid;
}

.bank-statement-picker-popup {
  z-index: 60;
  border: 1px solid var(--border);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  width: max(100%, 340px);
  max-height: 340px;
  display: grid;
  position: absolute;
  top: 100%;
  left: 0;
  overflow: auto;
  box-shadow: 0 8px 24px #101d362e;
}

.bank-statement-picker-popup ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.bank-statement-picker-popup li[role="option"] {
  border-bottom: 1px solid var(--navy-100);
  cursor: pointer;
  gap: 2px;
  padding: 7px 10px;
  display: grid;
}

.bank-statement-picker-popup li[role="option"] strong {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  font-size: 11px;
}

.bank-statement-picker-popup li[role="option"] small {
  color: var(--navy-400);
  font-size: 9.5px;
}

.bank-statement-picker-popup li[role="option"].active, .bank-statement-picker-popup li[role="option"]:hover {
  background: var(--primary-050);
}

.bank-statement-picker-popup li[role="option"].selected {
  box-shadow: inset 3px 0 0 var(--primary-500);
}

.bank-statement-picker-group > span {
  color: var(--navy-500);
  background: var(--navy-050);
  text-transform: uppercase;
  padding: 6px 10px;
  font-size: 9.5px;
  font-weight: 900;
  display: block;
}

.bank-statement-picker-empty {
  color: var(--navy-400);
  padding: 9px 10px;
  font-size: 10.5px;
}

.bank-statement-picker-popup > .btn {
  margin: 8px 10px;
}

@media (max-width: 1100px) {
  .bank-reconciliation-drawer {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .bank-reconciliation-toolbar .bank-page-actions {
    width: 100%;
    margin-left: 0;
  }

  .bank-reconciliation-drawer-table th, .bank-reconciliation-drawer-table td {
    padding: 6px 7px;
  }
}

.gl-period {
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  padding: 16px;
  display: flex;
}

.gl-period-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  display: flex;
}

.gl-period-head h2 {
  color: var(--navy-800);
  margin: 2px 0 4px;
  font-size: 20px;
}

.gl-period-head p {
  max-width: 720px;
  color: var(--navy-500);
  margin: 0;
  font-size: 12.5px;
  line-height: 1.5;
}

.gl-period-eyebrow {
  color: var(--primary-600);
  letter-spacing: .06em;
  text-transform: uppercase;
  align-items: center;
  gap: 6px;
  font-size: 10.5px;
  font-weight: 900;
  display: inline-flex;
}

.gl-period-controls {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px;
  display: flex;
}

.gl-period-controls label {
  color: var(--navy-500);
  flex-direction: column;
  gap: 4px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.gl-period-controls select {
  border: 1px solid var(--navy-200);
  min-width: 220px;
  min-height: 32px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 8px;
  padding: 0 10px;
  font-size: 12.5px;
}

.gl-period-layout {
  grid-template-columns: minmax(0, 1fr) minmax(230px, 270px);
  align-items: start;
  gap: 14px;
  display: grid;
}

@media (max-width: 1100px) {
  .gl-period-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

.gl-period-grid-panel {
  padding: 0;
  overflow-x: auto;
}

.gl-period-table th, .gl-period-table td {
  padding: 9px 10px;
}

.gl-period-table td small {
  color: var(--navy-400);
  font-size: 10.5px;
  display: block;
}

.gl-period-actor-cell {
  overflow-wrap: anywhere;
  max-width: 150px;
}

.gl-period-table tbody tr {
  cursor: pointer;
}

.gl-period-table thead th {
  vertical-align: bottom;
}

.gl-period-table tbody td {
  height: 46px;
}

.gl-period-table tbody tr:hover td {
  background: var(--navy-050);
}

.gl-period-table tbody tr.gl-period-row--selected td {
  background: var(--primary-050);
  box-shadow: inset 0 1px 0 var(--primary-300), inset 0 -1px 0 var(--primary-300);
}

.gl-period-table tbody td:first-child, .gl-period-table tbody .chip {
  white-space: nowrap;
}

.gl-period-reason {
  white-space: normal;
  max-width: 200px;
}

.gl-period-actions-head, .gl-period-actions {
  text-align: right;
  white-space: nowrap;
}

.gl-period-actions .btn {
  justify-content: center;
  min-width: 134px;
}

.gl-period-trail {
  position: sticky;
  top: 12px;
}

.gl-period-state {
  text-align: center;
  place-content: center;
  justify-items: center;
  gap: 10px;
  min-height: 150px;
  padding: 20px 12px;
  display: grid;
}

.gl-period-state strong {
  max-width: 32ch;
  color: var(--navy-heading);
  font: 900 12.5px / 1.4 Lato, sans-serif;
}

.gl-period-trail-list {
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.gl-period-trail-list li {
  border-top: 1px solid var(--navy-100);
  padding: 10px 0 0;
}

.gl-period-trail-list li:first-child {
  border-top: 0;
  padding-top: 0;
}

.gl-period-trail-row {
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 4px;
  display: flex;
}

.gl-period-trail-meta {
  color: var(--navy-700);
  font-size: 12px;
}

.gl-period-trail-reason {
  color: var(--navy-600);
  white-space: pre-wrap;
  margin-top: 2px;
  font-size: 12px;
}

.gl-period-dialog {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.gl-period-dialog p {
  color: var(--navy-600);
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
}

.gl-period-field {
  color: var(--navy-600);
  flex-direction: column;
  gap: 4px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.gl-period-field textarea {
  border: 1px solid var(--navy-200);
  font: inherit;
  resize: vertical;
  border-radius: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 400;
}

.vat-gate-box {
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  grid-template-columns: 24px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  padding: 12px 14px;
  font-size: 11px;
  display: grid;
}

.vat-gate-box.ok {
  border-color: color-mix(in srgb, var(--success-500) 45%, var(--navy-150));
  color: var(--success-700);
  background: var(--success-100);
}

.vat-gate-icon {
  width: 22px;
  height: 22px;
  color: var(--surface);
  background: var(--warning-600);
  border-radius: 50%;
  place-items: center;
  display: grid;
}

.vat-gate-box.ok .vat-gate-icon {
  background: var(--success-600);
}

.vat-gate-copy {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.vat-gate-copy strong {
  color: currentColor;
  font-size: 11px;
}

.vat-gate-copy small {
  color: var(--navy-600);
  font-size: 9.5px;
  line-height: 1.3;
}

.vat-gate-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  display: flex;
}

.vat-gate-override-form {
  border-top: 1px solid color-mix(in srgb, var(--warning-500) 40%, transparent);
  flex-direction: column;
  grid-column: 1 / -1;
  gap: 8px;
  padding-top: 8px;
  display: flex;
}

.vat-gate-override-form label {
  color: var(--navy-600);
  flex-direction: column;
  gap: 4px;
  font-size: 10px;
  font-weight: 900;
  display: flex;
}

.vat-gate-override-form textarea {
  border: 1px solid var(--navy-200);
  width: 100%;
  color: var(--navy-800);
  background: var(--surface);
  font: inherit;
  resize: vertical;
  border-radius: 4px;
  padding: 7px 9px;
  font-size: 11px;
}

.vat-gate-override-form textarea:focus-visible {
  outline: 2px solid var(--primary-600);
  outline-offset: 2px;
}

.vat-lifecycle-label-detail {
  color: var(--navy-500);
  font-size: 10px;
  font-weight: 700;
}

.vat-transmission-xml {
  color: var(--success-700);
  align-items: center;
  gap: 5px;
  font-size: 10px;
  font-weight: 900;
  display: inline-flex;
}

button.vat-transmission-xml {
  color: var(--primary-700);
  justify-self: start;
}

.vat-transmission-xml-state {
  flex-wrap: wrap;
  grid-column: 1 / -1;
  align-items: center;
  gap: 10px;
  display: flex;
}

.vat-filing-start-banner {
  border: 1px solid var(--primary-300);
  border-radius: var(--t360-radius-2);
  color: var(--primary-700);
  background: var(--primary-050);
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 13px 15px;
  display: grid;
}

.vat-filing-start-banner > div {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.vat-filing-start-banner strong {
  color: var(--primary-700);
  font-size: 12px;
}

.vat-filing-start-banner span {
  color: var(--navy-600);
  font-size: 10.5px;
}

.vat-files-through {
  color: var(--primary-700);
  background: var(--primary-050);
}

.vat-period-picker button.beforeStart {
  color: var(--navy-400);
  border-style: dashed;
  border-color: var(--navy-200);
}

.vat-period-picker button.notCreated {
  color: var(--danger-600);
  border-color: color-mix(in srgb, var(--danger-600) 45%, transparent);
}

.vat-period-picker button.notCreated.active {
  background: var(--danger-100);
}

.vat-uva-not-created-actions {
  align-items: center;
  gap: 12px;
  display: flex;
}

.vat-uva-not-created-actions small {
  color: var(--navy-500);
  font-size: 10.5px;
}

.vat-tax-items-kpi-strip {
  padding: 0 16px;
}

.vat-tax-items-kpi-strip .pdm-kpi-cards {
  margin-right: 0;
}

.vat-document-kpi-strip {
  padding: 0 16px;
}

.vat-document-kpi-strip .pdm-kpi-cards {
  margin-right: 0;
}

.vat-tax-items-kpi-strip {
  margin-bottom: -8px;
}

.vat-tax-items-toolbar {
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 12px;
  min-height: 54px;
  padding-top: 8px;
  padding-bottom: 8px;
  display: grid;
}

.vat-tax-items-toolbar > .filter-tabs {
  justify-self: start;
}

.vat-tax-items-toolbar > .vat-tax-items-head-controls {
  justify-self: end;
}

.vat-tax-items-status-chips {
  flex-wrap: wrap;
  justify-self: center;
  align-items: center;
  gap: 8px;
  display: flex;
}

.vat-tax-items-status-chips > .chip {
  border-radius: var(--pill);
  background: var(--navy-100);
  border: 0;
  padding: 5px 10px;
}

.vat-tax-items-status-chips > button.chip {
  cursor: pointer;
}

.vat-tax-items-status-chips > .chip.green {
  color: var(--success-600);
  background: var(--success-100);
}

.vat-tax-items-status-chips > .chip.red {
  color: var(--danger-600);
  background: var(--danger-100);
}

.vat-tax-lens-filters {
  color: var(--navy-600);
  flex-wrap: wrap;
  gap: 16px;
  padding: 0 0 16px;
  font-size: 12px;
  display: flex;
}

.vat-tax-lens-filters label {
  align-items: center;
  gap: 8px;
  display: flex;
}

.vat-tax-lens-filters select, .vat-tax-lens-filters input {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  max-width: 260px;
  min-height: 32px;
  color: var(--navy-700);
  padding: 4px 8px;
}

.vat-tax-tie-banner {
  border: 1px solid var(--primary-200);
  border-radius: var(--t360-radius-4);
  color: var(--primary-700);
  background: var(--primary-050);
  flex-direction: column;
  gap: 5px;
  margin: 0 0 12px;
  padding: 12px 16px;
  font-size: 12px;
  display: flex;
}

[data-testid="vat-tax-item-list"] > .vat-card-head {
  padding-left: 0;
  padding-right: 0;
}

.vat-tax-checks-modal > div {
  border-top: 1px solid var(--navy-100);
  color: var(--navy-600);
  padding: 14px 20px;
  font-size: 12px;
}

.vat-tax-checks-modal > div:first-child {
  border-top: 0;
}

.vat-tax-checks-modal strong {
  color: var(--navy-800);
}

.vat-tax-checks-modal p {
  margin: 6px 0;
  line-height: 1.5;
}

.vat-tax-checks-modal a {
  color: var(--primary-700);
  font-weight: 700;
}

.vat-tax-unmapped {
  color: var(--danger-600) !important;
  background: var(--danger-100) !important;
}

.vat-tax-unmapped strong {
  color: var(--danger-600);
}

.vat-drawer.vat-tax-kz-drawer {
  width: min(1000px, calc(100vw - var(--rail-w)));
}

.vat-tax-items .vat-grid button.chip {
  cursor: pointer;
  border: 0;
  padding: 4px 10px;
}

.vat-tax-tie-banner {
  flex-flow: wrap;
  align-items: baseline;
  gap: 8px;
}

.vat-tax-tie-banner.ok {
  border-color: var(--success-500);
  color: var(--success-600);
  background: var(--success-100);
}

.vat-tax-tie-banner.bad {
  border-color: var(--danger-500);
  color: var(--danger-600);
  background: var(--danger-100);
}

.vat-tax-items .vat-object-card-head p {
  max-width: 850px;
  line-height: 1.6;
}

.vat-tax-checks-modal > div {
  min-height: 66px;
  padding-left: 48px;
  position: relative;
}

.vat-tax-checks-modal > div > svg {
  color: var(--success-600);
  position: absolute;
  top: 15px;
  left: 16px;
}

.vat-tax-checks-modal > .vat-tax-unmapped > svg {
  color: var(--danger-600);
}

.vat-tax-lens-filters input[type="checkbox"] {
  min-height: auto;
}

.bka-gate-box.info {
  color: var(--primary-700);
  background: var(--primary-050);
}

.bka-record-body > .bka-gate-box.bka-kp-inline, .ecp-card > .bka-gate-box.bka-kp-inline {
  margin: 0;
}

.bka-kp-src {
  border-bottom: 1px solid var(--navy-100);
  border-radius: var(--t360-radius-2);
  grid-template-columns: 24px 1fr auto;
  align-items: start;
  gap: 0 14px;
  padding: 10px 6px;
  display: grid;
}

.bka-kp-src:last-child {
  border-bottom: 0;
}

.bka-kp-src.on {
  background: var(--primary-050);
}

.bka-kp-src.na {
  opacity: .55;
}

.bka-kp-src input[type="radio"] {
  accent-color: var(--primary-600);
  margin: 3px 0 0;
}

.bka-kp-src b {
  color: var(--navy-900);
  font-size: 14px;
}

.bka-kp-src small {
  color: var(--navy-500);
  margin-top: 2px;
  font-size: 12px;
  font-weight: 500;
  display: block;
}

.bka-kp-src .amt {
  color: var(--navy-900);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  padding-top: 2px;
  font: 900 14px / 1.3 Lato, sans-serif;
}

.bka-kp-src-line {
  align-items: center;
  gap: var(--t360-space-3);
  margin: 6px 0 2px;
  display: flex !important;
}

.bka-kp-reasons span {
  color: var(--warning-text);
  font-weight: 700;
  display: block;
}

.bka-kp-select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  min-height: 28px;
  color: var(--navy-800);
  background: var(--surface);
  padding: 2px 8px;
  font: 700 12px Lato, sans-serif;
}

.bka-kp-select:focus-visible {
  border-color: var(--primary-600);
  outline: 2px solid var(--primary-t16);
}

.pdm-field .bka-kp-select {
  min-height: 37px;
  font-size: 13px;
}

.bka-kp-factor {
  align-items: center;
  gap: var(--t360-space-3);
  color: var(--navy-600);
  font: 700 12px Lato, sans-serif;
  display: inline-flex;
}

.bka-kp-factor small {
  color: var(--navy-400);
  font-weight: 500;
}

.bka-kp-cell {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  min-width: 100px;
  color: var(--navy-800);
  background: var(--surface);
  font: inherit;
  font-variant-numeric: tabular-nums;
  text-align: right;
  cursor: text;
  padding: 4px 8px;
  display: inline-block;
}

.bka-kp-cell.narrow {
  min-width: 64px;
}

.bka-kp-cell:hover, .bka-kp-cell:focus-visible {
  border-color: var(--primary-600);
  outline: 0;
}

.bka-kp-cell.edited {
  border-color: var(--primary-600);
  background: var(--primary-050);
}

.bka-kp-cell:disabled {
  color: var(--navy-400);
  cursor: wait;
}

.bka-kp-input {
  width: 120px;
  box-shadow: 0 0 0 3px var(--primary-t08);
}

.bka-kp-input.narrow {
  width: 72px;
}

.bka-kp-reset {
  margin-left: var(--t360-space-2);
}

.bka-kp-months td.m {
  white-space: nowrap;
  font-size: 12px;
}

.bka-kp-months th.sticky, .bka-kp-months td.sticky {
  z-index: 1;
  background: var(--surface);
  min-width: 200px;
  position: sticky;
  left: 0;
}

.bka-kp-months tr.total td.sticky {
  background: var(--navy-050);
}

.bka-kp-no-source {
  border-color: var(--warning-500);
  background: var(--warning-100);
}

.bka-kp-no-source h3, .bka-kp-no-source p {
  color: var(--warning-text);
}

.bka-plan-create-page .ecp-card {
  max-width: 960px;
}

.gl-journal {
  gap: var(--t360-space-4);
  flex-direction: column;
  min-height: 100%;
  display: flex;
}

.gl-journal.gl-journal--fill {
  height: 100%;
  min-height: 0;
}

.gl-journal > .card {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  flex: none;
}

.gl-journal-intro {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-6);
  padding: 15px 18px;
  display: flex;
}

.gl-journal-intro > div {
  min-width: 0;
}

.gl-journal-intro span {
  color: var(--primary-700);
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 900;
}

.gl-journal-intro h2 {
  color: var(--navy-heading);
  margin-top: 3px;
  font: 900 20px / 1.2 Lato, sans-serif;
}

.gl-journal-intro p {
  color: var(--navy-500);
  margin-top: 4px;
  font-size: 11.5px;
}

.gl-journal-filters {
  grid-template-columns: repeat(5, minmax(130px, 1fr));
  gap: 11px 12px;
  padding: 14px 16px;
  display: grid;
}

.gl-journal-filters > label:not(.gl-journal-check) {
  min-width: 0;
  color: var(--navy-500);
  flex-direction: column;
  gap: 5px;
  font-size: 10.5px;
  font-weight: 900;
  display: flex;
}

.gl-ledger-scope {
  grid-template-columns: repeat(3, minmax(150px, 1fr)) auto;
  align-items: end;
  gap: 11px 12px;
  display: grid;
}

.gl-journal-filters > .gl-ledger-scope {
  grid-column: 1 / -1;
}

.gl-ledger-scope > label {
  min-width: 0;
  color: var(--navy-500);
  flex-direction: column;
  gap: 5px;
  font-size: 10.5px;
  font-weight: 900;
  display: flex;
}

.gl-ledger-scope input, .gl-ledger-scope select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  width: 100%;
  min-width: 0;
  min-height: 32px;
  color: var(--navy-800);
  background: var(--surface);
  padding: 5px 8px;
}

.gl-ledger-scope input:focus-visible, .gl-ledger-scope select:focus-visible {
  outline: 2px solid var(--primary-500);
  outline-offset: 1px;
}

.gl-ledger-scope-actions {
  gap: var(--t360-space-3);
  align-items: center;
  display: flex;
}

.gl-journal-filters input, .gl-journal-filters select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  width: 100%;
  min-width: 0;
  min-height: 32px;
  color: var(--navy-800);
  background: var(--surface);
  padding: 5px 8px;
}

.gl-journal-filters input:focus-visible, .gl-journal-filters select:focus-visible {
  outline: 2px solid var(--primary-500);
  outline-offset: 1px;
}

.gl-journal-search-input {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  min-height: 32px;
  color: var(--navy-400);
  background: var(--surface);
  align-items: center;
  gap: 6px;
  padding: 0 8px;
  display: flex;
}

.gl-journal-search-input input {
  border: 0;
  outline: 0;
  min-height: 28px;
  padding: 3px 0;
}

.gl-journal-search-input:focus-within {
  outline: 2px solid var(--primary-500);
  outline-offset: 1px;
}

.gl-journal-check {
  min-height: 32px;
  color: var(--navy-600);
  align-self: end;
  align-items: center;
  gap: 8px;
  font-size: 11.5px;
  font-weight: 900;
  display: flex;
}

.gl-journal-check input {
  width: 16px;
  min-height: 16px;
  accent-color: var(--primary-600);
}

.gl-journal-filter-actions {
  justify-content: flex-end;
  gap: var(--t360-space-3);
  grid-column: 1 / -1;
  padding-top: 2px;
  display: flex;
}

.gl-journal-range {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-5);
  min-height: 52px;
  padding: 11px 16px;
  display: flex;
}

.gl-journal-range > strong {
  color: var(--navy-700);
  flex: none;
  font-size: 12px;
}

.gl-journal-proof {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  display: flex;
}

.gl-journal-proof > button {
  cursor: pointer;
  border: 0;
}

.gl-journal-table-card {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  min-height: 260px;
  display: flex;
}

.gl-journal-legs {
  border-collapse: collapse;
  width: 100%;
  color: var(--navy-700);
  font-size: 11.5px;
}

.gl-journal-legs th, .gl-journal-legs td {
  border-bottom: 1px solid var(--navy-100);
  text-align: left;
  vertical-align: middle;
  padding: 10px 8px;
}

.gl-journal-legs thead th {
  color: var(--navy-500);
  background: var(--navy-050);
  letter-spacing: .05em;
  text-transform: uppercase;
  white-space: nowrap;
  font-size: 9.5px;
  font-weight: 900;
}

.gl-journal-legs th.right, .gl-journal-legs td.right {
  text-align: right;
}

.gl-journal-voucher {
  color: var(--primary-700);
  font-variant-numeric: tabular-nums;
}

.gl-journal-money {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font-weight: 900;
}

.gl-journal-origin {
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.gl-journal-origin a, .gl-journal-origin span, .gl-journal-origin small {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  display: block;
  overflow: hidden;
}

.gl-journal-origin a {
  color: var(--primary-700);
  text-underline-offset: 2px;
  font: 900 11.5px / 15px Lato, sans-serif;
  text-decoration: underline;
}

.gl-journal-origin small {
  color: var(--navy-400);
  font: 400 9.5px / 12px Lato, sans-serif;
}

.gl-journal-more {
  justify-content: center;
  padding: 12px;
  display: flex;
}

.gl-journal-drawer {
  width: min(820px, calc(100vw - var(--rail-w)));
}

.gl-journal-legs {
  border: 1px solid var(--navy-150);
  min-width: 650px;
}

.gl-journal-legs code {
  color: var(--primary-700);
  font-size: 11px;
  font-weight: 900;
}

.gl-journal-account-link {
  color: var(--primary-700);
  text-underline-offset: 2px;
  margin-top: 3px;
  font-size: 10px;
  font-weight: 900;
  text-decoration: underline;
  display: block;
}

.beleg-drawer-frame {
  flex-direction: column;
  height: 100%;
  min-height: 0;
  display: flex;
}

.beleg-drawer-frame--panel {
  height: auto;
}

.beleg-drawer-scroll {
  gap: var(--t360-space-5);
  flex-direction: column;
  display: flex;
}

.beleg-drawer-state {
  color: var(--navy-500);
  margin: 0;
}

.beleg-drawer-state.error {
  color: var(--danger-600);
}

.beleg-facts {
  gap: var(--t360-space-3);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  display: grid;
}

.beleg-facts > div {
  border: 1px solid var(--navy-100);
  border-radius: var(--t360-radius-2);
  min-width: 0;
  padding: var(--t360-space-3);
  background: var(--navy-050);
}

.beleg-facts .beleg-fact-wide {
  grid-column: span 2;
}

.beleg-facts dt {
  color: var(--navy-500);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 900;
}

.beleg-facts dd {
  overflow-wrap: anywhere;
  color: var(--navy-800);
  margin: 4px 0 0;
  font-size: 11.5px;
  font-weight: 800;
}

.beleg-facts a {
  color: var(--primary-700);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.beleg-reversal-links {
  gap: var(--t360-space-3);
  flex-wrap: wrap;
  display: flex;
}

.beleg-section {
  gap: var(--t360-space-3);
  flex-direction: column;
  display: flex;
}

.beleg-section > h3 {
  color: var(--primary-600);
  margin: 0;
  font: 800 14px / 1.2 Lato, sans-serif;
}

.beleg-table-scroll {
  overflow-x: auto;
}

.beleg-drawer .gl-journal-legs tbody tr {
  cursor: pointer;
}

.beleg-drawer .gl-journal-legs tbody tr:focus {
  outline: 2px solid var(--primary-400);
  outline-offset: -2px;
}

.beleg-drawer .is-selected-leg {
  box-shadow: inset 3px 0 0 var(--primary-600);
  background: var(--primary-t08);
}

.beleg-drawer .is-counter-leg {
  background: var(--warning-100);
}

.beleg-t-accounts {
  gap: var(--t360-space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
}

.beleg-t-account {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  min-width: 0;
  overflow: hidden;
}

.beleg-t-account > header {
  align-items: baseline;
  gap: var(--t360-space-3);
  min-height: 42px;
  padding: var(--t360-space-3);
  color: var(--navy-800);
  background: var(--navy-050);
  display: flex;
}

.beleg-t-account > header strong {
  color: var(--primary-700);
  font-variant-numeric: tabular-nums;
}

.beleg-t-account > header span {
  color: var(--navy-500);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10.5px;
  overflow: hidden;
}

.beleg-t-head, .beleg-t-body {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
}

.beleg-t-head {
  border-top: 2px solid var(--navy-700);
  color: var(--navy-600);
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 900;
}

.beleg-t-head span {
  padding: 6px var(--t360-space-3);
}

.beleg-t-head span:first-child, .beleg-t-body > div:first-child {
  border-right: 1px solid var(--navy-500);
}

.beleg-t-body > div {
  flex-direction: column;
  min-height: 46px;
  padding: 4px;
  display: flex;
}

.beleg-t-leg {
  border-radius: var(--t360-radius-1);
  width: 100%;
  color: var(--navy-700);
  cursor: pointer;
  text-align: left;
  background: none;
  border: 0;
  justify-content: space-between;
  align-items: center;
  gap: 5px;
  padding: 6px;
  font-size: 10px;
  display: flex;
}

.beleg-t-leg strong {
  font-variant-numeric: tabular-nums;
  flex: none;
}

.beleg-t-leg:hover, .beleg-t-leg:focus-visible {
  outline: 1px solid var(--primary-400);
  background: var(--primary-t08);
}

.beleg-proof {
  justify-content: flex-end;
  align-items: center;
  gap: var(--t360-space-4);
  border-top: 1px solid var(--navy-150);
  padding-top: var(--t360-space-4);
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  display: flex;
}

.beleg-proof.balanced span {
  color: var(--success-600);
  font-weight: 900;
}

.beleg-proof.unbalanced {
  color: var(--danger-600);
}

@keyframes beleg-drawer-in {
  from {
    transform: translateX(24px);
  }

  to {
    transform: translateX(0);
  }
}

.beleg-drawer {
  animation: .18s ease-out beleg-drawer-in;
}

.beleg-object-unit {
  max-width: 210px;
}

.beleg-object-unit-value {
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden;
}

.beleg-object-unit-value code {
  color: var(--navy-600);
  font-size: 10.5px;
  font-weight: 700;
}

.vat-drawer-layer .beleg-drawer {
  z-index: 410;
  top: 0;
}

@media (max-width: 800px) {
  .beleg-facts {
    grid-template-columns: 1fr 1fr;
  }

  .beleg-t-accounts {
    grid-template-columns: 1fr;
  }
}

.gl-konten {
  gap: var(--t360-space-4);
  flex-direction: column;
  min-height: 100%;
  display: flex;
}

.gl-konten > .card, .gl-konten-layout > .card {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
}

.gl-konten-scope {
  padding: 14px 16px;
}

.gl-konten-layout {
  gap: var(--t360-space-4);
  grid-template-columns: minmax(440px, .95fr) minmax(620px, 1.4fr);
  align-items: start;
  display: grid;
}

.gl-balance-card, .gl-account-card {
  min-width: 0;
  overflow: hidden;
}

.gl-konten-card-head {
  justify-content: space-between;
  align-items: center;
  gap: var(--t360-space-4);
  border-bottom: 1px solid var(--navy-100);
  min-height: 64px;
  padding: 12px 15px;
  display: flex;
}

.gl-konten-card-head h3 {
  color: var(--navy-heading);
  margin: 0;
  font: 900 14px / 1.25 Lato, sans-serif;
}

.gl-konten-card-head p {
  color: var(--navy-500);
  margin: 3px 0 0;
  font-size: 10.5px;
}

.gl-konten-table-scroll {
  width: 100%;
  overflow-x: auto;
}

.gl-balance-card > .tgv2, .gl-account-card > .tgv2 {
  border: 0;
}

.gl-balance-card .tgv2-table tbody strong, .gl-account-card .tgv2-table tbody strong {
  color: var(--primary-700);
  font-variant-numeric: tabular-nums;
}

.tgv2-table tbody tr.tgv2-row-tone.gl-balance-class {
  cursor: default;
}

.tgv2-table tbody tr.tgv2-row-tone.gl-balance-class td, .tgv2-table tbody tr.tgv2-row-tone.gl-balance-class:hover td {
  color: var(--navy-600);
  background: var(--navy-050);
  font-weight: 900;
}

.gl-konten-kpis {
  border-bottom: 1px solid var(--navy-100);
  background: var(--navy-050);
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 8px;
  padding: 12px 14px;
  display: grid;
}

.gl-konten-kpi {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  min-width: 0;
  padding: 10px;
}

.gl-konten-kpi span {
  color: var(--navy-500);
  letter-spacing: .05em;
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 900;
  display: block;
}

.gl-konten-kpi strong {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  margin-top: 5px;
  font-size: 13px;
  display: block;
}

.gl-account-placeholder {
  min-height: 340px;
  color: var(--navy-500);
  text-align: center;
  place-content: center;
  padding: 30px;
  display: grid;
}

.gl-account-placeholder h3 {
  color: var(--navy-heading);
  margin: 0 0 6px;
  font: 900 16px / 1.2 Lato, sans-serif;
}

.gl-account-placeholder p {
  margin: 0;
  font-size: 11.5px;
}

.gl-konten-state {
  text-align: center;
  place-content: center;
  justify-items: center;
  gap: 10px;
  min-height: 180px;
  padding: 26px 20px;
  display: grid;
}

.gl-konten-state strong {
  max-width: 46ch;
  color: var(--navy-heading);
  font: 900 12.5px / 1.4 Lato, sans-serif;
}

.gl-balance-opening {
  flex-direction: column;
  align-items: flex-end;
  gap: 1px;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.gl-balance-opening > span, .gl-balance-opening small {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  display: block;
  overflow: hidden;
}

.gl-balance-opening small {
  color: var(--navy-400);
  font: 400 9.5px / 12px Lato, sans-serif;
}

@media (max-width: 1260px) {
  .gl-konten-layout {
    grid-template-columns: 1fr;
  }

  .gl-ledger-scope {
    grid-template-columns: repeat(2, minmax(150px, 1fr));
  }
}

@media (max-width: 1180px) {
  .gl-journal-filters {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
  }
}

@media (max-width: 760px) {
  .gl-journal-intro, .gl-journal-range {
    flex-direction: column;
    align-items: stretch;
  }

  .gl-journal-filters, .gl-ledger-scope {
    grid-template-columns: 1fr;
  }

  .gl-ledger-scope-actions, .gl-journal-filter-actions {
    flex-direction: column;
  }

  .gl-ledger-scope-actions .btn, .gl-journal-filter-actions .btn, .gl-journal-intro .btn {
    width: 100%;
  }

  .gl-journal-proof {
    justify-content: flex-start;
  }

  .gl-journal-drawer {
    width: 96vw;
    min-width: 0;
  }

  .gl-konten-kpis {
    grid-template-columns: repeat(2, minmax(120px, 1fr));
  }
}

.gl-year-end-card {
  gap: var(--t360-space-3);
  flex-direction: column;
  display: flex;
}

.gl-year-end-ladder {
  counter-reset: gl-year-end-step;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.gl-year-end-ladder > li {
  border-top: 1px solid var(--navy-100);
  min-height: 30px;
  color: var(--navy-700);
  counter-increment: gl-year-end-step;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 3px 0;
  font-size: 12.5px;
  display: flex;
}

.gl-year-end-ladder > li:first-child {
  border-top: 0;
}

.gl-year-end-ladder > li:before {
  content: counter(gl-year-end-step);
  border-radius: var(--pill);
  background: var(--navy-100);
  width: 20px;
  height: 20px;
  color: var(--navy-500);
  flex: none;
  justify-content: center;
  align-items: center;
  font: 900 10px / 1 Lato, sans-serif;
  display: inline-flex;
}

.gl-year-end-ladder .chip {
  flex: none;
  gap: 4px;
  min-width: 74px;
}

.gl-year-end-ladder strong {
  color: var(--navy-heading);
  font-weight: 800;
}

.gl-year-end-months {
  flex-wrap: wrap;
  align-items: center;
  gap: 2px;
  display: inline-flex;
}

.gl-year-end-result {
  color: var(--navy-800);
  font-variant-numeric: tabular-nums;
  margin: 0;
}

.gl-year-end-protocol {
  border-top: 1px solid var(--navy-100);
  padding-top: var(--t360-space-3);
  color: var(--navy-600);
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  font-size: 12px;
  display: flex;
}

.gl-year-end-protocol p {
  margin: 0;
}

.gl-year-end-reason {
  border-top: 1px solid var(--navy-100);
  padding-top: var(--t360-space-3);
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 8px;
  display: flex;
}

.gl-year-end-reason label {
  min-width: 260px;
  color: var(--navy-600);
  flex-direction: column;
  flex: 260px;
  gap: 4px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.gl-year-end-reason textarea {
  border: 1px solid var(--navy-200);
  font: inherit;
  resize: vertical;
  border-radius: 8px;
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 400;
}

.payment-allocation-filters {
  flex-shrink: 0;
  align-items: flex-start;
  gap: 8px;
  display: flex;
}

.payment-allocation-filters:not(:has(.tgv2-filters-bar)):not(:has(.chip)) {
  display: none;
}

.bank-upload-panel label {
  color: var(--navy-600);
  gap: 5px;
  font-size: 10.5px;
  font-weight: 800;
  display: grid;
}

.bank-upload-panel input, .bank-upload-panel select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  width: 100%;
  height: 36px;
  color: var(--navy-800);
  background: var(--surface);
  padding: 0 9px;
}

@media (max-width: 640px) {
  .payment-allocation-screen.bank-screen--fill, .bank-statement-inbox.bank-screen--fill {
    overflow-y: auto;
  }

  .payment-allocation-screen .payment-allocation-list, .bank-statement-inbox > .tgv2 {
    flex: none;
    min-height: 320px;
  }
}

.bank-pipe {
  grid-template-columns: 1fr 28px 1fr 28px 1fr;
  align-items: stretch;
  gap: 0;
  margin-bottom: 14px;
  display: grid;
}

.bank-pipe .arrow {
  color: var(--navy-300);
  place-items: center;
  font: 900 18px / 1 Lato, sans-serif;
  display: grid;
}

.bank-pipe .stage {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  text-align: left;
  font: inherit;
  cursor: pointer;
  flex-direction: column;
  gap: 6px;
  padding: 12px 14px;
  display: flex;
}

.bank-pipe .stage:hover {
  border-color: var(--primary-300);
}

.bank-pipe .stage.active {
  border-color: var(--primary-600);
  box-shadow: inset 0 0 0 1px var(--primary-600);
}

.bank-pipe .stage .eyebrow {
  color: var(--navy-400);
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: 10.5px;
  font-weight: 800;
}

.bank-pipe .stage strong {
  color: var(--navy-heading);
  font: 900 14px / 1.2 Lato, sans-serif;
}

.bank-pipe .stage .n {
  color: var(--navy-heading);
  font-variant-numeric: tabular-nums;
  font: 900 22px / 1 Lato, sans-serif;
}

.bank-pipe .stage > span:last-child {
  color: var(--navy-500);
  font-size: 11.5px;
  line-height: 1.4;
}

.bank-pipe .stage.s1 {
  border-left: 5px solid var(--navy-300);
}

.bank-pipe .stage.s2 {
  border-left: 5px solid var(--warning-500);
}

.bank-pipe .stage.s3 {
  border-left: 5px solid var(--success-500);
}

.bank-segs {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  width: max-content;
  display: flex;
  overflow: hidden;
}

.bank-segs .seg {
  border: 0;
  border-right: 1px solid var(--navy-200);
  background: var(--surface);
  height: 42px;
  color: var(--navy-heading);
  cursor: pointer;
  align-items: center;
  gap: 10px;
  padding: 0 18px;
  font: 700 13.5px / 1 Lato, sans-serif;
  display: flex;
}

.bank-segs .seg:last-child {
  border-right: 0;
}

.bank-segs .seg em {
  border-radius: var(--pill);
  background: var(--navy-100);
  min-width: 26px;
  height: 20px;
  color: var(--navy-600);
  text-align: center;
  padding: 0 8px;
  font: 900 11px / 20px Lato, sans-serif;
}

.bank-segs .seg.active {
  background: var(--navy-900);
  color: #fff;
}

.bank-segs .seg.active em {
  color: #fff;
  background: #ffffff2e;
}

.bank-segs .seg em.warn {
  background: var(--warning-100);
  color: var(--warning-text);
}

.bank-pool-table {
  min-width: 1120px;
}

.bank-pool-table td {
  vertical-align: top;
}

.bank-pool-table td > small {
  color: var(--navy-400);
  margin-top: 2px;
  font-size: 11px;
  display: block;
}

.bank-pool-table .pick-col {
  width: 34px;
}

.bank-pool-table tr.not-payable {
  color: var(--navy-400);
}

.bank-pool-table tr.not-payable strong {
  color: var(--navy-500);
}

.bank-pool-table tr.moved td {
  background: var(--warning-100);
  transition: background .4s;
}

.bank-pool-noaccount {
  color: var(--danger-600);
  font-weight: 700;
}

.skonto {
  border: 1px solid var(--warning-500);
  border-radius: var(--pill);
  background: var(--warning-100);
  color: var(--warning-text);
  align-items: center;
  gap: 5px;
  padding: 2px 7px;
  font: 900 10px / 1.6 Lato, sans-serif;
  display: inline-flex;
}

.skonto.ok {
  border-color: var(--success-500);
  background: var(--success-100);
  color: var(--success-600);
}

.bank-selbar {
  z-index: 5;
  border-radius: var(--t360-radius-4);
  background: var(--navy-900);
  color: #fff;
  box-shadow: var(--shadow-lg);
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  display: none;
  position: sticky;
  bottom: 0;
}

.bank-selbar.on {
  display: flex;
}

.bank-selbar b {
  font-weight: 900;
}

.bank-selbar .grow {
  flex: 1;
}

.bank-selbar .btn-ghost {
  color: #fff;
  background: none;
  border-color: #fff6;
}

.bank-overlay {
  z-index: 80;
  background: #0e224d59;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0;
}

.bank-modal {
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  width: 560px;
  max-width: calc(100% - 32px);
  box-shadow: var(--shadow-lg);
  flex-direction: column;
  display: flex;
}

.bank-modal-head {
  border-bottom: 1px solid var(--navy-150);
  padding: 16px 20px;
}

.bank-modal-head h2 {
  color: var(--navy-heading);
  margin: 0;
  font: 900 16px / 1.2 Lato, sans-serif;
}

.bank-modal-head p {
  color: var(--navy-400);
  margin: 4px 0 0;
  font-size: 11.5px;
}

.bank-modal-body {
  flex-direction: column;
  gap: 14px;
  padding: 16px 20px;
  display: flex;
}

.bank-modal-foot {
  border-top: 1px solid var(--navy-150);
  justify-content: flex-end;
  gap: 8px;
  padding: 12px 20px;
  display: flex;
}

.bank-modal-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.bank-modal-field {
  color: var(--navy-600);
  gap: 5px;
  font-size: 10.5px;
  font-weight: 800;
  display: grid;
}

.bank-modal-field input, .bank-modal-field select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  width: 100%;
  height: 36px;
  color: var(--navy-800);
  padding: 0 9px;
  font-weight: 400;
}

.bank-pick {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  max-height: 150px;
  overflow-y: auto;
}

.bank-pick-row {
  border-bottom: 1px solid var(--navy-100);
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  font-size: 12.5px;
  font-weight: 400;
  display: flex;
}

.bank-pick-row:last-child {
  border-bottom: 0;
}

.bank-hint {
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  color: var(--navy-600);
  padding: 10px 12px;
  font-size: 11.5px;
  font-weight: 400;
  line-height: 1.45;
}

.bank-run-table {
  min-width: 1080px;
}

.bank-run-table tr.row {
  cursor: pointer;
}

.bank-run-table tr.row:hover td {
  background: var(--primary-050);
}

.bank-run-table td > small {
  color: var(--navy-400);
  margin-top: 2px;
  font-size: 11px;
  display: block;
}

.ministep {
  gap: 3px;
  display: inline-flex;
}

.ministep i {
  background: var(--navy-200);
  border-radius: 50%;
  width: 9px;
  height: 9px;
}

.ministep i.d {
  background: var(--success-600);
}

.ministep i.c {
  background: var(--primary-600);
}

.bank-run-detail {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.bank-crumb {
  color: var(--navy-400);
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  display: flex;
}

.bank-crumb b {
  color: var(--navy-heading);
  font-weight: 900;
}

.linkbtn {
  color: var(--primary-600);
  cursor: pointer;
  background: none;
  border: 0;
  padding: 4px 0;
  font: 700 12.5px / 1 Lato, sans-serif;
}

.bank-stepbar {
  border-bottom: 1px solid var(--navy-100);
  background: var(--navy-050);
  margin: 0 -16px 12px;
  padding: 14px 16px;
  display: flex;
}

.bank-stepbar .st {
  cursor: pointer;
  background: none;
  border: 0;
  flex-direction: column;
  flex: 1;
  align-items: center;
  gap: 4px;
  padding: 0;
  display: flex;
  position: relative;
}

.bank-stepbar .st i {
  border: 3px solid var(--surface);
  background: var(--navy-200);
  width: 22px;
  height: 22px;
  box-shadow: 0 0 0 1px var(--navy-200);
  color: #fff;
  border-radius: 50%;
  place-items: center;
  font: 900 11px / 1 Lato, sans-serif;
  display: grid;
}

.bank-stepbar .st.done i {
  background: var(--success-600);
  box-shadow: 0 0 0 1px var(--success-600);
}

.bank-stepbar .st.cur i {
  background: var(--primary-600);
  box-shadow: 0 0 0 1px var(--primary-600);
}

.bank-stepbar .st span {
  color: var(--navy-500);
  text-align: center;
  font: 700 10.5px / 1.2 Lato, sans-serif;
}

.bank-stepbar .st small {
  color: var(--navy-400);
  text-align: center;
  font-size: 9.5px;
}

.bank-stepbar .st.cur span, .bank-stepbar .st.sel span {
  color: var(--navy-heading);
  font-weight: 900;
}

.bank-stepbar .st.sel span {
  color: var(--primary-600);
}

.bank-stepbar .st:not(:last-child):after {
  content: "";
  background: var(--navy-200);
  width: calc(100% - 24px);
  height: 2px;
  position: absolute;
  top: 11px;
  left: calc(50% + 12px);
}

.bank-stepbar .st.done:not(:last-child):after {
  background: var(--success-600);
}

.bank-sp {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.bank-sp-lead {
  max-width: 820px;
  color: var(--navy-600);
  margin: 0;
  font-size: 12.5px;
  line-height: 1.5;
}

.bank-sp-actions {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px;
  display: flex;
}

.bank-sp-check {
  margin-left: auto;
}

.bank-sp-field {
  color: var(--navy-600);
  gap: 5px;
  font-size: 10.5px;
  font-weight: 800;
  display: grid;
}

.bank-sp-field input, .bank-sp-field select {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  height: 34px;
  color: var(--navy-800);
  padding: 0 9px;
  font-weight: 400;
}

.bank-sp-foot {
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.bank-sp-split {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 16px;
  display: grid;
}

.bank-panel-card {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
}

.bank-panel-card h4 {
  border-bottom: 1px solid var(--navy-100);
  background: var(--navy-050);
  color: var(--navy-heading);
  margin: 0;
  padding: 10px 14px;
  font: 900 12.5px / 1.2 Lato, sans-serif;
}

.bank-panel-card > :not(h4) {
  margin: 0;
  padding: 12px 14px;
}

.bank-kv {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  display: grid;
}

.bank-kv dt {
  color: var(--navy-400);
  font-size: 10.5px;
  font-weight: 800;
}

.bank-kv dd {
  color: var(--navy-heading);
  margin: 2px 0 0;
  font-size: 12.5px;
  font-weight: 700;
}

.bank-approve {
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-2);
  background: var(--warning-100);
  color: var(--warning-text);
  align-items: center;
  gap: 10px;
  margin: 12px 14px;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 700;
  display: flex;
}

.bank-approve.ok {
  border-color: var(--success-500);
  background: var(--success-100);
  color: var(--success-600);
}

.bank-approve-hint {
  color: var(--navy-500);
  font-size: 11.5px;
}

.bank-proposal-table {
  min-width: 1080px;
}

.bank-proposal-table td {
  vertical-align: top;
}

.bank-proposal-table td > small {
  color: var(--navy-400);
  margin-top: 2px;
  font-size: 11px;
  display: block;
}

.bank-proposal-table tr.removed {
  color: var(--navy-400);
  text-decoration: line-through;
}

.bank-proposal-table tr.removed strong {
  color: var(--navy-400);
}

.bank-proposal-total td {
  color: var(--navy-heading);
  text-align: right;
  font-weight: 900;
}

@media (max-width: 900px) {
  .bank-pipe {
    grid-template-columns: 1fr;
  }

  .bank-pipe .arrow {
    display: none;
  }

  .bank-segs {
    width: 100%;
  }

  .bank-modal-grid {
    grid-template-columns: 1fr;
  }
}

.bank-screen .sca {
  border: 2px solid var(--primary-200);
  border-radius: var(--t360-radius-4);
  background: var(--primary-050);
  flex-direction: column;
  gap: 8px;
  padding: 12px;
  display: flex;
}

.bank-screen .sca b {
  color: var(--primary-700);
  font-size: 12.5px;
  font-weight: 900;
}

.bank-screen .sca p {
  color: var(--navy-600);
  margin: 0;
  font-size: 11.5px;
  line-height: 1.4;
}

.bank-screen .sca.ok {
  border-color: var(--success-500);
  background: var(--success-100);
}

.bank-screen .sca.ok b {
  color: var(--success-600);
}

.bank-screen .sca.bad {
  border-color: var(--danger-500);
  background: var(--danger-100);
}

.bank-screen .sca.bad b {
  color: var(--danger-600);
}

.bank-status-table {
  min-width: 860px;
}

.bank-status-table td.mono {
  font: 11.5px / 1.4 ui-monospace, Cascadia Mono, Consolas, monospace;
}

.bank-channel-list {
  color: var(--navy-600);
  gap: 8px;
  font-size: 11.5px;
  line-height: 1.5;
  display: grid;
}

.bank-channel-list > div {
  align-items: baseline;
  gap: 8px;
  display: flex;
}

.bank-pick-panel {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--navy-050);
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px;
  display: flex;
}

.bank-pick-panel .bank-pick {
  background: var(--surface);
}

.bank-pick-panel .bank-pick-row {
  cursor: pointer;
  grid-template-columns: 20px 1fr auto;
  gap: 10px;
  display: grid;
}

.posteingang-screen {
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  padding: 12px 16px 16px;
  display: flex;
}

.posteingang-screen .chan {
  border-radius: var(--t360-radius-2);
  letter-spacing: .04em;
  white-space: nowrap;
  border: 1px solid #0000;
  align-items: center;
  gap: 6px;
  min-width: 0;
  max-width: 100%;
  min-height: 22px;
  padding: 0 8px;
  font-size: 10.5px;
  font-weight: 900;
  line-height: 1;
  display: inline-flex;
}

.posteingang-screen .chan .chan-label {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.posteingang-screen .chan:before {
  content: "";
  background: currentColor;
  border-radius: 1px;
  flex: 0 0 6px;
  width: 6px;
  height: 6px;
}

.posteingang-screen .chan.m365 {
  color: var(--primary-700);
  background: var(--primary-050);
}

.posteingang-screen .chan.imap {
  color: var(--navy-heading);
  background: var(--navy-100);
}

.posteingang-screen .chan.demo {
  color: var(--warning-text);
  background: var(--warning-100);
  border: 1px dashed var(--warning-600);
}

.posteingang-screen .chan.datei {
  color: var(--navy-500);
  background: var(--navy-050);
  border: 1px solid var(--navy-200);
}

.posteingang-screen .sync {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  color: var(--navy-600);
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  padding: 10px 16px;
  font-size: 11.5px;
  display: flex;
}

.posteingang-screen .sync .dot {
  background: var(--success-500);
  width: 10px;
  height: 10px;
  box-shadow: 0 0 0 4px var(--success-100);
  border-radius: 50%;
}

.posteingang-screen .sync .dot.warn {
  background: var(--warning-500);
  box-shadow: 0 0 0 4px var(--warning-100);
}

.posteingang-screen .sync b {
  color: var(--navy-heading);
  font-weight: 900;
}

.posteingang-screen .sync .sep {
  background: var(--navy-150);
  width: 1px;
  height: 18px;
}

.posteingang-screen .sync .grow {
  flex: 1;
}

.posteingang-screen .chip.sim {
  border: 1px dashed var(--warning-600);
  color: var(--warning-text);
  background: var(--warning-100);
}

.posteingang-screen .pe-mailbox {
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: inline-flex;
}

.posteingang-screen .pe-mailbox > span:last-child {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  color: var(--navy-500);
  font-size: 11px;
  overflow: hidden;
}

.posteingang-screen .md-toolbar {
  min-width: 0;
}

.posteingang-screen .md-toolbar .filter-tabs {
  scrollbar-width: thin;
  min-width: 0;
  overflow-x: auto;
}

.posteingang-screen .md-toolbar .filter-tab {
  flex: none;
}

.posteingang-screen .pe-recognized {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: inline-flex;
}

.posteingang-screen .pe-cell-stack {
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  line-height: 1.25;
  display: flex;
}

.posteingang-screen .pe-cell-stack > b {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.posteingang-screen .pe-cell-sub {
  color: var(--navy-400);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
  font-weight: 400;
  overflow: hidden;
}

.posteingang-screen .pe-more {
  justify-content: center;
  display: flex;
}

.posteingang-screen .pe-card {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  box-shadow: var(--shadow-sm);
  flex-direction: column;
  gap: 12px;
  padding: 14px 16px;
  display: flex;
}

.posteingang-screen .pe-card--empty {
  color: var(--navy-400);
  font-size: 12px;
}

.posteingang-screen .pe-card-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.posteingang-screen .pe-card-head h3 {
  color: var(--navy-heading);
  margin: 0;
  font-size: 14px;
  font-weight: 900;
}

.posteingang-screen .pe-card-meta {
  color: var(--navy-400);
  flex-wrap: wrap;
  gap: 10px;
  margin: 4px 0 0;
  font-size: 11px;
  display: flex;
}

.posteingang-screen .pe-card-stepper {
  border-top: 1px solid var(--navy-100);
  border-bottom: 1px solid var(--navy-100);
  color: var(--navy-600);
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  font-size: 12px;
  display: flex;
}

.posteingang-screen .pe-card-stepper b {
  color: var(--navy-heading);
}

.posteingang-screen .pe-card-stepper small {
  color: var(--navy-400);
}

.posteingang-screen .pe-card-body {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  display: grid;
}

.posteingang-screen .pe-card-preview {
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.posteingang-screen .pe-card-preview iframe, .posteingang-screen .pe-card-preview img {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  object-fit: contain;
  width: 100%;
  height: 320px;
}

.posteingang-screen .pe-card-preview-empty {
  border: 1px dashed var(--navy-200);
  border-radius: var(--t360-radius-2);
  min-height: 120px;
  color: var(--navy-400);
  background: var(--navy-050);
  align-items: center;
  gap: 10px;
  padding: 12px;
  font-size: 11.5px;
  display: flex;
}

.posteingang-screen .pe-card-preview small {
  color: var(--navy-400);
  font-size: 10.5px;
}

.posteingang-screen .pe-card-question {
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  display: flex;
}

.posteingang-screen .pe-card-question h4 {
  color: var(--navy-heading);
  margin: 0;
  font-size: 14px;
  font-weight: 900;
}

.posteingang-screen .pe-card-hint {
  color: var(--navy-500);
  margin: 0;
  font-size: 11.5px;
  line-height: 1.45;
}

.posteingang-screen .pe-card-blocked {
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  margin: 0;
  padding: 8px 10px;
  font-size: 11.5px;
  font-weight: 700;
}

.posteingang-screen .pe-card-answers {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.posteingang-screen .pe-card-input {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  background: var(--surface);
  min-height: 32px;
  color: var(--navy-800);
  padding: 0 10px;
  font-size: 12px;
}

.posteingang-screen .pe-card-required {
  color: var(--navy-400);
  font-size: 10.5px;
}

.posteingang-screen .pe-card-decided {
  color: var(--navy-600);
  flex-direction: column;
  gap: 6px;
  font-size: 12px;
  display: flex;
}

.posteingang-screen .pe-card-decided h4 {
  color: var(--navy-heading);
  margin: 0;
  font-size: 13px;
  font-weight: 900;
}

.posteingang-screen .pe-card-decided p {
  margin: 0;
}

.posteingang-screen .pe-card-note {
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  margin: 0;
  padding: 8px 10px;
  font-size: 11.5px;
}

.posteingang-screen .pe-card-note em {
  color: var(--navy-500);
  font-size: 10.5px;
  font-style: normal;
}

.posteingang-screen .pe-card-error {
  border: 1px solid var(--danger-500);
  border-radius: var(--t360-radius-2);
  color: var(--danger-600);
  background: var(--danger-100);
  margin: 0;
  padding: 8px 10px;
  font-size: 11.5px;
  font-weight: 700;
}

.posteingang-screen .pe-card-verdict {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.posteingang-screen .pe-card-verdict h4 {
  color: var(--navy-heading);
  margin: 0;
  font-size: 13px;
  font-weight: 900;
}

.posteingang-screen .pe-card-verdict p {
  color: var(--navy-600);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 11.5px;
  display: flex;
}

.posteingang-screen .pe-card-signalwords {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.posteingang-screen .pe-card-wait {
  border: 1px solid var(--warning-500);
  border-radius: var(--t360-radius-2);
  color: var(--warning-text);
  background: var(--warning-100);
  margin: 0;
  padding: 8px 10px;
  font-size: 11.5px;
  font-weight: 700;
}

.posteingang-screen .pe-card-remember {
  border: 1px dashed var(--navy-200);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  padding: 8px 10px;
  display: flex;
}

.posteingang-screen .pe-card-remember p {
  color: var(--navy-600);
  margin: 0;
  font-size: 11.5px;
}

.posteingang-screen .pe-card-rule-done {
  color: var(--success-600);
  margin: 0;
  font-size: 11.5px;
  font-weight: 700;
}

.posteingang-screen .pe-card-history {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.posteingang-screen .pe-card-history h4 {
  color: var(--navy-heading);
  margin: 0;
  font-size: 13px;
  font-weight: 900;
}

.posteingang-screen .pe-card-history ol {
  color: var(--navy-500);
  flex-direction: column;
  gap: 2px;
  margin: 0;
  padding-left: 16px;
  font-size: 11px;
  display: flex;
}

.posteingang-screen .pe-card-history p {
  color: var(--navy-400);
  margin: 0;
  font-size: 11px;
}

.posteingang-screen .pe-view-toggle {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  gap: 2px;
  padding: 2px;
  display: inline-flex;
}

.posteingang-screen .pe-view-toggle .btn.active {
  background: var(--surface);
  color: var(--navy-heading);
  box-shadow: var(--t360-shadow-1dp);
  font-weight: 900;
}

.posteingang-screen .pe-tiles {
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
  gap: 12px;
  display: grid;
}

.posteingang-screen .pe-tiles-note {
  color: var(--navy-400);
  text-align: center;
  margin: 0;
  padding: 24px 0;
  font-size: 12px;
}

.posteingang-screen .pe-tile {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-3);
  background: var(--surface);
  text-align: left;
  cursor: pointer;
  flex-direction: column;
  gap: 6px;
  padding: 8px;
  display: flex;
}

.posteingang-screen .pe-tile:hover {
  border-color: var(--primary-300);
}

.posteingang-screen .pe-tile.selected {
  border-color: var(--primary-500);
  box-shadow: var(--t360-shadow-1dp);
}

.posteingang-screen .pe-tile-sheet {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  justify-content: center;
  align-items: center;
  height: 190px;
  display: flex;
  overflow: hidden;
}

.posteingang-screen .pe-tile-sheet img {
  object-fit: contain;
  max-width: 100%;
  max-height: 100%;
}

.posteingang-screen .pe-tile-neutral {
  color: var(--navy-400);
  flex-direction: column;
  align-items: center;
  gap: 4px;
  font-size: 10.5px;
  display: flex;
}

.posteingang-screen .pe-tile-name {
  color: var(--navy-heading);
  word-break: break-all;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.35;
  overflow: hidden;
}

.posteingang-screen .pe-tile-meta {
  flex-wrap: wrap;
  gap: 4px;
  display: flex;
}

.posteingang-screen .pe-card-rework {
  border: 1px dashed var(--navy-200);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  padding: 8px 10px;
  display: flex;
}

.posteingang-screen .pe-card-rework h4 {
  color: var(--navy-heading);
  margin: 0;
  font-size: 13px;
  font-weight: 900;
}

.posteingang-screen .pe-card-rework-row {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.posteingang-screen .pe-card-rework-row label {
  color: var(--navy-600);
  font-size: 11.5px;
  font-weight: 700;
}

.posteingang-screen .pe-card-input--page {
  width: 72px;
}

.posteingang-screen .pe-card-merge-list {
  flex-direction: column;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.posteingang-screen .pe-card-merge-list label {
  color: var(--navy-600);
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  display: flex;
}

.posteingang-screen .pe-card-superseded {
  border: 1px solid var(--navy-200);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  padding: 8px 10px;
  display: flex;
}

.posteingang-screen .pe-card-superseded p {
  color: var(--navy-600);
  margin: 0;
  font-size: 11.5px;
}

.posteingang-screen .pe-channel-grid {
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 12px;
  display: grid;
}

.posteingang-screen .pe-channel {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  background: var(--surface);
  flex-direction: column;
  gap: 12px;
  padding: 14px;
  display: flex;
}

.posteingang-screen .pe-channel-top {
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  display: flex;
}

.posteingang-screen .pe-channel-top > div {
  flex: auto;
  min-width: 0;
}

.posteingang-screen .pe-channel-top .chan {
  flex: none;
  max-width: none;
}

.posteingang-screen .pe-channel-top strong {
  color: var(--navy-heading);
  overflow-wrap: anywhere;
  font-size: 13.5px;
  font-weight: 900;
  display: block;
}

.posteingang-screen .pe-channel-top span {
  color: var(--navy-400);
  font-size: 11.5px;
  line-height: 1.45;
}

.posteingang-screen .pe-channel-facts {
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 0;
  display: grid;
}

.posteingang-screen .pe-channel-facts > div {
  gap: 2px;
  display: grid;
}

.posteingang-screen .pe-channel-facts dt {
  color: var(--navy-400);
  font-size: 11px;
}

.posteingang-screen .pe-channel-facts dd {
  color: var(--navy-heading);
  margin: 0;
  font-size: 12px;
  font-weight: 700;
}

.posteingang-screen .pe-channel-actions {
  flex-wrap: wrap;
  gap: 7px;
  margin-top: auto;
  display: flex;
}

.posteingang-screen .pe-explainer-lead {
  color: var(--navy-600);
  max-width: 900px;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}

.posteingang-screen .pe-explainer-steps {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.posteingang-screen .pe-explainer-steps li {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-2);
  background: var(--navy-050);
  flex-direction: column;
  gap: 4px;
  padding: 10px 12px;
  display: flex;
}

.posteingang-screen .pe-explainer-steps b {
  color: var(--primary-700);
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 900;
}

.posteingang-screen .pe-explainer-steps span {
  color: var(--navy-600);
  font-size: 11.5px;
  line-height: 1.45;
}

.posteingang-screen .pe-no-access {
  border: 1px solid var(--navy-150);
  border-radius: var(--t360-radius-4);
  color: var(--navy-500);
  background: var(--surface);
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 40px 16px;
  display: flex;
}

.posteingang-screen .pe-no-access h3 {
  color: var(--navy-heading);
  margin: 0;
  font-size: 15px;
  font-weight: 900;
}

.posteingang-screen .pe-no-access p {
  max-width: 520px;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}

@media (max-width: 1100px) {
  .posteingang-screen .pe-card-body {
    grid-template-columns: 1fr;
  }
}

/* [project]/app/t360grid-v2.css [app-client] (css) */
.tgv2 {
  border: 1px solid var(--navy-200);
  width: 100%;
  min-height: 0;
  box-shadow: none;
  background: #fff;
  border-radius: 0;
  flex-direction: column;
  flex: 1;
  display: flex;
  position: relative;
}

.tgv2-toolbar {
  border-bottom: 1px solid var(--navy-100);
  background: #fff;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  min-height: 56px;
  padding: 10px 12px 10px 16px;
  display: flex;
}

.tgv2-toolbar h2 {
  color: var(--navy-800);
  margin: 0;
  font: 900 15px / 1.2 Lato, sans-serif;
}

.tgv2-toolbar p {
  color: var(--navy-400);
  margin: 4px 0 0;
  font-size: 12px;
}

.tgv2-tools {
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  display: flex;
  position: relative;
}

.tgv2-quick {
  border: 1px solid var(--navy-200);
  min-width: 220px;
  height: 32px;
  color: var(--navy-400);
  background: #fff;
  border-radius: 4px;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  display: flex;
}

.tgv2-quick input {
  width: 100%;
  min-width: 0;
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: 0;
}

.tgv2-quick:focus-within {
  border-color: var(--primary-600);
  box-shadow: 0 0 0 2px var(--primary-200);
}

.tgv2-tool {
  border: 1px solid var(--navy-200);
  width: 32px;
  height: 32px;
  color: var(--navy-500);
  cursor: pointer;
  background: #fff;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.tgv2-tool:hover, .tgv2-tool.active {
  border-color: var(--primary-600);
  color: var(--primary-600);
  background: var(--primary-t08);
}

.tgv2-tool:focus-visible, .tgv2-th:focus-visible, .tgv2-funnel:focus-visible, .tgv2-reset:focus-visible {
  outline: 2px solid var(--primary-200);
  outline-offset: 1px;
}

.tgv2-filters-bar {
  box-sizing: border-box;
  border: 1px solid var(--warning-500);
  background: var(--navy-050);
  border-radius: 4px;
  align-items: flex-start;
  gap: 8px;
  min-height: 32px;
  padding: 0 10px;
  display: flex;
}

.tgv2-filters-chips {
  flex-wrap: wrap;
  flex: 1;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 3px 0;
  display: flex;
}

.tgv2-filters-label {
  color: var(--navy-800);
  flex-shrink: 0;
  font: 700 12px / 1 Lato, sans-serif;
}

.tgv2-filter-chip {
  box-sizing: border-box;
  border: 1px solid var(--warning-500);
  border-radius: var(--pill);
  height: 24px;
  color: var(--warning-text);
  background: #ffb62429;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  padding: 0 6px 0 10px;
  font: 700 12px / 1 Lato, sans-serif;
  display: inline-flex;
}

.tgv2-filter-chip-icon {
  color: var(--warning-600);
  flex-shrink: 0;
}

.tgv2-filter-chip button {
  color: var(--warning-text);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 0;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.tgv2-filter-chip button:hover {
  color: var(--warning-600);
}

.tgv2-filters-clear {
  color: #fff;
  background: var(--warning-700);
  cursor: pointer;
  border: 0;
  border-radius: 4px;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  height: 20px;
  margin-top: 5px;
  padding: 0 10px;
  font: 700 13px / 1 Lato;
  display: inline-flex;
}

.tgv2-filters-clear:hover {
  background: var(--warning-text);
}

.tgv2-body {
  flex: 1;
  min-height: 0;
  display: flex;
}

.tgv2-scroll-region {
  flex: 1;
  min-width: 0;
  min-height: 0;
  display: grid;
  position: relative;
}

.tgv2-table-shell {
  grid-area: 1 / 1;
}

.tgv2-hscroll-bar {
  background: var(--navy-100);
  border-top: 1px solid var(--navy-200);
  grid-area: 2 / 1;
  height: 14px;
  position: relative;
}

.tgv2-vscroll-bar {
  background: var(--navy-100);
  border-left: 1px solid var(--navy-200);
  grid-area: 1 / 2 / span 2;
  width: 14px;
  position: relative;
}

.tgv2-vscroll-divider-top {
  background: var(--primary-300);
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
}

.tgv2-vscroll-divider-bottom {
  background: var(--navy-200);
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
}

.tgv2-hscroll-divider-left, .tgv2-hscroll-divider-right {
  width: 1px;
  position: absolute;
  top: 0;
  bottom: 0;
}

.tgv2-hscroll-divider-left {
  background: var(--primary-300);
}

.tgv2-hscroll-divider-right {
  background: var(--navy-200);
}

.tgv2-columns-panel {
  border-left: 1px solid var(--navy-200);
  background: #fff;
  flex-direction: column;
  flex: 0 0 260px;
  width: 260px;
  min-height: 0;
  display: flex;
}

.tgv2-columns-panel-h {
  border-bottom: 1px solid var(--navy-150);
  height: 46px;
  color: var(--primary-600);
  flex: none;
  justify-content: space-between;
  align-items: center;
  padding: 0 16px;
  font: 700 14px / 1 Lato, sans-serif;
  display: flex;
}

.tgv2-columns-panel-h button {
  width: 24px;
  height: 24px;
  color: var(--navy-500);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.tgv2-columns-panel-h button:hover {
  background: var(--navy-100);
  color: var(--navy-800);
}

.tgv2-columns-panel-b {
  flex: 1;
  min-height: 0;
  padding: 16px;
  overflow-y: auto;
}

.tgv2-columns-panel-section {
  color: var(--primary-600);
  text-transform: uppercase;
  letter-spacing: .04em;
  margin: 20px 0 8px;
  font: 700 12px / 1 Lato, sans-serif;
}

.tgv2-columns-panel-section:first-child {
  margin-top: 0;
}

.tgv2-opt.mandatory {
  cursor: default;
  color: var(--navy-400);
}

.tgv2-opt.mandatory:hover {
  background: none;
}

.tgv2-opt.mandatory input:checked {
  border-color: var(--navy-200);
  background: var(--navy-200);
}

.tgv2-sidebar {
  border-left: 1px solid var(--navy-200);
  background: var(--navy-100);
  flex-direction: column;
  flex: 0 0 36px;
  align-items: center;
  gap: 4px;
  width: 36px;
  padding-top: 8px;
  display: flex;
  position: relative;
}

.tgv2-sidebar .tgv2-tool {
  background: none;
  border: 0;
}

.tgv2-sidebar .tgv2-tool:hover {
  background: var(--primary-t08);
}

.tgv2-table-shell {
  scrollbar-width: none;
  flex: 1;
  width: 100%;
  min-height: 0;
  max-height: calc(100vh - 156px);
  position: relative;
  overflow: auto;
}

.tgv2-table-shell::-webkit-scrollbar {
  display: none;
}

.tgv2-table {
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

.tgv2-table th {
  z-index: 3;
  border-bottom: 1px solid var(--navy-200);
  background: var(--navy-100);
  height: 32px;
  color: var(--navy-800);
  text-align: left;
  padding: 0;
  position: relative;
  top: 0;
}

.tgv2-table thead tr:first-child th {
  z-index: 3;
  position: sticky;
  top: 0;
}

.tgv2-table th.pinned, .tgv2-table td.pinned {
  z-index: 4;
  will-change: transform;
  position: sticky;
}

.tgv2-table th.pinned, .tgv2-table thead tr:first-child th.pinned {
  z-index: 6;
}

.tgv2-table .tgv2-filter-row th.pinned {
  z-index: 5;
}

.tgv2-table th.drag-over {
  background: var(--primary-050);
}

.tgv2-table td.pinned-left, .tgv2-table th.pinned-left, .tgv2-rownum {
  box-shadow: 4px 0 6px -4px #141e3c38;
}

.tgv2-table td.pinned-right, .tgv2-table th.pinned-right {
  box-shadow: -4px 0 6px -4px #141e3c38;
}

.tgv2-table .tgv2-filter-row th {
  background: var(--navy-100);
  border-bottom: 1px solid var(--primary-300);
  height: 32px;
  position: sticky;
  top: 32px;
}

.tgv2-table th.right, .tgv2-table td.right {
  text-align: right;
}

.tgv2-table th.center, .tgv2-table td.center {
  text-align: center;
}

.tgv2-table .tgv2-group-row td {
  border-bottom: 1px solid var(--navy-200);
  background: var(--navy-050);
  padding: 0;
}

.tgv2-group-scroll-anchor {
  display: inline-block;
}

.tgv2-group-head {
  box-sizing: border-box;
  border-left: 4px solid var(--primary-500);
  grid-template-columns: 18px auto auto auto auto;
  justify-content: start;
  align-items: center;
  gap: 18px;
  width: calc(100vw - 140px);
  min-height: 48px;
  padding: 8px 14px;
  display: grid;
}

.tgv2-group-select {
  width: 15px;
  height: 15px;
  accent-color: var(--primary-600);
  margin: 0;
}

.tgv2-group-copy {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.tgv2-group-divider {
  background: var(--navy-200);
  width: 1px;
  height: 28px;
}

.tgv2-group-head b {
  color: var(--navy-900);
  font: 900 13.5px / 1 Lato, sans-serif;
}

.tgv2-group-head small {
  color: var(--navy-500);
  font: 700 10.5px / 1.2 Lato, sans-serif;
}

.tgv2-group-population {
  color: var(--navy-500);
  white-space: nowrap;
  font-size: 11px;
}

.tgv2-group-head > strong {
  color: var(--primary-700);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  font: 900 13px / 1 Lato, sans-serif;
}

.tgv2-rownum {
  border-right: 1px solid var(--navy-200);
  border-bottom: 1px solid var(--navy-200);
  background: var(--navy-100);
  width: 56px;
  height: 32px;
  color: var(--navy-400);
  will-change: transform;
  text-align: center;
  padding: 0 8px;
  font: 700 11px / 16px Lato, sans-serif;
  left: 0;
}

.tgv2-table thead tr:first-child th.tgv2-rownum {
  z-index: 6;
  text-align: center;
  position: sticky;
  top: 0;
  left: 0;
}

.tgv2-table .tgv2-filter-row th.tgv2-rownum {
  z-index: 6;
  text-align: center;
  position: sticky;
  top: 32px;
  left: 0;
}

.tgv2-table tbody td.tgv2-rownum {
  z-index: 4;
  height: 33px;
  color: var(--navy-400);
  font-variant-numeric: tabular-nums;
  border-bottom: 1px solid var(--navy-100);
  background: #fff;
  font: 400 12px / 16px Lato, sans-serif;
  position: sticky;
  left: 0;
}

.tgv2-table tbody tr.clickable:hover td.tgv2-rownum {
  background: var(--primary-100);
}

.tgv2-table tbody tr.selected > td.tgv2-rownum {
  background: var(--primary-100);
  border-top: 1px solid var(--primary-300);
  border-bottom: 1px solid var(--primary-300);
}

.tgv2-table tbody tr.selected:first-child > td.tgv2-rownum {
  border-top: none;
}

.tgv2-table tfoot td.tgv2-rownum {
  z-index: 6;
  background: var(--primary-050);
  position: sticky;
  bottom: 0;
  left: 0;
}

.tgv2-th {
  width: 100%;
  height: 32px;
  color: inherit;
  cursor: default;
  background: none;
  border: 0;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  font: 700 14px / 16px Lato, sans-serif;
  display: inline-flex;
}

.tgv2-th.sortable {
  cursor: pointer;
}

.tgv2-th.sortable:hover {
  color: var(--primary-600);
}

.tgv2-th span {
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
  flex: 1;
  overflow: hidden;
}

.tgv2-th.right span {
  text-align: right;
}

.tgv2-th.center span {
  text-align: center;
}

.tgv2-th--checkbox {
  cursor: default;
  justify-content: center;
}

.tgv2-grip {
  color: var(--navy-300);
  cursor: grab;
  flex-shrink: 0;
}

.tgv2-sort-icon {
  color: var(--navy-600);
  flex-shrink: 0;
}

.tgv2-sort-icon.active {
  color: var(--primary-600);
}

.tgv2-table thead th {
  border-right: 1px solid var(--primary-200);
}

.tgv2-table thead th:last-child {
  border-right: none;
}

.tgv2-resize-handle {
  cursor: col-resize;
  z-index: 7;
  background: none;
  border-radius: 2px;
  width: 4px;
  position: absolute;
  top: 4px;
  bottom: 4px;
  right: 0;
}

.tgv2-resize-handle:hover {
  background: var(--primary-200);
}

.tgv2-filter-cell {
  align-items: center;
  gap: 6px;
  height: 22px;
  margin: 4px 8px;
  display: flex;
  position: relative;
}

.tgv2-search-box {
  border: 1px solid var(--navy-200);
  background: #fff;
  border-radius: 4px;
  flex: 1;
  align-items: center;
  min-width: 0;
  height: 100%;
  transition: border-color .12s;
  display: flex;
  position: relative;
}

.tgv2-search-box:focus-within {
  border-color: var(--primary-200);
}

.tgv2-filter-cell input {
  width: 100%;
  min-width: 0;
  height: 100%;
  color: var(--navy-800);
  background: none;
  border: 0;
  outline: 0;
  padding: 0 6px;
  font-size: 11px;
}

.tgv2-filter-cell input:disabled {
  background: var(--navy-150);
  color: var(--navy-500);
}

.tgv2-funnel, .tgv2-reset {
  width: 20px;
  height: 20px;
  color: var(--navy-600);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 4px;
  flex: 0 0 20px;
  justify-content: center;
  align-items: center;
  margin-right: 2px;
  padding: 0;
  display: inline-flex;
  position: relative;
}

.tgv2-funnel:hover, .tgv2-reset:hover {
  color: var(--primary-600);
  background: var(--primary-t08);
}

.tgv2-red-dot {
  background: var(--danger-500);
  border: 1px solid #fff;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 1px;
  right: 1px;
}

.tgv2-table tbody td, .tgv2-table tfoot td {
  border-bottom: 1px solid var(--navy-100);
  height: 33px;
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #fff;
  padding: 0 10px;
  overflow: hidden;
}

.tgv2-table tbody tr.clickable:hover td {
  background: var(--primary-100);
  transition: background 80ms;
}

.tgv2-table tbody tr.clickable {
  cursor: pointer;
}

.tgv2-table tbody tr.selected > td {
  background: var(--primary-100);
  border-top: 1px solid var(--primary-300);
  border-bottom: 1px solid var(--primary-300);
}

.tgv2-table tbody tr.selected:first-child > td {
  border-top: none;
}

.tgv2-num, .tgv2-summary {
  font-variant-numeric: tabular-nums;
}

.tgv2-pill {
  border-radius: var(--pill);
  justify-content: center;
  align-items: center;
  min-width: 86px;
  height: 22px;
  padding: 0 8px;
  font: 700 11px / 1 Lato, sans-serif;
  display: inline-flex;
}

.tgv2-pill.green {
  color: #0f8d46;
  background: #e8fbef;
}

.tgv2-pill.amber {
  color: var(--warning-text);
  background: var(--warning-100);
}

.tgv2-pill.blue {
  color: var(--primary-700);
  background: var(--primary-050);
}

.tgv2-pill.red {
  color: #b11d1d;
  background: #ffe7e7;
}

.tgv2-pill.gray {
  color: var(--navy-500);
  background: var(--navy-100);
}

.tgv2-empty {
  text-align: center;
  height: 116px !important;
  color: var(--navy-400) !important;
}

.tgv2-filler-row, .tgv2-empty-row {
  pointer-events: none;
}

.tgv2-empty svg {
  color: var(--navy-300);
  margin: 0 auto 8px;
  display: block;
}

.tgv2-table tfoot td {
  z-index: 2;
  background: var(--primary-050);
  border-top: 1px solid var(--primary-200);
  border-bottom: 0;
  height: 33px;
  font-weight: 900;
  position: sticky;
  bottom: 0;
}

.tgv2-summary-sum, .tgv2-summary-avg {
  color: var(--primary-600);
}

.tgv2-summary-count, .tgv2-count-summary {
  color: var(--navy-500);
}

.tgv2-dash {
  color: var(--navy-300);
}

.tgv2-footer {
  border-top: 1px solid var(--navy-200);
  height: 34px;
  color: var(--navy-500);
  background: var(--navy-100);
  align-items: center;
  padding: 0 14px;
  font-size: 12px;
  display: flex;
}

.tgv2-footer b {
  color: var(--navy-800);
  margin: 0 3px;
}

.tgv2-hscroll-track {
  z-index: 21;
  border-radius: 99px;
  height: 8px;
  position: absolute;
  top: 2px;
}

.tgv2-vscroll-track {
  z-index: 21;
  border-radius: 99px;
  width: 8px;
  position: absolute;
  left: 2px;
}

.tgv2-hscroll-thumb {
  background: var(--navy-300);
  cursor: grab;
  z-index: 22;
  border-radius: 99px;
  height: 100%;
  transition: background .12s;
  position: absolute;
  top: 0;
}

.tgv2-vscroll-thumb {
  background: var(--navy-300);
  cursor: grab;
  z-index: 22;
  border-radius: 99px;
  width: 100%;
  transition: background .12s;
  position: absolute;
  left: 0;
}

.tgv2-hscroll-thumb:hover, .tgv2-hscroll-thumb:active, .tgv2-vscroll-thumb:hover, .tgv2-vscroll-thumb:active {
  background: var(--navy-500);
  cursor: grabbing;
}

.tgv2-pop {
  --pop-teal: #16a394;
  --pop-header-bg: var(--primary-050);
  z-index: 20;
  border: 1px solid var(--primary-200);
  width: 260px;
  box-shadow: var(--shadow-lg);
  text-align: left;
  background: #fff;
  border-radius: 4px;
  position: absolute;
  top: 34px;
  right: 0;
}

.tgv2-pop-arrow {
  border-left: 8px solid #0000;
  border-right: 8px solid #0000;
  border-bottom: 8px solid var(--primary-200);
  width: 0;
  height: 0;
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
}

.tgv2-pop-arrow:after {
  content: "";
  border-left: 6px solid #0000;
  border-right: 6px solid #0000;
  border-bottom: 6px solid var(--pop-header-bg);
  width: 0;
  height: 0;
  position: absolute;
  top: 2px;
  left: -6px;
}

.tgv2-pop-h {
  background: var(--pop-header-bg);
  border-radius: 4px 4px 0 0;
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px;
  display: flex;
}

.tgv2-pop-h-top {
  color: var(--navy-heading);
  justify-content: space-between;
  align-items: center;
  font: 700 15px / 1 Lato, sans-serif;
  display: flex;
}

.tgv2-pop-h-top button {
  width: 24px;
  height: 24px;
  color: var(--pop-teal);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 5px;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.tgv2-pop-h-top button:hover {
  background: #16a3941f;
}

.tgv2-pop-search-wrap {
  align-items: center;
  display: flex;
  position: relative;
}

.tgv2-pop-search {
  border: 1px solid var(--navy-200);
  width: 100%;
  height: 34px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  margin: 0;
  padding: 0 32px 0 12px;
  font-size: 13px;
}

.tgv2-pop-search:focus {
  border-color: var(--primary-300);
}

.tgv2-pop-search-icon {
  color: var(--primary-400);
  pointer-events: none;
  position: absolute;
  right: 10px;
}

.tgv2-pop-b {
  border-radius: 0 0 4px 4px;
  max-height: 168px;
  padding: 4px 0;
  overflow: auto;
}

.tgv2-pop-b::-webkit-scrollbar {
  width: 8px;
}

.tgv2-pop-b::-webkit-scrollbar-thumb {
  background: var(--primary-200);
  border-radius: 999px;
}

.tgv2-num-pop input, .tgv2-num-pop select, .tgv2-date-pop input {
  border: 1px solid var(--navy-200);
  width: 100%;
  height: 30px;
  color: var(--navy-800);
  background: #fff;
  border-radius: 4px;
  outline: 0;
  margin: 0 0 4px;
  padding: 0 8px;
  font-size: 12px;
}

.tgv2-pop .tgv2-num-pop input, .tgv2-pop .tgv2-num-pop select, .tgv2-pop .tgv2-date-pop input {
  border-radius: 4px;
  height: 34px;
  margin: 0;
  padding: 0 12px;
  font-size: 13px;
}

.tgv2-opt {
  min-height: 28px;
  color: var(--navy-700);
  cursor: pointer;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  font: 400 13px / 16px Lato, sans-serif;
  transition: background 80ms;
  display: flex;
}

.tgv2-opt:hover {
  background: var(--navy-050);
}

.tgv2-opt input {
  appearance: none;
  border: 2px solid var(--navy-200);
  cursor: pointer;
  background: #fff;
  border-radius: 3px;
  flex-shrink: 0;
  width: 15px;
  height: 15px;
  transition: all .12s;
  position: relative;
}

.tgv2-opt input:checked {
  border-color: var(--primary-600);
  background: var(--primary-600);
}

.tgv2-opt-status, .tgv2-opt-error {
  color: var(--navy-500);
  padding: 8px 12px;
  font: 400 12px / 16px Lato, sans-serif;
}

.tgv2-opt-error {
  color: var(--danger-600);
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  display: flex;
}

.tgv2-opt-more {
  border: 1px solid var(--primary-200);
  background: var(--primary-050);
  width: calc(100% - 24px);
  height: 28px;
  color: var(--primary-700);
  cursor: pointer;
  border-radius: 6px;
  margin: 4px 12px 8px;
  font: 700 12px / 1 Lato, sans-serif;
}

.tgv2-opt-more:disabled {
  cursor: default;
  opacity: .6;
}

.tgv2-opt input:checked:after {
  content: "";
  border: 2px solid #fff;
  border-width: 0 2px 2px 0;
  width: 5px;
  height: 8px;
  position: absolute;
  top: 0;
  left: 3px;
  transform: rotate(45deg);
}

.tgv2-opt input[type="radio"] {
  border-radius: 50%;
}

.tgv2-opt input[type="radio"]:checked:after {
  background: #fff;
  border: 0;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.tgv2-pop .tgv2-opt {
  color: var(--navy-heading);
  border-bottom: 1px solid var(--navy-100);
  gap: 10px;
  padding: 8px 14px;
  font: 700 13px / 17px Lato, sans-serif;
}

.tgv2-pop .tgv2-opt:last-child {
  border-bottom: 0;
}

.tgv2-pop .tgv2-opt input {
  border: 2px solid var(--primary-400);
  border-radius: 5px;
  width: 18px;
  height: 18px;
}

.tgv2-pop .tgv2-opt input:checked:after {
  border-width: 0 2px 2px 0;
  width: 6px;
  height: 10px;
  top: 1px;
  left: 4px;
}

.tgv2-pop .tgv2-opt input[type="radio"] {
  border-radius: 50%;
}

.tgv2-pop .tgv2-opt input[type="radio"]:checked:after {
  background: #fff;
  border: 0;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.tgv2-opt-thumb {
  border: 1px solid var(--navy-150);
  background: var(--navy-050);
  width: 36px;
  height: 36px;
  color: var(--navy-300);
  border-radius: 6px;
  flex-shrink: 0;
  place-items: center;
  display: grid;
  overflow: hidden;
}

.tgv2-opt-thumb img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.tgv2-opt-text {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.tgv2-opt-title {
  color: var(--navy-800);
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 700 13px / 14px Lato, sans-serif;
  overflow: hidden;
}

.tgv2-opt-sub {
  color: var(--navy-400);
  text-overflow: ellipsis;
  white-space: nowrap;
  font: 400 11px / 13px Lato, sans-serif;
  overflow: hidden;
}

.tgv2-num-pop, .tgv2-date-pop {
  gap: 8px;
  padding: 9px;
  display: grid;
}

.tgv2-pop .tgv2-num-pop, .tgv2-pop .tgv2-date-pop {
  gap: 10px;
  padding: 12px 14px;
}

.tgv2-date-pop label {
  color: var(--navy-400);
  gap: 4px;
  font: 700 11px / 1 Lato, sans-serif;
  display: grid;
}

.tgv2-date-presets {
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  display: grid;
}

.tgv2-date-presets button, .tgv2-apply {
  background: var(--primary-600);
  color: #fff;
  cursor: pointer;
  border: 0;
  border-radius: 6px;
  height: 30px;
  font: 700 12px / 1 Lato, sans-serif;
}

.tgv2-date-presets button {
  border: 1px solid var(--primary-200);
  background: var(--primary-050);
  color: var(--primary-700);
}

.tgv2-pop .tgv2-apply {
  background: var(--navy-100);
  height: 32px;
  color: var(--navy-500);
  text-transform: uppercase;
  letter-spacing: .04em;
  border-radius: 8px;
  justify-self: end;
  padding: 0 16px;
  font: 700 11px / 1 Lato, sans-serif;
}

.tgv2-pop .tgv2-apply:hover {
  background: var(--navy-150);
  color: var(--navy-700);
}

.tgv2--tall .tgv2-table tbody td {
  height: 44px;
  padding: 8px 10px;
}

.tgv2--striped .tgv2-table tbody tr:nth-child(2n):not(:hover):not(.tgv2-row-tone):not(.selected) td {
  background: var(--navy-050);
}

.tgv2--bordered .tgv2-table th, .tgv2--bordered .tgv2-table td {
  border-right: 1px solid var(--navy-150);
}

.tgv2--bordered .tgv2-table th:last-child, .tgv2--bordered .tgv2-table td:last-child, .tgv2-table th.tgv2-filler-col, .tgv2-table td.tgv2-filler-col, :is(.tgv2-table th:has( + .tgv2-filler-col), .tgv2-table td:has( + .tgv2-filler-col)) {
  border-right: none;
}

.tgv2--bordered .tgv2-rownum {
  border-right: 1px solid var(--navy-200);
}

:is(.tgv2-table td.pinned-left:not(:has( + .pinned-left)), .tgv2-table th.pinned-left:not(:has( + .pinned-left))) {
  border-right: 1px solid var(--primary-300);
}

.tgv2-table td.pinned-right, .tgv2-table th.pinned-right {
  border-left: 1px solid var(--navy-200);
}

.tgv2-table tbody td.tgv2-tone-warning-soft:not(:hover) {
  background: color-mix(in srgb, var(--warning-100) 45%, white);
  color: var(--warning-text);
}

.tgv2-table tbody td.tgv2-tone-warning:not(:hover) {
  background: var(--warning-100);
  color: var(--warning-text);
}

.tgv2-table tbody td.tgv2-tone-danger-soft:not(:hover) {
  background: color-mix(in srgb, var(--danger-100) 58%, white);
  color: var(--danger-600);
}

.tgv2-table tbody td.tgv2-tone-danger:not(:hover) {
  background: var(--danger-100);
  color: var(--danger-600);
}

.tgv2-table tbody td.tgv2-tone-muted {
  color: var(--navy-400);
}

.tgv2-table tbody tr.tgv2-child-row td, .tgv2-table tbody tr.tgv2-child-row:hover td {
  background: var(--navy-050);
  color: var(--navy-600);
}

.tgv2-table tbody tr.tgv2-child-row td:first-child {
  padding-left: 30px;
}

.tgv2--bordered .tgv2-table tfoot td {
  border-right: 1px solid var(--primary-200);
}

.tgv2--bordered .tgv2-table tfoot td:last-child {
  border-right: none;
}

.tgv2-summary-tone-warning {
  color: var(--warning-text);
}

.tgv2-summary-tone-danger {
  color: var(--danger-600);
}

@media (max-width: 760px) {
  .tgv2-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .tgv2-tools {
    width: 100%;
  }

  .tgv2-quick {
    flex: 1;
    min-width: 0;
  }

  .tgv2-table-shell {
    max-height: calc(100vh - 190px);
  }
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__0ivijmd._.css.map*/