@font-face {
  font-family:Vazirmatn;
  src:url('/assets/fonts/vazirmatn-400.woff2') format('woff2');
  font-weight:100 500;
  font-display:swap;
}
@font-face {
  font-family:Vazirmatn;
  src:url('/assets/fonts/vazirmatn-700.woff2') format('woff2');
  font-weight:600 900;
  font-display:swap;
}
:root {
  --brand:#1767df;
  --brand-dark:#0b2b63;
  --brand-soft:#eef5ff;
  --accent:#16b9b0;
  --ink:#20364b;
  --muted:#65778b;
  --line:#dfe8f0;
  --paper:#fff;
  --bg:#f4f7fb;
  --radius:16px;
  --header-offset:100px;
  color-scheme:light;
}
* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:var(--header-offset);
}
body {
  margin:0;
  min-height:100vh;
  background:var(--bg);
  color:var(--ink);
  font:16px/1.8 Vazirmatn,Tahoma,sans-serif;
  text-rendering:optimizeLegibility;
}
button,input,select,textarea {
  font:inherit;
}
a {
  color:inherit;
  text-decoration:none;
}
button {
  cursor:pointer;
}
button:disabled {
  opacity:.55;
  cursor:not-allowed;
}
a,button,input,select,textarea,summary {
  outline-offset:4px;
  -webkit-tap-highlight-color:transparent;
}
a:focus-visible,button:focus-visible,summary:focus-visible {
  outline:3px solid #8db9f5;
}
input:focus,select:focus,textarea:focus {
  border-color:var(--brand);
  outline:0;
  box-shadow:0 0 0 3px #1767df15;
}
h1,h2,h3,p {
  margin:0;
}
h1 {
  font-size:27px;
  line-height:1.55;
  font-weight:700;
  letter-spacing:-.5px;
}
h2 {
  font-size:18px;
  line-height:1.6;
}
h3 {
  font-size:16px;
}
small {
  font-size:12px;
}
svg {
  width:21px;
  height:21px;
  flex-shrink:0;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  vertical-align:middle;
}
input,select,textarea {
  width:100%;
  min-width:0;
  min-height:47px;
  padding:10px 13px;
  border:1px solid #cfdce8;
  border-radius:9px;
  background:#fff;
  color:var(--ink);
  font-size:15px;
  transition:border-color .15s,box-shadow .15s;
}
input::placeholder {
  color:#60778d;
  font-size:14px;
}
textarea {
  resize:vertical;
  min-height:96px;
}
input[type=checkbox] {
  width:19px;
  height:19px;
  min-height:0;
  accent-color:var(--brand);
  cursor:pointer;
  flex-shrink:0;
}
input[readonly],fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea {
  background:#f5f7fa;
  color:#5d7083;
  opacity:1;
}
fieldset {
  border:0;
  margin:0;
  min-inline-size:0;
}
input[aria-invalid=true],.was-validated input:invalid,.was-validated select:invalid {
  border-color:#ce5b5b;
  box-shadow:0 0 0 3px #ce5b5b12;
}
[hidden] {
  display:none!important;
}
.visually-hidden {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.block {
  display:block;
}
.muted {
  color:var(--muted);
  font-size:14px;
}
.required {
  color:#be4545;
}
.identifier,.identifier-field,.date-field {
  font-variant-numeric:tabular-nums;
}
.identifier-field,.date-field {
  direction:ltr;
  text-align:left;
  letter-spacing:.5px;
}
.identifier>span {
  display:inline-block;
  direction:ltr;
}
.skip {
  position:fixed;
  top:-100px;
  right:20px;
  z-index:300;
  background:var(--brand);
  color:#fff;
  padding:10px 18px;
  border-radius:8px;
}
.skip:focus {
  top:12px;
}
.brand {
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.brand-mark {
  display:block;
  width:44px;
  height:44px;
  border-radius:12px;
  flex-shrink:0;
}
.brand strong {
  display:block;
  color:#153c61;
  font-size:15px;
  white-space:nowrap;
}
.brand small {
  display:block;
  color:#60778d;
  font-size:12px;
  margin-top:1px;
}
.app-header {
  position:sticky;
  top:0;
  z-index:100;
  background:#fffffffa;
  border-bottom:1px solid #dce7f0;
  box-shadow:0 5px 22px #24496b06;
  backdrop-filter:blur(14px);
}
.header-inner {
  max-width:1600px;
  min-height:80px;
  padding:14px 30px;
  margin:auto;
  display:flex;
  align-items:center;
  gap:28px;
}
.primary-nav {
  display:flex;
  align-items:center;
  gap:4px;
  padding:4px;
  background:#f4f7fb;
  border:1px solid #e3eaf2;
  border-radius:10px;
  margin-right:auto;
}
.primary-nav a {
  display:flex;
  align-items:center;
  gap:7px;
  justify-content:center;
  min-height:39px;
  padding:8px 14px;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
  border-radius:7px;
  color:#5a7086;
  transition:background .15s;
}
.primary-nav a svg {
  width:18px;
  height:18px;
}
.primary-nav a:hover {
  background:#eaf2fb;
  color:var(--brand);
}
.primary-nav a.selected {
  background:#fff;
  color:#1459be;
  box-shadow:0 2px 7px #244a7120,inset 0 -3px var(--accent);
}
.header-actions {
  display:flex;
  align-items:center;
  gap:12px;
  flex-shrink:0;
}
.menu-toggle {
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid #d4e1ec;
  background:#f8fbfd;
  border-radius:9px;
  min-height:42px;
  padding:9px 12px;
  color:#355b79;
  font-size:12px;
  font-weight:700;
}
.menu-toggle svg {
  width:19px;
  height:19px;
}
.menu-toggle:hover {
  background:#edf8f7;
  border-color:#a9dcd7;
}
.avatar {
  display:inline-grid;
  place-items:center;
  width:37px;
  height:37px;
  border-radius:50%;
  background:#e9f4fa;
  border:1px solid #d6eaf2;
  color:#26758c;
  font-weight:700;
  flex-shrink:0;
}
.account {
  position:relative;
}
.account-toggle {
  display:flex;
  align-items:center;
  gap:9px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--ink);
  text-align:right;
}
.account-copy {
  display:block;
  line-height:1.6;
}
.account-copy strong {
  display:block;
  font-size:12px;
}
.account-copy small {
  display:block;
  font-size:12px;
  color:var(--muted);
}
.chevron {
  width:15px;
  height:15px;
  color:#60778d;
}
.account-panel {
  position:absolute;
  left:0;
  top:calc(100% + 18px);
  z-index:110;
  width:258px;
  padding:9px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:13px;
  box-shadow:0 16px 48px #1a385529;
}
.account-identity {
  padding:10px 10px 14px;
  border-bottom:1px solid var(--line);
  margin-bottom:7px;
}
.account-identity strong {
  display:block;
  font-size:15px;
}
.account-identity>span {
  display:block;
  text-align:right;
  font-size:12px;
  color:var(--muted);
  margin-top:3px;
}
.account-panel a,.account-panel button {
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  width:100%;
  padding:9px 10px;
  border:0;
  border-radius:7px;
  background:transparent;
  text-align:right;
  font-size:14px;
  color:#425e76;
}
.account-panel a:hover {
  background:var(--brand-soft);
  color:var(--brand);
}
.account-panel form {
  border-top:1px solid var(--line);
  margin-top:6px;
  padding-top:6px;
}
.account-panel button {
  color:#b04b4b;
}
.account-panel button:hover {
  background:#fff2f2;
}
.account-panel svg {
  width:18px;
  height:18px;
}
.workspace {
  display:flex;
  flex-direction:column;
  min-height:calc(100vh - 81px);
  width:100%;
  max-width:1520px;
  margin:0 auto;
  padding:0 30px;
}
.context-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:22px 0 18px;
  color:#60778d;
  font-size:12px;
}
.breadcrumb {
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.breadcrumb svg {
  width:12px;
  height:12px;
  color:#60778d;
}
.breadcrumb a:hover {
  color:var(--brand);
}
.breadcrumb>span {
  color:#537089;
}
.today {
  white-space:nowrap;
  font-size:12px;
}
.page-content {
  flex:1;
  min-width:0;
  padding-bottom:30px;
}
.page-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:26px;
}
.eyebrow {
  color:#168697;
  font-size:12px;
  font-weight:700;
  margin-bottom:3px;
}
.page-heading p {
  color:var(--muted);
  font-size:14px;
  line-height:1.9;
  margin-top:5px;
  max-width:700px;
}
.page-heading .actions {
  flex-shrink:0;
}
.actions {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:43px;
  padding:9px 16px;
  border:1px solid #ccdce8;
  border-radius:9px;
  background:#fff;
  color:#3f607b;
  font-size:14px;
  font-weight:700;
  line-height:1.6;
  white-space:nowrap;
  transition:background .15s,border-color .15s,box-shadow .15s;
}
.button svg {
  width:18px;
  height:18px;
}
.button:hover {
  color:#1d63bf;
  border-color:#9dbfeb;
  background:#f7fbff;
}
.button.primary {
  background:var(--brand);
  border-color:var(--brand);
  color:#fff;
  box-shadow:0 4px 10px #1767df16;
}
.button.primary:hover {
  background:#0e58c7;
  border-color:#0e58c7;
  box-shadow:0 6px 15px #1767df22;
}
.button.small {
  min-height:35px;
  font-size:12px;
  padding:6px 12px;
}
.button.full {
  width:100%;
}
.icon-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  padding:6px;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  color:#60778d;
  flex-shrink:0;
}
.icon-button:hover {
  border-color:#dbe8f2;
  background:#f3f8fc;
  color:var(--brand);
}
.text-link {
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:0;
  padding:0;
  background:transparent;
  font:inherit;
  font-size:12px;
  font-weight:600;
  color:var(--brand);
}
.text-link svg {
  width:17px;
  height:17px;
}
.text-link:hover {
  text-decoration:underline;
  text-underline-offset:4px;
}
.text-link.danger {
  color:#b35555;
}
.badge {
  display:inline-flex;
  align-items:center;
  gap:5px;
  width:fit-content;
  line-height:1.7;
  border-radius:6px;
  background:#eaf7f2;
  color:#23785f;
  padding:4px 9px;
  font-size:12px;
  font-weight:600;
  white-space:nowrap;
}
.badge.neutral {
  background:#f1f5fa;
  color:#58718a;
  border:1px solid #e0e8f0;
}
.badge.inactive {
  background:#f3f4f6;
  color:#60778d;
}
.panel {
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:0 4px 17px #23496804;
  margin-bottom:24px;
  min-width:0;
  overflow:hidden;
}
.panel-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:23px 25px 20px;
}
.panel-heading h2 {
  font-size:17px;
  font-weight:700;
}
.panel-heading p {
  color:var(--muted);
  font-size:12px;
  margin-top:3px;
}
.heading-with-icon {
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
}
.section-icon {
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:11px;
  background:#edf5ff;
  color:#4287d7;
  flex-shrink:0;
}
.section-icon svg {
  width:22px;
  height:22px;
}
.tone-blue {
  --tone:#2468d5;
  --tone-soft:#edf4ff;
}
.tone-teal {
  --tone:#178f91;
  --tone-soft:#eaf8f7;
}
.tone-purple {
  --tone:#8564c6;
  --tone-soft:#f3effb;
}
.tone-amber {
  --tone:#bb872b;
  --tone-soft:#fff7e9;
}
.stats-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-bottom:25px;
}
.stat-card {
  position:relative;
  display:grid;
  grid-template-columns:1fr auto;
  gap:4px 15px;
  padding:21px 23px 17px;
  border:1px solid #dce6ef;
  border-right:4px solid var(--tone);
  border-radius:13px;
  background:linear-gradient(135deg,#fff,#fbfdff);
  box-shadow:0 4px 16px #24496804;
  transition:transform .15s,box-shadow .15s;
}
.stat-card:hover {
  transform:translateY(-2px);
  box-shadow:0 9px 24px #2449680b;
}
.stat-icon {
  display:grid;
  place-items:center;
  width:45px;
  height:45px;
  border-radius:12px;
  color:var(--tone);
  background:var(--tone-soft);
  grid-column:2;
  grid-row:1/3;
}
.stat-label {
  font-size:14px;
  font-weight:600;
  color:#5f758b;
  align-self:end;
}
.stat-card strong {
  font-size:31px;
  font-weight:700;
  color:#173c64;
  line-height:1.6;
  grid-column:1;
}
.stat-card>small {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  grid-column:1/3;
  margin-top:8px;
  padding-top:10px;
  border-top:1px solid #edf1f6;
  color:#60778d;
  font-size:12px;
}
.stat-card>small span {
  color:var(--tone);
}
.bank-panel>.panel-heading {
  border-bottom:1px solid #edf2f7;
}
.bank-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  padding:23px 25px 25px;
}
.bank-card {
  border:1px solid #dfE8f1;
  border-radius:13px;
  padding:20px 22px;
  background:linear-gradient(145deg,#fff,#f9fcff);
}
.bank-card-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.bank-icon {
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:12px;
  background:var(--tone-soft);
  color:var(--tone);
}
.bank-icon svg {
  width:25px;
  height:25px;
}
.bank-card h3 {
  font-size:18px;
  color:#204c73;
}
.bank-card>p {
  font-size:14px;
  color:#60778d;
  margin-top:6px;
  line-height:1.9;
}
.bank-card-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:23px;
}
.bank-card-footer .text-link {
  font-size:12px;
}
.dashboard-grid {
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);
  gap:24px;
  align-items:start;
}
.dashboard-grid>.panel {
  margin-bottom:0;
}
.unit-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  padding:0 24px 25px;
}
.unit-card {
  display:flex;
  align-items:center;
  gap:12px;
  padding:17px 15px;
  border:1px solid #e2eaf2;
  border-radius:11px;
  transition:background .15s,border-color .15s;
}
.unit-card:hover {
  background:#f6fbff;
  border-color:#a9c8e8;
}
.unit-icon {
  display:grid;
  place-items:center;
  width:39px;
  height:42px;
  border-radius:10px;
  background:#eff6fd;
  color:#478cc5;
  flex-shrink:0;
}
.unit-card:nth-child(4n+2) .unit-icon {
  background:#eaf7f5;
  color:#2a938f;
}
.unit-card:nth-child(4n+3) .unit-icon {
  background:#f2effa;
  color:#8c73bd;
}
.unit-card:nth-child(4n+4) .unit-icon {
  background:#fff6e9;
  color:#b58a41;
}
.unit-card strong {
  display:block;
  font-size:14px;
  font-weight:700;
}
.unit-card small {
  display:block;
  font-size:12px;
  color:#60778d;
  margin-top:3px;
}
.unit-arrow {
  width:17px;
  height:17px;
  margin-right:auto;
  color:#60778d;
  flex-shrink:0;
}
.activity-panel>.panel-heading {
  border-bottom:1px solid #edf2f7;
}
.activity-list {
  list-style:none;
  margin:0;
  padding:3px 23px;
}
.activity-list li {
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:16px 0;
  border-bottom:1px solid #edf2f7;
}
.activity-list li:last-child {
  border-bottom:0;
}
.activity-dot {
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  background:#edf5ff;
  color:#5897d9;
  border-radius:50%;
  flex-shrink:0;
  margin-top:3px;
}
.activity-dot svg {
  width:15px;
  height:15px;
}
.activity-list a {
  font-size:14px;
  font-weight:700;
  color:#345c7e;
}
.activity-list p {
  font-size:12px;
  color:#60778d;
  margin:3px 0;
}
.activity-list time {
  font-size:12px;
  color:#60778d;
}
.help-note {
  display:flex;
  align-items:flex-start;
  gap:9px;
  padding:14px 16px;
  margin:15px 22px 22px;
  border-radius:9px;
  background:#f3f9fc;
  border:1px solid #e1edf3;
  color:#60778d;
}
.help-note p {
  font-size:12px;
  line-height:1.9;
}
.help-note svg {
  width:17px;
  height:17px;
  margin-top:3px;
}
.empty {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:45px 25px;
  color:var(--muted);
}
.empty-icon {
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  background:#eef5fc;
  color:#6e9bc1;
  border-radius:18px;
  margin-bottom:15px;
}
.empty-icon svg {
  width:29px;
  height:29px;
}
.empty h3 {
  color:#46637e;
  font-size:16px;
  font-weight:700;
  margin-bottom:7px;
}
.empty p {
  font-size:14px;
  line-height:1.95;
  max-width:530px;
  color:#60778d;
}
.empty>.actions {
  justify-content:center;
  margin-top:20px;
}
.empty>.button,.empty>.text-link {
  margin-top:18px;
}
.activity-panel .empty {
  padding:35px 27px;
}
.activity-panel .empty h3 {
  font-size:15px;
}
.activity-panel .empty p {
  font-size:12px;
}
.search-box {
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  background:#fff;
  border:1px solid #d3e0ed;
  border-radius:10px;
  padding:0 12px;
  transition:border-color .15s,box-shadow .15s;
}
.search-box:focus-within {
  border-color:#78a9e9;
  box-shadow:0 0 0 3px #1767df0b;
}
.search-box>svg {
  width:20px;
  height:20px;
  color:#60778d;
}
.search-box input {
  border:0;
  background:transparent;
  box-shadow:none!important;
  outline:0;
  padding:12px 0;
  min-height:46px;
  font-size:15px;
  flex:1;
}
.search-box input:focus {
  outline:0;
}
.search-box .button {
  margin:5px 0 5px -6px;
  flex-shrink:0;
}
.search-box kbd {
  font:12px Arial;
  border:1px solid #e1e9f1;
  background:#f8fafc;
  color:#60778d;
  border-radius:4px;
  padding:2px 6px;
}
.catalog-toolbar {
  padding:22px 25px;
  margin-bottom:30px;
}
.catalog-toolbar>.search-box {
  max-width:620px;
}
.unit-filters {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:20px;
}
.filter-chip {
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:6px 12px;
  border:1px solid #e0e8f1;
  border-radius:8px;
  background:#fff;
  color:#637d94;
  font-size:12px;
  font-weight:500;
}
.filter-chip:hover {
  border-color:#9abce3;
  background:#f8fbff;
}
.filter-chip.selected {
  background:var(--brand-soft);
  border-color:#b9d2f4;
  color:#195fbf;
  font-weight:700;
}
.filter-chip small {
  font-size:12px;
  display:inline-grid;
  place-items:center;
  min-width:20px;
  border-radius:4px;
  background:#eef3f8;
  padding:0 4px;
  color:#60778d;
}
.filter-chip.selected small {
  background:#dbeafe;
  color:#4981cb;
}
.catalog-result {
  margin-top:16px;
  font-size:12px;
}
.catalog-group {
  margin-bottom:30px;
  min-width:0;
}
.catalog-heading {
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:15px;
}
.catalog-heading .section-icon {
  width:36px;
  height:36px;
  border-radius:10px;
}
.catalog-heading .section-icon svg {
  width:20px;
  height:20px;
}
.catalog-heading h2 {
  font-size:17px;
  color:#355b7a;
}
.catalog-line {
  height:1px;
  flex:1;
  background:#dfe7f0;
  margin:0 8px;
}
.catalog-heading>.muted {
  font-size:12px;
}
.catalog-items {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.catalog-item {
  display:flex;
  align-items:center;
  gap:13px;
  padding:21px 18px;
  border:1px solid #dfe8f2;
  border-radius:12px;
  background:#fff;
  box-shadow:0 3px 13px #24496803;
  min-height:100px;
  transition:border-color .15s,box-shadow .15s,transform .15s;
}
.catalog-item:hover {
  border-color:#9dbfe7;
  box-shadow:0 6px 20px #2449680b;
  transform:translateY(-2px);
}
.catalog-symbol {
  display:grid;
  place-items:center;
  width:43px;
  height:46px;
  background:#edf5fd;
  color:#568fbc;
  border-radius:12px;
  flex-shrink:0;
}
.catalog-symbol svg {
  width:23px;
  height:23px;
}
.catalog-item strong {
  display:block;
  font-size:15px;
  color:#315573;
  font-weight:700;
}
.catalog-item small {
  display:block;
  color:#60778d;
  font-size:12px;
  margin-top:4px;
}
.catalog-item>div {
  min-width:0;
}
.table-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:22px 24px 18px;
}
.table-summary {
  display:flex;
  align-items:center;
  gap:12px;
}
.table-summary h2 {
  font-size:17px;
}
.table-summary>.badge {
  font-size:12px;
}
.record-filters {
  display:flex;
  align-items:center;
  gap:16px;
  padding:0 24px 23px;
  flex-wrap:wrap;
}
.record-filters .search-box {
  width:570px;
  max-width:100%;
}
.record-filters>.muted {
  font-size:12px;
}
.table-wrap {
  overflow:auto;
  max-width:100%;
  scrollbar-color:#c1d1e2 #f6f9fc;
  scrollbar-width:thin;
}
table {
  width:100%;
  border-collapse:collapse;
  text-align:right;
  font-size:15px;
}
thead th {
  background:#f5f8fc;
  font-weight:700;
  color:#627d95;
  font-size:12px;
  line-height:1.7;
  border-top:1px solid #e6edf4;
  border-bottom:1px solid #e1eaf2;
}
th,td {
  padding:15px 20px;
  border-bottom:1px solid #eaf0f6;
  vertical-align:middle;
}
tbody tr:last-child td {
  border-bottom:0;
}
tbody tr:hover {
  background:#fbfdff;
}
td {
  color:#486279;
  font-size:14px;
}
td a:hover {
  color:var(--brand);
}
td .button {
  font-size:12px;
}
td .local-time {
  color:#60778d;
  font-size:12px;
  white-space:nowrap;
}
.records-table {
  min-width:1050px;
}
.records-table th,.records-table td {
  padding:15px 15px;
}
.row-index {
  width:52px;
  color:#60778d;
  font-size:12px;
  text-align:center;
}
.record-date {
  min-width:145px;
}
.row-actions {
  display:flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
  min-height:69px;
}
.table-actions-heading {
  width:190px;
}
.pagination {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  padding:18px 24px;
  border-top:1px solid var(--line);
  color:#60778d;
  font-size:12px;
}
.pagination b {
  font-weight:600;
  color:#4e6c86;
}
.pagination nav {
  display:flex;
  align-items:center;
  gap:12px;
}
.page-number {
  font-size:12px;
  color:#68839d;
  padding:0 5px;
}
.event-identity {
  display:flex;
  align-items:center;
  gap:12px;
}
.event-identity strong {
  font-size:15px;
}
.event-identity small {
  display:block;
  color:var(--muted);
  font-size:12px;
}
.event-meta {
  display:flex;
  align-items:center;
  gap:18px;
}
.event-meta time {
  font-size:12px;
  color:#60778d;
}
.history-event {
  margin-bottom:16px;
}
.history-event>.panel-heading {
  padding-bottom:16px;
}
details summary {
  cursor:pointer;
}
.history-event details>summary {
  padding:0 25px 18px;
  font-size:12px;
  color:#5383ab;
}
.history-event details[open]>summary {
  border-bottom:1px solid var(--line);
}
.old-value {
  color:#60778d;
  max-width:420px;
  word-break:break-word;
}
.new-value {
  color:#25866e;
  max-width:420px;
  word-break:break-word;
}
.filter-bar {
  display:flex;
  align-items:center;
  gap:15px;
  padding:20px 24px;
}
.filter-bar label {
  font-size:14px;
  font-weight:700;
  color:#607c94;
}
.filter-bar select {
  max-width:450px;
  font-size:14px;
}
.filter-bar>.text-link {
  margin-right:auto;
}
.timeline {
  max-width:1100px;
}
.alert {
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:15px 18px;
  border:1px solid transparent;
  border-radius:10px;
  font-size:14px;
  line-height:1.9;
  margin-bottom:22px;
}
.alert>svg {
  width:19px;
  height:19px;
  margin-top:3px;
}
.alert.success {
  background:#edf9f3;
  border-color:#c8e8d7;
  color:#2f7c5d;
}
.alert.error {
  background:#fff2f2;
  border-color:#f0d1d1;
  color:#aa4b4b;
}
.alert.info {
  background:#edf6ff;
  border-color:#d2e6f8;
  color:#427caa;
}
.alert ul {
  margin:4px 0 0;
  padding-right:20px;
}
.alert strong {
  font-size:14px;
}
.error-summary:focus {
  outline:2px solid #e7b4b4;
  outline-offset:3px;
}
.editor-layout {
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.editor-layout.single-section {
  display:block;
  max-width:1100px;
  margin:auto;
}
.editor-navigation {
  position:sticky;
  top:var(--header-offset);
  border:1px solid #dbe6f0;
  border-radius:13px;
  background:#fff;
  overflow:hidden;
}
.section-nav-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:18px 17px 15px;
  border-bottom:1px solid #e8eef5;
}
.section-nav-heading>span {
  font-size:14px;
  font-weight:700;
  color:#3f607c;
}
.section-nav-heading small {
  font-size:12px;
  color:#60778d;
}
.editor-navigation nav {
  padding:10px;
}
.editor-navigation nav a {
  display:flex;
  align-items:center;
  gap:9px;
  padding:11px 10px;
  border-radius:8px;
  font-size:12px;
  color:#60778d;
  line-height:1.8;
  margin:3px 0;
}
.editor-navigation nav a svg {
  width:17px;
  height:17px;
  color:#60778d;
}
.editor-navigation nav a:hover {
  background:#f3f8fe;
}
.editor-navigation nav a.selected {
  color:#2169c9;
  background:#edf5ff;
  font-weight:700;
  box-shadow:inset -3px 0 var(--accent);
}
.editor-navigation nav a.selected svg {
  color:#4089d2;
}
.section-count {
  margin-right:auto;
  white-space:nowrap;
  font-size:12px;
  color:#60778d;
}
.section-nav-note {
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:15px 17px;
  border-top:1px solid #e8eef5;
  background:#f9fbfd;
  color:#60778d;
}
.section-nav-note svg {
  width:15px;
  height:15px;
  margin-top:3px;
}
.section-nav-note p {
  font-size:12px;
  line-height:1.9;
}
.editor-form {
  min-width:0;
}
.form-section {
  scroll-margin-top:var(--header-offset);
  margin-bottom:22px;
}
.form-section .panel-heading {
  border-bottom:1px solid #e9eff5;
  margin-bottom:3px;
}
.form-section .panel-heading h2 {
  font-size:16px;
}
.form-section .panel-heading p {
  font-size:12px;
}
.section-index {
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid #e4ecf5;
  border-radius:50%;
  color:#60778d;
  font-size:12px;
  flex-shrink:0;
}
.field-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:23px 21px;
  padding:23px 25px 28px;
}
.field {
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}
.field label {
  color:#4c687f;
  font-size:14px;
  font-weight:600;
  line-height:1.7;
  min-height:23px;
}
.field small {
  color:#60778d;
  font-size:12px;
  line-height:1.75;
}
.field.wide {
  grid-column:1/-1;
}
.field:focus-within label {
  color:var(--brand);
}
.record-summary {
  display:flex;
  align-items:center;
  gap:15px;
  padding:20px 24px;
  border-right:4px solid #2986b2;
  background:linear-gradient(120deg,#fff,#f6fbff);
}
.record-avatar {
  display:grid;
  place-items:center;
  width:51px;
  height:51px;
  background:#eaf4fb;
  border:1px solid #d9eaf7;
  border-radius:13px;
  color:#4b91be;
  flex-shrink:0;
}
.record-avatar svg {
  width:26px;
  height:26px;
}
.record-summary>div>strong {
  font-size:17px;
  color:#315b7b;
}
.record-summary p {
  color:#60778d;
  font-size:12px;
  margin-top:4px;
}
.record-summary>.actions {
  margin-right:auto;
}
.record-summary .local-time {
  font-size:12px;
}
.editor-actions {
  position:sticky;
  bottom:15px;
  z-index:25;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  border:1px solid #d7e5f2;
  border-radius:12px;
  padding:15px 19px;
  background:#fffffffa;
  backdrop-filter:blur(12px);
  box-shadow:0 7px 26px #24496812;
}
.save-status {
  display:flex;
  align-items:center;
  gap:8px;
  color:#60778d;
  font-size:12px;
}
.status-dot {
  width:7px;
  height:7px;
  border-radius:50%;
  background:#a5bdce;
  flex-shrink:0;
}
.has-changes .editor-actions .save-status {
  color:#a37b35;
}
.has-changes .editor-actions .status-dot {
  background:#d9a245;
}
.archive-form {
  display:flex;
  justify-content:flex-end;
  padding:20px 0 0;
}
.archive-form .text-link {
  font-size:12px;
}
.form-footer {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:21px 25px;
  border-top:1px solid var(--line);
}
.form-footer p {
  font-size:12px;
  color:#60778d;
}
.form-footer svg {
  width:17px;
  height:17px;
  margin-left:5px;
}
.import-steps {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  margin:4px 0 30px;
  padding:20px 25px;
  border:1px solid #e1eaf3;
  border-radius:12px;
  background:#fff;
}
.import-steps div {
  display:flex;
  align-items:center;
  gap:10px;
}
.import-steps span {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid #c9def5;
  border-radius:50%;
  background:#eff6fe;
  color:#4588cd;
  font-size:12px;
}
.import-steps strong {
  font-size:12px;
  font-weight:600;
  color:#60778d;
}
.import-steps i {
  width:55px;
  height:1px;
  background:#dce7f2;
}
.import-grid {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:24px;
}
.import-form {
  padding:0 25px 25px;
}
.upload-zone {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:11px;
  padding:30px 22px;
  margin:23px 0;
  border:1px dashed #a9c8e9;
  border-radius:12px;
  background:#f8fbff;
  cursor:pointer;
}
.upload-zone:focus-within,.upload-zone:hover {
  border-color:var(--brand);
  background:#f3f8ff;
}
.upload-zone .stat-icon {
  background:#e5f0ff;
  color:#448ddd;
  width:48px;
  height:48px;
}
.upload-zone strong {
  font-size:15px;
  font-weight:700;
}
.upload-zone>span:not(.stat-icon) {
  font-size:12px;
  color:#60778d;
}
.upload-zone input {
  width:290px;
  max-width:100%;
  min-height:0;
  padding:8px 0;
  border:0;
  font-size:12px;
  background:transparent;
}
.upload-zone small {
  font-size:12px;
  color:var(--brand);
  direction:ltr;
  word-break:break-all;
}
.import-guide ol {
  padding:0 42px 8px 25px;
  margin:0;
  color:#60778d;
  font-size:14px;
  line-height:2;
}
.import-guide li {
  padding:0 3px 12px;
}
.template-links {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding:5px 25px 25px;
}
.template-links .button {
  font-size:12px;
}
.preview-table table {
  white-space:nowrap;
}
.preview-table td {
  max-width:330px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.commit-box {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  padding:20px 24px;
  margin-top:24px;
}
.commit-box label {
  display:flex;
  align-items:center;
  gap:12px;
  font-size:14px;
  color:#617e95;
}
.permissions-table th:not(:first-child),.permissions-table td:not(:first-child) {
  text-align:center;
}
.permissions-table td:first-child {
  min-width:260px;
}
.permissions-table th {
  font-size:12px;
}
.permissions-table strong {
  font-size:14px;
}
.permissions-table small {
  font-size:12px;
}
.permission-unit td {
  background:#f7fafc;
  color:#57768e;
  font-weight:700;
  font-size:12px;
  padding:11px 22px;
}
.permission-unit svg {
  width:18px;
  height:18px;
  margin-left:8px;
}
.permission-toolbar {
  display:flex;
  align-items:center;
  gap:18px;
  padding:0 24px 20px;
}
.permission-toolbar .search-box {
  max-width:460px;
  flex:1;
}
.permission-toolbar>span {
  font-size:12px;
  color:#60778d;
}
.checkbox-field {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:14px;
  color:#57758d;
}
.bottom-actions {
  justify-content:flex-end;
  margin-top:24px;
}
.role-note {
  margin:0 24px 24px;
}
.user-filter {
  padding:0 24px 22px;
}
.user-filter .search-box {
  max-width:500px;
}
.drawer-backdrop {
  position:fixed;
  inset:0;
  z-index:200;
  background:#0b244b66;
  backdrop-filter:blur(2px);
}
.section-drawer {
  position:fixed;
  inset:0 0 0 auto;
  width:min(395px,90vw);
  height:100dvh;
  z-index:210;
  display:flex;
  flex-direction:column;
  background:#fff;
  box-shadow:-15px 0 55px #0b2b6330;
}
.drawer-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:25px 23px;
  color:#fff;
  background:linear-gradient(125deg,#0b2b63,#1767df 70%,#169caa);
}
.drawer-heading strong {
  display:block;
  font-size:17px;
}
.drawer-heading small {
  display:block;
  color:#60778d;
  font-size:12px;
  margin-top:4px;
}
.drawer-heading .icon-button {
  color:#fff;
  background:#ffffff14;
  border-color:#ffffff33;
}
.drawer-search {
  padding:20px 20px 15px;
}
.drawer-search input {
  font-size:14px;
}
.drawer-content {
  flex:1;
  overflow-y:auto;
  padding:0 16px 20px;
  overscroll-behavior:contain;
}
.drawer-shortcuts {
  padding-bottom:14px;
  border-bottom:1px solid #e6edf5;
  margin-bottom:14px;
}
.drawer-shortcuts a {
  display:flex;
  align-items:center;
  gap:11px;
  font-size:14px;
  padding:11px 12px;
  color:#607e97;
  border-radius:8px;
}
.drawer-shortcuts a svg {
  width:18px;
  height:18px;
  color:#60778d;
}
.drawer-shortcuts a:hover,.drawer-shortcuts a.selected {
  background:#edf5ff;
  color:#2668b9;
}
.drawer-group {
  margin-bottom:5px;
}
.drawer-group summary {
  display:flex;
  align-items:center;
  gap:9px;
  padding:11px 10px;
  color:#456b8a;
  font-size:14px;
  font-weight:700;
  list-style:none;
  border-radius:8px;
}
.drawer-group summary::-webkit-details-marker {
  display:none;
}
.drawer-group summary>svg:first-child {
  width:18px;
  height:18px;
  color:#448caa;
}
.drawer-group summary>small {
  margin-right:auto;
  background:#f0f5fa;
  padding:1px 6px;
  border-radius:4px;
  font-size:12px;
  color:#60778d;
}
.drawer-group summary>.chevron {
  margin:0;
}
.drawer-group[open] summary>.chevron {
  transform:rotate(180deg);
}
.drawer-group>a {
  display:block;
  font-size:12px;
  color:#60778d;
  padding:8px 37px 8px 12px;
  margin:2px 0;
  border-radius:7px;
}
.drawer-group>a:hover {
  background:#f4f8fc;
  color:var(--brand);
}
.drawer-group>a.selected {
  background:#edf5ff;
  color:var(--brand);
  box-shadow:inset -3px 0 var(--accent);
  font-weight:700;
}
.drawer-footer {
  display:flex;
  align-items:center;
  gap:9px;
  padding:17px 22px;
  border-top:1px solid #e2ebf3;
  background:#f8fbfd;
  font-size:12px;
  color:#60778d;
}
.drawer-footer svg {
  width:17px;
  height:17px;
}
.drawer-empty {
  padding:22px 10px;
  text-align:center;
}
.drawer-open {
  overflow:hidden;
}
.footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:22px 0 26px;
  border-top:1px solid #e1e9f2;
  color:#60778d;
  font-size:12px;
}
.footer span:first-child {
  font-weight:700;
  color:#60778d;
}
.toast {
  position:fixed;
  bottom:24px;
  left:24px;
  z-index:300;
  max-width:350px;
  padding:12px 18px;
  background:#204d74;
  color:#fff;
  font-size:14px;
  border-radius:10px;
  box-shadow:0 10px 30px #173c6333;
}
.login-page {
  background:radial-gradient(ellipse at 90% 5%,#e8f6fa 0,transparent 45%),linear-gradient(145deg,#f4f8ff,#f8fbfd);
  display:flex;
  flex-direction:column;
}
.login-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  width:min(1200px,100%);
  margin:0 auto;
  padding:27px 32px;
}
.login-header-note {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:#60778d;
}
.login-header-note svg {
  width:17px;
  height:17px;
}
.login-stage {
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:25px 30px 45px;
}
.auth-shell {
  display:grid;
  grid-template-columns:1.05fr 1fr;
  width:min(1080px,100%);
  background:#fff;
  border:1px solid #dce9f4;
  border-radius:24px;
  box-shadow:0 20px 60px #2253860c;
  overflow:hidden;
}
.auth-intro {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:43px 43px;
  background:radial-gradient(circle at 85% 0,#def3f7,transparent 60%),linear-gradient(145deg,#edf6ff,#f6fafe);
  position:relative;
  overflow:hidden;
  border-left:1px solid #e2edf7;
}
.auth-intro .eyebrow {
  font-size:12px;
  color:#298a9d;
}
.auth-intro h1 {
  font-size:31px;
  line-height:1.8;
  color:#143f72;
  margin:12px 0 13px;
  font-weight:700;
}
.auth-intro>p {
  font-size:14px;
  color:#60778d;
  line-height:2.1;
  max-width:390px;
}
.auth-features {
  display:flex;
  flex-direction:column;
  gap:13px;
  margin-top:28px;
  position:relative;
}
.auth-feature {
  display:flex;
  align-items:center;
  gap:13px;
  border:1px solid #ffffffc0;
  border-radius:12px;
  padding:12px 15px;
  background:#ffffff8c;
  max-width:385px;
}
.auth-feature>span {
  width:35px;
  height:35px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#e7f2fc;
  color:#4b91bf;
  flex-shrink:0;
}
.auth-feature:nth-child(2)>span {
  color:#358f9b;
  background:#e6f5f4;
}
.auth-feature:nth-child(3)>span {
  color:#8275bb;
  background:#f0edfb;
}
.auth-feature svg {
  width:19px;
  height:19px;
}
.auth-feature strong {
  display:block;
  font-size:12px;
  color:#345e83;
  font-weight:700;
}
.auth-feature small {
  display:block;
  font-size:12px;
  color:#60778d;
  margin-top:2px;
}
.auth-card {
  padding:40px 43px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}
.login-symbol {
  width:47px;
  height:47px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#edf6ff;
  color:#508ecb;
  margin-bottom:23px;
}
.login-symbol svg {
  width:25px;
  height:25px;
}
.auth-card h2 {
  font-size:24px;
  font-weight:700;
  color:#1e466e;
  line-height:1.7;
  margin-bottom:6px;
}
.auth-card>p {
  font-size:14px;
  color:#60778d;
  line-height:1.95;
  margin-bottom:20px;
}
.auth-card .field {
  margin-bottom:19px;
}
.auth-card .field label {
  font-size:14px;
}
.auth-card input {
  min-height:49px;
  font-size:15px;
}
.auth-card input[type=tel] {
  letter-spacing:1px;
}
.auth-card .button.full {
  min-height:46px;
  justify-content:space-between;
}
.auth-card .alert {
  font-size:12px;
  padding:10px 13px;
  margin:0 0 18px;
  line-height:1.9;
}
.auth-card .alert strong {
  font-size:12px;
}
.auth-card .login-help {
  display:flex;
  align-items:flex-start;
  gap:8px;
  border-top:1px solid #e8eff6;
  margin-top:25px;
  padding-top:18px;
  font-size:12px;
  color:#60778d;
  line-height:1.9;
}
.login-help svg {
  width:16px;
  height:16px;
  margin-top:2px;
}
.login-footer {
  text-align:center;
  color:#60778d;
  font-size:12px;
  padding:0 20px 27px;
}
.otp-input {
  direction:ltr;
  text-align:center;
  font-size:27px!important;
  letter-spacing:13px;
  min-height:60px!important;
}
.otp-meta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  font-size:12px;
  color:#60778d;
  margin:2px 0 20px;
}
.otp-timer {
  color:#3b79ba;
  font-variant-numeric:tabular-nums;
  font-weight:700;
  direction:ltr;
  display:inline-block;
}
.otp-expired {
  color:#b85d54;
}
.resend-form {
  margin:17px 0 0;
}
.resend-form .text-link {
  font-size:12px;
  min-height:35px;
}
.reset-login {
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:15px;
  font-size:12px;
}
.otp-actions {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}
.auth-card .field small {
  font-size:12px;
}
.problem-page {
  display:grid;
  place-items:center;
  min-height:100vh;
  padding:25px;
  background:var(--bg);
}
.problem-page .panel {
  width:min(610px,100%);
  text-align:center;
  padding:45px 35px;
}
.problem-page h1 {
  font-size:24px;
  margin:18px 0 10px;
}
.problem-page p {
  color:var(--muted);
  font-size:15px;
  margin-bottom:24px;
  line-height:1.9;
}
@media(min-width:1650px) {
  body {
    font-size:16px;
  }
  .header-inner {
    padding-inline:40px;
  }
  .workspace {
    padding-inline:38px;
  }
  .primary-nav a {
    font-size:15px;
  }
  .field label {
    font-size:15px;
  }
  .field input,.field select,.field textarea {
    font-size:15px;
  }
  .page-heading h1 {
    font-size:29px;
  }
}
@media(max-width:1250px) {
  .header-inner {
    gap:17px;
    padding-inline:24px;
  }
  .primary-nav a {
    padding:8px 11px;
    font-size:12px;
  }
  .brand strong {
    font-size:15px;
  }
  .brand small {
    font-size:12px;
  }
  .brand {
    gap:10px;
  }
  .header-actions {
    gap:10px;
  }
  .account-copy {
    display:none;
  }
  .account-toggle>.chevron {
    display:none;
  }
  .workspace {
    padding-inline:25px;
  }
  .stat-card {
    padding:19px 17px 16px;
  }
  .stat-label {
    font-size:12px;
  }
  .stat-icon {
    width:39px;
    height:39px;
  }
  .stat-card strong {
    font-size:29px;
  }
  .bank-card-footer {
    flex-wrap:wrap;
  }
  .bank-card-footer .text-link {
    font-size:12px;
  }
  .editor-layout {
    grid-template-columns:220px minmax(0,1fr);
    gap:20px;
  }
  .field-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:22px;
    gap:22px;
  }
  .dashboard-grid {
    grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);
  }
  .unit-card {
    padding:14px 12px;
    gap:10px;
  }
  .unit-card strong {
    font-size:12px;
  }
  .unit-icon {
    width:33px;
    height:37px;
  }
  .catalog-items {
    grid-template-columns:1fr 1fr;
  }
  .catalog-item {
    padding:20px 17px;
  }
}
@media(max-width:1030px) {
  :root {
    --header-offset:145px;
  }
  .header-inner {
    flex-wrap:wrap;
    gap:12px 20px;
    padding:13px 22px 10px;
  }
  .header-inner>.brand {
    flex:1;
  }
  .header-actions {
    margin-right:auto;
  }
  .primary-nav {
    order:3;
    flex:1 0 100%;
    margin:0;
    padding:3px;
    justify-content:space-around;
    overflow-x:auto;
  }
  .primary-nav a {
    padding:8px 15px;
    flex:1;
    font-size:12px;
    min-height:36px;
  }
  .workspace {
    padding-inline:23px;
  }
  .context-bar {
    padding:21px 0 16px;
  }
  .stats-grid {
    gap:13px;
  }
  .dashboard-grid {
    grid-template-columns:1fr;
  }
  .unit-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
  }
  .unit-card {
    flex-wrap:wrap;
    gap:10px;
    position:relative;
    min-height:120px;
    align-content:start;
  }
  .unit-card>div {
    flex-basis:100%;
  }
  .unit-card .unit-arrow {
    position:absolute;
    left:13px;
    top:24px;
  }
  .activity-list {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 24px;
  }
  .activity-list li:nth-last-child(2) {
    border-bottom:0;
  }
  .activity-panel .empty {
    padding-block:30px;
  }
  .activity-panel .help-note {
    margin-top:12px;
  }
  .editor-layout {
    grid-template-columns:190px minmax(0,1fr);
    gap:17px;
  }
  .editor-navigation nav a {
    font-size:12px;
    padding:11px 8px;
    gap:7px;
  }
  .editor-navigation nav a svg {
    width:16px;
    height:16px;
  }
  .section-nav-heading small {
    display:none;
  }
  .section-count {
    font-size:12px;
  }
  .section-nav-heading {
    padding:17px 15px;
  }
  .section-nav-note {
    padding:15px 13px;
  }
  .record-summary {
    flex-wrap:wrap;
  }
  .auth-intro {
    padding:35px;
  }
  .auth-card {
    padding:35px;
  }
  .auth-intro h1 {
    font-size:29px;
  }
}
@media(max-width:780px) {
  .page-heading {
    align-items:flex-start;
    gap:20px;
    flex-wrap:wrap;
  }
  .page-heading h1 {
    font-size:24px;
  }
  .page-heading p {
    font-size:12px;
    max-width:600px;
  }
  .page-heading>.actions {
    width:100%;
  }
  .stats-grid {
    grid-template-columns:1fr 1fr;
    gap:14px;
  }
  .stat-card {
    padding:18px 20px 16px;
  }
  .stat-label {
    font-size:14px;
  }
  .stat-card strong {
    font-size:30px;
  }
  .stat-card>small {
    font-size:12px;
  }
  .bank-grid {
    grid-template-columns:1fr;
    padding:20px;
    gap:16px;
  }
  .bank-card-footer {
    flex-wrap:nowrap;
  }
  .dashboard-grid {
    gap:22px;
  }
  .unit-grid {
    grid-template-columns:1fr 1fr;
    padding:0 20px 22px;
    gap:12px;
  }
  .unit-card {
    flex-wrap:nowrap;
    min-height:0;
    padding:15px;
    align-content:initial;
    align-items:center;
  }
  .unit-card>div {
    flex-basis:auto;
  }
  .unit-card .unit-arrow {
    position:static;
  }
  .unit-card strong {
    font-size:12px;
  }
  .unit-card small {
    font-size:12px;
  }
  .unit-icon {
    width:36px;
    height:39px;
  }
  .panel-heading {
    padding:21px 20px 18px;
  }
  .panel-heading h2 {
    font-size:16px;
  }
  .panel-heading p {
    font-size:12px;
  }
  .bank-panel>.panel-heading>.badge {
    display:none;
  }
  .panel-heading>.heading-with-icon {
    gap:11px;
  }
  .editor-layout {
    display:block;
  }
  .editor-navigation {
    top:135px;
    z-index:40;
    margin-bottom:20px;
    border-radius:10px;
    box-shadow:0 4px 12px #24496805;
  }
  .section-nav-heading,.section-nav-note {
    display:none;
  }
  .editor-navigation nav {
    display:flex;
    overflow-x:auto;
    padding:7px;
    gap:4px;
    scrollbar-width:thin;
  }
  .editor-navigation nav a {
    white-space:nowrap;
    font-size:12px;
    padding:8px 12px;
    margin:0;
    flex-shrink:0;
  }
  .section-count {
    display:none;
  }
  .form-section {
    scroll-margin-top:205px;
  }
  .field-grid {
    grid-template-columns:1fr 1fr;
    padding:21px;
    gap:22px 18px;
  }
  .editor-actions {
    bottom:12px;
  }
  .save-status {
    font-size:12px;
  }
  .record-summary>.actions {
    width:100%;
    margin:0;
    border-top:1px solid #e4edf5;
    padding-top:13px;
  }
  .record-summary {
    gap:12px;
    padding:18px 21px;
  }
  .record-summary>div>strong {
    font-size:16px;
  }
  .catalog-items {
    gap:12px;
  }
  .catalog-item {
    min-height:112px;
    padding:18px 14px;
    gap:10px;
  }
  .catalog-item strong {
    font-size:14px;
  }
  .catalog-symbol {
    width:36px;
    height:40px;
  }
  .catalog-item small {
    font-size:12px;
  }
  .catalog-toolbar {
    padding:20px;
  }
  .filter-chip {
    font-size:12px;
  }
  .import-grid {
    grid-template-columns:1fr;
    gap:0;
  }
  .filter-bar {
    flex-wrap:wrap;
    padding:18px 20px;
  }
  .filter-bar select {
    max-width:none;
    flex:1;
    min-width:200px;
  }
  .filter-bar>.text-link {
    width:100%;
    margin:0;
  }
  .auth-shell {
    grid-template-columns:.9fr 1fr;
  }
  .auth-intro {
    padding:28px;
  }
  .auth-intro h1 {
    font-size:25px;
  }
  .auth-intro>p {
    font-size:12px;
  }
  .auth-feature {
    padding:10px;
    gap:10px;
  }
  .auth-feature strong {
    font-size:12px;
  }
  .auth-feature small {
    font-size:12px;
  }
  .auth-card {
    padding:30px 26px;
  }
  .auth-card h2 {
    font-size:22px;
  }
  .login-stage {
    padding-inline:20px;
  }
  .login-header {
    padding:22px 25px;
  }
  .login-header-note {
    font-size:12px;
  }
  .footer {
    font-size:12px;
  }
  .commit-box {
    align-items:flex-start;
    flex-wrap:wrap;
  }
}
@media(max-width:580px) {
  :root {
    --header-offset:143px;
  }
  body {
    font-size:15px;
  }
  .header-inner {
    padding:13px 17px 9px;
    gap:12px;
  }
  .brand-mark {
    width:38px;
    height:38px;
    border-radius:10px;
  }
  .brand strong {
    font-size:14px;
  }
  .brand small {
    font-size:12px;
  }
  .brand {
    gap:9px;
  }
  .header-actions {
    gap:10px;
  }
  .menu-toggle {
    width:38px;
    min-height:38px;
    padding:8px;
    justify-content:center;
  }
  .menu-toggle>span {
    display:none;
  }
  .account-toggle .avatar {
    width:35px;
    height:35px;
    font-size:14px;
  }
  .primary-nav {
    gap:1px;
    border-radius:8px;
    scrollbar-width:none;
  }
  .primary-nav a {
    font-size:12px;
    padding:7px 8px;
    gap:5px;
    min-height:34px;
  }
  .primary-nav a svg {
    width:15px;
    height:15px;
  }
  .workspace {
    padding:0 16px;
    min-height:calc(100vh - 127px);
  }
  .context-bar {
    padding:19px 0 15px;
    font-size:12px;
    gap:10px;
  }
  .breadcrumb {
    gap:8px;
  }
  .today {
    font-size:12px;
  }
  .page-heading {
    margin-bottom:22px;
    gap:16px;
  }
  .page-heading h1 {
    font-size:23px;
  }
  .page-heading p {
    font-size:12px;
    line-height:1.95;
  }
  .eyebrow {
    font-size:12px;
  }
  .page-heading>.actions {
    gap:8px;
  }
  .page-heading .button {
    font-size:12px;
    padding:9px 12px;
    min-height:40px;
  }
  .page-heading .button svg {
    width:16px;
    height:16px;
  }
  .stats-grid {
    gap:11px;
    margin-bottom:22px;
  }
  .stat-card {
    padding:15px 13px 13px;
    border-radius:11px;
    gap:4px 6px;
    border-right-width:3px;
  }
  .stat-label {
    font-size:12px;
  }
  .stat-card strong {
    font-size:28px;
  }
  .stat-icon {
    width:31px;
    height:34px;
    border-radius:9px;
  }
  .stat-icon svg {
    width:18px;
    height:18px;
  }
  .stat-card>small {
    font-size:12px;
    padding-top:9px;
    gap:6px;
    margin-top:6px;
  }
  .panel {
    border-radius:13px;
    margin-bottom:22px;
  }
  .panel-heading {
    padding:19px 17px 17px;
    gap:10px;
  }
  .panel-heading h2 {
    font-size:15px;
  }
  .panel-heading p {
    font-size:12px;
  }
  .section-icon {
    width:34px;
    height:37px;
    border-radius:10px;
  }
  .section-icon svg {
    width:20px;
    height:20px;
  }
  .bank-grid {
    padding:16px;
    gap:14px;
  }
  .bank-card {
    padding:17px 18px;
    border-radius:11px;
  }
  .bank-card h3 {
    font-size:17px;
  }
  .bank-card>p {
    font-size:12px;
  }
  .bank-card-footer {
    align-items:flex-start;
    flex-direction:column;
    gap:15px;
    margin-top:20px;
  }
  .bank-card-footer .button {
    width:100%;
    justify-content:space-between;
    font-size:12px;
  }
  .bank-card-heading {
    margin-bottom:12px;
  }
  .bank-icon {
    width:40px;
    height:40px;
  }
  .badge {
    font-size:12px;
  }
  .bank-card .badge {
    font-size:12px;
  }
  .unit-grid {
    gap:10px;
    padding:0 16px 18px;
  }
  .unit-card {
    padding:13px 11px;
    gap:10px;
    flex-wrap:wrap;
    min-height:106px;
    position:relative;
  }
  .unit-card>div {
    flex-basis:100%;
  }
  .unit-card strong {
    font-size:12px;
  }
  .unit-card small {
    font-size:12px;
  }
  .unit-icon {
    width:29px;
    height:31px;
    border-radius:8px;
  }
  .unit-icon svg {
    width:18px;
    height:18px;
  }
  .unit-card .unit-arrow {
    position:absolute;
    top:22px;
    left:13px;
    width:14px;
    height:14px;
  }
  .dashboard-grid {
    gap:22px;
  }
  .activity-list {
    display:block;
    padding-inline:18px;
  }
  .activity-list li:nth-last-child(2) {
    border-bottom:1px solid #edf2f7;
  }
  .activity-list li {
    padding-block:14px;
  }
  .activity-panel .empty {
    padding:30px 23px;
  }
  .help-note {
    margin:14px 17px 18px;
    padding:12px;
  }
  .empty {
    padding:35px 20px;
  }
  .empty h3 {
    font-size:15px;
  }
  .empty p {
    font-size:12px;
  }
  .empty .actions {
    flex-direction:column;
    width:100%;
  }
  .empty .actions .button {
    width:100%;
    font-size:12px;
  }
  .table-toolbar {
    padding:19px 17px 15px;
    gap:10px;
  }
  .table-summary {
    gap:8px;
  }
  .table-summary h2 {
    font-size:15px;
  }
  .table-toolbar>.text-link {
    font-size:12px;
  }
  .table-toolbar>.text-link svg {
    width:15px;
    height:15px;
  }
  .record-filters {
    padding:0 16px 18px;
    gap:12px;
  }
  .record-filters .search-box {
    width:100%;
    gap:7px;
    padding:0 9px;
  }
  .search-box input {
    font-size:14px;
  }
  .search-box input::placeholder {
    font-size:12px;
  }
  .record-filters .search-box .button {
    font-size:12px;
    padding:6px 10px;
    margin-left:-3px;
  }
  .filter-clear.text-link {
    font-size:12px;
  }
  .records-table {
    min-width:0;
    display:block;
  }
  .records-table thead {
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
  }
  .records-table tbody {
    display:flex;
    flex-direction:column;
    gap:14px;
    padding:0 15px 18px;
  }
  .records-table tbody tr {
    display:grid;
    grid-template-columns:1fr 1fr;
    border:1px solid #dfE8f1;
    border-radius:11px;
    background:#fff;
    padding:12px 15px;
    gap:12px 15px;
    position:relative;
  }
  .records-table .row-index {
    position:absolute;
    left:13px;
    top:14px;
    width:auto;
    padding:0;
    color:#60778d;
    font-size:12px;
  }
  .records-table td:not(.row-index) {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:3px;
    min-width:0;
    border:0;
    padding:0;
    font-size:12px;
    word-break:break-word;
  }
  .records-table td[data-label]::before {
    content:attr(data-label);
    color:#60778d;
    font-size:12px;
    font-weight:500;
  }
  .records-table td.identifier>span {
    color:#346c9e;
    font-weight:700;
    font-size:14px;
  }
  .records-table td.record-date {
    grid-column:1/-1;
    padding-top:10px;
    border-top:1px dashed #e5edf5;
  }
  .records-table td.record-date time {
    font-size:12px;
  }
  .records-table td.row-actions {
    grid-column:1/-1;
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:8px;
    min-height:0;
    margin-top:1px;
  }
  .row-actions>.button {
    flex:1;
    font-size:12px;
    min-height:36px;
  }
  .row-actions>.icon-button {
    border-color:#dbe7f1;
    width:36px;
    height:36px;
  }
  .pagination {
    padding:16px;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    font-size:12px;
  }
  .pagination nav {
    width:100%;
    justify-content:flex-end;
  }
  .pagination .page-number {
    font-size:12px;
  }
  .form-catalog .catalog-items {
    grid-template-columns:1fr;
    gap:10px;
  }
  .catalog-group {
    margin-bottom:24px;
  }
  .catalog-item {
    min-height:88px;
    padding:18px 16px;
  }
  .catalog-item strong {
    font-size:14px;
  }
  .catalog-item small {
    font-size:12px;
  }
  .catalog-symbol {
    width:38px;
    height:43px;
  }
  .catalog-heading {
    gap:10px;
    margin-bottom:12px;
  }
  .catalog-heading h2 {
    font-size:15px;
  }
  .catalog-heading .section-icon {
    width:31px;
    height:33px;
  }
  .catalog-line {
    margin:0 3px;
  }
  .catalog-heading>.muted {
    font-size:12px;
  }
  .catalog-toolbar {
    padding:17px;
    margin-bottom:25px;
  }
  .unit-filters {
    flex-wrap:nowrap;
    overflow-x:auto;
    margin-top:15px;
    padding-bottom:8px;
    gap:7px;
    scrollbar-width:thin;
  }
  .filter-chip {
    white-space:nowrap;
    flex-shrink:0;
    font-size:12px;
    padding:5px 10px;
    min-height:33px;
  }
  .catalog-result {
    margin-top:10px;
    font-size:12px;
  }
  .catalog-toolbar .search-box {
    padding:0 10px;
  }
  .catalog-toolbar input::placeholder {
    font-size:12px;
  }
  .catalog-toolbar kbd {
    display:none;
  }
  .editor-navigation {
    top:126px;
    margin-bottom:17px;
  }
  .editor-navigation nav a {
    font-size:12px;
    padding:8px 10px;
  }
  .editor-navigation nav a svg {
    width:15px;
    height:15px;
  }
  .form-section {
    scroll-margin-top:195px;
    margin-bottom:17px;
  }
  .form-section .panel-heading {
    padding:17px 16px;
    align-items:flex-start;
  }
  .form-section .panel-heading h2 {
    font-size:15px;
  }
  .form-section .panel-heading p {
    font-size:12px;
  }
  .form-section .section-icon {
    width:32px;
    height:34px;
  }
  .form-section .section-icon svg {
    width:18px;
    height:18px;
  }
  .section-index {
    width:23px;
    height:23px;
    font-size:12px;
    margin-top:6px;
  }
  .field-grid {
    grid-template-columns:1fr;
    padding:20px 18px 23px;
    gap:21px;
  }
  .field label {
    font-size:14px;
    min-height:0;
  }
  .field input,.field select,.field textarea {
    font-size:15px;
    min-height:46px;
  }
  .field small {
    font-size:12px;
  }
  .record-summary {
    padding:17px;
    gap:11px;
  }
  .record-avatar {
    width:43px;
    height:46px;
    border-radius:11px;
  }
  .record-avatar svg {
    width:23px;
    height:23px;
  }
  .record-summary>div>strong {
    font-size:15px;
  }
  .record-summary p {
    font-size:12px;
  }
  .record-summary .actions {
    justify-content:space-between;
    gap:9px;
  }
  .record-summary .button {
    font-size:12px;
  }
  .editor-actions {
    bottom:10px;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
    padding:13px 14px;
    border-radius:10px;
  }
  .editor-actions>.actions {
    gap:8px;
    flex-wrap:nowrap;
  }
  .editor-actions .button {
    font-size:12px;
    min-height:41px;
  }
  .editor-actions .button.primary {
    flex:1;
  }
  .editor-actions .save-status {
    font-size:12px;
  }
  .single-section .editor-actions {
    margin-top:0;
  }
  .archive-form {
    padding-top:18px;
  }
  .form-footer {
    padding:17px;
    flex-direction:column;
    align-items:stretch;
    gap:14px;
  }
  .form-footer .button {
    width:100%;
  }
  .filter-bar {
    padding:17px;
    gap:12px;
  }
  .filter-bar label {
    width:100%;
    font-size:12px;
  }
  .filter-bar select {
    font-size:12px;
    min-width:0;
  }
  .filter-bar .button {
    font-size:12px;
  }
  .event-identity strong {
    font-size:12px;
  }
  .event-identity small {
    font-size:12px;
  }
  .event-identity .avatar {
    width:32px;
    height:32px;
    font-size:12px;
  }
  .event-identity {
    gap:9px;
  }
  .event-meta {
    align-items:flex-end;
    flex-direction:column;
    gap:5px;
  }
  .event-meta time {
    font-size:12px;
  }
  .history-event .panel-heading {
    align-items:flex-start;
  }
  .history-event details>summary {
    padding:0 18px 16px;
    font-size:12px;
  }
  .history-event table {
    min-width:520px;
  }
  .history-event table td {
    font-size:12px;
  }
  .history-event table th {
    font-size:12px;
  }
  .import-steps {
    padding:16px 12px;
    gap:7px;
    margin-bottom:22px;
    justify-content:space-between;
  }
  .import-steps div {
    flex-direction:column;
    gap:7px;
  }
  .import-steps strong {
    font-size:12px;
    white-space:nowrap;
  }
  .import-steps span {
    width:27px;
    height:27px;
    font-size:12px;
  }
  .import-steps i {
    width:13px;
    margin-bottom:24px;
  }
  .import-form {
    padding:0 18px 20px;
  }
  .upload-zone {
    padding:24px 17px;
    margin:20px 0;
  }
  .upload-zone>span:not(.stat-icon) {
    font-size:12px;
  }
  .upload-zone strong {
    font-size:14px;
  }
  .import-guide ol {
    padding-right:35px;
    padding-left:20px;
    font-size:12px;
  }
  .template-links {
    padding:5px 20px 22px;
  }
  .template-links .button {
    font-size:12px;
    width:100%;
    justify-content:flex-start;
  }
  .import-grid .panel {
    margin-bottom:22px;
  }
  .commit-box {
    padding:18px;
    gap:18px;
    margin-top:20px;
  }
  .commit-box label {
    font-size:12px;
    align-items:flex-start;
  }
  .commit-box input {
    margin-top:3px;
  }
  .commit-box>.button {
    width:100%;
  }
  .permissions-table {
    min-width:580px;
  }
  .permissions-table td:first-child {
    min-width:230px;
  }
  .permission-toolbar {
    flex-wrap:wrap;
    padding:0 17px 18px;
    gap:10px;
  }
  .permission-toolbar .search-box {
    width:100%;
    flex-basis:100%;
  }
  .permission-toolbar>span {
    font-size:12px;
  }
  .permission-unit td {
    font-size:12px;
  }
  .role-note {
    margin:0 17px 18px;
  }
  .user-filter {
    padding:0 17px 18px;
  }
  .users-table {
    min-width:620px;
  }
  .checkbox-field {
    font-size:12px;
  }
  .bottom-actions {
    flex-wrap:nowrap;
    gap:8px;
  }
  .bottom-actions>.primary {
    flex:1;
    font-size:12px;
  }
  .bottom-actions>.button {
    font-size:12px;
  }
  .drawer-heading {
    padding:24px 20px;
  }
  .drawer-heading strong {
    font-size:16px;
  }
  .drawer-search {
    padding:17px;
  }
  .drawer-content {
    padding-inline:12px;
  }
  .drawer-group>a {
    font-size:12px;
  }
  .drawer-shortcuts a {
    font-size:12px;
  }
  .drawer-heading small {
    font-size:12px;
  }
  .drawer-footer {
    font-size:12px;
    padding-inline:18px;
  }
  .account-panel {
    width:250px;
    top:calc(100% + 17px);
  }
  .footer {
    padding:18px 0 22px;
    font-size:12px;
    gap:12px;
  }
  .footer span:last-child {
    font-size:12px;
  }
  .login-header {
    padding:22px 20px;
  }
  .login-header-note {
    font-size:12px;
    gap:6px;
  }
  .login-header-note svg {
    width:15px;
    height:15px;
  }
  .login-header .brand small {
    font-size:12px;
  }
  .login-stage {
    padding:12px 17px 28px;
    display:block;
  }
  .auth-shell {
    display:flex;
    flex-direction:column;
    border-radius:18px;
    width:100%;
    box-shadow:0 12px 40px #22538608;
  }
  .auth-intro {
    padding:24px 25px;
    border-left:0;
    border-bottom:1px solid #e2edf7;
  }
  .auth-intro .eyebrow {
    font-size:12px;
  }
  .auth-intro h1 {
    font-size:24px;
    line-height:1.7;
    margin:6px 0;
  }
  .auth-intro>p {
    font-size:12px;
    max-width:none;
    line-height:1.9;
  }
  .auth-features {
    display:none;
  }
  .auth-card {
    padding:28px 25px 30px;
  }
  .login-symbol {
    width:41px;
    height:43px;
    border-radius:12px;
    margin-bottom:17px;
  }
  .login-symbol svg {
    width:23px;
    height:23px;
  }
  .auth-card h2 {
    font-size:22px;
  }
  .auth-card>p {
    font-size:12px;
    margin-bottom:20px;
  }
  .auth-card input {
    min-height:49px;
    font-size:15px;
  }
  .auth-card .field {
    margin-bottom:20px;
  }
  .auth-card .alert {
    font-size:12px;
    margin-bottom:19px;
    padding:11px 12px;
  }
  .auth-card .alert strong {
    font-size:12px;
  }
  .auth-card .button.full {
    min-height:45px;
    font-size:12px;
  }
  .auth-card .login-help {
    font-size:12px;
    gap:7px;
    margin-top:23px;
    padding-top:17px;
  }
  .login-footer {
    font-size:12px;
    padding-bottom:22px;
  }
  .otp-input {
    font-size:26px!important;
    letter-spacing:12px;
  }
  .otp-meta {
    font-size:12px;
  }
  .reset-login {
    font-size:12px;
  }
  .resend-form .text-link {
    font-size:12px;
  }
  .problem-page .panel {
    padding:35px 23px;
  }
  .problem-page h1 {
    font-size:22px;
  }
  .problem-page p {
    font-size:14px;
  }
  .toast {
    left:17px;
    right:17px;
    bottom:17px;
    max-width:none;
    font-size:12px;
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  *,*::before,*::after {
    transition:none!important;
    animation:none!important;
  }
}
@media print {
  .app-header,.context-bar,.section-drawer,.drawer-backdrop,.footer,.actions,.editor-navigation,.editor-actions,.archive-form,.button,.record-filters {
    display:none!important;
  }
  .workspace {
    max-width:none;
    padding:0;
  }
  .page-content {
    padding:0;
  }
  .editor-layout {
    display:block;
  }
  .panel {
    box-shadow:none;
    break-inside:avoid;
    border-color:#ccc;
  }
  .field-grid {
    grid-template-columns:1fr 1fr;
  }
  body {
    background:#fff;
  }
  .table-wrap {
    overflow:visible;
  }
  .records-table {
    min-width:0;
  }
  .form-section {
    scroll-margin-top:0;
  }
}
@media(max-width:580px) {
  .primary-nav a svg {
    display:none;
  }
  .primary-nav a {
    padding-inline:6px;
    font-size:12px;
  }
  .login-header-note {
    font-size:11px;
  }
  .field input,.field select,.field textarea {
    font-size:16px;
  }
  .auth-card input {
    font-size:16px;
  }
  .import-steps div {
    flex:1;
    min-width:0;
  }
  .import-steps strong {
    white-space:normal;
    text-align:center;
  }
}
