:root {
  --blue: #0b63c7;
  --blue-dark: #084b9a;
  --cyan: #15a9dd;
  --ink: #0f1f35;
  --muted: #617086;
  --line: #dce8f4;
  --panel: #ffffff;
  --soft: #f4f7fa;
  --soft-blue: #f7fbff;
  --warm-panel: #fffdfa;
  --danger: #d64545;
  --success: #197b45;
  --shadow: 0 18px 45px rgba(15, 31, 53, .08);
  --soft-shadow: 0 14px 34px rgba(15, 31, 53, .06);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }

body {
  margin: 0;
  color: var(--ink);
  background: linear-gradient(135deg, #ffffff 0%, #f4f7fa 48%, #eef2f5 100%);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: 0;
  overflow-x: hidden;
}

a { color: inherit; text-decoration: none; }

.login-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
}

.login-card {
  width: min(960px, 100%);
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  overflow: hidden;
}

.login-intro {
  min-height: 560px;
  padding: 34px 44px 62px;
  background:
    radial-gradient(circle at 50% 38%, rgba(21, 169, 221, .09), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  border-right: 1px solid var(--line);
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 12px;
}

.login-intro img { width: 180px; margin-bottom: 0; }
.login-intro .login-main-logo {
  display: block;
  width: min(260px, 82%);
  max-height: 220px;
  object-fit: contain;
  margin: 0 auto;
}

.login-intro .login-portal-kicker {
  margin: -18px 0 0;
  color: var(--blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .16em;
  text-align: center;
  text-transform: uppercase;
}

.login-intro .login-portal-copy {
  max-width: 330px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  font-weight: 650;
  line-height: 1.55;
  text-align: center;
}
.login-intro h1, .topbar h1 { margin: 0; font-size: clamp(28px, 4vw, 42px); line-height: 1.05; }
.login-intro p, .topbar p { color: var(--muted); font-weight: 700; }

.login-form { padding: 44px; display: flex; flex-direction: column; justify-content: center; gap: 16px; }
.login-card-footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 30px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  pointer-events: none;
}

.login-card-footer-link,
.login-card-footer-version {
  color: #526783;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}

.login-card-footer-link {
  justify-self: center;
}

.login-card-footer-version {
  justify-self: end;
  padding-right: 44px;
  text-transform: none;
}

.login-card-footer-link:hover {
  color: var(--blue);
  text-decoration: underline;
}
.login-footer-brand {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.login-footer-brand img {
  width: 86px;
  height: auto;
  margin: 0;
  flex: 0 0 auto;
}

.login-footer-brand-simple {
  justify-content: flex-start;
}

.login-roko-credit {
  color: #7b8798;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.login-roko-credit strong {
  color: #526783;
  font-weight: 900;
}

.roko-footer-credit {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  white-space: nowrap;
}

.roko-footer-logo {
  display: block;
  width: auto !important;
  height: 42px !important;
  margin: 0 !important;
  object-fit: contain;
  flex: 0 0 auto;
}

.atolit-logo-link {
  display: inline-flex;
  align-items: center;
  color: inherit;
  text-decoration: none;
}

.atolit-about-link {
  display: inline-block;
  margin-left: 8px;
  color: var(--primary);
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.atolit-about-link:hover {
  text-decoration: underline;
}

.field { display: grid; gap: 7px; }
.field label { color: var(--muted); font-size: 13px; font-weight: 800; text-transform: uppercase; }
.field input, .field select, .field textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 13px 14px;
  font: inherit;
  background: #fff;
}
.field input:focus, .field select:focus, .field textarea:focus {
  outline: 2px solid rgba(11, 99, 199, .22);
  border-color: #9fc8ef;
  box-shadow: 0 0 0 4px rgba(11, 99, 199, .06);
}

.field.is-invalid label {
  color: var(--danger);
}

.field.is-invalid input,
.field.is-invalid select,
.field.is-invalid textarea {
  border-color: #ef4444;
  background: #fff7f7;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, .12);
}

.field.is-invalid input:focus,
.field.is-invalid select:focus,
.field.is-invalid textarea:focus {
  border-color: #dc2626;
  box-shadow: 0 0 0 4px rgba(220, 38, 38, .14);
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-radius: 8px;
  padding: 12px 16px;
  background: var(--blue);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.button:hover { background: var(--blue-dark); box-shadow: 0 10px 24px rgba(11, 99, 199, .18); }
.button-light { background: #fff; color: var(--ink); border: 1px solid var(--line); }
.button-light:hover { background: #f5f9fc; border-color: #bfd6ec; box-shadow: 0 8px 18px rgba(15, 31, 53, .06); }
.button-plain { background: transparent; color: var(--blue); border: 1px solid transparent; }
.button-plain:hover { background: #eef6ff; }
.button-success { background: var(--success); }
.button-success:hover { background: #126535; box-shadow: 0 10px 24px rgba(25, 123, 69, .18); }
.button-danger { background: var(--danger); }
.button:active,
.button:focus-visible {
  background: var(--blue-dark);
  color: #fff;
}
.button-light:active,
.button-light:focus-visible {
  background: #f5f9fc;
  color: var(--ink);
  border-color: #bfd6ec;
}
.button-success:active,
.button-success:focus-visible {
  background: var(--success);
  color: #fff;
}
.button-danger:active,
.button-danger:focus-visible {
  background: var(--danger);
  color: #fff;
}
.button:disabled,
.button:disabled:hover {
  cursor: not-allowed;
  opacity: .82;
  box-shadow: none;
  transform: none;
}

.button.is-loading,
.button.is-loading:hover,
.button[aria-busy="true"],
.button[aria-busy="true"]:hover {
  opacity: 1;
  filter: saturate(.92);
  box-shadow: none;
  transform: none;
}

.button-success:disabled,
.button-success:disabled:hover,
.button-success.is-loading,
.button-success.is-loading:hover,
.button-success[aria-busy="true"],
.button-success[aria-busy="true"]:hover {
  background: var(--success);
  color: #fff;
}

.button-light:disabled,
.button-light:disabled:hover,
.button-light.is-loading,
.button-light.is-loading:hover,
.button-light[aria-busy="true"],
.button-light[aria-busy="true"]:hover {
  background: #f7fbff;
  color: var(--ink);
  border-color: #bfd6ec;
}

.button-danger:disabled,
.button-danger:disabled:hover,
.button-danger.is-loading,
.button-danger.is-loading:hover,
.button-danger[aria-busy="true"],
.button-danger[aria-busy="true"]:hover {
  background: var(--danger);
  color: #fff;
}

.button-danger:disabled:hover {
  background: var(--danger);
}
.button svg, .nav-list svg, .mobile-nav svg, .icon-button svg { width: 18px; height: 18px; }

.muted-link { color: var(--blue); font-weight: 800; }

.app-shell { display: grid; grid-template-columns: 260px 1fr; min-height: 100vh; }
.sidebar {
  background: rgba(255,255,255,.86);
  border-right: 1px solid var(--line);
  padding: 26px 20px;
}
.brand { display: block; padding: 8px 8px 14px; }
.brand img { width: 170px; }
.brand .brand-roko {
  display: block;
  width: 150px;
  max-height: 132px;
  object-fit: contain;
  margin: 0 auto;
}
.brand .brand-portal {
  display: block;
  width: 178px;
  max-height: 150px;
  object-fit: contain;
  margin: 0 auto;
}

.sidebar-maker {
  display: grid;
  justify-items: center;
  gap: 8px;
  margin: 0 0 20px;
  padding: 0 12px 22px;
  border-bottom: 1px solid var(--line);
}

.sidebar-maker-logo {
  display: inline-flex;
  align-items: center;
}

.sidebar-maker-logo img {
  width: 118px;
  height: auto;
  max-height: none;
  object-fit: contain;
}

.sidebar-maker-about {
  color: #526783;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
  text-align: center;
}
.sidebar-maker-about:hover {
  color: var(--blue);
  text-decoration: underline;
}
.nav-list { display: grid; gap: 8px; padding-top: 20px; }
.nav-list-compact {
  gap: 5px;
  padding-top: 0;
}
.nav-list a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 14px;
  border-radius: 8px;
  color: var(--muted);
  font-weight: 900;
}
.nav-list a.is-active, .nav-list a:hover { color: #255a78; background: #edf4f8; }
.sidebar-eyebrow {
  margin: 24px 4px 10px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}
.super-company-nav {
  display: grid;
  gap: 6px;
  padding-top: 4px;
}
.sidebar-company-nav {
  padding-right: 0;
  margin-right: 0;
}
.sidebar-company-search {
  position: relative;
  margin: 0 0 8px;
}
.sidebar-company-search svg {
  position: absolute;
  left: 11px;
  top: 50%;
  width: 15px;
  height: 15px;
  color: #6c8198;
  transform: translateY(-50%);
  pointer-events: none;
}
.sidebar-company-search input {
  width: 100%;
  min-height: 38px;
  border: 1px solid #d9e6ef;
  border-radius: 8px;
  background: #fff;
  padding: 8px 11px 8px 34px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 800;
  outline: none;
}
.sidebar-company-search input:focus {
  border-color: #99bfdf;
  box-shadow: 0 0 0 3px rgba(11, 99, 199, .08);
}
.super-company-item {
  border: 1px solid #d9e6ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.super-company-item summary {
  display: grid;
  grid-template-columns: 17px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 10px 11px;
  cursor: pointer;
  color: #344d63;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
  list-style: none;
}
.super-company-item summary::-webkit-details-marker { display: none; }
.super-company-item summary span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.super-company-item[open] summary {
  color: #255a78;
  background: #edf4f8;
  border-radius: 8px 8px 0 0;
}
.super-company-links {
  display: grid;
  gap: 4px;
  margin: 0 0 8px 14px;
  padding: 6px 0 0 10px;
  border-top: 0;
  border-left: 2px solid #dce8f0;
}
.super-company-links a,
.super-company-empty {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 33px;
  border-radius: 7px;
  padding: 7px 8px;
  color: var(--muted);
  font-size: 12.5px;
  font-weight: 900;
  line-height: 1.2;
}
.super-company-links a:hover,
.super-company-links a.is-active {
  color: #255a78;
  background: #f5f8fb;
}
.super-company-links a.is-active {
  background: #edf4f8;
  box-shadow: inset 3px 0 0 #8ba9bd;
}
.sidebar-subsection {
  margin: 9px 6px 4px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}
.sidebar-module-group {
  border: 1px solid #d9e6ef;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.sidebar-module-group summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 9px 10px;
  color: #315d77;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
  cursor: pointer;
  list-style: none;
  background: #f6fafc;
}
.sidebar-module-group summary::-webkit-details-marker { display: none; }
.sidebar-module-label {
  min-width: 0;
  color: inherit;
  font-size: 12.5px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;
}
.sidebar-module-group > div {
  display: grid;
  gap: 3px;
  padding: 8px 10px 10px;
  border-top: 1px solid #e6eef6;
  background: #fff;
}
.sidebar-module-group[open] > summary {
  background: #edf4f8;
  border-radius: 8px 8px 0 0;
}
.sidebar-module-group a {
  min-height: 30px;
  padding: 6px 8px;
}
.super-company-links > .sidebar-module-group {
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}
.super-company-links > .sidebar-module-group > summary {
  min-height: 34px;
  padding: 7px 8px;
  border-radius: 8px;
  color: #52637a;
  background: transparent;
}
.super-company-links > .sidebar-module-group > summary:hover,
.super-company-links > .sidebar-module-group[open] > summary {
  color: #255a78;
  background: #edf4f8;
}
.super-company-links > .sidebar-module-group[open] > summary {
  box-shadow: inset 3px 0 0 #8ba9bd;
}
.super-company-links > .sidebar-module-group > div {
  gap: 2px;
  margin: 3px 0 5px 11px;
  padding: 3px 0 3px 9px;
  border-top: 0;
  border-left: 2px solid #dce8f0;
  background: transparent;
}
.super-company-links > .sidebar-module-group > div > a {
  min-height: 29px;
  padding: 5px 8px;
}
.sidebar-submodule-group {
  --submodule-accent: #5f819a;
  --submodule-bg: #f6f9fb;
  --submodule-bg-active: #edf4f8;
  --submodule-border: #d5e2eb;
  --submodule-line: #dce8f0;
  margin: 7px 0;
  border: 1px solid var(--submodule-border);
  border-radius: 8px;
  background: linear-gradient(180deg, var(--submodule-bg), #fff);
  box-shadow: 0 6px 18px rgba(8, 43, 84, .04);
  overflow: hidden;
}
.sidebar-submodule-group > summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 9px 10px;
  border-radius: 0;
  color: #40576a;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
  text-transform: none;
  cursor: pointer;
  list-style: none;
  background: rgba(255, 255, 255, .52);
}
.sidebar-submodule-group > summary > svg:first-child {
  color: var(--submodule-accent);
}
.sidebar-submodule-group > summary::-webkit-details-marker { display: none; }
.sidebar-submodule-group > summary span {
  min-width: 0;
  flex: 1;
}
.sidebar-submodule-group > summary:hover,
.sidebar-submodule-group.is-active > summary {
  color: #255a78;
  background: linear-gradient(180deg, var(--submodule-bg-active), rgba(255,255,255,.82));
}
.sidebar-submodule-group.is-active > summary {
  box-shadow: inset 4px 0 0 var(--submodule-accent);
}
.sidebar-submodule-basic {
  --submodule-accent: #5f819a;
  --submodule-bg: #f6f9fb;
  --submodule-bg-active: #edf4f8;
  --submodule-border: #d5e2eb;
  --submodule-line: #dce8f0;
}
.sidebar-submodule-sales {
  --submodule-accent: #527c8d;
  --submodule-bg: #f5f9fa;
  --submodule-bg-active: #eaf3f6;
  --submodule-border: #d2e4ea;
  --submodule-line: #d7e8ee;
}
.sidebar-submodule-hosting {
  --submodule-accent: #526f88;
  --submodule-bg: #f4f8fb;
  --submodule-bg-active: #e8f0f6;
  --submodule-border: #d2e0ea;
  --submodule-line: #d1e0ea;
}
.sidebar-submodule-chevron {
  width: 14px;
  height: 14px;
  margin-left: auto;
  transition: transform .15s ease;
}
.sidebar-submodule-group[open] > summary .sidebar-submodule-chevron {
  transform: rotate(180deg);
}
.sidebar-submodule-links {
  display: grid;
  gap: 3px;
  margin: 0 7px 8px 18px;
  padding: 7px 0 4px 12px;
  border-left: 2px solid var(--submodule-line);
  background: linear-gradient(90deg, rgba(255,255,255,.72), rgba(255,255,255,0));
}
.sidebar-submodule-links a {
  min-height: 34px;
  padding: 7px 9px;
  border-radius: 8px;
  color: #52637a;
  font-size: 12.5px;
  line-height: 1.2;
}
.sidebar-submodule-links a:hover,
.sidebar-submodule-links a.is-active {
  color: #255a78;
  background: #f6f9fb;
}
.sidebar-submodule-links a.is-active {
  background: #edf4f8;
  box-shadow: inset 3px 0 0 #8ba9bd, 0 6px 16px rgba(31, 63, 89, .05);
  font-weight: 950;
}
.super-company-links .sidebar-submodule-group {
  margin: 3px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.super-company-links .sidebar-submodule-group > summary {
  min-height: 34px;
  padding: 7px 8px;
  border-radius: 8px;
  background: transparent;
}
.super-company-links .sidebar-submodule-group > summary:hover,
.super-company-links .sidebar-submodule-group.is-active > summary {
  background: #edf4f8;
}
.super-company-links .sidebar-submodule-group.is-active > summary {
  box-shadow: inset 3px 0 0 var(--submodule-accent);
}
.super-company-links .sidebar-submodule-links {
  gap: 2px;
  margin: 2px 0 4px 10px;
  padding: 3px 0 3px 8px;
}
.super-company-links .sidebar-submodule-links a {
  min-height: 31px;
  padding: 6px 8px;
}
.company-module-link {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.72);
  padding: 9px 11px;
  color: var(--muted);
  font-weight: 900;
}
.company-module-link:hover {
  color: #255a78;
  background: #edf4f8;
}
.super-company-links .company-module-link {
  min-height: 33px;
  gap: 8px;
  padding: 7px 8px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #52637a;
}
.super-company-links .company-module-link:hover {
  color: #255a78;
  background: #edf4f8;
}
.super-company-links svg,
.super-company-item summary svg,
.sidebar-module-group summary svg,
.sidebar-module-group a svg,
.company-module-link svg {
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
}
.super-company-empty {
  color: #8aa0b8;
}
.sidebar-company-empty {
  margin: 8px 0 0;
  border: 1px dashed #cfe0ed;
  border-radius: 8px;
  padding: 10px;
  color: #6c8198;
  font-size: 12px;
  font-weight: 900;
  text-align: center;
}

.sidebar-admin-nav {
  margin-top: 16px;
  padding-top: 2px;
  border-top: 1px solid var(--line);
}
.sidebar-admin-summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  margin: 8px 0 6px;
  padding: 8px 9px;
  border-radius: 8px;
  color: var(--muted);
  cursor: pointer;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.2;
  list-style: none;
  text-transform: uppercase;
  transition: background-color .16s ease, color .16s ease;
}
.sidebar-admin-summary::-webkit-details-marker { display: none; }
.sidebar-admin-summary:hover,
.sidebar-admin-group[open] > .sidebar-admin-summary {
  color: #255a78;
  background: #edf4f8;
}
.sidebar-admin-summary svg {
  width: 14px;
  height: 14px;
  margin-left: auto;
  transition: transform .16s ease;
}
.sidebar-admin-group[open] > .sidebar-admin-summary svg {
  transform: rotate(180deg);
}
.sidebar-admin-group > .nav-list {
  margin-left: 9px;
  padding-left: 8px;
  border-left: 1px solid #d9e6ef;
}
.sidebar-admin-nav .sidebar-eyebrow {
  margin-top: 14px;
  margin-bottom: 8px;
  font-size: 10px;
}
.sidebar-admin-nav .nav-list {
  gap: 5px;
}
.sidebar-admin-nav .nav-list a {
  min-height: 34px;
  gap: 9px;
  padding: 8px 9px;
  border-radius: 8px;
  font-size: 12.5px;
  line-height: 1.2;
  color: #52637a;
}
.sidebar-admin-nav .nav-list a.is-active,
.sidebar-admin-nav .nav-list a:hover {
  color: #255a78;
  background: #edf4f8;
}
.sidebar-admin-nav .nav-list svg {
  width: 15px;
  height: 15px;
}

.sidebar .nav-list.nav-list-compact a {
  min-height: 34px;
  gap: 9px;
  padding: 8px 9px;
  border-radius: 8px;
  font-size: 12.5px;
  line-height: 1.2;
}

.sidebar .nav-list.nav-list-compact svg {
  width: 15px;
  height: 15px;
}

.main { padding: 38px 36px 96px; }
.topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  background: rgba(255,255,255,.82);
  padding: 24px 28px;
  border-radius: 8px;
  margin-bottom: 26px;
}
.topbar-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.topbar-title {
  display: flex;
  align-items: center;
  min-width: 0;
}
.eyebrow { margin: 0 0 10px; color: var(--blue); font-size: 13px; font-weight: 900; letter-spacing: .04em; }
.pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 8px 13px;
  background: #fff;
  color: var(--blue-dark);
  font-weight: 900;
  font-size: 13px;
}

.date-picker-field {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px;
  align-items: center;
}
.date-picker-field [data-hr-date-display] {
  grid-column: 1 / -1;
  padding-right: 54px;
  cursor: text;
}
.date-picker-field [data-hr-date-picker] {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 48px;
  height: 48px;
  opacity: 0;
  pointer-events: none;
}
.icon-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--blue-dark);
  cursor: pointer;
}
.date-picker-button {
  position: absolute;
  right: 6px;
  bottom: 6px;
  min-width: 36px;
  min-height: 36px;
  background: #f8fbff;
}
.date-picker-button:hover {
  color: var(--blue);
  background: #eaf4ff;
}

.unit-list {
  display: grid;
  gap: 12px;
}
.unit-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 18px 42px rgba(8,40,74,.06);
  overflow: hidden;
}
.unit-card summary {
  display: grid;
  grid-template-columns: minmax(210px, 1.35fr) minmax(180px, 1.4fr) minmax(90px, .6fr) minmax(100px, .7fr) auto;
  align-items: center;
  gap: 16px;
  min-height: 64px;
  padding: 16px 18px;
  cursor: pointer;
  list-style: none;
}
.unit-card summary::-webkit-details-marker { display: none; }
.unit-card[open] summary {
  border-bottom: 1px solid var(--line);
  background: #f8fbff;
}
.unit-title {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.unit-card-body {
  display: grid;
  gap: 16px;
  padding: 18px;
}
.info-panel {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 16px;
}
.unit-settings-form {
  display: grid;
  gap: 16px;
}
.unit-basic-panel {
  background: #fbf7ff;
  border-color: #e4d4ff;
}
.amenity-panel {
  background: #f0fff6;
  border-color: #b8efd0;
}
.booking-panel {
  background: #fff9e8;
  border-color: #f6d574;
}
.grid-5 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}
.price-panel {
  background: #f1f7ff;
  border-color: #cfe2ff;
}
.compact-definition {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
}
.compact-definition dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.compact-definition dd {
  margin: 4px 0 0;
  font-weight: 800;
}
.price-season-list {
  display: grid;
  gap: 8px;
}
.price-season-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  min-height: 58px;
  padding: 12px 14px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
}
.price-season-row span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 5px;
  color: var(--muted);
  font-size: 12px;
}
.price-season-row svg {
  width: 14px;
  height: 14px;
}
.price-season-row > strong:last-child {
  color: var(--blue);
  white-space: nowrap;
}
.price-editor {
  display: grid;
  gap: 8px;
}
.price-editor-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
}
.price-season-list.editable {
  gap: 10px;
}
.price-season-row.editable {
  display: grid;
  grid-template-columns: 42px minmax(70px, .55fr) minmax(120px, .9fr) minmax(120px, .9fr) minmax(100px, .65fr) 42px;
  align-items: end;
}
.price-season-row.editable .field {
  margin: 0;
}
.price-season-row.editable input {
  min-height: 40px;
}
.drag-handle {
  align-self: center;
  cursor: grab;
  color: var(--muted);
}
.price-season-row.is-dragging {
  opacity: .55;
  outline: 2px dashed var(--blue);
}
.icon-button.danger {
  align-self: center;
  color: #e03131;
}
.guest-pricing-panel {
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.guest-pricing-panel summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px;
  cursor: pointer;
  list-style: none;
  background: #f7fbff;
}
.guest-pricing-panel summary::-webkit-details-marker {
  display: none;
}
.guest-pricing-panel summary span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 900;
}
.guest-pricing-panel summary svg {
  width: 18px;
  height: 18px;
  color: var(--blue);
}
.guest-pricing-panel summary small {
  color: var(--muted);
  font-weight: 800;
}
.guest-pricing-content {
  display: grid;
  gap: 16px;
  padding: 18px;
}
.guest-pricing-intro {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.guest-pricing-intro strong {
  display: block;
  margin-bottom: 4px;
}
.guest-pricing-chip {
  min-width: 180px;
  padding: 12px 14px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
  text-align: right;
}
.guest-pricing-chip span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.guest-pricing-chip strong {
  margin: 4px 0 0;
  font-size: 18px;
}
.guest-pricing-fields {
  gap: 12px;
}
.guest-addon-switches {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.guest-addon-switches .checkbox-line {
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
  padding: 12px 14px;
}
.guest-addon-panel {
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
}
.guest-addon-panel[hidden] {
  display: none;
}
.guest-occupancy-table {
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  overflow: hidden;
}
.guest-occupancy-head,
.guest-occupancy-row {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) 120px;
  align-items: center;
  gap: 14px;
  padding: 12px 16px;
}
.guest-occupancy-head {
  background: #f3f7fb;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.guest-occupancy-row {
  border-top: 1px solid #edf2f7;
  background: #fff;
}
.guest-occupancy-row.is-standard {
  background: #f8fafc;
}
.guest-occupancy-row strong,
.guest-occupancy-row span,
.guest-occupancy-row em {
  min-width: 0;
}
.guest-occupancy-row span {
  color: #243447;
}
.guest-occupancy-row em {
  justify-self: end;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eef5ff;
  color: var(--blue);
  font-style: normal;
  font-weight: 900;
  font-size: 12px;
}
.finance-invoice-builder {
  display: none;
}
.finance-invoice-search,
.finance-invoice-create {
  display: grid;
  gap: 14px;
}
.finance-workspace > .finance-panel:nth-of-type(2) {
  display: none;
}
.finance-workspace {
  grid-template-columns: minmax(0, 1fr) !important;
}
.finance-unit-label {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr);
  column-gap: 10px;
  row-gap: 2px;
  align-items: center;
}
.finance-unit-dot {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--blue), #07a6d8);
  box-shadow: 0 0 0 4px #eaf4ff;
}
.finance-bar-row:nth-child(2n) .finance-unit-dot {
  background: linear-gradient(135deg, #0ea5a3, #22c55e);
  box-shadow: 0 0 0 4px #e8fbf4;
}
.finance-bar-row:nth-child(3n) .finance-unit-dot {
  background: linear-gradient(135deg, #f59e0b, #ef4444);
  box-shadow: 0 0 0 4px #fff4e5;
}
.finance-bar-row:nth-child(4n) .finance-unit-dot {
  background: linear-gradient(135deg, #7c3aed, #2563eb);
  box-shadow: 0 0 0 4px #f0edff;
}
.finance-unit-label strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.finance-unit-label small {
  grid-column: 2;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.invoice-step-heading {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 16px;
}
.invoice-step-heading > span {
  display: inline-flex;
  width: 32px;
  height: 32px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--blue);
  color: #fff;
  font-weight: 900;
}
.invoice-step-heading h3 {
  margin: 0;
}
.invoice-step-heading p {
  margin: 4px 0 0;
  color: var(--muted);
  font-weight: 800;
}
.finance-table tbody td:first-child strong {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.finance-table tbody td:first-child strong::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--blue), #07a6d8);
  box-shadow: 0 0 0 4px #eaf4ff;
}
.finance-table tbody tr:nth-child(2n) td:first-child strong::before {
  background: linear-gradient(135deg, #0ea5a3, #22c55e);
  box-shadow: 0 0 0 4px #e8fbf4;
}
.finance-table tbody tr:nth-child(3n) td:first-child strong::before {
  background: linear-gradient(135deg, #f59e0b, #ef4444);
  box-shadow: 0 0 0 4px #fff4e5;
}
.finance-table tbody tr:nth-child(4n) td:first-child strong::before {
  background: linear-gradient(135deg, #7c3aed, #2563eb);
  box-shadow: 0 0 0 4px #f0edff;
}
.invoice-date-note {
  align-self: end;
  min-height: 58px;
  padding: 12px 14px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}
.invoice-date-note span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.invoice-date-note strong {
  display: block;
  margin-top: 4px;
}
.invoice-quick-filter-row {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto auto;
  gap: 12px;
  align-items: end;
}
.invoice-more-filters {
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}
.invoice-more-filters summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 14px;
  cursor: pointer;
  color: var(--blue);
  font-weight: 900;
  list-style: none;
}
.invoice-more-filters summary::-webkit-details-marker {
  display: none;
}
.invoice-more-filters summary svg {
  width: 18px;
  height: 18px;
}
.invoice-more-filters .grid {
  padding: 0 14px 14px;
}
.invoice-more-filters .document-filter-grid > .button {
  display: none;
}
.invoice-reservation-summary {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: fit-content;
  margin-bottom: 12px;
  padding: 8px 12px;
  border: 1px solid #d8e6fb;
  border-radius: 999px;
  background: #f8fbff;
  color: var(--muted);
  font-weight: 900;
}
.invoice-reservation-summary strong {
  color: var(--blue);
  font-size: 17px;
}
.invoice-reservation-list {
  display: grid;
  gap: 10px;
  max-height: min(54vh, 620px);
  overflow: auto;
  padding: 2px 4px 2px 2px;
}
.invoice-reservation-option {
  position: relative;
  display: grid;
  grid-template-columns: minmax(190px, 1.1fr) minmax(260px, 1.45fr) minmax(130px, auto);
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease, transform .16s ease;
}
.invoice-reservation-option:hover {
  border-color: #a9c9f4;
  background: #f8fbff;
  box-shadow: 0 12px 26px rgba(13, 43, 76, .08);
  transform: translateY(-1px);
}
.invoice-reservation-option.is-selected {
  border-color: var(--blue);
  background: linear-gradient(180deg, #f6fbff, #fff);
  box-shadow: 0 0 0 3px #dcecff;
}
.invoice-reservation-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.invoice-reservation-main strong,
.invoice-reservation-main small {
  display: block;
  min-width: 0;
}
.invoice-reservation-main strong {
  font-size: 18px;
  line-height: 1.15;
}
.invoice-reservation-main small {
  margin-top: 5px;
  color: var(--muted);
  font-weight: 900;
}
.invoice-reservation-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
  color: #243447;
  font-size: 13px;
  font-weight: 800;
}
.invoice-reservation-meta span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
}
.invoice-reservation-meta svg {
  width: 16px;
  height: 16px;
  color: var(--muted);
  flex: 0 0 auto;
}
.invoice-reservation-side {
  display: grid;
  gap: 7px;
  justify-items: end;
  text-align: right;
}
.invoice-reservation-side strong {
  font-size: 18px;
}
.invoice-reservation-status {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: 999px;
  background: #edf6ff;
  color: var(--blue);
  font-style: normal;
  font-size: 12px;
  font-weight: 900;
}
.invoice-reservation-status.is-finished {
  background: #ecfdf3;
  color: #047857;
}
.invoice-reservation-status.is-active {
  background: #fff7ed;
  color: #c2410c;
}
.invoice-reservation-status.is-upcoming {
  background: #eef5ff;
  color: var(--blue);
}
.invoice-live-empty {
  margin-top: 2px;
}
.account-pill:hover { color: var(--blue); background: #f5f9fc; }
.account-pill svg { width: 17px; height: 17px; }

.grid { display: grid; gap: 16px; }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.card, .stat-card, .table-card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
}
.card { padding: 22px; }
.stat-card { padding: 18px; display: flex; gap: 14px; align-items: center; min-height: 96px; }
.icon-box {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 8px;
  background: #edf6ff;
  color: var(--blue);
  flex: 0 0 auto;
}
.stat-card strong { display: block; font-size: 24px; line-height: 1.05; }
.stat-card span, .card-subtitle { color: var(--muted); font-size: 13px; font-weight: 800; text-transform: uppercase; }

.table-card {
  overflow: auto;
  box-shadow: var(--soft-shadow);
}
table { width: 100%; border-collapse: collapse; min-width: 680px; }
th, td { padding: 15px 16px; text-align: left; border-bottom: 1px solid var(--line); }
th {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  background: #fbfdff;
}
tbody tr:last-child td { border-bottom: 0; }
td.actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }

.company-create-section {
  display: grid;
  gap: 14px;
  margin-bottom: 22px;
}
.company-create-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 18px 22px;
}
.company-create-head h2 {
  margin: 0 0 4px;
  font-size: 24px;
}
.company-create-body {
  display: grid;
}
.company-create-body[hidden] {
  display: none;
}

.demo-company-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 22px;
  border: 1px solid #bfdbfe;
  border-left: 5px solid #0b63c7;
  border-radius: 8px;
  background: linear-gradient(90deg, #eff6ff 0%, #fff 42%, #fff 100%);
  box-shadow: var(--shadow);
  padding: 18px 20px;
}
.demo-company-main {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  min-width: 0;
}
.demo-company-icon {
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 8px;
  background: #dbeafe;
  color: #0b63c7;
}
.demo-company-card h2 {
  margin: 0 0 6px;
  font-size: 24px;
}
.demo-company-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.demo-company-stats span,
.demo-company-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: #eff6ff;
  color: #075bb8;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 900;
}
.demo-company-badge {
  margin: 0 0 6px;
}
.demo-company-badge svg {
  width: 14px;
  height: 14px;
}
.demo-company-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
  flex: 0 0 auto;
}
.demo-company-actions form {
  margin: 0;
}
.demo-company-warning {
  display: inline-flex;
  align-items: center;
  max-width: 360px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff7ed;
  color: #9a3412;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.35;
}
.company-card.is-demo-company {
  border-color: #bfdbfe;
}

.company-list {
  display: grid;
  gap: 16px;
}
.company-card {
  display: grid;
  gap: 18px;
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 18px;
}
.company-card.is-readonly input,
.company-card.is-readonly textarea,
.company-card.is-readonly select {
  color: var(--ink);
  background: #f8fbfd;
  border-color: transparent;
  pointer-events: none;
}
.company-card.is-editing {
  border-color: #a9cff7;
  box-shadow: 0 18px 45px rgba(11, 99, 199, .12);
}
.company-card.is-editing input,
.company-card.is-editing textarea,
.company-card.is-editing select {
  background: #fff;
}
.company-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 14px;
}
.company-card-head h3 {
  margin: 0 0 4px;
  font-size: 22px;
}
.company-row-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.company-row-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border: 1px solid #d9e8f7;
  border-radius: 999px;
  background: #f7fbff;
  padding: 4px 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.company-deactivation-note {
  display: grid;
  gap: 4px;
  max-width: 760px;
  margin-top: 12px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff7ed;
  padding: 10px 12px;
  color: #7c2d12;
  font-size: 13px;
  line-height: 1.45;
}
.company-deactivation-note strong {
  color: #9a3412;
}
.company-deactivation-note span {
  color: #7c2d12;
}
.company-filter-card {
  margin-bottom: 16px;
}
.company-filter-primary.unified-filter-row {
  grid-template-columns: minmax(320px, 1fr) minmax(150px, auto) minmax(130px, auto) minmax(120px, auto);
}
@media (max-width: 900px) {
  body .document-drawer-shell.report-preview-shell .report-preview-head-top {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  body .document-drawer-shell.report-preview-shell .report-preview-title {
    white-space: normal !important;
  }

  body .document-drawer-shell.report-preview-shell .report-preview-actions,
  body .document-drawer-shell.report-preview-shell .report-preview-actions .action-row,
  body .document-drawer-shell.report-preview-shell .report-preview-actions .button {
    width: 100% !important;
  }

  body .document-drawer-shell.report-preview-shell .report-preview-actions {
    align-items: stretch !important;
  }

  .demo-company-card,
  .demo-company-main,
  .demo-company-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .demo-company-actions .button,
  .demo-company-actions form {
    width: 100%;
  }
  .company-filter-primary.unified-filter-row {
    grid-template-columns: 1fr;
  }
}

/* Roko final offer template v1.3.421.
   This is intentionally the last shared layer for Hosting and Poslovanje offers.
   It beats the older absolute-positioned A4 experiments and keeps the document
   in normal flow so long item tables push the lower sections downward. */
body .document-drawer-shell .document-page.document-page-a4.invoice-page-a4.hosting-offer-page,
body .print-window-wrap .document-page.document-page-a4.invoice-page-a4.hosting-offer-page,
body.print-document-only #print-document-host .document-page.document-page-a4.invoice-page-a4.hosting-offer-page,
body .document-drawer-shell .document-page.roko-offer-a4,
body .business-offer-print-area .document-page.roko-offer-a4,
body .print-window-wrap .document-page.roko-offer-a4,
body.print-document-only #print-document-host .document-page.roko-offer-a4 {
  box-sizing: border-box !important;
  position: relative !important;
  display: block !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 17mm 17mm 12mm !important;
  overflow: visible !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.32 !important;
}

body .document-drawer-shell .invoice-page-a4.hosting-offer-page *,
body .document-drawer-shell .document-page.roko-offer-a4 *,
body .print-window-wrap .invoice-page-a4.hosting-offer-page *,
body .print-window-wrap .document-page.roko-offer-a4 *,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page *,
body.print-document-only #print-document-host .document-page.roko-offer-a4 * {
  box-sizing: border-box !important;
}

body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-head-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-logo-box,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-company-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-title-row-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-title-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-title-row-a4 h2,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-date-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-info-row-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-items,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-bottom-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-stay-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code,
body .document-drawer-shell .invoice-page-a4.hosting-offer-page .document-footer-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-head-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-logo-box,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-company-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-title-row-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-title-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-title-row-a4 h2,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-date-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-info-row-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-items,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-bottom-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-stay-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code,
body .print-window-wrap .invoice-page-a4.hosting-offer-page .document-footer-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-head-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-logo-box,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-title-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-title-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-title-row-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-items,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-bottom-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-footer-a4,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-head,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-logo,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-company,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-buyer-row,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-buyer,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-title-row,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-title,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-title h2,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-date,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-meta,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-items,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-valid,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-section,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-payment,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-payment-data,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-barcode,
body .document-drawer-shell .document-page.roko-offer-a4 .roko-offer-footer,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-head,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-logo,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-company,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-buyer-row,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-buyer,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-title-row,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-title,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-title h2,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-date,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-meta,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-items,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-valid,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-section,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-payment,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-payment-data,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-barcode,
body .business-offer-print-area .document-page.roko-offer-a4 .roko-offer-footer,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-head,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-logo,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-company,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-buyer-row,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-buyer,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-title-row,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-title,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-title h2,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-date,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-meta,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-items,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-valid,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-section,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-payment,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-payment-data,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-barcode,
body .print-window-wrap .document-page.roko-offer-a4 .roko-offer-footer,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-head,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-logo,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-company,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-buyer-row,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-buyer,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-title-row,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-title,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-title h2,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-date,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-meta,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-items,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-valid,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-section,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-payment,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-payment-data,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-barcode,
body.print-document-only #print-document-host .document-page.roko-offer-a4 .roko-offer-footer {
  position: static !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  width: auto !important;
  max-width: none !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
  float: none !important;
  overflow: visible !important;
  z-index: auto !important;
}

body .invoice-page-a4.hosting-offer-page .document-head-a4,
body .document-page.roko-offer-a4 .roko-offer-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 66mm !important;
  align-items: start !important;
  gap: 16mm !important;
  min-height: 45mm !important;
  margin: 0 0 16mm !important;
  padding: 0 !important;
  width: 100% !important;
}

body .invoice-page-a4.hosting-offer-page .document-logo-box,
body .document-page.roko-offer-a4 .roko-offer-logo {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

body .invoice-page-a4.hosting-offer-page .document-logo,
body .document-page.roko-offer-a4 .roko-offer-logo-image {
  display: block !important;
  width: 62mm !important;
  max-width: 62mm !important;
  max-height: 32mm !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: left top !important;
}

body .invoice-page-a4.hosting-offer-page .document-company-a4,
body .document-page.roko-offer-a4 .roko-offer-company {
  display: block !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

body .invoice-page-a4.hosting-offer-page .document-company-a4 strong,
body .document-page.roko-offer-a4 .roko-offer-company strong {
  display: block !important;
  margin: 0 0 1.4mm !important;
  padding-bottom: 1mm !important;
  border-bottom: .18mm solid #b8c0ca !important;
  color: #000 !important;
  font-size: 10.5pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body .invoice-page-a4.hosting-offer-page .document-company-a4 span,
body .document-page.roko-offer-a4 .roko-offer-company span {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

body .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
body .document-page.roko-offer-a4 .roko-offer-buyer-row {
  display: block !important;
  clear: both !important;
  width: 100% !important;
  min-height: 24mm !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}

body .invoice-page-a4.hosting-offer-page .document-buyer-a4,
body .document-page.roko-offer-a4 .roko-offer-buyer {
  display: block !important;
  width: 78mm !important;
  max-width: 78mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}

body .invoice-page-a4.hosting-offer-page .document-buyer-a4 > span,
body .invoice-page-a4.hosting-offer-page .document-label,
body .document-page.roko-offer-a4 .roko-offer-label {
  display: block !important;
  width: 52mm !important;
  margin: 0 0 1.4mm !important;
  padding-bottom: .8mm !important;
  border-bottom: .18mm solid #b8c0ca !important;
  color: #000 !important;
  font-size: 6.4pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body .invoice-page-a4.hosting-offer-page .document-buyer-a4 strong,
body .document-page.roko-offer-a4 .roko-offer-buyer strong {
  display: block !important;
  margin: 0 0 .7mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

body .invoice-page-a4.hosting-offer-page .document-buyer-a4 p,
body .document-page.roko-offer-a4 .roko-offer-buyer p {
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

body .invoice-page-a4.hosting-offer-page .document-title-row-a4,
body .document-page.roko-offer-a4 .roko-offer-title-row {
  display: grid !important;
  clear: both !important;
  grid-template-columns: minmax(0, 1fr) 42mm !important;
  gap: 12mm !important;
  align-items: end !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}

body .invoice-page-a4.hosting-offer-page .document-title-a4 h2,
body .invoice-page-a4.hosting-offer-page .document-title-row-a4 h2,
body .document-page.roko-offer-a4 .roko-offer-title h2 {
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 16pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

body .invoice-page-a4.hosting-offer-page .document-date-a4,
body .document-page.roko-offer-a4 .roko-offer-date {
  display: block !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  text-align: left !important;
}

body .invoice-page-a4.hosting-offer-page .document-date-a4 strong,
body .document-page.roko-offer-a4 .roko-offer-date strong {
  display: block !important;
  margin-top: .8mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

body .invoice-page-a4.hosting-offer-page .document-info-row-a4,
body .document-page.roko-offer-a4 .roko-offer-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 3mm 11mm !important;
  width: 100% !important;
  margin: 0 0 5mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  white-space: normal !important;
}

body .invoice-page-a4.hosting-offer-page .document-info-row-a4 span,
body .invoice-page-a4.hosting-offer-page .document-info-row-a4 strong,
body .document-page.roko-offer-a4 .roko-offer-meta span,
body .document-page.roko-offer-a4 .roko-offer-meta strong {
  display: inline !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.2 !important;
}

body .invoice-page-a4.hosting-offer-page .document-items,
body .document-page.roko-offer-a4 .roko-offer-items {
  display: table !important;
  width: 100% !important;
  margin: 0 0 7mm !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  border-top: .28mm solid #000 !important;
  color: #000 !important;
  font-size: 7.25pt !important;
  line-height: 1.22 !important;
}

body .invoice-page-a4.hosting-offer-page .document-items th,
body .invoice-page-a4.hosting-offer-page .document-items td,
body .document-page.roko-offer-a4 .roko-offer-items th,
body .document-page.roko-offer-a4 .roko-offer-items td {
  padding: 1.25mm .9mm !important;
  color: #000 !important;
  font-size: 7.25pt !important;
  line-height: 1.22 !important;
  vertical-align: top !important;
}

body .invoice-page-a4.hosting-offer-page .document-items th,
body .document-page.roko-offer-a4 .roko-offer-items th {
  background: #eef1f4 !important;
  border-bottom: .28mm solid #000 !important;
  font-size: 6.55pt !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body .invoice-page-a4.hosting-offer-page .document-items td,
body .document-page.roko-offer-a4 .roko-offer-items td {
  border-bottom: .18mm solid #d6dce3 !important;
}

body .invoice-page-a4.hosting-offer-page .document-items tbody tr:last-child td,
body .document-page.roko-offer-a4 .roko-offer-items tbody tr:last-child td {
  border-bottom: .28mm solid #000 !important;
}

body .invoice-page-a4.hosting-offer-page .document-items tfoot td,
body .document-page.roko-offer-a4 .roko-offer-items tfoot td {
  padding: 1.6mm .9mm 0 !important;
  border: 0 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body .invoice-page-a4.hosting-offer-page .document-items th:nth-child(1),
body .invoice-page-a4.hosting-offer-page .document-items td:nth-child(1),
body .document-page.roko-offer-a4 .roko-offer-items th:nth-child(1),
body .document-page.roko-offer-a4 .roko-offer-items td:nth-child(1) { width: 7% !important; text-align: center !important; }
body .invoice-page-a4.hosting-offer-page .document-items th:nth-child(2),
body .invoice-page-a4.hosting-offer-page .document-items td:nth-child(2),
body .document-page.roko-offer-a4 .roko-offer-items th:nth-child(2),
body .document-page.roko-offer-a4 .roko-offer-items td:nth-child(2) { width: 43% !important; text-align: left !important; white-space: normal !important; }
body .invoice-page-a4.hosting-offer-page .document-items th:nth-child(3),
body .invoice-page-a4.hosting-offer-page .document-items td:nth-child(3),
body .document-page.roko-offer-a4 .roko-offer-items th:nth-child(3),
body .document-page.roko-offer-a4 .roko-offer-items td:nth-child(3) { width: 8% !important; text-align: center !important; }
body .invoice-page-a4.hosting-offer-page .document-items th:nth-child(4),
body .invoice-page-a4.hosting-offer-page .document-items td:nth-child(4),
body .document-page.roko-offer-a4 .roko-offer-items th:nth-child(4),
body .document-page.roko-offer-a4 .roko-offer-items td:nth-child(4) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
body .invoice-page-a4.hosting-offer-page .document-items th:nth-child(5),
body .invoice-page-a4.hosting-offer-page .document-items td:nth-child(5),
body .document-page.roko-offer-a4 .roko-offer-items th:nth-child(5),
body .document-page.roko-offer-a4 .roko-offer-items td:nth-child(5) { width: 12% !important; text-align: right !important; white-space: nowrap !important; }
body .invoice-page-a4.hosting-offer-page .document-items th:nth-child(6),
body .invoice-page-a4.hosting-offer-page .document-items td:nth-child(6),
body .document-page.roko-offer-a4 .roko-offer-items th:nth-child(6),
body .document-page.roko-offer-a4 .roko-offer-items td:nth-child(6) { width: 9% !important; text-align: right !important; white-space: nowrap !important; }
body .invoice-page-a4.hosting-offer-page .document-items th:nth-child(7),
body .invoice-page-a4.hosting-offer-page .document-items td:nth-child(7),
body .document-page.roko-offer-a4 .roko-offer-items th:nth-child(7),
body .document-page.roko-offer-a4 .roko-offer-items td:nth-child(7) { width: 11% !important; text-align: right !important; white-space: nowrap !important; font-weight: 900 !important; }

body .invoice-page-a4.hosting-offer-page .document-summary-a4 {
  display: none !important;
}

body .invoice-page-a4.hosting-offer-page .document-bottom-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body .invoice-page-a4.hosting-offer-page .document-stay-a4,
body .document-page.roko-offer-a4 .roko-offer-valid {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

body .invoice-page-a4.hosting-offer-page .document-stay-a4 p,
body .document-page.roko-offer-a4 .roko-offer-valid {
  margin-top: 0 !important;
}

body .invoice-page-a4.hosting-offer-page .document-stay-a4 span,
body .document-page.roko-offer-a4 .roko-offer-valid span {
  margin-left: 2mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body .invoice-page-a4.hosting-offer-page .document-note-a4,
body .document-page.roko-offer-a4 .roko-offer-section {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

body .invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
body .invoice-page-a4.hosting-offer-page .document-note-a4 h4,
body .invoice-page-a4.hosting-offer-page .document-note-a4 strong,
body .document-page.roko-offer-a4 .roko-offer-section-title,
body .document-page.roko-offer-a4 .roko-offer-payment-title {
  display: block !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 8.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
}

body .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p,
body .invoice-page-a4.hosting-offer-page .document-note-a4 p,
body .document-page.roko-offer-a4 .roko-offer-section p {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 1.35mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: pre-line !important;
}

body .invoice-page-a4.hosting-offer-page .document-payment-a4,
body .document-page.roko-offer-a4 .roko-offer-payment {
  display: grid !important;
  grid-template-columns: minmax(0, 78mm) 82mm !important;
  gap: 14mm !important;
  justify-content: space-between !important;
  align-items: start !important;
  width: 100% !important;
  margin: 2mm 0 13mm !important;
  padding: 0 !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

body .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body .document-page.roko-offer-a4 .roko-offer-payment-data {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

body .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
body .document-page.roko-offer-a4 .roko-offer-payment-row {
  display: grid !important;
  grid-template-columns: 23mm minmax(0, 1fr) !important;
  gap: 4mm !important;
  margin: 0 0 2.1mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

body .invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
body .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
body .document-page.roko-offer-a4 .roko-offer-payment-row span,
body .document-page.roko-offer-a4 .roko-offer-payment-row strong {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

body .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
body .document-page.roko-offer-a4 .roko-offer-payment-row strong {
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

body .invoice-page-a4.hosting-offer-page .payment-code,
body .document-page.roko-offer-a4 .roko-offer-barcode {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .invoice-page-a4.hosting-offer-page .payment-code-title-a4,
body .invoice-page-a4.hosting-offer-page .payment-code span,
body .invoice-page-a4.hosting-offer-page .payment-code small,
body .invoice-page-a4.hosting-offer-page .payment-code .muted {
  display: none !important;
}

body .invoice-page-a4.hosting-offer-page .payment-code-image,
body .document-page.roko-offer-a4 .roko-offer-barcode-image {
  display: block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

body .invoice-page-a4.hosting-offer-page .document-footer-a4,
body .document-page.roko-offer-a4 .roko-offer-footer {
  display: block !important;
  width: 100% !important;
  margin: 13mm 0 0 !important;
  padding: 2.5mm 0 0 !important;
  border-top: .18mm solid #000 !important;
  color: #555 !important;
  text-align: center !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

@media print {
  body.print-window,
  body.print-document-only {
    background: #fff !important;
    overflow: visible !important;
  }

  body .print-window-wrap,
  body.print-document-only #print-document-host {
    position: static !important;
    inset: auto !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }
}

/* Roko canonical A4 offer print layout - final shared layer for Hosting and Poslovanje. */
.document-page.roko-offer-a4,
.document-drawer-shell .document-page.roko-offer-a4,
.business-offer-print-area .document-page.roko-offer-a4,
.print-window-wrap .document-page.roko-offer-a4,
body.print-document-only #print-document-host .document-page.roko-offer-a4,
.invoice-page-a4.hosting-offer-page,
.document-drawer-shell .invoice-page-a4.hosting-offer-page,
.print-window-wrap .invoice-page-a4.hosting-offer-page,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 18mm 17mm 12mm !important;
  position: relative !important;
  display: block !important;
  overflow: visible !important;
  background: #fff !important;
  color: #000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.34 !important;
  box-shadow: none !important;
  border: 0 !important;
  border-radius: 0 !important;
}

.document-page.roko-offer-a4 *,
.document-page.roko-offer-a4 *::before,
.document-page.roko-offer-a4 *::after,
.invoice-page-a4.hosting-offer-page *,
.invoice-page-a4.hosting-offer-page *::before,
.invoice-page-a4.hosting-offer-page *::after {
  box-sizing: border-box !important;
}

.invoice-page-a4.hosting-offer-page .document-logo-box,
.invoice-page-a4.hosting-offer-page .document-company-a4,
.invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.invoice-page-a4.hosting-offer-page .document-buyer-a4,
.invoice-page-a4.hosting-offer-page .document-title-row-a4,
.invoice-page-a4.hosting-offer-page .document-title-a4,
.invoice-page-a4.hosting-offer-page .document-date-a4,
.invoice-page-a4.hosting-offer-page .document-info-row-a4,
.invoice-page-a4.hosting-offer-page .document-items,
.invoice-page-a4.hosting-offer-page .document-bottom-a4,
.invoice-page-a4.hosting-offer-page .document-stay-a4,
.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.invoice-page-a4.hosting-offer-page .document-note-a4,
.invoice-page-a4.hosting-offer-page .document-payment-a4,
.invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.invoice-page-a4.hosting-offer-page .payment-code,
.invoice-page-a4.hosting-offer-page .document-footer-a4,
.roko-offer-a4 .roko-offer-head,
.roko-offer-a4 .roko-offer-logo,
.roko-offer-a4 .roko-offer-company,
.roko-offer-a4 .roko-offer-buyer-row,
.roko-offer-a4 .roko-offer-buyer,
.roko-offer-a4 .roko-offer-title-row,
.roko-offer-a4 .roko-offer-title,
.roko-offer-a4 .roko-offer-date,
.roko-offer-a4 .roko-offer-meta,
.roko-offer-a4 .roko-offer-items,
.roko-offer-a4 .roko-offer-valid,
.roko-offer-a4 .roko-offer-section,
.roko-offer-a4 .roko-offer-payment,
.roko-offer-a4 .roko-offer-payment-data,
.roko-offer-a4 .roko-offer-barcode,
.roko-offer-a4 .roko-offer-footer {
  position: static !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  width: auto !important;
  max-width: none !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
  overflow: visible !important;
  z-index: auto !important;
}

.invoice-page-a4.hosting-offer-page .document-head-a4,
.roko-offer-a4 .roko-offer-head {
  position: static !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 67mm !important;
  align-items: start !important;
  gap: 17mm !important;
  min-height: 48mm !important;
  margin: 0 0 13mm !important;
  padding: 0 !important;
  width: 100% !important;
  overflow: visible !important;
}

.invoice-page-a4.hosting-offer-page .document-logo-box,
.roko-offer-a4 .roko-offer-logo {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

.invoice-page-a4.hosting-offer-page .document-logo,
.roko-offer-a4 .roko-offer-logo-image {
  display: block !important;
  width: 64mm !important;
  max-width: 64mm !important;
  max-height: 34mm !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: left top !important;
}

.invoice-page-a4.hosting-offer-page .document-company-a4,
.roko-offer-a4 .roko-offer-company {
  display: block !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4.hosting-offer-page .document-company-a4 strong,
.roko-offer-a4 .roko-offer-company strong {
  display: block !important;
  margin: 0 0 1.4mm !important;
  padding-bottom: 1mm !important;
  border-bottom: .18mm solid #b8c0ca !important;
  color: #000 !important;
  font-size: 10.8pt !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
}

.invoice-page-a4.hosting-offer-page .document-company-a4 span,
.roko-offer-a4 .roko-offer-company span {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.roko-offer-a4 .roko-offer-buyer-row {
  display: block !important;
  width: 100% !important;
  min-height: 27mm !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-a4,
.roko-offer-a4 .roko-offer-buyer {
  display: block !important;
  width: 78mm !important;
  max-width: 78mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-a4 > span,
.invoice-page-a4.hosting-offer-page .document-label,
.roko-offer-a4 .roko-offer-label {
  display: block !important;
  width: 52mm !important;
  margin: 0 0 1.4mm !important;
  padding-bottom: .8mm !important;
  border-bottom: .18mm solid #b8c0ca !important;
  color: #000 !important;
  font-size: 6.4pt !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-a4 strong,
.roko-offer-a4 .roko-offer-buyer strong {
  display: block !important;
  margin: 0 0 .7mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-a4 p,
.roko-offer-a4 .roko-offer-buyer p {
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4.hosting-offer-page .document-title-row-a4,
.roko-offer-a4 .roko-offer-title-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 42mm !important;
  align-items: end !important;
  gap: 12mm !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}

.invoice-page-a4.hosting-offer-page .document-title-a4 h2,
.invoice-page-a4.hosting-offer-page .document-title-row-a4 h2,
.roko-offer-a4 .roko-offer-title h2 {
  position: static !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 16pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .document-date-a4,
.roko-offer-a4 .roko-offer-date {
  display: block !important;
  margin: 0 !important;
  text-align: left !important;
  color: #000 !important;
  font-size: 7.3pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4.hosting-offer-page .document-date-a4 strong,
.roko-offer-a4 .roko-offer-date strong {
  display: block !important;
  margin-top: .7mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .document-info-row-a4,
.roko-offer-a4 .roko-offer-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 3mm 11mm !important;
  width: 100% !important;
  margin: 0 0 5mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  white-space: normal !important;
}

.invoice-page-a4.hosting-offer-page .document-info-row-a4 span,
.invoice-page-a4.hosting-offer-page .document-info-row-a4 strong,
.roko-offer-a4 .roko-offer-meta span,
.roko-offer-a4 .roko-offer-meta strong {
  display: inline !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.2 !important;
}

.invoice-page-a4.hosting-offer-page .document-items,
.roko-offer-a4 .roko-offer-items {
  display: table !important;
  width: 100% !important;
  margin: 0 0 7mm !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  border-top: .28mm solid #000 !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.22 !important;
}

.invoice-page-a4.hosting-offer-page .document-items th,
.invoice-page-a4.hosting-offer-page .document-items td,
.roko-offer-a4 .roko-offer-items th,
.roko-offer-a4 .roko-offer-items td {
  padding: 1.25mm .9mm !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.22 !important;
  vertical-align: top !important;
}

.invoice-page-a4.hosting-offer-page .document-items th,
.roko-offer-a4 .roko-offer-items th {
  background: #eef1f4 !important;
  border-bottom: .28mm solid #000 !important;
  font-size: 6.55pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4.hosting-offer-page .document-items td,
.roko-offer-a4 .roko-offer-items td {
  border-bottom: .18mm solid #d6dce3 !important;
}

.invoice-page-a4.hosting-offer-page .document-items tbody tr:last-child td,
.roko-offer-a4 .roko-offer-items tbody tr:last-child td {
  border-bottom: .28mm solid #000 !important;
}

.invoice-page-a4.hosting-offer-page .document-items th:nth-child(1),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(1),
.roko-offer-a4 .roko-offer-items th:nth-child(1),
.roko-offer-a4 .roko-offer-items td:nth-child(1) { width: 7% !important; text-align: center !important; }
.invoice-page-a4.hosting-offer-page .document-items th:nth-child(2),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(2),
.roko-offer-a4 .roko-offer-items th:nth-child(2),
.roko-offer-a4 .roko-offer-items td:nth-child(2) { width: 43% !important; text-align: left !important; white-space: normal !important; }
.invoice-page-a4.hosting-offer-page .document-items th:nth-child(3),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(3),
.roko-offer-a4 .roko-offer-items th:nth-child(3),
.roko-offer-a4 .roko-offer-items td:nth-child(3) { width: 8% !important; text-align: center !important; }
.invoice-page-a4.hosting-offer-page .document-items th:nth-child(4),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(4),
.roko-offer-a4 .roko-offer-items th:nth-child(4),
.roko-offer-a4 .roko-offer-items td:nth-child(4) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4.hosting-offer-page .document-items th:nth-child(5),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(5),
.roko-offer-a4 .roko-offer-items th:nth-child(5),
.roko-offer-a4 .roko-offer-items td:nth-child(5) { width: 12% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4.hosting-offer-page .document-items th:nth-child(6),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(6),
.roko-offer-a4 .roko-offer-items th:nth-child(6),
.roko-offer-a4 .roko-offer-items td:nth-child(6) { width: 9% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4.hosting-offer-page .document-items th:nth-child(7),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(7),
.roko-offer-a4 .roko-offer-items th:nth-child(7),
.roko-offer-a4 .roko-offer-items td:nth-child(7) { width: 11% !important; text-align: right !important; white-space: nowrap !important; font-weight: 900 !important; }

.invoice-page-a4.hosting-offer-page .document-items tfoot td,
.roko-offer-a4 .roko-offer-items tfoot td {
  padding: 1.6mm .9mm 0 !important;
  border: 0 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4.hosting-offer-page .document-items tfoot td:first-child,
.roko-offer-a4 .roko-offer-items tfoot td:first-child {
  text-align: right !important;
  padding-right: 5mm !important;
}

.invoice-page-a4.hosting-offer-page .document-items tfoot td:last-child,
.roko-offer-a4 .roko-offer-items tfoot td:last-child {
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4.hosting-offer-page .document-summary-a4 {
  display: none !important;
}

.invoice-page-a4.hosting-offer-page .document-bottom-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4,
.roko-offer-a4 .roko-offer-valid {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4 p,
.roko-offer-a4 .roko-offer-valid {
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4 span,
.roko-offer-a4 .roko-offer-valid span {
  margin-left: 2mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.invoice-page-a4.hosting-offer-page .document-note-a4,
.roko-offer-a4 .roko-offer-section {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4::before,
.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4::after,
.invoice-page-a4.hosting-offer-page .payment-code::before,
.invoice-page-a4.hosting-offer-page .payment-code::after {
  display: none !important;
  content: none !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
.invoice-page-a4.hosting-offer-page .document-note-a4 h4,
.invoice-page-a4.hosting-offer-page .document-note-a4 strong,
.invoice-page-a4.hosting-offer-page .document-payment-title-a4,
.roko-offer-a4 .roko-offer-section-title,
.roko-offer-a4 .roko-offer-payment-title {
  display: block !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 8.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p,
.invoice-page-a4.hosting-offer-page .document-note-a4 p,
.roko-offer-a4 .roko-offer-section p {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 1.35mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-a4,
.roko-offer-a4 .roko-offer-payment {
  display: grid !important;
  grid-template-columns: minmax(0, 78mm) 82mm !important;
  gap: 14mm !important;
  justify-content: space-between !important;
  align-items: start !important;
  width: 100% !important;
  margin: 2mm 0 13mm !important;
  padding: 0 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.roko-offer-a4 .roko-offer-payment-data {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
.roko-offer-a4 .roko-offer-payment-row {
  display: grid !important;
  grid-template-columns: 23mm minmax(0, 1fr) !important;
  gap: 4mm !important;
  margin: 0 0 2.1mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
.roko-offer-a4 .roko-offer-payment-row span,
.roko-offer-a4 .roko-offer-payment-row strong {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
.roko-offer-a4 .roko-offer-payment-row strong {
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4.hosting-offer-page .payment-code,
.roko-offer-a4 .roko-offer-barcode {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.invoice-page-a4.hosting-offer-page .payment-code-title-a4,
.invoice-page-a4.hosting-offer-page .payment-code span,
.invoice-page-a4.hosting-offer-page .payment-code small,
.invoice-page-a4.hosting-offer-page .payment-code .muted {
  display: none !important;
}

.invoice-page-a4.hosting-offer-page .payment-code-image,
.roko-offer-a4 .roko-offer-barcode-image {
  display: block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

.invoice-page-a4.hosting-offer-page .document-footer-a4,
.roko-offer-a4 .roko-offer-footer {
  display: block !important;
  width: 100% !important;
  margin: 13mm 0 0 !important;
  padding: 2.5mm 0 0 !important;
  border-top: .18mm solid #000 !important;
  color: #555 !important;
  text-align: center !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

@media print {
  .print-window-wrap,
  #print-document-host {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  .print-window-wrap .document-page.roko-offer-a4,
  body.print-document-only #print-document-host .document-page.roko-offer-a4,
  .print-window-wrap .invoice-page-a4.hosting-offer-page,
  body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page {
    margin: 0 auto !important;
    border: 0 !important;
    box-shadow: none !important;
    page-break-inside: auto !important;
    break-inside: auto !important;
    overflow: visible !important;
  }
}
.company-card-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}
.refresh-panel {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}
.status-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 8px 12px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
}
.company-card-grid {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) minmax(240px, 1fr) minmax(220px, .9fr) minmax(220px, .9fr);
  gap: 14px;
}
.company-profile-grid {
  grid-template-columns: minmax(320px, 1.3fr) minmax(240px, .85fr) minmax(240px, .85fr);
  align-items: start;
}
.company-profile-grid .company-panel-main {
  grid-column: span 2;
}
.company-profile-grid .company-logo-panel {
  min-height: 100%;
}
.company-card-details {
  display: grid;
  gap: 14px;
}
.company-card-details[hidden] {
  display: none;
}

.company-delete-warning {
  padding: 16px 18px;
  border: 1px solid #fecaca;
  border-radius: 8px;
  background: #fff7f7;
}

.company-delete-warning h4,
.company-delete-warning p {
  margin: 0;
}

.company-delete-warning h4 {
  color: #991b1b;
}

.company-delete-warning p {
  margin-top: 6px;
  color: #7f1d1d;
  font-weight: 700;
}

.company-account-safety {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #f8fbff;
}

.company-account-safety h4,
.company-account-safety p {
  margin: 0;
}

.company-account-safety h4 {
  color: var(--blue-dark);
  font-size: 16px;
}

.company-account-safety p {
  margin-top: 6px;
  color: var(--muted);
  font-weight: 800;
  line-height: 1.45;
}

.danger-text {
  color: #b91c1c;
}

.company-delete-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.company-delete-summary span {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  padding: 7px 10px;
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-weight: 800;
}

.company-delete-summary strong {
  color: #991b1b;
}

.company-panel {
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid #edf3fa;
  border-radius: 8px;
  background: #fcfdff;
  padding: 13px;
}
.company-panel h4 {
  margin: 0 0 2px;
  color: var(--blue-dark);
  font-size: 13px;
  text-transform: uppercase;
}
.company-admin-name {
  margin: 0;
  font-size: 18px;
  font-weight: 900;
}
.company-logo-preview {
  width: 100%;
  max-width: 320px;
  height: 150px;
  object-fit: contain;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}
.nkd-panel {
  grid-column: 1 / -1;
}
.company-nkd-panel {
  gap: 14px;
  border-color: #d6e4f5;
  background: #f8fbff;
}
.nkd-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
.nkd-panel-head .eyebrow {
  margin-bottom: 3px;
}
.company-nkd-layout {
  display: grid;
  grid-template-columns: minmax(280px, .82fr) minmax(420px, 1.18fr);
  gap: 14px;
  align-items: start;
}
.company-nkd-editor,
.company-nkd-preview {
  display: grid;
  gap: 10px;
  min-width: 0;
}
.company-nkd-editor {
  padding: 12px;
  border: 1px solid #dbe7f5;
  border-radius: 8px;
  background: #fff;
}
.nkd-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #dbe7f5;
  border-radius: 8px;
  background: #fff;
}
.nkd-preview-head strong {
  color: var(--ink);
  font-size: 13px;
  text-transform: uppercase;
}
.nkd-preview-head span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
}
.nkd-table-wrap {
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.nkd-field textarea {
  min-height: 86px;
  font-family: inherit;
}
.field-hint {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}
.field-hint a {
  color: var(--blue);
  font-weight: 900;
}
.field-hint a:hover {
  text-decoration: underline;
}
.field-with-help > label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.field-help-button {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}
.field-help-button:hover {
  border-color: #a9cdec;
  background: #f4f9ff;
}
.field-help-popover {
  margin-top: 8px;
  padding: 10px 12px;
  border: 1px solid #cfe1f2;
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.45;
  box-shadow: 0 10px 24px rgba(15, 31, 53, .08);
}
.nkd-table {
  width: 100%;
  min-width: 0;
  font-size: 12px;
  border-collapse: separate;
  border-spacing: 0;
}
.nkd-table th,
.nkd-table td {
  padding: 7px 9px;
  vertical-align: top;
}
.nkd-table th:first-child,
.nkd-table td:first-child {
  width: 82px;
  font-weight: 900;
  white-space: nowrap;
}
.nkd-table th:last-child,
.nkd-table td:last-child {
  width: 100px;
  white-space: nowrap;
}
.nkd-table-wrap.is-empty td {
  color: var(--muted);
  font-weight: 800;
}

.nkd-structured-editor {
  display: grid;
  gap: 12px;
}

.nkd-structured-editor .nkd-table-wrap {
  border-color: #d7e5f5;
  background: #f8fbff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}

.nkd-editor-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.nkd-editor-head h3 {
  margin: 2px 0 0;
  color: var(--ink);
  font-size: 20px;
  line-height: 1.15;
}

.nkd-edit-table input,
.nkd-edit-table select {
  width: 100%;
  min-height: 42px;
  border: 1px solid #cfe0f2;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  font-weight: 850;
  box-shadow: none;
}

.nkd-edit-table input:focus,
.nkd-edit-table select:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(24,111,201,.12);
  outline: none;
}

.nkd-edit-table input[readonly],
.nkd-edit-table select:disabled {
  border-color: transparent;
  background: transparent;
  color: var(--ink);
  opacity: 1;
}

.nkd-edit-table input[type="radio"],
.nkd-edit-table input[type="checkbox"] {
  accent-color: var(--blue);
}

.nkd-edit-table input[type="radio"] {
  width: 28px;
  height: 28px;
  min-height: 28px;
}

.nkd-edit-table th {
  background: #f4f8fd;
  color: var(--muted);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.nkd-edit-table td {
  background: #fff;
  border-top: 1px solid #e0ebf7;
}

.nkd-edit-table tbody tr:hover td {
  background: #f8fbff;
}

.nkd-edit-table .actions {
  text-align: center;
}

.nkd-edit-table .actions .button {
  width: 42px;
  min-width: 42px;
  height: 42px;
  padding: 0;
  justify-content: center;
}

.nkd-edit-table th:first-child,
.nkd-edit-table td:first-child {
  width: 72px;
  text-align: center;
}

.nkd-edit-table th:nth-child(2),
.nkd-edit-table td:nth-child(2) {
  width: 120px;
}

.nkd-edit-table th:nth-child(4),
.nkd-edit-table td:nth-child(4) {
  width: 120px;
}

.nkd-edit-table th:nth-child(5),
.nkd-edit-table td:nth-child(5) {
  width: 140px;
}

.nkd-simple-edit-table th:nth-child(2),
.nkd-simple-edit-table td:nth-child(2) {
  width: 140px;
}

.nkd-simple-edit-table th:last-child,
.nkd-simple-edit-table td:last-child {
  width: 76px;
}

.company-nkd-simple-editor {
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
}

.nkd-inline-check {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 42px;
  font-size: 12px;
  font-weight: 900;
  color: var(--blue-dark);
}

.nkd-inline-check input {
  width: 18px;
  min-height: 18px;
}

.section-title { margin: 30px 0 14px; display: flex; align-items: end; justify-content: space-between; gap: 16px; }
.section-title h2 { margin: 0; font-size: 24px; }

.alert { border-radius: 8px; padding: 13px 16px; margin-bottom: 16px; font-weight: 800; }
.alert.success { background: #e9f8ef; color: var(--success); border: 1px solid #bfe8ce; }
.alert.error { background: #fff0f0; color: var(--danger); border: 1px solid #ffd1d1; }
.alert.warning { background: #fff8e6; color: #9a5b00; border: 1px solid #ffe1a3; }

.module-tile { display: flex; align-items: center; gap: 14px; min-height: 94px; }
.module-tile h3 { margin: 0 0 4px; }
.module-tile p { margin: 0; color: var(--muted); font-weight: 700; }
.module-admin-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: 18px;
  align-items: start;
}
.module-assignment-card {
  display: grid;
  gap: 18px;
}
.module-assignment-card h2,
.module-assignment-help h2 {
  margin: 0;
  font-size: 26px;
  line-height: 1.12;
}
.module-assignment-block,
.business-submodule-panel {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
}
.business-submodule-panel {
  background: #fff;
}
.business-submodule-panel.is-disabled {
  opacity: .62;
}
.module-assignment-list,
.business-submodule-list {
  display: grid;
  gap: 10px;
}
.module-assignment-option,
.business-submodule-option {
  display: grid;
  grid-template-columns: auto 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 76px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
}
.module-assignment-option:hover,
.business-submodule-option:hover,
.module-assignment-option.is-selected,
.business-submodule-option.is-selected {
  border-color: #9fc8ef;
  background: #f3f9ff;
}
.module-assignment-option.is-selected,
.business-submodule-option.is-selected {
  box-shadow: inset 4px 0 0 var(--blue);
}
.business-submodule-option.is-core {
  cursor: default;
}
.module-assignment-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  color: var(--blue);
  background: #eaf4ff;
}
.module-assignment-option strong,
.business-submodule-option strong {
  display: block;
  font-size: 16px;
  font-weight: 950;
}
.module-assignment-option small,
.business-submodule-option small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}
.inline-tag {
  display: inline-flex !important;
  margin: 0 0 0 8px !important;
  padding: 2px 7px;
  border-radius: 999px;
  color: var(--blue) !important;
  background: #eaf4ff;
  font-size: 10px !important;
  text-transform: uppercase;
}
.module-assignment-actions {
  display: flex;
  gap: 14px;
  align-items: center;
  flex-wrap: wrap;
}
.module-assignment-actions span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.module-assignment-help {
  display: grid;
  gap: 14px;
}
.module-assignment-help-list {
  display: grid;
  gap: 10px;
}
.module-assignment-help-list span {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
}
.module-assignment-help-list svg {
  grid-row: span 2;
  color: var(--blue);
}
.module-assignment-help-list strong,
.module-assignment-help-list small {
  display: block;
}
.module-assignment-help-list small {
  color: var(--muted);
  font-weight: 800;
  line-height: 1.35;
}
@media (max-width: 1100px) {
  .module-admin-layout {
    grid-template-columns: 1fr;
  }
}
.advanced-module-card {
  margin-top: 16px;
}
.advanced-module-card summary {
  cursor: pointer;
  color: var(--blue-dark);
  font-weight: 900;
}
.advanced-module-card form {
  margin-top: 14px;
}

.accommodation-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}
.accommodation-hero h2 {
  margin: 0 0 8px;
  font-size: 28px;
}
.accommodation-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.accommodation-tabs a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px 12px;
  color: var(--muted);
  background: #fff;
  font-weight: 900;
}
.accommodation-tabs a.is-active,
.accommodation-tabs a:hover {
  color: #fff;
  border-color: var(--blue);
  background: var(--blue);
}
.accommodation-section {
  margin-top: 16px;
}
.compact-admin-selector {
  margin-bottom: 16px;
  padding: 16px;
}
.unit-color {
  display: inline-block;
  width: 13px;
  height: 13px;
  border-radius: 4px;
  margin-right: 8px;
  vertical-align: middle;
}
.sortable-heading {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
}
.sortable-heading:hover {
  color: var(--blue);
}
.sortable-heading span {
  color: var(--blue);
  font-size: 13px;
}
.units-overview-table tr.is-selected-row td {
  background: #f0f7ff;
}
.units-overview-table tbody tr[data-row-href] {
  cursor: pointer;
}
.units-overview-table tbody tr[data-row-href]:hover td {
  background: #f7fbff;
}
.units-overview-table .unit-title {
  color: var(--ink);
  text-decoration: none;
}
.units-overview-table .unit-title small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.units-overview-table .unit-title:hover strong {
  color: var(--blue);
}

.archived-units-table {
  margin-top: 18px;
}

.archived-units-table .inline-form {
  justify-content: flex-end;
}

.archived-units-table td:last-child {
  text-align: right;
}

.muted-small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.action-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}
.checkbox-line {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  font-weight: 900;
}
.checkbox-line input {
  width: 18px;
  height: 18px;
}
.color-swatch-grid {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  min-height: 46px;
}
.color-swatch-option {
  position: relative;
  display: inline-flex;
  cursor: pointer;
}
.color-swatch-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.color-swatch-option span {
  width: 34px;
  height: 34px;
  border: 2px solid #fff;
  border-radius: 8px;
  box-shadow: 0 0 0 1px var(--line);
}
.color-swatch-option input:checked + span {
  box-shadow: 0 0 0 3px var(--blue), 0 8px 18px rgba(11, 99, 199, .2);
}
.unit-drawer-shell {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  justify-items: end;
}
.unit-drawer-scrim {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, .42);
}
.unit-drawer {
  position: relative;
  width: min(860px, calc(100vw - 28px));
  height: 100dvh;
  overflow-y: auto;
  overflow-x: hidden;
  background: #fff;
  border-left: 1px solid var(--line);
  box-shadow: -24px 0 60px rgba(15, 23, 42, .18);
  padding: 0 22px 28px;
}
.unit-drawer .unit-settings-form {
  padding-top: 0;
}
.unit-drawer-head {
  position: sticky;
  top: 0;
  z-index: 2;
  margin: 0 -22px 18px;
  padding: 20px 22px 16px;
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(12px);
}
.unit-drawer-head h2 {
  font-size: 26px;
}
.unit-drawer-head .hero-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 14px;
}
.unit-drawer-head .hero-actions form {
  display: inline-flex;
  margin: 0;
}
.hosting-offer-preview-head {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto;
  align-items: center;
  gap: 18px;
}
.hosting-offer-preview-head .report-preview-title {
  min-width: 0;
}
.hosting-offer-preview-head .report-preview-title h2 {
  margin: 4px 0 0;
  line-height: 1.08;
}
.hosting-offer-preview-head .report-preview-actions {
  justify-content: flex-end;
  flex-wrap: nowrap;
  margin-top: 0;
}
.hosting-offer-preview-head .report-preview-actions .button {
  min-height: 46px;
  padding: 12px 16px;
  white-space: nowrap;
}
@media (max-width: 980px) {
  .hosting-offer-preview-head {
    grid-template-columns: 1fr;
  }
  .hosting-offer-preview-head .report-preview-actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}
.drawer-flash-slot:empty {
  display: none;
}
.drawer-flash-slot .alert {
  margin: 0 0 18px;
}
.drawer-alert {
  box-shadow: 0 10px 28px rgba(15, 23, 42, .08);
}
.drawer-action-note {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.status-badge,
.channel-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 900;
}
.status-badge.success {
  color: #087a3a;
  background: #ddf8e8;
}
.status-badge.warning {
  color: #9a5b00;
  background: #fff0c8;
}
.status-badge.danger {
  color: #b42318;
  background: #ffe0df;
}
.status-badge.muted {
  color: var(--muted);
  background: #eef3f7;
}
.status-badge.neutral {
  color: var(--blue);
  background: #edf6ff;
}
.channel-badge {
  color: var(--blue);
  background: #edf6ff;
}
.reservation-status-stack {
  display: grid;
  gap: 6px;
  justify-items: start;
}
.settings-logo-preview {
  width: min(220px, 100%);
  max-height: 140px;
  object-fit: contain;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}
.settings-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .7fr);
  gap: 16px;
  align-items: start;
}
.settings-main-card {
  display: grid;
  gap: 18px;
}
.settings-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 16px;
}
.settings-card-head h2 {
  margin: 0 0 4px;
}
.settings-section {
  display: grid;
  gap: 12px;
  border: 1px solid #edf3fa;
  border-radius: 8px;
  background: #fcfdff;
  padding: 16px;
}
.settings-section h3 {
  margin: 0;
  color: var(--blue-dark);
  font-size: 15px;
}
.settings-logo-row {
  display: grid;
  grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
.settings-logo-empty {
  display: grid;
  place-items: center;
  width: min(220px, 100%);
  min-height: 140px;
  border: 1px dashed #cfe0f2;
  border-radius: 8px;
  background: #f8fbfd;
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}
.settings-side {
  display: grid;
  gap: 16px;
}
.settings-summary {
  display: grid;
  gap: 10px;
  margin: 12px 0;
}
.settings-summary div {
  display: grid;
  gap: 4px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbfd;
  padding: 11px 12px;
}
.settings-summary span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.settings-summary strong {
  overflow-wrap: anywhere;
}

.roko-settings-layout {
  gap: 16px;
  align-items: start;
}

.roko-settings-card {
  display: grid;
  gap: 14px;
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .055);
}

.roko-settings-card > .settings-card-head,
.roko-settings-card > .company-settings-form > .settings-card-head,
.roko-settings-card > .table-card-head {
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(15, 23, 42, .08);
}

.roko-settings-panel {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 16px 18px;
  border-radius: 8px;
  border: 1px solid #d6e4f5;
  background: #f8fbff;
}

.roko-settings-panel h3,
.roko-settings-panel h4 {
  margin: 0;
  color: var(--blue-dark);
  font-size: 18px;
  line-height: 1.2;
}

.roko-settings-panel-blue {
  border-color: #bdd7f3;
  background: #f2f8ff;
}

.roko-settings-panel-green {
  border-color: #ccebdc;
  background: #f3fbf7;
}

.roko-settings-panel-yellow {
  border-color: #f2d99a;
  background: #fff8e7;
}

.roko-settings-side {
  display: grid;
  gap: 16px;
}

.roko-settings-side-card {
  display: grid;
  gap: 12px;
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .055);
}

.roko-settings-side-card h2 {
  margin: 0;
  line-height: 1.16;
}

.roko-settings-toggle-card {
  min-height: 62px;
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}

.company-settings-layout .settings-main-card {
  gap: 14px;
}

.company-settings-layout {
  grid-template-columns: minmax(0, 1fr);
}

.company-settings-layout .roko-settings-side {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.company-settings-main {
  min-width: 0;
}

.company-settings-form {
  display: grid;
  min-width: 0;
  gap: 14px;
}

.company-settings-kpd-form {
  padding-top: 14px;
  border-top: 1px solid rgba(15, 23, 42, .08);
}

.company-settings-kpd-form .hosting-settings-panel-documents .hosting-settings-panel-body {
  grid-template-columns: minmax(0, 1fr);
}

.company-settings-kpd-form .hosting-settings-panel-documents .hosting-settings-panel-body > * {
  min-width: 0;
  grid-column: 1 / -1;
}

.company-settings-kpd-actions {
  display: flex;
  justify-content: flex-end;
  padding-top: 2px;
}

.company-settings-layout .settings-section {
  border-radius: 8px;
}

.company-settings-layout .settings-logo-row {
  align-items: center;
}

.accommodation-settings-layout {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
}

.accommodation-inherited-settings .settings-summary {
  margin: 8px 0 0;
}

.accommodation-inherited-settings .settings-summary div {
  min-height: 62px;
  border-color: #d6e4f5;
  background: rgba(255,255,255,.72);
}

.accommodation-module-settings-form {
  align-content: start;
}

.accommodation-module-settings-form > .roko-settings-field-grid,
.accommodation-module-settings-form > .field,
.accommodation-module-settings-form > .settings-toggle-card {
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
}

.accommodation-module-settings-form > .field:has(textarea) {
  background: #fff8e7;
  border-color: #f2d99a;
}

.roko-module-admin-layout {
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .64fr);
  align-items: start;
}

.module-assignment-card.roko-settings-card {
  gap: 16px;
}

.module-assignment-card > .eyebrow,
.module-assignment-card > h2 {
  margin-left: 0;
}

.module-assignment-block.roko-settings-panel,
.business-submodule-panel.roko-settings-panel {
  padding: 18px;
}

.module-assignment-option,
.business-submodule-option {
  border-radius: 8px;
}

.module-assignment-help.roko-settings-side-card {
  gap: 16px;
}

.module-assignment-help-list span {
  border-radius: 8px;
  background: #f8fbff;
}

.module-reset-page {
  grid-template-columns: 1fr;
}

.module-reset-selector {
  display: grid;
  grid-template-columns: minmax(260px, 1.2fr) minmax(220px, .7fr) auto;
  gap: 12px;
  align-items: end;
}

.module-reset-guide {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.module-reset-guide-item {
  padding: 12px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
}

.module-reset-guide-item strong,
.module-reset-guide-item span {
  display: block;
}

.module-reset-guide-item strong {
  color: var(--blue-dark);
  font-size: 14px;
}

.module-reset-guide-item span {
  margin-top: 5px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.module-reset-scope-note {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.module-reset-scope-note span {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 12px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
  color: var(--muted);
  font-weight: 800;
  line-height: 1.4;
}

.module-reset-scope-note strong {
  color: var(--blue-dark);
}

.module-reset-total {
  min-width: 190px;
  padding: 14px 18px;
}

.module-reset-total span {
  display: block;
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.module-reset-total strong {
  color: var(--danger);
  font-size: 34px;
  line-height: 1;
}

.module-reset-danger-form {
  display: grid;
  gap: 12px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(15, 23, 42, .12);
}

.module-reset-check {
  display: flex;
  gap: 10px;
  align-items: center;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: rgba(255,255,255,.74);
  color: var(--blue-dark);
  font-weight: 900;
}

.module-reset-check.compact {
  min-height: 40px;
  padding: 7px 9px;
  font-size: 13px;
}

.module-reset-confirm-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.module-reset-backups {
  display: grid;
  gap: 10px;
}

.module-reset-backup-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
}

.module-reset-backup-row strong,
.module-reset-backup-row small {
  display: block;
}

.module-reset-backup-row small {
  margin-top: 4px;
  color: var(--muted);
  font-weight: 800;
}

.module-reset-backup-actions,
.module-reset-backup-actions form {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.module-reset-restore-input {
  width: 220px;
}

@media (max-width: 960px) {
  .roko-settings-layout,
  .settings-layout.roko-settings-layout,
  .accommodation-settings-layout,
  .roko-module-admin-layout {
    grid-template-columns: 1fr;
  }

  .roko-settings-card > .settings-card-head,
  .roko-settings-card > .table-card-head {
    align-items: stretch;
    flex-direction: column;
  }

  .roko-settings-card .button,
  .roko-settings-side-card .button,
  .module-assignment-actions .button {
    width: 100%;
    justify-content: center;
  }

  .company-settings-kpd-actions {
    justify-content: stretch;
  }

  .company-settings-layout .roko-settings-side {
    grid-template-columns: 1fr;
  }

  .module-reset-selector,
  .module-reset-confirm-grid,
  .module-reset-backup-row,
  .module-reset-guide,
  .module-reset-scope-note,
  .company-account-safety {
    grid-template-columns: 1fr;
  }

  .module-reset-backup-actions,
  .module-reset-backup-actions form {
    align-items: stretch;
    flex-direction: column;
  }

  .module-reset-restore-input {
    width: 100%;
  }

  .accommodation-module-settings-form > .roko-settings-field-grid {
    grid-template-columns: 1fr;
  }
}
.document-toolbar {
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin-bottom: 18px;
}
.document-page {
  width: min(920px, 100%);
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  padding: 46px;
}
.document-head,
.document-title-row,
.document-foot {
  display: flex;
  justify-content: space-between;
  gap: 28px;
}
.document-logo {
  width: 280px;
  max-height: 150px;
  object-fit: contain;
}
.document-company {
  display: grid;
  gap: 4px;
  text-align: right;
  font-size: 13px;
}
.document-date {
  display: grid;
  gap: 4px;
  text-align: right;
  font-size: 13px;
}
.document-date span,
.document-meta {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.document-meta {
  margin: 8px 0 0;
}
.document-recipient {
  margin: 44px 0 24px;
}
.document-recipient h3 {
  margin: 0 0 6px;
}
.document-title-row {
  align-items: end;
  margin-bottom: 20px;
}
.document-title-row h1 {
  margin: 0;
  font-size: 26px;
}
.document-table {
  min-width: 0;
  border-top: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
}
.document-table th,
.document-table td {
  padding: 11px 9px;
}
.document-total {
  display: grid;
  justify-content: end;
  gap: 8px;
  margin-top: 18px;
}
.document-total div {
  display: grid;
  grid-template-columns: 180px 140px;
  gap: 12px;
  border-bottom: 1px solid var(--ink);
  padding: 6px 0;
  text-transform: uppercase;
}
.document-total span {
  color: var(--muted);
  font-weight: 800;
}
.document-foot {
  align-items: start;
  margin-top: 42px;
  font-size: 13px;
}
.document-stay,
.document-important,
.payment-block,
.document-validity {
  margin-top: 28px;
  font-size: 13px;
}
.document-stay p,
.document-important p {
  margin: 0 0 6px;
}
.document-important strong,
.payment-block h3,
.document-validity strong {
  display: block;
  margin-bottom: 8px;
  color: var(--ink);
}
.payment-grid {
  display: grid;
  grid-template-columns: 1.3fr .5fr .8fr;
  gap: 18px;
  margin-bottom: 18px;
}
.payment-grid div {
  display: grid;
  gap: 6px;
}
.payment-grid span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.payment-barcode {
  display: block;
  width: min(420px, 100%);
  height: auto;
  margin-left: auto;
}
.document-validity {
  display: flex;
  gap: 16px;
  align-items: end;
}
.document-validity div {
  display: grid;
  gap: 4px;
}
.document-validity span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.document-card {
  display: grid;
  gap: 10px;
}

.reservation-title {
  align-items: center;
  flex-wrap: wrap;
}
.reservation-title > div {
  min-width: 0;
}
.reservation-title > .button {
  flex: 0 0 auto;
}
.reservation-create-panel,
.reservation-filters {
  margin-bottom: 16px;
}
.reservation-filters,
.guestbook-filters {
  background: linear-gradient(180deg, #ffffff 0%, var(--warm-panel) 100%);
}
.reservation-filter-primary,
.reservation-filter-secondary {
  display: grid;
  gap: 12px;
  align-items: end;
}
.reservation-filter-primary {
  grid-template-columns: minmax(260px, 1.3fr) minmax(190px, .75fr) minmax(160px, .55fr) auto auto;
}
.reservation-filter-secondary {
  grid-template-columns: minmax(160px, .7fr) minmax(160px, .55fr) minmax(160px, .55fr) auto;
  margin-top: 12px;
}
.reservation-filter-secondary[hidden] {
  display: none;
}
.guestbook-filter-row {
  grid-template-columns: minmax(260px, 1.1fr) minmax(180px, .55fr) minmax(160px, .55fr) auto;
  align-items: end;
}
.guestbook-year-context {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}
.guestbook-year-context .status-badge {
  font-size: 12px;
  letter-spacing: 0;
}
.guest-filter-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: flex-end;
}
.guest-filter-actions .button {
  min-height: 44px;
  font-size: 14px;
  font-weight: 800;
  white-space: nowrap;
}
.guest-filter-actions .button-light,
.guest-filter-actions .button-plain {
  font-weight: 900;
}
.guestbook-filter-advanced {
  grid-template-columns: minmax(100px, .35fr) minmax(160px, .55fr) minmax(160px, .55fr) minmax(180px, .6fr) minmax(180px, .6fr);
  border-top: 1px solid var(--line);
  padding-top: 14px;
}
.advanced-filter-head {
  grid-column: 1 / -1;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}
.advanced-filter-head strong,
.guest-print-options strong {
  display: block;
  color: var(--blue);
  font-size: 14px;
  font-weight: 900;
  text-transform: uppercase;
}
.advanced-filter-head span,
.guest-print-options span:not(.status-badge) {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.checkbox-filter-group {
  grid-column: 1 / -1;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
  background: #f8fbfd;
}
.checkbox-filter-group legend {
  padding: 0 6px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.checkbox-pill-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.checkbox-pill-grid label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  border: 1px solid #cfe0f2;
  border-radius: 999px;
  background: #fff;
  padding: 6px 12px;
  font-weight: 900;
  color: var(--muted);
}
.checkbox-pill-grid input {
  width: 16px;
  height: 16px;
}
.guest-print-drawer {
  width: min(980px, calc(100vw - 28px));
}
.guest-print-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbfd;
  padding: 14px 16px;
  margin-bottom: 16px;
}
.guest-print-page {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 28px;
}
.guest-print-head,
.guest-print-title {
  display: flex;
  justify-content: space-between;
  gap: 24px;
}
.guest-print-head {
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  padding-bottom: 18px;
}
.guest-print-logo {
  width: 230px;
  max-height: 120px;
  object-fit: contain;
}
.guest-print-company {
  display: grid;
  gap: 4px;
  text-align: right;
  font-size: 13px;
}
.guest-print-company span,
.guest-print-title p,
.guest-print-title span,
.guest-print-table span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.guest-print-title {
  align-items: flex-end;
  margin: 22px 0;
}
.guest-print-title h2 {
  margin: 0 0 6px;
}
.guest-print-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.guest-print-table th,
.guest-print-table td {
  border-bottom: 1px solid #dce7f3;
  padding: 10px 8px;
  text-align: left;
  vertical-align: top;
}
.guest-print-table th {
  background: #f4f7fb;
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}
.reset-link {
  align-self: center;
}
.reservation-form-head,
.extra-guests-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}
.extra-guests-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}
.extra-guests-lock-hint {
  max-width: 260px;
  color: #b45309;
  text-align: right;
}
.extra-guests [data-add-guest-row][aria-disabled=true] {
  opacity: 0.58;
  cursor: not-allowed;
}
.reservation-form-head h3 {
  margin: 0;
  font-size: 22px;
}
.reservation-panel {
  display: grid;
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 18px;
  margin-bottom: 16px;
}
.reservation-panel h4 {
  margin: 0;
  font-size: 17px;
}
.reservation-panel-stay {
  background: #fbf7ff;
  border-color: #e4d4ff;
}
.reservation-panel-guest {
  background: #f1f7ff;
  border-color: #cfe2ff;
}
.reservation-panel-dates {
  background: #effcf4;
  border-color: #b8efd0;
}
.reservation-panel-finance {
  background: #fff9e8;
  border-color: #f6d574;
}
.reservation-extra-charge-box {
  display: grid;
  gap: 12px;
  margin-top: 12px;
  padding: 14px;
  border: 1px solid #f6d574;
  border-radius: 8px;
  background: rgba(255, 255, 255, .62);
}
.reservation-extra-charge-box strong {
  display: block;
  color: var(--ink);
  font-size: 15px;
}
.reservation-extra-charge-box span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-weight: 800;
  font-size: 13px;
}
.reservation-addon-list {
  display: grid;
  gap: 10px;
}
.reservation-addon-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 260px) 44px;
  gap: 12px;
  align-items: start;
}
.reservation-addon-row .field {
  min-width: 0;
  align-content: start;
}
.reservation-addon-row .field input {
  min-height: 48px;
}
.reservation-addon-row .icon-button.danger {
  width: 44px;
  min-width: 44px;
  height: 48px;
  margin-top: 25px;
  align-self: start;
}
.reservation-addon-row .formatted-input-preview {
  display: block;
  min-height: 18px;
  margin-top: 2px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
  line-height: 18px;
  text-align: right;
}
.reservation-addon-add {
  justify-self: start;
}
@media (max-width: 900px) {
  .reservation-addon-row {
    grid-template-columns: minmax(0, 1fr) minmax(160px, 220px) 44px;
  }
}
@media (max-width: 640px) {
  .reservation-addon-row {
    grid-template-columns: 1fr;
  }
  .reservation-addon-row .icon-button.danger {
    width: 100%;
    height: 44px;
    margin-top: 0;
  }
  .reservation-addon-row .formatted-input-preview {
    text-align: left;
  }
}
.extra-guests {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border-top: 1px solid var(--line);
  padding-top: 12px;
}
.extra-guest-row {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr)) 44px;
  gap: 12px;
  align-items: end;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.extra-guest-row .field {
  min-width: 0;
}
.extra-guest-row .extra-guest-address-field {
  grid-column: span 6;
}
.extra-guest-row .extra-guest-first-name-field,
.extra-guest-row .extra-guest-last-name-field,
.extra-guest-row .extra-guest-email-field,
.extra-guest-row .extra-guest-phone-field,
.extra-guest-row .extra-guest-country-field,
.extra-guest-row .extra-guest-document-type-field,
.extra-guest-row .extra-guest-document-field {
  grid-column: span 4;
}
.extra-guest-row .icon-button.danger {
  grid-column: 13;
  grid-row: 1;
  align-self: end;
}
.reservation-table table {
  min-width: 980px;
}
.guestbook-table table {
  min-width: 1120px;
}
.reservation-table td,
.guestbook-table td,
.units-overview-table td {
  vertical-align: middle;
}
.reservation-table tbody tr,
.guestbook-table tbody tr,
.units-overview-table tbody tr {
  transition: background .16s ease, box-shadow .16s ease;
}
.reservation-table tbody tr[data-row-href] td,
.guestbook-table tbody tr[data-row-href] td,
.units-overview-table tbody tr[data-row-href] td {
  padding-top: 18px;
  padding-bottom: 18px;
}
.reservation-table tbody tr[data-row-href] {
  cursor: pointer;
}
.guestbook-table tbody tr[data-row-href] {
  cursor: pointer;
}
.reservation-table tbody tr[data-row-href]:hover td {
  background: #f7fbff;
}
.guestbook-table tbody tr[data-row-href]:hover td {
  background: #f7fbff;
}
.reservation-table tr.is-selected-row td {
  background: #f0f7ff;
}
.guestbook-table tr.is-selected-row td {
  background: #f0f7ff;
}
.reservation-drawer {
  width: min(900px, calc(100vw - 28px));
}
.guestbook-drawer {
  width: min(860px, calc(100vw - 28px));
}
.guest-history-panel {
  background: #fff;
}
.guest-admin-panel {
  background: #f8fafc;
  border-color: #d8e4f2;
}
.guest-data-accordion-group {
  display: grid;
  gap: 12px;
}
.guest-data-accordion {
  padding: 0;
  overflow: hidden;
}
.guest-data-accordion summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  cursor: pointer;
  list-style: none;
}
.guest-data-accordion summary::-webkit-details-marker {
  display: none;
}
.guest-data-accordion summary strong {
  display: block;
  font-size: 18px;
  line-height: 1.25;
  color: var(--text);
}
.guest-data-accordion summary small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.guest-data-accordion summary i {
  flex: 0 0 auto;
  transition: transform .16s ease;
}
.guest-data-accordion[open] summary i {
  transform: rotate(180deg);
}
.guest-data-accordion-body {
  display: grid;
  gap: 14px;
  padding: 0 18px 18px;
}
.guest-admin-panel-inner {
  display: grid;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}
.guest-admin-panel-inner h4 {
  margin: 0;
}
.extra-guest-row .extra-guest-birth-year-field {
  grid-column: span 4;
}
@media (max-width: 900px) {
  .extra-guest-row .extra-guest-birth-year-field {
    grid-column: span 1;
  }
}
@media (max-width: 640px) {
  body.accommodation-module-page .extra-guest-row .extra-guest-birth-year-field {
    grid-column: 1;
  }
}
.check-card {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 12px 14px;
  font-weight: 800;
  color: var(--text);
}
.guest-history-list {
  display: grid;
  gap: 10px;
}
.guest-history-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  color: inherit;
  text-decoration: none;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}
.guest-history-item:hover {
  border-color: #b9d5ee;
  background: #f7fbff;
}
.number-accent {
  color: #8d2ce2;
}
.commission-cell {
  color: #e6531b;
}
.net-cell {
  color: #079843;
}
.money-cell {
  display: inline-block;
  white-space: nowrap;
}
.reservation-table thead th:nth-child(5),
.reservation-table td[data-label="Financije"] {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.reservation-table thead th:nth-child(5) .sortable-heading {
  justify-content: flex-end;
}
.reservation-table tfoot th {
  padding: 14px 16px;
  background: #eef5fc;
  border-top: 1px solid var(--line);
  color: var(--text);
  font-weight: 900;
  text-align: left;
  white-space: nowrap;
}
.reservation-table tfoot .reservation-total-label {
  padding-left: 22px;
}
.reservation-table tfoot .reservation-total-money {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.reservation-payment-mini {
  display: grid;
  gap: 4px;
  min-width: 190px;
  margin-top: 7px;
  padding-top: 7px;
  border-top: 1px solid #e1eaf5;
}
.reservation-payment-mini span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.reservation-payment-mini strong {
  color: var(--ink);
  font-size: 13px;
}
.reservation-payment-mini .is-positive,
.reservation-payment-mini .is-zero {
  color: #047857;
}
.reservation-payment-mini .is-negative {
  color: #dc2626;
}
.reservation-payment-mini .is-positive strong,
.reservation-payment-mini .is-zero strong {
  color: #009b57;
}
.reservation-payment-mini .is-negative strong {
  color: #dc2626;
}
.reservation-unit-cell,
.reservation-guest-cell,
.reservation-date-cell {
  min-width: 0;
}
.reservation-unit-cell strong,
.reservation-guest-cell strong,
.reservation-date-cell strong {
  display: block;
  line-height: 1.28;
}
.reservation-guest-cell {
  min-width: 210px;
}
.reservation-unit-cell {
  min-width: 190px;
}
.reservation-date-cell {
  min-width: 132px;
}
.reservation-guest-cell .muted-small,
.reservation-date-cell .muted-small {
  display: block;
  margin-top: 4px;
}
.reservation-finance-stack {
  display: grid;
  gap: 4px;
  min-width: 210px;
}
.reservation-finance-stack span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.reservation-finance-stack em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}
.reservation-finance-stack strong {
  color: var(--ink);
  font-size: 13px;
  white-space: nowrap;
}
.erp-row-title,
.erp-row-text,
.erp-row-sub {
  display: block;
}
.erp-row-title {
  color: var(--ink);
  font-size: 16px;
  line-height: 1.25;
}
.erp-row-text {
  color: var(--ink);
  line-height: 1.35;
}
.erp-row-sub {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}
.guestbook-table .status-badge {
  margin-top: 5px;
}
.guestbook-table .number-accent {
  font-size: 18px;
}
.guestbook-table tbody tr td:first-child,
.reservation-table tbody tr td:first-child,
.units-overview-table tbody tr td:first-child {
  border-left: 3px solid transparent;
}
.guestbook-table tbody tr[data-row-href]:hover td:first-child,
.reservation-table tbody tr[data-row-href]:hover td:first-child,
.units-overview-table tbody tr[data-row-href]:hover td:first-child,
.guestbook-table tr.is-selected-row td:first-child,
.reservation-table tr.is-selected-row td:first-child,
.units-overview-table tr.is-selected-row td:first-child {
  border-left-color: var(--blue);
}

.form-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.inline-form { display: inline; }
.checkbox-list { display: grid; gap: 10px; margin: 14px 0; }
.checkbox-list label { display: flex; gap: 10px; align-items: center; font-weight: 800; }
.checkbox-list label small { display: block; color: var(--muted); font-size: 12px; font-weight: 700; line-height: 1.35; text-transform: none; }
.checkbox-list label:has(small) { align-items: flex-start; }
.compact-field { margin-top: 9px; }
.compact-field label { font-size: 11px; }
.compact-field input, .compact-field select { padding: 9px 10px; font-size: 13px; }
.compact-field textarea {
  min-height: 110px;
  padding: 7px 9px;
  font-size: 13px;
  line-height: 1.35;
  resize: vertical;
}
.fetch-field { align-content: end; }
.fetch-message {
  min-height: 22px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.fetch-message.success { color: var(--success); }
.fetch-message.error { color: var(--danger); }
.extract-panel {
  display: grid;
  gap: 10px;
  border: 1px dashed #b9d5ee;
  border-radius: 8px;
  background: #f8fafc;
  padding: 13px;
  margin: 8px 0 4px;
}
.extract-panel[hidden] { display: none; }

.calendar-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 240px) auto;
  gap: 14px;
  align-items: end;
  margin-bottom: 16px;
  background: #fff;
}
.calendar-nav {
  display: flex;
  align-items: end;
  gap: 8px;
  flex-wrap: nowrap;
  min-width: 0;
}
.calendar-nav-button {
  white-space: nowrap;
}
.calendar-nav .button,
.calendar-toolbar .button {
  min-height: 46px;
}

.calendar-nav .calendar-month-field > label,
.calendar-nav .calendar-month-picker span {
  display: none;
}

.calendar-nav .calendar-month-picker {
  align-items: center;
  min-height: 46px;
  padding-top: 0;
  padding-bottom: 0;
}

@media (min-width: 981px) {
  body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar {
    grid-template-columns: minmax(180px, 240px) auto auto minmax(0, 1fr);
  }

  body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-nav {
    grid-column: 1 / -1;
  }
}

.icon-button {
  width: 46px;
  padding-left: 0;
  padding-right: 0;
  justify-content: center;
}
.calendar-month-field {
  min-width: 220px;
}
.calendar-month-picker {
  position: relative;
  display: grid;
  min-height: 46px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 7px 42px 7px 12px;
  overflow: hidden;
}
.calendar-month-picker strong {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.2;
}
.calendar-month-picker span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}
.calendar-month-picker input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
.calendar-advanced-filters {
  grid-column: 1 / -1;
}
.calendar-advanced-filters summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  padding: 10px 14px;
  font-weight: 900;
  cursor: pointer;
  list-style: none;
}
.calendar-advanced-filters summary::-webkit-details-marker {
  display: none;
}
.calendar-advanced-filters[open] summary {
  border-color: #b9d5ee;
  background: #f1f7ff;
}
.calendar-filter-grid {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}
.calendar-filter-group {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px 14px 14px;
}
.calendar-filter-group legend {
  padding: 0 8px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.checkbox-pill-grid {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.checkbox-pill-grid label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  border: 1px solid #cfe2ff;
  border-radius: 999px;
  background: #fff;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 900;
  color: var(--ink);
  cursor: pointer;
}
.calendar-planner-card,
.calendar-month-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: var(--soft-shadow);
}
.calendar-planner-card {
  overflow-x: auto;
  max-width: 100%;
}
.calendar-planner-head,
.calendar-planner-row {
  display: grid;
  grid-template-columns: 230px minmax(820px, 1fr);
  min-width: 1060px;
}
.calendar-unit-head,
.calendar-unit-cell,
.calendar-days > div,
.calendar-day-cell {
  border-bottom: 1px solid #c5d7ec;
}
.calendar-unit-head {
  display: flex;
  align-items: center;
  padding: 14px 16px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  background: #f8fafc;
}
.calendar-days,
.calendar-grid-row {
  display: grid;
}
.calendar-days > div {
  min-height: 58px;
  border-left: 1px solid #c5d7ec;
  background: #f8fafc;
  padding: 8px 6px;
  text-align: center;
}
.calendar-days strong,
.calendar-days span {
  display: block;
}
.calendar-days strong {
  color: #07172d;
  font-size: 17px;
}
.calendar-days span {
  margin-top: 3px;
  color: #536783;
  font-size: 10px;
  font-weight: 900;
}
.calendar-days .is-weekend,
.calendar-day-cell.is-weekend,
.calendar-month-day.is-weekend {
  background: #fff8e8;
}
.calendar-unit-cell {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  background: #fff;
}
.calendar-unit-cell strong,
.calendar-unit-cell span {
  display: block;
}
.calendar-unit-cell strong {
  color: var(--ink);
  font-size: 15px;
}
.calendar-unit-cell span:not(.unit-color) {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.calendar-grid-row {
  position: relative;
  min-height: var(--calendar-row-height);
  grid-auto-rows: 34px;
  padding-top: 46px;
}
.calendar-day-cell {
  grid-row: 1 / -1;
  min-height: var(--calendar-row-height);
  border-left: 1px solid #c5d7ec;
}
.calendar-reservation-bar {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  height: 28px;
  margin: 3px 3px 0;
  border: 1px solid rgba(0, 29, 69, .24);
  border-radius: 6px;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 5px 12px rgba(0, 35, 80, .12);
  padding: 0 8px;
  font-size: 11px;
  font-weight: 900;
  overflow: hidden;
}
.calendar-reservation-bar:hover {
  filter: saturate(1.08) brightness(.97);
}
.calendar-reservation-bar span,
.calendar-reservation-bar small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.calendar-reservation-bar small {
  flex: 0 0 auto;
  opacity: .92;
}
.calendar-reservation-bar.warning {
  color: #3b2600;
}
.calendar-reservation-bar.danger {
  opacity: .65;
  text-decoration: line-through;
}
.calendar-empty {
  padding: 18px;
  color: var(--muted);
  font-weight: 900;
}
.calendar-month-title {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  border-bottom: 1px solid var(--line);
  padding: 16px 18px;
}
.calendar-month-title h3 {
  margin: 0;
  font-size: 22px;
}
.calendar-month-title span {
  color: var(--muted);
  font-weight: 900;
}
.calendar-month-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.calendar-month-day {
  min-height: 132px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  padding: 10px;
  background: #fff;
}
.calendar-month-day.is-empty {
  background: #f8fafc;
}
.calendar-month-day > strong {
  display: block;
  margin-bottom: 8px;
  color: var(--ink);
}
.calendar-month-day a {
  display: block;
  border-left: 4px solid var(--unit-color);
  border-radius: 6px;
  background: #f1f7ff;
  color: var(--ink);
  text-decoration: none;
  font-size: 12px;
  font-weight: 900;
  margin: 5px 0;
  padding: 6px 7px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.calendar-month-day > span {
  display: inline-block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.calendar-booking-card {
  background: #fff;
}

.calendar-booking-title {
  align-items: flex-start;
}

.calendar-booking-title p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.calendar-booking-help {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--line);
  padding: 14px 18px;
  background: #f8fbff;
}

.calendar-booking-help strong,
.calendar-booking-help span {
  display: block;
}

.calendar-booking-help strong {
  color: var(--ink);
  font-size: 13px;
  font-weight: 950;
}

.calendar-booking-help span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}
.calendar-booking-help-simple {
  align-items: center;
}

.calendar-booking-inline-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.calendar-booking-inline-nav .button {
  min-height: 34px;
  padding: 8px 11px;
}

.calendar-booking-weekdays,
.calendar-booking-week {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.calendar-booking-weekdays {
  border-bottom: 1px solid #d7e5f4;
  background: #f8fafc;
}

.calendar-booking-weekdays span {
  padding: 12px 10px;
  color: #536783;
  font-size: 12px;
  font-weight: 950;
  text-align: center;
}

.calendar-booking-weeks {
  display: grid;
}

.calendar-booking-week {
  position: relative;
  grid-template-rows: 36px repeat(var(--calendar-week-lanes, 1), 28px);
  min-height: calc(36px + (var(--calendar-week-lanes, 1) * 28px));
  border-bottom: 1px solid #d7e5f4;
}

.calendar-booking-week:last-child {
  border-bottom: 0;
}

.calendar-booking-day {
  grid-row: 1 / -1;
  min-width: 0;
  border-right: 1px solid #d7e5f4;
  background: #fff;
  padding: 7px 9px;
}

.calendar-booking-day:nth-child(7n) {
  border-right: 0;
}

.calendar-booking-day.is-outside-month {
  background: #f4f7fb;
}

.calendar-booking-day.is-outside-month strong {
  color: #9aa8b8;
}

.calendar-booking-day.is-today {
  box-shadow: inset 0 0 0 2px #0b63c7;
}

.calendar-booking-day-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.calendar-booking-day-head strong {
  color: var(--ink);
  font-size: 15px;
  font-weight: 950;
}

.calendar-booking-events {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 4px;
  min-width: 18px;
}

.calendar-booking-bar {
  position: absolute;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  top: calc(36px + (var(--booking-lane, 0) * 28px) + 3px);
  left: calc(((var(--booking-start, 1) - 1 + var(--booking-start-offset, 0)) * 100% / 7) + 5px);
  width: max(42px, calc(((var(--booking-span, 1) - var(--booking-start-offset, 0) - var(--booking-end-offset, 0)) * 100% / 7) - 10px));
  height: 22px;
  min-width: 0;
  margin: 0;
  border-radius: 999px;
  background: var(--unit-color, #0b63c7);
  box-shadow: 0 7px 16px rgba(15, 31, 53, .12);
  color: #fff;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
  overflow: hidden;
  padding: 0 10px;
  text-decoration: none;
}

.calendar-booking-bar:hover {
  filter: saturate(1.06) brightness(.96);
}

.calendar-booking-bar.continues-before {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.calendar-booking-bar.continues-after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.calendar-booking-bar span,
.calendar-booking-bar small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.calendar-booking-bar small {
  flex: 0 1 auto;
  opacity: .9;
}

.calendar-booking-bar.danger {
  opacity: .65;
  text-decoration: line-through;
}

.calendar-booking-more {
  position: relative;
  z-index: 2;
  grid-column: 1 / -1;
  align-self: center;
  justify-self: start;
  margin-left: 10px;
  border-radius: 999px;
  background: #eef6ff;
  color: #0b63c7;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 950;
}

body.accommodation-module-page:not(.mobile-app-mode) .main {
  padding-bottom: 88px;
}

.calendar-unit-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  border-top: 1px solid var(--line);
  padding: 14px 18px;
  background: #fff;
}

.calendar-unit-legend span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #536783;
  font-size: 12px;
  font-weight: 900;
}

.calendar-unit-legend i {
  width: 9px;
  height: 9px;
  border-radius: 999px;
}

.calendar-booking-shell {
  display: grid;
  gap: 14px;
}

.calendar-booking-shell-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: var(--soft-shadow);
  padding: 16px 18px;
}

.calendar-booking-shell-head h3 {
  margin: 0;
  font-size: 22px;
}

.calendar-booking-shell-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.calendar-booking-shell-head > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
}

.calendar-booking-months {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.calendar-booking-months .calendar-booking-card {
  min-width: 0;
  box-shadow: var(--soft-shadow);
}

.calendar-booking-months .calendar-month-title {
  padding: 13px 16px;
}

.calendar-booking-months .calendar-month-title h3 {
  font-size: 20px;
}

.calendar-booking-months .calendar-booking-title p {
  font-size: 12px;
}

.calendar-booking-months .calendar-booking-weekdays span {
  padding: 9px 5px;
  font-size: 11px;
}

.calendar-booking-months .calendar-booking-week {
  grid-template-rows: 28px repeat(var(--calendar-week-lanes, 1), 22px);
  min-height: calc(28px + (var(--calendar-week-lanes, 1) * 22px));
}

.calendar-booking-months .calendar-booking-day {
  padding: 6px 7px;
}

.calendar-booking-months .calendar-booking-day-head strong {
  font-size: 14px;
}

.calendar-booking-months .calendar-booking-bar {
  top: calc(28px + (var(--booking-lane, 0) * 22px) + 2px);
  left: calc(((var(--booking-start, 1) - 1 + var(--booking-start-offset, 0)) * 100% / 7) + 4px);
  width: max(34px, calc(((var(--booking-span, 1) - var(--booking-start-offset, 0) - var(--booking-end-offset, 0)) * 100% / 7) - 8px));
  height: 18px;
  padding: 0 7px;
  font-size: 10px;
  box-shadow: 0 4px 10px rgba(15, 31, 53, .1);
}

.calendar-booking-months .calendar-booking-bar small {
  display: none;
}

.calendar-booking-months .calendar-booking-more {
  margin-left: 7px;
  padding: 4px 8px;
  font-size: 11px;
}

.calendar-month-grid-legacy {
  display: none;
}

.mobile-nav { display: none; }
.version-footer {
  position: fixed;
  right: 18px;
  bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  background: rgba(255,255,255,.82);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 7px 10px;
}
.version-footer img { width: 70px; height: auto; }

.atolit-about-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 18% 8%, rgba(0, 102, 204, .10), transparent 28%),
    linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%);
  color: var(--ink);
}

.atolit-about-shell {
  width: min(1120px, calc(100% - 32px));
  margin: 0 auto;
  padding: 42px 0;
}

.atolit-about-hero,
.atolit-about-card,
.atolit-about-actions {
  background: rgba(255,255,255,.92);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
}

.atolit-about-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
  padding: 30px;
  border-left: 5px solid var(--primary);
}

.atolit-about-hero h1 {
  margin: 4px 0 8px;
  font-size: clamp(34px, 6vw, 58px);
  line-height: 1;
}

.atolit-about-hero p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  font-size: 18px;
  font-weight: 800;
}

.atolit-about-logo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 170px;
}

.atolit-about-logo img {
  width: 150px;
  height: auto;
}

.atolit-about-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.atolit-about-card {
  display: grid;
  gap: 10px;
  padding: 24px;
}

.atolit-about-card-wide {
  grid-column: 1 / -1;
}

.atolit-about-icon {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #eef6ff;
  color: var(--primary);
}

.atolit-about-card h2 {
  margin: 0;
  font-size: 25px;
}

.atolit-about-card p {
  margin: 0;
  color: #213047;
  font-size: 17px;
  line-height: 1.55;
}

.atolit-about-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
  padding: 18px;
}

.atolit-about-version {
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
}

@media (max-width: 700px) {
  .atolit-about-shell {
    width: min(100% - 20px, 540px);
    padding: 18px 0 28px;
  }

  .atolit-about-hero {
    align-items: flex-start;
    flex-direction: column;
    padding: 22px;
  }

  .atolit-about-logo {
    min-width: 0;
  }

  .atolit-about-logo img {
    width: 118px;
  }

  .atolit-about-grid {
    grid-template-columns: 1fr;
  }

  .atolit-about-card {
    padding: 20px;
  }

  .atolit-about-card p {
    font-size: 15px;
  }

  .atolit-about-actions {
    flex-direction: column;
  }

  .atolit-about-actions .button {
    justify-content: center;
    width: 100%;
  }
}

@media (max-width: 980px) {
  html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { display: none; }
  .main { width: 100%; max-width: 100vw; padding: 18px 14px 104px; overflow-x: hidden; }
  .topbar { align-items: flex-start; flex-direction: column; padding: 20px; }
  .topbar-title { align-items: flex-start; }
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
  .guest-addon-switches,
  .invoice-quick-filter-row {
    grid-template-columns: 1fr;
  }
  .invoice-reservation-option {
    grid-template-columns: 1fr;
  }
  .finance-invoice-drawer .invoice-reservation-option {
    grid-template-columns: 1fr;
  }
  .invoice-reservation-meta {
    grid-template-columns: 1fr;
  }
  .invoice-reservation-side {
    justify-items: start;
    text-align: left;
  }
  .settings-layout,
  .settings-logo-row { grid-template-columns: 1fr; }
  .reservation-filter-primary,
  .reservation-filter-secondary { grid-template-columns: 1fr; }
  .reservation-filter-primary .button,
  .reservation-filter-secondary .button { width: 100%; }
  .calendar-toolbar {
    grid-template-columns: 1fr;
  }
  .calendar-nav {
    display: grid;
    grid-template-columns: auto minmax(170px, 1fr) auto auto;
    width: 100%;
    align-items: end;
  }
  .calendar-nav .button,
  .calendar-nav-button {
    width: auto;
    justify-content: center;
  }
  .calendar-booking-shell-head {
    align-items: flex-start;
    flex-direction: column;
  }
  .calendar-booking-shell-head > span {
    white-space: normal;
  }
  .calendar-booking-months {
    grid-template-columns: minmax(0, 1fr);
  }
  .calendar-month-field {
    min-width: 0;
  }
  .calendar-view-field,
  .calendar-toolbar > .button {
    width: 100%;
  }
  .calendar-planner-card {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .calendar-planner-head,
  .calendar-planner-row {
    grid-template-columns: 180px minmax(720px, 1fr);
    min-width: 900px;
  }
  .calendar-unit-head,
  .calendar-unit-cell {
    padding-left: 12px;
    padding-right: 12px;
  }
  .guest-history-item { grid-template-columns: 1fr; }
  .settings-card-head { align-items: stretch; flex-direction: column; }
  .unit-drawer {
    width: 100vw;
    max-width: 100vw;
    padding: 0 14px 92px;
    border-left: 0;
  }
  .unit-drawer-head {
    margin: 0 -14px 16px;
    padding: 16px 14px 14px;
  }
  .card, .stat-card, .table-card, .company-card, .company-create-head { max-width: 100%; }
  .company-create-head { align-items: flex-start; flex-direction: column; }
  .company-card-head { flex-direction: column; }
  .company-card-actions { justify-content: flex-start; width: 100%; }
  .accommodation-hero { align-items: flex-start; flex-direction: column; }
  .accommodation-tabs { width: 100%; }
  .accommodation-tabs a { flex: 1 1 140px; justify-content: center; min-height: 44px; }
  .company-card-actions .button,
  .company-card-actions .status-toggle { min-height: 44px; }
  .company-card-grid,
  .company-profile-grid,
  .company-nkd-layout {
    grid-template-columns: 1fr;
  }
  .company-profile-grid .company-panel-main {
    grid-column: auto;
  }
  .table-card { overflow: visible; }
  table { min-width: 0; }
  .mobile-nav {
    position: fixed;
    inset: auto 0 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    background: #fff;
    border-top: 1px solid var(--line);
    z-index: 20;
  }
  .mobile-nav a { display: grid; place-items: center; gap: 3px; min-height: 58px; padding: 9px 4px; color: var(--muted); font-size: 12px; font-weight: 900; }
  .version-footer { left: 10px; right: auto; bottom: 62px; font-size: 11px; }
  .version-footer img { width: 58px; }
}

@media (max-width: 740px) {
  .login-card { grid-template-columns: 1fr; }
  .login-intro, .login-form { padding: 26px; }
  .login-page { align-items: start; padding: 14px; }
  .login-card { width: 100%; }
  .login-intro { min-height: 282px; border-right: 0; border-bottom: 1px solid var(--line); }
  .login-intro img { margin-bottom: 0; }
  .login-intro .login-main-logo { width: min(230px, 82%); max-height: 190px; margin-bottom: 0; }
  .login-intro .login-portal-kicker { margin-top: -8px; }
  .login-form { gap: 15px; }
  .login-card-footer {
    position: static;
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 0 26px 26px;
    text-align: center;
  }
  .login-card-footer-link,
  .login-card-footer-version {
    justify-self: center;
    padding-left: 0;
  }
  .button, .field input, .field select, .field textarea { min-height: 44px; }
  .login-footer-brand { align-items: flex-start; flex-direction: column; }
  .topbar h1 { font-size: 30px; }
  .document-toolbar { display: grid; grid-template-columns: 1fr; }
  .document-page { padding: 24px 16px; }
  .document-head,
  .document-title-row,
  .document-foot { flex-direction: column; }
  .document-company { text-align: left; }
  .document-date { text-align: left; }
  .document-logo { width: 220px; }
  .document-total { justify-content: stretch; }
  .document-total div { grid-template-columns: 1fr auto; }
  .payment-grid { grid-template-columns: 1fr; }
  .payment-barcode { margin-left: 0; }
  .document-validity { align-items: start; flex-direction: column; }
  .pill { max-width: 100%; overflow-wrap: anywhere; }
  .calendar-nav {
    grid-template-columns: minmax(0, .9fr) minmax(145px, 1.2fr) minmax(0, .7fr) minmax(0, .9fr);
  }
  .calendar-filter-group {
    padding: 10px;
  }
  .checkbox-pill-grid {
    display: grid;
    grid-template-columns: 1fr;
  }
  .checkbox-pill-grid label {
    width: 100%;
  }
  .calendar-month-title {
    align-items: flex-start;
    flex-direction: column;
  }
  .calendar-booking-card {
    overflow-x: auto;
  }
  .calendar-booking-help {
    align-items: flex-start;
    flex-direction: column;
  }
  .calendar-booking-weekdays,
  .calendar-booking-week,
  .calendar-unit-legend {
    min-width: 760px;
  }
  .calendar-month-grid {
    grid-template-columns: 1fr;
  }
  .calendar-month-day.is-empty {
    display: none;
  }
  .calendar-month-day {
    min-height: 0;
    border-right: 0;
  }
  .topbar-actions,
  .company-card-actions,
  .form-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
  .topbar-actions .button,
  .topbar-actions .pill,
  .company-card-actions .button,
  .company-card-actions .status-toggle,
  .form-actions .button { width: 100%; justify-content: center; }
  .section-title { margin-top: 22px; }
  .section-title.reservation-title {
    align-items: stretch;
    flex-direction: column;
  }
  .section-title.reservation-title .button {
    width: 100%;
    justify-content: center;
  }
  .unit-drawer-shell {
    justify-items: stretch;
  }
  .unit-drawer-scrim {
    display: none;
  }
  .unit-drawer-head h2 {
    font-size: 24px;
  }
  .unit-drawer-head .action-row {
    display: grid;
    grid-template-columns: 1fr;
  }
  .unit-drawer-head .button {
    width: 100%;
    justify-content: center;
  }
  .stat-card { min-height: 84px; }
  .company-row-meta span { max-width: 100%; overflow-wrap: anywhere; }
  .unit-card summary {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 8px;
  }
  .grid-5,
  .compact-definition {
    grid-template-columns: 1fr;
  }
  .price-season-row {
    align-items: flex-start;
    flex-direction: column;
  }
  .price-editor-head {
    align-items: stretch;
    flex-direction: column;
  }
  .price-season-row.editable {
    display: grid;
    grid-template-columns: 1fr;
    align-items: stretch;
  }
  .reservation-form-head,
  .extra-guests-head {
    align-items: stretch;
    flex-direction: column;
  }
  .extra-guests-actions {
    align-items: stretch;
    width: 100%;
  }
  .extra-guests-lock-hint {
    max-width: none;
    text-align: left;
  }
  .extra-guest-row {
    grid-template-columns: 1fr;
  }
  .drag-handle,
  .icon-button.danger {
    width: 100%;
  }
  .price-season-row > strong:last-child {
    align-self: flex-start;
  }
  .guestbook-filter-advanced {
    grid-template-columns: 1fr;
  }
  .guest-filter-actions {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: stretch;
  }
  .guest-filter-actions .button {
    width: 100%;
  }
  .advanced-filter-head,
  .guest-print-options {
    display: grid;
  }
  .checkbox-pill-grid {
    display: grid;
    grid-template-columns: 1fr;
  }
  .guest-print-head,
  .guest-print-title {
    display: grid;
  }
  .guest-print-company {
    text-align: left;
  }
  .guest-print-page {
    padding: 16px;
  }
  .guest-print-logo {
    width: min(220px, 100%);
  }
  .guest-print-table {
    font-size: 12px;
  }
  .guest-print-table th,
  .guest-print-table td {
    padding: 8px 6px;
  }
  .nkd-table-wrap { overflow: visible; }
  .nkd-table, .table-card table { display: block; width: 100%; min-width: 0; }
  .nkd-table thead, .table-card thead { display: none; }
  .nkd-table tbody, .table-card tbody { display: grid; gap: 10px; }
  .nkd-table tr, .table-card tr {
    display: grid;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    padding: 12px;
  }
  .nkd-table td, .table-card td {
    display: block;
    border-bottom: 0;
    padding: 0;
    width: auto !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
  .units-overview-table td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 4px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
  }
  .reservation-table td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 4px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
  }
  .guestbook-table td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 4px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
  }
  .table-card td.actions { display: grid; }
  .table-card input,
  .table-card select,
  .table-card button { width: 100%; min-height: 44px; }
}

.finance-summary-grid {
  margin-bottom: 18px;
}
.document-filter-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 0.8fr 1.2fr 1fr 1fr auto auto;
  gap: 12px;
  align-items: end;
}
.documents-table strong,
.finance-table strong {
  font-weight: 900;
}
.documents-table span,
.finance-table span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.document-drawer {
  width: min(1080px, calc(100vw - 28px));
}
.document-page {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 34px;
}
.document-head,
.document-meta,
.document-total {
  display: flex;
  justify-content: space-between;
  gap: 28px;
}
.document-head {
  align-items: flex-start;
  border-bottom: 1px solid var(--line);
  padding-bottom: 22px;
}
.document-logo {
  width: 260px;
  max-height: 140px;
  object-fit: contain;
}
.document-company {
  display: grid;
  gap: 4px;
  text-align: right;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.document-company strong {
  color: var(--ink);
  font-size: 16px;
}
.document-meta {
  align-items: flex-end;
  margin: 28px 0 20px;
}
.document-meta span,
.payment-data span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.document-meta h2 {
  margin: 0 0 8px;
}
.document-items {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.document-items th,
.document-items td {
  border-bottom: 1px solid #dce7f3;
  padding: 10px 8px;
  text-align: left;
  vertical-align: top;
}
.document-items th {
  background: #f4f7fb;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}
.document-total {
  margin-top: 26px;
}
.document-total > div {
  flex: 1;
}
.document-total h3 {
  border-top: 2px solid var(--ink);
  padding-top: 10px;
  text-align: right;
}
.payment-data {
  display: grid;
  gap: 4px;
  margin-top: 18px;
}
.barcode-placeholder {
  margin-top: 18px;
  min-height: 58px;
  border: 2px dashed #0f172a;
  display: grid;
  place-items: center;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.centered-title {
  text-align: center;
  margin: 28px 0;
}
.finance-grid {
  margin: 18px 0;
}
.finance-bars {
  display: grid;
  gap: 14px;
}
.finance-bar-row {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) 2fr auto;
  gap: 14px;
  align-items: center;
}
.finance-bar-row span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.finance-bar-track {
  height: 16px;
  border-radius: 999px;
  background: #eaf2fb;
  overflow: hidden;
}
.finance-bar-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue), #00a3d7);
}
.expense-form {
  display: grid;
  gap: 12px;
}
.text-green {
  color: #009944;
}

@media (max-width: 1100px) {
  .document-filter-grid {
    grid-template-columns: 1fr 1fr;
  }
  .finance-bar-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .document-filter-grid {
    grid-template-columns: 1fr;
  }
  .document-page {
    padding: 18px;
  }
  .document-head,
  .document-meta,
  .document-total {
    display: grid;
  }
  .document-company,
  .document-total h3 {
    text-align: left;
  }
  .document-logo {
    width: min(240px, 100%);
  }
  .document-items {
    font-size: 12px;
  }
}

@media print {
  .sidebar,
  .topbar,
  .mobile-nav,
  .version-footer,
  .document-toolbar,
  .no-print,
  .section-title,
  .guestbook-filters,
  .guestbook-table,
  .unit-drawer-shell:not(.guest-print-drawer-shell):not(.document-drawer-shell) {
    display: none !important;
  }
  .app-shell {
    display: block;
  }
  .main {
    padding: 0;
  }
  .document-page {
    width: 100%;
    border: 0;
    box-shadow: none;
    padding: 24px;
  }
  .guest-print-drawer-shell {
    display: block !important;
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    padding: 0 !important;
  }
  .document-drawer-shell {
    display: block !important;
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    padding: 0 !important;
  }
  .guest-print-drawer-shell .unit-drawer-scrim,
  .document-drawer-shell .unit-drawer-scrim {
    display: none !important;
  }
  .guest-print-drawer {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    border: 0 !important;
    padding: 0 !important;
  }
  .document-drawer {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    border: 0 !important;
    padding: 0 !important;
  }
  .guest-print-page {
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .guest-print-table {
    font-size: 11px;
  }
  body {
    background: #fff;
  }
}

/* v1.3.37 - ujednacavanje financija, dokumenata i A4 ispisa */
.finance-section-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.finance-filter-grid {
  display: grid;
  grid-template-columns: minmax(120px, 0.8fr) minmax(160px, 1fr) minmax(180px, 1.2fr) minmax(160px, 1fr) auto auto;
  gap: 12px;
  align-items: end;
}

.finance-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(170px, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.finance-summary-grid .stat-card {
  min-height: 84px;
  padding: 16px 18px;
}

.finance-summary-grid .stat-card strong,
.amount-nowrap,
.money-cell,
.documents-table td[data-label="Iznos"] {
  white-space: nowrap;
}

.finance-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(340px, 0.9fr);
  gap: 18px;
  margin: 18px 0;
}

.finance-panel {
  min-height: auto;
}

.finance-mini-table-wrap {
  overflow-x: auto;
}

.finance-mini-table {
  width: 100%;
  border-collapse: collapse;
}

.finance-mini-table th,
.finance-mini-table td {
  padding: 10px 8px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.finance-mini-table th {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.finance-mini-table span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.finance-table td,
.finance-table th {
  white-space: nowrap;
}

.expense-drawer {
  width: min(720px, calc(100vw - 28px));
}

.finance-invoice-drawer {
  width: min(960px, calc(100vw - 48px));
}

.finance-invoice-drawer .invoice-reservation-option {
  grid-template-columns: minmax(210px, 1fr) minmax(330px, 1.35fr) minmax(150px, auto);
}

.expense-drawer .unit-settings-form {
  padding-bottom: 80px;
}

.expense-repeat-panel {
  display: grid;
  gap: 10px;
  margin-top: 14px;
  border: 1px solid #fed7aa;
  border-radius: 12px;
  background: #fff7ed;
  padding: 14px;
}

.expense-repeat-toggle {
  margin: 0;
  font-weight: 900;
}

.expense-repeat-options {
  display: grid;
  gap: 10px;
}

.expense-repeat-options[hidden] {
  display: none !important;
}

.expense-repeat-note {
  display: grid;
  align-content: center;
  gap: 4px;
  min-height: 58px;
  border: 1px solid #fed7aa;
  border-radius: 10px;
  background: #fff;
  padding: 10px 12px;
}

.expense-repeat-note strong {
  color: #9a3412;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.expense-repeat-note span,
.expense-repeat-preview {
  color: #7c2d12;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}

.expense-repeat-preview {
  margin: 0;
}

.document-page {
  width: min(210mm, 100%);
  min-height: 297mm;
  margin: 0 auto;
  padding: 14mm;
  border-radius: 8px;
  font-size: 12px;
  line-height: 1.35;
  display: flex;
  flex-direction: column;
}

/* A4 racun - referentni raspored v1.3.56 */
.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  box-sizing: border-box !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 0 auto !important;
  padding: 23mm 18mm 13mm !important;
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  background: #fff !important;
  color: #000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.6pt !important;
  line-height: 1.2 !important;
  border: 1px solid #d5dde8 !important;
  border-radius: 0 !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .10) !important;
}

.invoice-page-a4 * {
  box-sizing: border-box !important;
  color: #000 !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 82mm 1fr !important;
  align-items: start !important;
  min-height: 39mm !important;
  padding: 0 0 6mm !important;
  margin: 0 0 12mm !important;
  border: 0 !important;
  border-bottom: .35mm solid #d9dee7 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 70mm !important;
  height: 34mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  padding-top: 1mm !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-logo {
  width: 58mm !important;
  max-width: 58mm !important;
  max-height: 34mm !important;
  object-fit: contain !important;
  object-position: left top !important;
}

.invoice-page-a4 .document-company-a4 {
  justify-self: end !important;
  width: 58mm !important;
  text-align: right !important;
  font-size: 5.2pt !important;
  line-height: 1.45 !important;
  padding-top: 1mm !important;
}

.invoice-page-a4 .document-company-a4 strong {
  display: block !important;
  font-size: 7pt !important;
  margin-bottom: 1.2mm !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-company-a4 span {
  display: block !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  width: 75mm !important;
  margin: 0 0 3.5mm !important;
  padding: 0 !important;
  border: 0 !important;
}

.invoice-page-a4 .document-buyer-a4 span {
  display: block !important;
  text-transform: uppercase !important;
  font-weight: 800 !important;
  font-size: 4.6pt !important;
  margin-bottom: 1mm !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  font-size: 6.1pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: 1mm 0 0 !important;
  font-size: 5pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 36mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 4.5mm !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-title-a4 h2 {
  margin: 0 !important;
  font-size: 11pt !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-date-a4 {
  justify-self: end !important;
  width: 34mm !important;
  margin: 0 !important;
  text-align: right !important;
  font-size: 4.9pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  font-size: 5.8pt !important;
  font-weight: 800 !important;
  margin-top: .7mm !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: flex !important;
  align-items: center !important;
  gap: 13mm !important;
  flex-wrap: nowrap !important;
  margin: 0 0 4mm !important;
  font-size: 4.7pt !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-info-row-a4 span {
  display: inline-block !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  border-top: .45mm solid #000 !important;
  border-bottom: .45mm solid #000 !important;
  font-size: 4.7pt !important;
}

.invoice-page-a4 .document-items th {
  padding: 1.25mm .7mm !important;
  background: #eef1f5 !important;
  border-bottom: .35mm solid #000 !important;
  font-size: 4.6pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.55mm .7mm !important;
  border-bottom: .18mm solid #cfd6df !important;
  font-size: 4.85pt !important;
  line-height: 1.15 !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 7mm !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 59mm !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 12mm !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 13mm !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5) { width: 17mm !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 18mm !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 15mm !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 21mm !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 95mm 58mm !important;
  grid-template-areas:
    "stay summary"
    "note summary" !important;
  column-gap: 21mm !important;
  row-gap: 5mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-stay-a4 {
  grid-area: stay !important;
  display: block !important;
  width: 95mm !important;
  font-size: 4.9pt !important;
  line-height: 1.35 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 0 .85mm !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-area: note !important;
  width: 95mm !important;
  max-width: 95mm !important;
  margin: 4mm 0 0 !important;
  padding: 0 0 4mm !important;
  border-bottom: .35mm solid #000 !important;
}

.invoice-page-a4 .document-note-a4 h4 {
  margin: 0 0 2mm !important;
  font-size: 5pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 0 !important;
  font-size: 4.65pt !important;
  line-height: 1.28 !important;
  max-width: 88mm !important;
}

.invoice-page-a4 .document-summary-a4 {
  grid-area: summary !important;
  justify-self: end !important;
  width: 58mm !important;
  margin: 0 !important;
  font-size: 4.9pt !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 5mm !important;
  align-items: start !important;
  margin: 0 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong {
  white-space: nowrap !important;
  text-align: right !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: .45mm solid #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 72mm 74mm !important;
  gap: 20mm !important;
  align-items: end !important;
  margin: 13mm 0 0 !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  width: 72mm !important;
  display: grid !important;
  grid-template-columns: 1fr 18mm 24mm !important;
  gap: 4mm !important;
  padding-top: 3mm !important;
  border-top: .35mm solid #000 !important;
  font-size: 4.35pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  display: block !important;
  margin: 0 0 1.6mm !important;
  font-size: 5pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  font-size: 4.15pt !important;
  margin-bottom: 1mm !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 4.35pt !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 74mm !important;
  height: 24mm !important;
  max-width: 74mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 74mm !important;
  height: 24mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  position: absolute !important;
  left: 18mm !important;
  right: 18mm !important;
  bottom: 8mm !important;
  margin: 0 !important;
  padding-top: 2mm !important;
  border-top: .35mm solid #000 !important;
  text-align: center !important;
  font-size: 4.2pt !important;
  color: #555 !important;
  line-height: 1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 23mm 18mm 13mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }

  body.print-window .document-footer-a4,
  body.print-document-only #print-document-host .document-footer-a4 {
    bottom: 8mm !important;
  }
}

/* A4 racun - referentni raspored prema predlosku v1.3.56 */
.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  box-sizing: border-box !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 0 auto !important;
  padding: 21mm 16mm 10mm !important;
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #d8e4f2 !important;
  border-radius: 2px !important;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .08) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.15pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 * {
  box-sizing: border-box !important;
  color: #000 !important;
  letter-spacing: 0 !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 78mm 1fr !important;
  align-items: start !important;
  gap: 16mm !important;
  margin: 0 0 22mm !important;
  padding: 0 0 14mm !important;
  border-bottom: 1px solid #c7c7c7 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 78mm !important;
  height: 34mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding: 1mm 0 0 7mm !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo {
  display: block !important;
  width: 54mm !important;
  max-width: 54mm !important;
  height: auto !important;
  max-height: 32mm !important;
  object-fit: contain !important;
}

.invoice-page-a4 .document-company-a4 {
  justify-self: end !important;
  width: 56mm !important;
  text-align: right !important;
  font-size: 5pt !important;
  line-height: 1.38 !important;
  padding-top: 1mm !important;
}

.invoice-page-a4 .document-company-a4 strong {
  display: block !important;
  margin-bottom: 1.3mm !important;
  font-size: 7.1pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-company-a4 span {
  display: block !important;
  white-space: normal !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  margin: 0 0 4.3mm !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-buyer-a4 {
  width: 74mm !important;
  font-size: 5pt !important;
  line-height: 1.22 !important;
}

.invoice-page-a4 .document-buyer-a4 span {
  display: block !important;
  margin-bottom: 1.2mm !important;
  font-size: 4.2pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  font-size: 6.2pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: 1.2mm 0 0 !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 32mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 4mm !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-title-a4 h2 {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 11.6pt !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.invoice-page-a4 .document-date-a4 {
  margin: 0 !important;
  text-align: right !important;
  font-size: 4.4pt !important;
  line-height: 1.16 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  margin-top: .8mm !important;
  font-size: 6.1pt !important;
  font-weight: 900 !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: flex !important;
  gap: 14mm !important;
  align-items: center !important;
  margin: 0 0 3.4mm !important;
  padding: 0 !important;
  border: 0 !important;
  font-size: 4.6pt !important;
  font-weight: 700 !important;
}

.invoice-page-a4 .document-info-row-a4 span {
  display: inline-block !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 4.85pt !important;
}

.invoice-page-a4 .document-items th {
  padding: 1.05mm .75mm !important;
  background: #edf0f3 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 4.65pt !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.45mm .75mm !important;
  border-bottom: .2mm solid #d8d8d8 !important;
  font-size: 4.85pt !important;
  line-height: 1.12 !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 6% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 39% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 12% !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 93mm 58mm !important;
  grid-template-areas:
    "stay summary"
    "note summary" !important;
  column-gap: 24mm !important;
  row-gap: 7mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-stay-a4 {
  grid-area: stay !important;
  display: block !important;
  width: 93mm !important;
  font-size: 4.8pt !important;
  line-height: 1.28 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 0 1.25mm !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-area: note !important;
  width: 93mm !important;
  max-width: 93mm !important;
  margin: 0 !important;
  padding: 0 0 4.8mm !important;
  border-bottom: 1px solid #000 !important;
}

.invoice-page-a4 .document-note-a4 h4 {
  margin: 0 0 2.3mm !important;
  font-size: 5.4pt !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 0 !important;
  font-size: 4.65pt !important;
  line-height: 1.25 !important;
  max-width: 74mm !important;
}

.invoice-page-a4 .document-summary-a4 {
  grid-area: summary !important;
  justify-self: end !important;
  width: 58mm !important;
  margin: 0 !important;
  font-size: 5.2pt !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: end !important;
  gap: 7mm !important;
  margin: 0 !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong {
  white-space: nowrap !important;
  text-align: right !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 4mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

.invoice-page-a4 .document-summary-total-a4 span {
  max-width: 31mm !important;
  text-align: right !important;
  justify-self: end !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 72mm 76mm !important;
  gap: 24mm !important;
  align-items: end !important;
  margin: 9mm 0 0 !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1.15fr .55fr .7fr !important;
  column-gap: 8mm !important;
  row-gap: 1.6mm !important;
  width: 72mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  font-size: 4.35pt !important;
  line-height: 1.12 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  display: block !important;
  margin: 0 0 1.5mm !important;
  font-size: 5pt !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-payment-data-a4 span,
.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 4.25pt !important;
  line-height: 1.12 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  margin-top: 1.3mm !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 76mm !important;
  max-width: 76mm !important;
  height: 22mm !important;
  min-height: 22mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 76mm !important;
  max-width: 76mm !important;
  height: 22mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  position: absolute !important;
  left: 16mm !important;
  right: 16mm !important;
  bottom: 8mm !important;
  margin: 0 !important;
  padding: 2.3mm 0 0 !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  font-size: 4.4pt !important;
  line-height: 1 !important;
  color: #5f6b7a !important;
}

@media screen {
  .document-drawer .document-page.invoice-page-a4 {
    transform-origin: top center !important;
  }
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 21mm 16mm 10mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* Invoice A4 final layout v1.3.56 */
.document-drawer .document-page.invoice-page-a4,
.document-drawer .document-page-a4.invoice-page-a4,
.print-window-wrap .document-page.invoice-page-a4,
.print-window-wrap .document-page-a4.invoice-page-a4,
body.print-document-only #print-document-host .document-page.invoice-page-a4,
body.print-document-only #print-document-host .document-page-a4.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 0 auto !important;
  padding: 18mm 15mm 8mm !important;
  border: 1px solid #d5e2f0 !important;
  border-radius: 2px !important;
  background: #fff !important;
  color: #000 !important;
  box-shadow: 0 22px 48px rgba(15, 23, 42, .12) !important;
  box-sizing: border-box !important;
  display: block !important;
  position: relative !important;
  overflow: hidden !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 6pt !important;
  line-height: 1.22 !important;
}

.document-drawer .invoice-page-a4 .document-head-a4,
.print-window-wrap .invoice-page-a4 .document-head-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 88mm 1fr !important;
  align-items: start !important;
  gap: 8mm !important;
  margin: 0 0 18mm !important;
  padding: 0 !important;
  border: 0 !important;
  min-height: 40mm !important;
}

.invoice-page-a4 .document-logo-box {
  width: 88mm !important;
  height: 38mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding: 0 0 0 6mm !important;
  border: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-logo {
  width: auto !important;
  max-width: 60mm !important;
  height: auto !important;
  max-height: 34mm !important;
  object-fit: contain !important;
}

.invoice-page-a4 .document-company-a4 {
  justify-self: end !important;
  width: 57mm !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 5.1pt !important;
  line-height: 1.42 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .document-company-a4 strong {
  display: block !important;
  margin: 0 0 1.6mm !important;
  color: #000 !important;
  font-size: 7pt !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-company-a4 span {
  display: block !important;
  margin: 0 !important;
  color: #000 !important;
  font-weight: 500 !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  margin: 0 0 3.5mm !important;
  padding: 0 !important;
  border: 0 !important;
}

.invoice-page-a4 .document-buyer-a4 {
  width: 72mm !important;
  color: #000 !important;
  font-size: 5pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4 .document-buyer-a4 span {
  display: block !important;
  margin: 0 0 .9mm !important;
  color: #000 !important;
  font-size: 4.4pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 6.2pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: .9mm 0 0 !important;
  color: #000 !important;
  font-size: 5pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 34mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 3mm !important;
  padding: 0 !important;
  border: 0 !important;
}

.invoice-page-a4 .document-title-a4 h2 {
  margin: 0 !important;
  color: #000 !important;
  font-size: 11pt !important;
  line-height: 1.08 !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

.invoice-page-a4 .document-date-a4 {
  margin: 0 !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 4.6pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.5pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: flex !important;
  align-items: center !important;
  gap: 13mm !important;
  margin: 0 0 2.5mm !important;
  padding: 0 !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 4.7pt !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-info-row-a4 span {
  display: inline-block !important;
  color: #000 !important;
  font-weight: 600 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-items th {
  padding: 1.1mm .65mm !important;
  background: #eef1f5 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.7pt !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.25mm .65mm !important;
  border-bottom: .18mm solid #d2d8df !important;
  color: #000 !important;
  font-size: 5pt !important;
  line-height: 1.08 !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 5.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 37% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 14.5% !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 96mm 55mm !important;
  grid-template-areas:
    "stay summary"
    "note summary" !important;
  column-gap: 20mm !important;
  row-gap: 6mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  grid-area: stay !important;
  display: block !important;
  color: #000 !important;
  font-size: 5pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 0 1mm !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  display: none !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-area: note !important;
  width: 96mm !important;
  max-width: 96mm !important;
  margin: 0 !important;
  padding: 0 0 5mm !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-note-a4 h4 {
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 5.2pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 0 !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  line-height: 1.28 !important;
}

.invoice-page-a4 .document-summary-a4 {
  grid-area: summary !important;
  justify-self: end !important;
  width: 55mm !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 5.2pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 4mm !important;
  align-items: start !important;
  margin: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong:last-child {
  color: #000 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 7pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 72mm 72mm !important;
  gap: 24mm !important;
  align-items: end !important;
  margin: 8mm 0 0 !important;
  padding: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 16mm 24mm !important;
  gap: 4mm !important;
  align-items: start !important;
  width: 72mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.4pt !important;
  line-height: 1.14 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  display: block !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 5.1pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-payment-data-a4 span,
.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 4.35pt !important;
  line-height: 1.12 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  margin-top: 1.2mm !important;
  font-weight: 800 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  align-self: end !important;
  width: 72mm !important;
  max-width: 72mm !important;
  height: 22mm !important;
  min-height: 22mm !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 72mm !important;
  max-width: 72mm !important;
  height: 22mm !important;
  max-height: 22mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  position: absolute !important;
  left: 15mm !important;
  right: 15mm !important;
  bottom: 7mm !important;
  margin: 0 !important;
  padding: 2.2mm 0 0 !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 4.5pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap,
  body.print-document-only #print-document-host {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 15mm 8mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* Invoice A4 final layout - Roko ERP v1.3.56 */
.document-drawer .invoice-page-a4,
.document-drawer-shell .invoice-page-a4,
.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 20mm 17mm 13mm !important;
  margin: 18px auto !important;
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #d7e5f4 !important;
  border-radius: 3px !important;
  box-shadow: 0 22px 54px rgba(15, 23, 42, .12) !important;
  overflow: hidden !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 7.05pt !important;
  line-height: 1.22 !important;
  letter-spacing: 0 !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 86mm 1fr !important;
  gap: 10mm !important;
  align-items: start !important;
  padding: 0 !important;
  border: 0 !important;
  min-height: 46mm !important;
}

.invoice-page-a4 .document-logo-box {
  width: 86mm !important;
  height: 43mm !important;
  padding: 0 0 0 8mm !important;
  background: transparent !important;
  border: 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

.invoice-page-a4 .document-logo {
  width: 55mm !important;
  max-width: 55mm !important;
  max-height: 40mm !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 58mm !important;
  max-width: 58mm !important;
  justify-self: end !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: .7mm !important;
  color: #000 !important;
  font-size: 6.25pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 8pt !important;
  font-weight: 800 !important;
  margin-bottom: .8mm !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  width: 76mm !important;
  margin: 11mm 0 3mm !important;
  color: #000 !important;
  font-size: 6.1pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-buyer-a4 > span {
  display: block !important;
  margin: 0 0 1mm !important;
  text-transform: uppercase !important;
  font-size: 5.3pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  font-size: 7.1pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: 1mm 0 0 !important;
  font-size: 6.1pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 36mm !important;
  gap: 10mm !important;
  align-items: end !important;
  margin: 0 0 4mm !important;
}

.invoice-page-a4 .document-title-row-a4 h2 {
  margin: 0 !important;
  font-size: 13.8pt !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-date-a4 {
  margin: 0 !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 5.65pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  margin-top: .6mm !important;
  color: #000 !important;
  font-size: 6.7pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  gap: 15mm !important;
  margin: 0 0 4mm !important;
  color: #000 !important;
  font-size: 5.45pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 5.85pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-items th {
  padding: 1.15mm .8mm !important;
  background: #eef1f4 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 5.2pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.35mm .8mm !important;
  border-bottom: .18mm solid #d6dce3 !important;
  color: #000 !important;
  font-size: 5.75pt !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 6% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 35% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 16% !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 98mm 1fr !important;
  grid-template-areas:
    "stay summary"
    "note summary" !important;
  column-gap: 17mm !important;
  row-gap: 7mm !important;
  margin: 12mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  grid-area: stay !important;
  display: block !important;
  font-size: 5.85pt !important;
  line-height: 1.28 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 0 1.15mm !important;
  color: #000 !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-area: note !important;
  max-width: 98mm !important;
  padding: 0 0 5mm !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-note-a4 h4 {
  margin: 0 0 1.5mm !important;
  color: #000 !important;
  font-size: 6.2pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 0 !important;
  color: #000 !important;
  font-size: 5.45pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4 .document-summary-a4 {
  grid-area: summary !important;
  align-self: start !important;
  justify-self: end !important;
  width: 56mm !important;
  color: #000 !important;
  font-size: 5.9pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 6mm !important;
  align-items: start !important;
  margin: 0 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong {
  color: #000 !important;
  white-space: nowrap !important;
  text-align: right !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2.2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 8pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-summary-total-a4 span {
  color: #000 !important;
  text-align: left !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 76mm 1fr !important;
  gap: 18mm !important;
  align-items: end !important;
  margin: 9mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 18mm 24mm !important;
  gap: 4mm !important;
  width: 76mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.95pt !important;
  line-height: 1.16 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.7mm !important;
  color: #000 !important;
  font-size: 5.7pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-payment-data-a4 span,
.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 4.8pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  font-weight: 800 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 74mm !important;
  max-width: 74mm !important;
  min-height: 24mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 74mm !important;
  max-width: 74mm !important;
  height: 24mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  position: absolute !important;
  left: 17mm !important;
  right: 17mm !important;
  bottom: 9mm !important;
  margin: 0 !important;
  padding-top: 2.4mm !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 5.1pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 20mm 17mm 13mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
  }
}

/* A4 racun - finalni zadnji sloj v1.3.52 */
.document-preview-shell {
  overflow-x: auto !important;
  padding: 18px 0 24px !important;
}

.invoice-page-a4,
.invoice-page-a4 * {
  box-sizing: border-box !important;
}

.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 18mm 15mm 9mm !important;
  margin: 0 auto !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.35pt !important;
  line-height: 1.25 !important;
}

.document-drawer .invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  border: 1px solid #d7e5f4 !important;
  border-radius: 3px !important;
  box-shadow: 0 20px 48px rgba(15, 23, 42, .12) !important;
  margin: 16px auto !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 78mm 1fr !important;
  gap: 8mm !important;
  align-items: start !important;
  padding: 0 0 10mm !important;
  border-bottom: 1px solid #d4dbe6 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 78mm !important;
  height: 40mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding-left: 10mm !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo {
  width: 50mm !important;
  max-width: 50mm !important;
  max-height: 36mm !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 56mm !important;
  max-width: 56mm !important;
  justify-self: end !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: .85mm !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  line-height: 1.18 !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 6pt !important;
  font-weight: 800 !important;
  color: #000 !important;
  margin-bottom: .8mm !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  display: block !important;
  width: 68mm !important;
  margin: 9mm 0 4mm !important;
  font-size: 4.75pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-label,
.invoice-page-a4 .document-buyer-a4 span {
  display: block !important;
  margin: 0 0 .8mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.6pt !important;
  font-weight: 800 !important;
  margin-bottom: .6mm !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: .4mm 0 0 !important;
  color: #000 !important;
  font-size: 4.6pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 3mm !important;
}

.invoice-page-a4 .document-title-row-a4 h2,
.invoice-page-a4 .document-title-a4 h2 {
  margin: 0 !important;
  font-size: 9.3pt !important;
  line-height: 1.1 !important;
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-date-a4 {
  text-align: right !important;
  font-size: 4.35pt !important;
  color: #000 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.1pt !important;
  margin-top: .55mm !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  column-gap: 13mm !important;
  align-items: center !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  line-height: 1.1 !important;
}

.invoice-page-a4 .document-info-row-a4 strong {
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 4.35pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-items th,
.invoice-page-a4 .document-items thead th {
  padding: 1.05mm .65mm !important;
  background: #eef1f5 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.05pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td,
.invoice-page-a4 .document-items tbody td {
  padding: 1.05mm .65mm !important;
  border-bottom: .15mm solid #cfd6df !important;
  color: #000 !important;
  font-size: 4.25pt !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td,
.invoice-page-a4 .document-items tbody tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 5.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 34% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5),
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 15.5% !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 51mm !important;
  gap: 10mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  display: grid !important;
  grid-template-columns: 38mm 37mm 1fr !important;
  column-gap: 9mm !important;
  row-gap: 3mm !important;
  font-size: 4.35pt !important;
  line-height: 1.25 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  grid-column: 2 !important;
  margin: 4mm 0 0 !important;
  font-size: 5pt !important;
  color: #000 !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-column: 1 / 3 !important;
  margin-top: 0 !important;
  padding-bottom: 5mm !important;
  border-bottom: 1px solid #000 !important;
  max-width: 88mm !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 1.2mm 0 0 !important;
  font-size: 4.25pt !important;
}

.invoice-page-a4 .document-summary-a4 {
  width: 51mm !important;
  font-size: 4.55pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 4mm !important;
  align-items: start !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong:last-child {
  white-space: nowrap !important;
  color: #000 !important;
  text-align: right !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 60mm 58mm !important;
  gap: 18mm !important;
  align-items: end !important;
  margin: 11mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 16mm 22mm !important;
  gap: 4mm !important;
  align-items: start !important;
  width: 60mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  font-size: 3.9pt !important;
  line-height: 1.15 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.4mm !important;
  font-size: 4.5pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  font-size: 3.8pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 3.9pt !important;
  color: #000 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code,
.invoice-page-a4 .document-barcode-a4 {
  justify-self: end !important;
  width: 58mm !important;
  max-width: 58mm !important;
  min-height: 20mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image,
.invoice-page-a4 .document-barcode-a4 img,
.invoice-page-a4 .document-barcode-a4 svg {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: 20mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.5mm !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 3.9pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 15mm 9mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* A4 racun - najzadnji sloj v1.3.52 */
.document-preview-shell {
  overflow-x: auto !important;
  padding: 18px 0 24px !important;
}

.invoice-page-a4,
.invoice-page-a4 * {
  box-sizing: border-box !important;
}

.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 18mm 15mm 9mm !important;
  margin: 0 auto !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.35pt !important;
  line-height: 1.25 !important;
}

.document-drawer .invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  border: 1px solid #d7e5f4 !important;
  border-radius: 3px !important;
  box-shadow: 0 20px 48px rgba(15, 23, 42, .12) !important;
  margin: 16px auto !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 78mm 1fr !important;
  gap: 8mm !important;
  align-items: start !important;
  padding: 0 0 10mm !important;
  border-bottom: 1px solid #d4dbe6 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 78mm !important;
  height: 40mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding-left: 10mm !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo {
  width: 50mm !important;
  max-width: 50mm !important;
  max-height: 36mm !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 56mm !important;
  max-width: 56mm !important;
  justify-self: end !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: .85mm !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  line-height: 1.18 !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 6pt !important;
  font-weight: 800 !important;
  color: #000 !important;
  margin-bottom: .8mm !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  display: block !important;
  width: 68mm !important;
  margin: 9mm 0 4mm !important;
  font-size: 4.75pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-label,
.invoice-page-a4 .document-buyer-a4 span {
  display: block !important;
  margin: 0 0 .8mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.6pt !important;
  font-weight: 800 !important;
  margin-bottom: .6mm !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: .4mm 0 0 !important;
  color: #000 !important;
  font-size: 4.6pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 3mm !important;
}

.invoice-page-a4 .document-title-row-a4 h2,
.invoice-page-a4 .document-title-a4 h2 {
  margin: 0 !important;
  font-size: 9.3pt !important;
  line-height: 1.1 !important;
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-date-a4 {
  text-align: right !important;
  font-size: 4.35pt !important;
  color: #000 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.1pt !important;
  margin-top: .55mm !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  column-gap: 13mm !important;
  align-items: center !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  line-height: 1.1 !important;
}

.invoice-page-a4 .document-info-row-a4 strong {
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 4.35pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-items th,
.invoice-page-a4 .document-items thead th {
  padding: 1.05mm .65mm !important;
  background: #eef1f5 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.05pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td,
.invoice-page-a4 .document-items tbody td {
  padding: 1.05mm .65mm !important;
  border-bottom: .15mm solid #cfd6df !important;
  color: #000 !important;
  font-size: 4.25pt !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td,
.invoice-page-a4 .document-items tbody tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) {
  width: 5.5% !important;
  text-align: center !important;
}

.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) {
  width: 34% !important;
  text-align: left !important;
}

.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) {
  width: 7.5% !important;
  text-align: center !important;
}

.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) {
  width: 8% !important;
  text-align: right !important;
}

.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5),
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) {
  width: 10.5% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) {
  width: 8.5% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) {
  width: 15.5% !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 51mm !important;
  gap: 10mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  display: grid !important;
  grid-template-columns: 38mm 37mm 1fr !important;
  column-gap: 9mm !important;
  row-gap: 3mm !important;
  font-size: 4.35pt !important;
  line-height: 1.25 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  grid-column: 2 !important;
  margin: 4mm 0 0 !important;
  font-size: 5pt !important;
  color: #000 !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-column: 1 / 3 !important;
  margin-top: 0 !important;
  padding-bottom: 5mm !important;
  border-bottom: 1px solid #000 !important;
  max-width: 88mm !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 1.2mm 0 0 !important;
  font-size: 4.25pt !important;
}

.invoice-page-a4 .document-summary-a4 {
  width: 51mm !important;
  font-size: 4.55pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 4mm !important;
  align-items: start !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong:last-child {
  white-space: nowrap !important;
  color: #000 !important;
  text-align: right !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 60mm 58mm !important;
  gap: 18mm !important;
  align-items: end !important;
  margin: 11mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 16mm 22mm !important;
  gap: 4mm !important;
  align-items: start !important;
  width: 60mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  font-size: 3.9pt !important;
  line-height: 1.15 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.4mm !important;
  font-size: 4.5pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  font-size: 3.8pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 3.9pt !important;
  color: #000 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code,
.invoice-page-a4 .document-barcode-a4 {
  justify-self: end !important;
  width: 58mm !important;
  max-width: 58mm !important;
  min-height: 20mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image,
.invoice-page-a4 .document-barcode-a4 img,
.invoice-page-a4 .document-barcode-a4 svg {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: 20mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.5mm !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 3.9pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 15mm 9mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* A4 racun - apsolutni zavrsni sloj v1.3.52 */
.document-preview-shell {
  overflow-x: auto !important;
  padding: 18px 0 24px !important;
}

.invoice-page-a4,
.invoice-page-a4 * {
  box-sizing: border-box !important;
}

.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 18mm 15mm 9mm !important;
  margin: 0 auto !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.35pt !important;
  line-height: 1.25 !important;
}

.document-drawer .invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  border: 1px solid #d7e5f4 !important;
  border-radius: 3px !important;
  box-shadow: 0 20px 48px rgba(15, 23, 42, .12) !important;
  margin: 16px auto !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 78mm 1fr !important;
  gap: 8mm !important;
  align-items: start !important;
  padding: 0 0 10mm !important;
  border-bottom: 1px solid #d4dbe6 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 78mm !important;
  height: 40mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding-left: 10mm !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo {
  width: 50mm !important;
  max-width: 50mm !important;
  max-height: 36mm !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 56mm !important;
  max-width: 56mm !important;
  justify-self: end !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: .85mm !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  line-height: 1.18 !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 6pt !important;
  font-weight: 800 !important;
  color: #000 !important;
  margin-bottom: .8mm !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  display: block !important;
  width: 68mm !important;
  margin: 9mm 0 4mm !important;
  font-size: 4.75pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-label,
.invoice-page-a4 .document-buyer-a4 span {
  display: block !important;
  margin: 0 0 .8mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.6pt !important;
  font-weight: 800 !important;
  margin-bottom: .6mm !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: .4mm 0 0 !important;
  color: #000 !important;
  font-size: 4.6pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 3mm !important;
}

.invoice-page-a4 .document-title-row-a4 h2,
.invoice-page-a4 .document-title-a4 h2 {
  margin: 0 !important;
  font-size: 9.3pt !important;
  line-height: 1.1 !important;
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-date-a4 {
  text-align: right !important;
  font-size: 4.35pt !important;
  color: #000 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.1pt !important;
  margin-top: .55mm !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  column-gap: 13mm !important;
  align-items: center !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  line-height: 1.1 !important;
}

.invoice-page-a4 .document-info-row-a4 strong {
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 4.35pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-items th,
.invoice-page-a4 .document-items thead th {
  padding: 1.05mm .65mm !important;
  background: #eef1f5 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.05pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td,
.invoice-page-a4 .document-items tbody td {
  padding: 1.05mm .65mm !important;
  border-bottom: .15mm solid #cfd6df !important;
  color: #000 !important;
  font-size: 4.25pt !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td,
.invoice-page-a4 .document-items tbody tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 5.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 34% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5),
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 15.5% !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 51mm !important;
  gap: 10mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  display: grid !important;
  grid-template-columns: 38mm 37mm 1fr !important;
  column-gap: 9mm !important;
  row-gap: 3mm !important;
  font-size: 4.35pt !important;
  line-height: 1.25 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  grid-column: 2 !important;
  margin: 4mm 0 0 !important;
  font-size: 5pt !important;
  color: #000 !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-column: 1 / 3 !important;
  margin-top: 0 !important;
  padding-bottom: 5mm !important;
  border-bottom: 1px solid #000 !important;
  max-width: 88mm !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 1.2mm 0 0 !important;
  font-size: 4.25pt !important;
}

.invoice-page-a4 .document-summary-a4 {
  width: 51mm !important;
  font-size: 4.55pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 4mm !important;
  align-items: start !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong:last-child {
  white-space: nowrap !important;
  color: #000 !important;
  text-align: right !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 60mm 58mm !important;
  gap: 18mm !important;
  align-items: end !important;
  margin: 11mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 16mm 22mm !important;
  gap: 4mm !important;
  align-items: start !important;
  width: 60mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  font-size: 3.9pt !important;
  line-height: 1.15 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.4mm !important;
  font-size: 4.5pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  font-size: 3.8pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 3.9pt !important;
  color: #000 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code,
.invoice-page-a4 .document-barcode-a4 {
  justify-self: end !important;
  width: 58mm !important;
  max-width: 58mm !important;
  min-height: 20mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image,
.invoice-page-a4 .document-barcode-a4 img,
.invoice-page-a4 .document-barcode-a4 svg {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: 20mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.5mm !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 3.9pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 15mm 9mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* A4 racun - konacni override v1.3.51 */
body.print-window,
body.print-document-only {
  background: #fff !important;
  margin: 0 !important;
  padding: 0 !important;
}

.invoice-page-a4,
.invoice-page-a4 * {
  box-sizing: border-box !important;
}

.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 18mm 15mm 9mm !important;
  margin: 0 auto !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  color: #000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.45pt !important;
  line-height: 1.28 !important;
}

.document-drawer .invoice-page-a4 {
  border: 1px solid #d7e5f4 !important;
  border-radius: 3px !important;
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.12) !important;
  margin: 16px auto !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 78mm 1fr !important;
  align-items: start !important;
  gap: 8mm !important;
  padding: 0 0 10mm !important;
  border-bottom: 1px solid #d4dbe6 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 78mm !important;
  height: 40mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding-left: 10mm !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo {
  display: block !important;
  width: 50mm !important;
  max-width: 50mm !important;
  height: auto !important;
  max-height: 36mm !important;
  object-fit: contain !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 56mm !important;
  max-width: 56mm !important;
  justify-self: end !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 0.85mm !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  line-height: 1.18 !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 6pt !important;
  font-weight: 800 !important;
  color: #000 !important;
  margin-bottom: 0.8mm !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  display: block !important;
  width: 68mm !important;
  margin: 9mm 0 4mm !important;
  font-size: 4.75pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-label {
  display: block !important;
  margin: 0 0 0.8mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.6pt !important;
  font-weight: 800 !important;
  margin-bottom: 0.6mm !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: 0.4mm 0 0 !important;
  color: #000 !important;
  font-size: 4.6pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 3mm !important;
}

.invoice-page-a4 .document-title-row-a4 h2 {
  margin: 0 !important;
  font-size: 9.3pt !important;
  line-height: 1.1 !important;
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-date-a4 {
  text-align: right !important;
  font-size: 4.35pt !important;
  color: #000 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.1pt !important;
  margin-top: 0.55mm !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  column-gap: 13mm !important;
  align-items: center !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  line-height: 1.1 !important;
}

.invoice-page-a4 .document-info-row-a4 strong {
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 4.45pt !important;
  line-height: 1.2 !important;
}

.invoice-page-a4 .document-items th {
  padding: 1.15mm 0.7mm !important;
  background: #eef1f5 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.2mm 0.7mm !important;
  border-bottom: 0.15mm solid #cfd6df !important;
  color: #000 !important;
  font-size: 4.35pt !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 5.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 34% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5) { width: 10.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 15.5% !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 51mm !important;
  gap: 10mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  display: grid !important;
  grid-template-columns: 38mm 37mm 1fr !important;
  column-gap: 9mm !important;
  row-gap: 3mm !important;
  font-size: 4.45pt !important;
  line-height: 1.25 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  grid-column: 2 !important;
  margin: 4mm 0 0 !important;
  font-size: 5pt !important;
  color: #000 !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-column: 1 / 3 !important;
  margin-top: 0 !important;
  padding-bottom: 5mm !important;
  border-bottom: 1px solid #000 !important;
  max-width: 88mm !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 1.2mm 0 0 !important;
  font-size: 4.35pt !important;
}

.invoice-page-a4 .document-summary-a4 {
  width: 51mm !important;
  font-size: 4.55pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 4mm !important;
  align-items: start !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong:last-child {
  white-space: nowrap !important;
  color: #000 !important;
  text-align: right !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 60mm 58mm !important;
  gap: 18mm !important;
  align-items: end !important;
  margin: 11mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 16mm 22mm !important;
  gap: 4mm !important;
  align-items: start !important;
  width: 60mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  font-size: 3.9pt !important;
  line-height: 1.15 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.4mm !important;
  font-size: 4.5pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  font-size: 3.8pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 3.9pt !important;
  color: #000 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 58mm !important;
  max-width: 58mm !important;
  min-height: 20mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: 20mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.5mm !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 3.9pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 15mm 9mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* A4 racun - zavrsni sloj v1.3.53 */
.document-preview-shell {
  overflow-x: auto !important;
  padding: 18px 0 24px !important;
}

.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 18mm 15mm 9mm !important;
  margin: 0 auto !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 6.25pt !important;
  line-height: 1.22 !important;
}

.document-drawer .invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  border: 1px solid #d7e5f4 !important;
  border-radius: 3px !important;
  box-shadow: 0 20px 48px rgba(15, 23, 42, .12) !important;
  margin: 16px auto !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 82mm 1fr !important;
  gap: 8mm !important;
  align-items: start !important;
  padding: 0 0 12mm !important;
  border-bottom: 1px solid #d4dbe6 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 82mm !important;
  height: 42mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding-left: 8mm !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo {
  width: 52mm !important;
  max-width: 52mm !important;
  max-height: 38mm !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 58mm !important;
  max-width: 58mm !important;
  justify-self: end !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: .9mm !important;
  color: #000 !important;
  font-size: 5.55pt !important;
  line-height: 1.18 !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 7pt !important;
  font-weight: 800 !important;
  color: #000 !important;
  margin-bottom: .8mm !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  display: block !important;
  width: 70mm !important;
  margin: 10mm 0 4mm !important;
  font-size: 5.2pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-label {
  display: block !important;
  margin: 0 0 .8mm !important;
  color: #000 !important;
  font-size: 4.7pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 6.2pt !important;
  font-weight: 800 !important;
  margin-bottom: .6mm !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: .4mm 0 0 !important;
  color: #000 !important;
  font-size: 5.1pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 32mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 3.5mm !important;
}

.invoice-page-a4 .document-title-row-a4 h2 {
  margin: 0 !important;
  font-size: 12pt !important;
  line-height: 1.08 !important;
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-date-a4 {
  text-align: right !important;
  font-size: 5pt !important;
  color: #000 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 6pt !important;
  margin-top: .55mm !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  column-gap: 14mm !important;
  align-items: center !important;
  margin: 0 0 3.4mm !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  line-height: 1.12 !important;
}

.invoice-page-a4 .document-info-row-a4 strong {
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 5.2pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-items th {
  padding: 1.05mm .65mm !important;
  background: #eef1f5 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.8pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.1mm .65mm !important;
  border-bottom: .15mm solid #cfd6df !important;
  color: #000 !important;
  font-size: 5pt !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 53mm !important;
  gap: 10mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  display: grid !important;
  grid-template-columns: 39mm 38mm 1fr !important;
  column-gap: 9mm !important;
  row-gap: 3.2mm !important;
  font-size: 5pt !important;
  line-height: 1.22 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  grid-column: 2 !important;
  margin: 4mm 0 0 !important;
  font-size: 5.6pt !important;
  color: #000 !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-column: 1 / 3 !important;
  margin-top: 0 !important;
  padding-bottom: 5mm !important;
  border-bottom: 1px solid #000 !important;
  max-width: 88mm !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 1.1mm 0 0 !important;
  font-size: 4.8pt !important;
}

.invoice-page-a4 .document-summary-a4 {
  width: 53mm !important;
  font-size: 5.1pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 4mm !important;
  align-items: start !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 7pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 62mm 58mm !important;
  gap: 18mm !important;
  align-items: end !important;
  margin: 11mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 17mm 22mm !important;
  gap: 4mm !important;
  align-items: start !important;
  width: 62mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  font-size: 4.4pt !important;
  line-height: 1.12 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.4mm !important;
  font-size: 5.1pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 span,
.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 4.35pt !important;
  color: #000 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 58mm !important;
  max-width: 58mm !important;
  min-height: 19mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: 19mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.5mm !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 4.4pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 15mm 9mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* A4 racun - zadnji sloj za pregled i ispis v1.3.51 */
.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 18mm 15mm 9mm !important;
  margin: 0 auto !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  background: #fff !important;
  color: #000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.45pt !important;
  line-height: 1.28 !important;
}

.document-drawer .invoice-page-a4 {
  border: 1px solid #d7e5f4 !important;
  border-radius: 3px !important;
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.12) !important;
  margin: 16px auto !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 78mm 1fr !important;
  gap: 8mm !important;
  align-items: start !important;
  padding: 0 0 10mm !important;
  border-bottom: 1px solid #d4dbe6 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 78mm !important;
  height: 40mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding-left: 10mm !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo {
  display: block !important;
  width: 50mm !important;
  max-width: 50mm !important;
  height: auto !important;
  max-height: 36mm !important;
  object-fit: contain !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 56mm !important;
  max-width: 56mm !important;
  justify-self: end !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 0.85mm !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  line-height: 1.18 !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-company-a4 strong {
  color: #000 !important;
  font-size: 6pt !important;
  font-weight: 800 !important;
  margin-bottom: 0.8mm !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  width: 68mm !important;
  margin: 9mm 0 4mm !important;
  color: #000 !important;
  font-size: 4.75pt !important;
}

.invoice-page-a4 .document-label {
  display: block !important;
  margin: 0 0 0.8mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.6pt !important;
  font-weight: 800 !important;
  margin-bottom: 0.6mm !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: 0.4mm 0 0 !important;
  color: #000 !important;
  font-size: 4.6pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 3mm !important;
}

.invoice-page-a4 .document-title-row-a4 h2 {
  margin: 0 !important;
  color: #000 !important;
  font-size: 9.3pt !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
}

.invoice-page-a4 .document-date-a4 {
  text-align: right !important;
  color: #000 !important;
  font-size: 4.35pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 5.1pt !important;
  margin-top: 0.55mm !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  column-gap: 13mm !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 4.2pt !important;
}

.invoice-page-a4 .document-info-row-a4 strong {
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.45pt !important;
  line-height: 1.2 !important;
}

.invoice-page-a4 .document-items th {
  padding: 1.15mm 0.7mm !important;
  background: #eef1f5 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.2pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.2mm 0.7mm !important;
  border-bottom: 0.15mm solid #cfd6df !important;
  color: #000 !important;
  font-size: 4.35pt !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 5.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 34% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5),
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6),
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7),
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) {
  text-align: right !important;
  white-space: nowrap !important;
}
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5),
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10.5% !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8.5% !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 15.5% !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 51mm !important;
  gap: 10mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  display: grid !important;
  grid-template-columns: 38mm 37mm 1fr !important;
  column-gap: 9mm !important;
  row-gap: 3mm !important;
  color: #000 !important;
  font-size: 4.45pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  grid-column: 2 !important;
  margin: 4mm 0 0 !important;
  color: #000 !important;
  font-size: 5pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-column: 1 / 3 !important;
  max-width: 88mm !important;
  padding-bottom: 5mm !important;
  border-bottom: 1px solid #000 !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 1.2mm 0 0 !important;
  font-size: 4.35pt !important;
}

.invoice-page-a4 .document-summary-a4 {
  width: 51mm !important;
  color: #000 !important;
  font-size: 4.55pt !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 4mm !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 6pt !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 60mm 58mm !important;
  gap: 18mm !important;
  align-items: end !important;
  margin: 11mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 16mm 22mm !important;
  gap: 4mm !important;
  align-items: start !important;
  width: 60mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  color: #000 !important;
  font-size: 3.9pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.4mm !important;
  color: #000 !important;
  font-size: 4.5pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  color: #000 !important;
  font-size: 3.8pt !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 3.9pt !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 58mm !important;
  max-width: 58mm !important;
  min-height: 20mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: 20mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.5mm !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 3.9pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 15mm 9mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

.document-logo {
  width: 62mm;
  max-height: 34mm;
  object-fit: contain;
}

.document-items th,
.document-items td {
  white-space: nowrap;
  padding: 7px 6px;
}

.document-items th:nth-child(2),
.document-items td:nth-child(2) {
  white-space: normal;
}

.barcode-placeholder {
  width: 86mm;
  height: 24mm;
  min-height: 24mm;
  margin-left: auto;
  border: 1px solid #111;
  color: transparent;
  background: repeating-linear-gradient(90deg, #111 0 2px, #fff 2px 4px, #111 4px 5px, #fff 5px 8px);
}

#print-document-host {
  display: none;
}

.payment-code {
  margin-top: 14px;
  display: grid;
  gap: 6px;
  justify-items: end;
  break-inside: avoid;
}

.payment-code-image {
  width: 70mm;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.payment-code span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.document-footer {
  margin-top: auto;
  padding-top: 9mm;
  border-top: 1px solid #0f172a;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.45;
  text-align: center;
}

.document-footer strong {
  color: var(--ink);
}

.document-page::after {
  content: none;
  display: none;
}

@media (max-width: 1100px) {
  .finance-workspace {
    grid-template-columns: 1fr;
  }

  .finance-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .finance-filter-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 720px) {
  .finance-section-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .finance-summary-grid,
  .finance-filter-grid {
    grid-template-columns: 1fr;
  }

  .finance-mini-table th:nth-child(2),
  .finance-mini-table td:nth-child(2) {
    display: none;
  }

  .document-page {
    min-height: auto;
    padding: 18px;
  }

}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  body {
    background: #fff !important;
  }

  .document-drawer-shell {
    display: block !important;
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    padding: 0 !important;
  }

  .document-drawer-shell .unit-drawer-scrim,
  .document-drawer-shell .unit-drawer-head,
  .document-drawer-shell .no-print {
    display: none !important;
  }

  .document-drawer {
    width: 210mm !important;
    max-width: 210mm !important;
    min-height: 297mm !important;
    position: static !important;
    transform: none !important;
    box-shadow: none !important;
    border: 0 !important;
    overflow: visible !important;
  }

  .document-page {
    width: 210mm !important;
    min-height: 297mm !important;
    padding: 12mm !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }

  body.print-document-only {
    background: #fff !important;
  }

  body.print-document-only > *:not(#print-document-host) {
    display: none !important;
  }

  body.print-document-only #print-document-host {
    display: block !important;
    width: 210mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  body.print-document-only #print-document-host .document-page {
    width: 210mm !important;
    min-height: 297mm !important;
    padding: 12mm !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    page-break-after: avoid !important;
  }

body.print-document-only #print-document-host .document-footer {
    margin-top: auto !important;
  }
}

/* A4 racun - finalni izgled v1.3.51 */
.invoice-page-a4,
.invoice-page-a4 * {
  box-sizing: border-box !important;
}

.document-drawer .invoice-page-a4 {
  flex: 0 0 auto !important;
  margin: 18px auto 28px !important;
}

.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 18mm 16mm 10mm !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #d6e4f5 !important;
  border-radius: 3px !important;
  box-shadow: 0 18px 55px rgba(15, 23, 42, 0.12) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 7pt !important;
  line-height: 1.28 !important;
  letter-spacing: 0 !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 82mm 1fr !important;
  align-items: start !important;
  gap: 12mm !important;
  min-height: 48mm !important;
  margin: 0 0 11mm !important;
  padding: 0 !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 82mm !important;
  height: 39mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-logo {
  width: 61mm !important;
  max-width: 61mm !important;
  max-height: 36mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  display: block !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 58mm !important;
  justify-self: end !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  text-align: right !important;
  gap: 1.05mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 6.1pt !important;
  line-height: 1.28 !important;
  font-weight: 400 !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 7.2pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  display: block !important;
  margin: 0 0 5.5mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4 .document-buyer-a4 {
  width: 75mm !important;
  font-size: 6.35pt !important;
  line-height: 1.25 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-a4 span {
  display: block !important;
  margin-bottom: 1.2mm !important;
  text-transform: uppercase !important;
  font-size: 5pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  font-size: 7.2pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: 1mm 0 0 !important;
  color: #000 !important;
  font-size: 6pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 38mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 5mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4 .document-title-a4 h2 {
  margin: 0 !important;
  color: #000 !important;
  font-size: 12.3pt !important;
  line-height: 1.08 !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

.invoice-page-a4 .document-date-a4 {
  margin: 0 !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 5.4pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  margin-top: 1mm !important;
  color: #000 !important;
  font-size: 6pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: 1.05fr 0.85fr 0.95fr !important;
  gap: 5mm !important;
  margin: 0 0 4mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 5.35pt !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  margin: 0 0 0 !important;
  color: #000 !important;
  font-size: 5.55pt !important;
  line-height: 1.22 !important;
  border-top: 1.4px solid #000 !important;
  border-bottom: 1.4px solid #000 !important;
}

.invoice-page-a4 .document-items thead th {
  padding: 1.65mm 1mm !important;
  background: #eef2f7 !important;
  color: #000 !important;
  border-bottom: 1.05px solid #000 !important;
  text-transform: none !important;
  font-size: 5.45pt !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.75mm 1mm !important;
  color: #000 !important;
  border-bottom: 0.7px solid #000 !important;
  vertical-align: top !important;
  font-size: 5.45pt !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-items tbody tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) {
  width: 6% !important;
  text-align: center !important;
}

.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) {
  width: 34% !important;
  text-align: left !important;
}

.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) {
  width: 8% !important;
  text-align: center !important;
}

.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4),
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5),
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6),
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7),
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) {
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) {
  width: 8% !important;
}

.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5),
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) {
  width: 11% !important;
}

.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) {
  width: 9% !important;
}

.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) {
  width: 13% !important;
}

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 59mm !important;
  gap: 10mm !important;
  align-items: start !important;
  width: 100% !important;
  margin: 13mm 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4 .document-stay-a4 {
  color: #000 !important;
  font-size: 5.3pt !important;
  line-height: 1.34 !important;
  min-width: 0 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 0 1.45mm !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  margin: 5.5mm 0 1.45mm !important;
  color: #000 !important;
  font-size: 6pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-summary-a4 {
  color: #000 !important;
  font-size: 5.8pt !important;
  line-height: 1.22 !important;
  min-width: 0 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  column-gap: 5mm !important;
  align-items: start !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4 .document-summary-line-a4 span,
.invoice-page-a4 .document-summary-total-a4 span {
  text-align: right !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong {
  white-space: nowrap !important;
  text-align: right !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 3mm !important;
  padding-top: 2mm !important;
  border-top: 1.35px solid #000 !important;
  font-size: 7.35pt !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-summary-total-a4 span {
  line-height: 1.12 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 73mm 74mm !important;
  justify-content: space-between !important;
  align-items: end !important;
  gap: 10mm !important;
  width: 100% !important;
  margin: 11mm 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1.05fr 0.55fr 0.8fr !important;
  gap: 2.5mm !important;
  color: #000 !important;
  border-top: 1.05px solid #000 !important;
  padding-top: 2.2mm !important;
  font-size: 5.1pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.4mm !important;
  color: #000 !important;
  font-size: 5.6pt !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  color: #000 !important;
  font-size: 4.8pt !important;
  font-weight: 400 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  font-weight: 800 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 74mm !important;
  max-width: 74mm !important;
  min-width: 74mm !important;
  height: 25mm !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
  overflow: hidden !important;
  color: #000 !important;
  background: transparent !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 74mm !important;
  max-width: 74mm !important;
  height: 25mm !important;
  max-height: 25mm !important;
  object-fit: contain !important;
  object-position: right bottom !important;
  margin: 0 !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.8mm !important;
  border-top: 1.15px solid #000 !important;
  color: #000 !important;
  font-size: 5pt !important;
  line-height: 1.15 !important;
  text-align: center !important;
}

@media screen {
  .document-drawer-shell .document-drawer {
    overflow-x: auto !important;
  }

  .document-drawer-shell .invoice-page-a4 {
    transform-origin: top center !important;
  }
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    min-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window .no-print,
  body.print-document-only .no-print {
    display: none !important;
  }

  body.print-document-only > *:not(#print-document-host) {
    display: none !important;
  }

  #print-document-host,
  .print-window-wrap {
    width: 210mm !important;
    min-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  .print-window .document-page.invoice-page-a4,
  .print-window .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 16mm 10mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    transform: none !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}

/* A4 racun - finalni precizni prikaz v1.3.50 */
.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 0 auto !important;
  padding: 18mm 16mm 10mm !important;
  display: flex !important;
  flex-direction: column !important;
  background: #fff !important;
  color: #000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 6pt !important;
  line-height: 1.22 !important;
  border: 1px solid #d7e3f2 !important;
  border-radius: 7px !important;
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.12) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.invoice-page-a4 *,
.invoice-page-a4 *::before,
.invoice-page-a4 *::after {
  box-sizing: border-box !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 78mm minmax(0, 1fr) !important;
  gap: 12mm !important;
  align-items: start !important;
  padding: 0 0 10mm !important;
  margin: 0 !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo-box {
  min-height: 36mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4 .document-logo {
  width: 54mm !important;
  max-width: 54mm !important;
  max-height: 34mm !important;
  object-fit: contain !important;
  display: block !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 60mm !important;
  max-width: 60mm !important;
  margin-left: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  text-align: right !important;
  gap: 1mm !important;
  font-size: 5.2pt !important;
  line-height: 1.18 !important;
  color: #000 !important;
  font-weight: 700 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 6.7pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  width: 66mm !important;
  margin: 7mm 0 0 !important;
  display: block !important;
  font-size: 5.3pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-label {
  display: block !important;
  margin-bottom: 1mm !important;
  font-size: 4.4pt !important;
  line-height: 1 !important;
  color: #000 !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}

.invoice-page-a4 .document-buyer-row-a4 strong {
  display: block !important;
  font-size: 6.2pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 34mm !important;
  align-items: end !important;
  gap: 10mm !important;
  margin: 5mm 0 0 !important;
}

.invoice-page-a4 .document-title-row-a4 h2 {
  margin: 0 !important;
  color: #000 !important;
  font-size: 9.4pt !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-date-a4 {
  text-align: right !important;
  font-size: 4.8pt !important;
  line-height: 1.2 !important;
  color: #000 !important;
  font-weight: 700 !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  gap: 10mm !important;
  margin: 4mm 0 0 !important;
  font-size: 4.7pt !important;
  color: #000 !important;
  font-weight: 700 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  margin: 4mm 0 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  font-size: 4.7pt !important;
  color: #000 !important;
  border-top: 0.35mm solid #000 !important;
  border-bottom: 0.35mm solid #000 !important;
}

.invoice-page-a4 .document-items thead th {
  padding: 1.3mm 1mm !important;
  background: #eef1f5 !important;
  border-bottom: 0.25mm solid #000 !important;
  color: #000 !important;
  font-size: 4.5pt !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  text-transform: none !important;
}

.invoice-page-a4 .document-items tbody td {
  padding: 1.4mm 1mm !important;
  border-bottom: 0.15mm solid #d7d7d7 !important;
  color: #000 !important;
  vertical-align: top !important;
  font-weight: 500 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 35% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 17% !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 50mm !important;
  gap: 10mm !important;
  align-items: start !important;
  margin: 10mm 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.invoice-page-a4 .document-stay-a4 {
  display: grid !important;
  grid-template-columns: 34mm 34mm 1fr !important;
  gap: 8mm !important;
  min-width: 0 !important;
  color: #000 !important;
  font-size: 4.7pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4 .document-note-a4 {
  margin-top: 6mm !important;
  grid-column: 1 / -1 !important;
}

.invoice-page-a4 .document-note-a4 strong {
  display: block !important;
  margin-bottom: 1.5mm !important;
  text-decoration: underline !important;
  color: #000 !important;
  font-size: 5.1pt !important;
}

.invoice-page-a4 .document-summary-a4 {
  width: 50mm !important;
  min-width: 0 !important;
  margin-left: auto !important;
  color: #000 !important;
  font-size: 5pt !important;
  font-weight: 700 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  gap: 3mm !important;
  align-items: end !important;
  width: 100% !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 2.5mm !important;
  padding-top: 2mm !important;
  border-top: 0.35mm solid #000 !important;
  font-size: 6.1pt !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 62mm 56mm !important;
  justify-content: space-between !important;
  align-items: end !important;
  gap: 8mm !important;
  margin-top: 7mm !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  border-top: 0.25mm solid #000 !important;
  padding-top: 3mm !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) 16mm 20mm !important;
  gap: 5mm !important;
  font-size: 4.5pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 4.7pt !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  color: #000 !important;
  font-size: 4.2pt !important;
}

.invoice-page-a4 .document-barcode-a4 {
  width: 56mm !important;
  height: 19mm !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-barcode-a4 img,
.invoice-page-a4 .document-barcode-a4 svg {
  width: 56mm !important;
  max-width: 56mm !important;
  height: 19mm !important;
  max-height: 19mm !important;
  object-fit: contain !important;
  display: block !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2mm !important;
  border-top: 0.25mm solid #000 !important;
  text-align: center !important;
  color: #4f5f73 !important;
  font-size: 4.3pt !important;
  line-height: 1 !important;
}

@media screen {
  .document-preview-shell,
  .document-preview-panel,
  .document-detail-shell {
    overflow-x: auto !important;
  }
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window,
  body.print-window .print-window-wrap {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only .document-page.invoice-page-a4,
  body.print-document-only .document-page-a4.invoice-page-a4,
  body.print-document-only .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 16mm 10mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
}

/* A4 dokumenti za ponude i racune */
.document-page-a4 {
  width: min(210mm, 100%);
  min-height: 297mm;
  margin: 0 auto;
  padding: 17mm 18mm 10mm;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 22px 70px rgba(15, 23, 42, 0.12);
  color: #050b18;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 7.2px;
  line-height: 1.32;
  display: flex;
  flex-direction: column;
}

.document-head-a4 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 14mm;
  padding-bottom: 9mm;
  border-bottom: 1px solid #dbe3ef;
}

.document-logo-box {
  min-height: 32mm;
  display: flex;
  align-items: flex-start;
}

.document-page-a4 .document-logo {
  width: 56mm;
  max-height: 32mm;
  object-fit: contain;
  object-position: left top;
}

.document-company-a4 {
  text-align: right;
  justify-items: end;
  display: grid;
  gap: 0.7mm;
  font-size: 6.6px;
  line-height: 1.35;
}

.document-company-a4 strong {
  font-size: 8.5px;
  color: #020617;
}

.document-meta-a4 {
  margin-top: 10mm;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14mm;
  align-items: end;
}

.document-buyer-a4 span {
  display: block;
  font-size: 5.8px;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 1.5mm;
}

.document-buyer-a4 strong {
  display: block;
  font-size: 7.3px;
  margin-bottom: 0.8mm;
}

.document-buyer-a4 p {
  margin: 0;
}

.document-title-a4 {
  text-align: right;
  display: grid;
  gap: 2mm;
}

.document-title-a4 h2 {
  margin: 0;
  font-size: 11px;
  font-weight: 900;
  text-transform: none;
}

.document-title-a4 p {
  margin: 0;
  font-size: 5.8px;
  line-height: 1.25;
}

.document-info-row-a4 {
  margin-top: 4mm;
  display: flex;
  gap: 9mm;
  font-size: 5.8px;
  font-weight: 800;
}

.document-page-a4 .document-items {
  width: 100%;
  border-collapse: collapse;
  margin-top: 4mm;
  font-size: 5.9px;
}

.document-page-a4 .document-items th {
  background: #f3f6f9;
  border-top: 1px solid #111827;
  border-bottom: 1px solid #111827;
  padding: 1.8mm 1mm;
  text-align: left;
  font-weight: 900;
  font-size: 5.5px;
}

.document-page-a4 .document-items td {
  border-bottom: 1px solid #d1d5db;
  padding: 1.8mm 1mm;
  vertical-align: top;
  white-space: nowrap;
}

.document-page-a4 .document-items th:nth-child(2),
.document-page-a4 .document-items td:nth-child(2) {
  white-space: normal;
  width: 38%;
}

.document-page-a4 .document-items td:nth-child(1),
.document-page-a4 .document-items td:nth-child(n+3) {
  text-align: right;
}

.document-bottom-a4 {
  margin-top: 8mm;
  display: grid;
  grid-template-columns: 1fr 78mm;
  gap: 10mm;
  align-items: start;
}

.document-stay-a4 {
  display: grid;
  gap: 2.6mm;
  font-size: 6.1px;
}

.document-stay-a4 h4 {
  margin: 1mm 0 0;
  font-size: 6.5px;
  text-decoration: underline;
}

.document-stay-a4 p {
  margin: 0;
}

.document-summary-a4 {
  align-self: start;
  margin-left: auto;
  width: 76mm;
  display: grid;
  gap: 2mm;
  font-size: 6.8px;
}

.document-summary-line-a4,
.document-summary-total-a4 {
  display: flex;
  justify-content: space-between;
  gap: 8mm;
  margin: 0;
}

.document-summary-total-a4 {
  border-top: 1px solid #111827;
  padding-top: 2mm;
  font-size: 8.7px;
  font-weight: 900;
}

.document-payment-a4 {
  margin-top: 7mm;
  display: grid;
  grid-template-columns: 1fr 76mm;
  gap: 10mm;
  align-items: end;
}

.document-payment-data-a4 {
  border-top: 1px solid #111827;
  padding-top: 2mm;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 5mm;
  font-size: 5.8px;
}

.document-payment-data-a4 span {
  display: block;
  color: #475569;
  font-size: 5.2px;
  font-weight: 800;
}

.document-payment-data-a4 strong {
  display: block;
  color: #020617;
  font-size: 5.8px;
  font-weight: 900;
  word-break: break-all;
}

.document-payment-title-a4 {
  grid-column: 1 / -1;
  font-weight: 900;
  text-decoration: underline;
  color: #020617;
}

.document-page-a4 .payment-code {
  margin: 0;
  justify-items: end;
}

.document-page-a4 .payment-code-image {
  width: 74mm;
  height: 20mm;
  object-fit: contain;
}

.document-page-a4 .payment-code span {
  display: none;
}

.document-footer-a4 {
  margin-top: auto;
  padding-top: 3mm;
  border-top: 1px solid #111827;
  color: #64748b;
  font-size: 5.8px;
  text-align: center;
}

@media (max-width: 760px) {
  .document-page-a4 {
    width: 100%;
    min-height: auto;
    padding: 20px;
    font-size: 11px;
  }

  .document-head-a4,
  .document-meta-a4,
  .document-bottom-a4,
  .document-payment-a4 {
    grid-template-columns: 1fr;
  }

  .document-company-a4,
  .document-title-a4 {
    text-align: left;
    justify-items: start;
  }

  .document-payment-data-a4 {
    grid-template-columns: 1fr;
  }

  .document-page-a4 .payment-code {
    justify-items: start;
  }

  .document-page-a4 .payment-code-image {
    width: 100%;
    height: auto;
  }
}

/* v1.3.103 - reports, VAT and unit expense detail */
.report-unit-link {
  display: inline-grid;
  gap: 2px;
  color: inherit;
  text-decoration: none;
}

.report-unit-link:hover strong {
  color: var(--blue);
}

.report-vat-dashboard {
  display: grid;
  gap: 14px;
}

.report-vat-filter,
.report-expense-filter {
  display: grid;
  grid-template-columns: minmax(160px, .35fr) minmax(160px, .35fr) auto auto;
  gap: 12px;
  align-items: end;
  padding: 16px 24px;
  border-bottom: 1px solid var(--line);
}

.report-filter-popover {
  position: relative;
}

.report-filter-popover > summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
  color: var(--blue);
  font-weight: 900;
  cursor: pointer;
  list-style: none;
}

.report-filter-popover > summary::-webkit-details-marker {
  display: none;
}

.report-filter-popover-panel {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 25;
  display: grid;
  gap: 12px;
  width: min(520px, calc(100vw - 44px));
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(15, 23, 42, .16);
}

.report-vat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.report-unit-detail {
  width: min(1180px, calc(100vw - 34px));
}

.report-unit-detail-head {
  background: #f7f2ff;
}

.report-unit-title {
  display: flex;
  align-items: center;
  gap: 14px;
}

.report-unit-title .unit-dot {
  width: 46px;
  height: 46px;
  border-radius: 8px;
}

.report-unit-detail-body {
  display: grid;
  gap: 18px;
  padding: 22px 30px 30px;
}

.report-unit-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.report-unit-summary-grid .stat-card {
  min-height: 0;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  box-shadow: 0 8px 20px rgba(15, 23, 42, .06);
}

.report-unit-summary-grid .icon-box {
  width: 34px;
  height: 34px;
}

.report-unit-summary-grid .icon-box svg {
  width: 17px;
  height: 17px;
}

.report-unit-summary-grid .stat-card > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.report-unit-summary-grid .stat-card p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.report-unit-summary-grid .stat-card strong {
  font-size: 18px;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.report-unit-summary-grid .stat-card small {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
}

.stat-card-expense {
  background: #fff7ed;
  border-color: #fed7aa;
}

.stat-card-expense strong {
  color: #c2410c;
}

.report-unit-equation {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 18px 22px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
}

.report-unit-equation div {
  display: grid;
  gap: 4px;
}

.report-unit-equation strong {
  font-size: 1.25rem;
}

.report-unit-equation span {
  color: var(--muted);
  font-weight: 800;
}

.report-unit-equation .is-net {
  padding: 12px 18px;
  border-radius: 8px;
  background: #dcfce7;
}

.report-unit-expense-form {
  padding: 18px 24px;
  border-bottom: 1px solid var(--line);
  background: #fbf7ff;
}

.report-unit-expenses table td {
  vertical-align: middle;
}

.document-page.report-page {
  width: 210mm;
  min-height: 297mm;
  padding: 18mm 14mm 20mm;
}

.report-print-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8mm;
  margin-bottom: 8mm;
}

.report-print-two-col h3,
.report-print-section-title {
  margin: 0 0 4mm;
  font-size: 10pt;
}

.report-print-mini-table {
  font-size: 8pt;
}

.report-print-table {
  table-layout: fixed;
  font-size: 7.6pt;
}

.report-print-table th,
.report-print-table td {
  overflow-wrap: anywhere;
}

@media print {
  .document-page.report-page {
    width: 210mm !important;
    min-height: 297mm !important;
    page: portrait;
  }
}

@media (max-width: 980px) {
  .report-vat-grid,
  .report-print-two-col {
    grid-template-columns: 1fr;
  }

  .report-unit-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .report-vat-filter,
  .report-expense-filter {
    grid-template-columns: 1fr;
  }

  .report-filter-popover-panel {
    position: static;
    width: 100%;
    margin-top: 8px;
  }
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  body.print-window {
    background: #fff !important;
    margin: 0 !important;
  }

  .print-window-wrap {
    width: 210mm;
    margin: 0 !important;
    padding: 0 !important;
  }

  .print-window .document-page-a4,
  body.print-document-only #print-document-host .document-page-a4 {
    width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    padding: 17mm 18mm 10mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    break-after: avoid !important;
  }

  .print-window .document-page-a4 * {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
}

/* Precizan A4 racun */
.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 0 auto !important;
  padding: 16mm 14mm 9mm !important;
  display: flex !important;
  flex-direction: column !important;
  background: #fff !important;
  color: #000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.6pt !important;
  line-height: 1.18 !important;
  border: 1px solid #d7e3f2 !important;
  border-radius: 7px !important;
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.12) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.invoice-page-a4,
.invoice-page-a4 * {
  box-sizing: border-box !important;
}

.invoice-page-a4 p,
.invoice-page-a4 h1,
.invoice-page-a4 h2,
.invoice-page-a4 h3,
.invoice-page-a4 h4 {
  color: #000 !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 80mm 1fr !important;
  align-items: start !important;
  gap: 10mm !important;
  width: 100% !important;
  padding: 0 0 8mm !important;
  margin: 0 !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo-box {
  min-height: 36mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-logo {
  width: 56mm !important;
  max-width: 56mm !important;
  height: auto !important;
  max-height: 36mm !important;
  object-fit: contain !important;
  object-position: left top !important;
}

.invoice-page-a4 .document-company-a4 {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-self: end !important;
  gap: 0.35mm !important;
  max-width: 60mm !important;
  padding-top: 1mm !important;
  text-align: right !important;
  font-size: 4.9pt !important;
  line-height: 1.22 !important;
  color: #000 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 6.15pt !important;
  line-height: 1.15 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  width: 64mm !important;
  margin: 7mm 0 0 !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-buyer-a4 span {
  display: block !important;
  margin: 0 0 0.8mm !important;
  font-size: 4.35pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  font-size: 5.8pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: 0.6mm 0 0 !important;
  font-size: 5.05pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 32mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 4.5mm 0 0 !important;
  padding: 0 !important;
}

.invoice-page-a4 .document-title-row-a4 h2 {
  margin: 0 !important;
  font-size: 9.2pt !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-date-a4 {
  margin: 0 !important;
  text-align: right !important;
  font-size: 4.35pt !important;
  line-height: 1.2 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  gap: 9mm !important;
  margin: 4mm 0 0 !important;
  padding: 0 !important;
  font-size: 4.25pt !important;
  font-weight: 700 !important;
  color: #000 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  max-width: 100% !important;
  margin: 3.2mm 0 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  font-size: 4.5pt !important;
  line-height: 1.18 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-items th {
  padding: 1mm 0.55mm !important;
  background: #eef1f5 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.05pt !important;
  font-weight: 800 !important;
  text-align: left !important;
  overflow: hidden !important;
  text-overflow: clip !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.25mm 0.55mm !important;
  border-bottom: 1px solid #000 !important;
  vertical-align: top !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) {
  width: 5% !important;
  text-align: center !important;
}

.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) {
  width: 34% !important;
}

.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) {
  width: 7% !important;
  text-align: center !important;
}

.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) {
  width: 8% !important;
  text-align: right !important;
}

.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5),
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) {
  width: 11% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) {
  width: 8% !important;
  text-align: right !important;
}

.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) {
  width: 16% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 53mm !important;
  gap: 9mm !important;
  width: 100% !important;
  margin: 10mm 0 0 !important;
  padding: 0 !important;
  align-items: start !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4 .document-stay-a4 {
  font-size: 4.55pt !important;
  line-height: 1.28 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 0 1.25mm !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  margin: 4.5mm 0 1.5mm !important;
  font-size: 5pt !important;
  color: #000 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-summary-a4 {
  font-size: 4.65pt !important;
  color: #000 !important;
  min-width: 0 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: start !important;
  gap: 4mm !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong:last-child {
  white-space: nowrap !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 2.5mm !important;
  padding-top: 1.8mm !important;
  border-top: 1px solid #000 !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 64mm 58mm !important;
  justify-content: space-between !important;
  gap: 8mm !important;
  width: 100% !important;
  margin: 8mm 0 0 !important;
  padding: 0 !important;
  align-items: end !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 0.55fr 0.85fr !important;
  gap: 2.8mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 4.25pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin-bottom: 1mm !important;
  font-size: 4.7pt !important;
  text-decoration: underline !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  font-size: 4.1pt !important;
  color: #222 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 4.2pt !important;
  color: #000 !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 58mm !important;
  max-width: 58mm !important;
  text-align: center !important;
  font-size: 4.1pt !important;
  color: #222 !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image {
  width: 58mm !important;
  height: 20mm !important;
  max-width: 58mm !important;
  max-height: 20mm !important;
  display: block !important;
  object-fit: contain !important;
  object-position: right center !important;
}

.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.2mm !important;
  border-top: 1px solid #000 !important;
  color: #475569 !important;
  font-size: 4.2pt !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

@media screen {
  .document-preview-shell {
    overflow-x: auto !important;
    padding-bottom: 16px !important;
  }
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-document-only,
  body.print-window {
    width: 210mm !important;
    min-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    background: #fff !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.print-document-only > *:not(#print-document-host) {
    display: none !important;
  }

  #print-document-host,
  .print-window-wrap {
    width: 210mm !important;
    min-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  .print-window .document-page.invoice-page-a4,
  .print-window .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    padding: 16mm 14mm 9mm !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* A4 racun - zavrsni aktivni sloj v1.3.53 */
.document-preview-shell {
  overflow-x: auto !important;
  padding: 18px 0 24px !important;
}

.invoice-page-a4,
.invoice-page-a4 * {
  box-sizing: border-box !important;
}

.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  padding: 18mm 15mm 9mm !important;
  margin: 0 auto !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 6.25pt !important;
  line-height: 1.22 !important;
}

.document-drawer .invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  border: 1px solid #d7e5f4 !important;
  border-radius: 3px !important;
  box-shadow: 0 20px 48px rgba(15, 23, 42, .12) !important;
  margin: 16px auto !important;
}

.invoice-page-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: 82mm 1fr !important;
  gap: 8mm !important;
  align-items: start !important;
  padding: 0 0 12mm !important;
  border-bottom: 1px solid #d4dbe6 !important;
}

.invoice-page-a4 .document-logo-box {
  width: 82mm !important;
  height: 42mm !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding-left: 8mm !important;
  background: transparent !important;
  border: 0 !important;
}

.invoice-page-a4 .document-logo {
  width: 52mm !important;
  max-width: 52mm !important;
  max-height: 38mm !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
}

.invoice-page-a4 .document-company-a4 {
  width: 58mm !important;
  max-width: 58mm !important;
  justify-self: end !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: .85mm !important;
  color: #000 !important;
  font-size: 5.55pt !important;
  line-height: 1.18 !important;
  overflow: hidden !important;
}

.invoice-page-a4 .document-company-a4 strong {
  font-size: 7pt !important;
  font-weight: 800 !important;
  color: #000 !important;
  margin-bottom: .8mm !important;
}

.invoice-page-a4 .document-buyer-row-a4 {
  display: block !important;
  width: 70mm !important;
  margin: 10mm 0 4mm !important;
  font-size: 5.2pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-label {
  display: block !important;
  margin: 0 0 .8mm !important;
  color: #000 !important;
  font-size: 4.7pt !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 6.2pt !important;
  font-weight: 800 !important;
  margin-bottom: .6mm !important;
}

.invoice-page-a4 .document-buyer-a4 p {
  margin: .4mm 0 0 !important;
  color: #000 !important;
  font-size: 5.1pt !important;
}

.invoice-page-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  align-items: end !important;
  gap: 8mm !important;
  margin: 0 0 3mm !important;
}

.invoice-page-a4 .document-title-row-a4 h2 {
  margin: 0 !important;
  font-size: 12pt !important;
  line-height: 1.1 !important;
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-date-a4 {
  text-align: right !important;
  font-size: 5pt !important;
  color: #000 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 6pt !important;
  margin-top: .55mm !important;
}

.invoice-page-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: max-content max-content max-content !important;
  column-gap: 13mm !important;
  align-items: center !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 4.9pt !important;
  line-height: 1.1 !important;
}

.invoice-page-a4 .document-info-row-a4 strong {
  color: #000 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-items {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  font-size: 5.2pt !important;
  line-height: 1.18 !important;
}

.invoice-page-a4 .document-items th {
  padding: 1.05mm .65mm !important;
  background: #eef1f5 !important;
  border-bottom: 1px solid #000 !important;
  color: #000 !important;
  font-size: 4.8pt !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items td {
  padding: 1.15mm .65mm !important;
  border-bottom: .15mm solid #cfd6df !important;
  color: #000 !important;
  font-size: 5pt !important;
  vertical-align: top !important;
}

.invoice-page-a4 .document-items tr:last-child td {
  border-bottom: 0 !important;
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) { width: 5.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) { width: 34% !important; text-align: left !important; }
.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) { width: 7.5% !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) { width: 8% !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5) { width: 10.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) { width: 10.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) { width: 8.5% !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8),
.invoice-page-a4 .document-items td:nth-child(8) { width: 15.5% !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }

.invoice-page-a4 .document-bottom-a4 {
  display: grid !important;
  grid-template-columns: 1fr 53mm !important;
  gap: 10mm !important;
  align-items: start !important;
  margin: 12mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 {
  display: grid !important;
  grid-template-columns: 38mm 37mm 1fr !important;
  column-gap: 9mm !important;
  row-gap: 3mm !important;
  font-size: 5pt !important;
  line-height: 1.22 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 p {
  margin: 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-stay-a4 h4 {
  grid-column: 2 !important;
  margin: 4mm 0 0 !important;
  font-size: 5.6pt !important;
  color: #000 !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

.invoice-page-a4 .document-note-a4 {
  grid-column: 1 / 3 !important;
  margin-top: 0 !important;
  padding-bottom: 5mm !important;
  border-bottom: 1px solid #000 !important;
  max-width: 88mm !important;
}

.invoice-page-a4 .document-note-a4 p {
  margin: 1.2mm 0 0 !important;
  font-size: 4.8pt !important;
}

.invoice-page-a4 .document-summary-a4 {
  width: 53mm !important;
  font-size: 5.1pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4,
.invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 4mm !important;
  align-items: start !important;
  color: #000 !important;
}

.invoice-page-a4 .document-summary-line-a4 strong,
.invoice-page-a4 .document-summary-total-a4 strong:last-child {
  white-space: nowrap !important;
  color: #000 !important;
  text-align: right !important;
}

.invoice-page-a4 .document-summary-total-a4 {
  margin-top: 5mm !important;
  padding-top: 2mm !important;
  border-top: 1px solid #000 !important;
  font-size: 7pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

.invoice-page-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 60mm 58mm !important;
  gap: 18mm !important;
  align-items: end !important;
  margin: 11mm 0 0 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 {
  display: grid !important;
  grid-template-columns: 1fr 16mm 22mm !important;
  gap: 4mm !important;
  align-items: start !important;
  width: 60mm !important;
  padding-top: 3mm !important;
  border-top: 1px solid #000 !important;
  font-size: 4.4pt !important;
  line-height: 1.12 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin: 0 0 1.4mm !important;
  font-size: 5.1pt !important;
  font-weight: 800 !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  font-size: 4.35pt !important;
  color: #000 !important;
}

.invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 4.35pt !important;
  color: #000 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.invoice-page-a4 .payment-code {
  justify-self: end !important;
  width: 58mm !important;
  max-width: 58mm !important;
  min-height: 19mm !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
}

.invoice-page-a4 .payment-code-image {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: 19mm !important;
  object-fit: fill !important;
}

.invoice-page-a4 .payment-code span,
.invoice-page-a4 .payment-code small,
.invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.invoice-page-a4 .document-footer-a4 {
  margin-top: auto !important;
  padding-top: 2.5mm !important;
  border-top: 1px solid #000 !important;
  text-align: center !important;
  color: #555 !important;
  font-size: 4.4pt !important;
  line-height: 1.1 !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.print-window * {
    visibility: hidden !important;
  }

  body.print-window .print-window-wrap,
  body.print-window .print-window-wrap * {
    visibility: visible !important;
  }

  body.print-window .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.print-window .document-page.invoice-page-a4,
  body.print-window .document-page-a4.invoice-page-a4,
  body.print-window .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 297mm !important;
    min-height: 297mm !important;
    max-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 15mm 9mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    overflow: hidden !important;
    page-break-before: avoid !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
    break-before: avoid !important;
    break-after: avoid !important;
    break-inside: avoid !important;
  }
}

/* A4 racun - final last override v1.3.57 */
.document-page.invoice-page-a4,
.document-page-a4.invoice-page-a4,
.invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  background: #fff !important;
  color: #111 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 5.15pt !important;
  line-height: 1.16 !important;
  letter-spacing: 0 !important;
  -webkit-print-color-adjust: exact !important;
  print-color-adjust: exact !important;
}
.document-drawer-shell .invoice-page-a4 { margin: 16px auto 24px !important; border: 1px solid #d8e0ea !important; border-radius: 4px !important; box-shadow: 0 18px 50px rgba(15,23,42,.14) !important; }
.invoice-page-a4 *, .invoice-page-a4 *::before, .invoice-page-a4 *::after { box-sizing: border-box !important; color: inherit !important; }
.invoice-page-a4::before { content: "" !important; position: absolute !important; inset: 0 0 auto !important; height: 64mm !important; background: linear-gradient(180deg,#f5f6f7 0,#fff 100%) !important; z-index: 0 !important; }
.invoice-page-a4 .document-head-a4, .invoice-page-a4 .document-bottom-a4, .invoice-page-a4 .document-payment-a4 { display: block !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
.invoice-page-a4 .document-logo-box { position: absolute !important; left: 28mm !important; top: 23mm !important; width: 47mm !important; height: 35mm !important; display: flex !important; align-items: flex-start !important; justify-content: center !important; padding: 0 !important; overflow: hidden !important; z-index: 1 !important; color: #3f3f3f !important; text-align: center !important; }
.invoice-page-a4 .document-logo { display: block !important; width: 47mm !important; max-width: 47mm !important; height: 35mm !important; max-height: 35mm !important; object-fit: contain !important; object-position: center center !important; }
.invoice-page-a4 .document-logo-box h2 { margin: 10mm 0 0 !important; color: #3f3f3f !important; font-family: Georgia,"Times New Roman",serif !important; font-size: 14.7pt !important; line-height: .95 !important; font-style: italic !important; font-weight: 700 !important; }
.invoice-page-a4 .document-company-a4 { position: absolute !important; top: 22mm !important; right: 15mm !important; width: 47mm !important; display: block !important; text-align: right !important; color: #222 !important; font-size: 5pt !important; line-height: 1.35 !important; z-index: 1 !important; }
.invoice-page-a4 .document-company-a4 strong { display: block !important; margin: 0 0 2.7mm !important; padding-bottom: 1.8mm !important; border-bottom: .3mm solid #d1d5db !important; color: #000 !important; font-size: 7.2pt !important; line-height: 1.1 !important; font-weight: 800 !important; }
.invoice-page-a4 .document-company-a4 span { display: block !important; margin: 0 !important; color: #222 !important; }
.invoice-page-a4 .document-buyer-row-a4 { position: absolute !important; left: 15mm !important; top: 72mm !important; width: 65mm !important; margin: 0 !important; padding: 0 !important; color: #000 !important; font-size: 5pt !important; line-height: 1.25 !important; z-index: 1 !important; }
.invoice-page-a4 .document-buyer-a4 > span, .invoice-page-a4 .document-label { display: block !important; width: 20mm !important; margin: 0 0 1.5mm !important; padding-bottom: .8mm !important; border-bottom: .25mm solid #c4c8cf !important; color: #000 !important; font-size: 4.2pt !important; line-height: 1 !important; font-weight: 800 !important; text-transform: uppercase !important; }
.invoice-page-a4 .document-buyer-a4 strong { display: block !important; color: #000 !important; font-size: 6.2pt !important; line-height: 1.15 !important; font-weight: 800 !important; }
.invoice-page-a4 .document-buyer-a4 p { margin: 1.2mm 0 0 !important; color: #000 !important; font-size: 4.8pt !important; }
.invoice-page-a4 .document-title-row-a4 { display: block !important; margin: 0 !important; padding: 0 !important; }
.invoice-page-a4 .document-title-a4 h2, .invoice-page-a4 .document-title-row-a4 h2 { position: absolute !important; left: 15mm !important; top: 93mm !important; margin: 0 !important; padding: 0 !important; color: #000 !important; font-size: 12.1pt !important; line-height: 1 !important; font-weight: 800 !important; text-transform: none !important; z-index: 1 !important; }
.invoice-page-a4 .document-date-a4 { position: absolute !important; top: 92mm !important; right: 15mm !important; width: 30mm !important; margin: 0 !important; text-align: right !important; color: #333 !important; font-size: 4.5pt !important; line-height: 1.15 !important; z-index: 1 !important; }
.invoice-page-a4 .document-date-a4 strong { display: block !important; margin-top: .5mm !important; color: #000 !important; font-size: 6pt !important; font-weight: 800 !important; }
.invoice-page-a4 .document-info-row-a4 { position: absolute !important; left: 15mm !important; top: 104mm !important; display: flex !important; align-items: center !important; gap: 15mm !important; margin: 0 !important; padding: 0 !important; color: #111 !important; font-size: 4.8pt !important; line-height: 1 !important; white-space: nowrap !important; z-index: 1 !important; }
.invoice-page-a4 .document-info-row-a4 span { display: inline-block !important; color: #111 !important; }
.invoice-page-a4 .document-info-row-a4 strong { color: #000 !important; font-weight: 800 !important; }
.invoice-page-a4 .document-items { position: absolute !important; left: 15mm !important; top: 112mm !important; width: 180mm !important; max-width: 180mm !important; margin: 0 !important; border-collapse: collapse !important; table-layout: fixed !important; border-top: .35mm solid #000 !important; border-bottom: .35mm solid #000 !important; color: #000 !important; font-size: 4.65pt !important; line-height: 1.08 !important; z-index: 1 !important; }
.invoice-page-a4 .document-items th { padding: 1.2mm .7mm !important; background: #e5e7eb !important; border-bottom: .35mm solid #000 !important; color: #000 !important; font-size: 4.45pt !important; line-height: 1.08 !important; font-weight: 800 !important; text-align: left !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items td { padding: 1.35mm .7mm !important; border-bottom: .15mm solid #d7d7d7 !important; color: #000 !important; font-size: 4.65pt !important; line-height: 1.08 !important; vertical-align: top !important; }
.invoice-page-a4 .document-items tr:last-child td { border-bottom: 0 !important; }
.invoice-page-a4 .document-items th:nth-child(1), .invoice-page-a4 .document-items td:nth-child(1) { width: 9mm !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(2), .invoice-page-a4 .document-items td:nth-child(2) { width: 80mm !important; text-align: left !important; white-space: normal !important; }
.invoice-page-a4 .document-items th:nth-child(3), .invoice-page-a4 .document-items td:nth-child(3) { width: 13mm !important; text-align: center !important; }
.invoice-page-a4 .document-items th:nth-child(4), .invoice-page-a4 .document-items td:nth-child(4) { width: 14mm !important; text-align: right !important; }
.invoice-page-a4 .document-items th:nth-child(5), .invoice-page-a4 .document-items td:nth-child(5) { width: 17mm !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(6), .invoice-page-a4 .document-items td:nth-child(6) { width: 17mm !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(7), .invoice-page-a4 .document-items td:nth-child(7) { width: 15mm !important; text-align: right !important; white-space: nowrap !important; }
.invoice-page-a4 .document-items th:nth-child(8), .invoice-page-a4 .document-items td:nth-child(8) { width: 15mm !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }
.invoice-page-a4 .document-summary-a4 { position: absolute !important; top: 136mm !important; right: 15mm !important; width: 74mm !important; margin: 0 !important; padding: 4mm 4mm 3.5mm !important; background: #f3f4f6 !important; border-top: .35mm solid #111 !important; color: #111 !important; font-size: 5.05pt !important; line-height: 1.1 !important; z-index: 1 !important; }
.invoice-page-a4 .document-summary-line-a4, .invoice-page-a4 .document-summary-total-a4 { display: grid !important; grid-template-columns: 1fr auto !important; gap: 6mm !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; color: #111 !important; }
.invoice-page-a4 .document-summary-a4 strong { color: #000 !important; text-align: right !important; white-space: nowrap !important; font-weight: 800 !important; }
.invoice-page-a4 .document-summary-total-a4 { margin-top: 4mm !important; padding-top: 2mm !important; border-top: .35mm solid #000 !important; color: #000 !important; font-size: 7.4pt !important; line-height: 1.1 !important; font-weight: 800 !important; }
.invoice-page-a4 .document-stay-a4 { position: absolute !important; left: 15mm !important; top: 157mm !important; width: 70mm !important; display: block !important; color: #444 !important; font-size: 4.85pt !important; line-height: 1.28 !important; z-index: 1 !important; }
.invoice-page-a4 .document-stay-a4 p { margin: 0 0 1mm !important; color: #444 !important; }
.invoice-page-a4 .document-stay-a4 h4 { display: none !important; }
.invoice-page-a4 .document-note-a4 { position: absolute !important; left: 15mm !important; top: 175mm !important; width: 90mm !important; margin: 0 !important; padding: 0 0 5mm !important; border-bottom: .35mm solid #000 !important; color: #111 !important; font-size: 4.85pt !important; line-height: 1.28 !important; z-index: 1 !important; }
.invoice-page-a4 .document-note-a4 h4, .invoice-page-a4 .document-note-a4 strong { display: block !important; margin: 0 0 2.4mm !important; color: #000 !important; font-size: 5.2pt !important; line-height: 1 !important; font-weight: 800 !important; text-decoration: underline !important; }
.invoice-page-a4 .document-note-a4 p { margin: 0 !important; color: #111 !important; font-size: 4.85pt !important; line-height: 1.28 !important; }
.invoice-page-a4 .document-payment-data-a4 { position: absolute !important; left: 15mm !important; top: 196mm !important; width: 74mm !important; display: grid !important; grid-template-columns: 1fr 18mm 25mm !important; column-gap: 5mm !important; margin: 0 !important; padding: 3mm 3mm 2.6mm !important; background: #f7f7f8 !important; border-top: .35mm solid #111 !important; color: #111 !important; font-size: 4.45pt !important; line-height: 1.16 !important; z-index: 1 !important; }
.invoice-page-a4 .document-payment-title-a4 { grid-column: 1 / -1 !important; display: block !important; margin: 0 0 2mm !important; color: #000 !important; font-size: 5.2pt !important; line-height: 1 !important; font-weight: 800 !important; text-decoration: underline !important; }
.invoice-page-a4 .document-payment-data-a4 span, .invoice-page-a4 .document-payment-data-a4 strong { display: block !important; color: #000 !important; }
.invoice-page-a4 .document-payment-data-a4 span { margin-bottom: 1.2mm !important; }
.invoice-page-a4 .document-payment-data-a4 strong { font-size: 4.25pt !important; font-weight: 800 !important; overflow-wrap: anywhere !important; }
.invoice-page-a4 .payment-code { position: absolute !important; right: 15mm !important; top: 214mm !important; width: 91mm !important; height: 16mm !important; max-width: 91mm !important; min-height: 16mm !important; margin: 0 !important; padding: 0 !important; display: flex !important; align-items: center !important; justify-content: flex-end !important; overflow: hidden !important; background: transparent !important; border: 0 !important; z-index: 1 !important; }
.invoice-page-a4 .payment-code-image { display: block !important; width: 91mm !important; max-width: 91mm !important; height: 16mm !important; max-height: 16mm !important; object-fit: fill !important; object-position: right center !important; margin: 0 !important; }
.invoice-page-a4 .payment-code span, .invoice-page-a4 .payment-code small, .invoice-page-a4 .payment-code .muted { display: none !important; }
.invoice-page-a4 .document-footer-a4 { position: absolute !important; left: 15mm !important; right: 15mm !important; bottom: 14mm !important; margin: 0 !important; padding: 3mm 0 0 !important; border-top: .35mm solid #000 !important; color: #606060 !important; text-align: center !important; font-size: 4.45pt !important; line-height: 1 !important; z-index: 1 !important; }
@media print {
  @page { size: A4 portrait; margin: 0; }
  html, body.print-window, body.print-document-only { width: 210mm !important; min-width: 210mm !important; max-width: 210mm !important; height: 297mm !important; min-height: 297mm !important; max-height: 297mm !important; margin: 0 !important; padding: 0 !important; background: #fff !important; overflow: hidden !important; }
  body.print-window * { visibility: hidden !important; }
  body.print-window .print-window-wrap, body.print-window .print-window-wrap * { visibility: visible !important; }
  body.print-document-only > *:not(#print-document-host) { display: none !important; }
  #print-document-host, .print-window-wrap { position: fixed !important; inset: 0 !important; width: 210mm !important; min-width: 210mm !important; max-width: 210mm !important; height: 297mm !important; min-height: 297mm !important; max-height: 297mm !important; margin: 0 !important; padding: 0 !important; background: #fff !important; overflow: hidden !important; }
  body.print-window .document-page.invoice-page-a4, body.print-window .document-page-a4.invoice-page-a4, body.print-window .invoice-page-a4, body.print-document-only #print-document-host .document-page.invoice-page-a4, body.print-document-only #print-document-host .document-page-a4.invoice-page-a4, body.print-document-only #print-document-host .invoice-page-a4 { width: 210mm !important; min-width: 210mm !important; max-width: 210mm !important; height: 297mm !important; min-height: 297mm !important; max-height: 297mm !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; transform: none !important; overflow: hidden !important; page-break-before: avoid !important; page-break-after: avoid !important; page-break-inside: avoid !important; break-before: avoid !important; break-after: avoid !important; break-inside: avoid !important; }
}

/* A4 racun - screen preview correction v1.3.58 */
.invoice-page-a4::before {
  display: none !important;
  content: none !important;
  background: transparent !important;
}

@media screen {
  .document-drawer-shell .document-drawer {
    overflow: auto !important;
  }

  .document-drawer-shell .invoice-page-a4 {
    transform: none !important;
    zoom: 1.18;
    margin: 18px auto 36px !important;
  }
}

@media print {
  .document-drawer-shell .invoice-page-a4,
  .print-window-wrap .invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    zoom: 1 !important;
    transform: none !important;
  }
}

/* A4 racun - readable drawer preview v1.3.59 */
@media screen {
  .document-drawer-shell .invoice-page-a4::before {
    display: none !important;
    content: none !important;
  }

  .document-drawer-shell .invoice-page-a4 {
    zoom: 1 !important;
    margin: 18px auto 36px !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-company-a4 {
    font-size: 6.2pt !important;
    line-height: 1.28 !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-company-a4 strong {
    font-size: 8.2pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-buyer-row-a4 {
    font-size: 6.25pt !important;
    line-height: 1.22 !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-buyer-a4 > span,
  .document-drawer-shell .invoice-page-a4 .document-label {
    font-size: 5.2pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-buyer-a4 strong {
    font-size: 7.4pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-buyer-a4 p {
    font-size: 5.9pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-title-a4 h2,
  .document-drawer-shell .invoice-page-a4 .document-title-row-a4 h2 {
    font-size: 15pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-date-a4 {
    font-size: 5.4pt !important;
    width: 34mm !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-date-a4 strong {
    font-size: 7.2pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-info-row-a4 {
    font-size: 5.9pt !important;
    gap: 13mm !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-items {
    font-size: 5.75pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-items th {
    font-size: 5.45pt !important;
    padding-top: 1.4mm !important;
    padding-bottom: 1.4mm !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-items td {
    font-size: 5.7pt !important;
    padding-top: 1.55mm !important;
    padding-bottom: 1.55mm !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-a4 {
    right: 12mm !important;
    width: 82mm !important;
    padding: 4.2mm 4mm 3.6mm !important;
    font-size: 6.1pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-line-a4,
  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 {
    grid-template-columns: minmax(0, 1fr) max-content !important;
    gap: 3.5mm !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 {
    font-size: 8.5pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-stay-a4,
  .document-drawer-shell .invoice-page-a4 .document-note-a4 {
    font-size: 5.9pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-note-a4 h4,
  .document-drawer-shell .invoice-page-a4 .document-note-a4 strong {
    font-size: 6.1pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-payment-data-a4 {
    width: 82mm !important;
    grid-template-columns: 1fr 20mm 27mm !important;
    font-size: 5.35pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-payment-title-a4 {
    font-size: 6.1pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-payment-data-a4 strong {
    font-size: 5.2pt !important;
  }
}

/* A4 racun - larger drawer preview v1.3.60 */
@media screen and (min-width: 900px) {
  .document-drawer-shell {
    justify-items: end !important;
  }

  .document-drawer-shell .document-drawer {
    width: min(1540px, calc(100vw - 12px)) !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .document-drawer-shell .unit-drawer-head {
    margin-left: -10px !important;
    margin-right: -10px !important;
    padding-left: 28px !important;
    padding-right: 22px !important;
  }

  .document-drawer-shell .invoice-page-a4 {
    zoom: 1.42 !important;
    margin: 12px auto 42px !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-title-a4 h2,
  .document-drawer-shell .invoice-page-a4 .document-title-row-a4 h2 {
    font-size: 16.2pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-info-row-a4 {
    font-size: 6.4pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-items {
    font-size: 6.3pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-items th {
    font-size: 6pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-items td {
    font-size: 6.15pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-a4 {
    right: 15mm !important;
    width: 70mm !important;
    padding: 3.4mm 3.4mm 3.2mm !important;
    overflow: hidden !important;
    font-size: 6.2pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-line-a4,
  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: minmax(0, 1fr) minmax(22mm, 28mm) !important;
    gap: 2.5mm !important;
    overflow: hidden !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-line-a4 span,
  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 span {
    min-width: 0 !important;
    text-align: right !important;
    overflow-wrap: normal !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-line-a4 strong,
  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 strong {
    min-width: 0 !important;
    max-width: 28mm !important;
    text-align: right !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 {
    font-size: 8.2pt !important;
    line-height: 1.08 !important;
  }
}

/* Dokument screen preview + A4 print/PDF v1.3.62 */
.document-screen-preview {
  display: block;
  margin: 18px 0 28px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(15, 31, 53, .08);
  color: var(--ink);
}

.document-screen-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 24px;
  align-items: start;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--line);
}

.document-screen-head h2 {
  margin: 4px 0 8px;
  font-size: 30px;
  line-height: 1.1;
}

.document-screen-head span,
.document-screen-grid span,
.document-screen-payment span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.document-screen-company {
  display: grid;
  gap: 4px;
  text-align: right;
  color: var(--muted);
  font-size: 13px;
}

.document-screen-company strong {
  color: var(--ink);
  font-size: 16px;
}

.document-screen-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.document-screen-grid > div,
.document-screen-payment,
.document-screen-summary,
.document-screen-note {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfcfe;
}

.document-screen-grid > div {
  padding: 16px;
}

.document-screen-grid strong {
  display: block;
  margin-top: 6px;
  font-size: 17px;
}

.document-screen-grid p {
  margin: 6px 0 0;
  color: var(--muted);
}

.document-screen-table-wrap {
  margin-top: 20px;
  overflow-x: auto;
}

.document-screen-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.document-screen-table th {
  padding: 12px 10px;
  background: #eef2f6;
  color: var(--ink);
  text-align: left;
  font-size: 12px;
  text-transform: uppercase;
}

.document-screen-table td {
  padding: 14px 10px;
  border-bottom: 1px solid var(--line);
}

.document-screen-table th:not(:first-child),
.document-screen-table td:not(:first-child) {
  text-align: right;
  white-space: nowrap;
}

.document-screen-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 18px;
  align-items: start;
  margin-top: 20px;
}

.document-screen-note {
  padding: 16px;
}

.document-screen-note h3 {
  margin: 0 0 10px;
  font-size: 16px;
}

.document-screen-note p {
  margin: 0;
  line-height: 1.45;
}

.document-screen-summary {
  padding: 16px;
  background: #f4f6f8;
}

.document-screen-summary p,
.document-screen-summary h3 {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin: 0;
}

.document-screen-summary p {
  padding-bottom: 12px;
  border-bottom: 1px solid #c9d3df;
}

.document-screen-summary h3 {
  padding-top: 12px;
  font-size: 18px;
}

.document-screen-summary span {
  color: var(--muted);
  text-transform: uppercase;
  font-size: 12px;
}

.document-screen-payment {
  display: grid;
  grid-template-columns: 1.4fr .6fr .8fr;
  gap: 16px;
  margin-top: 18px;
  padding: 16px;
}

.document-screen-payment strong {
  display: block;
  margin-top: 6px;
  overflow-wrap: anywhere;
}

.document-drawer-shell .invoice-page-a4 {
  display: none !important;
}

@media screen and (max-width: 760px) {
  .document-screen-head,
  .document-screen-grid,
  .document-screen-bottom,
  .document-screen-payment {
    grid-template-columns: 1fr;
  }

  .document-screen-company {
    text-align: left;
  }
}

@media print {
  .document-screen-preview {
    display: none !important;
  }

  .print-window-wrap .invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    display: block !important;
  }
}

/* A4 racun - drawer preview reset v1.3.61 */
@media screen and (min-width: 900px) {
  .document-drawer-shell {
    justify-items: end !important;
  }

  .document-drawer-shell .document-drawer {
    width: min(960px, calc(100vw - 28px)) !important;
    height: 100dvh !important;
    overflow-y: auto !important;
    overflow-x: auto !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .document-drawer-shell .unit-drawer-head {
    margin-left: -22px !important;
    margin-right: -22px !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .document-drawer-shell .invoice-page-a4 {
    zoom: 1 !important;
    transform: none !important;
    margin: 18px auto 36px !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-company-a4 {
    font-size: 6.4pt !important;
    line-height: 1.28 !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-company-a4 strong {
    font-size: 8.4pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-buyer-row-a4 {
    font-size: 6.4pt !important;
    line-height: 1.24 !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-buyer-a4 > span,
  .document-drawer-shell .invoice-page-a4 .document-label {
    font-size: 5.4pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-buyer-a4 strong {
    font-size: 7.6pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-title-a4 h2,
  .document-drawer-shell .invoice-page-a4 .document-title-row-a4 h2 {
    font-size: 15.6pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-info-row-a4,
  .document-drawer-shell .invoice-page-a4 .document-items,
  .document-drawer-shell .invoice-page-a4 .document-stay-a4,
  .document-drawer-shell .invoice-page-a4 .document-note-a4 {
    font-size: 6.2pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-items th {
    font-size: 5.9pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-items td {
    font-size: 6.05pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-a4 {
    right: 15mm !important;
    width: 72mm !important;
    padding: 3.6mm 3.6mm 3.2mm !important;
    overflow: hidden !important;
    font-size: 6.1pt !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-line-a4,
  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 26mm !important;
    gap: 3mm !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-line-a4 span,
  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 span {
    min-width: 0 !important;
    text-align: right !important;
    white-space: normal !important;
    overflow: hidden !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-line-a4 strong,
  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 strong {
    width: 26mm !important;
    max-width: 26mm !important;
    text-align: right !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }

  .document-drawer-shell .invoice-page-a4 .document-summary-total-a4 {
    font-size: 7.8pt !important;
    line-height: 1.1 !important;
  }
}

/* Dokument pregled + A4 print/PDF final v1.3.62 */
.document-drawer-shell .document-drawer {
  width: min(1040px, calc(100vw - 32px)) !important;
}

.document-drawer-shell .invoice-page-a4 {
  display: none !important;
}

.document-screen-preview {
  max-width: 920px;
  margin: 18px auto 32px;
}

.document-screen-note p {
  font-size: 15px;
}

.document-screen-summary h3 {
  align-items: center;
  font-size: 20px;
}

body.print-window .document-screen-preview,
body.print-document-only #print-document-host .document-screen-preview {
  display: none !important;
}

body.print-window .print-window-wrap .invoice-page-a4,
body.print-document-only #print-document-host .invoice-page-a4 {
  display: block !important;
}

.print-window-wrap .invoice-page-a4,
body.print-document-only #print-document-host .invoice-page-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: #fff !important;
  overflow: hidden !important;
}

.print-window-wrap .invoice-page-a4 .document-head-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-head-a4 {
  position: static !important;
  display: block !important;
}

.print-window-wrap .invoice-page-a4 .document-logo-box,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo-box {
  position: absolute !important;
  top: 17mm !important;
  left: 20mm !important;
  width: 48mm !important;
  height: 28mm !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.print-window-wrap .invoice-page-a4 .document-logo,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo {
  width: 48mm !important;
  max-width: 48mm !important;
  height: 28mm !important;
  max-height: 28mm !important;
  object-fit: contain !important;
}

.print-window-wrap .invoice-page-a4 .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 {
  position: absolute !important;
  top: 19mm !important;
  right: 18mm !important;
  width: 50mm !important;
  text-align: right !important;
  color: #111 !important;
  font-size: 6.3pt !important;
  line-height: 1.32 !important;
}

.print-window-wrap .invoice-page-a4 .document-company-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 strong {
  margin-bottom: 2.5mm !important;
  padding-bottom: 1.7mm !important;
  border-bottom: .25mm solid #cfd5dd !important;
  font-size: 8.3pt !important;
  line-height: 1.1 !important;
}

.print-window-wrap .invoice-page-a4 .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-row-a4 {
  position: absolute !important;
  top: 68mm !important;
  left: 20mm !important;
  width: 70mm !important;
  font-size: 6.4pt !important;
  line-height: 1.28 !important;
}

.print-window-wrap .invoice-page-a4 .document-buyer-a4 > span,
.print-window-wrap .invoice-page-a4 .document-label,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 > span,
body.print-document-only #print-document-host .invoice-page-a4 .document-label {
  width: 25mm !important;
  margin-bottom: 1.8mm !important;
  padding-bottom: .9mm !important;
  border-bottom: .25mm solid #c4c9d1 !important;
  font-size: 5.4pt !important;
  font-weight: 900 !important;
}

.print-window-wrap .invoice-page-a4 .document-buyer-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 strong {
  font-size: 8pt !important;
  line-height: 1.15 !important;
}

.print-window-wrap .invoice-page-a4 .document-title-row-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-row-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-a4 h2 {
  position: absolute !important;
  top: 91mm !important;
  left: 20mm !important;
  font-size: 16.5pt !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.print-window-wrap .invoice-page-a4 .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 {
  position: absolute !important;
  top: 90mm !important;
  right: 18mm !important;
  width: 36mm !important;
  font-size: 5.6pt !important;
  line-height: 1.18 !important;
}

.print-window-wrap .invoice-page-a4 .document-date-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 strong {
  font-size: 7.2pt !important;
}

.print-window-wrap .invoice-page-a4 .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-info-row-a4 {
  position: absolute !important;
  top: 106mm !important;
  left: 20mm !important;
  width: 172mm !important;
  display: flex !important;
  gap: 15mm !important;
  font-size: 6.1pt !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

.print-window-wrap .invoice-page-a4 .document-items,
body.print-document-only #print-document-host .invoice-page-a4 .document-items {
  position: absolute !important;
  top: 116mm !important;
  left: 20mm !important;
  width: 172mm !important;
  max-width: 172mm !important;
  border-top: .35mm solid #000 !important;
  border-bottom: .35mm solid #000 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  font-size: 6pt !important;
  line-height: 1.16 !important;
}

.print-window-wrap .invoice-page-a4 .document-items th,
body.print-document-only #print-document-host .invoice-page-a4 .document-items th {
  padding: 1.45mm .8mm !important;
  background: #eef1f4 !important;
  border-bottom: .35mm solid #000 !important;
  font-size: 5.8pt !important;
  line-height: 1.1 !important;
}

.print-window-wrap .invoice-page-a4 .document-items td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items td {
  padding: 1.55mm .8mm !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

.print-window-wrap .invoice-page-a4 .document-items th:nth-child(1),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(1),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(1),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(1) { width: 8mm !important; text-align: center !important; }

.print-window-wrap .invoice-page-a4 .document-items th:nth-child(2),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(2),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(2),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(2) { width: 70mm !important; text-align: left !important; white-space: normal !important; }

.print-window-wrap .invoice-page-a4 .document-items th:nth-child(3),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(3),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(3),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(3) { width: 12mm !important; text-align: center !important; }

.print-window-wrap .invoice-page-a4 .document-items th:nth-child(4),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(4),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(4),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(4) { width: 14mm !important; text-align: right !important; }

.print-window-wrap .invoice-page-a4 .document-items th:nth-child(5),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(5),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(6),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(6),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(5),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(5),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(6),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(6) { width: 17mm !important; text-align: right !important; white-space: nowrap !important; }

.print-window-wrap .invoice-page-a4 .document-items th:nth-child(7),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(7),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(7),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(7) { width: 14mm !important; text-align: right !important; white-space: nowrap !important; }

.print-window-wrap .invoice-page-a4 .document-items th:nth-child(8),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(8),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(8),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(8) { width: 20mm !important; text-align: right !important; white-space: nowrap !important; font-weight: 900 !important; }

.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  position: absolute !important;
  top: 144mm !important;
  right: 18mm !important;
  width: 78mm !important;
  padding: 4.2mm 4.5mm 4mm !important;
  background: #f3f4f6 !important;
  border-top: .38mm solid #000 !important;
  border-bottom: .25mm solid #111 !important;
  color: #000 !important;
  font-size: 6.4pt !important;
  line-height: 1.12 !important;
  overflow: hidden !important;
}

.print-window-wrap .invoice-page-a4 .document-summary-line-a4,
.print-window-wrap .invoice-page-a4 .document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 30mm !important;
  gap: 4mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
}

.print-window-wrap .invoice-page-a4 .document-summary-line-a4 span,
.print-window-wrap .invoice-page-a4 .document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-line-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-total-a4 span {
  min-width: 0 !important;
  text-align: right !important;
  white-space: normal !important;
  overflow: hidden !important;
}

.print-window-wrap .invoice-page-a4 .document-summary-line-a4 strong,
.print-window-wrap .invoice-page-a4 .document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-line-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-total-a4 strong {
  width: 30mm !important;
  max-width: 30mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.print-window-wrap .invoice-page-a4 .document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-total-a4 {
  margin-top: 4mm !important;
  padding-top: 2.3mm !important;
  border-top: .35mm solid #000 !important;
  font-size: 8.6pt !important;
  line-height: 1.05 !important;
}

.print-window-wrap .invoice-page-a4 .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 {
  position: absolute !important;
  top: 168mm !important;
  left: 20mm !important;
  width: 76mm !important;
  font-size: 6.2pt !important;
  line-height: 1.32 !important;
}

.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  position: absolute !important;
  top: 188mm !important;
  left: 20mm !important;
  width: 108mm !important;
  padding-bottom: 5mm !important;
  border-bottom: .35mm solid #000 !important;
  font-size: 6.1pt !important;
  line-height: 1.34 !important;
}

.print-window-wrap .invoice-page-a4 .document-note-a4 h4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 h4 {
  margin: 0 0 2.4mm !important;
  font-size: 6.3pt !important;
  text-decoration: underline !important;
}

.print-window-wrap .invoice-page-a4 .document-note-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 p {
  margin: 0 !important;
  font-size: 6.1pt !important;
  line-height: 1.34 !important;
}

.print-window-wrap .invoice-page-a4 .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 {
  position: absolute !important;
  top: 214mm !important;
  left: 20mm !important;
  width: 90mm !important;
  display: grid !important;
  grid-template-columns: 1fr 20mm 26mm !important;
  column-gap: 6mm !important;
  padding: 3.4mm 3.5mm 3mm !important;
  background: #f7f7f8 !important;
  border-top: .35mm solid #111 !important;
  font-size: 5.4pt !important;
  line-height: 1.18 !important;
}

.print-window-wrap .invoice-page-a4 .document-payment-title-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin-bottom: 2.3mm !important;
  font-size: 6pt !important;
}

.print-window-wrap .invoice-page-a4 .document-payment-data-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 strong {
  font-size: 5.3pt !important;
  overflow-wrap: anywhere !important;
}

.print-window-wrap .invoice-page-a4 .payment-code,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code {
  position: absolute !important;
  top: 230mm !important;
  right: 18mm !important;
  width: 86mm !important;
  height: 18mm !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  overflow: hidden !important;
}

.print-window-wrap .invoice-page-a4 .payment-code-image,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code-image {
  width: 86mm !important;
  max-width: 86mm !important;
  height: 18mm !important;
  max-height: 18mm !important;
  object-fit: contain !important;
  object-position: right center !important;
}

.print-window-wrap .invoice-page-a4 .document-footer-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-footer-a4 {
  position: absolute !important;
  left: 20mm !important;
  right: 18mm !important;
  bottom: 12mm !important;
  padding-top: 3mm !important;
  border-top: .35mm solid #000 !important;
  font-size: 5.2pt !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html,
  body.print-window,
  body.print-document-only {
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  #print-document-host,
  .print-window-wrap {
    position: fixed !important;
    inset: 0 !important;
    width: 210mm !important;
    height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  .document-screen-preview {
    display: none !important;
  }

  .print-window-wrap .invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    display: block !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
}

/* Base44-style racun preview u ERP-u v1.3.63 */
.document-drawer-shell {
  align-items: stretch !important;
}

.document-drawer-shell .document-drawer {
  width: min(1160px, calc(100vw - 36px)) !important;
  max-width: none !important;
  height: 100dvh !important;
  padding: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  background: #eef3f8 !important;
}

.document-drawer-shell .unit-drawer-head {
  position: sticky !important;
  top: 0 !important;
  z-index: 10 !important;
  margin: 0 !important;
  padding: 18px 28px !important;
  border-bottom: 1px solid #d8e2ee !important;
  background: #fff !important;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03) !important;
}

.document-drawer-shell .unit-drawer-head h2 {
  font-size: 28px !important;
  line-height: 1.12 !important;
}

.document-drawer-shell .unit-drawer-head .action-row {
  gap: 10px !important;
}

.document-drawer-shell .unit-drawer-head .button {
  min-height: 40px !important;
  border-radius: 7px !important;
}

.document-drawer-shell .document-screen-preview {
  display: none !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  display: block !important;
  position: relative !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 28px auto 42px !important;
  padding: 0 !important;
  zoom: .82 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .16), 0 0 0 1px rgba(148, 163, 184, .24) !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4::before {
  display: none !important;
}

.document-drawer-shell .invoice-page-a4 .document-head-a4 {
  position: static !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo-box {
  position: absolute !important;
  top: 17mm !important;
  left: 20mm !important;
  width: 48mm !important;
  height: 28mm !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo {
  width: 48mm !important;
  max-width: 48mm !important;
  height: 28mm !important;
  max-height: 28mm !important;
  object-fit: contain !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4 {
  position: absolute !important;
  top: 19mm !important;
  right: 18mm !important;
  width: 50mm !important;
  text-align: right !important;
  color: #111 !important;
  font-size: 6.3pt !important;
  line-height: 1.32 !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4 strong {
  display: block !important;
  margin-bottom: 2.5mm !important;
  padding-bottom: 1.7mm !important;
  border-bottom: .25mm solid #cfd5dd !important;
  color: #000 !important;
  font-size: 8.3pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-row-a4 {
  position: absolute !important;
  top: 68mm !important;
  left: 20mm !important;
  width: 70mm !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 6.4pt !important;
  line-height: 1.28 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 > span,
.document-drawer-shell .invoice-page-a4 .document-label {
  width: 25mm !important;
  margin-bottom: 1.8mm !important;
  padding-bottom: .9mm !important;
  border-bottom: .25mm solid #c4c9d1 !important;
  color: #000 !important;
  font-size: 5.4pt !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 strong {
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 p {
  margin: 1.2mm 0 0 !important;
  color: #000 !important;
  font-size: 6pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-title-row-a4 h2,
.document-drawer-shell .invoice-page-a4 .document-title-a4 h2 {
  position: absolute !important;
  top: 91mm !important;
  left: 20mm !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 16.5pt !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4 {
  position: absolute !important;
  top: 90mm !important;
  right: 18mm !important;
  width: 36mm !important;
  margin: 0 !important;
  text-align: right !important;
  color: #111 !important;
  font-size: 5.6pt !important;
  line-height: 1.18 !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-info-row-a4 {
  position: absolute !important;
  top: 106mm !important;
  left: 20mm !important;
  width: 172mm !important;
  display: flex !important;
  gap: 15mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #111 !important;
  font-size: 6.1pt !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-items {
  position: absolute !important;
  top: 116mm !important;
  left: 20mm !important;
  width: 172mm !important;
  max-width: 172mm !important;
  margin: 0 !important;
  border-top: .35mm solid #000 !important;
  border-bottom: .35mm solid #000 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  color: #000 !important;
  font-size: 6pt !important;
  line-height: 1.16 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th {
  padding: 1.45mm .8mm !important;
  background: #eef1f4 !important;
  border-bottom: .35mm solid #000 !important;
  color: #000 !important;
  font-size: 5.8pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items td {
  padding: 1.55mm .8mm !important;
  color: #000 !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(1),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(1) { width: 8mm !important; text-align: center !important; }
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(2),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(2) { width: 70mm !important; text-align: left !important; white-space: normal !important; }
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(3),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(3) { width: 12mm !important; text-align: center !important; }
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(4),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(4) { width: 14mm !important; text-align: right !important; }
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(5),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(5),
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(6),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(6) { width: 17mm !important; text-align: right !important; white-space: nowrap !important; }
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(7),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(7) { width: 14mm !important; text-align: right !important; white-space: nowrap !important; }
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(8),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(8) { width: 20mm !important; text-align: right !important; white-space: nowrap !important; font-weight: 900 !important; }

.document-drawer-shell .invoice-page-a4 .document-summary-a4 {
  position: absolute !important;
  top: 144mm !important;
  right: 18mm !important;
  width: 78mm !important;
  margin: 0 !important;
  padding: 4.2mm 4.5mm 4mm !important;
  background: #f3f4f6 !important;
  border-top: .38mm solid #000 !important;
  border-bottom: .25mm solid #111 !important;
  color: #000 !important;
  font-size: 6.4pt !important;
  line-height: 1.12 !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-line-a4,
.document-drawer-shell .invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 30mm !important;
  gap: 4mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-line-a4 span,
.document-drawer-shell .invoice-page-a4 .document-summary-total-a4 span {
  min-width: 0 !important;
  text-align: right !important;
  white-space: normal !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-line-a4 strong,
.document-drawer-shell .invoice-page-a4 .document-summary-total-a4 strong {
  width: 30mm !important;
  max-width: 30mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-total-a4 {
  margin-top: 4mm !important;
  padding-top: 2.3mm !important;
  border-top: .35mm solid #000 !important;
  color: #000 !important;
  font-size: 8.6pt !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-stay-a4 {
  position: absolute !important;
  top: 168mm !important;
  left: 20mm !important;
  width: 76mm !important;
  color: #222 !important;
  font-size: 6.2pt !important;
  line-height: 1.32 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 {
  position: absolute !important;
  top: 188mm !important;
  left: 20mm !important;
  width: 108mm !important;
  padding-bottom: 5mm !important;
  border-bottom: .35mm solid #000 !important;
  color: #111 !important;
  font-size: 6.1pt !important;
  line-height: 1.34 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 h4 {
  margin: 0 0 2.4mm !important;
  color: #000 !important;
  font-size: 6.3pt !important;
  text-decoration: underline !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 p {
  margin: 0 !important;
  color: #111 !important;
  font-size: 6.1pt !important;
  line-height: 1.34 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 {
  position: absolute !important;
  top: 214mm !important;
  left: 20mm !important;
  width: 90mm !important;
  display: grid !important;
  grid-template-columns: 1fr 20mm 26mm !important;
  column-gap: 6mm !important;
  margin: 0 !important;
  padding: 3.4mm 3.5mm 3mm !important;
  background: #f7f7f8 !important;
  border-top: .35mm solid #111 !important;
  color: #000 !important;
  font-size: 5.4pt !important;
  line-height: 1.18 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin-bottom: 2.3mm !important;
  font-size: 6pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 strong {
  color: #000 !important;
  font-size: 5.3pt !important;
  overflow-wrap: anywhere !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code {
  position: absolute !important;
  top: 230mm !important;
  right: 18mm !important;
  width: 86mm !important;
  height: 18mm !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code-image {
  width: 86mm !important;
  max-width: 86mm !important;
  height: 18mm !important;
  max-height: 18mm !important;
  object-fit: contain !important;
  object-position: right center !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code span,
.document-drawer-shell .invoice-page-a4 .payment-code small,
.document-drawer-shell .invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.document-drawer-shell .invoice-page-a4 .document-footer-a4 {
  position: absolute !important;
  left: 20mm !important;
  right: 18mm !important;
  bottom: 12mm !important;
  margin: 0 !important;
  padding-top: 3mm !important;
  border-top: .35mm solid #000 !important;
  color: #606060 !important;
  text-align: center !important;
  font-size: 5.2pt !important;
  line-height: 1 !important;
}

@media screen and (max-width: 1180px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .68 !important;
  }
}

@media print {
  .document-drawer-shell .document-drawer {
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: 1 !important;
    margin: 0 !important;
    box-shadow: none !important;
  }
}

/* Racun total box hard fix - final last layer v1.3.65 */
.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  width: 84mm !important;
  min-width: 84mm !important;
  max-width: 84mm !important;
  right: 18mm !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6mm !important;
  grid-template-columns: none !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  font-size: 7.2pt !important;
  line-height: 1.08 !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 span,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  display: block !important;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align: left !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 strong,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  display: block !important;
  flex: 0 0 30mm !important;
  width: 30mm !important;
  min-width: 30mm !important;
  max-width: 30mm !important;
  text-align: right !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

/* Racun professional polish - absolute final layer v1.3.66 */
.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  top: 140mm !important;
  right: 20mm !important;
  width: 78mm !important;
  min-width: 78mm !important;
  max-width: 78mm !important;
  padding: 4mm 4mm 3.6mm !important;
  background: #f5f6f8 !important;
  border-top: .35mm solid #111 !important;
  border-bottom: .25mm solid #111 !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 {
  display: grid !important;
  grid-template-columns: 1fr 26mm !important;
  gap: 3mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 5.7pt !important;
  line-height: 1.1 !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr 26mm !important;
  gap: 3mm !important;
  align-items: end !important;
  width: 100% !important;
  margin: 3.4mm 0 0 !important;
  padding: 2.2mm 0 0 !important;
  border-top: .35mm solid #111 !important;
  font-size: 7pt !important;
  line-height: 1.05 !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 span,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align: right !important;
  overflow: visible !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 strong,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  display: block !important;
  width: 26mm !important;
  min-width: 26mm !important;
  max-width: 26mm !important;
  text-align: right !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

/* Racun uredan dokument - zahtjevi korisnika v1.3.67 */
.document-drawer-shell .document-drawer {
  background: #eef3f7 !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  margin: 30px auto 56px !important;
  zoom: .84 !important;
  background: #fff !important;
  box-shadow: 0 22px 60px rgba(15, 23, 42, .12), 0 0 0 1px rgba(148, 163, 184, .24) !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo-box,
.print-window-wrap .invoice-page-a4 .document-logo-box,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo-box {
  top: 18mm !important;
  left: 18mm !important;
  width: 64mm !important;
  height: 38mm !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo,
.print-window-wrap .invoice-page-a4 .document-logo,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo {
  width: 64mm !important;
  max-width: 64mm !important;
  height: 38mm !important;
  max-height: 38mm !important;
  object-fit: contain !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4,
.print-window-wrap .invoice-page-a4 .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 {
  top: 20mm !important;
  right: 18mm !important;
  width: 56mm !important;
  font-size: 6.3pt !important;
  line-height: 1.32 !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4 strong,
.print-window-wrap .invoice-page-a4 .document-company-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 strong {
  font-size: 8.4pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4 .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-row-a4 {
  top: 66mm !important;
  left: 18mm !important;
  width: 80mm !important;
  font-size: 7pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 > span,
.document-drawer-shell .invoice-page-a4 .document-label,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 > span,
.print-window-wrap .invoice-page-a4 .document-label,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 > span,
body.print-document-only #print-document-host .invoice-page-a4 .document-label {
  width: 38mm !important;
  font-size: 6pt !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 strong,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 strong {
  font-size: 8.6pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-title-row-a4 h2,
.document-drawer-shell .invoice-page-a4 .document-title-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-row-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-row-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-a4 h2 {
  top: 88mm !important;
  left: 18mm !important;
  font-size: 16pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4,
.print-window-wrap .invoice-page-a4 .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 {
  top: 88mm !important;
  right: 18mm !important;
  width: 42mm !important;
  font-size: 6.6pt !important;
  line-height: 1.2 !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4 strong,
.print-window-wrap .invoice-page-a4 .document-date-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 strong {
  font-size: 8.4pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-info-row-a4,
.print-window-wrap .invoice-page-a4 .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-info-row-a4 {
  top: 103mm !important;
  left: 18mm !important;
  width: 174mm !important;
  gap: 13mm !important;
  font-size: 6.6pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-items,
.print-window-wrap .invoice-page-a4 .document-items,
body.print-document-only #print-document-host .invoice-page-a4 .document-items {
  top: 113mm !important;
  left: 18mm !important;
  width: 174mm !important;
  max-width: 174mm !important;
  font-size: 6.6pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th,
.print-window-wrap .invoice-page-a4 .document-items th,
body.print-document-only #print-document-host .invoice-page-a4 .document-items th {
  padding: 1.65mm .9mm !important;
  font-size: 6.4pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items td,
.print-window-wrap .invoice-page-a4 .document-items td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items td {
  padding: 1.8mm .9mm !important;
  font-size: 6.6pt !important;
  line-height: 1.16 !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  top: 128mm !important;
  right: 18mm !important;
  width: 74mm !important;
  min-width: 74mm !important;
  max-width: 74mm !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 {
  display: none !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  gap: 5mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 2.2mm 0 0 !important;
  border-top: .45mm solid #111 !important;
  border-bottom: 0 !important;
  color: #000 !important;
  font-size: 8.2pt !important;
  line-height: 1.05 !important;
  background: transparent !important;
  text-transform: uppercase !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  text-align: right !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  width: 30mm !important;
  min-width: 30mm !important;
  max-width: 30mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-stay-a4,
.print-window-wrap .invoice-page-a4 .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 {
  top: 150mm !important;
  left: 18mm !important;
  width: 92mm !important;
  font-size: 6.8pt !important;
  line-height: 1.35 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4,
.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  top: 174mm !important;
  left: 18mm !important;
  width: 110mm !important;
  border-bottom: .35mm solid #111 !important;
  font-size: 6.8pt !important;
  line-height: 1.35 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 h4,
.print-window-wrap .invoice-page-a4 .document-note-a4 h4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 h4 {
  font-size: 7pt !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 p,
.print-window-wrap .invoice-page-a4 .document-note-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 p {
  font-size: 6.8pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 {
  top: 205mm !important;
  left: 18mm !important;
  width: 92mm !important;
  padding: 3.2mm 0 0 !important;
  background: transparent !important;
  border-top: .35mm solid #111 !important;
  font-size: 6.2pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-title-a4,
.print-window-wrap .invoice-page-a4 .document-payment-title-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-title-a4 {
  font-size: 6.8pt !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 strong {
  font-size: 6.2pt !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code,
.print-window-wrap .invoice-page-a4 .payment-code,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code {
  top: 224mm !important;
  right: 18mm !important;
  width: 86mm !important;
  height: 19mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-footer-a4,
.print-window-wrap .invoice-page-a4 .document-footer-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-footer-a4 {
  left: 18mm !important;
  right: 18mm !important;
  bottom: 12mm !important;
  padding-top: 3mm !important;
  border-top: .35mm solid #000 !important;
  font-size: 5.6pt !important;
}

@media screen and (max-width: 1180px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .72 !important;
  }
}

/* Racun professional polish - final override v1.3.66 */
.document-drawer-shell .document-drawer {
  background: #eef3f7 !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  margin: 32px auto 56px !important;
  zoom: .82 !important;
  box-shadow: 0 22px 60px rgba(15, 23, 42, .13), 0 0 0 1px rgba(148, 163, 184, .24) !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo-box,
.print-window-wrap .invoice-page-a4 .document-logo-box,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo-box {
  top: 20mm !important;
  left: 20mm !important;
  width: 50mm !important;
  height: 30mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo,
.print-window-wrap .invoice-page-a4 .document-logo,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo {
  width: 50mm !important;
  max-width: 50mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4,
.print-window-wrap .invoice-page-a4 .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 {
  top: 22mm !important;
  right: 20mm !important;
  width: 52mm !important;
  font-size: 5.8pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4 .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-row-a4 {
  left: 20mm !important;
  top: 72mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-title-row-a4 h2,
.document-drawer-shell .invoice-page-a4 .document-title-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-row-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-row-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-a4 h2 {
  left: 20mm !important;
  top: 92mm !important;
  font-size: 14.8pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4,
.print-window-wrap .invoice-page-a4 .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 {
  top: 92mm !important;
  right: 20mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-info-row-a4,
.print-window-wrap .invoice-page-a4 .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-info-row-a4 {
  left: 20mm !important;
  top: 106mm !important;
  width: 170mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-items,
.print-window-wrap .invoice-page-a4 .document-items,
body.print-document-only #print-document-host .invoice-page-a4 .document-items {
  left: 20mm !important;
  top: 115mm !important;
  width: 170mm !important;
  max-width: 170mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  top: 140mm !important;
  right: 20mm !important;
  width: 78mm !important;
  min-width: 78mm !important;
  max-width: 78mm !important;
  padding: 4mm 4mm 3.6mm !important;
  background: #f5f6f8 !important;
  border-top: .35mm solid #111 !important;
  border-bottom: .25mm solid #111 !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 {
  display: grid !important;
  grid-template-columns: 1fr 26mm !important;
  gap: 3mm !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 5.7pt !important;
  line-height: 1.1 !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr 26mm !important;
  gap: 3mm !important;
  align-items: end !important;
  margin: 3.4mm 0 0 !important;
  padding: 2.2mm 0 0 !important;
  border-top: .35mm solid #111 !important;
  font-size: 7pt !important;
  line-height: 1.05 !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 span,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align: right !important;
  overflow: visible !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 strong,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  width: 26mm !important;
  min-width: 26mm !important;
  max-width: 26mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-stay-a4,
.print-window-wrap .invoice-page-a4 .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 {
  left: 20mm !important;
  top: 162mm !important;
  width: 82mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4,
.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  left: 20mm !important;
  top: 182mm !important;
  width: 102mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 {
  left: 20mm !important;
  top: 210mm !important;
  width: 86mm !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code,
.print-window-wrap .invoice-page-a4 .payment-code,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code {
  top: 228mm !important;
  right: 20mm !important;
  width: 82mm !important;
  height: 18mm !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code-image,
.print-window-wrap .invoice-page-a4 .payment-code-image,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code-image {
  width: 82mm !important;
  max-width: 82mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-footer-a4,
.print-window-wrap .invoice-page-a4 .document-footer-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-footer-a4 {
  left: 20mm !important;
  right: 20mm !important;
}

@media screen and (max-width: 1180px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .72 !important;
  }
}

/* Racun total box hard fix v1.3.65 */
.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  position: absolute !important;
  top: 140mm !important;
  right: 18mm !important;
  width: 84mm !important;
  min-width: 84mm !important;
  max-width: 84mm !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 4mm 4.5mm 3.8mm !important;
  background: #f4f5f7 !important;
  border-top: .38mm solid #000 !important;
  border-bottom: .25mm solid #111 !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6mm !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  margin-top: 3.5mm !important;
  padding-top: 2mm !important;
  border-top: .35mm solid #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 span,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  display: block !important;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align: left !important;
  color: #000 !important;
  overflow: visible !important;
  white-space: nowrap !important;
  text-transform: uppercase !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 strong,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  display: block !important;
  flex: 0 0 30mm !important;
  width: 30mm !important;
  min-width: 30mm !important;
  max-width: 30mm !important;
  text-align: right !important;
  color: #000 !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 {
  font-size: 6.1pt !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
}

@media screen {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    margin-top: 34px !important;
    margin-bottom: 52px !important;
  }
}

/* Racun - stabilni profesionalni prikaz v1.3.64 */
.document-drawer-shell .document-drawer {
  width: min(1120px, calc(100vw - 40px)) !important;
  max-width: none !important;
  height: 100dvh !important;
  padding: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  background: #f2f5f8 !important;
}

.document-drawer-shell .unit-drawer-head {
  position: relative !important;
  top: auto !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 18px 28px !important;
  border-bottom: 1px solid #dbe4ee !important;
  background: #fff !important;
  box-shadow: none !important;
}

.document-drawer-shell .unit-drawer-head h2 {
  margin: 0 !important;
  color: #102033 !important;
  font-size: 28px !important;
  line-height: 1.1 !important;
}

.document-drawer-shell .unit-drawer-head .eyebrow {
  margin-bottom: 6px !important;
}

.document-drawer-shell .unit-drawer-head .action-row {
  gap: 10px !important;
  justify-content: flex-end !important;
}

.document-drawer-shell .unit-drawer-head .button {
  min-height: 40px !important;
  border-radius: 7px !important;
  white-space: nowrap !important;
}

.document-drawer-shell .document-screen-preview {
  display: none !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  display: block !important;
  position: relative !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  height: 297mm !important;
  min-height: 297mm !important;
  max-height: 297mm !important;
  margin: 26px auto 42px !important;
  padding: 0 !important;
  zoom: .78 !important;
  transform: none !important;
  transform-origin: top center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: 0 22px 58px rgba(15, 23, 42, .14), 0 0 0 1px rgba(148, 163, 184, .26) !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4::before {
  display: none !important;
}

.document-drawer-shell .invoice-page-a4 .document-head-a4,
.print-window-wrap .invoice-page-a4 .document-head-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-head-a4 {
  position: static !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo-box,
.print-window-wrap .invoice-page-a4 .document-logo-box,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo-box {
  position: absolute !important;
  top: 18mm !important;
  left: 18mm !important;
  width: 54mm !important;
  height: 32mm !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo,
.print-window-wrap .invoice-page-a4 .document-logo,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo {
  display: block !important;
  width: 54mm !important;
  max-width: 54mm !important;
  height: 32mm !important;
  max-height: 32mm !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4,
.print-window-wrap .invoice-page-a4 .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 {
  position: absolute !important;
  top: 18mm !important;
  right: 18mm !important;
  width: 54mm !important;
  text-align: right !important;
  color: #111 !important;
  font-size: 6.1pt !important;
  line-height: 1.35 !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4 strong,
.print-window-wrap .invoice-page-a4 .document-company-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 strong {
  display: block !important;
  margin: 0 0 2.4mm !important;
  padding-bottom: 1.8mm !important;
  border-bottom: .25mm solid #c9d0d8 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4 .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-row-a4 {
  position: absolute !important;
  top: 66mm !important;
  left: 18mm !important;
  width: 72mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 6.2pt !important;
  line-height: 1.28 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 > span,
.document-drawer-shell .invoice-page-a4 .document-label,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 > span,
.print-window-wrap .invoice-page-a4 .document-label,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 > span,
body.print-document-only #print-document-host .invoice-page-a4 .document-label {
  display: block !important;
  width: 28mm !important;
  margin: 0 0 1.6mm !important;
  padding-bottom: .9mm !important;
  border-bottom: .25mm solid #c4c9d1 !important;
  color: #000 !important;
  font-size: 5.2pt !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 strong,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 7.8pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 p,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 p {
  margin: 1mm 0 0 !important;
  color: #000 !important;
  font-size: 5.8pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-title-row-a4 h2,
.document-drawer-shell .invoice-page-a4 .document-title-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-row-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-row-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-a4 h2 {
  position: absolute !important;
  top: 90mm !important;
  left: 18mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 15.4pt !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4,
.print-window-wrap .invoice-page-a4 .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 {
  position: absolute !important;
  top: 90mm !important;
  right: 18mm !important;
  width: 38mm !important;
  margin: 0 !important;
  text-align: right !important;
  color: #111 !important;
  font-size: 5.4pt !important;
  line-height: 1.18 !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4 strong,
.print-window-wrap .invoice-page-a4 .document-date-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 7pt !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-info-row-a4,
.print-window-wrap .invoice-page-a4 .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-info-row-a4 {
  position: absolute !important;
  top: 105mm !important;
  left: 18mm !important;
  width: 174mm !important;
  display: flex !important;
  gap: 14mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #111 !important;
  font-size: 5.8pt !important;
  line-height: 1.12 !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-items,
.print-window-wrap .invoice-page-a4 .document-items,
body.print-document-only #print-document-host .invoice-page-a4 .document-items {
  position: absolute !important;
  top: 114mm !important;
  left: 18mm !important;
  width: 174mm !important;
  max-width: 174mm !important;
  margin: 0 !important;
  border-top: .35mm solid #000 !important;
  border-bottom: .35mm solid #000 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  color: #000 !important;
  font-size: 5.8pt !important;
  line-height: 1.15 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th,
.print-window-wrap .invoice-page-a4 .document-items th,
body.print-document-only #print-document-host .invoice-page-a4 .document-items th {
  padding: 1.35mm .75mm !important;
  background: #eef1f4 !important;
  border-bottom: .35mm solid #000 !important;
  color: #000 !important;
  font-size: 5.45pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items td,
.print-window-wrap .invoice-page-a4 .document-items td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items td {
  padding: 1.45mm .75mm !important;
  border-bottom: .15mm solid #d4d9df !important;
  color: #000 !important;
  font-size: 5.75pt !important;
  line-height: 1.15 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items tr:last-child td,
.print-window-wrap .invoice-page-a4 .document-items tr:last-child td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tr:last-child td {
  border-bottom: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(1),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(1),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(1),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(1),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(1),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(1) { width: 8mm !important; text-align: center !important; }

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(2),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(2),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(2),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(2),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(2),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(2) { width: 72mm !important; text-align: left !important; white-space: normal !important; }

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(3),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(3),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(3),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(3),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(3),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(3) { width: 12mm !important; text-align: center !important; }

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(4),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(4),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(4),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(4),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(4),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(4) { width: 14mm !important; text-align: right !important; }

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(5),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(5),
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(6),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(6),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(5),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(5),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(6),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(6),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(5),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(5),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(6),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(6) { width: 17mm !important; text-align: right !important; white-space: nowrap !important; }

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(7),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(7),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(7),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(7),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(7),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(7) { width: 14mm !important; text-align: right !important; white-space: nowrap !important; }

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(8),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(8),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(8),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(8),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(8),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(8) { width: 20mm !important; text-align: right !important; white-space: nowrap !important; font-weight: 900 !important; }

.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  position: absolute !important;
  top: 140mm !important;
  right: 18mm !important;
  width: 78mm !important;
  margin: 0 !important;
  padding: 4mm 4.2mm 3.6mm !important;
  background: #f4f5f7 !important;
  border-top: .38mm solid #000 !important;
  border-bottom: .25mm solid #111 !important;
  color: #000 !important;
  font-size: 6.1pt !important;
  line-height: 1.12 !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-line-a4,
.print-window-wrap .invoice-page-a4 .document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-line-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  gap: 4mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-total-a4,
.print-window-wrap .invoice-page-a4 .document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  gap: 4mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 3.5mm 0 0 !important;
  padding-top: 2mm !important;
  border-top: .35mm solid #000 !important;
  color: #000 !important;
  font-size: 7.3pt !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-line-a4 span,
.document-drawer-shell .invoice-page-a4 .document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 .document-summary-line-a4 span,
.print-window-wrap .invoice-page-a4 .document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-line-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-total-a4 span {
  display: block !important;
  min-width: 0 !important;
  text-align: right !important;
  white-space: normal !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-line-a4 strong,
.document-drawer-shell .invoice-page-a4 .document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 .document-summary-line-a4 strong,
.print-window-wrap .invoice-page-a4 .document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-line-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-total-a4 strong {
  display: block !important;
  width: 30mm !important;
  max-width: 30mm !important;
  text-align: right !important;
  white-space: nowrap !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 .document-stay-a4,
.print-window-wrap .invoice-page-a4 .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 {
  position: absolute !important;
  top: 162mm !important;
  left: 18mm !important;
  width: 82mm !important;
  color: #222 !important;
  font-size: 5.9pt !important;
  line-height: 1.34 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4,
.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  position: absolute !important;
  top: 182mm !important;
  left: 18mm !important;
  width: 108mm !important;
  padding-bottom: 5mm !important;
  border-bottom: .35mm solid #000 !important;
  color: #111 !important;
  font-size: 5.85pt !important;
  line-height: 1.34 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 h4,
.print-window-wrap .invoice-page-a4 .document-note-a4 h4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 h4 {
  margin: 0 0 2.2mm !important;
  color: #000 !important;
  font-size: 6.1pt !important;
  text-decoration: underline !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 p,
.print-window-wrap .invoice-page-a4 .document-note-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 p {
  margin: 0 !important;
  color: #111 !important;
  font-size: 5.85pt !important;
  line-height: 1.34 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 {
  position: absolute !important;
  top: 209mm !important;
  left: 18mm !important;
  width: 90mm !important;
  display: grid !important;
  grid-template-columns: 1fr 20mm 26mm !important;
  column-gap: 6mm !important;
  margin: 0 !important;
  padding: 3.4mm 3.5mm 3mm !important;
  background: #f7f7f8 !important;
  border-top: .35mm solid #111 !important;
  color: #000 !important;
  font-size: 5.1pt !important;
  line-height: 1.18 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-title-a4,
.print-window-wrap .invoice-page-a4 .document-payment-title-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-title-a4 {
  grid-column: 1 / -1 !important;
  margin-bottom: 2.2mm !important;
  color: #000 !important;
  font-size: 5.8pt !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 span,
.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 span,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  color: #000 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 strong {
  font-size: 5.05pt !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code,
.print-window-wrap .invoice-page-a4 .payment-code,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code {
  position: absolute !important;
  top: 226mm !important;
  right: 18mm !important;
  width: 86mm !important;
  height: 18mm !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  background: transparent !important;
  border: 0 !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code-image,
.print-window-wrap .invoice-page-a4 .payment-code-image,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code-image {
  width: 86mm !important;
  max-width: 86mm !important;
  height: 18mm !important;
  max-height: 18mm !important;
  object-fit: contain !important;
  object-position: right center !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code span,
.document-drawer-shell .invoice-page-a4 .payment-code small,
.document-drawer-shell .invoice-page-a4 .payment-code .muted,
.print-window-wrap .invoice-page-a4 .payment-code span,
.print-window-wrap .invoice-page-a4 .payment-code small,
.print-window-wrap .invoice-page-a4 .payment-code .muted,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code span,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code small,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code .muted {
  display: none !important;
}

.document-drawer-shell .invoice-page-a4 .document-footer-a4,
.print-window-wrap .invoice-page-a4 .document-footer-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-footer-a4 {
  position: absolute !important;
  left: 18mm !important;
  right: 18mm !important;
  bottom: 12mm !important;
  margin: 0 !important;
  padding: 3mm 0 0 !important;
  border-top: .35mm solid #000 !important;
  color: #606060 !important;
  text-align: center !important;
  font-size: 5pt !important;
  line-height: 1 !important;
}

@media screen and (max-width: 1180px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .68 !important;
  }
}

@media screen and (max-width: 820px) {
  .document-drawer-shell .unit-drawer-head {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .48 !important;
  }
}

@media print {
  .document-drawer-shell .document-drawer {
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4,
  .print-window-wrap .document-page.invoice-page-a4,
  .print-window-wrap .document-page-a4.invoice-page-a4,
  .print-window-wrap .invoice-page-a4,
  body.print-document-only #print-document-host .document-page.invoice-page-a4,
  body.print-document-only #print-document-host .document-page-a4.invoice-page-a4,
  body.print-document-only #print-document-host .invoice-page-a4 {
    zoom: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
  }
}

/* Racun total box hard fix - final last layer v1.3.65 */
.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  width: 84mm !important;
  min-width: 84mm !important;
  max-width: 84mm !important;
  right: 18mm !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6mm !important;
  grid-template-columns: none !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  font-size: 7.2pt !important;
  line-height: 1.08 !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 span,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  display: block !important;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align: left !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 strong,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  display: block !important;
  flex: 0 0 30mm !important;
  width: 30mm !important;
  min-width: 30mm !important;
  max-width: 30mm !important;
  text-align: right !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

/* Racun professional polish - absolute final layer v1.3.66 */
.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  top: 140mm !important;
  right: 20mm !important;
  width: 78mm !important;
  min-width: 78mm !important;
  max-width: 78mm !important;
  padding: 4mm 4mm 3.6mm !important;
  background: #f5f6f8 !important;
  border-top: .35mm solid #111 !important;
  border-bottom: .25mm solid #111 !important;
  overflow: hidden !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 {
  display: grid !important;
  grid-template-columns: 1fr 26mm !important;
  gap: 3mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 5.7pt !important;
  line-height: 1.1 !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr 26mm !important;
  gap: 3mm !important;
  align-items: end !important;
  width: 100% !important;
  margin: 3.4mm 0 0 !important;
  padding: 2.2mm 0 0 !important;
  border-top: .35mm solid #111 !important;
  font-size: 7pt !important;
  line-height: 1.05 !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 span,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  text-align: right !important;
  overflow: visible !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4 strong,
.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  display: block !important;
  width: 26mm !important;
  min-width: 26mm !important;
  max-width: 26mm !important;
  text-align: right !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

/* Racun uredan dokument - absolute final layer v1.3.67 */
.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  margin: 30px auto 56px !important;
  zoom: .84 !important;
  background: #fff !important;
  box-shadow: 0 22px 60px rgba(15, 23, 42, .12), 0 0 0 1px rgba(148, 163, 184, .24) !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo-box,
.print-window-wrap .invoice-page-a4 .document-logo-box,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo-box {
  top: 18mm !important;
  left: 18mm !important;
  width: 64mm !important;
  height: 38mm !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 .document-logo,
.print-window-wrap .invoice-page-a4 .document-logo,
body.print-document-only #print-document-host .invoice-page-a4 .document-logo {
  width: 64mm !important;
  max-width: 64mm !important;
  height: 38mm !important;
  max-height: 38mm !important;
  object-fit: contain !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4 .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-row-a4 {
  top: 66mm !important;
  left: 18mm !important;
  width: 80mm !important;
  font-size: 7pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 > span,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 > span,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 > span {
  width: 38mm !important;
  font-size: 6pt !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 strong,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 strong {
  font-size: 8.6pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4,
.print-window-wrap .invoice-page-a4 .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 {
  top: 88mm !important;
  right: 18mm !important;
  width: 42mm !important;
  font-size: 6.6pt !important;
  line-height: 1.2 !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4 strong,
.print-window-wrap .invoice-page-a4 .document-date-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 strong {
  font-size: 8.4pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-info-row-a4,
.print-window-wrap .invoice-page-a4 .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-info-row-a4 {
  top: 103mm !important;
  left: 18mm !important;
  width: 174mm !important;
  gap: 13mm !important;
  font-size: 6.6pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-items,
.print-window-wrap .invoice-page-a4 .document-items,
body.print-document-only #print-document-host .invoice-page-a4 .document-items {
  top: 113mm !important;
  left: 18mm !important;
  width: 174mm !important;
  max-width: 174mm !important;
  font-size: 6.6pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th,
.print-window-wrap .invoice-page-a4 .document-items th,
body.print-document-only #print-document-host .invoice-page-a4 .document-items th {
  padding: 1.65mm .9mm !important;
  font-size: 6.4pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items td,
.print-window-wrap .invoice-page-a4 .document-items td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items td {
  padding: 1.8mm .9mm !important;
  font-size: 6.6pt !important;
  line-height: 1.16 !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  top: 128mm !important;
  right: 18mm !important;
  width: 74mm !important;
  min-width: 74mm !important;
  max-width: 74mm !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 {
  display: none !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr 30mm !important;
  gap: 5mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 2.2mm 0 0 !important;
  border-top: .45mm solid #111 !important;
  border-bottom: 0 !important;
  color: #000 !important;
  font-size: 8.2pt !important;
  line-height: 1.05 !important;
  background: transparent !important;
  text-transform: uppercase !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  text-align: right !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  width: 30mm !important;
  min-width: 30mm !important;
  max-width: 30mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-stay-a4,
.print-window-wrap .invoice-page-a4 .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 {
  top: 150mm !important;
  left: 18mm !important;
  width: 92mm !important;
  font-size: 6.8pt !important;
  line-height: 1.35 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4,
.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  top: 174mm !important;
  left: 18mm !important;
  width: 110mm !important;
  border-bottom: .35mm solid #111 !important;
  font-size: 6.8pt !important;
  line-height: 1.35 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 h4,
.print-window-wrap .invoice-page-a4 .document-note-a4 h4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 h4 {
  font-size: 7pt !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 {
  top: 205mm !important;
  left: 18mm !important;
  width: 92mm !important;
  padding: 3.2mm 0 0 !important;
  background: transparent !important;
  border-top: .35mm solid #111 !important;
  font-size: 6.2pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-footer-a4,
.print-window-wrap .invoice-page-a4 .document-footer-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-footer-a4 {
  left: 18mm !important;
  right: 18mm !important;
  bottom: 12mm !important;
  padding-top: 3mm !important;
  border-top: .35mm solid #000 !important;
  font-size: 5.6pt !important;
}

@media screen and (max-width: 1180px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .72 !important;
  }
}

/* Racun citljivost i uredne sekcije - absolute final layer v1.3.68 */
.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  zoom: .84 !important;
}

.document-drawer-shell .invoice-page-a4,
.print-window-wrap .invoice-page-a4,
body.print-document-only #print-document-host .invoice-page-a4 {
  font-size: 7pt !important;
  line-height: 1.22 !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4,
.print-window-wrap .invoice-page-a4 .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 {
  font-size: 6.8pt !important;
  line-height: 1.32 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4 .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-row-a4 {
  font-size: 7.4pt !important;
  line-height: 1.25 !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4,
.print-window-wrap .invoice-page-a4 .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 {
  font-size: 7pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-date-a4 strong,
.print-window-wrap .invoice-page-a4 .document-date-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-date-a4 strong {
  font-size: 9pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-info-row-a4,
.print-window-wrap .invoice-page-a4 .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-info-row-a4 {
  font-size: 7.2pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-items,
.print-window-wrap .invoice-page-a4 .document-items,
body.print-document-only #print-document-host .invoice-page-a4 .document-items {
  font-size: 7.2pt !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th,
.print-window-wrap .invoice-page-a4 .document-items th,
body.print-document-only #print-document-host .invoice-page-a4 .document-items th {
  padding: 1.75mm .9mm !important;
  font-size: 7pt !important;
  line-height: 1.12 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items td,
.print-window-wrap .invoice-page-a4 .document-items td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items td {
  padding: 1.9mm .9mm !important;
  font-size: 7.2pt !important;
  line-height: 1.16 !important;
}

.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  top: 129mm !important;
  right: 18mm !important;
  width: 90mm !important;
  min-width: 90mm !important;
  max-width: 90mm !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  overflow: visible !important;
}

.document-drawer-shell .invoice-page-a4 p.document-summary-line-a4,
.print-window-wrap .invoice-page-a4 p.document-summary-line-a4,
body.print-document-only #print-document-host .invoice-page-a4 p.document-summary-line-a4 {
  display: none !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 {
  display: grid !important;
  grid-template-columns: 1fr 34mm !important;
  gap: 5mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 2.2mm 0 0 !important;
  border-top: .45mm solid #111 !important;
  border-bottom: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 8.2pt !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 span,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 span {
  display: block !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 h3.document-summary-total-a4 strong,
.print-window-wrap .invoice-page-a4 h3.document-summary-total-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 h3.document-summary-total-a4 strong {
  display: block !important;
  width: 34mm !important;
  min-width: 34mm !important;
  max-width: 34mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-stay-a4,
.print-window-wrap .invoice-page-a4 .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 {
  top: 150mm !important;
  left: 18mm !important;
  width: 96mm !important;
  font-size: 7.4pt !important;
  line-height: 1.35 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4,
.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  top: 175mm !important;
  left: 18mm !important;
  width: 116mm !important;
  padding-bottom: 5mm !important;
  border-bottom: .35mm solid #111 !important;
  font-size: 7.2pt !important;
  line-height: 1.35 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 h4,
.print-window-wrap .invoice-page-a4 .document-note-a4 h4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 h4 {
  display: block !important;
  width: 100% !important;
  margin: 0 0 2.5mm !important;
  font-size: 7.4pt !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 p,
.print-window-wrap .invoice-page-a4 .document-note-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 p {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  font-size: 7.2pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 {
  top: 208mm !important;
  left: 18mm !important;
  width: 96mm !important;
  display: block !important;
  padding: 3.2mm 0 0 !important;
  background: transparent !important;
  border-top: .35mm solid #111 !important;
  font-size: 7.2pt !important;
  line-height: 1.25 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-title-a4,
.print-window-wrap .invoice-page-a4 .document-payment-title-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-title-a4 {
  display: block !important;
  margin: 0 0 2.5mm !important;
  font-size: 7.6pt !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 div,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 div,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 div {
  display: grid !important;
  grid-template-columns: 24mm 1fr !important;
  gap: 5mm !important;
  align-items: start !important;
  margin: 0 0 1.8mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 span,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  color: #111 !important;
  font-size: 7pt !important;
  font-weight: 700 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code,
.print-window-wrap .invoice-page-a4 .payment-code,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code {
  top: 228mm !important;
  right: 18mm !important;
  width: 86mm !important;
  height: 19mm !important;
}

@media screen and (max-width: 1180px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .72 !important;
  }
}

/* Racun veci podaci i manje praznog preview prostora - absolute final layer v1.3.69 */
.document-drawer-shell .document-drawer {
  width: min(1280px, calc(100vw - 8px)) !important;
  background: #eef3f7 !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  margin: 20px auto 44px !important;
  zoom: .92 !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4,
.print-window-wrap .invoice-page-a4 .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 {
  top: 18mm !important;
  right: 18mm !important;
  width: 64mm !important;
  font-size: 9.2pt !important;
  line-height: 1.28 !important;
}

.document-drawer-shell .invoice-page-a4 .document-company-a4 strong,
.print-window-wrap .invoice-page-a4 .document-company-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-company-a4 strong {
  font-size: 11pt !important;
  line-height: 1.05 !important;
  margin-bottom: 2.5mm !important;
  padding-bottom: 2mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4 .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-row-a4 {
  top: 67mm !important;
  left: 18mm !important;
  width: 92mm !important;
  font-size: 9pt !important;
  line-height: 1.24 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 > span,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 > span,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 > span {
  width: 46mm !important;
  font-size: 7.8pt !important;
  margin-bottom: 2mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 strong,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 strong {
  font-size: 10.2pt !important;
  line-height: 1.12 !important;
}

.document-drawer-shell .invoice-page-a4 .document-buyer-a4 p,
.print-window-wrap .invoice-page-a4 .document-buyer-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-buyer-a4 p {
  font-size: 8.8pt !important;
  margin-top: 1.3mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4,
.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  display: block !important;
  top: 175mm !important;
  left: 18mm !important;
  width: 118mm !important;
  padding-bottom: 5mm !important;
  border-bottom: .35mm solid #111 !important;
  font-size: 8.1pt !important;
  line-height: 1.35 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 h4,
.print-window-wrap .invoice-page-a4 .document-note-a4 h4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 h4 {
  display: block !important;
  width: 100% !important;
  margin: 0 0 3mm !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
  font-size: 8.2pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4 p,
.print-window-wrap .invoice-page-a4 .document-note-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 p {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
  font-size: 8.1pt !important;
  line-height: 1.35 !important;
  text-align: left !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 {
  top: 210mm !important;
  left: 18mm !important;
  width: 108mm !important;
  display: block !important;
  padding: 3.4mm 0 0 !important;
  background: transparent !important;
  border-top: .35mm solid #111 !important;
  font-size: 8.4pt !important;
  line-height: 1.28 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-title-a4,
.print-window-wrap .invoice-page-a4 .document-payment-title-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-title-a4 {
  display: block !important;
  margin: 0 0 3mm !important;
  font-size: 8.8pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 div,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 div,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 div {
  display: grid !important;
  grid-template-columns: 28mm 1fr !important;
  gap: 6mm !important;
  align-items: start !important;
  margin: 0 0 2.2mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 span,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 span {
  display: block !important;
  font-size: 8.2pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  color: #111 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 strong {
  display: block !important;
  font-size: 8.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  color: #000 !important;
  overflow-wrap: anywhere !important;
}

@media screen and (max-width: 1180px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .80 !important;
  }
}

/* Racun tablicni total i platni kod - absolute final layer v1.3.70 */
.document-drawer-shell .invoice-page-a4 .document-summary-a4,
.print-window-wrap .invoice-page-a4 .document-summary-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-summary-a4 {
  display: none !important;
}

.document-drawer-shell .invoice-page-a4 .document-items tfoot td,
.print-window-wrap .invoice-page-a4 .document-items tfoot td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tfoot td {
  padding: 2.2mm .9mm 1.8mm !important;
  border-top: .35mm solid #111 !important;
  border-bottom: 0 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 8.2pt !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.document-drawer-shell .invoice-page-a4 .document-items tfoot td:first-child,
.print-window-wrap .invoice-page-a4 .document-items tfoot td:first-child,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tfoot td:first-child {
  text-align: right !important;
  padding-right: 4mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-items tfoot td:last-child,
.print-window-wrap .invoice-page-a4 .document-items tfoot td:last-child,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tfoot td:last-child {
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-stay-a4,
.print-window-wrap .invoice-page-a4 .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 {
  top: var(--stay-top, 150mm) !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4,
.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  top: var(--note-top, 175mm) !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 {
  top: var(--payment-top, 208mm) !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code,
.print-window-wrap .invoice-page-a4 .payment-code,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code {
  top: var(--barcode-top, 228mm) !important;
  right: 18mm !important;
  width: 94mm !important;
  height: 24mm !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .payment-code-image,
.print-window-wrap .invoice-page-a4 .payment-code-image,
body.print-document-only #print-document-host .invoice-page-a4 .payment-code-image {
  width: 94mm !important;
  max-width: 94mm !important;
  height: 24mm !important;
  max-height: 24mm !important;
  object-fit: contain !important;
  object-position: right center !important;
  image-rendering: auto !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 span,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 span,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 span {
  font-weight: 400 !important;
}

.document-drawer-shell .invoice-page-a4 .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4 .document-payment-data-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4 .document-payment-data-a4 strong {
  font-weight: 900 !important;
}

/* Racun preview manje prazne pozadine - absolute final layer v1.3.71 */
.document-drawer-shell .document-drawer {
  width: calc(100vw - 2px) !important;
  max-width: none !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  margin: 18px auto 44px !important;
  zoom: 1.02 !important;
}

@media screen and (max-width: 1380px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .88 !important;
  }
}

@media screen and (max-width: 1180px) {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: .76 !important;
  }
}

@media print {
  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    zoom: 1 !important;
    margin: 0 !important;
  }
}

/* Racun preview sirina po A4 i horizontalni scroll - absolute final layer v1.3.72 */
.document-drawer-shell {
  justify-items: end !important;
}

.document-drawer-shell .document-drawer {
  width: min(900px, calc(100vw - 16px)) !important;
  max-width: calc(100vw - 16px) !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  background: #eef3f7 !important;
}

.document-drawer-shell .unit-drawer-head {
  min-width: 860px !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  margin: 18px 28px 44px !important;
  zoom: .92 !important;
}

@media screen and (max-width: 940px) {
  .document-drawer-shell .document-drawer {
    width: calc(100vw - 8px) !important;
    max-width: calc(100vw - 8px) !important;
  }

  .document-drawer-shell .unit-drawer-head {
    min-width: 860px !important;
  }

  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    margin-left: 28px !important;
    margin-right: 28px !important;
    zoom: .92 !important;
  }
}

@media print {
  .document-drawer-shell .document-drawer {
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  .document-drawer-shell .unit-drawer-head {
    min-width: 0 !important;
  }

  .document-drawer-shell .document-page.invoice-page-a4,
  .document-drawer-shell .document-page-a4.invoice-page-a4,
  .document-drawer-shell .invoice-page-a4 {
    margin: 0 !important;
    zoom: 1 !important;
  }
}

/* Racun preview simetricni rubovi - absolute final layer v1.3.73 */
.document-drawer-shell .document-drawer {
  width: min(1010px, calc(100vw - 16px)) !important;
  max-width: calc(100vw - 16px) !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
}

.document-drawer-shell .unit-drawer-head {
  min-width: 960px !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  margin-left: 34px !important;
  margin-right: 34px !important;
}

@media screen and (max-width: 1040px) {
  .document-drawer-shell .document-drawer {
    width: calc(100vw - 8px) !important;
    max-width: calc(100vw - 8px) !important;
  }
}

/* Racun preview rubovi i manje crta - absolute final layer v1.3.74 */
.document-drawer-shell .document-drawer,
.document-drawer-shell .unit-drawer.document-drawer {
  width: min(980px, calc(100vw - 16px)) !important;
  max-width: calc(100vw - 16px) !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
}

.document-drawer-shell .unit-drawer-head {
  min-width: 940px !important;
}

.document-drawer-shell .document-page.invoice-page-a4,
.document-drawer-shell .document-page-a4.invoice-page-a4,
.document-drawer-shell .invoice-page-a4 {
  margin-left: 28px !important;
  margin-right: 28px !important;
}

.document-drawer-shell .invoice-page-a4 .document-items,
.print-window-wrap .invoice-page-a4 .document-items,
body.print-document-only #print-document-host .invoice-page-a4 .document-items {
  border-bottom: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items tfoot td,
.print-window-wrap .invoice-page-a4 .document-items tfoot td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tfoot td {
  border-bottom: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-stay-a4,
.print-window-wrap .invoice-page-a4 .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-note-a4,
.print-window-wrap .invoice-page-a4 .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
}

@media screen and (max-width: 1040px) {
  .document-drawer-shell .document-drawer,
  .document-drawer-shell .unit-drawer.document-drawer {
    width: calc(100vw - 8px) !important;
    max-width: calc(100vw - 8px) !important;
  }
}

@media print {
  .document-drawer-shell .document-drawer,
  .document-drawer-shell .unit-drawer.document-drawer {
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
  }

  .document-drawer-shell .unit-drawer-head {
    min-width: 0 !important;
  }
}

/* Racun preview fit-content rubovi - absolute final layer v1.3.75 */
body .unit-drawer-shell.document-drawer-shell {
  justify-items: end !important;
}

body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  width: fit-content !important;
  min-width: 0 !important;
  max-width: calc(100vw - 10px) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  background: #eef3f7 !important;
}

body .document-drawer-shell .unit-drawer-head {
  width: 100% !important;
  min-width: 900px !important;
  box-sizing: border-box !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
  margin-left: 24px !important;
  margin-right: 24px !important;
}

@media screen and (max-width: 940px) {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: calc(100vw - 8px) !important;
    max-width: calc(100vw - 8px) !important;
  }
}

@media print {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
    background: #fff !important;
  }
}

/* Racun preview minimalni rubovi - absolute final layer v1.3.76 */
body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  width: min(905px, calc(100vw - 8px)) !important;
  max-width: calc(100vw - 8px) !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
}

body .document-drawer-shell .unit-drawer-head {
  min-width: 880px !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
  margin-left: 12px !important;
  margin-right: 12px !important;
}

@media screen and (max-width: 940px) {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: calc(100vw - 4px) !important;
    max-width: calc(100vw - 4px) !important;
  }
}

/* Racun preview fiksna sirina oko papira - absolute final layer v1.3.77 */
body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  width: 944px !important;
  min-width: 944px !important;
  max-width: calc(100vw - 8px) !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  background: #eef3f7 !important;
}

body .document-drawer-shell .unit-drawer-head {
  width: 944px !important;
  min-width: 944px !important;
  max-width: 944px !important;
  box-sizing: border-box !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
    margin-left: 14px !important;
    margin-right: 14px !important;
}

@media screen and (max-width: 960px) {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: calc(100vw - 8px) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 8px) !important;
  }

  body .document-drawer-shell .unit-drawer-head {
    width: 944px !important;
    min-width: 944px !important;
    max-width: none !important;
  }
}

/* Dokumenti i izrada racuna - final layer v1.3.93 */
.invoice-reservation-list {
  overflow-x: hidden !important;
  padding-bottom: 0 !important;
}

.invoice-details-step[hidden],
.invoice-final-step[hidden],
[data-invoice-list-step][hidden] {
  display: none !important;
}

.invoice-details-step,
.invoice-final-step {
  display: grid;
  gap: 16px;
}

.invoice-selected-card {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 14px;
  align-items: stretch;
  max-width: 100%;
  box-sizing: border-box;
  padding: 16px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
  overflow: hidden;
}

.invoice-selected-card div {
  display: grid;
  gap: 5px;
}

.invoice-selected-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.invoice-selected-card strong {
  color: var(--ink);
  font-size: 17px;
  line-height: 1.2;
}

.invoice-selected-card small {
  color: var(--muted);
  font-weight: 800;
}

.invoice-selected-amount {
  justify-items: end;
  text-align: right;
}

.invoice-selected-amount strong {
  font-size: 20px;
}

.invoice-details-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  max-width: 100%;
  overflow: hidden;
}

.invoice-details-actions .button {
  flex: 0 1 auto;
  max-width: 100%;
  white-space: normal;
  text-align: center;
}

.finance-invoice-create {
  overflow-x: hidden;
}

.document-type-choice {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.document-type-choice label {
  position: relative;
  display: block;
  cursor: pointer;
}

.document-type-choice input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.document-type-choice span {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 4px 12px;
  align-items: center;
  min-height: 86px;
  padding: 15px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.document-type-choice svg {
  grid-row: 1 / 3;
  width: 28px;
  height: 28px;
  color: var(--blue);
}

.document-type-choice strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.1;
}

.document-type-choice small {
  color: var(--muted);
  font-weight: 800;
}

.document-type-choice input:checked + span {
  border-color: var(--blue);
  background: #f8fbff;
  box-shadow: 0 0 0 3px #dcecff;
}

.document-screen-note p,
.document-drawer-shell .invoice-page-a4 .document-stay-a4 p,
.document-drawer-shell .invoice-page-a4 .document-note-a4 p,
.print-window-wrap .invoice-page-a4 .document-stay-a4 p,
.print-window-wrap .invoice-page-a4 .document-note-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 p {
  text-transform: none !important;
  white-space: normal !important;
}

.document-note-line {
  display: block;
}

.document-drawer-shell .invoice-page-a4 .document-note-line-nowrap,
.print-window-wrap .invoice-page-a4 .document-note-line-nowrap,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-line-nowrap {
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-title-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-a4 h2 {
  text-transform: none !important;
}

@media screen and (max-width: 900px) {
  .invoice-selected-card {
    grid-template-columns: 1fr;
  }

  .document-type-choice {
    grid-template-columns: 1fr;
  }

  .invoice-selected-amount {
    justify-items: start;
    text-align: left;
  }
}

/* Izrada dokumenta iz rezervacije - true final layer v1.3.96 */
.reservation-drawer .unit-drawer-head [form^="generate-offer-"],
.reservation-drawer .unit-drawer-head [form^="generate-invoice-"] {
  display: none !important;
}

.reservation-document-panel {
  display: grid;
  gap: 16px;
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 140;
  width: min(760px, calc(100vw - 32px));
  max-height: calc(100dvh - 40px);
  overflow: auto;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 22px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 0 0 100vmax rgba(15, 23, 42, .42), 0 28px 72px rgba(15, 23, 42, .24);
}

.reservation-document-panel[hidden] {
  display: none !important;
}

@media print {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body .document-drawer-shell .unit-drawer-head {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}

/* Racun preview desni rub - absolute final layer v1.3.78 */
body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
  margin-left: auto !important;
  margin-right: 8px !important;
}

@media print {
  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    margin: 0 !important;
  }
}

/* Racun preview centriranje i manji naslov - true final layer v1.3.80 */
body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  width: min(1240px, calc(100vw - 8px)) !important;
  min-width: 0 !important;
  max-width: calc(100vw - 8px) !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  background: #eef3f7 !important;
}

body .document-drawer-shell .unit-drawer-head {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

body .document-drawer-shell .unit-drawer-head h2 {
  font-size: 22px !important;
  line-height: 1.12 !important;
}

body .document-drawer-shell .unit-drawer-head .eyebrow {
  font-size: 12px !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
  margin: 10px auto 36px !important;
}

@media screen and (max-width: 860px) {
  body .document-drawer-shell .unit-drawer-head,
  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    min-width: calc(210mm + 16px) !important;
  }
}

@media print {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body .document-drawer-shell .unit-drawer-head {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    margin: 0 !important;
  }
}

/* Racun preview centriranje i manji naslov - absolute final layer v1.3.80 */
body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  width: min(1240px, calc(100vw - 8px)) !important;
  min-width: 0 !important;
  max-width: calc(100vw - 8px) !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  background: #eef3f7 !important;
}

body .document-drawer-shell .unit-drawer-head {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

body .document-drawer-shell .unit-drawer-head h2 {
  font-size: 22px !important;
  line-height: 1.12 !important;
}

body .document-drawer-shell .unit-drawer-head .eyebrow {
  font-size: 12px !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
  margin: 10px auto 36px !important;
}

@media screen and (max-width: 860px) {
  body .document-drawer-shell .unit-drawer-head,
  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    min-width: calc(210mm + 16px) !important;
  }
}

@media print {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body .document-drawer-shell .unit-drawer-head {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    margin: 0 !important;
  }
}

/* Racun preview mali rubovi oko papira - absolute final layer v1.3.79 */
body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  width: fit-content !important;
  min-width: 0 !important;
  max-width: calc(100vw - 8px) !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  background: #eef3f7 !important;
}

body .document-drawer-shell .unit-drawer-head {
  width: calc(210mm + 16px) !important;
  min-width: calc(210mm + 16px) !important;
  max-width: calc(100vw - 8px) !important;
  box-sizing: border-box !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
  margin: 8px !important;
}

@media screen and (max-width: 860px) {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: calc(100vw - 8px) !important;
    max-width: calc(100vw - 8px) !important;
  }

  body .document-drawer-shell .unit-drawer-head {
    width: calc(210mm + 16px) !important;
    min-width: calc(210mm + 16px) !important;
    max-width: none !important;
  }
}

@media print {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body .document-drawer-shell .unit-drawer-head {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    margin: 0 !important;
  }
}

/* Racun preview centriranje i manji naslov - true final layer v1.3.80 */
body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  width: min(1240px, calc(100vw - 8px)) !important;
  min-width: 0 !important;
  max-width: calc(100vw - 8px) !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  background: #eef3f7 !important;
}

body .document-drawer-shell .unit-drawer-head {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

body .document-drawer-shell .unit-drawer-head h2 {
  font-size: 22px !important;
  line-height: 1.12 !important;
}

body .document-drawer-shell .unit-drawer-head .eyebrow {
  font-size: 12px !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
  margin: 10px auto 36px !important;
}

@media screen and (max-width: 860px) {
  body .document-drawer-shell .unit-drawer-head,
  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    min-width: calc(210mm + 16px) !important;
  }
}

@media print {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body .document-drawer-shell .unit-drawer-head {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    margin: 0 !important;
  }
}

/* Racun preview skoro sirina A4 papira - true final layer v1.3.81 */
body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
body .document-drawer-shell > aside.document-drawer,
body .document-drawer-shell .unit-drawer.document-drawer {
  width: min(calc(210mm + 48px), calc(100vw - 8px)) !important;
  min-width: 0 !important;
  max-width: calc(100vw - 8px) !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  background: #eef3f7 !important;
}

body .document-drawer-shell .unit-drawer-head {
  width: 100% !important;
  min-width: calc(210mm + 48px) !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

body .document-drawer-shell .unit-drawer-head h2 {
  font-size: 22px !important;
  line-height: 1.12 !important;
}

body .document-drawer-shell .document-page.invoice-page-a4,
body .document-drawer-shell .document-page-a4.invoice-page-a4,
body .document-drawer-shell .invoice-page-a4 {
  margin: 10px auto 36px !important;
}

@media screen and (max-width: 860px) {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: calc(100vw - 8px) !important;
    max-width: calc(100vw - 8px) !important;
  }
}

@media print {
  body .unit-drawer-shell.document-drawer-shell > aside.unit-drawer.document-drawer,
  body .document-drawer-shell > aside.document-drawer,
  body .document-drawer-shell .unit-drawer.document-drawer {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body .document-drawer-shell .unit-drawer-head {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body .document-drawer-shell .document-page.invoice-page-a4,
  body .document-drawer-shell .document-page-a4.invoice-page-a4,
  body .document-drawer-shell .invoice-page-a4 {
    margin: 0 !important;
  }
}

/* Racun stavke sa popustom na razini racuna - true final layer v1.3.82 */
.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(1),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(1),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(1),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(1),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(1),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(1) {
  width: 9mm !important;
  text-align: center !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(2),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(2),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(2),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(2),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(2),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(2) {
  width: auto !important;
  text-align: left !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(3),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(3),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(3),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(3),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(3),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(3) {
  width: 14mm !important;
  text-align: center !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(4),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(4),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(4),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(4),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(4),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(4) {
  width: 18mm !important;
  text-align: right !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(5),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(5),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(5),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(5),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(5),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(5) {
  width: 22mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-items th:nth-child(6),
.document-drawer-shell .invoice-page-a4 .document-items td:nth-child(6),
.print-window-wrap .invoice-page-a4 .document-items th:nth-child(6),
.print-window-wrap .invoice-page-a4 .document-items td:nth-child(6),
body.print-document-only #print-document-host .invoice-page-a4 .document-items th:nth-child(6),
body.print-document-only #print-document-host .invoice-page-a4 .document-items td:nth-child(6) {
  width: 25mm !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 900 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items tfoot td,
.print-window-wrap .invoice-page-a4 .document-items tfoot td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tfoot td {
  padding: 1.2mm .9mm !important;
  border-bottom: 0 !important;
  background: #fff !important;
  font-size: 6.35pt !important;
  line-height: 1.15 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items tfoot td:first-child,
.print-window-wrap .invoice-page-a4 .document-items tfoot td:first-child,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tfoot td:first-child {
  text-align: right !important;
  padding-right: 5mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-items tfoot td:last-child,
.print-window-wrap .invoice-page-a4 .document-items tfoot td:last-child,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tfoot td:last-child {
  width: 25mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.document-drawer-shell .invoice-page-a4 .document-items .document-items-subtotal-row td,
.print-window-wrap .invoice-page-a4 .document-items .document-items-subtotal-row td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items .document-items-subtotal-row td {
  border-top: .35mm solid #111 !important;
  font-weight: 800 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items .document-items-discount-row td,
.print-window-wrap .invoice-page-a4 .document-items .document-items-discount-row td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items .document-items-discount-row td {
  border-top: 0 !important;
  font-weight: 800 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items .document-items-total-row td,
.print-window-wrap .invoice-page-a4 .document-items .document-items-total-row td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items .document-items-total-row td {
  border-top: .28mm solid #111 !important;
  font-size: 7.1pt !important;
  font-weight: 900 !important;
}

/* Racun popust uvijek prikazan bez dodatnih crta - true final layer v1.3.83 */
.document-drawer-shell .invoice-page-a4 .document-items .document-items-subtotal-row td,
.document-drawer-shell .invoice-page-a4 .document-items .document-items-discount-row td,
.document-drawer-shell .invoice-page-a4 .document-items .document-items-total-row td,
.print-window-wrap .invoice-page-a4 .document-items .document-items-subtotal-row td,
.print-window-wrap .invoice-page-a4 .document-items .document-items-discount-row td,
.print-window-wrap .invoice-page-a4 .document-items .document-items-total-row td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items .document-items-subtotal-row td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items .document-items-discount-row td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items .document-items-total-row td {
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.document-drawer-shell .invoice-page-a4 .document-items .document-items-subtotal-row td,
.print-window-wrap .invoice-page-a4 .document-items .document-items-subtotal-row td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items .document-items-subtotal-row td {
  padding-top: 2.1mm !important;
}

.document-drawer-shell .invoice-page-a4 .document-items .document-items-total-row td,
.print-window-wrap .invoice-page-a4 .document-items .document-items-total-row td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items .document-items-total-row td {
  padding-top: 1.6mm !important;
  font-size: 7.1pt !important;
  font-weight: 900 !important;
}

/* Racun stavke - crta iza zadnje stavke v1.3.88 */
.document-drawer-shell .invoice-page-a4 .document-items tbody tr:last-child td,
.print-window-wrap .invoice-page-a4 .document-items tbody tr:last-child td,
body.print-document-only #print-document-host .invoice-page-a4 .document-items tbody tr:last-child td {
  border-bottom: .32mm solid #111 !important;
}

/* Dokumenti i izrada racuna - true final layer v1.3.93 */
.invoice-reservation-list {
  overflow-x: hidden !important;
  padding-bottom: 0 !important;
}

.invoice-details-step[hidden],
.invoice-final-step[hidden],
[data-invoice-list-step][hidden] {
  display: none !important;
}

.invoice-details-step,
.invoice-final-step {
  display: grid;
  gap: 16px;
}

.invoice-selected-card {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 14px;
  align-items: stretch;
  max-width: 100%;
  box-sizing: border-box;
  padding: 16px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
  overflow: hidden;
}

.invoice-selected-card div {
  display: grid;
  gap: 5px;
}

.invoice-selected-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.invoice-selected-card strong {
  color: var(--ink);
  font-size: 17px;
  line-height: 1.2;
}

.invoice-selected-card small {
  color: var(--muted);
  font-weight: 800;
}

.invoice-selected-amount {
  justify-items: end;
  text-align: right;
}

.invoice-selected-amount strong {
  font-size: 20px;
}

.invoice-details-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  max-width: 100%;
  overflow: hidden;
}

.invoice-details-actions .button {
  flex: 0 1 auto;
  max-width: 100%;
  white-space: normal;
  text-align: center;
}

.finance-invoice-create {
  overflow-x: hidden;
}

.document-type-choice {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.document-type-choice label {
  position: relative;
  display: block;
  cursor: pointer;
}

.document-type-choice input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.document-type-choice span {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 4px 12px;
  align-items: center;
  min-height: 86px;
  padding: 15px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.document-type-choice svg {
  grid-row: 1 / 3;
  width: 28px;
  height: 28px;
  color: var(--blue);
}

.document-type-choice strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.1;
}

.document-type-choice small {
  color: var(--muted);
  font-weight: 800;
}

.document-type-choice input:checked + span {
  border-color: var(--blue);
  background: #f8fbff;
  box-shadow: 0 0 0 3px #dcecff;
}

.document-screen-note p,
.document-drawer-shell .invoice-page-a4 .document-stay-a4 p,
.document-drawer-shell .invoice-page-a4 .document-note-a4 p,
.print-window-wrap .invoice-page-a4 .document-stay-a4 p,
.print-window-wrap .invoice-page-a4 .document-note-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-stay-a4 p,
body.print-document-only #print-document-host .invoice-page-a4 .document-note-a4 p {
  text-transform: none !important;
  white-space: normal !important;
}

.document-drawer-shell .invoice-page-a4 .document-title-a4 h2,
.print-window-wrap .invoice-page-a4 .document-title-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4 .document-title-a4 h2 {
  text-transform: none !important;
}

@media screen and (max-width: 900px) {
  .invoice-selected-card {
    grid-template-columns: 1fr;
  }

  .document-type-choice {
    grid-template-columns: 1fr;
  }

  .invoice-selected-amount {
    justify-items: start;
    text-align: left;
  }
}
/* User menu and Evidencija prometa polish v1.3.98 */
.brand-roko,
.login-main-logo {
  background: transparent !important;
}

.account-menu {
  position: relative;
}

.account-menu > summary {
  list-style: none;
}

.account-menu > summary::-webkit-details-marker {
  display: none;
}

.account-menu .account-pill {
  cursor: pointer;
}

.account-menu .account-pill svg:last-child {
  width: 15px;
  height: 15px;
}

.account-menu-panel {
  position: absolute;
  right: 0;
  top: calc(100% + 10px);
  z-index: 80;
  width: min(390px, calc(100vw - 32px));
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 22px 55px rgba(15, 31, 53, .16);
}

.account-menu-head {
  display: grid;
  gap: 3px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

.account-menu-head strong {
  font-size: 18px;
}

.account-menu-head span {
  color: var(--muted);
  font-weight: 800;
}

.account-menu-form {
  display: grid;
  gap: 12px;
}

.account-password-box {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
}

.account-password-box summary {
  cursor: pointer;
  color: var(--blue);
  font-weight: 900;
}

.account-password-box[open] {
  display: grid;
  gap: 12px;
}

.account-menu-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.ep-picker {
  position: relative;
  z-index: 2;
  width: min(640px, calc(100vw - 32px));
  margin: auto;
  align-self: center;
  max-height: calc(100vh - 48px);
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(15, 31, 53, .2);
}

.ep-picker-shell {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
}

.ep-picker-shell .unit-drawer-scrim {
  z-index: 1;
}

.ep-picker-head,
.ep-picker-section,
.ep-picker-actions {
  padding: 22px 30px;
}

.ep-picker-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
}

.ep-picker-head h2,
.ep-picker-section h3 {
  margin: 0;
}

.ep-picker-form {
  display: grid;
}

.ep-picker-section {
  display: grid;
  gap: 14px;
}

.ep-picker-mini-actions,
.ep-period-shortcuts {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.ep-unit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.ep-unit-option {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
  cursor: pointer;
}

.ep-unit-option input {
  width: 18px;
  height: 18px;
  accent-color: var(--blue);
}

.unit-dot {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  flex: 0 0 auto;
}

.ep-picker-count {
  padding: 14px 16px;
  border-radius: 8px;
  background: #f5f8fc;
  color: var(--muted);
  font-weight: 800;
}

.ep-picker-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  border-top: 1px solid var(--line);
}

.ep-page-stack {
  display: grid;
  gap: 24px;
  justify-items: center;
}

.ep-page-stack .document-page.ep-page {
  margin-bottom: 0;
}

.document-page.ep-page {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 210mm;
  min-height: 297mm;
  margin: 30px auto 56px;
  padding: 26mm 16mm 16mm;
  background: #fff;
  color: #111;
  box-shadow: 0 22px 60px rgba(15, 23, 42, .12), 0 0 0 1px rgba(148, 163, 184, .24);
  font-family: Arial, Helvetica, sans-serif;
}

.ep-page .ep-form-code {
  position: absolute;
  top: 19mm;
  right: 18mm;
  font-size: 10pt;
}

.ep-page h2 {
  margin: 0 0 20px;
  text-align: center;
  font-size: 18pt;
  letter-spacing: 3px;
}

.ep-taxpayer {
  margin-bottom: 18px;
  font-size: 10.5pt;
}

.ep-taxpayer h3 {
  margin: 0 0 12px;
  font-size: 10.5pt;
}

.ep-taxpayer p {
  display: flex;
  gap: 18px;
  margin: 8px 0;
}

.ep-taxpayer span {
  min-width: 185px;
}

.ep-taxpayer strong {
  font-weight: 400;
}

.ep-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 10pt;
  margin-bottom: 8mm;
}

.ep-table .ep-col-rbr {
  width: 11%;
}

.ep-table .ep-col-number {
  width: 17%;
}

.ep-table .ep-col-date {
  width: 19%;
}

.ep-table .ep-col-guest {
  width: 34%;
}

.ep-table .ep-col-amount {
  width: 19%;
}

.ep-table th,
.ep-table td {
  border: 1.6px solid #222;
  padding: 7px 9px;
  vertical-align: middle;
}

.ep-table th {
  text-align: center;
  background: #f3f3f3;
  font-weight: 700;
}

.ep-table td:first-child {
  text-align: center;
}

.ep-table td:nth-child(2),
.ep-table td:nth-child(3) {
  text-align: center;
}

.ep-table td:nth-child(4) {
  text-align: left;
  overflow-wrap: anywhere;
}

.ep-table td:last-child,
.ep-table tfoot th:last-child {
  text-align: right;
}

.ep-table .ep-empty-row td {
  height: 28px;
}

.ep-table tfoot th {
  height: 38px;
  background: #f3f3f3;
}

.ep-table tfoot th:first-child {
  text-align: right;
}

.ep-footer {
  margin-top: auto;
  padding-top: 4mm;
  text-align: center;
  color: #666;
  font-size: 9pt;
}

.ep-footer p {
  margin: 7px 0;
}

@media print {
  html.ep-print-root,
  body.ep-print-window,
  body.print-ep-document-only {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.ep-print-window .print-window-wrap,
  body.print-ep-document-only #print-document-host {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.ep-print-window .ep-page-stack,
  body.print-ep-document-only #print-document-host .ep-page-stack {
    display: block !important;
  }

  .document-page.ep-page {
    box-sizing: border-box !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: auto !important;
    min-height: 297mm !important;
    max-height: none !important;
    margin: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    page-break-inside: avoid !important;
    break-inside: avoid-page !important;
    page-break-after: always !important;
    break-after: page !important;
  }

  .document-page.ep-page:last-child {
    page-break-after: auto !important;
    break-after: auto !important;
  }

  .ep-table tfoot,
  .ep-table tfoot tr {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
}

@media (max-width: 760px) {
  .account-menu-panel {
    right: -70px;
  }

  .ep-unit-grid,
  .ep-picker-actions {
    grid-template-columns: 1fr;
  }

  .ep-picker-head,
  .ep-picker-section,
  .ep-picker-actions {
    padding: 18px;
  }
}

/* Smjestaj reports */
.report-summary-grid .stat-card {
  min-height: 116px;
}

.stat-card-gross strong,
.amount-gross {
  color: #07182f;
}

.stat-card-commission strong,
.amount-commission {
  color: #f04f17;
}

.stat-card-tax strong,
.amount-tax {
  color: #f59e0b;
}

.stat-card-net {
  background: #eefbf3;
  border-color: #b8f0cf;
}

.stat-card-net strong,
.amount-net {
  color: #009a47;
}

.amount-paid {
  color: #155dfc;
}

.amount-expense {
  color: #dc2626;
}

.amount-due {
  color: #dc2626;
}

.report-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 16px;
  margin: 18px 0;
}

.report-action-card {
  display: grid;
  align-content: start;
  gap: 14px;
}

.report-tax-card {
  border-color: #c7ddff;
  background: #f8fbff;
}

.report-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.report-chip-row span {
  padding: 8px 10px;
  border-radius: 8px;
  background: #eef4fb;
  color: var(--muted);
  font-weight: 800;
  font-size: .9rem;
}

.table-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 26px;
  border-bottom: 1px solid var(--line);
}

.table-card-head h2,
.table-card-head p {
  margin: 0;
}

.report-archive-table table td {
  vertical-align: middle;
}

.report-archive-table .action-row {
  justify-content: flex-end;
}

.report-builder {
  width: min(940px, calc(100vw - 56px));
  max-height: calc(100vh - 54px);
}

.report-builder-shell .unit-drawer-scrim {
  cursor: default;
}

.report-channel-dot {
  background: linear-gradient(135deg, #0b63c7, #00a1d8);
}

.report-preview-box {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 14px;
  border: 1px solid #d8e6f6;
  border-radius: 8px;
  background: #f8fbff;
}

.report-preview-box span {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-weight: 800;
}

.report-preview-box strong {
  color: var(--ink);
  font-size: 1.08rem;
}

.report-period-help {
  margin: 10px 2px 0;
  color: var(--muted);
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1.35;
}

.report-preview-shell .document-drawer {
  width: min(1120px, calc(100vw - 28px));
}

.document-page.report-page {
  width: 297mm;
  min-height: 210mm;
  margin: 28px auto 52px;
  padding: 18mm 16mm 20mm;
  font-family: Arial, Helvetica, sans-serif;
  color: #111;
}

.report-page h2 {
  margin: 0 0 8mm;
  text-align: center;
  font-size: 18pt;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.report-period {
  margin: 0 0 8mm;
  text-align: center;
  color: #555;
  font-size: 10pt;
}

.report-print-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10mm;
}

.report-print-summary div {
  padding: 10px 12px;
  border: 1px solid #d8d8d8;
  border-radius: 8px;
  background: #f8f8f8;
}

.report-print-summary span {
  display: block;
  margin-bottom: 6px;
  color: #555;
  font-size: 9pt;
  font-weight: 700;
}

.report-print-summary strong {
  font-size: 13pt;
}

.report-print-table {
  font-size: 8.8pt;
}

.report-print-table th,
.report-print-table td {
  padding: 7px 6px;
}

.report-print-table td:nth-last-child(-n+3),
.report-print-table th:nth-last-child(-n+3) {
  text-align: right;
}

@media print {
  .document-page.report-page {
    width: 297mm !important;
    min-height: 210mm !important;
    margin: 0 !important;
    box-shadow: none !important;
    page: landscape;
  }
}

@media (max-width: 980px) {
  .report-dashboard-grid,
  .report-preview-box,
  .report-print-summary {
    grid-template-columns: 1fr;
  }

  .report-builder {
    width: calc(100vw - 24px);
  }

  .document-page.report-page {
    width: 210mm;
    min-height: 297mm;
  }
}

/* v1.3.101 - compact reports and exports */
.reports-filter-card,
.finance-modern-filter {
  display: grid;
  gap: 10px;
}

.report-filter-primary,
.finance-filter-primary {
  grid-template-columns: minmax(260px, 1fr) auto auto;
  align-items: end;
}

.report-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0;
  padding: 6px;
  width: fit-content;
  max-width: 100%;
  border-radius: 8px;
  background: #f3f6fa;
}

.report-tabs a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 14px;
  border-radius: 8px;
  color: var(--muted);
  font-weight: 800;
  text-decoration: none;
}

.report-tabs a.is-active {
  background: #fff;
  color: var(--ink);
  box-shadow: 0 4px 14px rgba(15, 23, 42, .10);
}

.report-analytics-table th,
.report-analytics-table td {
  white-space: nowrap;
}

.report-analytics-table td:first-child,
.report-analytics-table th:first-child {
  white-space: normal;
  min-width: 220px;
}

.report-analytics-table tbody tr:nth-child(even) td {
  background: #fbfdff;
}

.reservation-export-picker {
  width: min(860px, calc(100vw - 56px));
}

.reservation-export-shell .unit-drawer-scrim {
  cursor: default;
}

.finance-modern-filter .invoice-more-filters,
.reports-filter-card .invoice-more-filters {
  margin-top: 0;
}

/* v1.3.102 - unified quick filters */
.unified-filter-row {
  grid-template-columns: minmax(280px, 1fr) auto auto auto;
  align-items: end;
}

.inline-more-filter {
  display: contents;
}

.inline-more-filter > summary {
  order: 1;
  min-height: 44px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
  white-space: nowrap;
}

.unified-filter-row > .field {
  order: 0;
}

.unified-filter-row > .button,
.unified-filter-row > .guest-filter-actions {
  order: 2;
}

.inline-more-filter > .document-filter-grid {
  order: 10;
  grid-column: 1 / -1;
  margin-top: 2px;
  padding: 14px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}

.inline-more-filter > .document-filter-grid > .button {
  display: none;
}

.document-quick-filter-row.unified-filter-row,
.report-filter-primary.unified-filter-row,
.finance-filter-primary.unified-filter-row {
  grid-template-columns: minmax(320px, 1fr) auto auto auto;
}

.guestbook-filter-row.unified-filter-row {
  grid-template-columns: minmax(320px, 1fr) minmax(160px, .45fr) minmax(150px, .4fr) auto;
}

@media (max-width: 760px) {
  .report-filter-primary,
  .finance-filter-primary {
    grid-template-columns: 1fr;
  }

  .report-tabs {
    width: 100%;
  }

  .report-tabs a {
    flex: 1 1 140px;
    justify-content: center;
  }

  .unified-filter-row,
  .document-quick-filter-row.unified-filter-row,
  .report-filter-primary.unified-filter-row,
  .finance-filter-primary.unified-filter-row,
  .guestbook-filter-row.unified-filter-row {
    grid-template-columns: 1fr;
  }

  .inline-more-filter > summary,
  .unified-filter-row > .button,
  .guest-filter-actions {
    width: 100%;
    justify-content: center;
  }
}

/* v1.3.103 final overrides - report print and dense filter alignment */
.document-page.report-page {
  width: 210mm !important;
  min-height: 297mm !important;
  padding: 18mm 14mm 20mm !important;
}

.report-preview-shell .document-page.report-page {
  margin-inline: auto;
}

.report-print-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10mm;
  margin-top: 8mm;
}

.report-print-mini-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 7.4pt;
}

.report-print-mini-table th,
.report-print-mini-table td {
  border-bottom: 0.2mm solid #111;
  padding: 1.8mm 1.4mm;
  text-align: left;
}

.report-print-mini-table td:last-child,
.report-print-mini-table th:last-child {
  text-align: right;
}

.report-print-section-title {
  margin: 8mm 0 3mm;
  font-size: 9pt;
  text-transform: uppercase;
  letter-spacing: 0;
}

@media print {
  .document-page.report-page {
    width: 210mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    padding: 18mm 14mm 20mm !important;
    page: report-portrait !important;
    box-shadow: none !important;
  }

  @page report-portrait {
    size: A4 portrait;
    margin: 0;
  }

  .report-print-two-col {
    break-inside: avoid;
  }
}

/* v1.3.107 - polished reports dashboard */
.reports-filter-card {
  padding: 18px 22px;
}

.reports-filter-card .report-filter-primary.unified-filter-row {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) minmax(150px, auto) minmax(118px, auto) minmax(118px, auto);
  gap: 12px;
  align-items: end;
}

.reports-filter-card .field input {
  min-height: 48px;
}

.reports-filter-card .inline-more-filter > summary,
.reports-filter-card .button {
  min-height: 48px;
  padding-inline: 18px;
  white-space: nowrap;
}

.reports-filter-card .button-light {
  min-width: 118px;
}

.reports-filter-card .inline-more-filter > .document-filter-grid {
  margin-top: 8px;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
}

.report-summary-grid {
  grid-template-columns: repeat(6, minmax(150px, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.report-summary-grid .stat-card {
  min-width: 0;
  min-height: 78px;
  padding: 12px 14px;
  gap: 10px;
  overflow: hidden;
  box-shadow: 0 10px 26px rgba(15, 31, 53, .06);
}

.report-summary-grid .icon-box {
  width: 38px;
  height: 38px;
}

.report-summary-grid .icon-box svg {
  width: 20px;
  height: 20px;
}

.report-summary-grid .stat-card > div {
  min-width: 0;
}

.report-summary-grid .stat-card p {
  margin: 0 0 4px;
  font-size: .92rem;
  line-height: 1.15;
}

.report-summary-grid .stat-card strong {
  max-width: 100%;
  font-size: clamp(1.08rem, 1.08vw, 1.45rem);
  line-height: 1.08;
  white-space: normal;
  overflow-wrap: anywhere;
}

.report-vat-summary .stat-card:first-child strong {
  font-size: clamp(1.05rem, 1.1vw, 1.35rem);
  line-height: 1.22;
}

.report-vat-dashboard {
  gap: 16px;
}

.report-vat-dashboard > .table-card-head {
  padding: 20px 24px 16px;
}

.report-vat-filter,
.report-expense-filter {
  grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) auto minmax(160px, auto);
  padding: 16px 0 18px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.report-vat-filter .button,
.report-expense-filter .button {
  min-height: 48px;
  padding-inline: 24px;
}

.report-vat-grid {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 16px;
  align-items: start;
}

.report-vat-grid .table-card {
  overflow-x: auto;
}

.report-vat-grid .table-card-head {
  padding: 20px 22px;
}

.report-vat-grid .report-analytics-table table {
  min-width: 0;
  table-layout: fixed;
}

.report-vat-grid .report-analytics-table th,
.report-vat-grid .report-analytics-table td {
  padding: 14px 16px;
  white-space: nowrap;
}

.report-vat-grid .report-analytics-table th:first-child,
.report-vat-grid .report-analytics-table td:first-child {
  min-width: 0;
  width: 42%;
  white-space: normal;
}

.report-vat-grid .report-analytics-table th:not(:first-child),
.report-vat-grid .report-analytics-table td:not(:first-child) {
  text-align: right;
}

.report-vat-grid .report-analytics-table th:last-child,
.report-vat-grid .report-analytics-table td:last-child {
  width: 28%;
}

.report-tabs {
  margin: 16px 0;
}

@media (max-width: 1280px) {
  .report-summary-grid {
    grid-template-columns: repeat(2, minmax(240px, 1fr));
  }

  .report-vat-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 960px) {
  .reports-filter-card .report-filter-primary.unified-filter-row,
  .report-vat-filter,
  .report-expense-filter {
    grid-template-columns: 1fr 1fr;
  }

  .reports-filter-card .field,
  .reports-filter-card .inline-more-filter > .document-filter-grid {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .reports-filter-card .report-filter-primary.unified-filter-row,
  .report-vat-filter,
  .report-expense-filter,
  .report-summary-grid,
  .reports-filter-card .inline-more-filter > .document-filter-grid {
    grid-template-columns: 1fr;
  }

  .reports-filter-card .inline-more-filter > summary,
  .reports-filter-card .button,
  .report-vat-filter .button,
  .report-expense-filter .button {
    width: 100%;
  }
}

/* v1.3.108 - compact unified filters across accommodation screens */
.reservation-filter-primary.unified-filter-row,
.document-quick-filter-row.unified-filter-row,
.report-filter-primary.unified-filter-row,
.finance-filter-primary.unified-filter-row {
  grid-template-columns: minmax(280px, min(680px, 56vw)) auto auto auto !important;
  justify-content: start;
  align-items: end;
}

.guestbook-filter-row.unified-filter-row {
  grid-template-columns: minmax(280px, min(560px, 46vw)) minmax(150px, 220px) minmax(150px, 220px) auto !important;
  justify-content: start;
  align-items: end;
}

.unified-filter-row > .field {
  min-width: 0;
}

.unified-filter-row > .button,
.unified-filter-row > .guest-filter-actions,
.inline-more-filter > summary {
  width: auto;
  min-width: max-content;
}

.unified-filter-row > .button.button-light {
  min-width: 112px;
}

.reports-filter-card .button-light {
  min-width: 112px;
}

.guest-filter-actions {
  display: inline-flex;
  flex-wrap: nowrap;
  gap: 10px;
}

.guest-filter-actions .button {
  width: auto;
  min-width: max-content;
}

.inline-more-filter > .document-filter-grid {
  max-width: 100%;
}

@media (max-width: 980px) {
  .reservation-filter-primary.unified-filter-row,
  .document-quick-filter-row.unified-filter-row,
  .report-filter-primary.unified-filter-row,
  .finance-filter-primary.unified-filter-row,
  .guestbook-filter-row.unified-filter-row {
    grid-template-columns: minmax(0, 1fr) auto auto !important;
  }

  .guestbook-filter-row.unified-filter-row > .field:first-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .reservation-filter-primary.unified-filter-row,
  .document-quick-filter-row.unified-filter-row,
  .report-filter-primary.unified-filter-row,
  .finance-filter-primary.unified-filter-row,
  .guestbook-filter-row.unified-filter-row {
    grid-template-columns: 1fr !important;
  }

  .unified-filter-row > .button,
  .unified-filter-row > .guest-filter-actions,
  .guest-filter-actions .button,
  .inline-more-filter > summary {
    width: 100%;
    min-width: 0;
  }
}

/* v1.3.109 - locked report A4 preview and print fit */
.report-preview-shell .document-drawer {
  width: min(1060px, calc(100vw - 28px));
  overflow-x: hidden;
}

.report-preview-shell .unit-drawer-head {
  gap: 10px;
}

.report-preview-shell .unit-drawer-head h2 {
  max-width: 720px;
}

body .document-drawer-shell.report-preview-shell .unit-drawer-head.report-preview-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 14px !important;
}

body .document-drawer-shell.report-preview-shell .report-preview-head-top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  min-width: 0;
}

body .document-drawer-shell.report-preview-shell .report-preview-head-top .eyebrow {
  margin: 0 !important;
  white-space: nowrap !important;
}

body .document-drawer-shell.report-preview-shell .report-preview-title {
  max-width: none !important;
  margin: 0 !important;
  white-space: nowrap !important;
  overflow: visible !important;
}

body .document-drawer-shell.report-preview-shell .report-preview-actions {
  display: flex !important;
  justify-content: flex-end !important;
  min-width: 0;
}

body .document-drawer-shell.report-preview-shell .report-preview-actions .action-row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
}

body .document-drawer-shell.report-preview-shell .report-preview-actions .button {
  white-space: nowrap !important;
}

body .document-drawer-shell.report-preview-shell .report-preview-actions .button-light {
  min-width: 142px !important;
}

.report-preview-shell .document-page.report-page {
  box-sizing: border-box;
  width: 210mm !important;
  max-width: calc(100vw - 92px);
  min-height: 297mm !important;
  margin: 28px auto 52px !important;
  padding: 17mm 15mm 18mm !important;
  overflow: hidden;
}

.report-preview-shell .report-page h2 {
  margin-bottom: 8mm;
  font-size: 16pt;
  line-height: 1.18;
  letter-spacing: 1.1px;
}

.report-preview-shell .report-period {
  margin-bottom: 8mm;
}

.report-preview-shell .report-print-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 3mm;
  margin-bottom: 10mm;
}

.report-preview-shell .report-print-summary div {
  min-width: 0;
  padding: 3mm 3.2mm;
}

.report-preview-shell .report-print-summary strong {
  font-size: 12pt;
  line-height: 1.12;
  overflow-wrap: anywhere;
}

.report-preview-shell .report-print-two-col {
  display: grid;
  grid-template-columns: 1fr !important;
  gap: 7mm;
  margin: 0 0 8mm !important;
}

.report-preview-shell .report-print-two-col > div {
  min-width: 0;
}

.report-preview-shell .report-print-two-col h3,
.report-preview-shell .report-print-section-title {
  margin: 0 0 3mm;
  font-size: 9pt;
  line-height: 1.2;
}

.report-preview-shell .report-print-mini-table,
.report-preview-shell .report-print-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
  border-collapse: collapse;
}

.report-preview-shell .report-print-mini-table {
  font-size: 8.2pt;
}

.report-preview-shell .report-print-table {
  font-size: 7.2pt;
}

.report-preview-shell .report-print-table th,
.report-preview-shell .report-print-table td,
.report-preview-shell .report-print-mini-table th,
.report-preview-shell .report-print-mini-table td {
  padding: 1.6mm 1.4mm;
  overflow: hidden;
  overflow-wrap: anywhere;
  word-break: normal;
}

.report-preview-shell .report-print-mini-table th:nth-child(1),
.report-preview-shell .report-print-mini-table td:nth-child(1) {
  width: 52%;
}

.report-preview-shell .report-print-mini-table th:nth-child(2),
.report-preview-shell .report-print-mini-table td:nth-child(2) {
  width: 11%;
  text-align: center;
}

.report-preview-shell .report-print-mini-table th:nth-child(3),
.report-preview-shell .report-print-mini-table td:nth-child(3),
.report-preview-shell .report-print-mini-table th:nth-child(4),
.report-preview-shell .report-print-mini-table td:nth-child(4) {
  width: 18.5%;
  text-align: right;
  white-space: nowrap;
}

.report-preview-shell .report-print-table th:nth-child(1),
.report-preview-shell .report-print-table td:nth-child(1) {
  width: 7%;
  text-align: center;
}

.report-preview-shell .report-print-table th:nth-child(2),
.report-preview-shell .report-print-table td:nth-child(2) {
  width: 22%;
}

.report-preview-shell .report-print-table th:nth-child(3),
.report-preview-shell .report-print-table td:nth-child(3) {
  width: 21%;
}

.report-preview-shell .report-print-table th:nth-child(4),
.report-preview-shell .report-print-table td:nth-child(4) {
  width: 15%;
}

.report-preview-shell .report-print-table th:nth-child(5),
.report-preview-shell .report-print-table td:nth-child(5) {
  width: 17%;
}

.report-preview-shell .report-print-table th:nth-child(6),
.report-preview-shell .report-print-table td:nth-child(6),
.report-preview-shell .report-print-table th:nth-child(7),
.report-preview-shell .report-print-table td:nth-child(7) {
  width: 9%;
  text-align: right;
  white-space: nowrap;
}

@media print {
  .report-preview-shell .document-page.report-page,
  .document-page.report-page {
    box-sizing: border-box !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    padding: 17mm 15mm 18mm !important;
    page: report-portrait !important;
    overflow: hidden !important;
    box-shadow: none !important;
  }

  .report-preview-shell .report-print-two-col,
  .report-print-two-col {
    grid-template-columns: 1fr !important;
    break-inside: avoid;
  }
}

/* v1.3.110 - payments, expenses and tighter finance workflow */
.unified-search-card .unified-filter-advanced[hidden] {
  display: none !important;
}

.unified-search-card .unified-filter-advanced {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #dbe7f5;
}

.finance-summary-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.stat-card-green strong,
.text-green {
  color: #009e4d;
}

.stat-card-warning strong {
  color: #f59e0b;
}

.stat-card-expense strong,
.expense-cell {
  color: #c2410c;
}

.reservation-payment-panel {
  margin: 18px 24px 24px;
  padding: 20px;
  border: 1px solid #d7e6f7;
  border-radius: 16px;
  background: #f8fbff;
}

.reservation-payment-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.payment-summary-grid,
.expense-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.payment-summary-grid > div,
.expense-summary-grid > article {
  border: 1px solid #dce8f7;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}
.payment-summary-grid > div.is-positive,
.payment-summary-grid > div.is-zero {
  border-color: #bbf7d0;
  background: #ecfdf5;
}
.payment-summary-grid > div.is-negative {
  border-color: #fecaca;
  background: #fff1f2;
}

.payment-summary-grid span,
.expense-summary-grid span {
  display: block;
  color: #64748b;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 12px;
}

.payment-summary-grid strong,
.expense-summary-grid strong {
  display: block;
  margin-top: 5px;
  font-size: 20px;
}

.expense-summary-grid > article.is-actual {
  border-color: #bfe8d2;
  background: #f3fff8;
}

.expense-summary-grid > article.is-expected {
  border-color: #f8d38c;
  background: #fffbf1;
}

.reservation-payment-title-row {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.reservation-payment-title-row h3 {
  margin: 0;
}

.reservation-payment-help .finance-info-tooltip {
  width: min(380px, calc(100vw - 48px));
}

.reservation-prepayment-note {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 10px 0 14px;
  padding: 12px 14px;
  border: 1px solid #bfdbfe;
  border-radius: 12px;
  background: #eff6ff;
  color: #0f172a;
}

.reservation-prepayment-note svg {
  width: 22px;
  height: 22px;
  color: var(--primary);
}

.reservation-prepayment-note strong,
.reservation-prepayment-note span {
  display: block;
}

.reservation-prepayment-note strong {
  font-size: 14px;
  font-weight: 950;
}

.reservation-prepayment-note span {
  margin-top: 2px;
  color: #5f718c;
  font-weight: 800;
  line-height: 1.45;
}

.reservation-prepayment-note a {
  color: var(--primary);
  font-weight: 950;
  text-decoration: none;
}

@media (max-width: 720px) {
  .reservation-prepayment-note {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .reservation-prepayment-note a {
    grid-column: 2;
  }
}
.payment-summary-grid > div.is-positive span,
.payment-summary-grid > div.is-zero span,
.payment-summary-grid > div.is-positive strong,
.payment-summary-grid > div.is-zero strong {
  color: #047857;
}
.payment-summary-grid > div.is-negative span,
.payment-summary-grid > div.is-negative strong {
  color: #dc2626;
}

.payment-entry-form {
  border: 1px solid #dce8f7;
  background: #fff;
  border-radius: 14px;
  padding: 14px;
  margin-top: 14px;
}

.payment-entry-grid {
  display: grid;
  grid-template-columns: minmax(135px, .78fr) minmax(130px, .76fr) minmax(150px, .82fr) minmax(230px, 1.2fr);
  gap: 14px;
  align-items: end;
}

.payment-entry-grid .field {
  min-width: 0;
}

.payment-commission-period-field,
.payment-note-field {
  grid-column: span 2;
}

.payment-form-grid .payment-commission-period-field {
  grid-column: 1 / -1;
}

@media (max-width: 1180px) {
  .payment-entry-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .payment-entry-grid {
    grid-template-columns: 1fr;
  }

  .payment-commission-period-field,
  .payment-note-field {
    grid-column: 1;
  }
}

.grid-5 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.payment-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.payment-row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 12px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}

.payment-row span {
  display: block;
  color: #64748b;
  font-size: 13px;
}

.accommodation-help-hero {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
  padding: 20px;
  border: 1px solid #dbe8f6;
  border-left: 5px solid #0b63c7;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
}

.accommodation-help-hero h2 {
  margin: 0;
  font-size: clamp(26px, 2.4vw, 38px);
  line-height: 1.05;
}

.accommodation-screen-help {
  flex: 0 0 auto;
  color: var(--blue);
}

.accommodation-screen-help:hover {
  border-color: #b9d8ff;
  background: #eef6ff;
}

.accommodation-help-layout {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.accommodation-help-nav {
  position: sticky;
  top: 16px;
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid #dbe8f6;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

.accommodation-help-nav a {
  display: flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 10px;
  border-radius: 8px;
  color: var(--ink);
  font-weight: 850;
  text-decoration: none;
}

.accommodation-help-nav a:hover {
  color: var(--blue);
  background: #eef6ff;
}

.accommodation-help-content {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.accommodation-help-card {
  display: grid;
  gap: 14px;
}

.help-card-heading {
  display: flex;
  gap: 12px;
  align-items: center;
}

.help-card-heading h3 {
  margin: 0;
  font-size: 24px;
  line-height: 1.1;
}

.help-card-heading .icon-box {
  flex: 0 0 auto;
}

.accommodation-help-card p {
  margin: 0;
  color: var(--muted);
  font-weight: 750;
  line-height: 1.55;
}

.help-steps,
.help-list {
  margin: 0;
  padding-left: 22px;
  color: #24364f;
  line-height: 1.55;
}

.help-steps li,
.help-list li {
  margin: 7px 0;
}

.help-steps strong,
.help-list strong {
  color: var(--ink);
}

.help-note {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #f1f7ff;
}

.help-note strong {
  color: var(--ink);
  font-weight: 950;
}

.help-note span {
  color: var(--muted);
  font-weight: 800;
  line-height: 1.45;
}

.help-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.help-columns h4 {
  margin: 0 0 8px;
  font-size: 17px;
}

.help-scenarios {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.help-scenarios div {
  display: grid;
  gap: 5px;
  padding: 13px;
  border: 1px solid #e1eaf5;
  border-radius: 8px;
  background: #f8fbff;
}

.help-scenarios strong {
  color: var(--ink);
  font-weight: 950;
}

.help-scenarios span {
  color: var(--muted);
  font-weight: 780;
  line-height: 1.45;
}

@media (max-width: 1050px) {
  .accommodation-help-layout {
    grid-template-columns: 1fr;
  }

  .accommodation-help-nav {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .accommodation-help-hero,
  .help-card-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .accommodation-help-nav,
  .help-columns,
  .help-scenarios {
    grid-template-columns: 1fr;
  }
}

.finance-expense-section {
  margin-top: 22px;
}

.finance-expense-list-table {
  table-layout: fixed;
  width: 100%;
}

.finance-expense-list-table th:nth-child(1),
.finance-expense-list-table td:nth-child(1) {
  width: 140px;
}

.finance-expense-list-table th:nth-child(2),
.finance-expense-list-table td:nth-child(2) {
  width: 250px;
}

.finance-expense-list-table th:nth-child(3),
.finance-expense-list-table td:nth-child(3) {
  width: 260px;
}

.finance-expense-list-table th:nth-child(4),
.finance-expense-list-table td:nth-child(4) {
  width: auto;
}

.finance-expense-list-table th:nth-child(5),
.finance-expense-list-table td:nth-child(5) {
  width: 130px;
  text-align: right;
  white-space: nowrap;
}

.finance-expense-list-table th:nth-child(6),
.finance-expense-list-table td:nth-child(6) {
  width: 128px;
}

.finance-expense-list-table .expense-cell {
  display: inline-block;
  min-width: 92px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.finance-tabs {
  margin: 18px 0 14px;
}

.finance-payment-section {
  margin-top: 14px;
}

.finance-payment-summary {
  margin-bottom: 16px;
}

.payment-filter-strip {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(150px, .35fr) minmax(150px, .35fr) minmax(150px, .35fr) auto auto;
  gap: 12px;
  align-items: end;
  margin: 12px 0 6px;
  padding: 14px;
  border: 1px solid #dbe7f5;
  border-radius: 14px;
  background: #f8fbff;
}

.payment-type-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.payment-type-badge.success {
  color: #047857;
  background: #dff8eb;
}

.payment-type-badge.warning {
  color: #b45309;
  background: #fff1d6;
}

.payment-type-badge.danger {
  color: #b91c1c;
  background: #fee2e2;
}

.payment-type-badge.neutral {
  color: #475569;
  background: #eef4fb;
}

.finance-payment-table table {
  min-width: 1080px;
}

.payment-edit-drawer .unit-settings-form {
  display: grid;
  gap: 16px;
}

.payment-new-drawer .payment-picker-panel {
  margin-bottom: 16px;
}

.payment-reservation-list {
  display: grid;
  gap: 10px;
}

.payment-reservation-option {
  display: grid;
  grid-template-columns: minmax(190px, .8fr) minmax(260px, 1fr) minmax(140px, auto);
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #dbe7f5;
  border-radius: 14px;
  background: #fff;
  color: #061831;
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.payment-reservation-option:hover,
.payment-reservation-option.is-selected {
  border-color: #0b63c7;
  box-shadow: 0 12px 28px rgba(11, 99, 199, .12);
  transform: translateY(-1px);
}

.payment-reservation-side {
  display: grid;
  justify-items: end;
  gap: 4px;
}

.payment-reservation-side em {
  color: #64748b;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.payment-reservation-side strong {
  color: #dc2626;
  font-size: 20px;
  white-space: nowrap;
}

/* v1.3.958 - auditable settlement of one-cent rounding differences */
.payment-reservation-rounding-option {
  grid-template-columns: minmax(190px, .8fr) minmax(260px, 1fr) minmax(110px, auto) auto;
  border-color: #f4c96d;
  background: #fffaf0;
}

.payment-rounding-action {
  margin: 0;
}

.payment-rounding-action .button {
  min-height: 44px;
  white-space: nowrap;
}

.reservation-rounding-adjustment {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 10px 0 14px;
  padding: 12px 14px;
  border: 1px solid #86efac;
  border-radius: 12px;
  background: #f0fdf4;
}

.reservation-rounding-adjustment.is-stale {
  border-color: #facc15;
  background: #fffbeb;
}

.reservation-rounding-adjustment > svg {
  width: 22px;
  height: 22px;
  color: #059669;
}

.reservation-rounding-adjustment.is-stale > svg {
  color: #ca8a04;
}

.reservation-rounding-adjustment strong,
.reservation-rounding-adjustment span {
  display: block;
}

.reservation-rounding-adjustment strong {
  font-size: 14px;
  font-weight: 950;
}

.reservation-rounding-adjustment span {
  margin-top: 2px;
  color: #52647d;
  font-size: 13px;
  font-weight: 800;
}

.reservation-rounding-adjustment form {
  margin: 0;
}

.payment-selected-card {
  margin-bottom: 14px;
}

.payment-new-form {
  display: grid;
  gap: 14px;
}

.embedded-table {
  box-shadow: none;
  margin-top: 16px;
}

.table-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  align-items: center;
}

.table-actions form {
  margin: 0;
}

.finance-filter-primary.unified-filter-row .button {
  align-self: end;
  min-height: 54px;
}

.finance-filter-primary.unified-filter-row > a.button {
  min-height: 54px;
}

@media (max-width: 900px) {
  .grid-5 {
    grid-template-columns: 1fr 1fr;
  }

  .payment-row {
    grid-template-columns: 1fr auto;
  }

  .payment-row form {
    grid-column: 1 / -1;
  }

  .payment-reservation-option {
    grid-template-columns: 1fr;
  }

  .reservation-rounding-adjustment {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .reservation-rounding-adjustment form {
    grid-column: 2;
  }

  .payment-reservation-side {
    justify-items: start;
  }

  .finance-filter-primary.unified-filter-row {
    grid-template-columns: 1fr !important;
  }

  .payment-filter-strip {
    grid-template-columns: 1fr;
  }
}

/* v1.3.113 - compact report unit financial cards */
.report-unit-detail-body {
  gap: 14px;
}

.report-unit-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(135px, 1fr)) !important;
  gap: 10px;
}

.report-unit-summary-grid .stat-card {
  min-width: 0;
  min-height: 0 !important;
  align-items: flex-start;
  gap: 9px;
  padding: 11px 12px;
  border-radius: 8px;
  box-shadow: 0 7px 18px rgba(15, 23, 42, .06);
}

.report-unit-summary-grid .icon-box {
  width: 32px;
  height: 32px;
  border-radius: 8px;
}

.report-unit-summary-grid .icon-box svg {
  width: 16px;
  height: 16px;
}

.report-unit-summary-grid .stat-card > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.report-unit-summary-grid .stat-card p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.15;
  text-transform: uppercase;
}

.report-unit-summary-grid .stat-card strong {
  max-width: 100%;
  font-size: clamp(17px, 1.35vw, 20px);
  line-height: 1.08;
  white-space: normal;
  overflow-wrap: anywhere;
}

.report-unit-summary-grid .stat-card small {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.22;
}

@media (max-width: 900px) {
  .report-unit-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  .report-unit-summary-grid {
    grid-template-columns: 1fr !important;
  }
}

/* v1.3.114 - reports drawer, reservation filters and payment table polish */
.report-unit-detail {
  width: min(1080px, calc(100vw - 34px)) !important;
}

.report-unit-detail-body {
  padding-left: 24px;
  padding-right: 24px;
}

.report-unit-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.report-unit-summary-grid .stat-card {
  align-items: center;
}

.report-unit-summary-grid .stat-card strong {
  font-size: clamp(16px, 1.15vw, 19px);
}

.report-unit-summary-grid .stat-card small {
  display: block;
}

.reservation-quick-filter-row.unified-filter-row {
  grid-template-columns: minmax(320px, min(680px, 56vw)) auto auto auto !important;
  justify-content: start;
}

.reservation-filters .unified-filter-advanced {
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  margin-top: 12px;
  padding: 14px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}

.finance-payment-section {
  overflow: hidden;
}

.finance-payment-section .price-editor-head {
  padding-right: 24px;
}

.finance-payment-summary {
  grid-template-columns: repeat(4, minmax(170px, 1fr));
}

.payment-filter-strip {
  grid-template-columns: minmax(260px, 1fr) repeat(3, minmax(135px, 180px)) auto auto;
  max-width: 100%;
  overflow: hidden;
}

.finance-payment-table {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.finance-payment-table table {
  width: 100%;
  min-width: 1040px;
  table-layout: fixed;
}

.finance-payment-table th,
.finance-payment-table td {
  padding: 16px 14px;
  overflow-wrap: anywhere;
  vertical-align: middle;
}

.finance-payment-table th:nth-child(1),
.finance-payment-table td:nth-child(1) {
  width: 29%;
}

.finance-payment-table th:nth-child(2),
.finance-payment-table td:nth-child(2) {
  width: 13%;
}

.finance-payment-table th:nth-child(3),
.finance-payment-table td:nth-child(3) {
  width: 14%;
}

.finance-payment-table th:nth-child(4),
.finance-payment-table td:nth-child(4) {
  width: 11%;
}

.finance-payment-table th:nth-child(5),
.finance-payment-table td:nth-child(5) {
  width: 15%;
}

.finance-payment-table th:nth-child(6),
.finance-payment-table td:nth-child(6) {
  width: 15%;
}

.finance-payment-table th:nth-child(7),
.finance-payment-table td:nth-child(7) {
  width: 168px;
}

.finance-payment-table .table-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.payment-commission-form {
  width: 100%;
}

.payment-commission-button {
  width: 100%;
  min-height: 38px;
  justify-content: center;
  padding: 8px 10px;
  font-size: 13px;
  white-space: nowrap;
}

.finance-payment-table .payment-overview-row {
  min-height: 78px;
}

.payment-date-type-cell,
.payment-reservation-cell {
  display: grid;
  gap: 6px;
  align-content: center;
}

.payment-date-type-cell strong,
.payment-reservation-cell a {
  color: #061831;
  font-weight: 900;
  text-decoration: none;
}

.payment-reservation-cell a span,
.payment-remaining-cell strong {
  display: block;
  white-space: nowrap;
}

.payment-reservation-cell a:hover {
  color: #0b63c7;
}

.payment-method-cell {
  line-height: 1.25;
}

@media (max-width: 1180px) {
  .finance-payment-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .reservation-quick-filter-row.unified-filter-row,
  .payment-filter-strip {
    grid-template-columns: minmax(0, 1fr) auto auto auto !important;
  }

  .reservation-filters .unified-filter-advanced {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .report-unit-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .report-unit-detail {
    width: 100vw !important;
  }

  .report-unit-summary-grid,
  .finance-payment-summary,
  .reservation-quick-filter-row.unified-filter-row,
  .reservation-filters .unified-filter-advanced,
  .payment-filter-strip {
    grid-template-columns: 1fr !important;
  }

  .reservation-quick-filter-row.unified-filter-row .button,
  .payment-filter-strip .button {
    width: 100%;
    justify-content: center;
  }
}

/* v1.3.115 - responsive payments table and right-aligned report unit drawer */
.unit-drawer-shell.report-unit-detail-shell {
  justify-items: end !important;
  align-items: stretch !important;
}

.unit-drawer-shell.report-unit-detail-shell > aside.unit-drawer.report-unit-detail {
  width: min(980px, calc(100vw - 56px)) !important;
  max-width: min(980px, calc(100vw - 56px)) !important;
}

.unit-drawer-shell.report-unit-detail-shell .report-unit-detail-body {
  padding-left: 22px;
  padding-right: 22px;
}

.unit-drawer-shell.report-unit-detail-shell .report-unit-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.unit-drawer-shell.report-unit-detail-shell .report-unit-summary-grid .stat-card {
  gap: 8px;
  padding: 10px;
}

.unit-drawer-shell.report-unit-detail-shell .report-unit-summary-grid .icon-box {
  width: 30px;
  height: 30px;
}

.unit-drawer-shell.report-unit-detail-shell .report-unit-summary-grid .stat-card strong {
  font-size: clamp(15px, 1vw, 18px);
}

.finance-payment-table table {
  min-width: 1040px;
}

.finance-payment-table th:nth-child(1),
.finance-payment-table td:nth-child(1) {
  width: 29%;
}

.finance-payment-table th:nth-child(2),
.finance-payment-table td:nth-child(2) {
  width: 13%;
}

.finance-payment-table th:nth-child(3),
.finance-payment-table td:nth-child(3) {
  width: 14%;
}

.finance-payment-table th:nth-child(4),
.finance-payment-table td:nth-child(4) {
  width: 11%;
}

.finance-payment-table th:nth-child(5),
.finance-payment-table td:nth-child(5) {
  width: 15%;
}

.finance-payment-table th:nth-child(6),
.finance-payment-table td:nth-child(6) {
  width: 15%;
}

.finance-payment-table th:nth-child(7),
.finance-payment-table td:nth-child(7) {
  width: 86px;
}

.payment-person-cell {
  min-width: 0;
}

.payment-person-cell strong,
.payment-unit-under-guest,
.payment-person-cell .muted-small {
  display: block;
}

.payment-unit-under-guest {
  margin-top: 4px;
  color: #0b63c7;
  font-size: 13px;
  font-weight: 900;
}

.payment-person-cell .muted-small:empty {
  display: none;
}

/* v1.3.140 - mobile app mode for accommodation */
.settings-toggle-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 14px;
  align-items: start;
  padding: 16px;
  border: 1px solid #dbe7f5;
  border-radius: 12px;
  background: #f8fbff;
  cursor: pointer;
}

.settings-toggle-card input {
  width: 22px;
  height: 22px;
  margin-top: 2px;
  accent-color: #0b63c7;
}

.settings-toggle-card strong,
.settings-toggle-card small {
  display: block;
}

.settings-toggle-card small {
  margin-top: 4px;
  color: #64748b;
  font-weight: 800;
  line-height: 1.35;
}

body.mobile-app-mode {
  background: #eef4fb;
}

body.mobile-app-mode .sidebar,
body.mobile-app-mode .topbar,
body.mobile-app-mode .version-footer,
body.mobile-app-mode > .mobile-nav {
    display: none !important;
}

/* ePortal CIPA 1.1 - jedinstveni CIP radni prostor i prava po modulima */
.cip-access-levels .card,
.cip-base-access-grid .card,
.cip-user-module-grid .card {
  display: grid;
  align-content: start;
  gap: 10px;
}

.cip-user-hero {
  align-items: center;
}

.cip-user-create {
  margin-bottom: 18px;
}

.cip-user-create > summary {
  display: flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
  list-style: none;
}

.cip-user-create > summary::-webkit-details-marker {
  display: none;
}

.cip-user-create-form {
  display: grid;
  gap: 18px;
  margin-top: 20px;
}

.cip-permission-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--soft-blue);
}

.cip-user-list {
  display: grid;
  gap: 16px;
}

.cip-user-card {
  display: grid;
  gap: 18px;
}

.cip-user-card .form-actions {
  align-items: center;
  flex-wrap: wrap;
}

.cip-user-card.is-muted-row {
  opacity: .72;
}

.cip-module-list form.card,
.cip-module-admin-grid form.card {
  display: grid;
  gap: 14px;
}

.cip-module-tile .status-badge + .status-badge {
  margin-left: 6px;
}

.module-tile.is-coming-soon {
  border-style: dashed;
  background: #f8fbff;
}

@media (max-width: 760px) {
  .cip-permission-grid {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  .cip-user-card .table-card-head,
  .cip-user-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .mobile-nav {
    grid-template-columns: repeat(auto-fit, minmax(76px, 1fr));
  }
}

.module-activities-hero {
    margin-bottom: 18px;
}

.module-activities-hero h2 {
    margin: 0;
    font-size: 34px;
}

.module-activity-module-section {
    margin-bottom: 22px;
}

.module-activity-module-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 12px;
}

.module-activity-module-card {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 118px;
    padding: 18px;
    border: 1px solid #d7e5f5;
    border-radius: 12px;
    background: #fff;
    color: var(--ink);
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .07);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.module-activity-module-card:hover,
.module-activity-module-card.is-active {
    transform: translateY(-1px);
    border-color: #93c5fd;
    box-shadow: 0 18px 38px rgba(37, 99, 235, .13);
}

.module-activity-module-card.is-secondary {
    min-height: 96px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

.module-activity-module-icon {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: 62px;
    height: 62px;
    border-radius: 14px;
    background: #eaf4ff;
    color: var(--blue);
}

.module-activity-module-card.is-secondary .module-activity-module-icon {
    width: 50px;
    height: 50px;
    background: #f3f7fb;
    color: var(--muted);
}

.module-activity-module-icon svg {
    width: 30px;
    height: 30px;
}

.module-activity-module-card strong,
.module-activity-module-card small {
    display: block;
}

.module-activity-module-card strong {
    font-size: 20px;
    font-weight: 950;
}

.module-activity-module-card small {
    margin-top: 5px;
    color: var(--muted);
    font-weight: 800;
    line-height: 1.35;
}

.module-activity-tabs {
    display: flex;
    gap: 10px;
    padding: 8px;
    background: #f3f7fb;
    border-radius: 14px;
}

.module-activity-tabs a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 46px;
    padding: 0 16px;
    border-radius: 10px;
    color: var(--muted);
    font-weight: 900;
    text-decoration: none;
}

.module-activity-tabs a.is-active,
.module-activity-tabs a:hover {
    color: var(--ink);
    background: #fff;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .08);
}

.module-activity-stats {
    margin-bottom: 16px;
}

.module-activity-stats small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-weight: 800;
}

.module-activity-filter {
    display: grid;
    grid-template-columns: minmax(260px, 2fr) repeat(4, minmax(150px, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.module-activity-filter .module-activity-search {
    grid-column: span 2;
}

.module-activity-filter-actions {
    display: flex;
    align-items: end;
    gap: 10px;
}

.module-activity-table-card {
    overflow: hidden;
}

.module-activity-table th,
.module-activity-table td {
    vertical-align: middle;
}

.module-activity-table td strong,
.module-activity-table td small {
    display: block;
}

.module-activity-table td small {
    margin-top: 4px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.module-activity-area {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    background: #eef6ff;
    color: var(--blue);
    font-weight: 900;
}

.activity-action-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    background: #eef2f7;
    color: var(--muted);
    font-weight: 900;
    white-space: nowrap;
}

.activity-action-create,
.activity-action-generate,
.activity-action-book,
.activity-action-close {
    background: #dcfce7;
    color: #047857;
}

.activity-action-update,
.activity-action-restore {
    background: #eaf4ff;
    color: var(--blue);
}

.activity-action-delete,
.activity-action-archive {
    background: #fff1f2;
    color: #dc2626;
}

.module-activity-drawer {
    width: min(760px, calc(100vw - 56px));
}

.activity-detail-summary {
    display: grid;
    gap: 8px;
    margin-bottom: 14px;
    padding: 18px;
    border: 1px solid #dbe8f5;
    border-radius: 12px;
    background: #f8fbff;
}

.activity-detail-summary strong {
    font-size: 20px;
}

.activity-detail-summary span {
    color: var(--muted);
    font-weight: 800;
}

.module-activity-open-source {
    width: 100%;
    margin-bottom: 14px;
    justify-content: center;
}

.activity-detail-grid,
.activity-detail-list {
    display: grid;
    gap: 10px;
}

.activity-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 18px;
}

.activity-detail-grid div,
.activity-detail-list div {
    padding: 14px;
    border: 1px solid #dbe8f5;
    border-radius: 10px;
    background: #fff;
}

.activity-detail-grid span,
.activity-detail-list span {
    display: block;
    margin-bottom: 6px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.activity-detail-grid strong,
.activity-detail-list strong {
    overflow-wrap: anywhere;
}

.activity-detail-list h3 {
    margin: 0 0 4px;
}

.activity-detail-list .activity-detail-change-list {
    padding: 14px;
    border: 1px solid #dbe8f5;
    border-radius: 10px;
    background: #fff;
}

.activity-detail-change-list > span {
    margin-bottom: 10px;
}

.activity-detail-change-row,
.activity-detail-change-row div {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.activity-detail-change-row {
    display: grid;
    grid-template-columns: minmax(110px, .75fr) repeat(2, minmax(0, 1fr));
    gap: 12px;
    align-items: start;
    padding-top: 12px;
    margin-top: 12px;
    border-top: 1px solid #e5edf7;
}

.activity-detail-change-row:first-of-type {
    padding-top: 0;
    margin-top: 0;
    border-top: 0;
}

.activity-detail-change-row > span {
    margin: 0;
    color: var(--ink);
    font-size: 13px;
    line-height: 1.35;
    text-transform: none;
}

.activity-detail-change-row small {
    display: block;
    margin-bottom: 4px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.activity-detail-change-row .activity-change-value {
    min-height: 78px;
    padding: 12px 14px;
    border: 1px solid #dbe8f5;
    border-radius: 10px;
    background: #fff;
}

.activity-detail-change-row .activity-change-value small {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    font-size: 11px;
}

.activity-detail-change-row .activity-change-value small svg {
    width: 15px;
    height: 15px;
}

.activity-detail-change-row .activity-change-value strong {
    display: block;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 900;
}

.activity-detail-change-row .activity-change-old {
    border-color: #fecaca;
    background: #fff1f2;
}

.activity-detail-change-row .activity-change-old small,
.activity-detail-change-row .activity-change-old strong {
    color: #b91c1c;
}

.activity-detail-change-row .activity-change-new {
    border-color: #bbf7d0;
    background: #f0fdf4;
}

.activity-detail-change-row .activity-change-new small,
.activity-detail-change-row .activity-change-new strong {
    color: #047857;
}

.activity-other-details {
    margin-top: 4px;
}

.activity-other-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 14px;
    border: 1px solid #dbe8f5;
    border-radius: 10px;
    background: #f8fbff;
}

.activity-other-detail-grid article {
    min-height: 74px;
    padding: 12px 14px;
    border: 1px solid #dbe8f5;
    border-left: 4px solid #0b63c7;
    border-radius: 10px;
    background: #fff;
}

.activity-other-detail-grid article span {
    display: block;
    margin-bottom: 7px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.activity-other-detail-grid article strong {
    display: block;
    color: var(--ink);
    font-size: 14px;
    line-height: 1.35;
    font-weight: 900;
    overflow-wrap: anywhere;
}

@media (max-width: 1100px) {
    .module-activity-module-grid {
        min-width: 0;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .module-activity-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .module-activity-filter .module-activity-search {
        grid-column: 1 / -1;
    }
}

/* v1.3.639 - ergonomija rezervacijskog drawera */
.reservation-drawer {
    width: min(980px, calc(100vw - 28px));
}

.reservation-drawer-tabs {
    position: sticky;
    top: var(--reservation-sticky-top, 110px);
    z-index: 3;
    display: flex;
    gap: 8px;
    margin: -4px -2px 12px;
    padding: 8px 2px;
    overflow-x: auto;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(12px);
}

.reservation-drawer-tabs button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    flex: 0 0 auto;
    border: 1px solid #d6e4f5;
    border-radius: 8px;
    background: #fff;
    color: #52637a;
    padding: 8px 12px;
    font-weight: 900;
    cursor: pointer;
}

.reservation-drawer-tabs button svg {
    width: 16px;
    height: 16px;
}

.reservation-drawer-tabs button:hover,
.reservation-drawer-tabs button.is-active {
    color: #0b63c7;
    border-color: #9fc3ef;
    background: #edf6ff;
}

.reservation-drawer-summary {
    position: sticky;
    top: calc(var(--reservation-sticky-top, 110px) + 56px);
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 14px;
    padding: 10px;
    border: 1px solid #d7e6f7;
    border-radius: 8px;
    background: rgba(248, 251, 255, .96);
    backdrop-filter: blur(12px);
}

.reservation-drawer-summary div {
    min-width: 0;
    border: 1px solid #e2edf8;
    border-radius: 8px;
    background: #fff;
    padding: 9px 10px;
}

.reservation-drawer-summary span {
    display: block;
    color: #64748b;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.reservation-drawer-summary strong,
.reservation-drawer-summary b {
    display: block;
    min-width: 0;
    margin-top: 3px;
    color: #0f172a;
    font-size: 13px;
    font-weight: 950;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.reservation-drawer [data-reservation-tab-panel][hidden] {
    display: none !important;
}

.reservation-drawer [data-reservation-tab-panel] {
    scroll-margin-top: var(--reservation-panel-scroll-offset, 280px);
}

.reservation-panel-notes {
    background: #f8fafc;
    border-color: #d8e4f2;
}

.reservation-payment-panel[data-reservation-tab-panel] {
    margin: 0 0 24px;
    border-radius: 8px;
}

.reservation-drawer .reservation-document-panel[data-reservation-tab-panel] {
    position: static;
    width: auto;
    max-height: none;
    overflow: visible;
    transform: none;
    margin: 0 0 24px;
    padding: 20px;
    box-shadow: none;
}

.payment-entry-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.payment-entry-heading strong,
.payment-entry-heading span {
    display: block;
}

.payment-entry-heading strong {
    color: #0f172a;
    font-size: 17px;
    font-weight: 950;
}

.payment-entry-heading span {
    margin-top: 3px;
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
}

.payment-entry-form.is-editing {
    border-color: #f6d574;
    background: #fffaf0;
}

.payment-row {
    grid-template-columns: minmax(0, 1fr) auto 42px 42px;
}

.payment-row [data-edit-payment].is-active {
    color: #0b63c7;
    border-color: #9fc3ef;
    background: #edf6ff;
}

.payment-row form {
    margin: 0;
}

.extra-guests {
    border-top: 0;
    padding-top: 0;
}

.extra-guest-row {
    border-color: #d7e6f7;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .04);
}

@media (max-width: 1100px) {
    .reservation-drawer-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .reservation-drawer-tabs {
        top: var(--reservation-sticky-top, 124px);
    }

    .reservation-drawer-summary {
        position: static;
        grid-template-columns: 1fr;
    }

    .payment-entry-heading {
        align-items: stretch;
        flex-direction: column;
    }

    .payment-entry-heading .button {
        width: 100%;
    }

    .payment-row {
        grid-template-columns: minmax(0, 1fr) 42px 42px;
    }

    .payment-row > div:nth-child(2) {
        grid-column: 1 / -1;
        grid-row: 2;
        justify-self: start;
    }
}

@media (max-width: 720px) {
    .module-activity-tabs,
    .module-activity-filter-actions {
        flex-direction: column;
    }

    .module-activity-module-grid,
    .module-activity-filter,
    .activity-detail-grid,
    .activity-other-detail-grid,
    .activity-detail-change-row {
        grid-template-columns: 1fr;
    }

    .module-activity-drawer {
        width: 100vw;
    }
}

body.mobile-app-mode .main {
  width: 100%;
  max-width: none;
  min-height: 100vh;
  padding: 0;
  margin: 0;
}

.mobile-app-shell {
  display: none;
}

body.mobile-app-mode .mobile-app-shell {
  display: block;
  max-width: 560px;
  min-height: 100vh;
  padding: 18px 16px 92px;
  margin: 0 auto;
}

.mobile-app-hero {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  padding: 22px 18px;
  border-radius: 24px;
  color: #fff;
  background: linear-gradient(135deg, #0b63c7 0%, #064b96 100%);
  box-shadow: 0 18px 36px rgba(11, 99, 199, .22);
}

.mobile-app-hero p {
  margin: 0 0 6px;
  color: rgba(255,255,255,.78);
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

.mobile-app-hero h2 {
  margin: 0;
  color: #fff;
  font-size: 30px;
  line-height: 1.05;
}

.mobile-app-ghost {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 14px;
  color: #fff;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.mobile-app-ghost svg {
  width: 18px;
  height: 18px;
}

.mobile-quick-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.mobile-quick-actions a {
  display: grid;
  place-items: center;
  gap: 8px;
  min-height: 82px;
  padding: 12px 8px;
  border: 1px solid #dbe7f5;
  border-radius: 18px;
  color: #061831;
  background: #fff;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .07);
}

.mobile-quick-actions svg {
  width: 24px;
  height: 22px;
  color: #0b63c7;
}

.mobile-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.mobile-stat-grid article,
.mobile-card-section {
  border: 1px solid #dbe7f5;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .06);
}

.mobile-stat-grid article {
  padding: 16px;
}

.mobile-stat-grid span {
  display: block;
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.mobile-stat-grid strong {
  display: block;
  margin-top: 7px;
  color: #061831;
  font-size: 24px;
  line-height: 1.1;
}

.mobile-card-section {
  padding: 14px;
  margin-bottom: 14px;
}

.mobile-section-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}

.mobile-section-head p {
  margin: 0 0 3px;
  color: #0b63c7;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.mobile-section-head h3 {
  margin: 0;
  font-size: 21px;
}

.mobile-section-head a,
.mobile-section-head button {
  min-height: 40px;
  border: 0;
  padding: 9px 12px;
  border-radius: 14px;
  color: #0b63c7;
  background: #edf6ff;
  font: inherit;
  font-weight: 900;
  text-decoration: none;
  cursor: pointer;
}

.mobile-reservation-card,
.mobile-money-card {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: center;
  min-height: 74px;
  padding: 13px 0;
  border-top: 1px solid #e5edf7;
  color: #061831;
  text-decoration: none;
}

.mobile-reservation-card:first-of-type,
.mobile-money-card:first-of-type {
  border-top: 0;
}

.mobile-reservation-card .unit-color {
  width: 12px;
  height: 42px;
  border-radius: 999px;
}

.mobile-reservation-card strong,
.mobile-money-card strong {
  display: block;
  overflow-wrap: anywhere;
  font-size: 17px;
  line-height: 1.2;
}

.mobile-reservation-card small,
.mobile-money-card span {
  display: block;
  overflow-wrap: anywhere;
  margin-top: 3px;
  color: #64748b;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}

.mobile-reservation-card em,
.mobile-money-card em {
  padding: 7px 10px;
  border-radius: 999px;
  color: #0b63c7;
  background: #edf6ff;
  font-size: 13px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}

.mobile-reservation-card em.is-due,
.mobile-money-card em.is-expense {
  color: #c2410c;
  background: #fff3e9;
}

.mobile-reservation-card em.is-paid {
  color: #047857;
  background: #dcfce7;
}

.mobile-money-card {
  grid-template-columns: 1fr auto;
}

.mobile-empty {
  padding: 16px;
  border-radius: 16px;
  color: #64748b;
  background: #f8fbff;
  font-weight: 800;
}

.mobile-app-tabbar {
  position: fixed;
  right: 50%;
  bottom: 12px;
  z-index: 60;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  width: min(528px, calc(100vw - 24px));
  padding: 8px;
  border: 1px solid #dbe7f5;
  border-radius: 24px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 18px 46px rgba(15, 23, 42, .18);
  transform: translateX(50%);
  backdrop-filter: blur(12px);
}

.mobile-app-tabbar a {
  display: grid;
  place-items: center;
  gap: 4px;
  min-height: 54px;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  text-decoration: none;
}

.mobile-app-tabbar svg {
  width: 21px;
  height: 21px;
  color: #0b63c7;
}

.mobile-app-tabbar a.is-active {
  color: #061831;
  border-radius: 16px;
  background: #edf6ff;
}

.mobile-app-shell[data-mobile-screen] [data-mobile-panel] {
  display: none;
}

.mobile-app-shell[data-mobile-screen="today"] [data-mobile-panel~="today"],
.mobile-app-shell[data-mobile-screen="calendar"] [data-mobile-panel~="calendar"],
.mobile-app-shell[data-mobile-screen="reservations"] [data-mobile-panel~="reservations"],
.mobile-app-shell[data-mobile-screen="payments"] [data-mobile-panel~="payments"],
.mobile-app-shell[data-mobile-screen="history"] [data-mobile-panel~="history"],
.mobile-app-shell[data-mobile-screen="stats"] [data-mobile-panel~="stats"],
.mobile-app-shell[data-mobile-screen="more"] [data-mobile-panel~="more"] {
  display: block;
}

.mobile-app-shell[data-mobile-screen="today"] .mobile-primary-actions[data-mobile-panel~="today"],
.mobile-app-shell[data-mobile-screen="today"] .mobile-next-grid[data-mobile-panel~="today"],
.mobile-app-shell[data-mobile-screen="today"] .mobile-alert-card[data-mobile-panel~="today"],
.mobile-app-shell[data-mobile-screen="today"] .mobile-ok-card[data-mobile-panel~="today"] {
  display: grid;
}

/* v1.3.141 - cleaner mobile daily dashboard */
.mobile-home-header {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 14px 4px 10px;
}

.mobile-home-header p {
  margin: 0 0 2px;
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.mobile-home-header h2 {
  margin: 0;
  color: #061831;
  font-size: 34px;
  line-height: 1;
}

.mobile-icon-link {
  display: inline-grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border: 1px solid #dbe7f5;
  border-radius: 16px;
  color: #0b63c7;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .07);
}

.mobile-icon-link svg {
  width: 22px;
  height: 22px;
}

.mobile-header-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.mobile-module-shell {
  display: grid;
  gap: 14px;
}

.mobile-module-header,
.mobile-business-header {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid #dbe7f5;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .07);
}

.mobile-module-header {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.mobile-module-header p,
.mobile-business-header p {
  margin: 0 0 4px;
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.mobile-module-header h2,
.mobile-business-header h2 {
  margin: 0;
  color: #061831;
  font-size: 34px;
  line-height: 1;
}

.mobile-module-header span,
.mobile-business-header span {
  display: block;
  margin-top: 7px;
  color: #64748b;
  font-weight: 800;
  line-height: 1.35;
}

.mobile-module-grid {
  display: grid;
  gap: 12px;
}

.mobile-module-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  min-height: 112px;
  padding: 18px;
  border: 1px solid #dbe7f5;
  border-radius: 22px;
  color: #061831;
  background: #fff;
  text-decoration: none;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .07);
}

.mobile-module-card-icon {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 18px;
  color: #0b63c7;
  background: #edf6ff;
}

.mobile-module-card-icon svg {
  width: 29px;
  height: 29px;
}

.mobile-module-card strong,
.mobile-module-card small {
  display: block;
}

.mobile-module-card strong {
  font-size: 22px;
  line-height: 1.08;
}

.mobile-module-card small {
  margin-top: 6px;
  color: #64748b;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
}

.mobile-module-card em {
  display: inline-flex;
  width: max-content;
  margin-top: 7px;
  padding: 5px 9px;
  border-radius: 999px;
  color: #047857;
  background: #dcfce7;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.mobile-module-card > svg {
  width: 22px;
  height: 22px;
  color: #0b63c7;
}

.mobile-module-card.is-business .mobile-module-card-icon {
  color: #155e75;
  background: #e8f7fb;
}

.mobile-module-card.is-hosting .mobile-module-card-icon {
  color: #0f766e;
  background: #e7f8f4;
}

body.mobile-app-mode.business-module-page .main {
  width: min(560px, 100%);
  max-width: 560px;
  min-height: 100vh;
  padding: 18px 16px 92px;
  margin: 0 auto;
}

.mobile-business-header {
  margin-bottom: 12px;
}

.mobile-business-top-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.mobile-business-header .mobile-app-ghost {
  justify-content: center;
  justify-self: stretch;
  border-color: #dbe7f5;
  color: #0b63c7;
  background: #edf6ff;
}

.mobile-business-top-actions .mobile-app-ghost:only-child {
  grid-column: 1 / -1;
}

.mobile-business-top-actions .mobile-app-ghost.is-superadmin {
  color: #475569;
  background: #fff;
}

.mobile-business-submodules {
  display: grid;
  gap: 12px;
  margin: 0 0 14px;
}

.mobile-business-overview-link,
.mobile-business-module-block {
  border: 1px solid #dbe7f5;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .07);
}

.mobile-business-overview-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 58px;
  color: #0b63c7;
  font-size: 18px;
  font-weight: 950;
  text-decoration: none;
}

.mobile-business-overview-link.is-active,
.mobile-business-link-grid a.is-active,
.mobile-business-hosting-link:hover {
  color: #fff;
  border-color: #0b63c7;
  background: #0b63c7;
}

.mobile-business-overview-link svg,
.mobile-business-link-grid svg,
.mobile-business-hosting-link svg {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
}

.mobile-business-module-block {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.mobile-business-module-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

.mobile-business-accordion .mobile-business-module-head {
  grid-template-columns: auto minmax(0, 1fr) auto;
  cursor: pointer;
  list-style: none;
}

.mobile-business-accordion .mobile-business-module-head::-webkit-details-marker {
  display: none;
}

.mobile-business-module-head > span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 16px;
  color: #0b63c7;
  background: #edf6ff;
}

.mobile-business-module-head svg {
  width: 25px;
  height: 25px;
}

.mobile-business-module-chevron {
  width: 20px;
  height: 20px;
  color: #64748b;
  transition: transform .18s ease;
}

.mobile-business-accordion[open] > .mobile-business-module-head .mobile-business-module-chevron {
  transform: rotate(180deg);
}

.mobile-business-accordion:not([open]) > .mobile-business-link-grid {
  display: none;
}

.mobile-business-module-head strong,
.mobile-business-module-head small {
  display: block;
}

.mobile-business-module-head strong {
  color: #061831;
  font-size: 22px;
  line-height: 1.08;
}

.mobile-business-module-head small {
  margin-top: 4px;
  color: #64748b;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.3;
}

.mobile-business-link-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.mobile-business-link-grid a,
.mobile-business-hosting-link {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 54px;
  padding: 11px 12px;
  border: 1px solid #dbe7f5;
  border-radius: 16px;
  color: #475569;
  background: #f8fbff;
  font-size: 14px;
  font-weight: 950;
  line-height: 1.15;
  text-decoration: none;
}

.mobile-business-hosting-link {
  justify-content: space-between;
  color: #0f766e;
  background: #ecfdf5;
}

.mobile-business-hosting-link span {
  flex: 1 1 auto;
}

.mobile-business-module-block.is-sales .mobile-business-module-head > span {
  color: #7c3aed;
  background: #f3e8ff;
}

.mobile-business-module-block.is-hosting {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.mobile-business-module-block.is-hosting .mobile-business-module-head > span {
  color: #0f766e;
  background: #dcfce7;
}

.mobile-business-module-block.is-admin .mobile-business-module-head > span {
  color: #b45309;
  background: #fffbeb;
}

.mobile-business-accordion:not([open]) {
  padding-block: 12px;
}

.mobile-business-accordion[open] {
  box-shadow: 0 16px 34px rgba(15, 23, 42, .08);
}

.mobile-priority-card {
  padding: 16px;
  margin-bottom: 12px;
  border: 1px solid #dbe7f5;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .07);
}

.mobile-priority-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}

.mobile-priority-head span,
.mobile-next-card span {
  display: block;
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.mobile-priority-head strong {
  display: block;
  margin-top: 2px;
  color: #061831;
  font-size: 22px;
}

.mobile-priority-head a {
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 14px;
  color: #0b63c7;
  background: #edf6ff;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none;
}

.mobile-today-grid,
.mobile-finance-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.mobile-today-grid article,
.mobile-finance-grid article {
  min-height: 76px;
  padding: 12px;
  border-radius: 16px;
  background: #f6f9fd;
}

.mobile-today-grid span,
.mobile-finance-grid span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.mobile-today-grid strong,
.mobile-finance-grid strong {
  display: block;
  margin-top: 7px;
  color: #061831;
  font-size: 24px;
  line-height: 1.05;
}

.mobile-alert-card,
.mobile-ok-card,
.mobile-next-card {
  display: grid;
  gap: 12px;
  align-items: center;
  margin-top: 10px;
  padding: 13px;
  border-radius: 18px;
  text-decoration: none;
}

.mobile-alert-card {
  grid-template-columns: auto 1fr auto;
  color: #061831;
  background: #fff7ed;
}

.mobile-alert-card svg,
.mobile-ok-card svg {
  width: 24px;
  height: 22px;
  color: #c2410c;
}

.mobile-alert-card strong {
  display: block;
  color: #c2410c;
  font-size: 22px;
  line-height: 1.05;
}

.mobile-alert-card span,
.mobile-ok-card span,
.mobile-next-card small {
  display: block;
  color: #64748b;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}

.mobile-alert-card em {
  color: #c2410c;
  font-size: 13px;
  font-style: normal;
  font-weight: 900;
}

.mobile-ok-card {
  grid-template-columns: auto 1fr;
  background: #ecfdf5;
}

.mobile-ok-card svg {
  color: #047857;
}

.mobile-next-card {
  display: block;
  color: #061831;
  background: #edf6ff;
}

.mobile-next-card strong {
  display: block;
  margin: 4px 0 2px;
  overflow-wrap: anywhere;
  color: #061831;
  font-size: 18px;
}

.mobile-quick-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 12px;
}

.mobile-quick-strip a {
  display: grid;
  place-items: center;
  gap: 5px;
  min-height: 64px;
  padding: 10px 6px;
  border: 1px solid #dbe7f5;
  border-radius: 18px;
  color: #061831;
  background: #fff;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
}

.mobile-quick-strip svg {
  width: 22px;
  height: 22px;
  color: #0b63c7;
}

.mobile-finance-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mobile-finance-grid strong {
  overflow-wrap: anywhere;
  font-size: 20px;
}

.mobile-more-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.mobile-more-grid a {
  display: flex;
  gap: 8px;
  align-items: center;
  min-height: 50px;
  padding: 11px 12px;
  border: 1px solid #dbe7f5;
  border-radius: 16px;
  color: #061831;
  background: #f8fbff;
  font-weight: 900;
  text-decoration: none;
}

.mobile-more-grid svg {
  width: 20px;
  height: 20px;
  color: #0b63c7;
}

/* v1.3.152 - mobile app daily workflow */
body.mobile-app-mode {
  background:
    linear-gradient(180deg, #eaf3ff 0, #f5f8fc 220px, #eef4fb 100%);
}

body.mobile-app-mode .mobile-app-shell {
  padding-top: 18px;
}

.mobile-home-header {
  align-items: flex-start;
  padding: 10px 4px 12px;
}

.mobile-home-header h2 {
  margin-top: 2px;
  font-size: 38px;
  letter-spacing: 0;
}

.mobile-home-header > div > span {
  display: inline-flex;
  margin-top: 7px;
  padding: 7px 11px;
  border-radius: 999px;
  color: #0b63c7;
  background: rgba(237, 246, 255, .9);
  font-size: 13px;
  font-weight: 900;
}

.mobile-icon-link {
  width: 54px;
  height: 54px;
  border-radius: 20px;
}

.mobile-icon-link svg {
  width: 28px;
  height: 28px;
}

.mobile-day-card,
.mobile-main-alert,
.mobile-main-next {
  margin-bottom: 12px;
  border: 1px solid #dbe7f5;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .07);
}

.mobile-day-card {
  padding: 18px;
}

.mobile-day-card-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin-bottom: 14px;
}

.mobile-day-card-head span,
.mobile-main-alert span,
.mobile-main-next span {
  display: block;
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.mobile-day-card-head strong {
  display: block;
  margin-top: 3px;
  color: #061831;
  font-size: 21px;
  line-height: 1.12;
}

.mobile-day-card-head a {
  min-height: 42px;
  padding: 10px 14px;
  border-radius: 16px;
  color: #0b63c7;
  background: #edf6ff;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.mobile-today-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.mobile-today-grid article {
  display: grid;
  align-content: center;
  min-height: 86px;
  padding: 13px 10px;
  border-radius: 18px;
  background: #f5f8fc;
}

.mobile-today-grid span {
  font-size: 11px;
  line-height: 1.15;
}

.mobile-today-grid strong {
  margin-top: 8px;
  font-size: 30px;
}

.mobile-primary-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-bottom: 12px;
}

.mobile-primary-actions a {
  display: grid;
  place-items: center;
  gap: 7px;
  min-height: 84px;
  padding: 12px 8px;
  border: 1px solid #dbe7f5;
  border-radius: 22px;
  color: #061831;
  background: #fff;
  font-size: 13px;
  font-weight: 950;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.mobile-primary-actions svg {
  width: 26px;
  height: 26px;
  color: #0b63c7;
}

.mobile-main-alert {
  margin-top: 0;
  padding: 16px;
}

.mobile-main-alert.mobile-alert-card {
  grid-template-columns: auto 1fr auto;
  background: #fff7ed;
}

.mobile-main-alert.mobile-ok-card {
  grid-template-columns: auto 1fr;
  background: #ecfdf5;
}

.mobile-main-alert svg {
  width: 30px;
  height: 30px;
}

.mobile-main-alert strong {
  margin-top: 2px;
  font-size: 28px;
}

.mobile-main-alert small {
  display: block;
  margin-top: 2px;
  color: #64748b;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
}

.mobile-main-alert em {
  align-self: center;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.74);
}

.mobile-main-next {
  display: block;
  padding: 16px;
  color: #061831;
  text-decoration: none;
}

.mobile-main-next strong {
  display: block;
  margin: 5px 0 3px;
  overflow-wrap: anywhere;
  font-size: 25px;
  line-height: 1.08;
}

.mobile-main-next small {
  display: block;
  color: #64748b;
  font-size: 14px;
  font-weight: 850;
  line-height: 1.25;
}

.mobile-card-section {
  border-radius: 22px;
}

.mobile-unit-filter {
  margin-bottom: 12px;
}

.mobile-unit-filter form {
  display: grid;
  gap: 10px;
}

.mobile-unit-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.mobile-unit-options label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 10px;
  border: 1px solid #dbe7f5;
  border-radius: 14px;
  background: #f8fbff;
  color: #061831;
}

.mobile-unit-options input {
  width: 20px;
  height: 20px;
  accent-color: #0b63c7;
}

.mobile-unit-options span {
  width: 10px;
  height: 10px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--unit-color, #0b63c7);
}

.mobile-unit-options strong {
  min-width: 0;
  overflow: hidden;
  font-size: 13px;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mobile-more-section {
  margin-bottom: 18px;
}

.company-work-overview-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  margin: 18px 0;
  color: var(--ink);
  text-decoration: none;
}

.company-work-overview-card h2 {
  margin: 0 0 5px;
}

.super-mobile-home {
  display: none;
}

.super-mobile-home-hero,
.super-mobile-company-picker,
.super-mobile-platform-stats article,
.super-mobile-home-actions a {
  border: 1px solid #dbe7f5;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 38px rgba(15, 23, 42, .07);
}

.super-mobile-home-hero {
  padding: 20px;
  background: linear-gradient(135deg, #f3f8ff 0%, #fff 72%);
}

.super-mobile-home-hero h2 {
  margin: 4px 0 8px;
  color: #061831;
  font-size: 34px;
}

.super-mobile-home-hero p:last-child {
  margin: 0;
  color: #516278;
  font-weight: 850;
  line-height: 1.42;
}

.super-mobile-company-picker {
  display: grid;
  gap: 10px;
  padding: 16px;
}

.super-mobile-company-picker label {
  color: #5a6d85;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.super-mobile-company-picker select {
  width: 100%;
  min-height: 54px;
  border: 1px solid #cfe0f3;
  border-radius: 14px;
  padding: 0 14px;
  color: #061831;
  background: #fff;
  font-size: 16px;
  font-weight: 850;
}

.super-mobile-company-picker .button {
  width: 100%;
  justify-content: center;
  min-height: 54px;
}

.super-mobile-platform-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.super-mobile-platform-stats article {
  display: grid;
  gap: 4px;
  padding: 14px;
}

.super-mobile-platform-stats span {
  color: #5a6d85;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.super-mobile-platform-stats strong {
  color: #061831;
  font-size: 26px;
}

.super-mobile-home-actions {
  display: grid;
  gap: 10px;
}

.super-mobile-home-actions a {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: center;
  min-height: 58px;
  padding: 14px 16px;
  color: #061831;
  font-weight: 950;
  text-decoration: none;
}

.super-mobile-home-actions i {
  width: 21px;
  height: 21px;
  color: var(--blue);
}

.super-mobile-work-card {
  display: grid;
  gap: 16px;
  margin-bottom: 18px;
  border-color: #b7d8ff;
  border-left: 5px solid var(--blue);
  background: linear-gradient(135deg, #f7fbff 0%, #fff 62%);
}

.super-mobile-work-main {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}

.super-mobile-work-main h2 {
  margin: 0 0 6px;
}

.super-mobile-work-form {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto auto;
  gap: 10px;
  align-items: end;
}

.super-mobile-work-selected {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background: #eff6ff;
  padding: 12px 14px;
}

.super-mobile-work-selected strong {
  color: #061831;
  font-size: 18px;
}

.super-mobile-work-selected span {
  color: #64748b;
  font-size: 13px;
  font-weight: 900;
}

.super-mobile-work-shortcuts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.super-mobile-work-shortcuts a {
  display: grid;
  gap: 3px;
  min-height: 58px;
  border: 1px solid #dbe7f5;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px;
}

.super-mobile-work-shortcuts span {
  overflow: hidden;
  color: #061831;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.super-mobile-work-shortcuts small {
  color: var(--blue);
  font-weight: 900;
}

.roko-start-hero,
.roko-platform-picker {
  display: grid;
  gap: 16px;
  margin-bottom: 18px;
  border: 1px solid #d6e5f5;
  border-left: 5px solid var(--blue);
  border-radius: 8px;
  background: linear-gradient(135deg, #f5faff 0%, #fff 66%);
  box-shadow: 0 18px 42px rgba(15, 23, 42, .06);
}

.roko-start-hero {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  padding: 22px 26px;
}

.roko-start-hero-main,
.roko-platform-picker-head {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  min-width: 0;
}

.roko-start-hero h2,
.roko-platform-picker h2 {
  margin: 0 0 6px;
  color: var(--ink);
  font-size: 30px;
  line-height: 1.12;
}

.roko-start-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.roko-admin-toolbar {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 0 14px;
}

.roko-admin-toolbar .button {
  min-height: 40px;
  padding: 8px 12px;
  border-radius: 8px;
  background: rgba(255,255,255,.88);
  font-size: 13px;
  box-shadow: 0 8px 20px rgba(8, 43, 84, .035);
}

.roko-maintenance-action i {
  color: #b91c1c;
}

.roko-maintenance-action:hover {
  border-color: #fecaca;
  background: #fff7f7;
}

.roko-platform-picker {
  padding: 24px 28px;
}

.roko-platform-picker-form {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  gap: 12px;
  align-items: end;
}

.roko-platform-picker-form .button {
  min-height: 52px;
}

.roko-platform-picker-compact {
  grid-template-columns: minmax(280px, .82fr) minmax(420px, 1.18fr);
  align-items: end;
  padding: 20px 22px;
}

.roko-platform-picker-compact .roko-platform-picker-head {
  align-items: center;
}

.roko-platform-picker-compact .icon-box {
  width: 46px;
  height: 46px;
}

.roko-platform-picker-compact h2 {
  margin-bottom: 4px;
  font-size: 26px;
}

.roko-platform-picker-compact .card-subtitle {
  max-width: 560px;
}

.roko-platform-picker-compact .roko-platform-picker-form {
  align-self: end;
  grid-template-columns: minmax(280px, 1fr) auto;
}

.roko-platform-picker-compact .roko-platform-shortcuts {
  grid-column: 1 / -1;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.roko-platform-picker-compact .roko-platform-shortcuts a {
  min-height: 64px;
  padding: 12px 14px;
}

.roko-platform-shortcuts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.roko-platform-shortcuts a {
  display: grid;
  gap: 4px;
  min-height: 72px;
  padding: 13px 14px;
  border: 1px solid #d8e6f4;
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  color: var(--ink);
}

.roko-platform-shortcuts a:hover {
  border-color: #a9c9ee;
  background: #f4f9ff;
}

.roko-platform-shortcuts strong {
  overflow: hidden;
  font-size: 14px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.roko-platform-shortcuts span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

.roko-platform-shortcuts em {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 5px;
  font-style: normal;
}

.roko-platform-shortcuts b {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 8px;
  border-radius: 999px;
  color: #0b63c7;
  background: #eaf4ff;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
}

.roko-platform-shortcuts b.is-accommodation {
  color: #047857;
  background: #dcfce7;
}

.roko-platform-shortcuts b.is-business {
  color: #0b63c7;
  background: #eaf4ff;
}

.roko-platform-shortcuts b.is-hosting {
  color: #7c3aed;
  background: #f3e8ff;
}

.roko-platform-shortcuts b.is-cms,
.roko-company-module-main.is-cms,
.roko-company-module-badges b.is-cms {
  color: #334155;
  background: #e2e8f0;
}

.roko-platform-shortcuts b.is-basic,
.roko-company-module-badges b.is-basic {
  color: #0f766e;
  background: #ccfbf1;
}

.roko-platform-shortcuts b.is-sales,
.roko-company-module-badges b.is-sales {
  color: #7c2d12;
  background: #ffedd5;
}

.roko-platform-shortcuts b.is-renewals-contracts,
.roko-company-module-badges b.is-renewals-contracts {
  color: #0f4f8f;
  background: #dbeafe;
}

.roko-company-module-summary {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.roko-company-module-count {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.roko-company-module-groups {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: flex-start;
  min-width: 0;
}

.roko-company-module-group {
  display: grid;
  gap: 5px;
  min-width: min(100%, 178px);
  padding: 6px;
  border: 1px solid #d8e6f4;
  border-radius: 8px;
  background: #f8fbff;
}

.roko-platform-shortcuts .roko-company-module-groups {
  gap: 5px;
}

.roko-platform-shortcuts .roko-company-module-group {
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.roko-company-module-main,
.roko-company-submodule {
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  min-height: 22px;
  padding: 3px 8px;
  border-radius: 999px;
  color: #0b63c7;
  background: #eaf4ff;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
}

.roko-company-module-main.is-accommodation {
  color: #047857;
  background: #dcfce7;
}

.roko-company-module-main.is-business {
  color: #0b63c7;
  background: #eaf4ff;
}

.roko-company-module-main.is-hosting {
  color: #7c3aed;
  background: #f3e8ff;
}

.roko-company-submodule-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.2;
}

.roko-company-submodule-list i {
  font-style: normal;
  text-transform: uppercase;
}

.roko-company-submodule.is-basic {
  color: #0f766e;
  background: #ccfbf1;
}

.roko-company-submodule.is-sales {
  color: #7c2d12;
  background: #ffedd5;
}

.roko-company-submodule.is-hosting {
  color: #7c3aed;
  background: #f3e8ff;
}

.roko-company-submodule.is-renewals-contracts {
  color: #0f4f8f;
  background: #dbeafe;
}

.roko-company-module-empty {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

.roko-company-module-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.roko-company-module-badges b {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 8px;
  border-radius: 999px;
  color: #0b63c7;
  background: #eaf4ff;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
}

.roko-company-module-badges b.is-accommodation {
  color: #047857;
  background: #dcfce7;
}

.roko-company-module-badges b.is-business {
  color: #0b63c7;
  background: #eaf4ff;
}

.roko-company-module-badges b.is-hosting {
  color: #7c3aed;
  background: #f3e8ff;
}

.roko-platform-stats {
  margin: 0 0 22px;
}

.roko-section-title {
  align-items: end;
  margin-top: 4px;
}

.roko-section-title .eyebrow {
  margin: 0 0 4px;
}

.roko-section-title h2 {
  margin: 0;
}

.roko-platform-table {
  border-radius: 8px;
  overflow-x: auto;
}

.roko-platform-table table {
  min-width: 860px;
}

.roko-platform-table td,
.roko-platform-table th {
  vertical-align: middle;
}

@media (max-width: 900px) {
  .superadmin-dashboard-page .roko-start-hero,
  .superadmin-dashboard-page .roko-platform-picker {
    grid-template-columns: 1fr;
    padding: 18px;
  }

  .roko-start-actions {
    justify-content: flex-start;
  }

  .roko-start-actions .button,
  .roko-platform-picker-form .button {
    width: 100%;
    justify-content: center;
  }

  .roko-platform-picker-form,
  .roko-platform-shortcuts {
    grid-template-columns: 1fr;
  }

  .superadmin-dashboard-page .super-mobile-home {
    display: grid;
    gap: 14px;
    margin-bottom: 18px;
  }

  .superadmin-dashboard-page .super-mobile-work-card {
    display: none;
  }

  .superadmin-dashboard-page .super-dashboard-recent-title,
  .superadmin-dashboard-page .super-dashboard-companies-table {
    display: none;
  }

  .superadmin-dashboard-page .super-dashboard-stats {
    display: none;
  }

  .superadmin-dashboard-page .roko-platform-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 16px;
  }

  .superadmin-dashboard-page .roko-platform-stats .stat-card {
    min-height: 78px;
    padding: 12px;
    gap: 10px;
    border-radius: 8px;
  }

  .superadmin-dashboard-page .roko-platform-stats .icon-box {
    width: 42px;
    height: 42px;
    border-radius: 8px;
  }

  .superadmin-dashboard-page .roko-platform-stats .stat-card span {
    font-size: 11px;
    line-height: 1.12;
  }

  .superadmin-dashboard-page .roko-platform-stats .stat-card strong {
    font-size: 24px;
    line-height: 1;
  }

  .superadmin-dashboard-page .roko-section-title {
    display: flex;
  }

  .superadmin-dashboard-page .roko-platform-table {
    display: block;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table {
    border: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table table {
    display: block;
    min-width: 0;
    width: 100%;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table thead {
    display: none;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table tbody {
    display: grid;
    gap: 10px;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table tr {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 10px;
    padding: 14px;
    border: 1px solid #d6e4f5;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .05);
  }

  .superadmin-dashboard-page .super-dashboard-companies-table td {
    display: grid;
    gap: 3px;
    padding: 0;
    border: 0;
    color: #07182f;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.2;
    min-width: 0;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table td::before {
    content: attr(data-label);
    color: #64748b;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .02em;
    line-height: 1;
    text-transform: uppercase;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Subjekt"],
  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Email"] {
    grid-column: 1 / -1;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Subjekt"]::before {
    display: none;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Subjekt"] strong {
    font-size: 18px;
    line-height: 1.15;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Email"] {
    color: #334155;
    font-weight: 750;
    overflow-wrap: anywhere;
  }

  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Korisnika"],
  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Modula"],
  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Moduli"],
  .superadmin-dashboard-page .super-dashboard-companies-table td[data-label="Status"] {
    padding: 9px 10px;
    border-radius: 8px;
    background: #f5f9fe;
  }

  .super-mobile-work-main,
  .super-mobile-work-selected {
    align-items: stretch;
    flex-direction: column;
  }

  .super-mobile-work-form {
    grid-template-columns: 1fr;
  }

  .super-mobile-work-form .button,
  .super-mobile-work-open {
    width: 100%;
    justify-content: center;
  }

  .super-mobile-work-shortcuts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.mobile-super-bar {
  display: grid;
  gap: 12px;
  padding: 14px;
  margin-bottom: 12px;
  border: 1px solid #b7d8ff;
  border-radius: 22px;
  background: #f7fbff;
  box-shadow: 0 14px 28px rgba(11, 99, 199, .08);
}

.mobile-super-bar span,
.mobile-super-bar label {
  display: block;
  color: #0b63c7;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.mobile-super-bar strong {
  display: block;
  margin-top: 3px;
  color: #061831;
  font-size: 18px;
  line-height: 1.12;
}

.mobile-super-bar small {
  display: block;
  margin-top: 4px;
  color: #64748b;
  font-weight: 800;
  line-height: 1.3;
}

.mobile-super-bar form {
  display: grid;
  gap: 6px;
}

.mobile-super-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  border: 1px solid #bfdbfe;
  border-radius: 14px;
  background: #fff;
  color: #0b63c7;
  font-weight: 950;
  text-decoration: none;
}

.mobile-super-back svg {
  width: 18px;
  height: 18px;
}

.mobile-super-bar select {
  width: 100%;
  min-height: 46px;
  padding: 0 12px;
  border: 1px solid #cfe0f3;
  border-radius: 14px;
  background: #fff;
  color: #061831;
  font-weight: 900;
}

.mobile-next-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.mobile-next-grid .mobile-main-next {
  margin-bottom: 0;
}

.mobile-next-card.is-departure {
  border-color: #fed7aa;
  background: #fffaf3;
}

.mobile-unit-status-section {
  padding: 12px;
}

.mobile-unit-status-list {
  display: grid;
  gap: 10px;
}

.mobile-unit-status-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid #dbe7f5;
  border-left: 5px solid #94a3b8;
  border-radius: 18px;
  background: #fff;
}

.mobile-unit-status-card.is-arrival {
  border-left-color: #2563eb;
  background: #f8fbff;
}

.mobile-unit-status-card.is-departure {
  border-left-color: #f97316;
  background: #fffaf3;
}

.mobile-unit-status-card.is-turnover {
  border-left-color: #7c3aed;
  background: #fbf8ff;
}

.mobile-unit-status-card.is-occupied {
  border-left-color: #059669;
  background: #f6fffb;
}

.mobile-unit-status-card.is-free {
  border-left-color: #94a3b8;
}

.mobile-unit-status-main {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.mobile-unit-status-main .unit-color {
  width: 13px;
  height: 52px;
  border-radius: 999px;
}

.mobile-unit-status-main strong,
.mobile-activity-card strong {
  display: block;
  overflow-wrap: anywhere;
  color: #061831;
  font-size: 18px;
  line-height: 1.15;
}

.mobile-unit-status-main em {
  display: inline-flex;
  margin-top: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  color: #0f172a;
  background: rgba(255,255,255,.78);
  font-size: 12px;
  font-style: normal;
  font-weight: 950;
}

.mobile-unit-status-main small,
.mobile-activity-card small {
  display: block;
  margin-top: 6px;
  color: #64748b;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.28;
}

.mobile-unit-status-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}

.mobile-unit-status-actions a {
  display: grid;
  place-items: center;
  gap: 4px;
  min-height: 56px;
  padding: 8px 4px;
  border: 1px solid #dbe7f5;
  border-radius: 14px;
  color: #0b63c7;
  background: #fff;
  font-size: 11px;
  font-weight: 950;
  text-align: center;
  text-decoration: none;
}

.mobile-unit-status-actions svg {
  width: 19px;
  height: 19px;
}

.mobile-activity-card {
  padding: 13px 0;
  border-top: 1px solid #e5edf7;
}

.mobile-activity-card:first-of-type {
  border-top: 0;
}

.mobile-activity-card span {
  display: inline-flex;
  margin-bottom: 5px;
  padding: 5px 8px;
  border-radius: 999px;
  color: #0b63c7;
  background: #edf6ff;
  font-size: 12px;
  font-weight: 900;
}

.mobile-action-panel {
  border-color: #b7d8ff;
  background: linear-gradient(135deg, #f7fbff 0%, #fff 72%);
}

.mobile-action-panel p {
  margin: 0;
  color: #516278;
  font-weight: 850;
  line-height: 1.42;
}

.mobile-action-summary {
  display: grid;
  gap: 4px;
  margin-bottom: 12px;
  padding: 12px;
  border: 1px solid #dbeafe;
  border-radius: 16px;
  background: #eff6ff;
}

.mobile-action-summary strong {
  color: #061831;
  font-size: 18px;
  line-height: 1.15;
}

.mobile-action-summary span {
  color: #516278;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
}

.mobile-reservation-detail {
  border-color: #bfdbfe;
  background: #fff;
}

.mobile-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.mobile-detail-grid article {
  min-height: 68px;
  padding: 11px;
  border: 1px solid #e5edf7;
  border-radius: 16px;
  background: #f8fbff;
}

.mobile-detail-grid span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.mobile-detail-grid strong {
  display: block;
  margin-top: 5px;
  overflow-wrap: anywhere;
  color: #061831;
  font-size: 15px;
  line-height: 1.18;
}

.mobile-reservation-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin-top: 12px;
}

.mobile-reservation-actions a {
  display: grid;
  place-items: center;
  gap: 5px;
  min-height: 58px;
  padding: 8px 4px;
  border: 1px solid #dbe7f5;
  border-radius: 14px;
  color: #0b63c7;
  background: #fff;
  font-size: 11px;
  font-weight: 950;
  text-align: center;
  text-decoration: none;
}

.mobile-reservation-actions svg {
  width: 19px;
  height: 19px;
}

.mobile-calendar-section {
  background: #fff;
  scroll-margin-top: 14px;
  scroll-margin-bottom: 104px;
}

.mobile-card-section[id] {
  scroll-margin-top: 14px;
  scroll-margin-bottom: 104px;
}

.mobile-calendar-list {
  display: grid;
  gap: 9px;
}

.mobile-calendar-day {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  gap: 10px;
  padding: 11px;
  border: 1px solid #e5edf7;
  border-radius: 16px;
  background: #f8fbff;
}

.mobile-calendar-date strong,
.mobile-calendar-date span {
  display: block;
}

.mobile-calendar-date strong {
  color: #061831;
  font-size: 14px;
  line-height: 1.12;
}

.mobile-calendar-date span {
  margin-top: 5px;
  color: #0b63c7;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.mobile-calendar-events {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.mobile-calendar-events a {
  display: grid;
  grid-template-columns: auto minmax(0, auto) minmax(0, 1fr);
  gap: 7px;
  align-items: center;
  min-height: 34px;
  padding: 7px 8px;
  border-radius: 12px;
  color: #061831;
  background: #fff;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.mobile-calendar-events .unit-color {
  width: 8px;
  height: 22px;
  border-radius: 999px;
}

.mobile-calendar-events strong,
.mobile-calendar-events small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mobile-calendar-events small {
  color: #64748b;
  font-weight: 850;
}

.mobile-calendar-empty,
.mobile-calendar-events em {
  color: #64748b;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

@media (max-width: 520px) {
  body.mobile-app-mode .mobile-app-shell {
    padding: 12px 10px 88px;
  }

  .mobile-app-hero {
    border-radius: 20px;
  }

  .mobile-app-hero h2 {
    font-size: 27px;
  }

  .mobile-app-hero {
    flex-direction: column;
  }

  .mobile-app-ghost {
    width: 100%;
    justify-content: center;
  }

  .mobile-quick-actions {
    grid-template-columns: 1fr;
  }

  .mobile-stat-grid {
    grid-template-columns: 1fr;
  }

  .mobile-today-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .mobile-finance-grid {
    grid-template-columns: 1fr;
  }

  .mobile-primary-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mobile-primary-actions a {
    min-height: 78px;
    padding: 10px 6px;
    font-size: 12px;
  }

  .mobile-unit-options {
    grid-template-columns: 1fr;
  }

  .company-work-overview-card {
    grid-template-columns: 1fr;
  }

  .company-work-overview-card .button {
    width: 100%;
    justify-content: center;
  }

  .super-mobile-home-hero h2 {
    font-size: 32px;
  }

  .super-mobile-platform-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .super-mobile-platform-stats article {
    padding: 12px 10px;
  }

  .super-mobile-platform-stats strong {
    font-size: 24px;
  }

  .super-mobile-work-main,
  .super-mobile-work-selected {
    align-items: stretch;
    flex-direction: column;
  }

  .super-mobile-work-form {
    grid-template-columns: 1fr;
  }

  .super-mobile-work-form .button,
  .super-mobile-work-open {
    width: 100%;
    justify-content: center;
  }

  .super-mobile-work-shortcuts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mobile-next-grid {
    grid-template-columns: 1fr;
  }

  .mobile-unit-status-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mobile-detail-grid,
  .mobile-reservation-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mobile-calendar-day {
    grid-template-columns: 1fr;
  }

  .mobile-main-alert.mobile-alert-card {
    grid-template-columns: auto 1fr;
  }

  .mobile-main-alert em {
    grid-column: 2;
    justify-self: start;
  }

  .mobile-reservation-card,
  .mobile-money-card {
    grid-template-columns: auto 1fr;
  }

  .mobile-reservation-card em,
  .mobile-money-card em {
    grid-column: 2;
    justify-self: start;
  }
}

@media (max-width: 980px) {
  .unit-drawer-shell.report-unit-detail-shell > aside.unit-drawer.report-unit-detail {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
  }

  .unit-drawer-shell.report-unit-detail-shell .report-unit-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .unit-drawer-shell.report-unit-detail-shell > aside.unit-drawer.report-unit-detail {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  .unit-drawer-shell.report-unit-detail-shell .report-unit-summary-grid {
    grid-template-columns: 1fr !important;
  }
}

/* v1.3.116 - unified filter layout for guests, calendar and documents */
.guestbook-filters,
.calendar-toolbar,
.documents-filter-card,
.compact-filter-card:has(.documents-quick-filter-row) {
  display: grid;
  gap: 10px;
}

.guestbook-quick-filter-row.unified-filter-row,
.documents-quick-filter-row.unified-filter-row {
  grid-template-columns: minmax(320px, min(680px, 56vw)) auto auto auto !important;
  justify-content: start;
  align-items: end;
}

.calendar-toolbar {
  grid-template-columns: minmax(360px, 1fr) minmax(170px, 240px) auto auto;
  align-items: end;
}

.guestbook-filters .unified-filter-advanced,
.calendar-toolbar .unified-filter-advanced,
.documents-filter-card .unified-filter-advanced,
.compact-filter-card:has(.documents-quick-filter-row) .unified-filter-advanced {
  grid-column: 1 / -1;
  margin-top: 2px;
  padding: 14px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}

.guestbook-filters .unified-filter-advanced[hidden],
.calendar-toolbar .unified-filter-advanced[hidden],
.documents-filter-card .unified-filter-advanced[hidden],
.compact-filter-card:has(.documents-quick-filter-row) .unified-filter-advanced[hidden] {
  display: none !important;
}

.guestbook-filter-advanced {
  grid-template-columns: repeat(5, minmax(150px, 1fr));
}

.guestbook-filter-advanced .advanced-filter-head,
.guestbook-filter-advanced .checkbox-filter-group {
  grid-column: 1 / -1;
}

.calendar-filter-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.documents-filter-card .document-filter-grid,
.compact-filter-card:has(.documents-quick-filter-row) .document-filter-grid {
  grid-template-columns: repeat(5, minmax(150px, 1fr));
}

@media (max-width: 1180px) {
  .guestbook-quick-filter-row.unified-filter-row,
  .documents-quick-filter-row.unified-filter-row,
  .calendar-toolbar {
    grid-template-columns: minmax(0, 1fr) auto auto auto !important;
  }

  .guestbook-filter-advanced,
  .documents-filter-card .document-filter-grid,
  .compact-filter-card:has(.documents-quick-filter-row) .document-filter-grid,
  .calendar-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .guestbook-quick-filter-row.unified-filter-row,
  .documents-quick-filter-row.unified-filter-row,
  .calendar-toolbar,
  .guestbook-filter-advanced,
  .documents-filter-card .document-filter-grid,
  .compact-filter-card:has(.documents-quick-filter-row) .document-filter-grid,
  .calendar-filter-grid {
    grid-template-columns: 1fr !important;
  }

  .guestbook-quick-filter-row.unified-filter-row .button,
  .documents-quick-filter-row.unified-filter-row .button,
  .calendar-toolbar > .button {
    width: 100%;
    justify-content: center;
  }
}

/* v1.3.117 - clearer finance workflow */
.finance-tabs-top {
  margin: -4px 0 16px;
}

.finance-tabs-top.report-tabs {
  width: fit-content;
  max-width: 100%;
}

.finance-modern-filter {
  margin-bottom: 14px;
}

.finance-filter-primary.unified-filter-row {
  grid-template-columns: minmax(260px, 1fr) minmax(190px, 230px) minmax(150px, 190px) auto auto auto !important;
  align-items: end;
  gap: 10px;
}

.finance-filter-search-field input {
  min-width: 0;
}

.finance-filter-unit-picker {
  align-self: end;
}

.finance-filter-unit-picker > summary {
  min-height: 54px;
  justify-content: flex-start;
  padding-inline: 14px;
}

.finance-filter-channel-field select {
  min-width: 0;
}

.finance-filter-period-row {
  display: grid;
  grid-template-columns: minmax(130px, 180px) minmax(170px, 220px);
  gap: 12px;
  align-items: end;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #dbe7f5;
}

.finance-filter-period-row .field {
  min-width: 0;
}

.finance-modern-filter .unified-filter-advanced {
  margin-top: 12px;
}

.finance-modern-filter .reports-shared-expense-toggle {
  align-self: end;
  min-height: 54px;
  margin: 0;
}

@media (max-width: 1100px) {
  .finance-filter-primary.unified-filter-row {
    grid-template-columns: minmax(220px, 1fr) minmax(180px, 220px) minmax(145px, 180px) !important;
  }

  .finance-filter-primary.unified-filter-row > .button,
  .finance-filter-primary.unified-filter-row > a.button {
    justify-content: center;
  }
}

@media (max-width: 900px) {
  .finance-filter-primary.unified-filter-row {
    grid-template-columns: 1fr !important;
  }

  .finance-filter-period-row {
    grid-template-columns: 1fr;
  }
}

.finance-filter-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: end;
}

.finance-filter-strip > .field {
  min-width: 0;
}

.finance-filter-period-inline {
  flex: 0 1 320px;
  min-width: 280px;
  display: grid;
  gap: 7px;
}

.finance-filter-mini-title,
.finance-filter-panel-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #52637a;
  font-size: 13px;
  font-weight: 950;
  line-height: 1.1;
  text-transform: uppercase;
}

.finance-filter-mini-title svg,
.finance-filter-panel-title svg {
  width: 17px;
  height: 17px;
  color: #0b63c7;
}

.finance-filter-inline-fields {
  display: grid;
  grid-template-columns: minmax(105px, .75fr) minmax(155px, 1fr);
  gap: 10px;
  align-items: end;
}

.finance-filter-strip .field input,
.finance-filter-strip .field select {
  min-height: 46px;
}

.finance-filter-unit-field {
  flex: 0 1 250px;
}

.finance-filter-channel-field {
  flex: 0 1 180px;
}

.finance-filter-search-field {
  flex: 1 1 300px;
}

.finance-filter-unit-field .report-filter-popover {
  width: 100%;
}

.finance-filter-unit-field .report-filter-popover > summary {
  width: 100%;
  min-height: 46px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
  padding: 10px 13px;
  color: #061a36;
  font-size: 15px;
  font-weight: 900;
  justify-content: flex-start;
  box-shadow: none;
}

.finance-filter-unit-field .report-filter-popover > summary:hover {
  border-color: #bfd6ec;
  background: #f8fbff;
}

.finance-filter-strip > .button,
.finance-filter-strip > a.button {
  flex: 0 0 auto;
  min-height: 46px;
  align-self: end;
  justify-content: center;
}

.finance-filter-advanced-panel {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding: 13px 14px 14px;
  border: 1px solid #d7e6f5;
  border-radius: 8px;
  background: #f8fbff;
}

.finance-filter-advanced-panel[hidden] {
  display: none;
}

.finance-filter-advanced-grid {
  display: grid;
  grid-template-columns: minmax(220px, 320px) minmax(260px, 1fr);
  gap: 12px;
  align-items: end;
}

.finance-filter-advanced-panel .reports-shared-expense-toggle {
  min-height: 48px;
  margin: 0;
  border-radius: 8px;
  background: #fff;
}

@media (max-width: 1100px) {
  .finance-filter-period-inline,
  .finance-filter-unit-field,
  .finance-filter-channel-field,
  .finance-filter-search-field {
    flex: 1 1 260px;
  }
}

@media (max-width: 900px) {
  .finance-filter-inline-fields,
  .finance-filter-advanced-grid {
    grid-template-columns: 1fr;
  }

  .finance-filter-period-inline,
  .finance-filter-unit-field,
  .finance-filter-channel-field,
  .finance-filter-search-field,
  .finance-filter-strip > .button,
  .finance-filter-strip > a.button {
    flex-basis: 100%;
    width: 100%;
  }
}

.finance-overview-summary-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  margin: 10px 0 12px;
}

.finance-overview-summary-head h2,
.finance-overview-summary-head p {
  margin: 0;
}

.finance-overview-summary-head .status-badge {
  max-width: min(680px, 100%);
  justify-content: flex-end;
  text-align: right;
  white-space: normal;
}

.finance-summary-grid {
  grid-template-columns: repeat(auto-fit, minmax(205px, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.finance-summary-grid .stat-card {
  min-width: 0;
  min-height: 94px;
}

.finance-summary-grid .stat-card strong {
  overflow-wrap: anywhere;
  white-space: normal;
}

.finance-insight-copy {
  margin: 2px 0 12px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 800;
}

.finance-insight-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 10px 0 12px;
}

.finance-insight-column {
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 31, 53, .06);
}

.finance-insight-column-plan {
  border-left: 4px solid #79b9ff;
  background: linear-gradient(90deg, #f0f8ff 0, #fff 34px);
}

.finance-insight-column-actual {
  border-left: 4px solid #059669;
}

.finance-insight-column-plan .finance-insight-list .is-total {
  background: #eef7ff;
}

.finance-insight-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}

.finance-insight-heading h3,
.finance-insight-heading p {
  margin: 0;
}

.finance-insight-heading h3 {
  font-size: 1.1rem;
  line-height: 1.15;
}

.finance-insight-title {
  min-width: 0;
}

.finance-insight-title-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.finance-info-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.finance-info-tip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border: 1px solid #cfe1f6;
  border-radius: 999px;
  background: #eef6ff;
  color: var(--primary);
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  cursor: help;
}

.finance-info-tip:focus {
  outline: 3px solid rgba(11, 102, 195, .18);
  outline-offset: 2px;
}

.finance-info-tooltip {
  position: absolute;
  z-index: 80;
  top: calc(100% + 10px);
  left: 50%;
  width: min(340px, calc(100vw - 48px));
  padding: 12px 14px;
  border-radius: 8px;
  background: #0f172a;
  color: #fff;
  box-shadow: 0 18px 38px rgba(15, 23, 42, .22);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
  text-align: left;
  text-transform: none;
  letter-spacing: 0;
  white-space: normal;
  transform: translate(-50%, 4px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.finance-info-tooltip::before {
  content: "";
  position: absolute;
  top: -6px;
  left: 50%;
  width: 12px;
  height: 12px;
  background: #0f172a;
  transform: translateX(-50%) rotate(45deg);
}

.finance-info-wrap:hover .finance-info-tooltip,
.finance-info-wrap:focus-within .finance-info-tooltip {
  transform: translate(-50%, 0);
  opacity: 1;
  visibility: visible;
}

.finance-insight-list {
  display: grid;
  gap: 0;
  margin: 0;
}

.finance-insight-list > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: baseline;
  padding: 9px 0;
  border-top: 1px solid #edf3fb;
}

.finance-insight-list > div:first-child {
  border-top: 0;
}

.finance-insight-list dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.finance-insight-list dd {
  margin: 0;
  color: var(--text);
  font-size: 1.08rem;
  font-weight: 900;
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.finance-insight-list .is-total {
  margin: 6px -6px 0;
  padding: 10px 6px;
  border: 0;
  border-radius: 8px;
  background: #f7fbff;
}

.finance-insight-column-actual .finance-insight-list .is-total {
  background: #eafff3;
}

.finance-insight-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 18px;
}

.finance-insight-notes article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex: 0 1 230px;
  min-width: 180px;
  max-width: 280px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
}

.finance-insight-notes span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.finance-insight-notes strong {
  font-size: 1rem;
  font-weight: 900;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.finance-workspace {
  margin-top: 10px;
}

.finance-payment-section,
.finance-expense-section {
  margin-top: 0;
}

.finance-expense-filter-card {
  margin-bottom: 14px;
}

.finance-expense-filter-card .unified-filter-advanced[hidden] {
  display: none !important;
}

@media (max-width: 900px) {
  .finance-overview-summary-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .finance-expense-list-table {
    min-width: 980px;
  }

  .finance-overview-summary-head .status-badge {
    justify-content: flex-start;
    text-align: left;
  }

  .finance-insight-panel {
    grid-template-columns: 1fr;
  }

  .finance-insight-notes article {
    flex: 1 1 100%;
    max-width: none;
  }

  .finance-info-tooltip {
    right: 0;
    left: auto;
    width: min(320px, calc(100vw - 40px));
    transform: translate(0, 4px);
  }

  .finance-info-tooltip::before {
    right: 8px;
    left: auto;
    transform: rotate(45deg);
  }

  .finance-info-wrap:hover .finance-info-tooltip,
  .finance-info-wrap:focus-within .finance-info-tooltip {
    transform: translate(0, 0);
  }
}

/* v1.3.119 - professional reports workspace filters and summary */
.reports-control-row.unified-filter-row {
  grid-template-columns: minmax(240px, 1fr) minmax(128px, 145px) minmax(128px, 145px) minmax(180px, 210px) auto auto auto auto;
}

.reports-control-row .compact-date-field input,
.reports-control-row .compact-scope-field select {
  min-width: 0;
}

.reports-unit-picker {
  position: relative;
  align-self: end;
}

.reports-unit-picker > summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  padding: 0 18px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  font-weight: 800;
  list-style: none;
  cursor: pointer;
  white-space: nowrap;
}

.reports-unit-picker > summary::-webkit-details-marker {
  display: none;
}

.reports-unit-picker .report-filter-popover-panel {
  right: 0;
  left: auto;
  width: min(460px, calc(100vw - 48px));
  max-height: 390px;
  overflow: auto;
}

.reports-picker-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
  color: var(--muted);
  font-size: .82rem;
}

.reports-picker-head strong {
  color: var(--ink);
  text-transform: uppercase;
  letter-spacing: .04em;
}

.reports-picker-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 10px;
}

.reports-picker-actions .button {
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
}

.reports-unit-checkboxes {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.finance-unit-picker,
.finance-unit-picker > summary {
  width: 100%;
}

/* v1.3.202 - cleaner payments overview table */
.finance-payment-table {
  border-radius: 8px;
}

.finance-payment-table table {
  width: 100%;
  min-width: 1120px;
  table-layout: fixed;
}

.finance-payment-table th,
.finance-payment-table td {
  padding: 12px 16px;
  vertical-align: middle;
}

.finance-payment-table th:nth-child(1),
.finance-payment-table td:nth-child(1) {
  width: 20%;
}

.finance-payment-table th:nth-child(2),
.finance-payment-table td:nth-child(2) {
  width: 10%;
}

.finance-payment-table th:nth-child(3),
.finance-payment-table td:nth-child(3) {
  width: 12%;
}

.finance-payment-table th:nth-child(4),
.finance-payment-table td:nth-child(4) {
  width: 10%;
  text-align: right;
}

.finance-payment-table th:nth-child(5),
.finance-payment-table td:nth-child(5) {
  width: 11%;
}

.finance-payment-table th:nth-child(6),
.finance-payment-table td:nth-child(6) {
  width: 10%;
  text-align: right;
}

.finance-payment-table th:nth-child(7),
.finance-payment-table td:nth-child(7) {
  width: 150px;
  text-align: right;
  padding-right: 18px;
}

.finance-payment-table th:nth-child(8),
.finance-payment-table td:nth-child(8) {
  width: 150px;
  padding-left: 8px;
  padding-right: 12px;
}

.finance-payment-table .payment-overview-row {
  min-height: 0;
}

.finance-payment-table .payment-clickable-row {
  cursor: pointer;
  transition: background-color 0.16s ease, box-shadow 0.16s ease;
}

.finance-payment-table .payment-clickable-row:hover {
  background: #f7fbff;
}

.finance-payment-table .payment-clickable-row:focus-visible {
  outline: 2px solid var(--primary, #1268c7);
  outline-offset: -2px;
}

.finance-payment-table .payment-row-actions {
  cursor: default;
}

.finance-payment-table .table-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
  min-width: 120px;
}

.finance-payment-table .table-actions > .icon-button,
.finance-payment-table .table-actions > form:not(.payment-commission-form) .icon-button {
  width: 36px;
  height: 36px;
}

.finance-payment-table .payment-commission-form {
  margin: 0;
}

.finance-payment-table .payment-commission-button {
  width: 36px;
  height: 36px;
  min-height: 36px;
  padding: 0;
  border-color: #fed7aa;
  background: #fff;
  color: #9a3412;
  overflow: hidden;
  font-size: 0;
}

.finance-payment-table .payment-commission-button i {
  width: 15px;
  height: 15px;
}

.payment-commission-heading {
  position: relative;
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  width: 100%;
}

.payment-commission-info {
  position: relative;
  display: inline-flex;
}

.payment-commission-info summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border: 1px solid #cfe1f6;
  border-radius: 999px;
  background: #eef6ff;
  color: var(--primary);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  list-style: none;
  cursor: pointer;
}

.payment-commission-info summary::-webkit-details-marker {
  display: none;
}

.payment-commission-info > span {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 80;
  width: 275px;
  padding: 10px 12px;
  border-radius: 8px;
  background: #0f172a;
  color: #fff;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .22);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  text-align: left;
  text-transform: none;
  letter-spacing: 0;
  white-space: normal;
}

.payment-commission-info > span::after {
  content: "";
  position: absolute;
  right: 12px;
  top: -5px;
  width: 10px;
  height: 10px;
  background: #0f172a;
  transform: rotate(45deg);
}

.payment-commission-info:not([open]) > span {
  display: none;
}

.payment-commission-info[open] summary {
  border-color: var(--primary);
  background: #e8f2ff;
}

.payment-commission-cell {
  font-variant-numeric: tabular-nums;
}

.payment-commission-panel {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 5px;
  min-width: 0;
}

.payment-commission-panel > strong {
  color: #c2410c;
  font-size: 17px;
  font-weight: 950;
  line-height: 1;
  white-space: nowrap;
}

.payment-commission-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  padding: 0 8px;
  border-radius: 999px;
  background: #fff3e6;
  color: #9a3412;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.payment-commission-panel.is-booked .payment-commission-status {
  background: #dcfce7;
  color: #047857;
}

.payment-commission-empty {
  display: block;
  color: var(--muted);
  font-weight: 900;
  text-align: right;
}

.finance-payment-table .payment-person-cell,
.finance-payment-table .payment-date-type-cell,
.finance-payment-table .payment-reservation-cell {
  line-height: 1.25;
}

.finance-payment-table .payment-date-type-cell,
.finance-payment-table .payment-reservation-cell {
  gap: 5px;
}

.finance-payment-table .payment-guest-reservation-link {
  display: inline-flex;
  color: var(--ink);
  text-decoration: none;
}

.finance-payment-table .payment-guest-reservation-link:hover strong,
.finance-payment-table .payment-guest-reservation-link:focus strong {
  color: var(--primary);
  text-decoration: underline;
}

.finance-payment-table .payment-reservation-cell a {
  display: inline-grid;
  gap: 3px;
  width: 100%;
  padding: 3px 0;
  cursor: pointer;
  position: relative;
  z-index: 1;
}

.finance-payment-table .payment-reservation-cell a:hover span,
.finance-payment-table .payment-reservation-cell a:focus span {
  color: var(--primary);
  text-decoration: underline;
}

.active-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.active-filter-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #edf6ff;
  color: #0b63c7;
  font-weight: 800;
  font-size: .82rem;
}

.reports-filter-chips {
  margin-top: 2px;
}

.reports-top-tabs.report-tabs {
  margin: 0 0 12px;
}

.toggle-line {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 0 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  font-weight: 800;
}

.toggle-line input {
  width: 18px;
  height: 18px;
  accent-color: var(--primary);
}

.reports-result-strip {
  display: flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 16px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
  overflow-x: auto;
}

.reports-result-strip div {
  min-width: 136px;
  padding: 7px 10px;
  border-radius: 8px;
  background: #f8fafc;
}

.reports-result-strip .is-net {
  background: #dcfce7;
}

.reports-result-strip strong {
  display: block;
  color: var(--ink);
  font-size: 1.02rem;
}

.reports-result-strip span {
  display: block;
  color: var(--muted);
  font-size: .76rem;
  font-weight: 800;
}

.reports-result-strip i {
  flex: 0 0 auto;
  color: var(--muted);
}

.reports-summary-dashboard {
  display: grid;
  gap: 14px;
}

.reports-summary-panels {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 10px;
  padding: 0 22px 22px;
}

.reports-summary-panels > div,
.reports-cost-breakdown > div {
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #f8fafc;
}

.reports-summary-panels span,
.reports-cost-breakdown span {
  display: block;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.reports-summary-panels strong,
.reports-cost-breakdown strong {
  display: block;
  margin-top: 6px;
  font-size: 1.25rem;
}

.reports-summary-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: 14px;
}

.reports-cost-breakdown {
  display: grid;
  gap: 10px;
  padding: 0 22px 22px;
}

@media (max-width: 1180px) {
  .reports-control-row.unified-filter-row {
    grid-template-columns: minmax(240px, 1fr) minmax(128px, 145px) minmax(128px, 145px) minmax(180px, 210px);
  }

  .reports-control-row.unified-filter-row > .button,
  .reports-control-row .reports-unit-picker {
    width: 100%;
  }

  .reports-unit-picker > summary {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .reports-control-row.unified-filter-row,
  .reports-summary-grid,
  .reports-summary-panels {
    grid-template-columns: 1fr;
  }

  .reports-result-strip {
    width: 100%;
  }
}

.finance-report-print-drawer {
  width: min(980px, calc(100vw - 42px));
}

.finance-report-picker {
  width: min(800px, calc(100vw - 32px));
}

.finance-report-picker-actions {
  grid-template-columns: 1fr 1fr 1.3fr;
}

.finance-report-preview-shell {
  display: flex !important;
}

body .finance-report-preview-shell {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999 !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  padding: 0 !important;
  background: rgba(15, 23, 42, 0.55) !important;
}

body .finance-report-preview-shell .unit-drawer-scrim {
  z-index: 1;
}

body .finance-report-preview-shell > aside.finance-report-print-drawer {
  position: relative !important;
  z-index: 2 !important;
  width: min(1040px, calc(100vw - 64px)) !important;
  height: 100vh !important;
  max-height: 100vh !important;
  margin: 0 !important;
  border-radius: 0 !important;
  overflow: auto !important;
  background: #eef3f7 !important;
}

body .finance-report-preview-shell .finance-report-drawer-head {
  position: sticky !important;
  top: 0 !important;
  z-index: 20 !important;
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) 190px !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 88px !important;
  margin: 0 !important;
  padding: 16px 22px !important;
  border-bottom: 1px solid #dbe7f5 !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .08) !important;
}

body .finance-report-preview-shell .finance-report-drawer-title {
  grid-column: 2;
  min-width: 0;
  text-align: center;
}

body .finance-report-preview-shell .finance-report-drawer-title .eyebrow {
  margin: 0 0 4px !important;
  color: var(--blue) !important;
}

body .finance-report-preview-shell .finance-report-drawer-title h2 {
  margin: 0 !important;
  font-size: 24px !important;
  line-height: 1.12 !important;
}

body .finance-report-preview-shell .finance-report-drawer-actions {
  grid-column: 3;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
}

body .finance-report-preview-shell .finance-report-drawer-actions .button {
  white-space: nowrap;
}

body .finance-report-preview-shell .finance-report-page {
  margin: 24px auto 36px !important;
  width: 210mm !important;
  min-height: 297mm !important;
  max-width: calc(100% - 48px) !important;
}

@media (max-width: 760px) {
  body .finance-report-preview-shell .finance-report-drawer-head {
    grid-template-columns: 1fr !important;
    justify-items: stretch;
  }

  body .finance-report-preview-shell .finance-report-drawer-title,
  body .finance-report-preview-shell .finance-report-drawer-actions {
    grid-column: 1;
  }

  body .finance-report-preview-shell .finance-report-drawer-actions {
    justify-content: center !important;
  }
}

.finance-report-page {
  padding: 14mm 13mm 16mm !important;
}

.finance-report-print-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.finance-report-equation-print {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  gap: 8px;
  align-items: center;
  margin: 8px 0 12px;
  padding: 8px;
  border: 1px solid #dbe7f5;
  border-radius: 8px;
  background: #f8fbff;
  text-align: center;
}

.finance-report-equation-print strong {
  display: block;
  padding: 8px;
  border-radius: 6px;
  background: #fff;
  font-size: 12px;
}

.finance-report-equation-print strong:last-child {
  background: #dcfce7;
}

.finance-report-equation-print span {
  color: #64748b;
  font-weight: 900;
}

@media print {
  .finance-report-page .report-print-table {
    font-size: 8.5pt;
  }

  body.print-window.finance-report-print-window,
  body.print-document-only.print-finance-report-only {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body.print-window.finance-report-print-window .print-window-wrap,
  body.print-document-only.print-finance-report-only #print-document-host {
    position: static !important;
    inset: auto !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body.print-window.finance-report-print-window .document-page.finance-report-page,
  body.print-document-only.print-finance-report-only #print-document-host .document-page.finance-report-page {
    box-sizing: border-box !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: auto !important;
    min-height: 297mm !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 14mm 13mm 16mm !important;
    overflow: visible !important;
    page: report-portrait !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    box-shadow: none !important;
  }

  body.print-window.finance-report-print-window .finance-report-page table,
  body.print-window.finance-report-print-window .finance-report-page tr,
  body.print-document-only.print-finance-report-only .finance-report-page table,
  body.print-document-only.print-finance-report-only .finance-report-page tr {
    break-inside: avoid;
    page-break-inside: avoid;
  }
}

/* v1.3.118 - compact commission VAT print */
.commission-vat-report-page {
  padding: 14mm 13mm 16mm !important;
}

.report-print-head {
  display: grid;
  grid-template-columns: 56mm minmax(0, 1fr);
  align-items: start;
  gap: 12mm;
  margin-bottom: 8mm;
}

.report-print-logo-box {
  min-height: 24mm;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}

.report-print-logo {
  max-width: 48mm;
  max-height: 24mm;
  object-fit: contain;
}

.report-print-logo-box strong {
  font-size: 14pt;
  line-height: 1.1;
}

.report-print-company {
  display: grid;
  gap: 1mm;
  text-align: right;
  color: #222;
  font-size: 7.6pt;
  line-height: 1.25;
}

.report-print-company strong {
  display: block;
  margin-bottom: 1.6mm;
  padding-bottom: 1.4mm;
  border-bottom: .2mm solid #d1d5db;
  color: #000;
  font-size: 10.2pt;
  line-height: 1.1;
}

.report-print-title-block {
  margin-bottom: 5mm;
  text-align: center;
}

.commission-vat-report-page .report-print-title-block h2 {
  margin: 0 0 2.5mm !important;
  font-size: 15pt !important;
  line-height: 1.15 !important;
  letter-spacing: .8px !important;
}

.commission-vat-report-page .report-period {
  margin: 0 !important;
  font-size: 9pt;
}

.commission-vat-report-page .report-print-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 2mm !important;
  margin-bottom: 6mm !important;
}

.commission-vat-report-page .report-print-summary div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2mm;
  min-height: 10mm;
  padding: 2mm 2.6mm !important;
  border-radius: 2mm;
}

.commission-vat-report-page .report-print-summary span {
  margin: 0 !important;
  font-size: 7.6pt !important;
}

.commission-vat-report-page .report-print-summary strong {
  font-size: 10.2pt !important;
  line-height: 1.1 !important;
  white-space: nowrap;
}

.commission-vat-report-page .report-print-two-col {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 6mm !important;
  margin-bottom: 6mm !important;
}

.commission-vat-report-page .report-print-two-col h3,
.commission-vat-report-page .report-print-section-title {
  margin: 0 0 2mm !important;
  font-size: 8.4pt !important;
}

.commission-vat-report-page .report-print-mini-table {
  font-size: 7.2pt !important;
  table-layout: fixed !important;
  width: 100% !important;
}

.commission-vat-report-page .report-print-table {
  font-size: 6.9pt !important;
}

.commission-vat-report-page .report-print-table th,
.commission-vat-report-page .report-print-table td,
.commission-vat-report-page .report-print-mini-table th,
.commission-vat-report-page .report-print-mini-table td {
  padding: 1.15mm 1.2mm !important;
}

.commission-vat-report-page .report-period-note {
  margin: -1mm 0 5mm !important;
  padding: 2mm 2.6mm !important;
  border: 0.2mm solid #cfe0f5 !important;
  border-radius: 2mm !important;
  background: #f7fbff !important;
  color: #30445c !important;
  font-size: 7.5pt !important;
  line-height: 1.35 !important;
}

.commission-vat-report-page .detail-cell {
  line-height: 1.25 !important;
}

.commission-vat-report-page .detail-cell strong,
.commission-vat-report-page .detail-cell span {
  display: block !important;
}

.commission-vat-report-page .detail-cell span {
  color: #526173 !important;
  font-size: 6.4pt !important;
  font-weight: 600 !important;
}

.commission-vat-report-page .money-cell {
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 700 !important;
}

.commission-vat-report-page .report-period-warning {
  display: inline-block !important;
  margin-top: 0.7mm !important;
  padding: 0.5mm 1.1mm !important;
  border-radius: 999px !important;
  background: #fff3cd !important;
  color: #8a5a00 !important;
  font-size: 6.2pt !important;
  font-weight: 700 !important;
}

.commission-vat-report-page .report-print-mini-table th:first-child,
.commission-vat-report-page .report-print-mini-table td:first-child {
  width: 52% !important;
  white-space: normal !important;
  overflow-wrap: break-word;
}

.commission-vat-report-page .report-print-mini-table th:nth-child(2),
.commission-vat-report-page .report-print-mini-table td:nth-child(2) {
  width: 12% !important;
  text-align: center;
}

.commission-vat-report-page .report-print-mini-table th:nth-child(3),
.commission-vat-report-page .report-print-mini-table td:nth-child(3),
.commission-vat-report-page .report-print-mini-table th:nth-child(4),
.commission-vat-report-page .report-print-mini-table td:nth-child(4) {
  width: 18% !important;
  text-align: right;
}

.commission-vat-report-page .document-footer {
  bottom: 8mm;
  font-size: 7pt;
}

@media print {
  .commission-vat-report-page {
    padding: 14mm 13mm 16mm !important;
  }

  .commission-vat-report-page .report-print-two-col {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* v1.3.145 - final unified print/export preview drawers */
body .unified-print-preview-shell > aside.unit-drawer.document-drawer {
  width: min(1120px, calc(100vw - 28px)) !important;
  height: 100vh !important;
  max-height: 100vh !important;
  overflow: auto !important;
  background: #eef3f7 !important;
}

body .unified-print-preview-shell .unified-print-preview-head {
  position: sticky !important;
  top: 0 !important;
  z-index: 40 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 16px 22px !important;
  border-bottom: 1px solid #dbe7f5 !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .08) !important;
}

body .unified-print-preview-shell .unified-print-preview-head h2 {
  margin: 0 !important;
}

body .unified-print-preview-shell .unified-print-preview-head .action-row {
  justify-content: flex-end !important;
  flex-wrap: wrap !important;
}

body .unified-print-preview-shell .document-page {
  margin: 28px auto 52px !important;
}

body .unified-print-preview-shell .reservation-export-page {
  width: 297mm !important;
  min-height: 210mm !important;
  padding: 14mm 10mm 16mm !important;
}

.reservation-export-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.reservation-export-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 7pt;
}

.reservation-export-table th,
.reservation-export-table td {
  padding: 1.45mm .9mm;
  line-height: 1.24;
  max-width: 0;
  vertical-align: top;
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.reservation-export-table .reservation-export-col-unit,
.reservation-export-table .reservation-export-col-guest { width: 17%; }
.reservation-export-table .reservation-export-col-country { width: 8%; }
.reservation-export-table .reservation-export-col-date { width: 8.5%; }
.reservation-export-table .reservation-export-col-nights { width: 4.5%; }
.reservation-export-table .reservation-export-col-money { width: 8.5%; }
.reservation-export-table .reservation-export-col-channel { width: 10%; }
.reservation-export-table .reservation-export-col-status { width: 9.5%; }

.reservation-export-page .report-print-title-block {
  margin-bottom: 5mm;
}

.reservation-export-page .report-print-summary {
  margin-bottom: 6mm;
}

.reservation-export-table th:nth-child(4),
.reservation-export-table td:nth-child(4),
.reservation-export-table th:nth-child(5),
.reservation-export-table td:nth-child(5),
.reservation-export-table th:nth-child(6),
.reservation-export-table td:nth-child(6),
.reservation-export-table th:nth-child(7),
.reservation-export-table td:nth-child(7),
.reservation-export-table th:nth-child(8),
.reservation-export-table td:nth-child(8) {
  white-space: nowrap !important;
}

.reservation-export-table th:nth-child(6),
.reservation-export-table td:nth-child(6),
.reservation-export-table th:nth-child(7),
.reservation-export-table td:nth-child(7),
.reservation-export-table th:nth-child(8),
.reservation-export-table td:nth-child(8) {
  text-align: right;
}

@media (max-width: 760px) {
  body .unified-print-preview-shell > aside.unit-drawer.document-drawer {
    width: 100vw !important;
  }

  body .unified-print-preview-shell .unified-print-preview-head {
    display: grid !important;
    gap: 12px !important;
  }

  body .unified-print-preview-shell .unified-print-preview-head .action-row,
  body .unified-print-preview-shell .unified-print-preview-head .button {
    width: 100% !important;
    justify-content: center !important;
  }
}

@media print {
  @page report-landscape {
    size: A4 landscape;
    margin: 0;
  }

  html:has(body.print-window.reservation-export-print-window),
  html:has(body.print-document-only.print-reservation-export-only) {
    width: 297mm !important;
    min-width: 297mm !important;
    max-width: 297mm !important;
    height: auto !important;
    min-height: 210mm !important;
    max-height: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body .unified-print-preview-shell .unified-print-preview-head {
    display: none !important;
  }

  body .unified-print-preview-shell .reservation-export-page {
    width: 297mm !important;
    min-height: 210mm !important;
    margin: 0 !important;
    box-shadow: none !important;
    page: report-landscape !important;
  }

  body.print-window.reservation-export-print-window,
  body.print-document-only.print-reservation-export-only {
    width: 297mm !important;
    min-width: 297mm !important;
    max-width: 297mm !important;
    height: auto !important;
    min-height: 210mm !important;
    max-height: none !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body.print-window.reservation-export-print-window .print-window-wrap,
  body.print-document-only.print-reservation-export-only #print-document-host {
    position: static !important;
    inset: auto !important;
    width: 297mm !important;
    min-width: 297mm !important;
    max-width: 297mm !important;
    height: auto !important;
    min-height: 210mm !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body.print-window.reservation-export-print-window .reservation-export-page,
  body.print-document-only.print-reservation-export-only #print-document-host .reservation-export-page {
    box-sizing: border-box !important;
    width: 297mm !important;
    min-width: 297mm !important;
    max-width: 297mm !important;
    height: auto !important;
    min-height: 210mm !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 14mm 10mm 16mm !important;
    overflow: visible !important;
    page: report-landscape !important;
    box-shadow: none !important;
  }
}

/* v1.3.146 - report totals and robust filter toggles */
.unified-filter-advanced.is-hidden {
  display: none !important;
}

.report-analytics-table tfoot th,
.report-archive-table tfoot th {
  padding: 16px 20px;
  border-top: 2px solid #d6e4f5;
  background: #f1f6fb;
  color: var(--ink);
  font-weight: 900;
  text-align: left;
  white-space: nowrap;
}

.report-analytics-table tfoot th:not(:first-child),
.report-archive-table tfoot th:not(:first-child) {
  text-align: left;
}

/* v1.3.150 - module channels and intermediaries */
.module-channel-settings {
  margin-top: 22px;
}

.module-expense-category-settings {
  margin-top: 22px;
}

.module-channel-list {
  display: grid;
  gap: 12px;
  padding: 18px;
}

.module-channel-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.35fr) minmax(130px, .7fr) minmax(220px, 1.25fr) minmax(135px, .65fr) minmax(95px, .5fr);
  gap: 12px;
  align-items: end;
  padding: 14px;
  border: 1px solid #dbe8f7;
  border-radius: 8px;
  background: #f8fbff;
  overflow: visible;
}

.module-channel-row-new {
  background: #fffaf0;
  border-color: #f8d28b;
}

.module-channel-row .field {
  margin: 0;
}

.module-channel-info-wrap .finance-info-tooltip {
  top: calc(100% + 8px);
}

.module-channel-check {
  min-height: 56px;
  align-items: center;
  margin: 0;
  padding: 0 4px;
}

.expense-category-settings-list {
  padding: 18px;
}

.expense-category-settings-list table {
  table-layout: fixed;
  width: 100%;
}

.expense-category-settings-list th:nth-child(1),
.expense-category-settings-list td:nth-child(1) {
  width: auto;
}

.expense-category-settings-list th:nth-child(2),
.expense-category-settings-list td:nth-child(2) {
  width: 150px;
}

.expense-category-settings-list th:nth-child(3),
.expense-category-settings-list td:nth-child(3) {
  width: 170px;
}

.expense-category-settings-list th:nth-child(4),
.expense-category-settings-list td:nth-child(4) {
  width: 190px;
}

.expense-category-settings-list input[type="text"],
.expense-category-settings-list input:not([type]),
.expense-category-settings-list input[type="number"] {
  width: 100%;
}

.expense-category-settings-list tr.is-system-category {
  background: #f8fbff;
}

.expense-category-settings-list tr.is-system-category strong {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}

.expense-category-new-row {
  background: #fffaf0;
}

@media (max-width: 1180px) {
  .module-channel-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .module-channel-row {
    grid-template-columns: 1fr;
  }

  .expense-category-settings-list th:nth-child(n),
  .expense-category-settings-list td:nth-child(n) {
    width: auto;
  }
}

/* v1.3.167 - reports cleanup: configured channels, compact filters and stable expense tables */
.reports-filter-card .reports-control-row.unified-filter-row {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) auto auto auto;
  align-items: end;
  gap: 14px;
}

.reports-filter-card .reports-control-row .field,
.reports-filter-card .reports-control-row .button,
.reports-filter-card .reports-control-row .reports-unit-picker > summary {
  min-height: 58px;
}

.reports-filter-card .reports-control-row .button,
.reports-filter-card .reports-control-row .reports-unit-picker > summary {
  width: auto;
  white-space: nowrap;
}

.reports-filter-card .unified-filter-advanced {
  grid-template-columns: minmax(150px, .45fr) minmax(150px, .45fr) minmax(190px, .6fr) minmax(220px, .75fr);
  align-items: end;
}

.reports-filter-card .reports-advanced-unit-picker,
.reports-filter-card .reports-shared-expense-toggle {
  grid-column: span 2;
}

.reports-filter-card .reports-advanced-unit-picker > summary {
  width: 100%;
}

.report-expenses-card {
  max-width: 100%;
  overflow: hidden;
}

.report-expenses-card .table-card-head {
  flex-wrap: wrap;
}

.report-expenses-card .table-card-head .button {
  flex: 0 0 auto;
}

.report-expenses-card table {
  min-width: 920px;
}

.report-analytics-table:not(.report-expenses-card) th:not(:first-child),
.report-analytics-table:not(.report-expenses-card) td:not(:first-child),
.report-archive-table th:not(:first-child),
.report-archive-table td:not(:first-child) {
  text-align: right;
}

.report-analytics-table:not(.report-expenses-card) tfoot th:not(:first-child),
.report-archive-table tfoot th:not(:first-child) {
  text-align: right;
}

.report-expenses-card th:last-child,
.report-expenses-card td:last-child,
.report-expenses-card tfoot th:last-child {
  text-align: right;
}

@media (max-width: 1320px) {
  .reports-filter-card .reports-control-row.unified-filter-row {
    grid-template-columns: minmax(300px, 1fr) auto auto auto;
  }

  .reports-filter-card .unified-filter-advanced {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .reports-filter-card .reports-control-row.unified-filter-row,
  .reports-filter-card .unified-filter-advanced {
    grid-template-columns: 1fr;
  }

  .reports-filter-card .reports-control-row .button,
  .reports-filter-card .reports-control-row .reports-unit-picker,
  .reports-filter-card .reports-control-row .reports-unit-picker > summary,
  .reports-filter-card .reports-advanced-unit-picker,
  .reports-filter-card .reports-shared-expense-toggle {
    width: 100%;
    justify-content: center;
  }

  .reports-filter-card .reports-advanced-unit-picker,
  .reports-filter-card .reports-shared-expense-toggle {
    grid-column: auto;
  }

  .report-expenses-card {
    overflow-x: auto;
  }
}

/* v1.3.169 - compact superadmin context, reservation periods and monthly VAT builder */
.superadmin-context-switcher {
  display: flex;
  align-items: center;
  gap: 12px;
  width: min(760px, 100%);
  margin: -8px 0 26px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 12px 34px rgba(15, 31, 53, .08);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.superadmin-context-switcher .field {
  flex: 1 1 auto;
  margin: 0;
}

.superadmin-context-switcher select {
  min-height: 44px;
}

.superadmin-context-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  color: var(--muted);
  font-size: .86rem;
  font-weight: 900;
  text-transform: uppercase;
}

.superadmin-context-label svg {
  width: 18px;
  height: 18px;
  color: var(--blue);
}

.reservation-period-tabs {
  margin: 0 0 14px;
}

.report-builder {
  width: min(980px, calc(100vw - 32px));
}

.report-builder .ep-picker-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.report-builder .ep-picker-head,
.report-builder .ep-picker-section,
.report-builder .ep-picker-actions {
  padding: 18px 26px;
}

.report-builder .report-period-section,
.report-builder .ep-picker-actions {
  grid-column: 1 / -1;
}

.report-month-control {
  display: grid;
  grid-template-columns: auto minmax(220px, 360px) auto;
  gap: 10px;
  align-items: end;
}

.report-month-control .button {
  min-height: 58px;
}

.report-picker-compact-section .ep-unit-grid {
  grid-template-columns: 1fr;
  max-height: 260px;
  overflow: auto;
  padding-right: 4px;
}

.report-builder .report-preview-box {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.report-builder .report-preview-box span {
  min-height: 62px;
  padding: 12px 14px;
  border-radius: 8px;
  background: #f5f8fc;
}

@media (max-width: 900px) {
  .superadmin-context-switcher,
  .report-builder .ep-picker-form,
  .report-builder .report-preview-box,
  .report-month-control {
    grid-template-columns: 1fr;
  }

  .superadmin-context-switcher {
    display: grid;
  }
}

/* v1.3.171 - compact report KPI cards */
.report-summary-grid {
  grid-template-columns: repeat(6, minmax(128px, 1fr)) !important;
  gap: 8px !important;
  margin-bottom: 8px !important;
}

.report-summary-grid .stat-card {
  min-height: 64px !important;
  padding: 10px 12px !important;
  gap: 9px !important;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(15, 31, 53, .05);
}

.report-summary-grid .icon-box {
  width: 34px;
  height: 34px;
  border-radius: 8px;
}

.report-summary-grid .icon-box svg {
  width: 18px;
  height: 18px;
}

.report-summary-grid .stat-card p {
  margin-bottom: 3px;
  font-size: .86rem;
  line-height: 1.1;
}

.report-summary-grid .stat-card strong {
  font-size: clamp(1rem, .95vw, 1.26rem);
  line-height: 1.05;
}

.reports-result-strip {
  margin-bottom: 14px;
  padding: 6px;
  gap: 6px;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .05);
}

.reports-result-strip div {
  min-width: 122px;
  padding: 6px 9px;
}

.reports-result-strip strong {
  font-size: .95rem;
}

.reports-result-strip span {
  font-size: .72rem;
}

@media (max-width: 1360px) {
  .report-summary-grid {
    grid-template-columns: repeat(3, minmax(150px, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .report-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* v1.3.172 - compact finance KPI cards */
.finance-overview-summary-head {
  margin: 14px 0 10px;
}

.finance-summary-grid:not(.report-summary-grid) {
  grid-template-columns: repeat(7, minmax(118px, 1fr)) !important;
  gap: 8px !important;
  margin-bottom: 12px !important;
}

.finance-summary-grid:not(.report-summary-grid) .stat-card {
  min-height: 66px !important;
  padding: 10px 12px !important;
  gap: 9px !important;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(15, 31, 53, .05);
}

.finance-summary-grid:not(.report-summary-grid) .icon-box {
  width: 34px;
  height: 34px;
  border-radius: 8px;
}

.finance-summary-grid:not(.report-summary-grid) .icon-box svg {
  width: 18px;
  height: 18px;
}

.finance-summary-grid:not(.report-summary-grid) .stat-card p {
  margin-bottom: 3px;
  font-size: .84rem;
  line-height: 1.1;
}

.finance-summary-grid:not(.report-summary-grid) .stat-card strong {
  font-size: clamp(1rem, .92vw, 1.2rem);
  line-height: 1.05;
  overflow-wrap: anywhere;
  white-space: normal;
}

@media (max-width: 1500px) {
  .finance-summary-grid:not(.report-summary-grid) {
    grid-template-columns: repeat(4, minmax(145px, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  .finance-summary-grid:not(.report-summary-grid) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* v1.3.175 - reports polish and reservation export preview */
.reports-section-title {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
}

.reports-section-title > div:first-child {
  min-width: 0;
}

.reports-section-title .reports-title-actions {
  flex: 1 1 620px;
  margin-left: auto;
  justify-content: flex-end;
}

.report-vat-dashboard > .table-card-head {
  align-items: flex-start;
}

.report-builder {
  width: min(1040px, calc(100vw - 40px));
}

.report-builder .ep-picker-section {
  padding: 18px 22px;
}

.report-builder .report-month-control {
  grid-template-columns: 54px minmax(240px, 1fr) 54px;
  gap: 12px;
}

.report-builder .report-preview-box {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.report-builder .report-preview-box span {
  min-height: 66px;
  padding: 12px 14px;
}

.report-builder .report-picker-compact-section .ep-unit-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.report-expenses-card {
  border-radius: 8px;
  overflow-x: auto;
}

.report-expenses-card .table-card-head {
  align-items: center;
  padding: 18px 22px;
}

.report-expenses-card table {
  min-width: 1180px !important;
  width: 100%;
  table-layout: fixed;
}

.report-expenses-card th,
.report-expenses-card td {
  vertical-align: top;
}

.report-expenses-card th:nth-child(1),
.report-expenses-card td:nth-child(1) {
  width: 120px;
}

.report-expenses-card th:nth-child(2),
.report-expenses-card td:nth-child(2) {
  width: 240px;
}

.report-expenses-card th:nth-child(3),
.report-expenses-card td:nth-child(3) {
  width: 190px;
}

.report-expenses-card th:nth-child(4),
.report-expenses-card td:nth-child(4) {
  width: auto;
  min-width: 280px;
}

.report-expenses-card th:nth-child(5),
.report-expenses-card td:nth-child(5) {
  width: 180px;
}

.report-expenses-card th:nth-child(6),
.report-expenses-card td:nth-child(6) {
  width: 130px;
}

.report-expenses-card td:nth-child(4),
.report-expenses-card td:nth-child(5) {
  white-space: normal;
  overflow-wrap: break-word;
}

.reservation-export-preview-shell > aside.unit-drawer.document-drawer {
  width: min(1220px, calc(100vw - 44px)) !important;
  max-width: none !important;
}

body .unified-print-preview-shell.reservation-export-preview-shell .reservation-export-page {
  width: min(100%, 297mm) !important;
  min-height: auto !important;
  padding: 12mm 9mm 14mm !important;
}

.reservation-export-preview-shell .reservation-export-table {
  font-size: 6.7pt;
}

.reservation-export-preview-shell .reservation-export-table th,
.reservation-export-preview-shell .reservation-export-table td {
  padding: 1.25mm .75mm;
  max-width: none;
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: normal;
}

.reservation-export-preview-shell .reservation-export-table .reservation-export-col-unit { width: 14%; }
.reservation-export-preview-shell .reservation-export-table .reservation-export-col-guest { width: 15%; }
.reservation-export-preview-shell .reservation-export-table .reservation-export-col-country { width: 7%; }
.reservation-export-preview-shell .reservation-export-table .reservation-export-col-date { width: 8%; }
.reservation-export-preview-shell .reservation-export-table .reservation-export-col-nights { width: 4%; }
.reservation-export-preview-shell .reservation-export-table .reservation-export-col-money { width: 8%; }
.reservation-export-preview-shell .reservation-export-table .reservation-export-col-channel { width: 9%; }
.reservation-export-preview-shell .reservation-export-table .reservation-export-col-status { width: 9%; }

.reservation-export-preview-shell .reservation-export-table th:nth-child(4),
.reservation-export-preview-shell .reservation-export-table td:nth-child(4),
.reservation-export-preview-shell .reservation-export-table th:nth-child(5),
.reservation-export-preview-shell .reservation-export-table td:nth-child(5),
.reservation-export-preview-shell .reservation-export-table th:nth-child(7),
.reservation-export-preview-shell .reservation-export-table td:nth-child(7),
.reservation-export-preview-shell .reservation-export-table th:nth-child(8),
.reservation-export-preview-shell .reservation-export-table td:nth-child(8) {
  white-space: normal !important;
}

@media (max-width: 1200px) {
  .reports-section-title {
    align-items: flex-start;
    flex-direction: column;
  }

  .reports-section-title .reports-title-actions {
    flex: 0 0 auto;
    margin-left: 0;
    justify-content: flex-start;
  }

  .report-builder .report-preview-box,
  .report-builder .report-picker-compact-section .ep-unit-grid {
    grid-template-columns: 1fr;
  }
}

/* v1.3.177 - VAT rounding display and cleaner report archive tables */
.report-archive-table .report-archive-list-table {
  table-layout: fixed;
  width: 100%;
  min-width: 1120px;
}

.report-archive-table .report-archive-col-title {
  width: 32%;
}

.report-archive-table .report-archive-col-period {
  width: 14%;
}

.report-archive-table .report-archive-col-count {
  width: 8%;
}

.report-archive-table .report-archive-col-money,
.report-archive-table .report-archive-col-vat {
  width: 10%;
}

.report-archive-table .report-archive-col-status {
  width: 10%;
}

.report-archive-table .report-archive-col-actions {
  width: 16%;
}

.report-archive-table .report-archive-list-table th,
.report-archive-table .report-archive-list-table td {
  vertical-align: middle;
}

.report-archive-table .report-archive-open-row {
  cursor: pointer;
  transition: background-color .16s ease, box-shadow .16s ease;
}

.report-archive-table .report-archive-open-row:hover {
  background: rgba(15, 114, 210, .05);
}

.report-archive-table .report-archive-open-row:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}

.report-archive-table .report-archive-list-table th:nth-child(2),
.report-archive-table .report-archive-list-table td:nth-child(2),
.report-archive-table .report-archive-list-table th:first-child,
.report-archive-table .report-archive-list-table td:first-child {
  text-align: left;
}

.report-archive-table .report-archive-list-table th:nth-child(3),
.report-archive-table .report-archive-list-table td:nth-child(3) {
  text-align: center;
}

.report-archive-table .report-archive-list-table th:nth-child(4),
.report-archive-table .report-archive-list-table td:nth-child(4),
.report-archive-table .report-archive-list-table th:nth-child(5),
.report-archive-table .report-archive-list-table td:nth-child(5),
.report-archive-table .report-archive-list-table th:nth-child(6),
.report-archive-table .report-archive-list-table td:nth-child(6) {
  text-align: right;
}

.report-archive-table .report-period-stack {
  display: grid;
  gap: 2px;
  line-height: 1.25;
  white-space: nowrap;
}

.report-archive-table .amount-nowrap {
  display: inline-flex;
  align-items: baseline;
  white-space: nowrap;
}

.report-archive-table .action-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.report-archive-table .action-row .button {
  min-height: 46px;
  padding-inline: 14px;
}

.commission-vat-report-page .report-print-mini-table th:first-child,
.commission-vat-report-page .report-print-mini-table td:first-child,
.report-preview-shell .commission-vat-report-page .report-print-mini-table th:first-child,
.report-preview-shell .commission-vat-report-page .report-print-mini-table td:first-child {
  width: 58% !important;
}

.commission-vat-report-page .report-print-mini-table th:nth-child(2),
.commission-vat-report-page .report-print-mini-table td:nth-child(2),
.report-preview-shell .commission-vat-report-page .report-print-mini-table th:nth-child(2),
.report-preview-shell .commission-vat-report-page .report-print-mini-table td:nth-child(2) {
  width: 9% !important;
  text-align: center !important;
}

.commission-vat-report-page .report-print-mini-table th:nth-child(3),
.commission-vat-report-page .report-print-mini-table td:nth-child(3),
.commission-vat-report-page .report-print-mini-table th:nth-child(4),
.commission-vat-report-page .report-print-mini-table td:nth-child(4),
.report-preview-shell .commission-vat-report-page .report-print-mini-table th:nth-child(3),
.report-preview-shell .commission-vat-report-page .report-print-mini-table td:nth-child(3),
.report-preview-shell .commission-vat-report-page .report-print-mini-table th:nth-child(4),
.report-preview-shell .commission-vat-report-page .report-print-mini-table td:nth-child(4) {
  width: 16.5% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* v1.3.217 - accommodation overview dashboard */
.accommodation-overview-title {
  margin-bottom: 14px;
}

.accommodation-overview-kpis {
  display: grid;
  grid-template-columns: repeat(6, minmax(145px, 1fr));
  gap: 10px;
  margin: 0 0 12px;
}

.accommodation-overview-kpi {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 86px;
  border: 1px solid var(--line);
  border-left: 4px solid #60a5fa;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
  color: var(--ink);
  box-shadow: 0 12px 28px rgba(15, 31, 53, .06);
}

.accommodation-overview-kpi:hover {
  color: var(--blue);
  transform: translateY(-1px);
  box-shadow: 0 16px 32px rgba(15, 31, 53, .09);
}

.accommodation-overview-kpi .icon-box {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: #eaf4ff;
  color: #0b63c7;
}

.accommodation-overview-kpi span:last-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.accommodation-overview-kpi small {
  color: var(--muted);
  font-size: .76rem;
  font-weight: 900;
  line-height: 1.1;
  text-transform: uppercase;
}

.accommodation-overview-kpi strong {
  color: var(--ink);
  font-size: clamp(1.08rem, 1vw, 1.36rem);
  font-weight: 900;
  line-height: 1.08;
  white-space: nowrap;
}

.accommodation-overview-kpi.is-cyan {
  border-left-color: #0891b2;
}

.accommodation-overview-kpi.is-cyan .icon-box {
  background: #ecfeff;
  color: #0891b2;
}

.accommodation-overview-kpi.is-green,
.accommodation-overview-kpi.is-emerald {
  border-left-color: #059669;
}

.accommodation-overview-kpi.is-green .icon-box,
.accommodation-overview-kpi.is-emerald .icon-box {
  background: #eafff3;
  color: #059669;
}

.accommodation-overview-kpi.is-orange {
  border-left-color: #f59e0b;
}

.accommodation-overview-kpi.is-orange .icon-box {
  background: #fff7ed;
  color: #c2410c;
}

.accommodation-overview-kpi.is-red {
  border-left-color: #ef4444;
}

.accommodation-overview-kpi.is-red .icon-box {
  background: #fff1f2;
  color: #dc2626;
}

.accommodation-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  gap: 12px;
  margin-bottom: 12px;
}

.accommodation-overview-grid-open {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.accommodation-overview-card {
  min-width: 0;
  overflow: hidden;
}

.accommodation-overview-card .table-card-head {
  align-items: center;
}

.accommodation-overview-heading {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.accommodation-overview-heading h2 {
  margin: 0;
}

.accommodation-overview-card .button-small {
  min-height: 36px;
  padding: 8px 11px;
  font-size: .82rem;
}

.accommodation-overview-day-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 0 22px 20px;
}

.accommodation-overview-day-grid h3 {
  margin: 0 0 8px;
  color: var(--muted);
  font-size: .8rem;
  font-weight: 900;
  text-transform: uppercase;
}

.accommodation-overview-card > .accommodation-overview-list {
  padding: 0 22px 20px;
}

.accommodation-overview-list {
  display: grid;
  gap: 8px;
}

.accommodation-overview-row {
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 52px;
  border: 1px solid #e6eef8;
  border-radius: 8px;
  background: #fbfdff;
  padding: 10px 12px;
  color: var(--ink);
}

.accommodation-overview-row.is-spread {
  grid-template-columns: 14px minmax(0, 1fr) auto;
}

.accommodation-overview-row:hover {
  border-color: #bfdbfe;
  background: #f4f9ff;
  color: var(--blue);
}

.accommodation-overview-row .unit-color {
  width: 10px;
  height: 10px;
  border-radius: 999px;
}

.accommodation-overview-row strong,
.accommodation-overview-table strong {
  display: block;
  color: var(--ink);
  font-weight: 900;
}

.accommodation-overview-row small,
.accommodation-overview-table small {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 800;
  line-height: 1.25;
}

.accommodation-overview-row b {
  color: var(--blue);
  white-space: nowrap;
}

.overview-empty {
  margin: 0;
  border: 1px dashed #d7e4f3;
  border-radius: 8px;
  background: #f8fbff;
  padding: 14px;
  color: var(--muted);
  font-weight: 800;
}

.accommodation-overview-table {
  width: 100% !important;
  min-width: 0 !important;
  table-layout: fixed;
}

.accommodation-overview-table th,
.accommodation-overview-table td {
  padding: 13px 14px;
  vertical-align: middle;
}

.accommodation-overview-table th:nth-child(1),
.accommodation-overview-table td:nth-child(1) {
  width: 34%;
}

.accommodation-overview-table th:nth-child(2),
.accommodation-overview-table td:nth-child(2) {
  width: 22%;
}

.accommodation-overview-table th:nth-child(3),
.accommodation-overview-table td:nth-child(3) {
  width: 22%;
  text-align: right;
  white-space: nowrap;
}

.accommodation-overview-table th:nth-child(4),
.accommodation-overview-table td:nth-child(4) {
  width: 96px;
  padding-left: 8px;
  padding-right: 14px;
  text-align: right;
}

.accommodation-overview-table .button-small {
  gap: 6px;
  width: 82px;
  min-width: 82px;
  padding-inline: 8px;
  white-space: nowrap;
}

.accommodation-overview-table td a:not(.button) {
  color: inherit;
}

@media (max-width: 1420px) {
  .accommodation-overview-kpis {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
  }
}

@media (max-width: 1080px) {
  .accommodation-overview-grid,
  .accommodation-overview-grid-open {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .accommodation-overview-kpis,
  .accommodation-overview-day-grid {
    grid-template-columns: 1fr;
  }

  .accommodation-overview-table,
  .accommodation-overview-table thead,
  .accommodation-overview-table tbody,
  .accommodation-overview-table tr,
  .accommodation-overview-table th,
  .accommodation-overview-table td {
    display: block;
    width: 100% !important;
    text-align: left !important;
  }

  .accommodation-overview-table thead {
    display: none;
  }

  .accommodation-overview-table tr {
    border-top: 1px solid var(--line);
  }
}

.invoice-page-a4 .document-items th:nth-child(1),
.invoice-page-a4 .document-items td:nth-child(1) {
  width: 5.5% !important;
  text-align: center !important;
}

.invoice-page-a4 .document-items th:nth-child(2),
.invoice-page-a4 .document-items td:nth-child(2) {
  width: 36% !important;
  text-align: left !important;
}

.invoice-page-a4 .document-items th:nth-child(3),
.invoice-page-a4 .document-items td:nth-child(3) {
  width: 7% !important;
  text-align: center !important;
}

.invoice-page-a4 .document-items th:nth-child(4),
.invoice-page-a4 .document-items td:nth-child(4) {
  width: 8% !important;
  text-align: right !important;
}

.invoice-page-a4 .document-items th:nth-child(5),
.invoice-page-a4 .document-items td:nth-child(5) {
  width: 10.5% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items th:nth-child(6),
.invoice-page-a4 .document-items td:nth-child(6) {
  width: 11% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4 .document-items th:nth-child(7),
.invoice-page-a4 .document-items td:nth-child(7) {
  width: 22% !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 800 !important;
}

/* Hosting module */
body.hosting-module-page .main {
  padding-top: 18px;
}

body.hosting-module-page .topbar {
  padding: 14px 20px;
  margin-bottom: 12px;
  min-height: 0;
}

body.hosting-module-page .topbar h1 {
  font-size: clamp(30px, 2.5vw, 38px);
  line-height: .98;
}

body.hosting-module-page .topbar .eyebrow {
  margin-bottom: 4px;
  font-size: 12px;
}

body.hosting-module-page .topbar .pill,
body.hosting-module-page .topbar .button {
  min-height: 38px;
  padding: 9px 13px;
}

.hosting-hero {
  border-left: 5px solid #0b63c7;
  background:
    linear-gradient(135deg, rgba(11, 99, 199, .08), rgba(21, 169, 221, .05)),
    #fff;
}

.hosting-hero-compact {
  align-items: center;
  min-height: 0;
  margin-bottom: 8px;
  padding: 11px 16px;
}

.hosting-hero-compact .eyebrow {
  margin-bottom: 2px;
  font-size: 12px;
}

.hosting-hero-compact h2 {
  margin: 0;
  font-size: clamp(22px, 1.9vw, 30px);
  line-height: 1.02;
}

.hosting-hero-compact .card-subtitle {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.2;
}

.hosting-hero-compact .hero-actions {
  gap: 8px;
}

.hosting-hero-compact .hero-actions .button {
  min-height: 38px;
  padding: 8px 12px;
}

.hosting-tabs a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.hosting-tabs a svg {
  width: 18px;
  height: 18px;
}

.hosting-tabs-compact {
  display: none;
  margin-bottom: 8px;
  padding: 6px;
  gap: 6px;
}

.hosting-tabs-compact a {
  min-height: 36px;
  padding: 8px 11px;
}

.hosting-service-payment-tabs {
  margin: 0 0 8px;
}

.finance-insight-panel.is-single {
  grid-template-columns: minmax(0, 1fr);
}

.finance-single-summary,
.report-finance-insight.is-single {
  margin-top: 14px;
}

.finance-period-split {
  color: var(--muted);
}

.finance-period-split dd {
  color: var(--text);
}

.report-summary-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.report-summary-group {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e1ebf5;
  border-radius: 8px;
  background: rgba(255, 255, 255, .82);
}

.report-summary-group h4 {
  margin: 0;
  padding: 10px 12px;
  border-bottom: 1px solid #e1ebf5;
  background: #f7faff;
  color: #52637a;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .035em;
  line-height: 1.2;
  text-transform: none;
}

.report-summary-group .finance-insight-list > div {
  padding: 10px 12px;
}

.report-summary-group .finance-insight-list .is-total {
  margin: 0;
  padding: 11px 12px;
  border-radius: 0;
}

@media (max-width: 880px) {
  .report-summary-columns {
    grid-template-columns: minmax(0, 1fr);
  }
}

.hosting-services-filter-top {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(420px, 1fr);
  align-items: end;
  gap: 14px;
}

.hosting-services-filter-top .hosting-search-field,
.hosting-services-filter-top .hosting-search-field input {
  width: 100%;
  max-width: none;
}

.hosting-services-filter-top .hosting-service-payment-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  margin: 0;
}

.hosting-services-filter-top .hosting-service-payment-tabs a {
  justify-content: center;
  min-width: 0;
  padding-inline: 10px;
  white-space: nowrap;
}

.hosting-services-filter-side {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.hosting-services-context-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.hosting-services-context-title {
  display: grid;
  gap: 1px;
  min-width: 150px;
}

.hosting-services-context-title span {
  color: #5f7187;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .045em;
  line-height: 1.1;
  text-transform: uppercase;
}

.hosting-services-context-title strong {
  color: #0f2947;
  font-size: 17px;
  line-height: 1.1;
  white-space: nowrap;
}

.hosting-service-year-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
  min-width: 300px;
}

.hosting-service-year-tabs a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 34px;
  padding: 5px 8px;
  border: 1px solid #d2dfed;
  border-radius: 8px;
  background: #fff;
  color: #52657d;
  text-decoration: none;
}

.hosting-service-year-tabs a:hover {
  border-color: #9fc6ee;
  background: #f6faff;
  color: #075fc7;
}

.hosting-service-year-tabs a.is-active {
  border-color: #7eb6ee;
  background: #eaf4ff;
  color: #075fc7;
  box-shadow: inset 0 0 0 1px rgba(7, 95, 199, .08);
}

.hosting-service-year-tabs small {
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}

.hosting-service-year-tabs strong {
  font-size: 13px;
  line-height: 1;
}

.hosting-filter-actions-row {
  margin-top: 8px;
}

.hosting-future-year-filter-note {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 50px;
  padding: 8px 12px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e4f8f;
}

.hosting-future-year-filter-note > i {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
}

.hosting-future-year-filter-note span {
  display: grid;
  gap: 2px;
}

.hosting-future-year-filter-note strong {
  color: #0f315f;
  font-size: 13px;
}

.hosting-future-year-filter-note small {
  color: #526b8a;
  font-size: 11px;
  font-weight: 750;
}

.hosting-future-year-banner {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
  padding: 12px 14px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #f4f8ff;
  color: #244a78;
}

.hosting-future-year-banner > i {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  margin-top: 1px;
}

.hosting-future-year-banner > div {
  display: grid;
  gap: 3px;
}

.hosting-future-year-banner strong {
  color: #102f57;
  font-size: 14px;
}

.hosting-future-year-banner span {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.hosting-service-payment-tabs a {
  gap: 8px;
}

.hosting-service-payment-tabs .count-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 22px;
  padding: 0 7px;
  border-radius: 999px;
  background: #e8f2ff;
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
}

.hosting-service-payment-tabs a.is-active .count-pill {
  background: var(--blue);
  color: #fff;
}

.hosting-service-payment-tabs a.is-not-renewed {
  color: #64748b;
}

.hosting-service-payment-tabs a.is-not-renewed.is-active {
  color: #334155;
}

.hosting-service-payment-tabs a.is-not-renewed.is-active .count-pill {
  background: #64748b;
  color: #fff;
}

@media (max-width: 1280px) {
  .hosting-services-filter-top .hosting-service-payment-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.hosting-summary-grid {
  margin-bottom: 8px;
}

.hosting-summary-strip {
  gap: 8px;
  margin-bottom: 8px;
}

.hosting-summary-strip .stat-card {
  min-height: 58px;
  padding: 10px 12px;
}

.hosting-summary-strip .stat-card span {
  margin-bottom: 4px;
  font-size: 12px;
}

.hosting-summary-strip .stat-card strong {
  font-size: 22px;
  line-height: 1.05;
}

.hosting-money-strip {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

body.hosting-module-page .hosting-summary-grid.hosting-summary-future {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  width: 100%;
}

.hosting-money-strip .stat-card {
  min-width: 0;
  border-color: #cfe1f3;
  background: #fff;
}

.hosting-money-strip .stat-card strong {
  max-width: 100%;
  font-size: clamp(18px, 1.05vw, 22px);
  white-space: nowrap;
}

.hosting-stat-count strong { color: #0f2a44; }
.hosting-stat-hosting strong { color: #154fe8; }
.hosting-stat-domain strong { color: #b45309; }
.hosting-stat-maintenance strong { color: #8a2be2; }
.hosting-stat-total strong { color: #087a3d; }
.hosting-stat-paid strong { color: #334155; }
.hosting-stat-unpaid strong { color: #b91c1c; }

.hosting-stat-hosting { border-color: #b9d4ff; background: #f6faff; }
.hosting-stat-domain { border-color: #f6d58b; background: #fffdf5; }
.hosting-stat-maintenance { border-color: #e5c9ff; background: #fdf7ff; }
.hosting-stat-total { border-color: #b8ebca; background: #f5fff8; }
.hosting-stat-unpaid { border-color: #ffbdbd; background: #fff7f7; }

.hosting-services-toolbar {
  margin-top: 0;
  margin-bottom: 8px;
}

.hosting-services-toolbar .hero-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.hosting-filter-card {
  margin-bottom: 8px;
}

.hosting-filter-card-compact {
  padding: 9px 12px;
  margin-bottom: 8px;
}

.hosting-filter-row {
  grid-template-columns: minmax(260px, 460px) auto auto auto;
  align-items: end;
  justify-content: start;
}

.hosting-filter-card-compact .hosting-filter-row {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: start;
}

body.hosting-module-page .hosting-filter-card-compact .hosting-filter-row > .field:first-child {
  flex: 0 1 460px;
  max-width: 460px;
  min-width: 260px;
}

body.hosting-module-page .hosting-filter-card-compact .hosting-filter-row > .field:has(select[name="status"]) {
  max-width: 260px;
}

.hosting-filter-card-compact .field {
  gap: 0;
}

.hosting-filter-card-compact .field label {
  display: none;
}

.hosting-filter-card-compact input,
.hosting-filter-card-compact select,
.hosting-filter-card-compact .button {
  min-height: 38px;
}

.hosting-auto-offer-form {
  display: inline-flex;
  margin: 0;
}

.system-logs-page .system-log-summary {
  margin-bottom: 18px;
}

.system-logs-page .system-log-stat.critical .icon-box {
  background: #fde2e2;
  color: #b42318;
}

.system-logs-page .system-log-stat.error .icon-box {
  background: #ffe8d5;
  color: #b54708;
}

.system-logs-page .system-log-stat.warning .icon-box {
  background: #fff3c4;
  color: #9a6700;
}

.system-logs-page .system-log-stat.info .icon-box {
  background: #e7f0ff;
  color: #0b63ce;
}

.system-log-help {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 18px;
}

.system-log-help h3 {
  margin: 0 0 6px;
  color: #004d9a;
}

.system-log-help p {
  margin: 0;
  color: #42526b;
}

.system-log-filters {
  display: grid;
  grid-template-columns: minmax(260px, 2fr) repeat(3, minmax(150px, 1fr));
  gap: 14px;
  align-items: end;
  margin-bottom: 18px;
}

.system-log-filter-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.system-log-table-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 18px 0;
}

.system-log-table-head h2 {
  margin: 0;
}

.system-log-sort-link span {
  color: #8aa0b7;
}

.system-log-table-card th[aria-sort="ascending"] .system-log-sort-link span,
.system-log-table-card th[aria-sort="descending"] .system-log-sort-link span {
  color: var(--blue);
}

.system-log-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 92px;
  padding: 7px 10px;
  border-radius: 999px;
  font-weight: 900;
  font-size: .82rem;
}

.system-log-badge.critical {
  background: #fde2e2;
  color: #b42318;
}

.system-log-badge.error {
  background: #ffe8d5;
  color: #b54708;
}

.system-log-badge.warning {
  background: #fff3c4;
  color: #9a6700;
}

.system-log-badge.info {
  background: #e7f0ff;
  color: #0b63ce;
}

.system-log-row td {
  vertical-align: top;
}

.system-log-row td:first-child,
.system-log-row td:nth-child(2),
.system-log-row td:last-child {
  width: 1%;
  white-space: nowrap;
}

.system-log-explanation {
  margin: 6px 0 0;
  color: #42526b;
  font-size: .93rem;
}

.system-log-details {
  margin-top: 10px;
  border: 1px solid #d8e6f7;
  border-radius: 8px;
  background: #f8fbff;
}

.system-log-details summary {
  cursor: pointer;
  padding: 10px 12px;
  font-weight: 900;
  color: #004d9a;
}

.system-log-exception,
.system-log-context {
  margin: 0 12px 12px;
}

.system-log-exception {
  display: grid;
  gap: 4px;
  padding: 10px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #dbe7f5;
}

.system-log-context {
  display: grid;
  grid-template-columns: minmax(120px, 180px) 1fr;
  gap: 6px 12px;
}

.system-log-context dt {
  color: #61718a;
  font-weight: 900;
}

.system-log-context dd {
  margin: 0;
  color: #10223d;
  word-break: break-word;
}

.system-log-details pre {
  margin: 0 12px 12px;
  max-height: 260px;
  overflow: auto;
  padding: 12px;
  border-radius: 8px;
  background: #0f172a;
  color: #e5eefb;
  font-size: .78rem;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
}

.system-log-empty {
  margin: 18px;
}

@media (max-width: 1100px) {
  .system-log-filters {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 720px) {
  .system-log-help,
  .system-log-filter-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .system-log-filters {
    grid-template-columns: 1fr;
  }

  .system-log-row td:first-child,
  .system-log-row td:nth-child(2),
  .system-log-row td:last-child {
    width: auto;
    white-space: normal;
  }

  .system-log-context {
    grid-template-columns: 1fr;
  }
}

.roko-admin-filter-card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-bottom: 18px;
  overflow: hidden;
}

.module-activity-filter.roko-admin-filter-card,
.system-log-filters.roko-admin-filter-card {
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
}

.module-activity-filter.roko-admin-filter-card .module-activity-search,
.system-log-filter-actions.roko-admin-filter-actions {
  grid-column: auto;
}

.roko-admin-filter-primary {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(150px, 180px) minmax(150px, 180px) auto minmax(0, auto);
  gap: 12px;
  align-items: end;
  min-width: 0;
}

.roko-admin-filter-primary .field,
.roko-admin-filter-search {
  min-width: 0;
}

.roko-admin-filter-primary input,
.roko-admin-filter-primary select,
.roko-admin-filter-advanced input,
.roko-admin-filter-advanced select {
  width: 100%;
  min-width: 0;
}

.roko-admin-filter-toggle {
  min-height: 42px;
  white-space: nowrap;
}

.roko-admin-filter-toggle[aria-expanded="true"] {
  border-color: rgba(0, 87, 194, .35);
  background: #eef6ff;
  color: var(--blue);
}

.roko-admin-filter-advanced[hidden] {
  display: none;
}

.roko-admin-filter-advanced {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  padding-top: 12px;
  border-top: 1px solid #d8e6f7;
}

.roko-admin-filter-actions,
.system-log-filter-actions.roko-admin-filter-actions,
.module-activity-filter-actions.roko-admin-filter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: end;
  min-width: 0;
}

.roko-admin-filter-actions .button {
  min-height: 42px;
  white-space: nowrap;
}

@media (max-width: 1320px) {
  .roko-admin-filter-primary {
    grid-template-columns: minmax(240px, 1fr) minmax(145px, 1fr) minmax(145px, 1fr);
  }

  .roko-admin-filter-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .roko-admin-filter-primary {
    grid-template-columns: 1fr 1fr;
  }

  .roko-admin-filter-search,
  .roko-admin-filter-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .roko-admin-filter-primary,
  .roko-admin-filter-advanced {
    grid-template-columns: 1fr;
  }

  .roko-admin-filter-toggle,
  .roko-admin-filter-actions .button {
    width: 100%;
  }
}

.hosting-auto-offer-form .button-small {
  min-height: 30px;
  padding: 6px 10px;
}

.hosting-service-status-cell {
  display: table-cell;
  min-width: 0;
  max-width: none;
  white-space: normal !important;
}

.hosting-service-status-cell br {
  display: none;
}

.hosting-service-status-cell .status-badge {
  max-width: 100%;
}

.hosting-status-stack {
  display: grid;
  gap: 4px;
  width: 100%;
  max-width: 230px;
}

.hosting-status-line {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 4px 7px;
  border: 1px solid #dbeafe;
  border-radius: 7px;
  background: #f8fbff;
  color: #10233f;
}

.hosting-payment-status-link {
  text-decoration: none;
  cursor: pointer;
  transition: border-color .14s ease, background .14s ease, box-shadow .14s ease, transform .14s ease;
}

.hosting-renewal-status-link {
  text-decoration: none;
  cursor: pointer;
  transition: border-color .14s ease, background .14s ease, box-shadow .14s ease, transform .14s ease;
}

.hosting-payment-status-link:hover {
  border-color: #93c5fd;
  background: #eff6ff;
  box-shadow: inset 3px 0 0 #0b63c7, 0 8px 18px rgba(11, 99, 199, .08);
  transform: translateY(-1px);
}

.hosting-renewal-status-link:hover {
  border-color: #fbbf24;
  background: #fff7d6;
  box-shadow: inset 3px 0 0 #f59e0b, 0 8px 18px rgba(245, 158, 11, .1);
  transform: translateY(-1px);
}

.hosting-status-line-title {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.1;
  text-transform: uppercase;
}

.hosting-status-line strong {
  min-width: 0;
  color: #0f2342;
  font-size: 11.5px;
  font-weight: 900;
  line-height: 1.15;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.hosting-status-line small {
  grid-column: 2;
  color: #53657d;
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.15;
}

.hosting-status-line em {
  color: #0b63c7;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  line-height: 1.1;
  white-space: nowrap;
}

.hosting-status-line.is-success {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.hosting-status-line.is-warning {
  border-color: #fde68a;
  background: #fffbeb;
}

.hosting-status-line.is-danger {
  border-color: #fecaca;
  background: #fff5f5;
}

.hosting-status-line.is-muted,
.hosting-status-line.is-neutral {
  border-color: #e2e8f0;
  background: #f8fafc;
}

.hosting-status-line.is-warning strong {
  color: #9a4b00;
}

.hosting-status-line.is-warning em {
  color: #9a4b00;
}

.hosting-status-line.is-danger strong {
  color: #b91c1c;
}

.hosting-status-line.is-success strong {
  color: #047857;
}

.hosting-services-table td[data-label="Paket"] .status-badge {
  min-height: 24px;
  margin-top: 4px;
  padding: 3px 8px;
  font-size: 11px;
}

.hosting-offer-number-link {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 28px;
  padding: 5px 10px;
  border: 1px solid #93c5fd;
  border-radius: 8px;
  background: #fff;
  color: var(--blue);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.1;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 5px 12px rgba(0, 87, 194, .12);
}

.hosting-offer-number-link:hover {
  background: #e0f2fe;
  border-color: #60a5fa;
  color: var(--blue-dark);
}

.hosting-offer-summary {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  width: 100%;
  margin-top: 2px;
  padding: 6px 7px;
  border: 1px solid #bfdbfe;
  border-radius: 7px;
  background: linear-gradient(180deg, #f8fbff 0%, #eef6ff 100%);
  box-shadow: inset 3px 0 0 var(--blue), 0 6px 16px rgba(15, 23, 42, .06);
}

.hosting-offer-summary > strong {
  color: var(--blue-dark);
  font-size: 12px;
  font-weight: 950;
  line-height: 1.1;
}

.hosting-offer-summary > span:not(.hosting-offer-summary-label) {
  color: #315b90;
  font-size: 10.5px;
  font-weight: 850;
}

.hosting-offer-summary-label {
  color: #315b90;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.1;
  text-transform: uppercase;
  white-space: nowrap;
}

.hosting-offer-summary .status-badge {
  font-size: 11px;
}

.hosting-maintenance-card {
  display: grid;
  gap: 12px;
  margin: 12px 0 16px;
  padding: 14px 16px;
  border: 1px solid #fecaca;
  border-radius: 8px;
  background: #fff7f7;
}

.hosting-maintenance-card > div:first-child {
  display: grid;
  gap: 3px;
}

.hosting-maintenance-card strong {
  color: var(--blue);
  font-size: 16px;
}

.hosting-maintenance-card small {
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}

.hosting-maintenance-card .hosting-maintenance-grid {
  margin: 0;
}

.hosting-heading-with-help {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
}

.hosting-heading-with-help h2 {
  margin: 0;
}

.hosting-table-help .finance-info-tooltip {
  width: min(420px, calc(100vw - 48px));
}

.hosting-status-heading {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

.hosting-status-heading .table-sort-link {
  display: inline-flex;
  align-items: center;
}

.hosting-status-help .finance-info-tip {
  width: 18px;
  height: 18px;
  font-size: 11px;
}

.hosting-status-help .finance-info-tooltip {
  left: auto;
  right: 0;
  width: min(390px, calc(100vw - 48px));
  transform: translateY(4px);
}

.hosting-status-help .finance-info-tooltip::before {
  left: auto;
  right: 13px;
  transform: rotate(45deg);
}

.hosting-status-help:hover .finance-info-tooltip,
.hosting-status-help:focus-within .finance-info-tooltip {
  transform: translateY(0);
}

.hosting-service-status-cell .button-small,
.hosting-service-status-cell .hosting-auto-offer-form .button-small {
  min-height: 27px;
  padding: 5px 7px;
  font-size: 11px;
  line-height: 1.1;
}

.hosting-status-open-button {
  white-space: nowrap;
}

.hosting-status-primary-action {
  justify-content: center;
  width: auto;
  margin-top: 0;
  border-color: #fbbf24 !important;
  background: #fffbeb !important;
  color: #92400e !important;
  font-weight: 950;
}

.hosting-service-status-cell .hosting-auto-offer-form {
  margin-top: 0;
}

.hosting-filter-card-compact .hosting-search-field,
.hosting-filter-card-compact .hosting-search-field input {
  width: min(460px, 100%);
}

.hosting-filter-card-compact .hosting-filter-advanced {
  grid-template-columns: repeat(2, minmax(180px, 260px));
  align-items: end;
  justify-content: start;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #dbe7f5;
}

.hosting-filter-card-compact .hosting-service-filter-grid {
  grid-template-columns: repeat(5, minmax(140px, 190px));
}

.hosting-filter-card-compact .hosting-filter-advanced[hidden] {
  display: none !important;
}

.hosting-filter-card-compact .hosting-filter-advanced .field {
  gap: 5px;
}

.hosting-filter-card-compact .hosting-filter-advanced .field label {
  display: block;
}

body.hosting-module-page .accommodation-section {
  margin-top: 10px;
}

body.hosting-module-page .main {
  min-width: 0;
  max-width: 100%;
}

body.hosting-module-page .card,
body.hosting-module-page .table-card,
body.hosting-module-page .stat-card {
  border-radius: 7px;
}

body.hosting-module-page .grid-2,
body.hosting-module-page .grid-3,
body.hosting-module-page .grid-4,
body.hosting-module-page .grid-5 {
  gap: 12px;
}

.hosting-card-head,
.hosting-card-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.hosting-card-head h2,
.hosting-card-title h2 {
  margin: 2px 0 0;
}

.hosting-section-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 8px;
}

.hosting-section-toolbar h2 {
  margin: 2px 0 0;
  font-size: 22px;
  line-height: 1.1;
}

.hosting-section-toolbar .button {
  min-height: 38px;
  padding: 8px 12px;
}

.hosting-mini-list {
  display: grid;
  gap: 10px;
}

.hosting-mini-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
}

.hosting-mini-row:hover {
  border-color: #9fc8ef;
  background: #eef7ff;
}

.hosting-mini-row span {
  display: grid;
  gap: 3px;
}

.hosting-mini-row small,
.muted-small {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.hosting-mini-row em {
  color: var(--blue);
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}

.amount-blue {
  color: #0b63c7;
  font-weight: 900;
  white-space: nowrap;
}

.amount-danger {
  color: #d22f27;
  font-weight: 900;
  white-space: nowrap;
}

.amount-domain {
  color: #b45309;
  font-weight: 850;
  white-space: nowrap;
}

.amount-maintenance {
  color: #8a2be2;
  font-weight: 850;
  white-space: nowrap;
}

.hosting-table-card {
  margin-top: 0;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  max-height: none;
}

.hosting-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}

.hosting-services-table {
  table-layout: fixed;
  min-width: 0;
}

.hosting-services-table th,
.hosting-services-table td {
  overflow-wrap: anywhere;
}

.hosting-services-table tbody td {
  vertical-align: top;
}

.hosting-services-table td:nth-child(5),
.hosting-services-table td:nth-child(6),
.hosting-services-table td:nth-child(7),
.hosting-services-table td:nth-child(8),
.hosting-services-table td:nth-child(9) {
  white-space: nowrap;
  overflow-wrap: normal;
}

.hosting-services-table td:nth-child(3) {
  white-space: nowrap;
  overflow-wrap: normal;
}

.hosting-services-table th:nth-child(1),
.hosting-services-table td:nth-child(1) {
  width: 17%;
}

.hosting-services-table th:nth-child(2),
.hosting-services-table td:nth-child(2) {
  width: 9%;
}

.hosting-services-table th:nth-child(3),
.hosting-services-table td:nth-child(3),
.hosting-services-table th:nth-child(4),
.hosting-services-table td:nth-child(4) {
  width: 8%;
}

.hosting-services-table th:nth-child(5),
.hosting-services-table td:nth-child(5),
.hosting-services-table th:nth-child(6),
.hosting-services-table td:nth-child(6),
.hosting-services-table th:nth-child(7),
.hosting-services-table td:nth-child(7),
.hosting-services-table th:nth-child(8),
.hosting-services-table td:nth-child(8),
.hosting-services-table th:nth-child(9),
.hosting-services-table td:nth-child(9) {
  width: 7.5%;
}

.hosting-services-table th:nth-child(10),
.hosting-services-table td:nth-child(10) {
  width: 20%;
}

.hosting-services-table-readonly th:nth-child(1),
.hosting-services-table-readonly td:nth-child(1) {
  width: 22%;
}

.hosting-services-table-readonly th:nth-child(2),
.hosting-services-table-readonly td:nth-child(2) {
  width: 12%;
}

.hosting-services-table-readonly th:nth-child(3),
.hosting-services-table-readonly td:nth-child(3),
.hosting-services-table-readonly th:nth-child(4),
.hosting-services-table-readonly td:nth-child(4) {
  width: 11%;
}

.hosting-services-table-readonly th:nth-child(5),
.hosting-services-table-readonly td:nth-child(5),
.hosting-services-table-readonly th:nth-child(6),
.hosting-services-table-readonly td:nth-child(6),
.hosting-services-table-readonly th:nth-child(7),
.hosting-services-table-readonly td:nth-child(7) {
  width: 10%;
}

.hosting-services-table-readonly th:nth-child(8),
.hosting-services-table-readonly td:nth-child(8) {
  width: 14%;
}

body.hosting-module-page .hosting-table-card {
  max-width: 100%;
}

body.hosting-module-page .hosting-table:not(.hosting-services-table) td:first-child,
body.hosting-module-page .hosting-table:not(.hosting-services-table) th:first-child {
  min-width: 230px;
}

body.hosting-module-page .hosting-offers-table td:first-child,
body.hosting-module-page .hosting-offers-table th:first-child {
  width: 92px;
  min-width: 92px;
}

.hosting-offers-table th:nth-child(2),
.hosting-offers-table td:nth-child(2) {
  width: 24%;
  min-width: 180px;
}

.hosting-offers-table th:nth-child(3),
.hosting-offers-table td:nth-child(3) {
  width: 34%;
  min-width: 240px;
  overflow-wrap: anywhere;
}

.hosting-offers-table th:nth-child(4),
.hosting-offers-table td:nth-child(4),
.hosting-offers-table th:nth-child(5),
.hosting-offers-table td:nth-child(5) {
  width: 116px;
  white-space: nowrap;
}

.hosting-offers-table th:nth-child(6),
.hosting-offers-table td:nth-child(6) {
  width: 126px;
  white-space: nowrap;
}

.hosting-offers-table th:nth-child(7),
.hosting-offers-table td:nth-child(7) {
  width: 112px;
  white-space: nowrap;
}

.hosting-table th,
.hosting-table td {
  padding: 9px 10px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.hosting-table th {
  color: var(--muted);
  background: #f8fbff;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.hosting-table .hosting-clickable-row {
  cursor: pointer;
  transition: background .14s ease, box-shadow .14s ease;
}

.hosting-table .hosting-clickable-row:hover {
  background: #f4f9ff;
  box-shadow: inset 4px 0 0 var(--blue);
}

.hosting-table .hosting-clickable-row.is-focus-return {
  background: #fff7ed;
  box-shadow: inset 4px 0 0 #f59e0b;
}

.hosting-table .hosting-clickable-row.is-focus-pulse {
  animation: hosting-focus-pulse 1.1s ease-in-out 2;
}

@keyframes hosting-focus-pulse {
  0%, 100% {
    background: #fff7ed;
    box-shadow: inset 4px 0 0 #f59e0b;
  }
  50% {
    background: #ffedd5;
    box-shadow: inset 6px 0 0 #ea580c;
  }
}

.hosting-table th.hosting-js-sortable {
  cursor: pointer;
  user-select: none;
}

.hosting-table th.hosting-js-sortable::after {
  content: " \2195";
  color: #8aa0b8;
  font-size: 12px;
  font-weight: 950;
}

.hosting-table th.hosting-js-sortable[data-sort-dir="asc"]::after {
  content: " \2191";
  color: var(--blue);
}

.hosting-table th.hosting-js-sortable[data-sort-dir="desc"]::after {
  content: " \2193";
  color: var(--blue);
}

.table-sort-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: inherit;
}

.table-sort-link:hover {
  color: var(--blue);
}

.table-sort-link span {
  color: #8aa0b8;
  font-size: 12px;
  font-weight: 950;
}

.hosting-table td {
  font-size: 14px;
}

.hosting-table td strong {
  line-height: 1.2;
}

.hosting-table td:nth-last-child(-n+4):not(.actions) {
  white-space: nowrap;
}

.hosting-table .actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  white-space: nowrap;
}

.hosting-table .actions form {
  margin: 0;
}

.hosting-package-grid {
  gap: 10px;
}

.hosting-package-grid .card {
  padding: 14px;
}

.hosting-expiry-dot {
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-right: 8px;
  border-radius: 999px;
  background: #20b36b;
  box-shadow: 0 0 0 5px rgba(32, 179, 107, .12);
  vertical-align: middle;
}

.hosting-expiry-dot.is-warning {
  background: #f59e0b;
  box-shadow: 0 0 0 5px rgba(245, 158, 11, .16);
}

.hosting-renewal-cell {
  display: grid;
  align-items: start;
  gap: 5px;
  min-width: 104px;
}

.hosting-renewal-cell > strong {
  color: var(--ink);
  font-weight: 900;
  white-space: nowrap;
}

.hosting-payment-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 950;
  line-height: 1;
}

.hosting-payment-badge.is-paid {
  color: #047857;
  background: #dff7e9;
}

.hosting-payment-badge.is-late {
  color: #b91c1c;
  background: #fee2e2;
}

.hosting-payment-badge.is-soon {
  color: #a16207;
  background: #fef3c7;
}

.hosting-payment-badge.is-not-due {
  color: #10233f;
  background: #eef4fb;
}

.hosting-payment-badge.is-not-renewed {
  color: #475569;
  background: #e2e8f0;
}

.hosting-paid-cell strong {
  white-space: nowrap;
}

.hosting-paid-cell.is-paid strong {
  color: #047857;
}

.hosting-paid-cell.is-late strong {
  color: #b91c1c;
}

.hosting-paid-cell.is-soon strong {
  color: #a16207;
}

.hosting-paid-cell.is-not-due strong {
  color: #10233f;
}

.hosting-package-card {
  display: grid;
  gap: 11px;
}

.hosting-package-price {
  color: var(--blue);
  font-size: 24px;
  line-height: 1;
}

.hosting-spec-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.hosting-spec-grid span {
  display: grid;
  gap: 2px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-weight: 800;
}

.hosting-spec-grid strong {
  color: var(--ink);
}

.hosting-report-card {
  border-left: 5px solid #73b8ff;
  padding: 18px;
}

.hosting-report-card.is-green {
  border-left-color: #0f9f6e;
}

.hosting-report-lines {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.hosting-report-lines span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  font-weight: 900;
  text-transform: uppercase;
}

.hosting-report-lines strong {
  color: var(--ink);
  font-size: 19px;
  text-transform: none;
}

.hosting-settings-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
  gap: 14px;
  align-items: start;
}

.hosting-settings-card {
  display: grid;
  gap: 12px;
}

.hosting-settings-card.table-card {
  padding: 16px;
}

.hosting-settings-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.hosting-settings-panel {
  overflow: hidden;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
}

.hosting-settings-panel summary {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 14px 16px;
  cursor: pointer;
  list-style: none;
}

.hosting-settings-panel summary::-webkit-details-marker {
  display: none;
}

.hosting-settings-panel summary span {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  color: #0b63c7;
  background: #eaf4ff;
}

.hosting-settings-panel summary strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.2;
}

.hosting-settings-panel summary small {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.hosting-settings-panel-body {
  padding: 0 16px 16px;
}

.hosting-settings-panel-body > .eyebrow:first-child,
.hosting-settings-panel-body > .eyebrow:first-child + h2,
.hosting-settings-panel-body > .eyebrow:first-child + h2 + .card-subtitle {
  display: none;
}

.hosting-settings-panel-body .field-span-2 {
  grid-column: 1 / -1;
}

.option-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-height: 76px;
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
}

.option-card input {
  width: 20px;
  height: 20px;
  margin-top: 2px;
  flex: 0 0 auto;
}

.option-card strong,
.settings-check-row strong {
  color: var(--ink);
}

.option-card small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-weight: 800;
  line-height: 1.35;
}

.settings-check-list {
  display: grid;
  gap: 8px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #d6e4f5;
}

.settings-check-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
}

.settings-check-row input {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
}

.business-settings-form .business-settings-accordion {
  margin: 0;
}

.hosting-settings-panel-documents.business-nkd-settings-panel .hosting-settings-panel-body {
  grid-template-columns: minmax(0, 1fr);
}

.business-nkd-settings-panel .hosting-card-head,
.business-nkd-settings-panel .nkd-structured-editor,
.business-nkd-settings-panel .business-nkd-mode-head,
.business-nkd-settings-panel .business-nkd-mode-grid,
.business-nkd-settings-panel .alert-box {
  grid-column: 1 / -1;
}

.business-nkd-settings-panel .hosting-card-head {
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
}

.business-nkd-settings-panel .nkd-structured-editor {
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
}

.business-nkd-mode-head {
  margin-top: 2px;
}

.business-nkd-mode-head h3 {
  margin: 2px 0 0;
  font-size: 18px;
  color: var(--ink);
}

.hosting-settings-panel-documents .hosting-settings-panel-body {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
  align-items: start;
}

.hosting-settings-panel-documents .hosting-settings-panel-body > .field:has(textarea) {
  grid-column: 1 / -1;
}

.hosting-settings-panel-documents .hosting-settings-panel-body > .field p {
  min-height: 32px;
}

.hosting-settings-panel > .field {
  padding: 0 16px 16px;
}

.hosting-settings-panel-email {
  border-color: #ccebdc;
  background: #f3fbf7;
}

.hosting-settings-panel-email summary span {
  color: #047857;
  background: #dcfce7;
}

.hosting-settings-panel-automation {
  border-color: #b7e4cc;
  background: #f2fbf6;
}

.hosting-settings-panel-automation summary span {
  color: #047857;
  background: #dcfce7;
}

.hosting-email-automation-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  padding: 12px;
  border: 1px solid #bfebd0;
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
}

.hosting-auto-master-row {
  margin-bottom: 8px;
}

.hosting-auto-master-toggle {
  flex: 1 1 auto;
  width: 100%;
  min-height: 58px;
  margin: 0;
}

.hosting-auto-master-toggle > span {
  display: grid;
  gap: 2px;
}

.hosting-auto-master-toggle strong {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.2;
}

.hosting-auto-master-toggle small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

.hosting-email-automation-row .finance-info-wrap {
  position: relative;
  flex: 0 0 auto;
}

.hosting-settings-panel-tlds {
  border-color: #f2d99a;
  background: #fff8e7;
}

.hosting-settings-panel-tlds summary span {
  color: #b45309;
  background: #fef3c7;
}

.hosting-tld-settings-card {
  align-self: start;
}

.hosting-tld-list {
  display: grid;
  gap: 12px;
}

.hosting-tld-row {
  display: grid;
  grid-template-columns: minmax(72px, .75fr) minmax(90px, .85fr) minmax(120px, 1fr) minmax(82px, .72fr);
  gap: 8px;
  align-items: end;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbff;
}

.hosting-tld-row .field,
.hosting-tld-row input {
  min-width: 0;
}

.hosting-tld-row .checkbox-line {
  grid-column: 1 / -1;
  min-height: 34px;
  margin-top: 2px;
  padding: 7px 10px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: rgba(255,255,255,.7);
}

.hosting-drawer-shell .unit-drawer,
.hosting-payment-shell .unit-drawer {
  width: min(980px, 72vw);
}

.hosting-service-drawer {
  width: min(1060px, 76vw);
}

.hosting-drawer-shell .hosting-service-drawer {
  width: min(1060px, 76vw);
}

.hosting-domain-drawer {
  width: min(980px, 72vw);
}

.hosting-package-drawer {
  width: min(980px, 72vw);
}

#service-form,
#package-form {
  display: none;
}

.hosting-service-form-modern {
  display: grid;
  gap: 14px;
}

.hosting-service-workspace {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(340px, 1fr);
  gap: 16px;
  align-items: start;
}

.hosting-service-editor {
  min-width: 0;
}

.hosting-invoice-sidebar {
  position: sticky;
  top: 190px;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto auto;
  max-height: calc(100dvh - 210px);
  min-width: 0;
  padding: 12px;
  border: 1px solid #c9dced;
  border-radius: 10px;
  background: #f7fbff;
  box-shadow: 0 10px 28px rgba(27, 61, 97, .09);
}

.hosting-invoice-sidebar-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 2px 2px 10px;
}

.hosting-invoice-sidebar-head > div {
  display: grid;
  gap: 3px;
}

.hosting-invoice-sidebar-head span {
  color: #0d315c;
  font-size: 13px;
  font-weight: 950;
  text-transform: uppercase;
}

.hosting-invoice-sidebar-head small {
  color: #65768c;
  font-size: 10px;
  font-weight: 750;
}

.hosting-invoice-sidebar-head > strong {
  padding: 4px 7px;
  border-radius: 999px;
  background: #e6f2ff;
  color: #075fc7;
  font-size: 10px;
  white-space: nowrap;
}

.hosting-invoice-line-head,
.hosting-invoice-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px 70px 78px;
  gap: 6px;
  align-items: center;
}

.hosting-invoice-line-head {
  padding: 7px 8px;
  border-bottom: 1px solid #d7e3ef;
  color: #65768b;
  font-size: 9px;
  font-weight: 900;
  text-align: right;
  text-transform: uppercase;
}

.hosting-invoice-line-head span:first-child {
  text-align: left;
}

.hosting-invoice-lines {
  min-height: 0;
  overflow-y: auto;
  scrollbar-width: thin;
}

.hosting-invoice-line {
  width: 100%;
  min-height: 54px;
  padding: 8px;
  border: 0;
  border-bottom: 1px solid #e1e9f1;
  background: transparent;
  color: #102b4b;
  font: inherit;
  text-align: right;
  cursor: pointer;
}

.hosting-invoice-line:hover {
  border-radius: 7px;
  background: #fff;
  box-shadow: inset 3px 0 0 #1683e7;
}

.hosting-invoice-line-item {
  display: grid;
  gap: 3px;
  min-width: 0;
  text-align: left;
}

.hosting-invoice-line-item strong {
  overflow: hidden;
  color: #102b4b;
  font-size: 12px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hosting-invoice-line-item small {
  width: fit-content;
  padding: 2px 5px;
  border-radius: 999px;
  background: #eef4fa;
  color: #5b7088;
  font-size: 8px;
  font-weight: 900;
  text-transform: uppercase;
}

.hosting-invoice-line > span:not(.hosting-invoice-line-item),
.hosting-invoice-line > strong {
  font-size: 10px;
  white-space: nowrap;
}

.hosting-invoice-line > strong {
  color: #075fc7;
  font-size: 11px;
}

.hosting-invoice-empty {
  padding: 16px 8px;
  color: #66788d;
  font-size: 11px;
  font-weight: 750;
  text-align: center;
}

.hosting-invoice-sidebar-totals {
  display: grid;
  gap: 7px;
  padding-top: 10px;
  border-top: 1px solid #cbd9e7;
}

.hosting-invoice-sidebar-totals > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 3px;
}

.hosting-invoice-sidebar-totals span {
  color: #5f7187;
  font-size: 11px;
  font-weight: 850;
}

.hosting-invoice-sidebar-totals strong {
  color: #102b4b;
  font-size: 13px;
  white-space: nowrap;
}

.hosting-invoice-sidebar-totals .is-grand-total {
  margin-top: 2px;
  padding: 10px;
  border: 1px solid #8ed9aa;
  border-radius: 8px;
  background: #edfff3;
}

.hosting-invoice-sidebar-totals .is-grand-total span {
  color: #087632;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.hosting-invoice-sidebar-totals .is-grand-total strong {
  color: #087632;
  font-size: 20px;
}

.hosting-form-tabs {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.hosting-service-drawer-head {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(0, auto);
  gap: 12px 22px;
  align-items: center;
}

.hosting-service-drawer-head .hero-actions {
  justify-content: flex-end;
  margin-top: 0;
}

.hosting-service-drawer-head > .hosting-drawer-title {
  grid-column: 1;
  grid-row: 1;
}

.hosting-service-drawer-head > .hosting-drawer-tabs {
  grid-column: 1 / -1;
  grid-row: 2;
}

.hosting-service-drawer-head > .hosting-service-actions {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
}

.hosting-service-drawer-head > .hosting-renewal-action {
  grid-column: 1 / -1;
  grid-row: 3;
}

.hosting-drawer-title {
  min-width: 0;
}

.hosting-drawer-title h2 {
  margin: 4px 0 0;
  line-height: 1.08;
  overflow-wrap: anywhere;
}

.hosting-drawer-tabs {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  flex-wrap: nowrap;
  padding: 4px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f7fbff;
}

.hosting-drawer-actions {
  display: grid !important;
  gap: 8px !important;
  align-items: stretch;
  justify-content: stretch !important;
}

.hosting-service-actions {
  width: auto;
  max-width: none;
}

.hosting-drawer-actions form {
  display: contents;
}

.hosting-service-actions form {
  display: block;
}

.hosting-service-actions form .button {
  width: auto;
}

.hosting-service-actions-main {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  gap: 6px;
  align-items: stretch;
}

.hosting-service-actions-main form {
  display: flex;
  flex: 0 0 auto;
}

.hosting-service-actions-main .button {
  width: auto;
  min-width: 96px;
}

.hosting-service-actions-main .hosting-service-delete-action .button {
  min-width: 118px;
}

.hosting-drawer-actions .button {
  min-height: 42px;
  justify-content: center;
  white-space: nowrap;
}

.hosting-service-actions .button {
  min-height: 32px;
  padding: 6px 8px;
  font-size: 11.5px;
}

.hosting-renewal-action {
  display: grid !important;
  grid-template-columns: minmax(190px, 260px) minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  width: 100%;
  padding: 10px;
  border: 1px solid #cfe0f4;
  border-radius: 8px;
  background: #f7fbff;
}

.hosting-renewal-action .button {
  width: auto;
  min-width: 170px;
}

.hosting-renewal-action-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.hosting-renewal-action-copy strong {
  color: #0b5bc4;
  font-size: 13px;
  line-height: 1.2;
}

.hosting-renewal-action-copy small {
  color: #536985;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
}

.hosting-renewal-change-list {
  display: grid;
  gap: 4px;
}

.hosting-renewal-change-list small {
  overflow-wrap: anywhere;
}

.hosting-renewal-change-list b {
  color: #274566;
  font-weight: 800;
}

.hosting-price-review-panel {
  display: grid;
  gap: 12px;
  margin: 0 0 16px;
  padding: 14px 16px;
  border: 1px solid #facc15;
  border-radius: 8px;
  background: #fffbeb;
}

.hosting-price-review-panel > div:first-child {
  display: grid;
  gap: 3px;
}

.hosting-price-review-panel strong {
  color: #92400e;
  font-size: 16px;
  line-height: 1.2;
}

.hosting-price-review-panel small {
  color: #6b7280;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

.hosting-price-review-list {
  display: grid;
  gap: 8px;
}

.hosting-price-review-row {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(180px, 1.2fr) auto;
  gap: 10px;
  align-items: center;
  padding: 9px 10px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fff;
}

.hosting-price-review-row span,
.hosting-price-review-row strong {
  font-size: 13px;
}

.hosting-price-review-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
}

.hosting-price-review-actions form {
  margin: 0;
}

.hosting-domain-drawer-head {
  grid-template-columns: minmax(220px, 1fr) auto;
}

.hosting-domain-actions {
  grid-template-columns: repeat(3, minmax(132px, auto));
}

.hosting-package-drawer-head {
  grid-template-columns: minmax(220px, 1fr) auto;
}

.hosting-package-actions {
  grid-template-columns: repeat(3, minmax(132px, auto));
}

.hosting-form-tab {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 32px;
  padding: 5px 7px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--muted);
  background: transparent;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.hosting-form-tab svg {
  width: 16px;
  height: 16px;
}

.hosting-form-tab.is-active {
  color: #fff;
  background: var(--blue);
  box-shadow: none;
}

@media (max-width: 1320px) {
  .hosting-service-drawer-head {
    grid-template-columns: minmax(360px, 1fr) auto;
  }

  .hosting-drawer-actions {
    grid-column: 1 / -1;
    justify-content: end !important;
  }

  .hosting-service-actions {
    grid-column: 2;
    grid-row: 1;
    justify-content: end !important;
  }

  .hosting-domain-actions {
    grid-template-columns: repeat(3, auto);
  }

  .hosting-package-actions {
    grid-template-columns: repeat(3, auto);
  }
}

@media (max-width: 1120px) {
  .hosting-service-drawer-head {
    grid-template-columns: 1fr;
  }

  .hosting-service-workspace {
    grid-template-columns: 1fr;
  }

  .hosting-invoice-sidebar {
    position: static;
    order: -1;
    max-height: none;
  }

  .hosting-invoice-lines {
    max-height: 260px;
  }

  .hosting-service-drawer-head > .hosting-drawer-title,
  .hosting-service-drawer-head > .hosting-drawer-tabs,
  .hosting-service-drawer-head > .hosting-service-actions,
  .hosting-service-drawer-head > .hosting-renewal-action {
    grid-column: 1;
    grid-row: auto;
  }

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

  .hosting-invoice-summary-title {
    grid-column: 1 / -1;
  }

  .hosting-drawer-actions {
    justify-content: stretch !important;
  }

  .hosting-domain-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hosting-package-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hosting-renewal-action {
    grid-template-columns: 1fr;
  }

  .hosting-renewal-action .button {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 640px) {
  .hosting-drawer-tabs {
    max-width: 100%;
    overflow-x: auto;
  }

  .hosting-service-actions-main {
    flex-wrap: wrap;
    justify-content: stretch;
  }

  .hosting-service-actions-main > .button,
  .hosting-service-actions-main > form {
    flex: 1 1 calc(50% - 6px);
  }

  .hosting-service-actions-main .button {
    width: 100%;
  }

  .hosting-invoice-summary,
  .hosting-payment-status-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hosting-invoice-summary-title,
  .hosting-invoice-summary-total {
    grid-column: 1 / -1;
  }

  .hosting-domain-subtabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .hosting-domain-subtabs button {
    justify-content: center;
  }
}

.hosting-service-form-modern .settings-section {
  margin: 0;
  border-radius: 8px;
}

.hosting-form-section h3 {
  margin-bottom: 14px;
}

.hosting-section-client {
  border-color: #bdd7f3;
  background: #f2f8ff;
}

.hosting-section-domain {
  border-color: #9ee6b2;
  background: #f1fff5;
}

.hosting-section-package {
  border-color: #f2d37d;
  background: #fffaf0;
}

.hosting-section-addons {
  border-color: #efc3a2;
  background: #fff8f2;
}

.hosting-section-payment {
  border-color: #c9d9ec;
  background: #f7faff;
}

.hosting-section-intro {
  margin: -6px 0 14px;
  color: #5f7187;
  font-size: 12px;
  font-weight: 750;
}

.hosting-duration-panel {
  display: grid;
  gap: 12px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #d4e3f2;
}

.hosting-duration-panel > div:first-child {
  display: grid;
  gap: 3px;
}

.hosting-duration-panel > div:first-child strong {
  color: #0c4d91;
  font-size: 15px;
}

.hosting-duration-panel > div:first-child small {
  color: #5f7187;
  font-size: 11px;
  font-weight: 750;
}

.hosting-domain-subtabs {
  display: inline-flex;
  gap: 5px;
  margin: -4px 0 14px;
  padding: 4px;
  border: 1px solid #bce6c8;
  border-radius: 8px;
  background: #eafff0;
}

.hosting-domain-subtabs button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 6px 11px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #47705a;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.hosting-domain-subtabs button svg {
  width: 15px;
  height: 15px;
}

.hosting-domain-subtabs button.is-active {
  background: #fff;
  color: #08763a;
  box-shadow: 0 1px 4px rgba(20, 95, 55, .12);
}

.hosting-payment-status-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.hosting-payment-status-cards > div {
  display: grid;
  gap: 5px;
  padding: 14px;
  border: 1px solid #d7e2ef;
  border-radius: 8px;
  background: #fff;
}

.hosting-payment-status-cards span {
  color: #63748a;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.hosting-payment-status-cards strong {
  color: #102b4b;
  font-size: 21px;
}

.hosting-payment-status-cards .is-open {
  border-color: #f6c87e;
  background: #fffaf0;
}

.hosting-payment-status-cards .is-open strong {
  color: #b45309;
}

.hosting-payment-status-cards .is-paid {
  border-color: #9cddb3;
  background: #f1fff6;
}

.hosting-payment-status-cards .is-paid strong {
  color: #087632;
}

.hosting-payment-tab-action {
  width: fit-content;
  margin-top: 12px;
}

.hosting-payment-save-note {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  color: #315b89;
  font-size: 12px;
  font-weight: 800;
}

.hosting-payment-save-note svg {
  width: 18px;
  height: 18px;
}

@media (max-width: 640px) {
  .hosting-payment-status-cards {
    grid-template-columns: 1fr;
  }

  .hosting-domain-subtabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .hosting-domain-subtabs button {
    justify-content: center;
  }
}

.hosting-section-maintenance {
  border-color: #ffb9b9;
  background: #fff5f5;
}

.hosting-section-automation {
  border-color: #9de8ef;
  background: #effdff;
}

.hosting-section-notes {
  border-color: #d8e4f1;
  background: #fff;
}

.hosting-service-wizard .hosting-section-duration,
.hosting-service-wizard .hosting-section-maintenance,
.hosting-service-wizard .hosting-section-automation,
.hosting-service-wizard .hosting-section-notes {
  padding: 16px 20px;
}

.hosting-service-wizard .hosting-section-duration .grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hosting-service-wizard .hosting-section-maintenance .grid-2 {
  align-items: start;
}

.hosting-service-wizard .hosting-section-maintenance .hosting-toggle-line,
.hosting-service-wizard .hosting-section-automation .hosting-toggle-line {
  min-height: 58px;
}

.hosting-service-wizard .hosting-section-notes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.hosting-toggle-line {
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}

.hosting-new-client-grid {
  margin-top: 12px;
}

.hosting-new-client-panel {
  margin-top: 10px;
}

.hosting-new-client-panel > summary {
  cursor: pointer;
  color: #53667d;
  font-size: 13px;
  font-weight: 900;
}

.hosting-package-main-grid,
.hosting-inline-select-row,
.hosting-article-row,
.hosting-price-row {
  display: grid;
  gap: 12px;
  align-items: end;
}

.hosting-package-main-grid {
  grid-template-columns: minmax(0, 1fr) minmax(260px, .92fr);
}

.hosting-article-row {
  grid-template-columns: minmax(0, 1fr) 150px;
  align-items: start;
}

.hosting-quantity-field {
  align-self: start;
  display: grid;
  gap: 8px;
  min-width: 0;
}

.hosting-quantity-field label {
  white-space: nowrap;
}

.hosting-quantity-field input {
  width: 100%;
  min-height: 46px;
  text-align: center;
}

.hosting-inline-select-row {
  grid-template-columns: minmax(0, 1fr) 46px;
}

.hosting-price-row {
  grid-template-columns: minmax(260px, .9fr) minmax(280px, 1fr);
  align-items: stretch;
}

.hosting-base-price-field {
  max-width: 420px;
}

.hosting-package-contents {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid #ead28e;
  border-radius: 9px;
  background: #fff;
}

.hosting-package-contents-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.hosting-package-contents-head > div {
  display: grid;
  gap: 2px;
}

.hosting-package-contents-head span {
  color: #806120;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.hosting-package-contents-head strong {
  color: #573b00;
  font-size: 17px;
}

.hosting-package-contents-head small {
  max-width: 280px;
  color: #6f6c62;
  font-size: 10px;
  font-weight: 750;
  text-align: right;
}

.hosting-package-contents-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: 7px;
}

.hosting-package-contents-grid > div {
  display: grid;
  gap: 3px;
  padding: 8px;
  border: 1px solid #eee5c9;
  border-radius: 7px;
  background: #fffdf7;
}

.hosting-package-contents-grid span {
  color: #7a7059;
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}

.hosting-package-contents-grid strong {
  color: #4b3b16;
  font-size: 13px;
}

.hosting-package-contents > p {
  margin: 0;
  padding-top: 8px;
  border-top: 1px solid #eee5c9;
  color: #665f50;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.35;
}

.hosting-section-package {
  display: grid;
  gap: 14px;
}

.hosting-section-package h3 {
  margin-bottom: 0;
}

.hosting-custom-package-panel {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
}

.hosting-custom-package-panel[hidden] {
  display: none;
}

.hosting-custom-package-panel textarea {
  min-height: 96px;
  resize: vertical;
}

.hosting-square-action {
  justify-content: center;
  width: 46px;
  min-width: 46px;
  height: 46px;
  padding: 0;
}

.hosting-toggle-compact {
  margin: 8px 0;
}

.hosting-list-field textarea {
  min-height: 72px;
  resize: vertical;
}

.hosting-primary-domain-simple {
  display: grid;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #bdebd0;
  border-radius: 8px;
  background: rgba(255,255,255,.78);
}

.hosting-service-form-modern .grid.grid-3.hosting-domain-main-grid {
  grid-template-columns: minmax(0, 1fr) clamp(110px, 18%, 150px);
}

.hosting-service-form-modern .hosting-domain-price-field {
  grid-column: 1 / -1;
}

.hosting-domain-date-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hosting-primary-domain-shell {
  display: grid;
  gap: 12px;
}

.hosting-domain-mode-toggle {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.hosting-domain-mode-option {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  min-height: 72px;
  padding: 12px;
  border: 1px solid #cfe0f2;
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  cursor: pointer;
}

.hosting-domain-mode-option:has(input:checked) {
  border-color: #75b8ef;
  background: #eef8ff;
  box-shadow: inset 4px 0 0 var(--blue);
}

.hosting-domain-mode-option input {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: var(--blue);
}

.hosting-domain-mode-option strong {
  display: block;
  color: var(--ink);
  font-size: 15px;
  font-weight: 950;
}

.hosting-domain-mode-option small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.hosting-primary-domain-panel[hidden] {
  display: none !important;
}

.hosting-existing-domain-field {
  padding: 14px;
  border: 1px solid #d8e6f4;
  border-radius: 8px;
  background: rgba(255,255,255,.78);
}

.hosting-domain-create-card {
  display: grid;
  gap: 12px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid #bdebd0;
  border-radius: 8px;
  background: rgba(255,255,255,.74);
}

.hosting-domain-card-head {
  display: flex;
  gap: 12px;
  align-items: center;
}

.hosting-domain-card-head > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  color: #057a3c;
  background: #dcfce7;
}

.hosting-domain-card-head strong,
.hosting-price-summary strong {
  display: block;
  color: var(--ink);
  font-size: 18px;
  font-weight: 900;
}

.hosting-domain-card-head small,
.hosting-price-summary small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.hosting-new-payment-drawer {
  width: min(1160px, 84vw);
}

.hosting-payment-shell .hosting-payment-drawer {
  width: min(1040px, 82vw);
}

.hosting-payment-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 0;
  padding-bottom: 18px;
  border-bottom: 1px solid #dce7f2;
}

.hosting-payment-drawer-head .hosting-payment-head-actions {
  display: flex !important;
  flex: 0 0 auto;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: flex-end !important;
  width: auto;
  margin-top: 0;
}

.hosting-payment-drawer-head .hosting-payment-head-actions .button {
  width: auto;
}

.hosting-payment-drawer-head > div {
  min-width: 0;
}

.hosting-payment-drawer-head h2 {
  margin: 3px 0 0;
}

.hosting-payment-head-note {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.hosting-payment-overview {
  border-color: #cfe0f2;
  background: #f8fbff;
}

.hosting-payment-section-head {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 14px;
}

.hosting-payment-section-head h3,
.hosting-payment-section-head p {
  margin: 0;
}

.hosting-payment-section-head p {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}

.hosting-payment-step {
  display: grid;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 50%;
  background: #e7f2ff;
  color: var(--blue);
  font-size: 14px;
  font-weight: 950;
}

.hosting-payment-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.hosting-payment-summary-grid article {
  min-width: 0;
  padding: 14px 16px;
  border: 1px solid #d8e6f4;
  border-radius: 8px;
  background: #fff;
}

.hosting-payment-summary-grid span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.hosting-payment-summary-grid strong {
  display: block;
  margin-top: 5px;
  color: var(--ink);
  font-size: clamp(20px, 2vw, 26px);
  font-weight: 950;
  white-space: nowrap;
}

.hosting-payment-summary-grid .is-paid strong {
  color: #07864f;
}

.hosting-payment-summary-grid .is-open strong {
  color: #b91c1c;
}

.hosting-payment-summary-grid .is-overpaid {
  border-color: #f7b955;
  background: #fff7e6;
}

.hosting-payment-summary-grid .is-overpaid strong {
  color: #b45309;
}

.hosting-payment-note {
  margin: 12px 0 0;
  padding: 10px 12px;
  border-radius: 8px;
  font-weight: 850;
}

.hosting-payment-note.is-info {
  color: #075985;
  background: #e0f2fe;
}

.hosting-payment-note.is-warning {
  color: #92400e;
  background: #fef3c7;
}

.hosting-existing-payments {
  display: grid;
  gap: 12px;
}

.hosting-payment-entry {
  border-color: #cfe0f2;
  background: #fff;
}

.field-label-optional {
  color: var(--muted);
  font-size: 11px;
  font-weight: 750;
  text-transform: none;
}

.hosting-payment-period-choice {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 12px;
  border: 1px solid #cfe0f2;
  border-radius: 10px;
  background: #f8fbff;
}

.hosting-payment-period-choice legend {
  padding: 0 6px;
  color: var(--navy);
  font-size: 13px;
  font-weight: 900;
}

.hosting-payment-period-option {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-height: 86px;
  padding: 12px;
  border: 1px solid #cbd9e8;
  border-radius: 9px;
  background: #fff;
  cursor: pointer;
}

.hosting-payment-period-option:has(input:checked) {
  border-color: #78ace9;
  background: #eef6ff;
  box-shadow: inset 3px 0 0 var(--blue);
}

.hosting-payment-period-option-extend:has(input:checked) {
  border-color: #7ac99a;
  background: #effbf4;
  box-shadow: inset 3px 0 0 #159447;
}

.hosting-payment-period-option input {
  flex: 0 0 auto;
  margin-top: 3px;
}

.hosting-payment-period-option span {
  display: grid;
  gap: 5px;
}

.hosting-payment-period-option strong {
  color: var(--navy);
  font-size: 13px;
  line-height: 1.25;
}

.hosting-payment-period-option small {
  color: #58708b;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.4;
}

.hosting-payment-period-option:has(input:disabled) {
  cursor: not-allowed;
  opacity: .58;
}

.hosting-payment-offer-help {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 2px;
  padding: 10px 12px;
  border: 1px solid #c9def6;
  border-radius: 8px;
  background: #f2f8ff;
  color: #42607e;
}

.hosting-payment-offer-help svg {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  margin-top: 1px;
  color: var(--blue);
}

.hosting-payment-offer-help p {
  margin: 0;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.45;
}

.hosting-payment-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 14px;
  border-top: 1px solid #e1e9f2;
}

.hosting-existing-payment-card {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #b9d8fb;
  border-radius: 8px;
  background: #f8fbff;
  box-shadow: inset 4px 0 0 var(--blue);
}

.hosting-payment-inline-form {
  gap: 12px;
}

.hosting-payment-card-actions,
.hosting-payment-delete-form {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.hosting-payment-overpay-warning {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #f7b955;
  border-radius: 8px;
  color: #92400e;
  background: #fff7e6;
  font-weight: 900;
}

.hosting-payment-overpay-warning[hidden] {
  display: none !important;
}

@media (min-width: 761px) {
  .hosting-payment-shell .hosting-payment-drawer {
    padding-bottom: 16px;
  }

  .hosting-payment-drawer-head {
    margin: 0 -22px 10px;
    padding: 12px 22px 10px;
  }

  .hosting-payment-overview {
    grid-template-columns: minmax(230px, .75fr) minmax(0, 2.25fr);
    align-items: center;
    gap: 8px 14px;
    padding: 11px 14px;
  }

  .hosting-payment-overview .hosting-payment-section-head,
  .hosting-payment-overview .hosting-payment-summary-grid {
    margin: 0;
  }

  .hosting-payment-overview .hosting-payment-note {
    grid-column: 1 / -1;
    margin-top: 2px;
  }

  .hosting-payment-summary-grid article {
    padding: 9px 12px;
  }

  .hosting-payment-summary-grid strong {
    font-size: clamp(18px, 1.6vw, 23px);
  }

  #payment-form {
    gap: 9px;
  }

  .hosting-payment-entry {
    gap: 9px;
    padding: 11px 14px;
  }

  .hosting-payment-entry .hosting-payment-section-head {
    margin-bottom: 2px;
  }

  .hosting-payment-entry > .grid-2 {
    gap: 8px 12px;
  }

  .hosting-payment-entry input,
  .hosting-payment-entry select {
    min-height: 44px;
  }

  .hosting-payment-entry textarea {
    min-height: 48px;
    height: 48px;
  }

  .hosting-payment-entry .hosting-payment-period-choice {
    gap: 8px;
    padding: 8px;
  }

  .hosting-payment-entry .hosting-payment-period-option {
    min-height: 64px;
    padding: 9px 10px;
  }

  .hosting-payment-entry .hosting-payment-offer-help {
    padding: 8px 10px;
  }
}

@media (max-width: 760px) {
  .hosting-payment-drawer-head {
    align-items: flex-start;
    gap: 14px;
  }

  .hosting-payment-drawer-head .hosting-payment-head-actions {
    flex-wrap: wrap;
  }

  .hosting-payment-drawer-head .button {
    flex: 0 0 auto;
    padding-inline: 12px;
  }

  .hosting-payment-summary-grid {
    grid-template-columns: 1fr;
  }

  .hosting-payment-period-choice {
    grid-template-columns: 1fr;
  }

  .hosting-payment-form-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .hosting-payment-form-actions .button {
    width: 100%;
  }
}

.hosting-payment-picker {
  display: grid;
  grid-template-columns: minmax(360px, .95fr) minmax(360px, 1.05fr);
  gap: 16px;
  align-items: start;
}

.hosting-payment-offer-list {
  display: grid;
  gap: 10px;
  max-height: min(560px, 58vh);
  overflow: auto;
  padding-right: 4px;
}

.hosting-payment-offer-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  color: var(--ink);
  text-decoration: none;
}

.hosting-payment-offer-row:hover,
.hosting-payment-offer-row.is-selected {
  border-color: #91c4f2;
  background: #f3f9ff;
  box-shadow: inset 4px 0 0 var(--blue);
}

.hosting-payment-offer-row span,
.hosting-payment-offer-row small,
.hosting-payment-offer-row em,
.hosting-payment-selected span,
.hosting-payment-selected small {
  min-width: 0;
}

.hosting-payment-offer-row strong,
.hosting-payment-selected strong {
  display: block;
  font-weight: 950;
}

.hosting-payment-offer-row small,
.hosting-payment-selected small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.hosting-payment-offer-row em {
  color: var(--blue);
  font-style: normal;
  text-align: right;
  white-space: nowrap;
}

.hosting-payment-selected {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin-bottom: 14px;
  padding: 12px;
  border: 1px solid #bdebd0;
  border-radius: 8px;
  background: rgba(255,255,255,.72);
}

.hosting-payment-selected em {
  color: #047857;
  font-style: normal;
  font-weight: 950;
  white-space: nowrap;
}

.hosting-empty-state {
  display: grid;
  place-items: center;
  min-height: 260px;
  padding: 24px;
  border: 1px dashed #bdd7f3;
  border-radius: 8px;
  background: rgba(255,255,255,.58);
  color: var(--muted);
  text-align: center;
}

.hosting-empty-state svg {
  width: 34px;
  height: 34px;
  color: var(--blue);
}

.hosting-empty-state strong {
  margin-top: 10px;
  color: var(--ink);
  font-size: 20px;
}

.business-settings-form {
  display: grid;
  gap: 14px;
}

.business-settings-form .business-settings-section {
  position: relative;
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 18px 20px;
  border-radius: 8px;
  background: #f8fbff;
  box-shadow: 0 18px 40px rgba(15, 23, 42, .05);
}

.business-settings-form .business-settings-codes-section {
  border-color: #bdd7f3;
  background: #f2f8ff;
}

.business-settings-form .business-settings-numbering-section {
  border-color: #ccebdc;
  background: #f3fbf7;
}

.business-settings-form .business-settings-export-section {
  border-color: #f2d99a;
  background: #fff8e7;
}

.business-settings-form .hosting-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 0 0 12px;
  border-bottom: 1px solid rgba(15, 23, 42, .08);
}

.business-settings-form .hosting-card-head h3 {
  margin: 3px 0 0;
  font-size: 21px;
  line-height: 1.15;
}

.business-settings-form .card-subtitle,
.business-settings-form .field-hint {
  max-width: 920px;
}

.business-settings-form .settings-section > .grid {
  align-items: start;
}

.business-settings-numbering-section .hosting-card-head > .field {
  min-width: 180px !important;
  max-width: 220px;
}

.business-settings-numbering-section article.card {
  border-radius: 8px;
  box-shadow: none;
}

.business-settings-export-section textarea {
  min-height: 170px;
}

.hosting-domain-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.hosting-domain-options-simple {
  align-items: stretch;
}

.hosting-domain-pricing-row,
.hosting-maintenance-grid {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr);
  gap: 12px;
  align-items: start;
}

.hosting-domain-billable-line,
.hosting-domain-auto-renew,
.hosting-maintenance-toggle-field .hosting-toggle-line {
  min-height: 46px;
}

.hosting-maintenance-toggle-field {
  display: grid;
  gap: 7px;
}

.hosting-maintenance-toggle-field .hosting-toggle-line {
  align-items: center;
}

.hosting-domain-preview,
.hosting-price-summary {
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
  color: #53667d;
  font-weight: 900;
}

.hosting-service-form-modern [hidden] {
  display: none !important;
}

.hosting-service-wizard {
  position: relative;
  padding-bottom: 24px;
}

.hosting-wizard-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin: 6px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid #d8e6f4;
  background: transparent;
}

.hosting-service-wizard .settings-section:last-of-type {
  margin-bottom: 20px;
}

.hosting-wizard-actions .button[hidden] {
  display: none;
}

.hosting-secondary-domain-card {
  border-color: #b7e5d0;
  background: rgba(245, 255, 250, .82);
}

.hosting-additional-domain-entry {
  margin: 0;
  background: rgba(255,255,255,.78);
}

.hosting-additional-domain-entry .hosting-domain-preview {
  margin: 0;
}

.hosting-additional-domains-shell,
.hosting-service-addons-shell,
.hosting-secondary-domain-shell {
  display: grid;
  gap: 12px;
  margin-top: 6px;
  padding: 14px;
  border: 1px solid #cfe0f2;
  border-radius: 8px;
  background: #f7fbff;
}

.hosting-service-addons-shell {
  border-color: #ecd699;
  background: #fffdf6;
}

.hosting-secondary-domain-shell {
  border-color: #bdebd0;
  background: rgba(255,255,255,.66);
}

.hosting-additional-domains-shell[open],
.hosting-service-addons-shell[open],
.hosting-secondary-domain-shell[open] {
  gap: 12px;
}

.hosting-additional-domains-summary {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  cursor: pointer;
  list-style: none;
}

.hosting-additional-domains-summary::-webkit-details-marker {
  display: none;
}

.hosting-additional-domains-summary svg {
  flex: 0 0 auto;
  color: var(--blue);
  transition: transform .18s ease;
}

.hosting-additional-domains-shell[open] > .hosting-additional-domains-summary svg,
.hosting-service-addons-shell[open] > .hosting-additional-domains-summary svg,
.hosting-secondary-domain-shell[open] > .hosting-additional-domains-summary svg {
  transform: rotate(180deg);
}

.hosting-additional-domains-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.hosting-additional-domains-summary strong,
.hosting-additional-domains-head strong,
.hosting-domain-lines-head strong {
  display: block;
  color: var(--blue);
  font-size: 16px;
  font-weight: 950;
}

.hosting-additional-domains-summary small,
.hosting-additional-domains-head small,
.hosting-domain-lines-head small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.hosting-additional-domain-picker {
  margin: 0;
}

.hosting-extra-item-picker {
  gap: 12px;
  grid-template-columns: minmax(0, 1fr);
  margin: 0;
}

.hosting-extra-item-detail-grid {
  grid-template-columns: minmax(120px, .45fr) minmax(160px, .65fr) minmax(220px, 1fr);
  align-items: stretch;
}

.hosting-extra-item-total-box {
  min-height: 74px;
}

.hosting-extra-renewal-field {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  justify-self: start;
}

.hosting-extra-renewal-line {
  justify-content: flex-start;
  gap: 10px;
  margin: 2px 0 0;
  max-width: 520px;
}

.hosting-extra-renewal-line .finance-info-wrap {
  margin-left: 2px;
}

.hosting-secondary-domain-add {
  justify-self: start;
}

.hosting-domain-lines-panel {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #d8e6f4;
  border-radius: 8px;
  background: #fff;
}

.hosting-domain-lines-list {
  display: grid;
  gap: 8px;
}

.hosting-domain-line-card {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(260px, auto) auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid #d8e6f4;
  border-radius: 8px;
  background: #fbfdff;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.hosting-extra-item-row {
  grid-template-columns: minmax(0, 1fr) minmax(170px, auto) auto;
}

.hosting-extra-row-renewal {
  justify-content: flex-start;
  margin: 0;
  white-space: nowrap;
}

.hosting-domain-line-card.is-highlighted {
  border-color: #86bff0;
  background: #eff8ff;
  box-shadow: inset 4px 0 0 var(--blue);
}

.hosting-domain-line-main {
  min-width: 0;
}

.hosting-domain-line-main strong {
  display: block;
  color: var(--ink);
  font-size: 15px;
  font-weight: 950;
  overflow-wrap: anywhere;
}

.hosting-domain-line-main span {
  display: block;
  margin-top: 2px;
  color: #53667d;
  font-size: 12px;
  font-weight: 800;
}

.hosting-domain-line-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.hosting-domain-line-pill {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eef6ff;
  color: #075fb8;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.hosting-domain-line-remove {
  min-height: 38px;
  padding: 8px 10px;
}

.hosting-domain-empty {
  padding: 12px;
  border: 1px dashed #b9cce3;
  border-radius: 8px;
  color: var(--muted);
  font-weight: 850;
  text-align: center;
  background: #f8fbff;
}

.hosting-price-summary span {
  display: block;
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.hosting-quantity-field {
  width: 100%;
}

.hosting-service-form-modern input[list] {
  width: 100%;
  min-height: 46px;
  border-radius: 8px;
  border: 1px solid #cfe0f2;
  background: #fff;
  padding: 10px 14px;
}

.hosting-service-form-modern input[list]:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(24, 111, 201, .14);
  outline: none;
}

.roko-combobox {
  position: relative;
  width: 100%;
}

.roko-combobox > input {
  padding-right: 52px !important;
}

.roko-combobox-toggle {
  position: absolute;
  top: 50%;
  right: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 34px;
  margin: 0;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  color: #5b6d84;
  cursor: pointer;
  transform: translateY(-50%);
}

.roko-combobox-toggle:hover,
.roko-combobox.is-open .roko-combobox-toggle {
  border-color: #cfe0f2;
  background: #f1f7ff;
  color: var(--primary);
}

.roko-combobox-toggle svg {
  width: 18px;
  height: 18px;
  stroke-width: 2.4;
}

.roko-combobox-list {
  position: absolute;
  z-index: 80;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  max-height: 280px;
  overflow: auto;
  border: 1px solid #cfe0f2;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(12, 36, 64, .18);
}

.roko-combobox-option {
  display: block;
  width: 100%;
  margin: 0;
  padding: 10px 12px;
  border: 0;
  border-bottom: 1px solid #eef4fb;
  background: #fff;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}

.roko-combobox-option:last-child {
  border-bottom: 0;
}

.roko-combobox-option:hover,
.roko-combobox-option.is-active {
  background: #eef6ff;
}

.roko-combobox-option.is-selected {
  box-shadow: inset 3px 0 0 var(--primary);
}

.roko-combobox-option-title {
  display: block;
  font-size: 15px;
  font-weight: 850;
  line-height: 1.25;
}

.roko-combobox-option small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
}

.roko-combobox-empty {
  padding: 12px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 850;
}

.hosting-service-form-modern .grid-3 {
  gap: 12px;
}

.hosting-service-form-modern .grid-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hosting-section-notes label span {
  color: var(--muted);
  font-weight: 800;
  text-transform: none;
}

.hosting-offer-preview-shell .document-drawer {
  width: min(1120px, 84vw);
}

.hosting-offer-preview-shell .hosting-offer-preview-head {
  display: grid !important;
  grid-template-columns: minmax(170px, 1fr) auto !important;
  align-items: center !important;
  gap: 18px !important;
}

.hosting-offer-preview-shell .hosting-offer-preview-head .report-preview-title {
  min-width: 0 !important;
}

.hosting-offer-preview-shell .hosting-offer-preview-head .report-preview-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  margin: 0 !important;
}

.hosting-offer-preview-shell .hosting-offer-preview-head .report-preview-actions form {
  display: contents !important;
}

.hosting-offer-preview-shell .hosting-offer-preview-head .report-preview-actions .button {
  min-height: 46px !important;
  padding: 12px 16px !important;
  white-space: nowrap !important;
}

@media (max-width: 1040px) {
  .hosting-offer-preview-shell .hosting-offer-preview-head {
    grid-template-columns: 1fr !important;
  }

  .hosting-offer-preview-shell .hosting-offer-preview-head .report-preview-actions {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
  }
}

.hosting-offer-page {
  min-height: 297mm;
}

.hosting-offer-page .document-items th,
.hosting-offer-page .document-items td {
  white-space: nowrap;
}

.hosting-offer-page .document-items th:nth-child(2),
.hosting-offer-page .document-items td:nth-child(2) {
  white-space: normal;
}

.invoice-page-a4.hosting-offer-page .document-items th:nth-child(1),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(1) {
  width: 9mm !important;
  text-align: center !important;
}

.invoice-page-a4.hosting-offer-page .document-items th:nth-child(2),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(2) {
  width: 78mm !important;
  white-space: normal !important;
}

.invoice-page-a4.hosting-offer-page .document-items th:nth-child(3),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(3) {
  width: 14mm !important;
  text-align: center !important;
}

.invoice-page-a4.hosting-offer-page .document-items th:nth-child(4),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(4),
.invoice-page-a4.hosting-offer-page .document-items th:nth-child(5),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(5),
.invoice-page-a4.hosting-offer-page .document-items th:nth-child(6),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(6) {
  width: 19mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4.hosting-offer-page .document-items th:nth-child(7),
.invoice-page-a4.hosting-offer-page .document-items td:nth-child(7) {
  width: 22mm !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 800 !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4 {
  top: 151mm !important;
  left: 18mm !important;
  width: 72mm !important;
  font-size: 7.2pt !important;
  line-height: 1.35 !important;
}

.invoice-page-a4.hosting-offer-page .document-note-a4 {
  top: 173mm !important;
  left: 18mm !important;
  width: 78mm !important;
  padding: 0 !important;
  border-bottom: 0 !important;
  font-size: 7.25pt !important;
  line-height: 1.36 !important;
}

.invoice-page-a4.hosting-offer-page .document-note-a4 h4 {
  margin: 0 0 3mm !important;
  font-size: 7.9pt !important;
  line-height: 1 !important;
}

.invoice-page-a4.hosting-offer-page .document-note-a4 p {
  font-size: 7.25pt !important;
  line-height: 1.36 !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 {
  position: absolute !important;
  top: 173mm !important;
  left: 108mm !important;
  right: auto !important;
  width: 84mm !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2.5mm !important;
  columns: auto !important;
  column-count: 1 !important;
  color: #111 !important;
  font-size: 7.05pt !important;
  line-height: 1.36 !important;
  text-align: left !important;
  text-transform: none !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  z-index: 1 !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4::before,
.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4::after,
.invoice-page-a4.hosting-offer-page .payment-code::before,
.invoice-page-a4.hosting-offer-page .payment-code::after {
  display: none !important;
  content: none !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
.invoice-page-a4.hosting-offer-page .payment-code-title-a4 {
  display: block !important;
  margin: 0 0 1mm !important;
  color: #000 !important;
  font-size: 7.9pt !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  color: #111 !important;
  font-size: 7.05pt !important;
  line-height: 1.36 !important;
  white-space: normal !important;
  break-inside: avoid !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 {
  top: 220mm !important;
  left: 18mm !important;
  width: 78mm !important;
  padding: 4mm 0 0 !important;
  border-top: 0 !important;
  background: transparent !important;
  font-size: 7.35pt !important;
  line-height: 1.28 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-title-a4 {
  margin-bottom: 3mm !important;
  font-size: 7.9pt !important;
  line-height: 1 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 div {
  display: grid !important;
  grid-template-columns: 23mm 1fr !important;
  gap: 3mm !important;
  align-items: start !important;
  margin: 0 0 2mm !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 span {
  font-size: 7.2pt !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong {
  font-size: 7.4pt !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
}

.invoice-page-a4.hosting-offer-page .payment-code {
  top: 220mm !important;
  left: 108mm !important;
  right: auto !important;
  width: 84mm !important;
  height: 34mm !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 4mm 0 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.invoice-page-a4.hosting-offer-page .payment-code-image {
  align-self: center !important;
  width: 76mm !important;
  max-width: 76mm !important;
  height: 22mm !important;
  max-height: 22mm !important;
  margin-top: 3mm !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.invoice-page-a4.hosting-offer-page .payment-code-title-a4 {
  width: 76mm !important;
  text-align: center !important;
}

@media (max-width: 960px) {
  .hosting-services-filter-top {
    grid-template-columns: 1fr;
  }

  .hosting-services-filter-top .hosting-service-payment-tabs {
    width: 100%;
  }

  .hosting-services-context-row {
    align-items: stretch;
    flex-direction: column;
  }

  .hosting-service-year-tabs {
    min-width: 0;
    width: 100%;
  }

  .hosting-tabs-compact {
    display: flex;
  }

  .hosting-section-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .hosting-section-toolbar .button {
    width: 100%;
  }

  .hosting-filter-row,
  .hosting-tld-row {
    grid-template-columns: 1fr;
  }

  .hosting-settings-layout {
    grid-template-columns: 1fr;
  }

  .hosting-settings-panel-documents .hosting-settings-panel-body,
  .business-settings-form .grid-2,
  .business-settings-form .grid-3,
  .business-settings-numbering-section .hosting-card-head {
    grid-template-columns: 1fr;
  }

  .business-settings-form .hosting-card-head {
    align-items: stretch;
    flex-direction: column;
  }

  .business-settings-numbering-section .hosting-card-head > .field {
    max-width: none;
  }

  .hosting-settings-head {
    align-items: stretch;
    flex-direction: column;
  }

  .hosting-settings-head .button {
    width: 100%;
  }

  .hosting-filter-card-compact .hosting-filter-row {
    align-items: stretch;
    flex-direction: column;
  }

  body.hosting-module-page .hosting-filter-card-compact .hosting-filter-row > .field:first-child,
  .hosting-filter-card-compact .hosting-search-field,
  .hosting-filter-card-compact .hosting-search-field input {
    max-width: none;
    width: 100%;
  }

  .hosting-summary-grid {
    grid-template-columns: 1fr 1fr;
  }

  .hosting-money-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.hosting-module-page .hosting-summary-grid.hosting-summary-future {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hosting-filter-card-compact .hosting-filter-advanced {
    grid-template-columns: 1fr;
  }

  .hosting-table {
    min-width: 860px;
  }

  .hosting-drawer-shell .unit-drawer,
  .hosting-payment-shell .unit-drawer,
  .hosting-service-drawer,
  .hosting-offer-preview-shell .document-drawer {
    width: 100vw;
  }

  .hosting-service-drawer-head {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .hosting-service-drawer-head > .hosting-drawer-title,
  .hosting-service-drawer-head > .hosting-drawer-tabs,
  .hosting-service-drawer-head > .hosting-service-actions,
  .hosting-service-drawer-head > .hosting-renewal-action {
    grid-column: 1;
    grid-row: auto;
  }

  .hosting-service-drawer-head .hero-actions,
  .hosting-drawer-tabs {
    justify-content: flex-start;
  }

  .hosting-drawer-actions {
    justify-content: stretch !important;
  }

  .hosting-domain-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hosting-drawer-actions .button {
    width: 100%;
  }

  .hosting-drawer-tabs .hosting-form-tab {
    flex: 1 1 0;
    justify-content: center;
  }

  .hosting-wizard-actions {
    flex-direction: column;
    margin-right: 0;
    margin-left: 0;
  }

  .hosting-wizard-actions .button {
    width: 100%;
    justify-content: center;
  }

  .hosting-service-form-modern .grid-3,
  .hosting-service-wizard .hosting-section-duration .grid-2,
  .hosting-service-wizard .hosting-section-notes,
  .hosting-service-form-modern .grid.grid-3.hosting-domain-main-grid,
  .hosting-domain-date-grid,
  .hosting-domain-mode-toggle,
  .hosting-domain-options,
  .hosting-domain-line-card,
  .hosting-domain-pricing-row,
  .hosting-maintenance-grid,
  .hosting-inline-select-row,
  .hosting-article-row,
  .hosting-package-main-grid,
  .hosting-price-row,
  .hosting-payment-picker,
  .hosting-payment-selected {
    grid-template-columns: 1fr;
  }

  .hosting-payment-offer-row {
    grid-template-columns: 1fr;
  }

  .hosting-payment-offer-row em,
  .hosting-payment-selected em {
    text-align: left;
  }

  .hosting-square-action {
    width: 100%;
    min-width: 0;
  }

  .hosting-additional-domains-shell,
  .hosting-domain-lines-panel {
    padding: 12px;
  }

  .hosting-domain-line-meta {
    justify-content: flex-start;
  }

  .hosting-domain-line-remove {
    width: 100%;
    justify-content: center;
  }

  .hosting-domain-card-head {
    align-items: flex-start;
  }

}

/* Business module */
body.business-module-page .main {
  padding-top: 18px;
}

body.business-module-page .topbar {
  padding: 14px 20px;
  margin-bottom: 12px;
  min-height: 0;
}

body.business-module-page .topbar-title h1 {
  font-size: clamp(34px, 3vw, 48px);
}

.business-hero {
  align-items: center;
  min-height: 0;
  margin-bottom: 8px;
  padding: 14px 18px;
  border-left: 5px solid #0b63c7;
  background: #fff;
}

.business-hero h2 {
  margin: 0;
  font-size: clamp(24px, 2vw, 32px);
  line-height: 1.02;
}

.business-tabs {
  display: none;
  gap: 6px;
  margin-bottom: 10px;
  padding: 8px;
  overflow-x: auto;
  border-radius: 8px;
}

.business-tabs a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  min-height: 42px;
  padding: 8px 14px;
}

.business-page-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
  padding: 16px 18px;
  border: 1px solid #d6e4f5;
  border-left: 5px solid #0b63c7;
  border-radius: 8px;
  background: #fff;
}

.business-page-head h2 {
  margin: 0;
  color: #061a36;
  font-size: clamp(26px, 2.3vw, 36px);
  line-height: 1.05;
}

.business-page-head .card-subtitle {
  max-width: 880px;
  margin-bottom: 0;
}

.business-page-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
}

.business-summary-grid {
  margin-bottom: 12px;
}

.business-overview-card {
  min-height: 170px;
}

.business-filter-card {
  margin-bottom: 12px;
  padding: 14px 16px;
}

.business-filter-card form {
  margin: 0;
}

.business-filter-row {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 10px;
}

.business-search-field {
  flex: 0 1 460px;
  max-width: 460px;
  min-width: 260px;
}

.business-date-mode-field {
  flex: 0 0 150px;
}

.business-date-filter-field {
  flex: 0 0 150px;
}

.business-renewal-year-nav {
  display: grid;
  grid-template-columns: auto minmax(180px, 1fr) auto;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  padding: 10px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}

.business-renewal-year-nav > span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 44px;
  color: #061a36;
  font-weight: 950;
  text-align: center;
}

.business-renewal-year-nav small {
  color: #5f7088;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.business-renewal-year-nav strong {
  font-size: 24px;
}

.business-renewal-year-nav em {
  border-radius: 999px;
  padding: 5px 9px;
  color: #075ebf;
  background: #eaf4ff;
  font-size: 12px;
  font-style: normal;
  font-weight: 950;
}

.business-renewal-workbar {
  padding: 14px;
}

.business-renewal-workbar-main {
  display: grid;
  grid-template-columns: minmax(620px, 1fr) minmax(330px, 430px);
  align-items: start;
  gap: 12px;
}

.business-renewal-control-panel,
.business-renewal-insight-panel {
  min-width: 0;
  border: 1px solid #d9e7f7;
  border-radius: 8px;
  background: #fff;
  padding: 10px 12px;
}

.business-renewal-year-panel {
  background: #f8fbff;
}

.business-renewal-insight-panel {
  margin-top: 10px;
  background: linear-gradient(180deg, #fff, #f8fbff);
}

.business-renewal-panel-heading {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 20px;
  margin-bottom: 10px;
  color: #52637a;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.business-renewal-panel-heading i {
  width: 17px;
  height: 17px;
  color: #0b63c7;
}

.business-renewal-workbar .business-renewal-search-row {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto;
  align-items: end;
  gap: 10px;
}

.business-renewal-workbar .business-search-field {
  width: 100%;
  flex: 1 1 auto;
  max-width: none;
  min-width: 0;
}

.business-renewal-workbar .business-filter-actions {
  display: flex;
  flex: 0 1 auto;
  max-width: 100%;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.business-renewal-workbar .business-filter-actions .button {
  min-height: 42px;
  padding-inline: 14px;
  white-space: nowrap;
}

.business-renewal-workbar .business-renewal-year-nav {
  margin-top: 0;
  padding: 8px 10px;
  background: #fff;
}

.business-renewal-year-nav-compact > span {
  gap: 6px;
  min-height: 34px;
}

.business-renewal-year-nav-compact small {
  font-size: 10px;
}

.business-renewal-year-nav-compact strong {
  font-size: 22px;
}

.business-renewal-year-nav-compact em {
  padding: 4px 8px;
  font-size: 11px;
}

.business-renewal-filter-hint {
  margin: 8px 0 0;
}

.business-renewal-extension-summary {
  display: grid;
  gap: 10px;
}

.business-renewal-extension-summary div {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
}

.business-renewal-extension-summary span {
  color: #5f7088;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.business-renewal-extension-summary strong {
  color: #061a36;
  font-weight: 950;
}

.business-renewal-finance-grid {
  align-items: start;
  column-gap: 20px;
  row-gap: 22px;
}

.business-renewal-finance-grid .field {
  min-width: 0;
  align-content: start;
}

.business-renewal-finance-grid input,
.business-renewal-status-choices span {
  min-height: 58px;
}

.business-renewal-status-field {
  align-content: start;
}

.business-renewal-status-choices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.business-renewal-status-choices label {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  min-height: 58px;
  cursor: pointer;
}

.business-renewal-status-choices input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.business-renewal-status-choices span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  padding: 10px 14px;
  color: #52637a;
  background: #fff;
  font-size: 14px;
  font-weight: 950;
}

.business-renewal-status-choices input:checked + span {
  border-color: #86b7ef;
  color: #075ebf;
  background: #eef6ff;
  box-shadow: 0 0 0 3px rgba(11, 99, 199, .08);
}

.business-renewal-finance-grid .field-hint,
.business-renewal-finance-grid .business-renewal-paid-hint,
.business-renewal-finance-spacer {
  margin: 0;
  min-height: 30px;
}

.business-renewal-status-hint {
  display: flex;
  align-items: center;
}

.business-renewal-finance-spacer {
  display: block;
  visibility: hidden;
}

.business-renewal-paid-field input {
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.business-renewal-paid-field input.is-open {
  border-color: #f0a6a6;
  background: #fff7f7;
  box-shadow: 0 0 0 3px rgba(214, 69, 69, .08);
}

.business-renewal-paid-field input.is-ok {
  border-color: #85cda4;
  background: #f4fff8;
  box-shadow: 0 0 0 3px rgba(25, 123, 69, .08);
}

.business-renewal-paid-field input.is-over {
  border-color: #91c8ff;
  background: #f2f8ff;
  box-shadow: 0 0 0 3px rgba(11, 99, 199, .08);
}

.business-renewal-paid-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
}

.business-renewal-paid-suggestion {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 30px;
  border: 1px solid #9fc8ef;
  border-radius: 8px;
  padding: 5px 9px;
  color: #075ebf;
  background: #eef6ff;
  font-size: 12px;
  font-weight: 950;
  cursor: pointer;
}

.business-renewal-paid-suggestion:hover {
  border-color: #5d9fe0;
  background: #e4f1ff;
}

.business-renewal-paid-suggestion svg {
  width: 15px;
  height: 15px;
}

.business-renewal-paid-suggestion[hidden] {
  display: none;
}

.business-renewal-paid-hint {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 28px;
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  padding: 5px 9px;
  color: #52637a;
  background: #fff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
}

.business-renewal-paid-hint.is-open {
  color: #9f1d1d;
  background: #fff1f1;
  border-color: #f5c2c2;
}

.business-renewal-paid-hint.is-ok {
  color: #126535;
  background: #ecfff3;
  border-color: #b7e4c7;
}

.business-renewal-paid-hint.is-over {
  color: #075985;
  background: #eef7ff;
  border-color: #bfdbfe;
}

.business-renewal-paid-hint.is-neutral {
  color: #52637a;
  background: #f8fbff;
}

.business-renewal-quantity-panel {
  background: #f8fbff;
  border-color: #d6e6fa;
}

.business-renewal-quantity-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.business-renewal-quantity-head h4 {
  margin: 0 0 4px;
}

.business-renewal-quantity-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.business-renewal-quantity-summary div {
  min-width: 0;
  border: 1px solid #d9e7f8;
  border-radius: 8px;
  padding: 11px 12px;
  background: #fff;
}

.business-renewal-quantity-summary div.is-success {
  border-color: #b8e3ca;
  background: #effdf5;
}

.business-renewal-quantity-summary span,
.business-renewal-quantity-history-row span {
  display: block;
  color: #5b6b82;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
}

.business-renewal-quantity-summary strong,
.business-renewal-quantity-history-row strong {
  color: #061a36;
  font-weight: 950;
}

.business-renewal-quantity-history {
  display: grid;
  gap: 8px;
  margin-bottom: 16px;
}

.business-renewal-quantity-history-row {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) minmax(180px, 1fr) minmax(160px, auto);
  align-items: center;
  gap: 12px;
  border: 1px solid #d9e7f8;
  border-radius: 8px;
  padding: 10px 12px;
  background: #fff;
}

.business-renewal-quantity-history-row > div:last-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.business-renewal-quantity-form {
  border-top: 1px solid #d9e7f8;
  padding-top: 14px;
}

.business-renewal-quantity-grid {
  align-items: start;
}

.business-renewal-quantity-note {
  grid-column: span 2;
}

.business-renewal-quantity-actions {
  justify-content: flex-end;
  margin-top: 12px;
}

.business-renewal-manual-check {
  margin-top: 14px;
}

.business-renewal-extend-button {
  min-height: 36px;
  padding: 8px 10px;
  white-space: nowrap;
}

.business-filter-actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 8px;
  margin-left: 0;
}

.business-source-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.business-source-tabs a {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  color: #52637a;
  background: #f8fbff;
  font-weight: 900;
}

.business-source-tabs a:hover,
.business-source-tabs a.is-active {
  color: #075ebf;
  border-color: #9fc5f6;
  background: #eef6ff;
}

.business-source-tabs i {
  width: 17px;
  height: 17px;
  color: #0b63c7;
}

.business-source-tabs span {
  flex: 1;
}

.business-source-tabs strong {
  color: #061a36;
  font-size: 16px;
}

.business-advanced-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 10px;
  margin-top: 12px;
  padding: 14px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}

.business-advanced-grid[hidden] {
  display: none;
}

.business-partner-table {
  min-width: 1120px;
}

.business-partner-list-card {
  overflow-x: auto;
}

.business-table-toolbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 16px 6px;
}

.business-table-toolbar h3 {
  margin: 2px 0 0;
  color: #061a36;
  font-size: 24px;
}

.business-table-kpis {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.business-table-kpis span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  color: #52637a;
  background: #f8fbff;
  font-size: 13px;
  font-weight: 850;
}

.business-table-kpis strong {
  color: #061a36;
  font-size: 16px;
}

.business-table-kpis .is-warning {
  color: #9a3412;
  border-color: #fed7aa;
  background: #fff7ed;
}

.business-table-kpis .is-ok {
  color: #166534;
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.business-ledger-table {
  border-collapse: separate;
  border-spacing: 0;
}

.business-ledger-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f5f9fc;
  color: #52637a;
  font-size: 12px;
  letter-spacing: 0;
  text-transform: uppercase;
}

.business-ledger-table td {
  background: #fff;
}

.business-ledger-table tbody tr:hover td {
  background: #f8fbff;
}

.business-sort-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: inherit;
  font-weight: 950;
}

.business-sort-link:hover {
  color: #0b63c7;
}

.business-sort-link span {
  color: #8aa0b7;
  font-size: 12px;
}

.business-partner-name-link {
  color: #061a36;
  font-weight: 950;
}

.business-partner-name-link:hover {
  color: #0b63c7;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.business-code-link {
  color: #0b63c7;
  font-weight: 900;
  text-decoration: none;
}

.business-code-link:hover {
  color: #084f9e;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.business-code-cell {
  color: #0b63c7;
  font-weight: 900;
  white-space: nowrap;
}

.business-offer-number-link {
  display: inline-flex;
  flex-direction: column;
  gap: 3px;
  color: #061a36;
  font-weight: 950;
}

.business-offer-number-link span {
  color: #075ebf;
  font-size: 16px;
}

.business-offer-number-link small {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}

.business-offer-number-link:hover span {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.business-source-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 78px;
  min-height: 26px;
  padding: 5px 9px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 950;
  color: #075ebf;
  background: #eef6ff;
}

.business-source-badge.source-synesis {
  color: #075985;
  background: #e0f2fe;
}

.business-source-badge.source-hosting {
  color: #0f766e;
  border-color: #99f6e4;
  background: #ccfbf1;
}

.business-source-badge.source-renewal {
  color: #7c3aed;
  border-color: #ddd6fe;
  background: #f3e8ff;
}

.business-source-badge.source-manual,
.business-source-badge.source- {
  color: #075ebf;
  border-color: #bfdbfe;
  background: #eef6ff;
}

.business-document-source-tab {
  position: relative;
  color: inherit;
  text-decoration: none;
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.business-document-source-tab:hover {
  border-color: #9ec7f2;
  background: #f8fbff;
  transform: translateY(-1px);
}

.business-document-source-tab.is-active {
  border-color: #8fc2f5;
  background: linear-gradient(180deg, #f8fbff, #eef7ff);
  box-shadow: inset 5px 0 0 #0b63c7, 0 16px 34px rgba(11, 99, 199, .08);
}

.business-document-source-tab.is-active .icon-box {
  color: #0b63c7;
  background: #e8f3ff;
}

.business-document-source-tab span {
  letter-spacing: 0;
}

.business-offer-preview-shell .document-drawer {
  max-width: min(1060px, calc(100vw - 80px));
}

.business-offer-print-area {
  padding: 24px;
  background: #eef4fb;
}

.business-offer-preview-card {
  width: min(900px, 100%);
  min-height: 680px;
  margin: 0 auto;
  padding: 46px 52px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #fff;
  color: #061a36;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.business-offer-preview-top {
  display: flex;
  justify-content: space-between;
  gap: 36px;
  margin-bottom: 34px;
}

.business-offer-preview-top h3 {
  margin: 2px 0 12px;
  font-size: 30px;
}

.business-offer-preview-logo {
  display: block;
  max-width: 220px;
  max-height: 96px;
  object-fit: contain;
  margin-bottom: 14px;
}

.business-offer-preview-top p {
  margin: 0 0 5px;
  font-size: 18px;
  font-weight: 950;
}

.business-offer-preview-top span,
.business-offer-preview-top dt {
  color: #64748b;
  font-weight: 850;
}

.business-offer-preview-top dl {
  min-width: 210px;
  margin: 0;
}

.business-offer-preview-top dl div {
  padding: 9px 0;
  border-bottom: 1px solid #e2eaf5;
}

.business-offer-preview-top dt {
  font-size: 12px;
  text-transform: uppercase;
}

.business-offer-preview-top dd {
  margin: 3px 0 0;
  font-size: 16px;
  font-weight: 950;
}

.business-offer-preview-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.business-offer-preview-table th,
.business-offer-preview-table td {
  padding: 10px 8px;
  border-bottom: 1px solid #d9e3ef;
  text-align: left;
}

.business-offer-preview-table th {
  color: #52637a;
  background: #f5f9fc;
  font-size: 12px;
  text-transform: uppercase;
}

.business-offer-preview-table th:nth-child(n+3),
.business-offer-preview-table td:nth-child(n+3) {
  text-align: right;
}

.business-offer-preview-table tfoot th {
  color: #061a36;
  background: #fff;
  font-size: 15px;
}

.business-offer-preview-note {
  margin-top: 28px;
  padding: 16px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}

.business-offer-preview-note p {
  margin: 8px 0 0;
  color: #334155;
}

.business-offer-preview-buyer {
  margin-bottom: 22px;
  padding: 16px;
  border: 1px solid #d8e6fb;
  border-radius: 8px;
  background: #f8fbff;
}

.business-offer-preview-buyer span {
  display: block;
  margin-bottom: 8px;
  color: #52637a;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.business-offer-preview-buyer strong {
  display: block;
  margin-bottom: 4px;
  font-size: 18px;
}

.business-offer-preview-buyer p {
  margin: 2px 0;
  color: #334155;
  font-weight: 750;
}

.business-offer-action-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.business-partner-oib-fetch {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 140px;
  gap: 8px;
}

.business-partner-oib-fetch .button {
  min-height: 52px;
  padding-inline: 14px;
  white-space: nowrap;
}

.business-partner-oib-message {
  margin-top: 8px;
}

.business-missing-cell {
  color: #b91c1c;
  font-weight: 900;
}

.business-catalog-table {
  min-width: 980px;
}

.business-documents-table {
  min-width: 880px;
}

.business-kpd-table {
  min-width: 760px;
}

.business-catalog-table tbody tr:hover td,
.business-kpd-table tbody tr:hover td {
  background: #f7fbff;
}

.business-catalog-table td,
.business-kpd-table td {
  padding-top: 16px;
  padding-bottom: 16px;
}

.business-documents-table td:nth-child(3) {
  min-width: 150px;
}

.business-documents-table th,
.business-documents-table td {
  padding: 9px 12px;
  vertical-align: middle;
}

.business-documents-table th {
  background: #f8fbff;
  font-size: 12px;
}

.business-sales-offers-table td:nth-child(5),
.business-document-list-table td:nth-child(5) {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.business-document-list-table tbody td {
  padding-top: 15px;
  padding-bottom: 15px;
}

.business-document-list-table tbody td:first-child strong,
.business-document-list-table tbody td:nth-child(2) strong {
  font-weight: 950;
}

.business-document-list-table .muted-small {
  color: #52637a;
  display: inline-block;
  font-size: 12px;
  font-weight: 850;
  margin-top: 3px;
}

.business-document-list-table td:nth-child(4) {
  min-width: 140px;
}

.business-document-list-table td:nth-child(5) strong {
  font-weight: 950;
}

.business-offers-table tbody tr[data-row-href] {
  cursor: pointer;
  transition: background .14s ease, box-shadow .14s ease;
}

.business-offers-table tbody tr[data-row-href]:hover td {
  background: #f4f9ff;
}

.business-renewal-records-table tbody tr[data-row-href],
.business-renewal-plan-table tbody tr[data-row-href],
.business-brokerage-groups-table tbody tr[data-row-href] {
  cursor: pointer;
}

.business-renewal-records-table tbody tr.is-selected-row td,
.business-renewal-plan-table tbody tr.is-selected-row td,
.business-brokerage-groups-table tbody tr.is-selected-row td {
  background: #eef6ff;
}

.business-renewal-plan-table tbody tr[data-row-href]:hover td {
  background: #f4f9ff;
}

.business-renewal-view-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 12px;
}

.business-renewal-view-tabs a {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 3px 14px;
  min-height: 78px;
  padding: 14px 16px;
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  background: #fff;
  color: #061a36;
  box-shadow: 0 12px 26px rgba(16, 32, 56, .04);
}

.business-renewal-view-tabs a:hover {
  border-color: #9fc8ef;
  background: #f8fbff;
}

.business-renewal-view-tabs a.is-active {
  border-color: #0b63c7;
  background: #f3f9ff;
  box-shadow: inset 4px 0 0 #0b63c7, 0 14px 28px rgba(16, 32, 56, .06);
}

.business-renewal-view-tabs a.has-attention:not(.is-active) {
  border-color: #f1d28b;
  background: #fffaf0;
}

.business-renewal-view-tabs span,
.business-renewal-view-tabs small {
  color: #5d6e86;
  font-size: 12px;
  font-weight: 900;
}

.business-renewal-view-tabs span {
  text-transform: uppercase;
  letter-spacing: 0;
}

.business-renewal-view-tabs strong {
  justify-self: end;
  grid-row: 1 / span 2;
  color: #061a36;
  font-size: 28px;
  font-weight: 950;
  line-height: 1;
}

.business-renewal-view-tabs a.has-attention strong {
  color: #a35b00;
}

.business-renewal-view-tabs a.is-active strong {
  color: #064c9a;
}

.business-renewal-payment-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
  padding: 10px;
  border: 1px solid #dbe8f5;
  border-radius: 8px;
  background: #f7faff;
}

.business-renewal-payment-tabs a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 8px 12px;
  color: #52637a;
  background: transparent;
  font-size: 13px;
  font-weight: 900;
}

.business-renewal-payment-tabs a:hover {
  border-color: #bdd7f0;
  background: #fff;
}

.business-renewal-payment-tabs a.is-active {
  border-color: #8cbcec;
  color: #075ebf;
  background: #fff;
  box-shadow: 0 5px 14px rgba(16, 32, 56, .08);
}

.business-renewal-payment-tabs a.is-paid.is-active {
  border-color: #8fd0aa;
  color: #08783b;
  background: #f1fff7;
}

.business-renewal-payment-tabs a.is-open.is-active {
  border-color: #efa8a8;
  color: #b91c1c;
  background: #fff5f5;
}

.business-renewal-payment-tabs svg {
  width: 18px;
  height: 18px;
}

.business-renewal-payment-tabs strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 25px;
  height: 25px;
  border-radius: 999px;
  padding: 0 7px;
  color: #075ebf;
  background: #e5f1ff;
}

.business-renewal-payment-tabs a.is-paid strong {
  color: #08783b;
  background: #dcf8e7;
}

.business-renewal-payment-tabs a.is-open strong {
  color: #b91c1c;
  background: #ffe1e1;
}

.business-renewal-payment-tabs small {
  color: #7a5a5a;
  font-size: 11px;
  font-weight: 850;
}

.business-renewal-payment-filter-note {
  margin: -5px 0 14px;
  color: #5d6e86;
  font-size: 12px;
  font-weight: 800;
}

.business-renewal-payment-filter-note a {
  color: #075ebf;
  font-weight: 950;
}

@media (max-width: 760px) {
  .business-renewal-view-tabs {
    grid-template-columns: 1fr;
  }

  .business-renewal-view-tabs a {
    min-height: 64px;
    padding: 12px 14px;
  }

  .business-renewal-payment-tabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .business-renewal-payment-tabs a {
    width: 100%;
  }
}

.business-renewal-records-table td:first-child,
.business-renewal-records-table th:first-child {
  width: 46px;
}

.business-renewal-records-table .muted-small {
  display: block;
  margin-top: 4px;
  line-height: 1.35;
}

.business-renewal-records-table .business-renewal-payment {
  min-width: 150px;
}

.business-renewal-records-table .business-renewal-payment .status-badge.danger,
.business-renewal-plan-table .business-renewal-payment .status-badge.danger {
  border: 1px solid #f2c2c2;
  color: #a61b1b;
  background: #fff0f0;
}

.business-renewal-records-table .business-renewal-open-amount,
.business-renewal-plan-table .business-renewal-open-amount {
  color: #a94442;
  font-weight: 900;
}

.business-renewal-plan-table .business-renewal-payment {
  min-width: 150px;
}

.business-renewal-plan-table .business-renewal-payment .status-badge + .status-badge,
.business-renewal-plan-table .business-renewal-payment .muted-small + .status-badge {
  margin-top: 6px;
}

.business-renewal-plan-table .business-renewal-payment .business-renewal-extend-button {
  margin-top: 8px;
  width: fit-content;
}

.business-renewal-extension-overview {
  display: grid;
  grid-template-columns: minmax(160px, .8fr) minmax(160px, .8fr) minmax(260px, 2.4fr);
  gap: 10px;
  margin: 0 16px 14px;
}

.business-renewal-extension-summary-card,
.business-renewal-extension-suggestions {
  min-height: 74px;
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  background: #fff;
  padding: 12px 14px;
}

.business-renewal-extension-summary-card {
  display: grid;
  align-content: center;
  gap: 2px;
}

.business-renewal-extension-summary-card span,
.business-renewal-extension-summary-card small,
.business-renewal-extension-empty {
  color: #5d6e86;
  font-size: 12px;
  font-weight: 900;
}

.business-renewal-extension-summary-card span {
  text-transform: uppercase;
}

.business-renewal-extension-summary-card strong {
  color: #061a36;
  font-size: 24px;
  font-weight: 950;
  line-height: 1;
}

.business-renewal-extension-summary-card.is-warning {
  border-color: #f1d28b;
  background: #fffaf0;
}

.business-renewal-extension-summary-card.is-warning strong {
  color: #9a5b00;
}

.business-renewal-extension-summary-card.is-success {
  border-color: #b7e4c7;
  background: #f2fff7;
}

.business-renewal-extension-summary-card.is-success strong {
  color: #087a3a;
}

.business-renewal-extension-suggestions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.business-renewal-extension-suggestions a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  border: 1px solid #cfe2f7;
  border-radius: 8px;
  padding: 7px 10px;
  color: #061a36;
  background: #f8fbff;
  font-size: 12px;
  font-weight: 950;
}

.business-renewal-extension-suggestions a:hover {
  border-color: #9fc8ef;
  background: #eef6ff;
}

.business-renewal-extension-suggestions a span {
  color: #5d6e86;
}

.business-renewal-extension-cell {
  min-width: 150px;
}

.business-renewal-extension-cell .status-badge {
  width: fit-content;
}

.business-renewal-extension-cell .button {
  min-width: 108px;
  margin-top: 8px;
}

.business-renewal-plan-card {
  border-left: 4px solid #0b63c7;
  overflow: hidden;
}

.business-renewal-plan-card .business-table-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
}

.business-renewal-plan-card .business-table-toolbar > div:first-child {
  flex: 1 1 260px;
}

.business-renewal-plan-total {
  display: grid;
  gap: 3px;
  min-width: 190px;
  border: 1px solid #cfe2f7;
  border-radius: 8px;
  padding: 10px 12px;
  background: #f8fbff;
}

.business-renewal-plan-total span {
  color: #5d6e86;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.business-renewal-plan-total strong {
  color: #061a36;
  font-size: 20px;
  font-weight: 950;
}

.business-renewal-plan-table th:first-child,
.business-renewal-plan-table td:first-child {
  width: 46px;
}

.business-renewal-plan-table .muted-small {
  display: block;
  margin-top: 4px;
  line-height: 1.35;
}

.business-renewal-summary-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #dce8f6;
}

.business-renewal-summary-strip.is-compact {
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 8px;
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.business-renewal-summary-item {
  display: grid;
  gap: 3px;
  padding: 4px 16px;
  text-align: center;
  border-right: 1px solid #e4edf8;
}

.business-renewal-summary-strip.is-compact .business-renewal-summary-item {
  display: grid;
  align-content: center;
  min-height: 64px;
  padding: 9px 12px;
  border: 1px solid #e1ecf8;
  border-radius: 8px;
  background: #fff;
  text-align: left;
}

.business-renewal-summary-item:last-child {
  border-right: 0;
}

.business-renewal-summary-item span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.business-renewal-summary-item strong {
  color: var(--ink);
  font-size: 22px;
  font-weight: 950;
}

.business-renewal-summary-strip.is-compact .business-renewal-summary-item strong {
  font-size: 19px;
  line-height: 1.1;
}

.business-renewal-summary-strip.is-compact .business-renewal-summary-item span {
  font-size: 11px;
  text-transform: uppercase;
}

.business-renewal-summary-strip.is-compact .business-renewal-summary-item small {
  display: block;
  margin-top: 2px;
}

.business-renewal-summary-item small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.business-renewal-summary-item.is-danger strong {
  color: #dc2626;
}

.business-renewal-summary-item.is-primary strong {
  color: #061a36;
}

.business-renewal-summary-item.is-success strong {
  color: #059669;
}

.business-renewal-summary-item.is-info strong {
  color: #52637a;
}

.business-renewal-summary-strip.is-compact .business-renewal-summary-status-card {
  align-content: start;
  gap: 7px;
}

.business-renewal-summary-status-list {
  display: grid;
  gap: 4px;
}

.business-renewal-summary-status-list > span {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 6px;
  min-height: 22px;
  padding: 3px 7px;
  border-radius: 6px;
  background: #f5f8fc;
}

.business-renewal-summary-status-list em,
.business-renewal-summary-status-list small {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.2;
}

.business-renewal-summary-status-list strong {
  font-size: 14px !important;
  line-height: 1 !important;
}

.business-renewal-summary-status-list .is-danger strong {
  color: #dc2626;
}

.business-renewal-summary-status-list .is-warning strong {
  color: #b45309;
}

.business-renewal-summary-status-list .is-success strong {
  color: #059669;
}

.business-renewal-summary-status-list .is-info strong {
  color: #0b63c7;
}

.business-renewal-status-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.business-renewal-status-strip.is-compact {
  gap: 7px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #e3eef9;
}

.business-renewal-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  padding: 6px 11px;
  border: 1px solid #d9e8f7;
  border-radius: 999px;
  background: #f8fbff;
  color: var(--ink);
}

.business-renewal-status-strip.is-compact .business-renewal-status-pill {
  min-height: 28px;
  padding: 4px 9px;
}

.business-renewal-status-pill strong {
  font-size: 18px;
  font-weight: 950;
}

.business-renewal-status-strip.is-compact .business-renewal-status-pill strong {
  font-size: 15px;
}

.business-renewal-status-pill em,
.business-renewal-status-pill small {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.business-renewal-status-pill.is-danger strong {
  color: #dc2626;
}

.business-renewal-status-pill.is-warning strong {
  color: #b45309;
}

.business-renewal-status-pill.is-success strong {
  color: #059669;
}

.business-renewal-status-pill.is-info strong {
  color: #0b63c7;
}

.business-renewal-payment-audit {
  margin-top: 12px;
  border: 1px solid #cfe0f4;
  border-radius: 10px;
  background: #fff;
}

.business-renewal-payment-audit summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
}

.business-renewal-payment-audit summary strong {
  color: #047857;
}

.business-renewal-payment-audit-table {
  overflow-x: auto;
  border-top: 1px solid #e2ebf6;
}

.business-renewal-payment-audit table {
  width: 100%;
  border-collapse: collapse;
}

.business-renewal-payment-audit th,
.business-renewal-payment-audit td {
  padding: 10px 12px;
  border-bottom: 1px solid #e8eff7;
  text-align: left;
  white-space: nowrap;
}

.business-renewal-payment-audit th {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.business-renewal-payment-audit td:last-child,
.business-renewal-payment-audit th:last-child {
  text-align: right;
}

.business-renewal-payment-audit td small {
  display: block;
  color: var(--muted);
}

.business-renewal-payment-audit tfoot td {
  border-bottom: 0;
  background: #f3fbf7;
  color: #065f46;
  font-weight: 900;
}

@media (max-width: 1280px) {
  .business-renewal-workbar-main {
    grid-template-columns: 1fr;
  }

  .business-renewal-workbar .business-renewal-year-nav {
    order: -1;
  }
}

@media (max-width: 980px) {
  .business-renewal-quantity-summary,
  .business-renewal-quantity-history-row {
    grid-template-columns: 1fr;
  }

  .business-renewal-quantity-history-row > div:last-child {
    justify-content: flex-start;
  }

  .business-renewal-quantity-note {
    grid-column: auto;
  }

  .business-renewal-workbar .business-renewal-search-row {
    grid-template-columns: 1fr;
  }

  .business-renewal-workbar .business-filter-actions {
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .business-renewal-summary-strip.is-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .business-renewal-plan-card .business-table-toolbar {
    align-items: stretch;
  }

  .business-renewal-plan-total {
    width: 100%;
  }
}

@media (max-width: 700px) {
  .business-renewal-extension-overview {
    grid-template-columns: 1fr;
    margin: 0 12px 12px;
  }

  .business-renewal-extension-suggestions {
    align-items: stretch;
  }

  .business-renewal-extension-suggestions a {
    width: 100%;
    justify-content: space-between;
  }

  .business-renewal-year-nav-compact {
    grid-template-columns: 1fr;
  }

  .business-renewal-year-nav-compact > span {
    order: -1;
  }

  .business-renewal-summary-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    border-top: 0;
    padding-top: 8px;
  }

  .business-renewal-summary-item {
    padding: 10px 12px;
    text-align: left;
    border: 1px solid #e0ebf7;
    border-radius: 8px;
    background: #f8fbff;
  }

  .business-renewal-summary-item strong {
    font-size: 19px;
  }

  .business-renewal-status-strip {
    gap: 6px;
  }

  .business-renewal-status-pill {
    flex: 1 1 calc(50% - 6px);
    justify-content: space-between;
    border-radius: 8px;
    padding: 8px 10px;
  }
}

@media (max-width: 520px) {
  .business-renewal-workbar {
    padding: 12px;
  }

  .business-renewal-summary-strip.is-compact {
    grid-template-columns: 1fr;
  }
}

.business-brokerage-groups-table .muted-small {
  display: block;
  margin-top: 4px;
  line-height: 1.35;
}

.business-brokerage-group-drawer .business-brokerage-group-form {
  padding-bottom: 32px;
}

.business-renewal-overview-grid {
  align-items: start;
}

.business-overview-list-card {
  overflow: hidden;
}

.business-overview-list {
  display: grid;
  gap: 0;
  padding: 0 16px 16px;
}

.business-overview-list-row {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(220px, .95fr);
  gap: 14px;
  align-items: center;
  min-width: 0;
  padding: 13px 10px;
  border-top: 1px solid #dbe7f5;
  border-radius: 8px;
  color: var(--ink);
  text-decoration: none;
  transition: background .14s ease, box-shadow .14s ease;
}

.business-overview-list-row:hover {
  background: #f7fbff;
  box-shadow: inset 4px 0 0 var(--blue);
}

.business-overview-list-main {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.business-overview-list-main strong {
  color: #061a36;
  font-size: 15px;
  font-weight: 950;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.business-overview-list-main span {
  color: #52637a;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.business-overview-list-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px 14px;
  min-width: 0;
}

.business-overview-list-meta > span:not(.status-badge) {
  display: grid;
  gap: 3px;
  min-width: 92px;
  max-width: 220px;
}

.business-overview-list-meta small {
  color: #5d6f86;
  font-size: 11px;
  font-weight: 950;
  line-height: 1.1;
  text-transform: uppercase;
}

.business-overview-list-meta b {
  color: #061a36;
  font-size: 13px;
  font-weight: 950;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.business-overview-list-meta em {
  color: #52637a;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

.business-overview-list-meta .status-badge {
  max-width: 100%;
  white-space: normal;
}

@media (max-width: 1180px) {
  .business-renewal-overview-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .business-overview-list {
    padding: 0 12px 12px;
  }

  .business-overview-list-row {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 12px 8px;
  }

  .business-overview-list-meta {
    justify-content: flex-start;
  }

  .business-overview-list-meta > span:not(.status-badge) {
    max-width: none;
  }
}

.business-control-dashboard {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
  padding: 17px 18px;
  border: 1px solid #d5e3f3;
  border-radius: 12px;
  background:
    radial-gradient(circle at 94% 4%, rgba(15, 111, 214, .08), transparent 28%),
    #fff;
  box-shadow: 0 16px 36px rgba(27, 60, 96, .08);
}

.business-control-dashboard-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 11px;
  border-bottom: 1px solid #dbe7f5;
}

.business-control-dashboard-head p:not(.eyebrow) {
  margin: 3px 0 0;
  color: #5b6c82;
  font-size: 12px;
  font-weight: 750;
}

.business-control-dashboard-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.business-control-dashboard-actions .button {
  min-height: 38px;
  padding: 7px 11px;
  white-space: nowrap;
}

.business-dashboard-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 0;
}

.business-dashboard-group-head > div {
  display: flex;
  align-items: center;
  gap: 11px;
}

.business-dashboard-group-head h3 {
  margin: 1px 0 0;
  color: #061a36;
  font-size: 18px;
  line-height: 1.15;
}

.business-dashboard-group-head > p {
  max-width: 620px;
  margin: 0;
  color: #5d6f86;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
  text-align: right;
}

.business-dashboard-group-head.is-brokerage {
  margin-top: 3px;
  padding-top: 12px;
  border-top: 1px solid #e4edf7;
}

.business-dashboard-group-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 9px;
}

.business-dashboard-group-icon svg {
  width: 18px;
  height: 18px;
}

.business-dashboard-group-icon.is-contract {
  color: #0f6fd6;
  background: #eaf4ff;
}

.business-dashboard-group-icon.is-brokerage {
  color: #7c3aed;
  background: #f2eafe;
}

.business-dashboard-kpi-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.business-dashboard-kpi {
  position: relative;
  display: grid;
  align-content: start;
  gap: 4px;
  min-width: 0;
  min-height: 98px;
  padding: 12px 14px 11px;
  overflow: hidden;
  border: 1px solid #d7e4f3;
  border-radius: 10px;
  background: #fff;
  color: #061a36;
  text-decoration: none;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.business-dashboard-kpi::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: #0f6fd6;
}

.business-dashboard-kpi:hover {
  transform: translateY(-2px);
  border-color: #a9c9ec;
  box-shadow: 0 12px 24px rgba(24, 67, 111, .1);
}

.business-dashboard-kpi > span {
  color: #51647c;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .02em;
  line-height: 1.2;
  text-transform: uppercase;
}

.business-dashboard-kpi > strong {
  color: #061a36;
  font-size: clamp(22px, 1.75vw, 27px);
  font-weight: 950;
  line-height: 1.08;
  overflow-wrap: anywhere;
}

.business-dashboard-kpi > small {
  color: #617188;
  font-size: 11px;
  font-weight: 780;
  line-height: 1.25;
}

.business-dashboard-kpi.is-green::before {
  background: #079455;
}

.business-dashboard-kpi.is-green > strong {
  color: #087443;
}

.business-dashboard-kpi.is-violet::before {
  background: #7c3aed;
}

.business-dashboard-kpi.is-violet > strong {
  color: #6d28d9;
}

.business-dashboard-kpi.is-red::before {
  background: #dc2626;
}

.business-dashboard-kpi.is-red > strong {
  color: #b91c1c;
}

.business-contract-alert-grid {
  gap: 16px;
}

.business-attention-card {
  border-top: 4px solid #d49a13;
}

.business-attention-card.is-danger {
  border-top-color: #dc3b3b;
}

.business-attention-card .business-table-toolbar {
  align-items: flex-start;
  gap: 16px;
}

.business-attention-total {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  min-height: 38px;
  padding: 7px 11px;
  border: 1px solid #f0cf80;
  border-radius: 999px;
  background: #fff8e5;
  color: #a45d00;
  font-size: 14px;
  font-weight: 950;
  white-space: nowrap;
}

.business-attention-card.is-danger .business-attention-total {
  border-color: #f1b6b6;
  background: #fff0f0;
  color: #b91c1c;
}

.business-overview-success-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 92px;
  padding: 18px;
  border-top: 1px solid #dbe7f5;
  color: #087443;
  font-size: 13px;
  font-weight: 900;
  text-align: center;
}

.business-overview-success-empty svg {
  width: 21px;
  height: 21px;
  flex: 0 0 auto;
}

.business-attention-more {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: -5px 16px 16px;
  padding: 10px 12px;
  border: 1px solid #d6e4f3;
  border-radius: 9px;
  color: #0f62bd;
  font-size: 12px;
  font-weight: 950;
  text-decoration: none;
}

.business-attention-more:hover {
  background: #f4f9ff;
}

.business-attention-more svg {
  width: 16px;
  height: 16px;
}

@media (max-width: 1180px) {
  .business-control-dashboard-head {
    display: grid;
  }

  .business-control-dashboard-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 900px) {
  .business-dashboard-kpi-grid {
    grid-template-columns: 1fr;
  }

  .business-dashboard-group-head {
    align-items: flex-start;
  }

  .business-dashboard-group-head > p {
    max-width: 44%;
  }
}

@media (max-width: 640px) {
  .business-control-dashboard {
    padding: 15px;
  }

  .business-control-dashboard-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .business-control-dashboard-actions .button {
    justify-content: center;
    white-space: normal;
  }

  .business-dashboard-group-head {
    display: grid;
  }

  .business-dashboard-group-head > p {
    max-width: none;
    text-align: left;
  }

  .business-dashboard-kpi {
    min-height: 96px;
  }
}

.business-inline-form {
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(90px, 1fr) minmax(130px, 1fr);
  max-width: 320px;
}

.business-inline-form input {
  min-height: 40px;
}

.business-inline-form .button {
  grid-column: 1 / -1;
}

.business-documents-table tbody tr[data-row-href]:hover td:first-child {
  box-shadow: inset 4px 0 0 var(--blue);
}

.business-partner-table th,
.business-partner-table td,
.business-catalog-table th,
.business-catalog-table td,
.business-kpd-table th,
.business-kpd-table td {
  vertical-align: top;
}

.business-warning-card {
  margin-bottom: 12px;
  border-left: 5px solid #d97706;
}

.business-partner-drawer .unit-settings-form {
  display: grid;
  gap: 16px;
}

.business-partner-overview-table {
  min-width: 1040px;
}

.business-partner-overview-table tbody tr[data-row-href] {
  cursor: pointer;
}

.business-partner-overview-table tbody tr[data-row-href] td {
  padding-top: 16px;
  padding-bottom: 16px;
}

.business-partner-overview-table tbody tr[data-row-href]:hover td {
  background: #f7fbff;
}

.business-partner-overview-table td:nth-child(2) {
  min-width: 240px;
}

.business-partner-overview-table td:nth-child(3) {
  min-width: 190px;
}

.business-partner-overview-table td:nth-child(4) {
  min-width: 210px;
}

.business-partner-overview-table .muted-small {
  display: block;
  margin-top: 4px;
  line-height: 1.35;
}

.business-catalog-list-card .business-table-toolbar {
  padding-bottom: 4px;
}

.business-catalog-overview-table tbody tr[data-row-href] {
  cursor: pointer;
}

.business-catalog-overview-table tbody tr[data-row-href]:hover td {
  background: #f7fbff;
}

.business-catalog-overview-table .muted-small {
  display: block;
  margin-top: 4px;
  line-height: 1.35;
}

.business-partner-drawer {
  width: min(920px, calc(100vw - 28px));
}

.business-partner-drawer-head {
  margin-bottom: 16px;
}

.business-partner-drawer-head h2 {
  line-height: 1.08;
}

.business-partner-panel-main {
  background: #f7fbff;
  border-color: #cfe3ff;
}

.business-partner-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .95fr);
  gap: 18px 20px;
  align-items: start;
}

.business-partner-main-grid .field {
  min-width: 0;
}

.business-partner-name-field,
.business-partner-oib-fetch-field {
  align-self: start;
}

.business-partner-name-field input,
.business-partner-oib-fetch input {
  min-height: 52px;
}

.business-partner-panel-contact {
  background: #f3fbf7;
  border-color: #ccebdc;
}

.business-partner-delete-panel {
  background: #fff7ed;
  border-color: #fed7aa;
}

.business-partner-delete-panel.is-blocked {
  background: #fff1f2;
  border-color: #fecdd3;
}

.business-partner-usage-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.business-partner-usage-list span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid #fecdd3;
  border-radius: 999px;
  color: #9f1239;
  background: #fff;
  font-size: 12px;
  font-weight: 900;
}

.business-drawer-panel-main {
  background: #f7fbff;
  border-color: #cfe3ff;
}

.business-drawer-panel-finance {
  background: #fff8e7;
  border-color: #f2d99a;
}

.business-partner-active-toggle {
  align-self: end;
  min-height: 48px;
}

.business-partner-drawer textarea {
  min-height: 116px;
}

.business-offer-drawer {
  width: min(1120px, calc(100vw - 28px));
}

.business-renewal-drawer {
  width: min(1040px, calc(100vw - 28px));
}

.business-renewal-drawer-tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 8px;
  padding: 12px 24px 0;
  border-top: 1px solid #dbe7f5;
  background: #fff;
}

.business-renewal-drawer-tabs button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  padding: 10px 12px;
  color: #52637a;
  background: #fff;
  font-size: 14px;
  font-weight: 950;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}

.business-renewal-drawer-tabs button:hover,
.business-renewal-drawer-tabs button.is-active {
  border-color: #0b68d1;
  color: #075ebf;
  background: #eef6ff;
}

.business-renewal-drawer-tabs button.is-active {
  box-shadow: inset 0 0 0 1px rgba(11, 104, 209, .18);
}

.business-renewal-drawer-panel[hidden] {
  display: none !important;
}

.business-renewal-drawer-panel {
  display: block;
}

.business-renewal-partner-grid .business-renewal-offer-item-field {
  grid-column: 1 / -1;
}

.business-renewal-offer-preview-shell .business-renewal-drawer {
  width: min(860px, calc(100vw - 28px));
}

.business-renewal-period-panel {
  background: #f3fbf7;
  border-color: #ccebdc;
}

.business-renewal-period-panel .grid {
  align-items: start;
}

.business-renewal-period-panel .field {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.business-renewal-period-panel .field label {
  min-height: 18px;
}

.business-renewal-period-panel select,
.business-renewal-period-panel input {
  min-height: 58px;
}

.business-renewal-year-field .field-hint {
  display: block;
  min-height: 18px;
  margin-top: 6px;
}

.business-renewal-preview-errors {
  color: #8b1a1a;
  background: #fff1f1;
  border-color: #fecaca;
}

.business-renewal-preview-errors p {
  margin: 6px 0 0;
  font-size: 14px;
  font-weight: 850;
}

.business-renewal-preview-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  padding: 12px 14px;
  border: 1px solid #cfe3ff;
  border-radius: 8px;
  background: #fff;
}

.business-renewal-preview-item span,
.business-renewal-preview-row span,
.business-renewal-preview-total span {
  color: #5b6b82;
  font-size: 12px;
  font-weight: 900;
}

.business-renewal-preview-item strong {
  color: #061a36;
  text-align: right;
}

.business-renewal-preview-list {
  overflow: hidden;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
}

.business-renewal-preview-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 12px 14px;
  border-bottom: 1px solid #e2edf8;
}

.business-renewal-preview-row:last-child {
  border-bottom: 0;
}

.business-renewal-preview-row div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.business-renewal-preview-row strong {
  color: #061a36;
}

.business-renewal-preview-row em {
  color: #0b63c7;
  font-style: normal;
  font-weight: 950;
  white-space: nowrap;
}

.business-renewal-preview-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
  padding: 14px 16px;
  border: 1px solid #b7d5f6;
  border-radius: 8px;
  background: #eaf4ff;
}

.business-renewal-preview-total strong {
  color: #061a36;
  font-size: 22px;
}

.business-contract-drawer {
  width: min(1080px, calc(100vw - 28px));
}

.business-contract-drawer-tabs {
  padding-inline: 22px;
}

.business-contract-form {
    gap: 16px;
}

.business-contract-delete-panel {
    border-color: #fecaca;
    background: #fffafa;
}

.contract-danger-notice {
    display: grid;
    gap: 4px;
    padding: 14px 16px;
    border: 1px solid #fecaca;
    border-left: 4px solid var(--danger);
    border-radius: 9px;
    background: #fff1f2;
    color: #8b1e2d;
}

.contract-danger-notice strong {
    color: #991b1b;
}

.contract-danger-notice span {
    font-size: 14px;
    line-height: 1.45;
}

.business-contract-delete-confirm {
    border-color: #fecaca;
    background: #fff;
}

.business-contract-delete-phrase {
    max-width: 440px;
}

.business-contract-period-grid,
.business-contract-finance-grid {
  align-items: start;
}

.business-contract-period-grid .field,
.business-contract-finance-grid .field {
  min-width: 0;
}

.business-contract-period-grid input,
.business-contract-period-grid select,
.business-contract-finance-grid input,
.business-contract-finance-grid select {
  min-height: 58px;
}

.business-contract-auto-renew {
  align-self: end;
  min-height: 58px;
  padding: 13px 14px;
  border: 1px solid #d9e7f8;
  border-radius: 8px;
  background: #fff;
}

.contract-kpi-box {
  display: grid;
  align-content: center;
  min-height: 58px;
  border: 1px solid #d9e7f8;
  border-radius: 8px;
  padding: 11px 13px;
  background: #fff;
}

.contract-kpi-box.is-warning {
  border-color: #f6d38e;
  background: #fff8e7;
}

.contract-kpi-box span {
  color: #5b6b82;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.contract-kpi-box strong {
  color: #061a36;
  font-size: 18px;
  font-weight: 950;
}

.business-contract-summary-grid .stat-card small {
  display: block;
  margin-top: 3px;
  color: #5b6b82;
  font-size: 12px;
  font-weight: 850;
}

.business-contract-filter-primary-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(590px, 1.1fr);
  gap: 14px;
  align-items: end;
}

.business-contract-filter-card .business-contract-filter-primary-row .business-search-field {
  width: 100%;
  max-width: none;
  min-width: 0;
}

.business-contract-search-control-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto;
  gap: 8px;
  align-items: stretch;
}

.business-contract-search-control-row .business-filter-actions {
  flex-wrap: nowrap;
}

.business-contract-search-control-row .button {
  white-space: nowrap;
}

.business-contract-year-tabs {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.business-contract-filter-period-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 220px);
  gap: 8px;
  align-items: end;
  min-width: 0;
}

.business-contract-year-field,
.business-contract-status-field {
  min-width: 0;
}

@media (max-width: 1450px) {
  .business-contract-filter-primary-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .business-contract-filter-period-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .business-contract-search-control-row {
    grid-template-columns: 1fr;
  }

  .business-contract-search-control-row .business-filter-actions {
    flex-wrap: wrap;
  }

  .business-contract-year-tabs {
    grid-template-columns: 1fr;
  }
}

.business-contract-readonly-row {
  background: #fbfdff;
}

.business-contract-readonly-row .actions .status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.business-contract-readonly-row .actions .status-badge svg {
  width: 14px;
  height: 14px;
}

.business-contract-select-filter {
  flex: 1 1 260px;
  min-width: 240px;
}

.business-contract-payment-table {
  min-width: 1180px;
}

.business-contract-table {
  min-width: 1120px;
  table-layout: fixed;
}

.business-contract-table .business-contract-col-partner {
  width: 21%;
}

.business-contract-table .business-contract-col-period {
  width: 19%;
}

.business-contract-table .business-contract-col-value {
  width: 14%;
}

.business-contract-table .business-contract-col-payment {
  width: 16%;
}

.business-contract-table .business-contract-col-next {
  width: 20%;
}

.business-contract-table .business-contract-col-action {
  width: 112px;
}

.business-contract-table th,
.business-contract-table td {
  vertical-align: top;
  padding-right: 11px;
  padding-left: 11px;
}

.business-contract-table .business-contract-main-cell,
.business-contract-table td:nth-child(2) {
  overflow-wrap: anywhere;
}

.business-contract-main-cell {
  vertical-align: top;
}

.business-contract-main-cell > strong {
  display: block;
  color: #061a36;
  font-size: 15px;
  line-height: 1.28;
}

.business-contract-main-cell > span {
  display: block;
  margin-top: 3px;
  color: #5b6b82;
  font-size: 12px;
  font-weight: 800;
}

.business-contract-main-cell > b {
  display: block;
  margin-top: 4px;
  color: #31506f;
  font-size: 12px;
  font-weight: 900;
}

.business-contract-table td:nth-child(2) > strong {
  display: block;
  margin-bottom: 7px;
  color: #061a36;
  line-height: 1.35;
}

.business-contract-table td:nth-child(2) > .status-badge {
  width: fit-content;
  margin-bottom: 5px;
}

.business-contract-table td:nth-child(2) > .muted-small {
  display: block;
  line-height: 1.4;
}

.business-contract-value-cell {
  vertical-align: top;
}

.business-contract-value-cell > strong {
  display: block;
  color: #061a36;
  font-size: 17px;
  font-weight: 950;
  line-height: 1.2;
}

.business-contract-value-cell > span {
  display: block;
  margin-top: 4px;
  color: #5b6b82;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}

.business-contract-value-cell > em {
  display: block;
  width: fit-content;
  margin-top: 4px;
  border-radius: 999px;
  padding: 4px 7px;
  color: #34506f;
  background: #eef4fb;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.business-contract-payment-cell {
  vertical-align: top;
}

.business-contract-payment-cell > span {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: baseline;
}

.business-contract-payment-cell > span + span {
  margin-top: 8px;
}

.business-contract-payment-cell small {
  color: #5b6b82;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.business-contract-payment-cell strong {
  color: #061a36;
  font-size: 13px;
  font-weight: 950;
  text-align: right;
  white-space: nowrap;
}

.business-contract-payment-cell .text-success {
  color: #07853f;
}

.business-contract-payment-cell .text-danger {
  color: #c51f1f;
}


.business-contract-next-action {
  display: grid;
  gap: 4px;
  min-height: 54px;
  border-left: 3px solid #8ca8c7;
  border-radius: 0 7px 7px 0;
  padding: 7px 8px;
  background: #f7faff;
}

.business-contract-next-action > strong {
  color: #173653;
  font-size: 13px;
  font-weight: 950;
  line-height: 1.3;
}

.business-contract-next-action > span {
  color: #5b6b82;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.4;
}

.business-contract-next-action.is-overdue {
  border-left-color: #dc2626;
  background: #fff3f3;
}

.business-contract-next-action.is-overdue > strong {
  color: #b91c1c;
}

.business-contract-next-action.is-upcoming {
  border-left-color: #d49a13;
  background: #fff9e9;
}

.business-contract-next-action.is-upcoming > strong {
  color: #8a5900;
}

.business-contract-next-action.is-ok {
  border-left-color: #16a34a;
  background: #f0fbf4;
}

.business-contract-next-action.is-ok > strong {
  color: #08783b;
}

.business-contract-next-action.is-ended {
  border-left-color: #8a9bb0;
  background: #f3f6f9;
}

.business-contract-next-action.is-ended > strong {
  color: #52657a;
}

.business-contract-next-action.is-ended-open {
  border-left-color: #dc2626;
  background: #fff3f3;
}

.business-contract-next-action.is-ended-open > strong {
  color: #b91c1c;
}

.business-contract-table tbody tr[data-row-href],
.business-contract-partner-table tbody tr[data-row-href],
.business-contract-payment-table tbody tr[data-row-href],
.business-contract-payment-partner-table tbody tr[data-row-href],
.business-contract-payment-detail-table tbody tr[data-row-href],
.business-contract-history-table tbody tr[data-row-href] {
  cursor: pointer;
}

.business-contract-table tbody tr[data-row-href]:hover td,
.business-contract-partner-table tbody tr[data-row-href]:hover td,
.business-contract-payment-table tbody tr[data-row-href]:hover td,
.business-contract-payment-partner-table tbody tr[data-row-href]:hover td,
.business-contract-payment-detail-table tbody tr[data-row-href]:hover td,
.business-contract-history-table tbody tr[data-row-href]:hover td {
  background: #f7fbff;
}

.business-contract-table .actions .button {
  min-height: 36px;
  min-width: 94px;
  padding-right: 10px;
  padding-left: 10px;
  justify-content: center;
  white-space: nowrap;
}

.business-contract-table td.actions {
  padding-right: 8px;
  padding-left: 8px;
}

.business-contract-payment-form {
  margin-bottom: 12px;
}

.business-contract-payment-summary-grid {
  margin-bottom: 12px;
}

.business-contract-payment-summary-grid .stat-card small {
  display: block;
  margin-top: 3px;
  color: #5b6b82;
  font-size: 12px;
  font-weight: 850;
}

.business-contract-payment-workbench {
  overflow: hidden;
}

.business-contract-payment-workbench > .business-table-toolbar {
  align-items: center;
}

.business-contract-payment-workbench > .business-table-toolbar .button {
  flex: 0 0 auto;
}

.business-contract-payment-view-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0 16px 12px;
  border: 1px solid #d9e7f5;
  border-radius: 12px;
  padding: 6px;
  background: #f2f7fc;
}

.business-contract-payment-view-tab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 62px;
  border: 1px solid transparent;
  border-radius: 9px;
  padding: 10px 12px;
  color: #51647b;
  background: transparent;
  cursor: pointer;
}

.business-contract-payment-view-tab:hover {
  background: #fff;
}

.business-contract-payment-view-tab.is-active {
  border-color: #7ab7fa;
  color: #075ebf;
  background: #fff;
  box-shadow: 0 6px 18px rgba(15, 79, 143, .08);
}

.business-contract-payment-view-tab.is-paid.is-active {
  border-color: #72d3a1;
  color: #07853f;
}

.business-contract-payment-view-tab.is-all.is-active {
  border-color: #aec6df;
  color: #17395f;
}

.business-contract-payment-view-tab-main {
  display: grid;
  gap: 2px;
  text-align: left;
}

.business-contract-payment-view-tab-main strong,
.business-contract-payment-view-tab > b {
  font-size: 1rem;
}

.business-contract-payment-view-tab-main small {
  color: #6b7d91;
  font-weight: 700;
}

.business-contract-payment-view-tab > b {
  white-space: nowrap;
}

.business-contract-payment-view-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 16px 10px;
  color: #61748a;
}

.business-contract-payment-view-info strong {
  color: #17395f;
  white-space: nowrap;
}

.business-contract-payment-view-panel[hidden] {
  display: none;
}

.business-payment-sort-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 0;
  padding: 0;
  color: inherit;
  background: transparent;
  font: inherit;
  font-weight: inherit;
  text-align: left;
  cursor: pointer;
}

.business-payment-sort-indicator {
  color: #8da2b8;
  font-size: .85rem;
  line-height: 1;
}

.business-payment-sort-button[data-sort-direction] .business-payment-sort-indicator {
  color: #075ebf;
  font-size: 0;
}

.business-payment-sort-button[data-sort-direction="asc"] .business-payment-sort-indicator::before {
  content: "↑";
  font-size: .9rem;
}

.business-payment-sort-button[data-sort-direction="desc"] .business-payment-sort-indicator::before {
  content: "↓";
  font-size: .9rem;
}

.business-contract-payment-partner-card {
  margin-bottom: 12px;
}

.business-contract-payment-plan-actions {
  justify-content: flex-start;
  padding: 0 16px 12px;
}

.business-contract-payment-partner-table {
  min-width: 1080px;
}

@media (max-width: 760px) {
  .business-contract-payment-view-tabs {
    grid-template-columns: 1fr;
  }

  .business-contract-payment-view-info {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .business-contract-payment-workbench > .business-table-toolbar .button {
    width: 100%;
    justify-content: center;
  }
}

.business-contract-payment-paid-check {
  margin: 14px 0;
}

.business-contract-payment-detail-drawer {
  width: min(1180px, calc(100vw - 28px));
}

.business-contract-payment-detail-form {
  gap: 16px;
}

.business-contract-payment-detail-panel {
  display: grid;
  gap: 14px;
}

.business-contract-detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.business-contract-detail-year-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.business-contract-detail-year-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  min-width: 68px;
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  padding: 8px 12px;
  color: #52637a;
  background: #fff;
  font-size: 14px;
  font-weight: 950;
  text-decoration: none;
}

.business-contract-detail-year-tabs a:hover,
.business-contract-detail-year-tabs a.is-active {
  border-color: #0b68d1;
  color: #075ebf;
  background: #eef6ff;
}

.business-contract-payment-detail-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.business-contract-payment-detail-kpis div {
  display: grid;
  gap: 4px;
  min-height: 72px;
  border: 1px solid #d9e7f8;
  border-radius: 8px;
  padding: 12px 14px;
  background: #fff;
}

.business-contract-payment-detail-kpis span {
  color: #5b6b82;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.business-contract-payment-detail-kpis strong {
  color: #061a36;
  font-size: 20px;
  font-weight: 950;
}

.business-contract-payment-detail-table,
.business-contract-history-table {
  min-width: 920px;
}

.text-danger {
  color: #dc2626;
}

.business-contract-history-list {
  display: grid;
  gap: 8px;
}

.business-contract-history-list a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #d9e7f8;
  border-radius: 8px;
  padding: 11px 12px;
  color: inherit;
  background: #fff;
  text-decoration: none;
}

.business-contract-history-list a:hover {
  border-color: #9fc5f6;
  background: #f7fbff;
}

.business-contract-history-list span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.business-contract-history-list strong {
  color: #061a36;
}

.business-contract-drawer-table {
  min-width: 680px;
}

@media screen and (max-width: 760px) {
  .business-contract-detail-head {
    flex-direction: column;
  }

  .business-contract-detail-year-tabs {
    justify-content: flex-start;
  }

  .business-contract-payment-detail-kpis {
    grid-template-columns: 1fr;
  }

  .business-renewal-preview-item,
  .business-renewal-preview-total {
    align-items: flex-start;
    flex-direction: column;
  }

  .business-renewal-preview-item strong {
    text-align: left;
  }

  .business-renewal-preview-row {
    grid-template-columns: minmax(0, 1fr);
  }
}

.business-offer-drawer-head .action-row {
  align-items: center;
}

.business-offer-form {
  padding-bottom: 24px;
}

.business-offer-total-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 72px;
  padding: 12px 16px;
  border: 1px solid #cfe3ff;
  border-radius: 8px;
  background: #fff;
}

.business-offer-total-box span,
.business-offer-line-total span {
  color: #5b6b82;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.business-offer-total-box strong,
.business-offer-line-total strong {
  color: #0057c2;
  font-size: 24px;
  font-weight: 950;
  line-height: 1.1;
}

.business-offer-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.business-offer-section-head h4 {
  margin: 0;
}

.business-offer-lines {
  display: grid;
  gap: 8px;
}

.business-offer-line {
  display: grid;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid #d8e6f7;
  border-radius: 8px;
  background: #fff;
}

.business-offer-line:focus-within {
  border-color: #95c4ff;
  box-shadow: 0 0 0 3px rgba(0, 101, 220, .08);
}

.business-offer-line.has-error {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, .1);
}

.business-offer-line-error {
  display: block;
  margin-top: 4px;
  color: #b42318;
  font-size: 12px;
  font-weight: 900;
}

.business-offer-line-summary {
  display: none;
}

.business-offer-line-body {
  display: grid;
  gap: 8px;
}

.business-offer-line.is-compact {
  padding: 0;
  overflow: hidden;
  background: #fdfefe;
}

.business-offer-line.is-compact .business-offer-line-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto 44px;
  gap: 10px;
  align-items: center;
  min-height: 58px;
  padding: 8px 10px;
}

.business-offer-line.is-compact .business-offer-line-body {
  display: none;
}

.business-offer-line-summary-main {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  border: 0;
  background: transparent;
  color: #061a36;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.business-offer-line-summary-main:hover strong,
.business-offer-line-summary-main:focus strong {
  color: #0057c2;
}

.business-offer-line-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: #eaf4ff;
  color: #0057c2;
  font-size: 13px;
  font-weight: 950;
}

.business-offer-line-summary-text {
  min-width: 0;
}

.business-offer-line-summary-text strong,
.business-offer-line-summary-text small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.business-offer-line-summary-text strong {
  color: #061a36;
  font-size: 15px;
  font-weight: 950;
}

.business-offer-line-summary-text small {
  margin-top: 2px;
  color: #52637a;
  font-size: 11px;
  font-weight: 850;
}

.business-offer-line-summary-total {
  color: #061a36;
  font-size: 16px;
  font-weight: 950;
  white-space: nowrap;
}

.business-offer-summary-edit {
  min-height: 38px;
  padding: 8px 12px;
}

.business-offer-summary-remove {
  width: 38px;
  min-width: 38px;
  height: 38px;
  padding: 0;
  justify-content: center;
}

.business-offer-line-main {
  display: grid;
  grid-template-columns: minmax(240px, .8fr) minmax(320px, 1.2fr);
  gap: 12px;
}

.business-offer-item-field {
  position: relative;
}

.business-offer-line-grid {
  display: grid;
  grid-template-columns: minmax(90px, .7fr) minmax(100px, .8fr) minmax(74px, .6fr) minmax(92px, .7fr) minmax(116px, .8fr) minmax(96px, .7fr) minmax(132px, .8fr) 52px;
  gap: 10px;
  align-items: end;
}

.business-offer-line-total {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 58px;
  padding: 8px 10px;
  border: 1px solid #d8e6f7;
  border-radius: 8px;
  background: #f7fbff;
}

.business-offer-line-total strong {
  font-size: 17px;
}

.business-offer-remove-line {
  width: 52px;
  min-width: 52px;
  height: 52px;
  padding: 0;
  justify-content: center;
}

.business-offer-line-actions {
  display: flex;
  justify-content: flex-end;
  padding-top: 2px;
}

.business-offer-line-actions .button {
  min-height: 38px;
  padding: 8px 14px;
}

.business-drawer-panel-note {
  background: #f8fbff;
  border-color: #d8e6f7;
}

.business-offer-document-grid {
  display: grid;
  grid-template-columns: minmax(360px, 1.7fr) minmax(170px, .6fr) minmax(150px, .5fr) minmax(150px, .5fr) minmax(150px, .5fr);
  gap: 12px;
  align-items: end;
}

.business-offer-partner-field .roko-combobox {
  width: 100%;
}

.business-offer-kind-pill {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  min-height: 56px;
  padding: 6px 0 6px 12px;
  border-left: 1px solid #d8e6f7;
}

.business-offer-kind-pill span,
.business-offer-kind-pill small {
  color: #5b6b82;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.2;
}

.business-offer-kind-pill span {
  text-transform: uppercase;
}

.business-offer-kind-pill strong {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #eaf4ff;
  color: #061a36;
  font-size: 13px;
  font-weight: 950;
  line-height: 1.15;
}

.business-offer-date-field input,
.business-offer-status-field select {
  min-height: 42px;
}

.business-offer-section-head {
  align-items: flex-start;
}

.business-offer-section-head span {
  color: #5b6b82;
  font-size: 13px;
  font-weight: 800;
}

.business-offer-line-picker {
  display: grid;
  grid-template-columns: minmax(260px, 1fr);
}

.business-offer-item-field .roko-combobox {
  width: 100%;
}

.business-offer-line label {
  margin-bottom: 4px;
  font-size: 10px;
}

.business-offer-line input,
.business-offer-line select {
  min-height: 38px;
}

.business-offer-selected-item {
  display: block;
  min-height: 15px;
  margin-top: 5px;
  color: #52637a;
  font-size: 11px;
  font-weight: 900;
}

.business-offer-line-grid {
  grid-template-columns: minmax(116px, .95fr) minmax(76px, .55fr) minmax(84px, .62fr) minmax(100px, .7fr) minmax(88px, .58fr) minmax(116px, .72fr) 44px;
  gap: 8px;
}

.business-offer-kpd-field input,
.business-offer-unit-field input {
  min-height: 38px;
}

.business-offer-line-total {
  min-height: 44px;
  padding: 6px 10px;
}

.business-offer-line-total span {
  font-size: 10px;
}

.business-offer-line-total strong {
  font-size: 15px;
}

.business-offer-remove-line {
  width: 44px;
  min-width: 44px;
  height: 44px;
}

.business-offer-add-row {
  display: flex;
  justify-content: flex-start;
  margin-top: 12px;
}

.business-offer-grand-total {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 2px solid #07111f;
}

.business-offer-grand-total span {
  color: #061a36;
  font-size: 15px;
  font-weight: 950;
  text-transform: uppercase;
}

.business-offer-grand-total strong {
  min-width: 150px;
  color: #061a36;
  font-size: 22px;
  font-weight: 950;
  text-align: right;
}

.business-offer-note-panel {
  padding: 0;
  overflow: hidden;
}

.business-offer-note-panel summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  align-items: center;
  min-height: 66px;
  padding: 16px 22px;
  cursor: pointer;
  list-style: none;
}

.business-offer-note-panel summary::-webkit-details-marker {
  display: none;
}

.business-offer-note-panel summary strong {
  color: #0057c2;
  font-size: 17px;
  font-weight: 950;
}

.business-offer-note-panel summary small {
  color: #5b6b82;
  font-size: 13px;
  font-weight: 800;
}

.business-offer-note-panel summary svg {
  grid-row: 1 / span 2;
  grid-column: 2;
  color: #0057c2;
  transition: transform .18s ease;
}

.business-offer-note-panel[open] summary svg {
  transform: rotate(180deg);
}

.business-offer-note-panel > .field {
  padding: 0 22px 20px;
}

@media (max-width: 1100px) {
  .business-partner-main-grid {
    grid-template-columns: 1fr;
  }

  .business-offer-document-grid,
  .business-offer-line-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .business-offer-partner-field {
    grid-column: 1 / -1;
  }

  .business-offer-line-total,
  .business-offer-remove-line {
    min-height: 52px;
  }

  .business-offer-line.is-compact .business-offer-line-summary {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .business-offer-summary-edit {
    grid-column: 1;
    justify-self: start;
  }

  .business-offer-summary-remove {
    grid-column: 2;
    grid-row: 2;
  }
}

@media (max-width: 720px) {
  .business-partner-oib-fetch {
    grid-template-columns: 1fr;
  }

  .business-partner-oib-fetch .button {
    width: 100%;
  }

  .business-offer-section-head,
  .business-offer-drawer-head .action-row {
    align-items: stretch;
    flex-direction: column;
  }

  .business-offer-document-grid,
  .business-offer-line-grid {
    grid-template-columns: 1fr;
  }

  .business-offer-grand-total {
    align-items: stretch;
    flex-direction: column;
    gap: 6px;
  }

  .business-offer-grand-total strong {
    min-width: 0;
    text-align: left;
  }

  .business-offer-remove-line {
    width: 100%;
  }

  .business-offer-line.is-compact .business-offer-line-summary {
    grid-template-columns: 1fr;
  }

  .business-offer-line-summary-total,
  .business-offer-summary-edit,
  .business-offer-summary-remove {
    justify-self: stretch;
  }

  .business-offer-summary-remove {
    width: 100%;
  }
}

.business-synesis-card {
  display: grid;
  gap: 14px;
}

.business-synesis-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.1fr) minmax(280px, .8fr);
  gap: 14px;
  margin-bottom: 14px;
}

.business-synesis-flow {
  display: grid;
  gap: 14px;
}

.business-synesis-panel {
  display: grid;
  gap: 14px;
  padding: 18px 20px;
  border: 1px solid #d6e4f5;
  border-left: 5px solid #0b63c7;
  border-radius: 8px;
  background: linear-gradient(180deg, #ffffff, #fbfdff);
  box-shadow: 0 14px 34px rgba(8, 43, 84, .05);
}

.business-synesis-output-panel {
  border-left-color: #0f7f4f;
  background: linear-gradient(180deg, #ffffff, #fbfffc);
}

.business-synesis-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid #e2edf7;
}

.business-synesis-panel-head h2 {
  margin: 2px 0 4px;
  font-size: 26px;
}

.business-synesis-panel-head > span {
  display: inline-grid;
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  place-items: center;
  border-radius: 8px;
  color: #0b63c7;
  background: #eef8ff;
}

.business-synesis-panel-head > span i {
  width: 25px;
  height: 25px;
}

.business-synesis-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.business-synesis-action-card {
  display: grid;
  align-content: start;
  gap: 12px;
  border-color: #d6e4f5;
  background: #fff;
  padding: 16px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
}

.business-synesis-action-card.is-primary {
  background: linear-gradient(180deg, #f8fbff, #fff);
}

.business-synesis-action-card.is-muted {
  background: linear-gradient(180deg, #fbfdff, #fff);
}

.business-synesis-action-card.is-installer {
  background: linear-gradient(180deg, #f8fbff, #fff);
}

.business-synesis-action-head {
  display: flex;
  align-items: center;
  gap: 11px;
}

.business-synesis-action-head > span {
  display: inline-grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 8px;
  color: #0b63c7;
  background: #eaf4ff;
}

.business-synesis-action-head svg {
  width: 21px;
  height: 21px;
}

.business-synesis-action-head h2 {
  margin: 1px 0 0;
  font-size: 22px;
}

.business-synesis-export-placeholder {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  border: 1px dashed #bfd6ec;
  border-radius: 8px;
  background: #f8fbff;
}

.business-synesis-export-placeholder span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #52637a;
  font-weight: 900;
}

.business-synesis-card .soft-divider {
  width: 100%;
  height: 1px;
  margin: 0;
  border: 0;
  background: #d6e4f5;
}

.business-synesis-upload {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
  padding: 12px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f7fbff;
}

.business-synesis-upload .field {
  margin: 0;
}

.business-synesis-upload input[type="file"] {
  min-height: 42px;
  padding: 8px 10px;
}

.business-synesis-download {
  display: grid;
  align-content: start;
  gap: 9px;
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
}

.business-synesis-download strong {
  color: #061a36;
  font-size: 15px;
  font-weight: 950;
}

.business-synesis-download .button {
  width: fit-content;
}

.business-synesis-download span {
  color: #5d6d83;
  font-weight: 850;
  line-height: 1.4;
}

.business-synesis-replay-controls {
  display: grid;
  gap: 12px;
  padding: 12px;
  border-top: 1px solid #d6e4f5;
}

.business-synesis-replay-details {
  overflow: hidden;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
}

.business-synesis-replay-details > summary {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 11px 12px;
  cursor: pointer;
  list-style: none;
}

.business-synesis-replay-details > summary::-webkit-details-marker {
  display: none;
}

.business-synesis-replay-details > summary > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  color: #0b63ce;
  background: #eaf3ff;
}

.business-synesis-replay-details > summary > span:nth-child(2) {
  display: grid;
  gap: 2px;
}

.business-synesis-replay-details > summary strong {
  color: #061a36;
  font-size: 14px;
  font-weight: 950;
}

.business-synesis-replay-details > summary small {
  color: #5d6d83;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
}

.business-synesis-replay-details > summary > svg {
  width: 18px;
  height: 18px;
  color: #5d6d83;
  transition: transform .18s ease;
}

.business-synesis-replay-details[open] > summary > svg {
  transform: rotate(180deg);
}

.business-synesis-replay-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.business-synesis-replay-option {
  display: grid;
  gap: 8px;
  padding: 11px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.business-synesis-replay-option.is-selected {
  border-color: #78afea;
  background: #eef6ff;
  box-shadow: 0 0 0 2px rgba(11, 99, 206, .08);
}

.business-synesis-replay-option-head {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin: 0;
  cursor: pointer;
}

.business-synesis-replay-option-head input {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: #0b63ce;
}

.business-synesis-replay-option-head > span {
  display: grid;
  gap: 1px;
}

.business-synesis-replay-option-head strong {
  color: #061a36;
  font-size: 14px;
  font-weight: 950;
}

.business-synesis-replay-option-head small {
  color: #5d6d83;
  font-size: 11px;
  font-weight: 800;
}

.business-synesis-replay-option > label:not(.business-synesis-replay-option-head) {
  color: #5d6d83;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.business-synesis-replay-option > input[type="number"] {
  min-height: 42px;
}

.business-synesis-replay-option > input:disabled {
  color: #8290a2;
  background: #edf1f6;
  cursor: not-allowed;
}

.business-synesis-replay-summary {
  padding: 10px 12px;
  border: 1px solid #cfe0f5;
  border-radius: 8px;
  color: #315578;
  background: #f4f8fd;
  font-size: 12px;
  font-weight: 900;
}

.business-synesis-replay-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.business-synesis-replay-actions > small {
  color: #5d6d83;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
}

.business-synesis-replay-actions .button:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.business-synesis-last-export {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 10px;
  padding: 10px 12px;
  border: 1px solid #cfe0f5;
  border-radius: 8px;
  background: #f4f8fd;
}

.business-synesis-last-export > span {
  color: #5d6d83;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.business-synesis-last-export > strong {
  color: #061a36;
  font-weight: 950;
}

.business-synesis-last-export > small {
  margin-left: auto;
}

@media (max-width: 720px) {
  .business-synesis-replay-options {
    grid-template-columns: 1fr;
  }

  .business-synesis-replay-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .business-synesis-replay-actions .button {
    width: 100%;
  }
}

.business-synesis-export-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr);
  gap: 12px;
}

.business-synesis-agent-status {
  margin: 0;
  padding: 11px 13px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
}

.business-synesis-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.business-synesis-steps article {
  display: grid;
  gap: 6px;
  padding: 16px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #f8fbff;
}

.business-synesis-steps i {
  width: 28px;
  height: 28px;
  color: #0b63c7;
}

.business-synesis-steps strong {
  color: #061a36;
}

.business-synesis-steps span {
  color: #5d6d83;
  font-size: 14px;
  line-height: 1.35;
}

.business-synesis-result {
  display: grid;
  gap: 18px;
  margin-top: 14px;
}

.business-diagnostic-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.business-diagnostic-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.business-diagnostic-check {
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-left-width: 5px;
  border-radius: 8px;
  background: #fff;
}

.business-diagnostic-check strong,
.business-diagnostic-check span {
  display: block;
}

.business-diagnostic-check strong {
  margin-bottom: 4px;
  color: #061a36;
}

.business-diagnostic-check span {
  color: #5d6d83;
  line-height: 1.35;
}

.business-diagnostic-check.is-success {
  border-left-color: #16a34a;
}

.business-diagnostic-check.is-warning {
  border-left-color: #d97706;
}

.business-diagnostic-check.is-error {
  border-left-color: #dc2626;
}

.business-diagnostic-check.is-info {
  border-left-color: #0b63c7;
}

.business-diagnostic-details article {
  padding: 16px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
}

.business-diagnostic-details h3 {
  margin-top: 0;
}

.business-diagnostic-details dl {
  display: grid;
  gap: 8px;
  margin: 0;
}

.business-diagnostic-details dl div {
  display: grid;
  grid-template-columns: minmax(140px, 180px) minmax(0, 1fr);
  gap: 10px;
}

.business-diagnostic-details dt {
  color: #5d6d83;
  font-weight: 800;
}

.business-diagnostic-details dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.business-zip-list {
  margin: 8px 0 0;
  padding-left: 18px;
  color: #5d6d83;
}

.business-synesis-preview {
  display: grid;
  gap: 16px;
  padding: 16px;
  border: 1px solid #cfe0f5;
  border-radius: 8px;
  background: #f8fbff;
}

.business-synesis-preview-head,
.business-synesis-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.business-synesis-preview-head h3 {
  margin: 0;
  color: #061a36;
  font-size: 24px;
}

.business-synesis-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.business-synesis-meta span,
.business-synesis-section-head span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 6px 10px;
  border-radius: 999px;
  color: #075985;
  background: #e0f2fe;
  font-weight: 900;
}

.business-synesis-document-types {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.business-synesis-document-types span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #cfe0f5;
  border-radius: 8px;
  color: #475569;
  background: #fff;
  font-weight: 850;
}

.business-synesis-document-types strong {
  color: #075985;
  font-size: 12px;
  letter-spacing: 0;
}

.business-synesis-partner-tables {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px;
  padding: 14px;
  border: 1px solid #cfe0f5;
  border-left: 5px solid #0b63c7;
  border-radius: 8px;
  background: #fff;
}

.business-synesis-partner-tables h4 {
  margin: 2px 12px 0 0;
  color: #061a36;
  font-size: 18px;
}

.business-synesis-partner-tables span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  color: #52637a;
  background: #f8fbff;
  font-weight: 850;
}

.business-synesis-partner-tables strong {
  color: #075985;
}

.business-synesis-partner-tables.is-warning {
  border-left-color: #d97706;
}

.business-synesis-preview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.business-synesis-preview-section,
.business-synesis-raw {
  padding: 14px;
  border: 1px solid #d6e4f5;
  border-radius: 8px;
  background: #fff;
}

.business-synesis-section-head strong {
  color: #061a36;
  font-size: 18px;
}

.business-synesis-samples {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.business-synesis-sample {
  display: grid;
  gap: 5px;
  padding: 10px;
  border: 1px solid #e1eaf5;
  border-radius: 8px;
  background: #f8fbff;
}

.business-synesis-sample strong {
  color: #061a36;
}

.business-synesis-sample span {
  display: grid;
  grid-template-columns: minmax(90px, 150px) minmax(0, 1fr);
  gap: 8px;
  color: #1f2f46;
  overflow-wrap: anywhere;
}

.business-synesis-sample em {
  color: #5d6d83;
  font-style: normal;
  font-weight: 850;
}

.business-synesis-raw summary {
  cursor: pointer;
  color: #061a36;
  font-weight: 950;
}

.business-synesis-columns {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 12px;
}

.business-synesis-columns span {
  padding: 5px 8px;
  border-radius: 999px;
  color: #475569;
  background: #eef4fb;
  font-size: 12px;
  font-weight: 850;
}

@media (max-width: 900px) {
  .business-tabs {
    display: flex;
  }

  .business-summary-grid {
    grid-template-columns: 1fr 1fr;
  }

  .business-page-head,
  .business-filter-row {
    align-items: stretch;
    flex-direction: column;
  }

  .business-page-actions,
  .business-filter-actions {
    justify-content: flex-start;
    margin-left: 0;
  }

  .business-search-field {
    max-width: none;
    width: 100%;
  }

  .business-advanced-grid {
    grid-template-columns: 1fr 1fr;
  }

  .business-partner-table,
  .business-catalog-table,
  .business-kpd-table {
    min-width: 760px;
  }

  .business-table-toolbar,
  .business-synesis-export-placeholder {
    align-items: stretch;
    flex-direction: column;
  }

  .business-table-kpis {
    justify-content: flex-start;
  }

  .business-synesis-workspace {
    grid-template-columns: 1fr;
  }

  .business-synesis-action-grid {
    grid-template-columns: 1fr;
  }

  .business-synesis-export-grid {
    grid-template-columns: 1fr;
  }

  .business-synesis-panel-head {
    align-items: stretch;
    flex-direction: column;
  }

  .business-synesis-steps {
    grid-template-columns: 1fr;
  }

  .business-synesis-upload,
  .business-diagnostic-head {
    align-items: stretch;
    flex-direction: column;
  }

  .business-diagnostic-grid,
  .business-diagnostic-details,
  .business-synesis-preview-grid {
    grid-template-columns: 1fr;
  }

  .business-synesis-preview-head {
    align-items: stretch;
    flex-direction: column;
  }

  .business-synesis-meta {
    justify-content: flex-start;
  }

  .business-diagnostic-details dl div {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .business-summary-grid {
    grid-template-columns: 1fr;
  }

  .business-advanced-grid {
    grid-template-columns: 1fr;
  }
}

.hosting-email-settings {
  display: grid;
  gap: 18px;
  margin: 18px 0;
}

.hosting-invoice-summary {
  display: grid;
  grid-template-columns: minmax(170px, 1.4fr) repeat(5, minmax(105px, 1fr)) minmax(120px, 1.1fr);
  gap: 6px;
  padding: 8px;
  border: 1px solid #c9dced;
  border-radius: 9px;
  background: #f7fbff;
}

.business-contract-partner-table {
  min-width: 920px;
}

.business-contract-partner-table th,
.business-contract-partner-table td {
  vertical-align: middle;
}

.hosting-invoice-summary-title,
.hosting-invoice-summary-item,
.hosting-invoice-summary-total {
  display: grid;
  align-content: center;
  gap: 3px;
  min-width: 0;
  padding: 7px 9px;
  border-radius: 7px;
  background: #fff;
}

.hosting-invoice-summary-title span,
.hosting-invoice-summary-total span {
  color: #0d315c;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.hosting-invoice-summary-title small {
  color: #62748a;
  font-size: 10px;
  font-weight: 750;
  line-height: 1.2;
}

.hosting-invoice-summary-item {
  border: 1px solid #e1e9f2;
}

.hosting-invoice-summary-item span {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #607087;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.15;
}

.hosting-invoice-summary-item em {
  padding: 2px 4px;
  border-radius: 999px;
  background: #eef4fa;
  color: #55708d;
  font-size: 7px;
  font-style: normal;
  text-transform: uppercase;
}

.hosting-invoice-summary-item.is-extra em {
  background: #fff1d6;
  color: #9a5a00;
}

.hosting-invoice-summary-item strong {
  color: #102b4c;
  font-size: 12px;
  white-space: nowrap;
}

.hosting-invoice-summary-total {
  border: 1px solid #8ed9aa;
  background: #edfff3;
}

.hosting-invoice-summary-total strong {
  color: #087632;
  font-size: 16px;
  white-space: nowrap;
}

.hosting-table .hosting-readonly-row {
  cursor: default;
}

.hosting-readonly-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 7px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #f8fafc;
  color: #52657d;
}

.hosting-readonly-status > i {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.hosting-readonly-status > span {
  display: grid;
  gap: 1px;
}

.hosting-readonly-status strong {
  color: #334155;
  font-size: 12px;
}

.hosting-readonly-status small {
  font-size: 10px;
  font-weight: 800;
}

.hosting-document-note-stack,
.hosting-email-legal-stack {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
}

.hosting-document-note-stack textarea,
.hosting-email-legal-stack textarea {
  min-height: 150px;
}

.hosting-email-section {
  display: grid;
  gap: 12px;
}

.hosting-settings-subhead {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.hosting-settings-subhead strong {
  color: var(--ink);
  font-size: 15px;
}

.hosting-settings-subhead small {
  color: var(--muted);
  font-weight: 800;
}

.hosting-email-sender-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.hosting-b2c-terms-upload {
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #f8fbff;
  padding: 14px;
}

.hosting-current-file {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid #d8e6f5;
  border-radius: 8px;
  background: #fff;
  padding: 10px 12px;
  font-weight: 800;
}

.hosting-current-file svg {
  width: 20px;
  height: 20px;
  color: #16803c;
}

.hosting-current-file span {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
  gap: 6px;
}

.hosting-current-file label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}

.hosting-warning-hint {
  border: 1px solid #f5c66b;
  border-radius: 8px;
  background: #fff8e5;
  color: #8a4b00;
  padding: 10px 12px;
}

.hosting-template-vars {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 6px;
}

.hosting-template-vars code {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  border: 1px solid #cfe1f2;
  border-radius: 8px;
  background: #f4f9ff;
  color: var(--ink);
  padding: 5px 9px;
  font: 800 12px/1.1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.hosting-reminder-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.hosting-email-drawer {
  max-width: 860px;
}

.hosting-email-form {
  padding-bottom: 96px;
}

/* Roko UI: kompaktni radni obrazac za slanje ponude. */
.offer-email-drawer-head {
  align-items: center;
}

.offer-email-title-group {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  min-width: 0;
}

.offer-email-title-group h2 {
  margin-bottom: 0;
}

.offer-email-number {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border: 1px solid #d7e6f6;
  border-radius: 999px;
  background: #f6faff;
  color: #315270;
  padding: 4px 10px;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.offer-email-form {
  display: grid;
  gap: 12px;
}

.offer-email-form .settings-section {
  margin: 0;
}

.offer-email-preferences {
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .85fr);
  align-items: end;
  gap: 16px;
  background: #fbfdff;
}

.offer-email-preferences-business {
  grid-template-columns: minmax(0, 1fr);
}

.offer-email-purpose-field {
  display: grid;
  gap: 7px;
}

.offer-email-attachment {
  display: grid;
  align-content: end;
  gap: 7px;
  min-width: 0;
  padding-left: 16px;
  border-left: 1px solid #e2ebf5;
}

.offer-email-preferences-business .offer-email-attachment {
  padding-left: 0;
  border-left: 0;
}

.offer-email-attachment .field-hint {
  margin: 0;
}

.hosting-attach-line {
  min-height: 46px;
  padding: 11px 13px;
}

.offer-email-message-section {
  gap: 14px;
}

.offer-email-fields-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  gap: 14px;
  align-items: start;
}

.offer-email-message-section .field-hint {
  margin: 5px 0 0;
}

.offer-email-body-field textarea {
  min-height: 220px;
  resize: vertical;
}

.hosting-attach-line {
  min-height: 56px;
  border: 1px solid #cfe1f2;
  border-radius: 8px;
  background: #f4f9ff;
  padding: 14px 16px;
}

.hosting-email-actions {
  position: sticky;
  bottom: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 14px 0 0;
  background: linear-gradient(180deg, rgba(255,255,255,.78), #fff 28%);
}

@media (max-width: 760px) {
  .hosting-email-sender-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hosting-email-automation-row {
    align-items: flex-start;
  }

  .hosting-heading-with-help {
    display: flex;
  }

  .hosting-reminder-grid,
  .hosting-email-actions,
  .offer-email-preferences,
  .offer-email-fields-grid {
    grid-template-columns: 1fr;
  }

  .offer-email-attachment {
    padding-top: 12px;
    padding-left: 0;
    border-top: 1px solid #e2ebf5;
    border-left: 0;
  }
}

@media (max-width: 640px) {
  .hosting-email-sender-grid {
    grid-template-columns: 1fr;
  }

  .hosting-current-file {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* v1.3.537 - Smjestaj mobile calendar grid */
body.accommodation-module-page.mobile-app-mode .mobile-calendar-section {
  padding: 12px;
  overflow: visible;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-months {
  display: grid;
  gap: 18px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-month {
  display: grid;
  gap: 10px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-month h4 {
  margin: 0;
  color: #071a33;
  font-size: 28px;
  line-height: 1.05;
  font-weight: 950;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-weekdays,
body.accommodation-module-page.mobile-app-mode .mobile-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 5px;
  overflow: visible;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-weekdays span {
  color: #64748b;
  font-size: 10px;
  font-weight: 950;
  text-align: center;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: flex-start;
  min-width: 0;
  min-height: 74px;
  padding: 8px 6px;
  border: 1px solid #d8e4f2;
  border-radius: 12px;
  color: #071a33;
  background: #fff;
  text-decoration: none;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .04);
  overflow: hidden;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell.is-single-unit {
  overflow: visible;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell.is-empty {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell.is-past {
  color: #52667f;
  background: #eef2f6;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell.is-booked {
  border-color: #d0dce8;
  background: #f3f5f8;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell.is-today {
  border-color: #0b63c7;
  box-shadow: inset 0 0 0 1px #0b63c7, 0 10px 22px rgba(11, 99, 199, .12);
}


body.accommodation-module-page.mobile-app-mode .mobile-calendar-booking-line {
  position: absolute;
  z-index: 1;
  top: 35px;
  left: -7px;
  right: -7px;
  height: 10px;
  border-radius: 0;
  background: var(--unit-color, #0b63c7);
  opacity: .26;
  content: "";
  pointer-events: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-booking-line.is-range-start {
  left: 9px;
  border-radius: 999px 0 0 999px;
  opacity: .7;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-booking-line.is-range-end {
  right: 9px;
  border-radius: 0 999px 999px 0;
  opacity: .7;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-booking-line.is-range-start.is-range-end {
  left: 9px;
  right: 9px;
  border-radius: 999px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell strong {
  position: relative;
  z-index: 2;
  display: block;
  padding-right: 18px;
  font-size: 15px;
  line-height: 1;
  font-weight: 950;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell small {
  position: relative;
  z-index: 2;
  display: block;
  overflow: hidden;
  max-width: 100%;
  padding-left: 8px;
  border-left: 4px solid var(--unit-color, #0b63c7);
  color: #263955;
  font-size: 10px;
  line-height: 1.15;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell.is-multi-unit small {
  margin-top: auto;
  padding-left: 0;
  border-left: 0;
  color: #0b63c7;
  font-size: 9px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-unit-dots {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  min-height: 15px;
  margin-top: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-unit-dots i {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .85);
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell em {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-self: flex-start;
  padding: 2px 5px;
  border-radius: 999px;
  color: #0b63c7;
  background: #eaf4ff;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-unit-group {
  display: grid;
  gap: 8px;
  padding: 12px 0;
  border-top: 1px solid #e5edf6;
}

body.accommodation-module-page.mobile-app-mode .mobile-section-head + .mobile-reservation-unit-group {
  border-top: 0;
  padding-top: 2px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-unit-head {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 2px 4px 4px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-unit-head .unit-color {
  width: 8px;
  height: 32px;
  flex: 0 0 auto;
  border-radius: 999px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-unit-head div {
  min-width: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-unit-head strong,
body.accommodation-module-page.mobile-app-mode .mobile-reservation-unit-head small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-unit-head strong {
  color: #071a33;
  font-size: 16px;
  font-weight: 950;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-unit-head small {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}

body.accommodation-module-page.mobile-app-mode .mobile-show-all-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  margin-top: 10px;
  border: 1px solid #dbe7f5;
  border-radius: 15px;
  color: #0b63c7;
  background: #f1f8ff;
  font-size: 14px;
  font-weight: 950;
  text-decoration: none;
}

@media (max-width: 390px) {
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-weekdays,
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-grid {
    gap: 4px;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell {
    min-height: 66px;
    padding: 7px 5px;
    border-radius: 10px;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell strong {
    font-size: 14px;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-calendar-cell small {
    font-size: 9px;
  }
}

/* v1.3.550 - Smjestaj mobile month occupancy calendar */
body.accommodation-module-page.mobile-app-mode .mobile-calendar-section .mobile-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-head-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 7px;
  width: 100%;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-head-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 0;
  min-height: 38px;
  padding: 8px 8px;
  border-radius: 12px;
  color: #0b63c7;
  background: #eef7ff;
  font-size: 12px;
  font-weight: 950;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-head-actions a span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-clear-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  margin: -2px 0 10px;
  border: 1px solid #d8e8f7;
  border-radius: 12px;
  color: #0b63c7;
  background: #fff;
  font-size: 12px;
  font-weight: 950;
  text-decoration: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-weeks {
  display: grid;
  gap: 5px;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-week {
  position: relative;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  min-height: var(--calendar-week-height, 118px);
  overflow: hidden;
  border: 1px solid #d8e4f2;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .04);
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-week-days {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  min-width: 0;
  width: 100%;
  max-width: 100%;
  height: 100%;
  min-height: inherit;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day-cell {
  position: relative;
  box-sizing: border-box;
  min-width: 0;
  min-height: inherit;
  padding: 8px 5px;
  border-right: 1px solid #e5edf6;
  color: #071a33;
  background: #fff;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day-cell:nth-child(7) {
  border-right: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day-cell.is-muted {
  color: #94a3b8;
  background: #f7f9fc;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day-cell.is-past {
  background: #f2f5f8;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day-cell.is-today {
  box-shadow: inset 0 0 0 2px #0b63c7;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day-cell strong {
  position: relative;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1;
  font-weight: 950;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day-cell.is-today strong {
  color: #fff;
  background: #0b63c7;
}


body.accommodation-module-page.mobile-app-mode .mobile-calendar-week-bars {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-range-bar {
  position: absolute;
  z-index: 5;
  top: var(--bar-top, 32px);
  left: calc(((var(--start, 1) - 1 + var(--start-offset, 0)) * 100% / 7) + 2px);
  width: max(18px, calc(((var(--span, 1) - var(--start-offset, 0) - var(--end-offset, 0)) * 100% / 7) - 4px));
  display: flex;
  align-items: center;
  min-width: 0;
  height: 16px;
  padding: 0 7px;
  border-radius: 0;
  color: #fff;
  background: var(--unit-color, #0b63c7);
  box-shadow: 0 5px 12px rgba(15, 23, 42, .12);
  font-size: 9px;
  font-weight: 950;
  line-height: 1;
  text-decoration: none;
  pointer-events: auto;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-range-bar.is-start {
  border-radius: 999px 0 0 999px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-range-bar.is-end {
  border-radius: 0 999px 999px 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-range-bar.is-start.is-end {
  border-radius: 999px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-range-bar.continues-before {
  left: calc(((var(--start, 1) - 1 + var(--start-offset, 0)) * 100% / 7) - 1px);
  padding-left: 10px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-range-bar.continues-after {
  width: max(18px, calc(((var(--span, 1) - var(--start-offset, 0) - var(--end-offset, 0)) * 100% / 7) - 1px));
  padding-right: 10px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-range-bar span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-week-more {
  position: absolute;
  right: 7px;
  bottom: 6px;
  z-index: 6;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 22px;
  padding: 3px 7px;
  border-radius: 999px;
  color: #0b63c7;
  background: #eaf4ff;
  font-size: 10px;
  font-weight: 950;
  pointer-events: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-legend {
  display: flex;
  align-items: center;
  gap: 8px 12px;
  flex-wrap: wrap;
  padding: 10px 2px 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-legend span,
body.accommodation-module-page.mobile-app-mode .mobile-calendar-legend em {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  gap: 6px;
  color: #263955;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-legend span {
  max-width: calc(50% - 8px);
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-legend i {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 999px;
}

@media (max-width: 390px) {
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-week {
    min-height: var(--calendar-week-height, 118px);
  }

  body.accommodation-module-page.mobile-app-mode .mobile-calendar-range-bar {
    top: var(--bar-top, 32px);
    height: 15px;
    padding-inline: 6px;
    font-size: 9px;
  }
}

/* Hosting ponuda - zavrsni sloj za pregled/ispis/PDF v1.3.281 */
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-note-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code {
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div {
  grid-template-columns: 23mm 1fr !important;
  gap: 3mm !important;
}

.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code {
  align-items: center !important;
}

.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code-title-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code-title-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code-title-a4 {
  text-align: center !important;
}

/* Business module compact polish v1.3.364 */
body.business-module-page .main {
  padding-top: 10px;
}

body.business-module-page .topbar {
  min-height: 0;
  margin-bottom: 10px;
  padding: 10px 16px;
  border-radius: 8px;
}

body.business-module-page .topbar-title .eyebrow {
  margin-bottom: 3px;
}

body.business-module-page .topbar-title h1 {
  font-size: clamp(28px, 2.2vw, 38px);
  line-height: 1.06;
}

body.business-module-page .topbar-actions .button {
  min-height: 42px;
}

/* Global administration header aligned with module pages */
body.admin-page .main {
  padding-top: 10px;
}

body.admin-page .topbar {
  min-height: 0;
  margin-bottom: 10px;
  padding: 10px 16px;
  border-radius: 8px;
  background: rgba(255,255,255,.82);
}

body.admin-page .topbar-title .eyebrow {
  margin-bottom: 3px;
}

body.admin-page .topbar-title h1 {
  font-size: clamp(28px, 2.2vw, 38px);
  line-height: 1.06;
}

body.admin-page .topbar-actions .button,
body.admin-page .topbar-actions .pill {
  min-height: 42px;
}

body.superadmin-dashboard-page .topbar {
  margin-bottom: 12px;
}

body.superadmin-dashboard-page .topbar-title .eyebrow {
  display: none;
}

body.superadmin-dashboard-page .topbar-title h1 {
  font-size: clamp(30px, 2.1vw, 38px);
}

body.superadmin-dashboard-page .roko-admin-toolbar {
  margin-bottom: 14px;
}

body.superadmin-dashboard-page .roko-platform-picker {
  gap: 14px;
  margin-bottom: 14px;
  padding: 18px 20px;
  border-left-width: 4px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(8, 43, 84, .045);
}

body.superadmin-dashboard-page .roko-platform-picker-head .icon-box {
  width: 38px;
  height: 38px;
  border-radius: 8px;
}

body.superadmin-dashboard-page .roko-platform-picker-head .eyebrow {
  margin-bottom: 2px;
}

body.superadmin-dashboard-page .roko-platform-picker h2 {
  margin-bottom: 3px;
  font-size: clamp(22px, 1.5vw, 27px);
}

body.superadmin-dashboard-page .roko-platform-picker .card-subtitle {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.35;
}

body.admin-page .roko-start-hero,
body.admin-page .module-activities-hero {
  align-items: center;
  gap: 12px;
  min-height: 0;
  margin-bottom: 14px;
  padding: 13px 16px;
  border-left-width: 4px;
  background: linear-gradient(180deg, #fff 0%, #fbfdff 100%);
  box-shadow: 0 12px 28px rgba(8, 43, 84, .045);
}

body.admin-page .roko-start-hero-main,
body.admin-page .roko-platform-picker-head {
  align-items: center;
  gap: 12px;
}

body.admin-page .roko-start-hero .icon-box {
  width: 42px;
  height: 42px;
}

body.admin-page .roko-start-hero h2,
body.admin-page .module-activities-hero h2 {
  margin-bottom: 4px;
  font-size: clamp(24px, 1.9vw, 31px);
  line-height: 1.08;
}

body.admin-page .roko-start-hero .eyebrow,
body.admin-page .module-activities-hero .eyebrow {
  margin-bottom: 3px;
}

body.admin-page .roko-start-hero .card-subtitle,
body.admin-page .module-activities-hero .card-subtitle {
  margin: 0;
}

body.admin-page .roko-start-actions .button {
  min-height: 42px;
}

.business-page-head {
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
  padding: 13px 16px;
  border-left-width: 4px;
  background: linear-gradient(180deg, #fff 0%, #fbfdff 100%);
  box-shadow: 0 12px 28px rgba(8, 43, 84, .045);
}

.business-page-head .eyebrow {
  margin-bottom: 3px;
}

.business-page-head h2 {
  font-size: clamp(24px, 1.9vw, 31px);
  line-height: 1.08;
}

.business-page-head .card-subtitle {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.35;
}

.business-page-actions .button {
  min-height: 42px;
  padding-inline: 16px;
}

.business-summary-grid {
  gap: 10px;
  margin-bottom: 10px;
}

body.business-module-page .stat-card {
  min-height: 74px;
  padding: 12px 14px;
  border-radius: 8px;
}

body.business-module-page .stat-card .icon-box {
  width: 42px;
  height: 42px;
  border-radius: 8px;
}

body.business-module-page .stat-card strong {
  font-size: 24px;
  line-height: 1.05;
}

.business-filter-card {
  margin-bottom: 10px;
  padding: 12px 14px;
  border-radius: 8px;
}

.business-filter-row {
  align-items: flex-end;
  gap: 8px;
}

.business-search-field {
  flex: 1 1 420px;
  max-width: 560px;
  min-width: 260px;
}

.business-filter-card .field label {
  margin-bottom: 5px;
}

.business-filter-card input,
.business-filter-card select,
.business-filter-card .button {
  min-height: 42px;
}

.business-advanced-grid {
  gap: 8px;
  margin-top: 10px;
  padding: 12px;
}

.business-source-tabs {
  gap: 8px;
  margin-bottom: 10px;
}

.business-source-tabs a {
  min-height: 40px;
  padding: 8px 10px;
  background: #f7fbfc;
}

.business-source-tabs a:hover,
.business-source-tabs a.is-active {
  color: #0a5f8f;
  border-color: #bdd9e6;
  background: #edf8fa;
}

.business-table-toolbar {
  gap: 12px;
  padding: 12px 14px 4px;
}

.business-table-toolbar h3 {
  font-size: 22px;
  line-height: 1.15;
}

.business-table-kpis span {
  min-height: 30px;
  padding: 5px 9px;
}

.business-ledger-table th,
.business-ledger-table td,
.business-catalog-table th,
.business-catalog-table td,
.business-kpd-table th,
.business-kpd-table td {
  padding: 10px 14px;
}

.business-ledger-table th,
.business-catalog-table th,
.business-kpd-table th {
  font-size: 11px;
}

.business-synesis-flow {
  gap: 12px;
}

.business-synesis-panel {
  gap: 12px;
  padding: 16px 18px;
  border-left-width: 4px;
  box-shadow: 0 12px 28px rgba(8, 43, 84, .045);
}

.business-synesis-panel-head {
  gap: 12px;
  padding-bottom: 8px;
}

.business-synesis-panel-head h2 {
  font-size: 24px;
  line-height: 1.1;
}

.business-synesis-panel-head > span {
  flex-basis: 46px;
  width: 46px;
  height: 46px;
}

.business-synesis-panel-head > span i {
  width: 22px;
  height: 22px;
}

.business-synesis-action-card {
  gap: 10px;
  padding: 14px;
}

.business-synesis-action-head > span {
  width: 38px;
  height: 38px;
}

.business-synesis-action-head h2 {
  font-size: 21px;
}

.business-synesis-upload {
  gap: 8px;
  padding: 10px;
}

.business-synesis-download {
  gap: 8px;
  padding: 12px;
}

.business-synesis-export-grid {
  gap: 10px;
}

.business-synesis-agent-status {
  padding: 10px 12px;
}

.sidebar-module-group[open] > summary,
.super-company-links > .sidebar-module-group[open] > summary,
.sidebar-submodule-group.is-active > summary,
.super-company-links .sidebar-submodule-group.is-active > summary,
.sidebar-submodule-links a.is-active,
.sidebar-admin-nav .nav-list a.is-active {
  color: #0a5f8f;
  background: #edf8fa;
}

.sidebar-module-group[open] > summary,
.super-company-links > .sidebar-module-group[open] > summary,
.sidebar-submodule-links a.is-active {
  box-shadow: inset 3px 0 0 #7fa9bd;
}

.sidebar-submodule-group.is-active > summary,
.super-company-links .sidebar-submodule-group.is-active > summary {
  box-shadow: inset 4px 0 0 #7fa9bd;
}

.sidebar-submodule-basic,
.sidebar-submodule-sales,
.sidebar-submodule-hosting {
  --submodule-accent: #7fa9bd;
  --submodule-bg: #f7fbfc;
  --submodule-bg-active: #edf8fa;
  --submodule-border: #cfe2eb;
  --submodule-line: #d8e9ef;
}

@media (max-width: 900px) {
  .extra-guest-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) 44px;
  }

  .extra-guest-row .extra-guest-first-name-field,
  .extra-guest-row .extra-guest-last-name-field,
  .extra-guest-row .extra-guest-address-field,
  .extra-guest-row .extra-guest-email-field,
  .extra-guest-row .extra-guest-phone-field,
  .extra-guest-row .extra-guest-country-field,
  .extra-guest-row .extra-guest-document-type-field,
  .extra-guest-row .extra-guest-document-field {
    grid-column: span 1;
  }

  .extra-guest-row .icon-button.danger {
    grid-column: 3;
  }

  body.business-module-page .topbar {
    padding: 10px 12px;
  }

  .business-page-head {
    align-items: flex-start;
    padding: 12px 14px;
  }

  .business-page-actions {
    width: 100%;
    justify-content: flex-start;
  }

  .business-search-field {
    flex-basis: 100%;
    max-width: none;
  }

  .business-synesis-action-grid,
  .business-synesis-export-grid {
    grid-template-columns: 1fr;
  }

  .business-synesis-upload {
    grid-template-columns: 1fr;
  }
}

/* Accommodation module compact header */
body.accommodation-module-page .main {
  padding-top: 10px;
}

body.accommodation-module-page .topbar {
  min-height: 0;
  margin-bottom: 10px;
  padding: 10px 16px;
  border-radius: 8px;
}

body.accommodation-module-page .topbar-title .eyebrow {
  margin-bottom: 3px;
}

body.accommodation-module-page .topbar-title h1 {
  font-size: clamp(28px, 2.2vw, 38px);
  line-height: 1.06;
}

body.accommodation-module-page .topbar-actions .button {
  min-height: 42px;
}

body.accommodation-module-page .section-title.reservation-title {
  align-items: center;
  gap: 12px;
  margin: 0 0 10px;
  padding: 13px 16px;
  border: 1px solid #d6e4f5;
  border-left: 4px solid #0b63c7;
  border-radius: 8px;
  background: linear-gradient(180deg, #fff 0%, #fbfdff 100%);
  box-shadow: 0 12px 28px rgba(8, 43, 84, .045);
}

body.accommodation-module-page .section-title.reservation-title .eyebrow {
  margin-bottom: 3px;
}

body.accommodation-module-page .section-title.reservation-title h2 {
  color: #061a36;
  font-size: clamp(24px, 1.9vw, 31px);
  line-height: 1.08;
}

body.accommodation-module-page .section-title.reservation-title .card-subtitle {
  margin-top: 4px;
  margin-bottom: 0;
  font-size: 12px;
  line-height: 1.35;
}

body.accommodation-module-page .section-title.reservation-title .action-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
}

body.accommodation-module-page .section-title.reservation-title .button {
  min-height: 42px;
  padding-inline: 16px;
}

@media (max-width: 900px) {
  body.accommodation-module-page .topbar {
    padding: 10px 12px;
  }

  body.accommodation-module-page .section-title.reservation-title {
    align-items: stretch;
    flex-direction: column;
    margin-top: 0;
    padding: 12px 14px;
  }

  body.accommodation-module-page .section-title.reservation-title .action-row {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  body.accommodation-module-page .section-title.reservation-title .button {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 640px) {
  .extra-guest-row {
    grid-template-columns: 1fr;
  }

  .extra-guest-row .extra-guest-first-name-field,
  .extra-guest-row .extra-guest-last-name-field,
  .extra-guest-row .extra-guest-address-field,
  .extra-guest-row .extra-guest-email-field,
  .extra-guest-row .extra-guest-phone-field,
  .extra-guest-row .extra-guest-country-field,
  .extra-guest-row .extra-guest-document-type-field,
  .extra-guest-row .extra-guest-document-field,
  .extra-guest-row .icon-button.danger {
    grid-column: 1;
  }
}

/* Final hosting offer print override: stack details and notes under the item table. */
.invoice-page-a4.hosting-offer-page .document-stay-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-stay-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-stay-a4 {
  top: var(--stay-top, 151mm) !important;
  left: 18mm !important;
  right: auto !important;
  width: 174mm !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 {
  top: var(--detail-top, 164mm) !important;
  left: 18mm !important;
  right: auto !important;
  width: 174mm !important;
}

.invoice-page-a4.hosting-offer-page .document-note-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-note-a4 {
  top: var(--note-top, 197mm) !important;
  left: 18mm !important;
  right: auto !important;
  width: 174mm !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4 {
  top: var(--payment-top, 229mm) !important;
  left: 18mm !important;
  right: auto !important;
  width: 80mm !important;
}

.invoice-page-a4.hosting-offer-page .payment-code,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code {
  top: var(--payment-top, 229mm) !important;
  left: 105mm !important;
  right: auto !important;
  width: 84mm !important;
}

/* Manual business offer print: same A4 rhythm as hosting offers, without hosting-only data. */
.business-offer-preview-shell .document-drawer {
  width: calc(100vw - 2px) !important;
  max-width: none !important;
}

.business-offer-print-area {
  padding: 18px 0 44px !important;
  background: #eef4fb !important;
}

.invoice-page-a4.business-offer-page,
.document-drawer-shell .invoice-page-a4.business-offer-page,
.business-offer-preview-shell .invoice-page-a4.business-offer-page,
.print-window-wrap .invoice-page-a4.business-offer-page {
  margin: 0 auto !important;
  background: #fff !important;
}

.invoice-page-a4.business-offer-page .business-offer-detail-a4,
.document-drawer-shell .invoice-page-a4.business-offer-page .business-offer-detail-a4,
.business-offer-preview-shell .invoice-page-a4.business-offer-page .business-offer-detail-a4,
.print-window-wrap .invoice-page-a4.business-offer-page .business-offer-detail-a4,
body.print-document-only #print-document-host .invoice-page-a4.business-offer-page .business-offer-detail-a4 {
  position: absolute !important;
  top: var(--detail-top, 164mm) !important;
  left: 18mm !important;
  right: auto !important;
  width: 174mm !important;
  display: block !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 8.1pt !important;
  line-height: 1.35 !important;
}

.invoice-page-a4.business-offer-page .business-offer-detail-title-a4,
.document-drawer-shell .invoice-page-a4.business-offer-page .business-offer-detail-title-a4,
.business-offer-preview-shell .invoice-page-a4.business-offer-page .business-offer-detail-title-a4,
.print-window-wrap .invoice-page-a4.business-offer-page .business-offer-detail-title-a4,
body.print-document-only #print-document-host .invoice-page-a4.business-offer-page .business-offer-detail-title-a4 {
  display: block !important;
  margin: 0 0 3mm !important;
  font-size: 8.2pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
}

.invoice-page-a4.business-offer-page .business-offer-detail-a4 p,
.document-drawer-shell .invoice-page-a4.business-offer-page .business-offer-detail-a4 p,
.business-offer-preview-shell .invoice-page-a4.business-offer-page .business-offer-detail-a4 p,
.print-window-wrap .invoice-page-a4.business-offer-page .business-offer-detail-a4 p,
body.print-document-only #print-document-host .invoice-page-a4.business-offer-page .business-offer-detail-a4 p {
  margin: 0 !important;
  font-size: 8.1pt !important;
  line-height: 1.35 !important;
  color: #000 !important;
  white-space: normal !important;
}

.invoice-page-a4.business-offer-page .document-items th:nth-child(1),
.invoice-page-a4.business-offer-page .document-items td:nth-child(1) {
  width: 7mm !important;
  text-align: center !important;
}

.invoice-page-a4.business-offer-page .document-items th:nth-child(2),
.invoice-page-a4.business-offer-page .document-items td:nth-child(2) {
  width: 82mm !important;
  text-align: left !important;
}

.invoice-page-a4.business-offer-page .document-items th:nth-child(3),
.invoice-page-a4.business-offer-page .document-items td:nth-child(3) {
  width: 13mm !important;
  text-align: center !important;
}

.invoice-page-a4.business-offer-page .document-items th:nth-child(4),
.invoice-page-a4.business-offer-page .document-items td:nth-child(4) {
  width: 17mm !important;
  text-align: right !important;
}

.invoice-page-a4.business-offer-page .document-items th:nth-child(5),
.invoice-page-a4.business-offer-page .document-items td:nth-child(5),
.invoice-page-a4.business-offer-page .document-items th:nth-child(6),
.invoice-page-a4.business-offer-page .document-items td:nth-child(6) {
  width: 20mm !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.invoice-page-a4.business-offer-page .document-items th:nth-child(7),
.invoice-page-a4.business-offer-page .document-items td:nth-child(7) {
  width: 25mm !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 900 !important;
}

.invoice-page-a4.business-offer-page .document-stay-a4,
.document-drawer-shell .invoice-page-a4.business-offer-page .document-stay-a4,
.business-offer-preview-shell .invoice-page-a4.business-offer-page .document-stay-a4,
.print-window-wrap .invoice-page-a4.business-offer-page .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4.business-offer-page .document-stay-a4 {
  top: var(--stay-top, 151mm) !important;
  left: 18mm !important;
  right: auto !important;
  width: 174mm !important;
}

.invoice-page-a4.business-offer-page .document-note-a4,
.document-drawer-shell .invoice-page-a4.business-offer-page .document-note-a4,
.business-offer-preview-shell .invoice-page-a4.business-offer-page .document-note-a4,
.print-window-wrap .invoice-page-a4.business-offer-page .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4.business-offer-page .document-note-a4 {
  top: var(--note-top, 197mm) !important;
  left: 18mm !important;
  right: auto !important;
  width: 174mm !important;
}

.invoice-page-a4.business-offer-page .document-payment-data-a4,
.document-drawer-shell .invoice-page-a4.business-offer-page .document-payment-data-a4,
.business-offer-preview-shell .invoice-page-a4.business-offer-page .document-payment-data-a4,
.print-window-wrap .invoice-page-a4.business-offer-page .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4.business-offer-page .document-payment-data-a4 {
  top: var(--payment-top, 229mm) !important;
  left: 18mm !important;
  right: auto !important;
  width: 80mm !important;
}

.invoice-page-a4.business-offer-page .payment-code,
.document-drawer-shell .invoice-page-a4.business-offer-page .payment-code,
.business-offer-preview-shell .invoice-page-a4.business-offer-page .payment-code,
.print-window-wrap .invoice-page-a4.business-offer-page .payment-code,
body.print-document-only #print-document-host .invoice-page-a4.business-offer-page .payment-code {
  top: var(--payment-top, 229mm) !important;
  left: 105mm !important;
  right: auto !important;
  width: 84mm !important;
}

/* Unified offer print flow for hosting and manual sales offers. */
.invoice-page-a4.hosting-offer-page,
.document-drawer-shell .invoice-page-a4.hosting-offer-page,
.business-offer-preview-shell .invoice-page-a4.hosting-offer-page,
.print-window-wrap .invoice-page-a4.hosting-offer-page,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page {
  height: auto !important;
  max-height: none !important;
  min-height: 297mm !important;
  overflow: visible !important;
  padding: 28mm 18mm 16mm !important;
  font-family: DejaVu Sans, Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}

.invoice-page-a4.hosting-offer-page .document-head-a4,
.invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.invoice-page-a4.hosting-offer-page .document-title-row-a4,
.invoice-page-a4.hosting-offer-page .document-info-row-a4,
.invoice-page-a4.hosting-offer-page .document-items,
.invoice-page-a4.hosting-offer-page .document-bottom-a4,
.invoice-page-a4.hosting-offer-page .document-payment-a4,
.invoice-page-a4.hosting-offer-page .document-footer-a4,
.invoice-page-a4.hosting-offer-page .document-stay-a4,
.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.invoice-page-a4.hosting-offer-page .document-note-a4,
.invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.invoice-page-a4.hosting-offer-page .payment-code,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-head-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-title-row-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-info-row-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-items,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-bottom-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-footer-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-stay-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-head-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-title-row-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-info-row-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-items,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-bottom-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-footer-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-stay-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-head-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-title-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-items,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-bottom-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-footer-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
}

.invoice-page-a4.hosting-offer-page .document-head-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-head-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-head-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-head-a4 {
  display: grid !important;
  grid-template-columns: 1fr 66mm !important;
  gap: 18mm !important;
  min-height: 58mm !important;
  margin: 0 0 8mm !important;
}

.invoice-page-a4.hosting-offer-page .document-logo,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-logo,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-logo,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-logo {
  width: 80mm !important;
  max-width: 80mm !important;
  max-height: 36mm !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-row-a4 {
  display: block !important;
  margin: 0 0 11mm !important;
}

.invoice-page-a4.hosting-offer-page .document-title-row-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-title-row-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-title-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 42mm !important;
  align-items: end !important;
  gap: 10mm !important;
  margin: 0 0 9mm !important;
}

.invoice-page-a4.hosting-offer-page .document-info-row-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-info-row-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-info-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-info-row-a4 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4mm 8mm !important;
  margin: 0 0 5mm !important;
  font-size: 7.6pt !important;
  line-height: 1.2 !important;
}

.invoice-page-a4.hosting-offer-page .document-items,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-items,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-items,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-items {
  position: relative !important;
  display: table !important;
  width: 100% !important;
  margin: 0 0 5mm !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  font-size: 7.45pt !important;
  line-height: 1.22 !important;
}

.invoice-page-a4.hosting-offer-page .document-items th,
.invoice-page-a4.hosting-offer-page .document-items td,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-items th,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-items td,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-items th,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-items td {
  padding: 1.45mm 1mm !important;
}

.invoice-page-a4.hosting-offer-page .document-items tr,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-items tr,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-items tr,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-items tr {
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

.invoice-page-a4.hosting-offer-page .document-bottom-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-bottom-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-bottom-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-bottom-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-stay-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-stay-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  font-size: 8.2pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4 p {
  margin: 0 !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4 span {
  margin-left: 2mm !important;
  font-size: 10pt !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.invoice-page-a4.hosting-offer-page .document-note-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-note-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 0 9mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.38 !important;
  columns: auto !important;
  column-count: 1 !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
.invoice-page-a4.hosting-offer-page .document-note-a4 h4,
.invoice-page-a4.hosting-offer-page .document-payment-title-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4 h4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-title-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4 h4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-title-a4 {
  display: block !important;
  margin: 0 0 2.2mm !important;
  color: #000 !important;
  font-size: 8.4pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p,
.invoice-page-a4.hosting-offer-page .document-note-a4 p,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4 p,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4 p {
  width: 100% !important;
  margin: 0 0 1.2mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.38 !important;
  white-space: normal !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 78mm 1fr !important;
  gap: 18mm !important;
  align-items: start !important;
  width: 100% !important;
  margin: 2mm 0 14mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4 {
  display: block !important;
  width: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div {
  display: grid !important;
  grid-template-columns: 24mm 1fr !important;
  gap: 5mm !important;
  align-items: start !important;
  margin: 0 0 2.6mm !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong {
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.2 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong {
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .payment-code,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.invoice-page-a4.hosting-offer-page .payment-code-title-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code-title-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code-title-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code-title-a4 {
  display: none !important;
}

.invoice-page-a4.hosting-offer-page .payment-code-image,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code-image,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code-image,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .payment-code-image {
  display: block !important;
  width: 84mm !important;
  max-width: 84mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
  margin: 0 !important;
  object-fit: contain !important;
}

.invoice-page-a4.hosting-offer-page .document-footer-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-footer-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-footer-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-footer-a4 {
  display: block !important;
  width: 100% !important;
  margin: 12mm 0 0 !important;
  padding: 3mm 0 0 !important;
  border-top: .25mm solid #111 !important;
  color: #333 !important;
  text-align: center !important;
  font-size: 5.8pt !important;
  line-height: 1.2 !important;
}

/* Final offer print polish: one flowing A4 layout for hosting and manual sales offers. */
.invoice-page-a4.hosting-offer-page,
.document-drawer-shell .invoice-page-a4.hosting-offer-page,
.print-window-wrap .invoice-page-a4.hosting-offer-page,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page {
  height: auto !important;
  max-height: none !important;
  min-height: 297mm !important;
  overflow: visible !important;
  padding: 28mm 18mm 16mm !important;
  font-family: DejaVu Sans, Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

.invoice-page-a4.hosting-offer-page .document-bottom-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-bottom-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-bottom-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-bottom-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.invoice-page-a4.hosting-offer-page .document-items,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-items,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-items,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-items {
  margin-bottom: 8mm !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-stay-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-stay-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-stay-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4.hosting-offer-page .document-stay-a4 span,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-stay-a4 span,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-stay-a4 span,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-stay-a4 span {
  margin-left: 2mm !important;
  font-size: 10pt !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.invoice-page-a4.hosting-offer-page .document-note-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-note-a4 {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.34 !important;
  white-space: normal !important;
  break-inside: auto !important;
  page-break-inside: auto !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
.invoice-page-a4.hosting-offer-page .document-note-a4 h4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4 h4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4 h4 {
  display: block !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 8.4pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-title-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-title-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-title-a4 {
  display: block !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-transform: none !important;
  text-decoration: underline !important;
}

.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p,
.invoice-page-a4.hosting-offer-page .document-note-a4 p,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4 p,
.print-window-wrap .invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4 p {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 1.35mm !important;
  font-size: 8pt !important;
  line-height: 1.34 !important;
  white-space: normal !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-a4 {
  display: grid !important;
  grid-template-columns: 76mm 82mm !important;
  gap: 14mm !important;
  justify-content: space-between !important;
  align-items: start !important;
  width: 100% !important;
  margin: 1mm 0 13mm !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4 {
  display: block !important;
  width: 100% !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div {
  display: grid !important;
  grid-template-columns: 22mm 1fr !important;
  gap: 4mm !important;
  margin: 0 0 2.2mm !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong {
  font-size: 8pt !important;
  line-height: 1.2 !important;
}

.invoice-page-a4.hosting-offer-page .payment-code,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code {
  justify-content: flex-start !important;
}

.invoice-page-a4.hosting-offer-page .payment-code-image,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .payment-code-image,
.print-window-wrap .invoice-page-a4.hosting-offer-page .payment-code-image {
  width: 82mm !important;
  max-width: 82mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
}

.invoice-page-a4.hosting-offer-page .document-footer-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-footer-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-footer-a4 {
  margin: 12mm 0 0 !important;
}

/* Final correction: inner document blocks must also use normal A4 flow. */
.invoice-page-a4.hosting-offer-page .document-logo-box,
.invoice-page-a4.hosting-offer-page .document-company-a4,
.invoice-page-a4.hosting-offer-page .document-buyer-a4,
.invoice-page-a4.hosting-offer-page .document-title-a4,
.invoice-page-a4.hosting-offer-page .document-date-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-logo-box,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-company-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-title-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-date-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-logo-box,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-company-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-title-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-logo-box,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-title-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-date-a4 {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
}

.invoice-page-a4.hosting-offer-page .document-head-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-head-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-head-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-head-a4 {
  display: grid !important;
  grid-template-columns: 1fr 64mm !important;
  gap: 16mm !important;
  min-height: 48mm !important;
  margin: 0 0 12mm !important;
  align-items: start !important;
}

.invoice-page-a4.hosting-offer-page .document-logo-box,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-logo-box,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-logo-box,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-logo-box {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: auto !important;
  height: auto !important;
}

.invoice-page-a4.hosting-offer-page .document-company-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-company-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-company-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-company-a4 {
  display: block !important;
  width: 64mm !important;
  text-align: right !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}

.invoice-page-a4.hosting-offer-page .document-company-a4 strong,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-company-a4 strong,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-company-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-company-a4 strong {
  display: block !important;
  margin: 0 0 2mm !important;
  padding-bottom: 1.6mm !important;
  border-bottom: .2mm solid #9ca3af !important;
  font-size: 11pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .document-company-a4 span,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-company-a4 span,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-company-a4 span,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-company-a4 span {
  display: block !important;
  margin: 0 0 .9mm !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-row-a4 {
  display: block !important;
  margin: 0 0 10mm !important;
  min-height: 28mm !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-a4 {
  display: block !important;
  width: 76mm !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-a4 > span,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-a4 > span,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-a4 > span,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-a4 > span {
  display: block !important;
  margin: 0 0 2mm !important;
  padding-bottom: 1.2mm !important;
  border-bottom: .2mm solid #b8c2cc !important;
  font-size: 7pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-a4 strong,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-a4 strong,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-a4 strong {
  display: block !important;
  margin: 0 0 1mm !important;
  font-size: 10pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .document-buyer-a4 p,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-buyer-a4 p,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-buyer-a4 p,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-buyer-a4 p {
  margin: 0 0 .8mm !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

.invoice-page-a4.hosting-offer-page .document-title-row-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-title-row-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-title-row-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: 1fr 42mm !important;
  gap: 12mm !important;
  align-items: end !important;
  margin: 0 0 10mm !important;
}

.invoice-page-a4.hosting-offer-page .document-title-a4 h2,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-title-a4 h2,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-title-a4 h2,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-title-a4 h2 {
  margin: 0 !important;
  font-size: 16pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .document-date-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-date-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-date-a4,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-date-a4 {
  display: block !important;
  width: 42mm !important;
  margin: 0 !important;
  text-align: left !important;
  font-size: 7.6pt !important;
  line-height: 1.15 !important;
}

.invoice-page-a4.hosting-offer-page .document-date-a4 strong,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-date-a4 strong,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-date-a4 strong,
body.print-document-only #print-document-host .invoice-page-a4.hosting-offer-page .document-date-a4 strong {
  display: block !important;
  margin-top: .8mm !important;
  font-size: 10pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.invoice-page-a4.hosting-offer-page .document-note-a4 p,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-note-a4 p,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-note-a4 p {
  white-space: normal !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 span,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong {
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
.document-drawer-shell .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div,
.print-window-wrap .invoice-page-a4.hosting-offer-page .document-payment-data-a4 div {
  grid-template-columns: 24mm 1fr !important;
  gap: 5mm !important;
  margin-bottom: 2.8mm !important;
}

/* Roko unified A4 offer template. Used by hosting and manual sales offers. */
.document-page.roko-offer-a4,
.document-drawer-shell .document-page.roko-offer-a4,
.business-offer-print-area .document-page.roko-offer-a4,
.print-window-wrap .document-page.roko-offer-a4,
body.print-document-only #print-document-host .document-page.roko-offer-a4 {
  box-sizing: border-box !important;
  position: relative !important;
  display: block !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 24mm 18mm 14mm !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  font-family: DejaVu Sans, Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.32 !important;
  letter-spacing: 0 !important;
  -webkit-print-color-adjust: exact !important;
  print-color-adjust: exact !important;
}

.document-drawer-shell .document-page.roko-offer-a4,
.business-offer-print-area .document-page.roko-offer-a4 {
  margin: 22px auto 28px !important;
  border: 1px solid #d8e0ea !important;
  box-shadow: 0 18px 50px rgba(15, 23, 42, .14) !important;
}

.print-window-wrap .document-page.roko-offer-a4,
body.print-document-only #print-document-host .document-page.roko-offer-a4 {
  margin: 0 auto !important;
  border: 0 !important;
  box-shadow: none !important;
}

.roko-offer-a4 *,
.roko-offer-a4 *::before,
.roko-offer-a4 *::after {
  box-sizing: border-box !important;
}

.roko-offer-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 64mm !important;
  gap: 16mm !important;
  align-items: start !important;
  min-height: 44mm !important;
  margin: 0 0 22mm !important;
}

.roko-offer-logo {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
}

.roko-offer-logo-image {
  display: block !important;
  width: 67mm !important;
  max-width: 67mm !important;
  height: auto !important;
  max-height: 34mm !important;
  object-fit: contain !important;
  object-position: left top !important;
}

.roko-offer-logo h2 {
  margin: 0 !important;
  color: #000 !important;
  font-size: 18pt !important;
  line-height: 1.1 !important;
}

.roko-offer-company {
  text-align: right !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.roko-offer-company strong {
  display: block !important;
  margin: 0 0 2mm !important;
  padding-bottom: 1.6mm !important;
  border-bottom: .2mm solid #9ca3af !important;
  color: #000 !important;
  font-size: 11pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.roko-offer-company span {
  display: block !important;
  margin: 0 0 .8mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

.roko-offer-buyer-row {
  display: block !important;
  margin: 0 0 7mm !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

.roko-offer-buyer {
  display: block !important;
  width: 78mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.roko-offer-label {
  display: block !important;
  margin: 0 0 2mm !important;
  padding-bottom: 1.2mm !important;
  border-bottom: .2mm solid #b8c2cc !important;
  color: #000 !important;
  font-size: 7pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.roko-offer-buyer strong {
  display: block !important;
  margin: 0 0 1mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.roko-offer-buyer p {
  margin: 0 0 .75mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

.roko-offer-title-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 43mm !important;
  gap: 12mm !important;
  align-items: end !important;
  margin: 0 0 8mm !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

.roko-offer-title h2 {
  margin: 0 !important;
  color: #000 !important;
  font-size: 16pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.roko-offer-date {
  margin: 0 !important;
  color: #000 !important;
  font-size: 7.6pt !important;
  line-height: 1.15 !important;
  text-align: left !important;
}

.roko-offer-date strong {
  display: block !important;
  margin-top: .8mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.roko-offer-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 3mm 10mm !important;
  margin: 0 0 5mm !important;
  color: #000 !important;
  font-size: 7.6pt !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

.roko-offer-meta span,
.roko-offer-meta strong {
  color: #000 !important;
  font-size: 7.6pt !important;
  line-height: 1.2 !important;
}

.roko-offer-items {
  width: 100% !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  margin: 0 0 8mm !important;
  color: #000 !important;
  font-size: 7.45pt !important;
  line-height: 1.22 !important;
}

.roko-offer-items th,
.roko-offer-items td {
  padding: 1.45mm 1mm !important;
  color: #000 !important;
  font-size: 7.45pt !important;
  line-height: 1.22 !important;
  vertical-align: top !important;
}

.roko-offer-items th {
  border-top: .25mm solid #111 !important;
  border-bottom: .2mm solid #111 !important;
  background: #eef2f5 !important;
  font-weight: 900 !important;
  text-align: left !important;
}

.roko-offer-items td {
  border-bottom: .12mm solid #cbd5e1 !important;
  font-weight: 400 !important;
}

.roko-offer-items tbody tr:last-child td {
  border-bottom: .2mm solid #111 !important;
}

.roko-offer-items th:nth-child(1),
.roko-offer-items td:nth-child(1) { width: 9mm !important; text-align: center !important; }
.roko-offer-items th:nth-child(2),
.roko-offer-items td:nth-child(2) { width: auto !important; text-align: left !important; white-space: normal !important; }
.roko-offer-items th:nth-child(3),
.roko-offer-items td:nth-child(3) { width: 13mm !important; text-align: center !important; }
.roko-offer-items th:nth-child(4),
.roko-offer-items td:nth-child(4) { width: 18mm !important; }
.roko-offer-items th:nth-child(5),
.roko-offer-items td:nth-child(5) { width: 22mm !important; }
.roko-offer-items th:nth-child(6),
.roko-offer-items td:nth-child(6) { width: 16mm !important; }
.roko-offer-items th:nth-child(7),
.roko-offer-items td:nth-child(7) { width: 24mm !important; }

.roko-offer-items .num {
  text-align: right !important;
  white-space: nowrap !important;
}

.roko-offer-items tfoot td {
  border-top: .25mm solid #111 !important;
  border-bottom: 0 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.roko-offer-items tfoot td:first-child {
  text-align: right !important;
}

.roko-offer-items tfoot td:last-child {
  text-align: right !important;
  white-space: nowrap !important;
}

.roko-offer-valid {
  margin: 0 0 8mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

.roko-offer-valid span {
  margin-left: 2mm !important;
  font-size: 10pt !important;
  font-weight: 900 !important;
}

.roko-offer-section {
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  break-inside: auto !important;
  page-break-inside: auto !important;
}

.roko-offer-section-title {
  display: block !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 8.4pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
}

.roko-offer-section p {
  margin: 0 0 1.35mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

.roko-offer-payment {
  display: grid !important;
  grid-template-columns: 78mm 82mm !important;
  gap: 14mm !important;
  justify-content: space-between !important;
  align-items: start !important;
  width: 100% !important;
  margin: 2mm 0 13mm !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

.roko-offer-payment-data {
  display: block !important;
  width: 100% !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.roko-offer-payment-title {
  display: block !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
}

.roko-offer-payment-row {
  display: grid !important;
  grid-template-columns: 24mm minmax(0, 1fr) !important;
  gap: 5mm !important;
  margin: 0 0 2.6mm !important;
  align-items: start !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

.roko-offer-payment-row span,
.roko-offer-payment-row strong {
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

.roko-offer-payment-row strong {
  font-weight: 900 !important;
  word-break: break-word !important;
}

.roko-offer-barcode {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
}

.roko-offer-barcode-image {
  display: block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

.roko-offer-footer {
  margin: 12mm 0 0 !important;
  padding-top: 3mm !important;
  border-top: .25mm solid #111 !important;
  color: #333 !important;
  font-size: 5.8pt !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

@media print {
  body.print-window,
  body.print-document-only {
    background: #fff !important;
    overflow: visible !important;
  }

  .print-window-wrap {
    width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: visible !important;
  }

  .print-window-wrap .document-page.roko-offer-a4,
  body.print-document-only #print-document-host .document-page.roko-offer-a4 {
    margin: 0 auto !important;
    border: 0 !important;
    box-shadow: none !important;
  }
}

/* Roko offer print correction v2. Keep hosting and manual sales offers identical. */
.document-page.roko-offer-a4,
.document-drawer-shell .document-page.roko-offer-a4,
.business-offer-print-area .document-page.roko-offer-a4,
.print-window-wrap .document-page.roko-offer-a4,
body.print-document-only #print-document-host .document-page.roko-offer-a4 {
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  padding: 22mm 18mm 14mm !important;
  overflow: visible !important;
  font-family: DejaVu Sans, Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.34 !important;
}

.roko-offer-a4 .roko-offer-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 64mm !important;
  align-items: start !important;
  gap: 16mm !important;
  min-height: 45mm !important;
  margin: 0 0 20mm !important;
}

.roko-offer-a4 .roko-offer-logo-image {
  width: 66mm !important;
  max-width: 66mm !important;
  max-height: 34mm !important;
}

.roko-offer-a4 .roko-offer-company,
.roko-offer-a4 .roko-offer-company span,
.roko-offer-a4 .roko-offer-buyer,
.roko-offer-a4 .roko-offer-buyer p,
.roko-offer-a4 .roko-offer-meta,
.roko-offer-a4 .roko-offer-meta span,
.roko-offer-a4 .roko-offer-section,
.roko-offer-a4 .roko-offer-section p,
.roko-offer-a4 .roko-offer-payment-data,
.roko-offer-a4 .roko-offer-payment-row,
.roko-offer-a4 .roko-offer-payment-row span,
.roko-offer-a4 .roko-offer-payment-row strong {
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.34 !important;
}

.roko-offer-a4 .roko-offer-company strong {
  font-size: 11pt !important;
  line-height: 1.12 !important;
}

.roko-offer-a4 .roko-offer-buyer-row {
  display: block !important;
  clear: both !important;
  width: 100% !important;
  min-height: 23mm !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}

.roko-offer-a4 .roko-offer-buyer {
  display: block !important;
  width: 78mm !important;
  max-width: 78mm !important;
}

.roko-offer-a4 .roko-offer-buyer strong {
  display: block !important;
  margin: 0 0 1mm !important;
  font-size: 10pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.roko-offer-a4 .roko-offer-title-row {
  display: grid !important;
  clear: both !important;
  grid-template-columns: minmax(0, 1fr) 42mm !important;
  gap: 12mm !important;
  align-items: end !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}

.roko-offer-a4 .roko-offer-title h2 {
  margin: 0 !important;
  font-size: 16pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.roko-offer-a4 .roko-offer-date {
  margin: 0 !important;
  font-size: 7.6pt !important;
  line-height: 1.15 !important;
  text-align: left !important;
}

.roko-offer-a4 .roko-offer-date strong {
  display: block !important;
  margin-top: .8mm !important;
  font-size: 10pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

.roko-offer-a4 .roko-offer-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 3mm 11mm !important;
  margin: 0 0 5mm !important;
  font-size: 7.7pt !important;
  font-weight: 700 !important;
}

.roko-offer-a4 .roko-offer-items {
  width: 100% !important;
  margin: 0 0 7mm !important;
  font-size: 7.45pt !important;
  line-height: 1.22 !important;
}

.roko-offer-a4 .roko-offer-items th,
.roko-offer-a4 .roko-offer-items td {
  padding: 1.35mm 1mm !important;
  font-size: 7.45pt !important;
  line-height: 1.22 !important;
}

.roko-offer-a4 .roko-offer-valid {
  display: block !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

.roko-offer-a4 .roko-offer-valid span {
  margin-left: 2mm !important;
  font-size: 10pt !important;
  font-weight: 900 !important;
}

.roko-offer-a4 .roko-offer-section {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  font-size: 8pt !important;
  line-height: 1.34 !important;
  white-space: normal !important;
}

.roko-offer-a4 .roko-offer-section-title {
  display: block !important;
  margin: 0 0 2mm !important;
  font-size: 8.4pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
}

.roko-offer-a4 .roko-offer-section p {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 1.35mm !important;
  font-size: 8pt !important;
  line-height: 1.34 !important;
  white-space: normal !important;
}

.roko-offer-a4 .roko-offer-payment {
  display: grid !important;
  grid-template-columns: 78mm 82mm !important;
  gap: 14mm !important;
  justify-content: space-between !important;
  align-items: start !important;
  width: 100% !important;
  margin: 2mm 0 13mm !important;
}

.roko-offer-a4 .roko-offer-payment-title {
  display: block !important;
  margin: 0 0 3mm !important;
  font-size: 8pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: none !important;
}

.roko-offer-a4 .roko-offer-payment-row {
  display: grid !important;
  grid-template-columns: 24mm minmax(0, 1fr) !important;
  gap: 5mm !important;
  margin: 0 0 2.4mm !important;
}

.roko-offer-a4 .roko-offer-payment-row strong {
  font-weight: 900 !important;
}

.roko-offer-a4 .roko-offer-barcode {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

.roko-offer-a4 .roko-offer-barcode-image {
  display: block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

@media print {
  #print-document-host,
  .print-window-wrap {
    position: static !important;
    inset: auto !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  .print-window-wrap .document-page.roko-offer-a4,
  body.print-document-only #print-document-host .document-page.roko-offer-a4 {
    position: relative !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    page-break-inside: auto !important;
    break-inside: auto !important;
  }
}

/* Roko ERP final A4 offer template v1.3.421.
   This must stay at the end: it neutralizes older absolute A4 layouts and
   gives hosting and manual sales offers the same document structure. */
body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page, .document-page.roko-offer-a4) {
  box-sizing: border-box !important;
  position: relative !important;
  display: block !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 17mm 17mm 12mm !important;
  overflow: visible !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.32 !important;
  page-break-inside: auto !important;
  break-inside: auto !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page, .document-page.roko-offer-a4) * {
  box-sizing: border-box !important;
  position: static !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  max-height: none !important;
  transform: none !important;
  float: none !important;
  overflow: visible !important;
  z-index: auto !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-head-a4, .document-page.roko-offer-a4 .roko-offer-head) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 66mm !important;
  gap: 16mm !important;
  align-items: start !important;
  width: 100% !important;
  min-height: 46mm !important;
  margin: 0 0 15mm !important;
  padding: 0 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-logo-box, .document-page.roko-offer-a4 .roko-offer-logo) {
  display: block !important;
  width: 70mm !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-logo, .document-page.roko-offer-a4 .roko-offer-logo-image) {
  display: block !important;
  width: 62mm !important;
  max-width: 62mm !important;
  height: auto !important;
  max-height: 32mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-company-a4, .document-page.roko-offer-a4 .roko-offer-company) {
  display: block !important;
  width: 66mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  text-align: right !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-company-a4 strong, .document-page.roko-offer-a4 .roko-offer-company strong) {
  display: block !important;
  margin: 0 0 1.4mm !important;
  padding: 0 0 1mm !important;
  border-bottom: .18mm solid #b8c0ca !important;
  color: #000 !important;
  font-size: 10.5pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-company-a4 span, .document-page.roko-offer-a4 .roko-offer-company span) {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-buyer-row-a4, .document-page.roko-offer-a4 .roko-offer-buyer-row) {
  display: block !important;
  width: 100% !important;
  min-height: 26mm !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-buyer-a4, .document-page.roko-offer-a4 .roko-offer-buyer) {
  display: block !important;
  width: 78mm !important;
  max-width: 78mm !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-buyer-a4 > span, .invoice-page-a4.hosting-offer-page .document-label, .document-page.roko-offer-a4 .roko-offer-label) {
  display: block !important;
  width: 52mm !important;
  margin: 0 0 1.4mm !important;
  padding: 0 0 .8mm !important;
  border-bottom: .18mm solid #b8c0ca !important;
  color: #000 !important;
  font-size: 6.4pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-buyer-a4 strong, .document-page.roko-offer-a4 .roko-offer-buyer strong) {
  display: block !important;
  margin: 0 0 .7mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-buyer-a4 p, .document-page.roko-offer-a4 .roko-offer-buyer p) {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-title-row-a4, .document-page.roko-offer-a4 .roko-offer-title-row) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 42mm !important;
  gap: 12mm !important;
  align-items: end !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-title-a4 h2, .document-page.roko-offer-a4 .roko-offer-title h2) {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 16pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-date-a4, .document-page.roko-offer-a4 .roko-offer-date) {
  display: block !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  text-align: left !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-date-a4 strong, .document-page.roko-offer-a4 .roko-offer-date strong) {
  display: block !important;
  margin: .8mm 0 0 !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-info-row-a4, .document-page.roko-offer-a4 .roko-offer-meta) {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 3mm 11mm !important;
  width: 100% !important;
  margin: 0 0 5mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  white-space: normal !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-info-row-a4 span, .invoice-page-a4.hosting-offer-page .document-info-row-a4 strong, .document-page.roko-offer-a4 .roko-offer-meta span, .document-page.roko-offer-a4 .roko-offer-meta strong) {
  display: inline !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.2 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items, .document-page.roko-offer-a4 .roko-offer-items) {
  display: table !important;
  width: 100% !important;
  margin: 0 0 7mm !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  border-top: .28mm solid #000 !important;
  color: #000 !important;
  font-size: 7.25pt !important;
  line-height: 1.22 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th, .invoice-page-a4.hosting-offer-page .document-items td, .document-page.roko-offer-a4 .roko-offer-items th, .document-page.roko-offer-a4 .roko-offer-items td) {
  padding: 1.25mm .9mm !important;
  color: #000 !important;
  font-size: 7.25pt !important;
  line-height: 1.22 !important;
  vertical-align: top !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th, .document-page.roko-offer-a4 .roko-offer-items th) {
  background: #eef1f4 !important;
  border-bottom: .28mm solid #000 !important;
  font-size: 6.55pt !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items td, .document-page.roko-offer-a4 .roko-offer-items td) {
  border-bottom: .18mm solid #d6dce3 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items tbody tr:last-child td, .document-page.roko-offer-a4 .roko-offer-items tbody tr:last-child td) {
  border-bottom: .28mm solid #000 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th:nth-child(1), .invoice-page-a4.hosting-offer-page .document-items td:nth-child(1), .document-page.roko-offer-a4 .roko-offer-items th:nth-child(1), .document-page.roko-offer-a4 .roko-offer-items td:nth-child(1)) { width: 7% !important; text-align: center !important; }
body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th:nth-child(2), .invoice-page-a4.hosting-offer-page .document-items td:nth-child(2), .document-page.roko-offer-a4 .roko-offer-items th:nth-child(2), .document-page.roko-offer-a4 .roko-offer-items td:nth-child(2)) { width: 43% !important; text-align: left !important; white-space: normal !important; }
body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th:nth-child(3), .invoice-page-a4.hosting-offer-page .document-items td:nth-child(3), .document-page.roko-offer-a4 .roko-offer-items th:nth-child(3), .document-page.roko-offer-a4 .roko-offer-items td:nth-child(3)) { width: 8% !important; text-align: center !important; }
body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th:nth-child(4), .invoice-page-a4.hosting-offer-page .document-items td:nth-child(4), .document-page.roko-offer-a4 .roko-offer-items th:nth-child(4), .document-page.roko-offer-a4 .roko-offer-items td:nth-child(4)) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th:nth-child(5), .invoice-page-a4.hosting-offer-page .document-items td:nth-child(5), .document-page.roko-offer-a4 .roko-offer-items th:nth-child(5), .document-page.roko-offer-a4 .roko-offer-items td:nth-child(5)) { width: 12% !important; text-align: right !important; white-space: nowrap !important; }
body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th:nth-child(6), .invoice-page-a4.hosting-offer-page .document-items td:nth-child(6), .document-page.roko-offer-a4 .roko-offer-items th:nth-child(6), .document-page.roko-offer-a4 .roko-offer-items td:nth-child(6)) { width: 9% !important; text-align: right !important; white-space: nowrap !important; }
body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items th:nth-child(7), .invoice-page-a4.hosting-offer-page .document-items td:nth-child(7), .document-page.roko-offer-a4 .roko-offer-items th:nth-child(7), .document-page.roko-offer-a4 .roko-offer-items td:nth-child(7)) { width: 11% !important; text-align: right !important; white-space: nowrap !important; font-weight: 900 !important; }

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items tfoot td, .document-page.roko-offer-a4 .roko-offer-items tfoot td) {
  padding: 1.6mm .9mm 0 !important;
  border: 0 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items tfoot td:first-child, .document-page.roko-offer-a4 .roko-offer-items tfoot td:first-child) {
  text-align: right !important;
  padding-right: 5mm !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-items tfoot td:last-child, .document-page.roko-offer-a4 .roko-offer-items tfoot td:last-child) {
  text-align: right !important;
  white-space: nowrap !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-summary-a4) {
  display: none !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-bottom-a4) {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-stay-a4, .document-page.roko-offer-a4 .roko-offer-valid) {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-stay-a4 p, .document-page.roko-offer-a4 .roko-offer-valid) {
  margin: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-stay-a4 span, .document-page.roko-offer-a4 .roko-offer-valid span) {
  margin-left: 2mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4, .invoice-page-a4.hosting-offer-page .document-note-a4, .document-page.roko-offer-a4 .roko-offer-section) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .hosting-offer-detail-title-a4, .invoice-page-a4.hosting-offer-page .document-note-a4 h4, .invoice-page-a4.hosting-offer-page .document-note-a4 strong, .document-page.roko-offer-a4 .roko-offer-section-title) {
  display: block !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 8.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .hosting-offer-detail-a4 p, .invoice-page-a4.hosting-offer-page .document-note-a4 p, .document-page.roko-offer-a4 .roko-offer-section p) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 1.35mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: pre-line !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-payment-a4, .document-page.roko-offer-a4 .roko-offer-payment) {
  display: grid !important;
  grid-template-columns: minmax(0, 78mm) 82mm !important;
  gap: 14mm !important;
  justify-content: space-between !important;
  align-items: start !important;
  width: 100% !important;
  margin: 2mm 0 13mm !important;
  padding: 0 !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-payment-data-a4, .document-page.roko-offer-a4 .roko-offer-payment-data) {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-payment-title-a4, .document-page.roko-offer-a4 .roko-offer-payment-title) {
  display: block !important;
  margin: 0 0 3mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: none !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-payment-data-a4 div, .document-page.roko-offer-a4 .roko-offer-payment-row) {
  display: grid !important;
  grid-template-columns: 23mm minmax(0, 1fr) !important;
  gap: 4mm !important;
  margin: 0 0 2.1mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-payment-data-a4 span, .invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong, .document-page.roko-offer-a4 .roko-offer-payment-row span, .document-page.roko-offer-a4 .roko-offer-payment-row strong) {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-payment-data-a4 strong, .document-page.roko-offer-a4 .roko-offer-payment-row strong) {
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .payment-code, .document-page.roko-offer-a4 .roko-offer-barcode) {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .payment-code-title-a4, .invoice-page-a4.hosting-offer-page .payment-code span, .invoice-page-a4.hosting-offer-page .payment-code small, .invoice-page-a4.hosting-offer-page .payment-code .muted) {
  display: none !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .payment-code-image, .document-page.roko-offer-a4 .roko-offer-barcode-image) {
  display: block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

body :is(.hosting-offer-preview-shell, .business-offer-preview-shell, .business-offer-print-area, .print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page .document-footer-a4, .document-page.roko-offer-a4 .roko-offer-footer) {
  display: block !important;
  width: 100% !important;
  margin: 13mm 0 0 !important;
  padding: 2.5mm 0 0 !important;
  border-top: .18mm solid #000 !important;
  color: #555 !important;
  text-align: center !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

@media print {
  html,
  body {
    width: 210mm !important;
    min-width: 210mm !important;
    height: auto !important;
    min-height: 297mm !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  #print-document-host,
  .print-window-wrap {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body :is(.print-window-wrap, #print-document-host) :is(.invoice-page-a4.hosting-offer-page, .document-page.roko-offer-a4) {
    margin: 0 auto !important;
    border: 0 !important;
    box-shadow: none !important;
    page-break-inside: auto !important;
    break-inside: auto !important;
  }
}

/* Final shared Roko A4 offer template for manual sales offers. Keep at EOF. */
body .document-page.roko-offer-a4.roko-offer-print-v2 {
  box-sizing: border-box !important;
  position: relative !important;
  display: block !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 17mm 17mm 12mm !important;
  overflow: visible !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.32 !important;
  page-break-inside: auto !important;
  break-inside: auto !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 *,
body .document-page.roko-offer-a4.roko-offer-print-v2 *::before,
body .document-page.roko-offer-a4.roko-offer-print-v2 *::after {
  box-sizing: border-box !important;
  position: static !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
  float: none !important;
  overflow: visible !important;
  z-index: auto !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 68mm !important;
  gap: 18mm !important;
  align-items: start !important;
  width: 100% !important;
  min-height: 43mm !important;
  margin: 0 0 15mm !important;
  padding: 0 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo {
  display: block !important;
  width: 70mm !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo-image {
  display: block !important;
  width: 60mm !important;
  max-width: 60mm !important;
  height: auto !important;
  max-height: 31mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company {
  display: block !important;
  width: 68mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  text-align: right !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company strong {
  display: block !important;
  margin: 0 0 1.5mm !important;
  padding: 0 0 1mm !important;
  border-bottom: .18mm solid #b8c0ca !important;
  color: #000 !important;
  font-size: 10.5pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company span {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer-row {
  display: block !important;
  width: 100% !important;
  min-height: 25mm !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  clear: both !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer {
  display: block !important;
  width: 78mm !important;
  max-width: 78mm !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-label {
  display: block !important;
  width: 52mm !important;
  margin: 0 0 1.5mm !important;
  padding: 0 0 .8mm !important;
  border-bottom: .18mm solid #b8c0ca !important;
  color: #000 !important;
  font-size: 6.4pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer strong {
  display: block !important;
  margin: 0 0 .8mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer p {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 43mm !important;
  gap: 12mm !important;
  align-items: end !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  clear: both !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title h2 {
  display: block !important;
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 16pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date {
  display: block !important;
  margin: 0 !important;
  color: #000 !important;
  text-align: left !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date strong {
  display: block !important;
  margin: .8mm 0 0 !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta {
  display: grid !important;
  grid-template-columns: 52mm 43mm minmax(0, 1fr) !important;
  gap: 5mm !important;
  width: 100% !important;
  margin: 0 0 5mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
  white-space: normal !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta strong {
  display: inline !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.18 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items {
  display: table !important;
  width: 100% !important;
  margin: 0 0 7mm !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  border-top: .28mm solid #000 !important;
  color: #000 !important;
  font-size: 7.3pt !important;
  line-height: 1.22 !important;
  page-break-inside: auto !important;
  break-inside: auto !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items thead { display: table-header-group !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tfoot { display: table-footer-group !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tr { page-break-inside: avoid !important; break-inside: avoid !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td {
  padding: 1.25mm .9mm !important;
  color: #000 !important;
  font-size: 7.3pt !important;
  line-height: 1.22 !important;
  vertical-align: top !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th {
  background: #eef1f4 !important;
  border-bottom: .28mm solid #000 !important;
  font-size: 6.6pt !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td { border-bottom: .18mm solid #d6dce3 !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tbody tr:last-child td { border-bottom: .28mm solid #000 !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(1),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(1) { width: 7% !important; text-align: center !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(2),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(2) { width: 43% !important; text-align: left !important; white-space: normal !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(3),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(3) { width: 8% !important; text-align: center !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(4),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(4) { width: 10% !important; text-align: right !important; white-space: nowrap !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(5),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(5) { width: 12% !important; text-align: right !important; white-space: nowrap !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(6),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(6) { width: 9% !important; text-align: right !important; white-space: nowrap !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(7),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(7) { width: 11% !important; text-align: right !important; white-space: nowrap !important; font-weight: 900 !important; }
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tfoot td {
  padding: 1.6mm .9mm 0 !important;
  border: 0 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid {
  display: block !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid strong {
  margin-left: 2mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section-title,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-title {
  display: block !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 8.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section p {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 1.35mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
  white-space: pre-line !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment {
  display: grid !important;
  grid-template-columns: minmax(0, 78mm) 82mm !important;
  gap: 14mm !important;
  justify-content: space-between !important;
  align-items: start !important;
  width: 100% !important;
  margin: 2mm 0 13mm !important;
  padding: 0 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-data {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row {
  display: grid !important;
  grid-template-columns: 23mm minmax(0, 1fr) !important;
  gap: 4mm !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row strong {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row strong {
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode-image {
  display: block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 30mm !important;
  max-height: 30mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-footer {
  display: block !important;
  width: 100% !important;
  margin: 13mm 0 0 !important;
  padding: 2.5mm 0 0 !important;
  border-top: .18mm solid #000 !important;
  color: #555 !important;
  text-align: center !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

/* Roko unified A4 offer template v1.3.422.
   Final override for Hosting and Poslovanje offers. Keep this at EOF. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2,
body .document-page.roko-offer-a4.roko-offer-print-v2 {
  box-sizing: border-box !important;
  display: block !important;
  position: static !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 16mm 17mm 11mm !important;
  overflow: visible !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
  page-break-inside: auto !important;
  break-inside: auto !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 *,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 *::before,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 *::after,
body .document-page.roko-offer-a4.roko-offer-print-v2 *,
body .document-page.roko-offer-a4.roko-offer-print-v2 *::before,
body .document-page.roko-offer-a4.roko-offer-print-v2 *::after {
  box-sizing: border-box !important;
  position: static !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  float: none !important;
  transform: none !important;
  z-index: auto !important;
  overflow: visible !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-head {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 28mm !important;
  padding: 0 !important;
  clear: both !important;
  min-height: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo {
  display: table-cell !important;
  width: 58% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo-image {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: auto !important;
  max-height: 28mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company {
  display: table-cell !important;
  width: 42% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: top !important;
  color: #000 !important;
  font-size: 7.6pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company strong {
  display: block !important;
  margin: 0 0 1.7mm !important;
  padding: 0 0 1mm !important;
  border-bottom: .18mm solid #aeb7c2 !important;
  color: #000 !important;
  font-size: 10.2pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company span {
  display: block !important;
  margin: 0 0 .4mm !important;
  color: #000 !important;
  font-size: 7.6pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer-row {
  display: block !important;
  clear: both !important;
  width: 100% !important;
  min-height: 22mm !important;
  margin: 0 0 6.5mm !important;
  padding: 0 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer {
  display: block !important;
  width: 80mm !important;
  max-width: 80mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4 > span,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-label,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-label {
  display: block !important;
  width: 54mm !important;
  margin: 0 0 1.4mm !important;
  padding: 0 0 .75mm !important;
  border-bottom: .18mm solid #aeb7c2 !important;
  color: #000 !important;
  font-size: 6.4pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer strong {
  display: block !important;
  margin: 0 0 .55mm !important;
  color: #000 !important;
  font-size: 9.8pt !important;
  line-height: 1.13 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer p {
  display: block !important;
  margin: 0 0 .35mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title-row {
  display: table !important;
  table-layout: fixed !important;
  clear: both !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title {
  display: table-cell !important;
  width: 70% !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: bottom !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4 h2,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 h2,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title h2 {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 15.5pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date {
  display: table-cell !important;
  width: 30% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  text-align: right !important;
  vertical-align: bottom !important;
  font-size: 7.3pt !important;
  line-height: 1.15 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date strong {
  display: block !important;
  margin: .7mm 0 0 !important;
  color: #000 !important;
  font-size: 9.7pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 4.5mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta span {
  display: table-cell !important;
  width: 33.333% !important;
  padding: 0 4mm 0 0 !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta strong {
  display: inline !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items {
  display: table !important;
  width: 100% !important;
  margin: 0 0 7mm !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  border-top: .28mm solid #000 !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.22 !important;
  page-break-inside: auto !important;
  break-inside: auto !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items thead,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items thead {
  display: table-header-group !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items tfoot,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tfoot {
  display: table-footer-group !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items tr,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tr {
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td {
  padding: 1.1mm .8mm !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.22 !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th {
  background: #eef1f4 !important;
  border-bottom: .28mm solid #000 !important;
  font-size: 6.5pt !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td {
  border-bottom: .18mm solid #d6dce3 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items tbody tr:last-child td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tbody tr:last-child td {
  border-bottom: .28mm solid #000 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(1),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(1),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(1),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(1) {
  width: 7% !important;
  text-align: center !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(2),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(2),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(2),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(2) {
  width: 43% !important;
  text-align: left !important;
  white-space: normal !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(3),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(3),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(3),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(3) {
  width: 8% !important;
  text-align: center !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(4),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(4),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(4),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(4) {
  width: 10% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(5),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(5),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(5),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(5) {
  width: 12% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(6),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(6),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(6),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(6) {
  width: 9% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(7),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(7),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(7),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(7) {
  width: 11% !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items tfoot td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tfoot td {
  padding: 1.5mm .8mm 0 !important;
  border: 0 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-align: right !important;
  text-transform: uppercase !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-bottom-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-summary-a4 {
  display: none !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid {
  display: block !important;
  width: 100% !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid {
  margin: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid strong {
  margin-left: 2mm !important;
  color: #000 !important;
  font-size: 9.7pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.36 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-title-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 h4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section-title,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-title {
  display: block !important;
  margin: 0 0 1.8mm !important;
  color: #000 !important;
  font-size: 8.3pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section p {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 1.25mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.36 !important;
  white-space: pre-line !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 1mm 0 12mm !important;
  padding: 0 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-data {
  display: table-cell !important;
  width: 82mm !important;
  margin: 0 !important;
  padding: 0 11mm 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 1.8mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row span {
  display: table-cell !important;
  width: 24mm !important;
  padding: 0 3mm 0 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row strong {
  display: table-cell !important;
  width: auto !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode {
  display: table-cell !important;
  width: 82mm !important;
  margin: 0 !important;
  padding: 3.2mm 0 0 !important;
  text-align: left !important;
  vertical-align: top !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-title-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code .muted {
  display: none !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode-image {
  display: block !important;
  width: 80mm !important;
  max-width: 80mm !important;
  height: 29mm !important;
  max-height: 29mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-footer-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-footer {
  display: block !important;
  width: 100% !important;
  margin: 13mm 0 0 !important;
  padding: 2.3mm 0 0 !important;
  border-top: .18mm solid #000 !important;
  color: #555 !important;
  text-align: center !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

/* Hosting offer print alignment v1.3.425. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 {
  font-size: 8.2pt !important;
  line-height: 1.34 !important;
  padding-top: 15mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4 {
  min-height: 47mm !important;
  margin: 0 0 21mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box {
  width: 56% !important;
  padding-top: 0 !important;
  vertical-align: middle !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo {
  width: 92mm !important;
  max-width: 92mm !important;
  max-height: 41mm !important;
  object-position: left center !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 {
  width: 44% !important;
  padding: 0 0 0 10mm !important;
  vertical-align: middle !important;
  font-size: 8.1pt !important;
  line-height: 1.32 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong {
  margin-bottom: 2.3mm !important;
  padding-bottom: 1.35mm !important;
  font-size: 11.6pt !important;
  line-height: 1.13 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span {
  font-size: 8.1pt !important;
  line-height: 1.3 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4 {
  min-height: 26mm !important;
  margin-bottom: 6mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 {
  width: 100% !important;
  margin: 0 0 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4 {
  width: 70% !important;
  text-align: left !important;
  vertical-align: bottom !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 h2 {
  text-align: left !important;
  font-size: 17.2pt !important;
  line-height: 1.06 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 {
  width: 30% !important;
  padding-bottom: .35mm !important;
  text-align: right !important;
  vertical-align: bottom !important;
  font-size: 7.6pt !important;
  line-height: 1.15 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 strong {
  font-size: 10.4pt !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 {
  table-layout: auto !important;
  margin-bottom: 4.2mm !important;
  font-size: 7pt !important;
  line-height: 1.14 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span {
  width: auto !important;
  padding-right: 6mm !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span:last-child {
  padding-right: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 strong {
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items {
  margin-bottom: 6.8mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4 {
  margin-bottom: 7.5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 {
  font-size: 8pt !important;
  line-height: 1.34 !important;
  margin-bottom: 7.5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 p {
  font-size: 8pt !important;
  line-height: 1.34 !important;
  margin: 0 0 .65mm !important;
  white-space: pre-line !important;
}

/* Hosting offer print logo/payment polish v1.3.426. Keep this as the last print override. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4 {
  grid-template-columns: minmax(0, 124mm) minmax(0, 47mm) !important;
  gap: 5mm !important;
  min-height: 38mm !important;
  margin-bottom: 9mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box {
  width: 124mm !important;
  max-width: 124mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo {
  width: 124mm !important;
  max-width: 124mm !important;
  max-height: 43mm !important;
  object-position: left top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 {
  width: 47mm !important;
  padding-left: 0 !important;
  font-size: 7.6pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong {
  font-size: 10.8pt !important;
  margin-bottom: 1.6mm !important;
  padding-bottom: 1mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span {
  font-size: 7.6pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4 {
  min-height: 22mm !important;
  margin-bottom: 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 {
  width: 86mm !important;
  padding-right: 8mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div {
  margin-bottom: 1.05mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 span {
  width: 27mm !important;
  padding-right: 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image {
  width: 82mm !important;
  max-width: 82mm !important;
  height: 29mm !important;
  max-height: 29mm !important;
}

/* Final unified offer print override v1.3.427. This must stay at EOF. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2,
body .document-page.roko-offer-a4.roko-offer-print-v2 {
  padding: 16mm 17mm 14mm !important;
  font-size: 8pt !important;
  line-height: 1.26 !important;
  color: #000 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-head {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 7mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo {
  display: table-cell !important;
  width: 58% !important;
  max-width: none !important;
  padding: 0 !important;
  text-align: left !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo-image {
  display: block !important;
  width: 104mm !important;
  max-width: 104mm !important;
  height: auto !important;
  max-height: 34mm !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: left top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company {
  display: table-cell !important;
  width: 42% !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: top !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company strong {
  display: block !important;
  width: 100% !important;
  margin: 0 0 1.35mm !important;
  padding: 0 0 1mm !important;
  border-bottom: .25mm solid #9ca3af !important;
  font-size: 11pt !important;
  line-height: 1.14 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company span {
  display: block !important;
  margin: 0 0 .35mm !important;
  font-size: 8pt !important;
  line-height: 1.2 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer-row {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 8mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title-row {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 6mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title {
  display: table-cell !important;
  width: 72% !important;
  text-align: left !important;
  vertical-align: bottom !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 h2,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title h2 {
  margin: 0 !important;
  font-size: 17.8pt !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date {
  display: table-cell !important;
  width: 28% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: bottom !important;
  font-size: 7.4pt !important;
  line-height: 1.12 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date strong {
  display: block !important;
  margin-top: .3mm !important;
  font-size: 10pt !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 4.3mm !important;
  font-size: 7.2pt !important;
  line-height: 1.13 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta span {
  display: table-cell !important;
  width: 33.333% !important;
  padding-right: 4mm !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items {
  width: 100% !important;
  margin: 0 0 4.8mm !important;
  border-collapse: collapse !important;
  page-break-inside: auto !important;
  font-size: 7.3pt !important;
  line-height: 1.2 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid {
  margin: 0 0 7mm !important;
  font-size: 9pt !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section {
  width: 100% !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section p {
  margin: 0 !important;
  font-size: 8pt !important;
  line-height: 1.27 !important;
  white-space: pre-line !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 1mm 0 10mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-data {
  display: table-cell !important;
  width: 86mm !important;
  padding: 0 10mm 0 0 !important;
  vertical-align: top !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row {
  display: table !important;
  width: 100% !important;
  margin: 0 0 .75mm !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row span {
  display: table-cell !important;
  width: 28mm !important;
  padding-right: 7mm !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row strong {
  display: table-cell !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode {
  display: table-cell !important;
  width: 82mm !important;
  text-align: right !important;
  vertical-align: middle !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode-image {
  display: inline-block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 31mm !important;
  max-height: 31mm !important;
  object-fit: contain !important;
}

/* Unified offer print layout v1.3.427. Applies to hosting and manual sales offers. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2,
body .document-page.roko-offer-a4.roko-offer-print-v2 {
  padding: 16mm 17mm 14mm !important;
  font-size: 8pt !important;
  line-height: 1.26 !important;
  color: #000 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-head {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 7mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo {
  display: table-cell !important;
  width: 58% !important;
  max-width: none !important;
  padding: 0 !important;
  text-align: left !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo-image {
  display: block !important;
  width: 104mm !important;
  max-width: 104mm !important;
  height: auto !important;
  max-height: 34mm !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: left top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company {
  display: table-cell !important;
  width: 42% !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: top !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company strong {
  display: block !important;
  width: 100% !important;
  margin: 0 0 1.35mm !important;
  padding: 0 0 1mm !important;
  border-bottom: .25mm solid #9ca3af !important;
  font-size: 11pt !important;
  line-height: 1.14 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company span {
  display: block !important;
  margin: 0 0 .35mm !important;
  font-size: 8pt !important;
  line-height: 1.2 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer-row {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 8mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer {
  width: 55mm !important;
  max-width: 70mm !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4 h3,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer h3 {
  margin: 0 0 .75mm !important;
  font-size: 10.6pt !important;
  line-height: 1.12 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title-row {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 6mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title {
  display: table-cell !important;
  width: 72% !important;
  text-align: left !important;
  vertical-align: bottom !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 h2,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title h2 {
  margin: 0 !important;
  font-size: 17.8pt !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date {
  display: table-cell !important;
  width: 28% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: bottom !important;
  font-size: 7.4pt !important;
  line-height: 1.12 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date strong {
  display: block !important;
  margin-top: .3mm !important;
  font-size: 10pt !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 4.3mm !important;
  font-size: 7.2pt !important;
  line-height: 1.13 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta span {
  display: table-cell !important;
  width: 33.333% !important;
  padding-right: 4mm !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span:last-child,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta span:last-child {
  padding-right: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items {
  width: 100% !important;
  margin: 0 0 4.8mm !important;
  border-collapse: collapse !important;
  page-break-inside: auto !important;
  font-size: 7.3pt !important;
  line-height: 1.2 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td {
  padding: 1.25mm 1.45mm !important;
  font-size: 7.3pt !important;
  line-height: 1.2 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid {
  margin: 0 0 7mm !important;
  font-size: 9pt !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section {
  width: 100% !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 h3,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 h3,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section h3 {
  margin: 0 0 1.8mm !important;
  font-size: 9pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section p {
  margin: 0 !important;
  font-size: 8pt !important;
  line-height: 1.27 !important;
  white-space: pre-line !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 1mm 0 10mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-data {
  display: table-cell !important;
  width: 86mm !important;
  padding: 0 10mm 0 0 !important;
  vertical-align: top !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 > strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-title {
  display: block !important;
  margin: 0 0 1.9mm !important;
  font-size: 8.3pt !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row {
  display: table !important;
  width: 100% !important;
  margin: 0 0 .75mm !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row span {
  display: table-cell !important;
  width: 28mm !important;
  padding-right: 7mm !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row strong {
  display: table-cell !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode {
  display: table-cell !important;
  width: 82mm !important;
  text-align: right !important;
  vertical-align: middle !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode-image {
  display: inline-block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 31mm !important;
  max-height: 31mm !important;
  object-fit: contain !important;
}

/* Hosting offer print logo/payment polish v1.3.426. Keep this as the last print override. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4 {
  grid-template-columns: minmax(0, 124mm) minmax(0, 47mm) !important;
  gap: 5mm !important;
  min-height: 38mm !important;
  margin-bottom: 9mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box {
  width: 124mm !important;
  max-width: 124mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo {
  width: 124mm !important;
  max-width: 124mm !important;
  max-height: 43mm !important;
  object-position: left top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 {
  width: 47mm !important;
  padding-left: 0 !important;
  font-size: 7.6pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong {
  font-size: 10.8pt !important;
  margin-bottom: 1.6mm !important;
  padding-bottom: 1mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span {
  font-size: 7.6pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4 {
  min-height: 22mm !important;
  margin-bottom: 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 {
  width: 86mm !important;
  padding-right: 8mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div {
  margin-bottom: 1.05mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 span {
  width: 27mm !important;
  padding-right: 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image {
  width: 82mm !important;
  max-width: 82mm !important;
  height: 29mm !important;
  max-height: 29mm !important;
}

/* Hosting offer print polish v1.3.424.
   Keeps the existing document flow, only improves visual balance. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 {
  font-size: 8.2pt !important;
  line-height: 1.35 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4 {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  min-height: 39mm !important;
  margin: 0 0 25mm !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box {
  display: table-cell !important;
  width: 55% !important;
  padding: 2mm 0 0 !important;
  text-align: left !important;
  vertical-align: middle !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo {
  width: 84mm !important;
  max-width: 84mm !important;
  height: auto !important;
  max-height: 36mm !important;
  object-fit: contain !important;
  object-position: left center !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 {
  display: table-cell !important;
  width: 45% !important;
  padding: 1.5mm 0 0 8mm !important;
  text-align: right !important;
  vertical-align: middle !important;
  font-size: 7.9pt !important;
  line-height: 1.34 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong {
  display: block !important;
  margin: 0 0 2mm !important;
  padding: 0 0 1.25mm !important;
  border-bottom: .2mm solid #8e99a6 !important;
  color: #000 !important;
  font-size: 11pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span {
  display: block !important;
  margin: 0 0 .55mm !important;
  color: #000 !important;
  font-size: 7.9pt !important;
  line-height: 1.28 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 {
  font-size: 8.1pt !important;
  line-height: 1.38 !important;
  margin-bottom: 8mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 p {
  font-size: 8.1pt !important;
  line-height: 1.38 !important;
  margin-bottom: 1.15mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-a4 {
  margin-top: 1.5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 span,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 strong {
  font-size: 7.9pt !important;
  line-height: 1.28 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-title-a4 {
  display: block !important;
  width: 78mm !important;
  margin: 0 0 1.3mm !important;
  color: #000 !important;
  text-align: center !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image {
  width: 78mm !important;
  max-width: 78mm !important;
  height: 27mm !important;
  max-height: 27mm !important;
}

/* Final shared print template v1.3.423.
   This override keeps Hosting and Poslovanje offers in the same A4 flow. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2,
body .document-page.roko-offer-a4.roko-offer-print-v2 {
  box-sizing: border-box !important;
  display: block !important;
  position: relative !important;
  width: 210mm !important;
  min-width: 210mm !important;
  max-width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 16mm 17mm 10mm !important;
  overflow: visible !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 8pt !important;
  line-height: 1.32 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 *,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 *::before,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 *::after,
body .document-page.roko-offer-a4.roko-offer-print-v2 *,
body .document-page.roko-offer-a4.roko-offer-print-v2 *::before,
body .document-page.roko-offer-a4.roko-offer-print-v2 *::after {
  box-sizing: border-box !important;
  position: static !important;
  inset: auto !important;
  float: none !important;
  transform: none !important;
  overflow: visible !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-head {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 29mm !important;
  padding: 0 !important;
  clear: both !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo {
  display: table-cell !important;
  width: 56% !important;
  padding: 0 !important;
  text-align: left !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo-image {
  display: block !important;
  width: 58mm !important;
  max-width: 58mm !important;
  height: auto !important;
  max-height: 29mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company {
  display: table-cell !important;
  width: 44% !important;
  padding: 0 !important;
  color: #000 !important;
  text-align: right !important;
  vertical-align: top !important;
  font-size: 7.6pt !important;
  line-height: 1.25 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company strong {
  display: block !important;
  margin: 0 0 1.8mm !important;
  padding: 0 0 1mm !important;
  border-bottom: .18mm solid #aeb7c2 !important;
  color: #000 !important;
  font-size: 10.3pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company span {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 7.5pt !important;
  line-height: 1.25 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer-row {
  display: block !important;
  clear: both !important;
  width: 100% !important;
  min-height: 24mm !important;
  margin: 0 0 5.5mm !important;
  padding: 0 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer {
  display: block !important;
  width: 78mm !important;
  max-width: 78mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4 > span,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-label,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-label {
  display: block !important;
  width: 52mm !important;
  margin: 0 0 1.4mm !important;
  padding: 0 0 .75mm !important;
  border-bottom: .18mm solid #aeb7c2 !important;
  color: #000 !important;
  font-size: 6.4pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer strong {
  display: block !important;
  margin: 0 0 .55mm !important;
  color: #000 !important;
  font-size: 9.8pt !important;
  line-height: 1.14 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer p {
  display: block !important;
  margin: 0 0 .35mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title-row {
  display: table !important;
  table-layout: fixed !important;
  clear: both !important;
  width: 100% !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title {
  display: table-cell !important;
  width: 70% !important;
  padding: 0 !important;
  vertical-align: bottom !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4 h2,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 h2,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title h2 {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 15.5pt !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date {
  display: table-cell !important;
  width: 30% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  text-align: right !important;
  vertical-align: bottom !important;
  font-size: 7.3pt !important;
  line-height: 1.15 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date strong {
  display: block !important;
  margin: .7mm 0 0 !important;
  color: #000 !important;
  font-size: 9.7pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 4.5mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta span {
  display: table-cell !important;
  width: 33.333% !important;
  padding: 0 4mm 0 0 !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items {
  display: table !important;
  width: 100% !important;
  margin: 0 0 6mm !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  border-top: .28mm solid #000 !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.22 !important;
  page-break-inside: auto !important;
  break-inside: auto !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items thead,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items thead {
  display: table-header-group !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items tfoot,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tfoot {
  display: table-footer-group !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items tr,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tr {
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td {
  padding: 1.05mm .8mm !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.22 !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th {
  background: #eef1f4 !important;
  border-bottom: .28mm solid #000 !important;
  font-size: 6.5pt !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td {
  border-bottom: .18mm solid #d6dce3 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items tbody tr:last-child td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tbody tr:last-child td {
  border-bottom: .28mm solid #000 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(1),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(1),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(1),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(1) {
  width: 7% !important;
  text-align: center !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(2),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(2),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(2),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(2) {
  width: 43% !important;
  text-align: left !important;
  white-space: normal !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(3),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(3),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(3),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(3) {
  width: 8% !important;
  text-align: center !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(4),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(4),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(4),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(4) {
  width: 10% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(5),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(5),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(5),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(5) {
  width: 12% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(6),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(6),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(6),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(6) {
  width: 9% !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items th:nth-child(7),
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items td:nth-child(7),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items th:nth-child(7),
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items td:nth-child(7) {
  width: 11% !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items tfoot td,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items tfoot td {
  padding: 1.35mm .8mm 0 !important;
  border: 0 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-align: right !important;
  text-transform: uppercase !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-bottom-a4 {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-summary-a4 {
  display: none !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid {
  display: block !important;
  width: 100% !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.3 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid {
  margin: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid strong {
  margin-left: 2mm !important;
  color: #000 !important;
  font-size: 9.7pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.36 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-title-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 h4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section-title,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-title {
  display: block !important;
  margin: 0 0 1.8mm !important;
  color: #000 !important;
  font-size: 8.3pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section p {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 1.25mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.36 !important;
  white-space: pre-line !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 1mm 0 12mm !important;
  padding: 0 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-data {
  display: table-cell !important;
  width: 82mm !important;
  margin: 0 !important;
  padding: 0 11mm 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.25 !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 1.75mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row span {
  display: table-cell !important;
  width: 24mm !important;
  padding: 0 3mm 0 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row strong {
  display: table-cell !important;
  width: auto !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode {
  display: table-cell !important;
  width: 82mm !important;
  margin: 0 !important;
  padding: 3mm 0 0 !important;
  text-align: left !important;
  vertical-align: top !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-title-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code .muted {
  display: none !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode-image {
  display: block !important;
  width: 78mm !important;
  max-width: 78mm !important;
  height: 28mm !important;
  max-height: 28mm !important;
  object-fit: contain !important;
  object-position: left top !important;
  margin: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-footer-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-footer {
  display: block !important;
  width: 100% !important;
  margin: 13mm 0 0 !important;
  padding: 2.3mm 0 0 !important;
  border-top: .18mm solid #000 !important;
  color: #555 !important;
  text-align: center !important;
  font-size: 6pt !important;
  line-height: 1.15 !important;
}

/* Hosting offer print final alignment v1.3.425. Keep this as the last print override. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 {
  font-size: 8.2pt !important;
  line-height: 1.34 !important;
  padding-top: 15mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4 {
  min-height: 47mm !important;
  margin: 0 0 21mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box {
  width: 56% !important;
  padding-top: 0 !important;
  vertical-align: middle !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo {
  width: 92mm !important;
  max-width: 92mm !important;
  max-height: 41mm !important;
  object-position: left center !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 {
  width: 44% !important;
  padding: 0 0 0 10mm !important;
  vertical-align: middle !important;
  font-size: 8.1pt !important;
  line-height: 1.32 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong {
  margin-bottom: 2.3mm !important;
  padding-bottom: 1.35mm !important;
  font-size: 11.6pt !important;
  line-height: 1.13 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span {
  font-size: 8.1pt !important;
  line-height: 1.3 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4 {
  min-height: 26mm !important;
  margin-bottom: 6mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 {
  width: 100% !important;
  margin: 0 0 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4 {
  width: 70% !important;
  text-align: left !important;
  vertical-align: bottom !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 h2 {
  text-align: left !important;
  font-size: 17.2pt !important;
  line-height: 1.06 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 {
  width: 30% !important;
  padding-bottom: .35mm !important;
  text-align: right !important;
  vertical-align: bottom !important;
  font-size: 7.6pt !important;
  line-height: 1.15 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 strong {
  font-size: 10.4pt !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 {
  table-layout: auto !important;
  margin-bottom: 4.2mm !important;
  font-size: 7pt !important;
  line-height: 1.14 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span {
  width: auto !important;
  padding-right: 6mm !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span:last-child {
  padding-right: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 strong {
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items {
  margin-bottom: 6.8mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4 {
  margin-bottom: 7.5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 {
  font-size: 8pt !important;
  line-height: 1.34 !important;
  margin-bottom: 7.5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 p {
  font-size: 8pt !important;
  line-height: 1.34 !important;
  margin: 0 0 .65mm !important;
  white-space: pre-line !important;
}

/* Hosting offer print logo/payment polish v1.3.426. Keep this as the last print override. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4 {
  grid-template-columns: minmax(0, 124mm) minmax(0, 47mm) !important;
  gap: 5mm !important;
  min-height: 38mm !important;
  margin-bottom: 9mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box {
  width: 124mm !important;
  max-width: 124mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo {
  width: 124mm !important;
  max-width: 124mm !important;
  max-height: 43mm !important;
  object-position: left top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 {
  width: 47mm !important;
  padding-left: 0 !important;
  font-size: 7.6pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong {
  font-size: 10.8pt !important;
  margin-bottom: 1.6mm !important;
  padding-bottom: 1mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span {
  font-size: 7.6pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4 {
  min-height: 22mm !important;
  margin-bottom: 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 {
  width: 86mm !important;
  padding-right: 8mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div {
  margin-bottom: 1.05mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 span {
  width: 27mm !important;
  padding-right: 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image {
  width: 82mm !important;
  max-width: 82mm !important;
  height: 29mm !important;
  max-height: 29mm !important;
}

/* EOF unified offer print override v1.3.427. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2,
body .document-page.roko-offer-a4.roko-offer-print-v2 {
  padding: 16mm 17mm 14mm !important;
  font-size: 8pt !important;
  line-height: 1.26 !important;
  color: #000 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-head-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-head {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 7mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo-box,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo {
  display: table-cell !important;
  width: 58% !important;
  max-width: none !important;
  padding: 0 !important;
  text-align: left !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-logo,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-logo-image {
  display: block !important;
  width: 104mm !important;
  max-width: 104mm !important;
  height: auto !important;
  max-height: 34mm !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: left top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company {
  display: table-cell !important;
  width: 42% !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: top !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company strong {
  display: block !important;
  width: 100% !important;
  margin: 0 0 1.35mm !important;
  padding: 0 0 1mm !important;
  border-bottom: .25mm solid #9ca3af !important;
  font-size: 11pt !important;
  line-height: 1.14 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-company-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-company span {
  display: block !important;
  margin: 0 0 .35mm !important;
  font-size: 8pt !important;
  line-height: 1.2 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer-row {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 8mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-buyer-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-buyer {
  width: 55mm !important;
  max-width: 70mm !important;
  font-size: 8pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title-row {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 6mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title {
  display: table-cell !important;
  width: 72% !important;
  text-align: left !important;
  vertical-align: bottom !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-title-row-a4 h2,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-title h2 {
  margin: 0 !important;
  font-size: 17.8pt !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date {
  display: table-cell !important;
  width: 28% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: bottom !important;
  font-size: 7.4pt !important;
  line-height: 1.12 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-date-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-date strong {
  display: block !important;
  margin-top: .3mm !important;
  font-size: 10pt !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 4.3mm !important;
  font-size: 7.2pt !important;
  line-height: 1.13 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-info-row-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-meta span {
  display: table-cell !important;
  width: 33.333% !important;
  padding-right: 4mm !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-items,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-items {
  width: 100% !important;
  margin: 0 0 4.8mm !important;
  border-collapse: collapse !important;
  page-break-inside: auto !important;
  font-size: 7.3pt !important;
  line-height: 1.2 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-stay-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-valid {
  margin: 0 0 7mm !important;
  font-size: 9pt !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section {
  width: 100% !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
  font-size: 8pt !important;
  line-height: 1.28 !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-note-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-section p {
  margin: 0 !important;
  font-size: 8pt !important;
  line-height: 1.27 !important;
  white-space: pre-line !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 1mm 0 10mm !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-data {
  display: table-cell !important;
  width: 86mm !important;
  padding: 0 10mm 0 0 !important;
  vertical-align: top !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row {
  display: table !important;
  width: 100% !important;
  margin: 0 0 .75mm !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div span,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row span {
  display: table-cell !important;
  width: 28mm !important;
  padding-right: 7mm !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .document-payment-data-a4 div strong,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-payment-row strong {
  display: table-cell !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode {
  display: table-cell !important;
  width: 82mm !important;
  text-align: right !important;
  vertical-align: middle !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2 .payment-code-image,
body .document-page.roko-offer-a4.roko-offer-print-v2 .roko-offer-barcode-image {
  display: inline-block !important;
  width: 82mm !important;
  max-width: 82mm !important;
  height: 31mm !important;
  max-height: 31mm !important;
  object-fit: contain !important;
}

/* Stable unified offer print override v1.3.428.
   The marker class is added directly to printed offer articles. */
.roko-offer-print-final {
  width: 210mm !important;
  min-height: 297mm !important;
  box-sizing: border-box !important;
  padding: 12mm 16mm 13mm !important;
  color: #000 !important;
  background: #fff !important;
  font-size: 8.2pt !important;
  line-height: 1.28 !important;
}
.roko-offer-print-final .document-head-a4,
.roko-offer-print-final .roko-offer-head {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}
.roko-offer-print-final .document-logo-box,
.roko-offer-print-final .roko-offer-logo {
  display: table-cell !important;
  width: 60% !important;
  padding: 0 !important;
  text-align: left !important;
  vertical-align: top !important;
}
.roko-offer-print-final .document-logo,
.roko-offer-print-final .roko-offer-logo-image {
  display: block !important;
  width: 112mm !important;
  max-width: 112mm !important;
  height: auto !important;
  max-height: 52mm !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: left top !important;
}
.roko-offer-print-final .document-company-a4,
.roko-offer-print-final .roko-offer-company {
  display: table-cell !important;
  width: 40% !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: top !important;
  font-size: 8.2pt !important;
  line-height: 1.22 !important;
}
.roko-offer-print-final .document-company-a4 strong,
.roko-offer-print-final .roko-offer-company strong {
  display: block !important;
  margin: 0 0 1.4mm !important;
  padding: 0 0 1mm !important;
  border-bottom: .25mm solid #9aa6b2 !important;
  font-size: 11.5pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}
.roko-offer-print-final .document-company-a4 span,
.roko-offer-print-final .roko-offer-company span {
  display: block !important;
  margin: 0 0 .3mm !important;
  font-size: 8.1pt !important;
  line-height: 1.19 !important;
}
.roko-offer-print-final .document-buyer-row-a4,
.roko-offer-print-final .roko-offer-buyer-row {
  display: block !important;
  min-height: 0 !important;
  margin: 0 0 8mm !important;
}
.roko-offer-print-final .document-buyer-a4,
.roko-offer-print-final .roko-offer-buyer {
  width: 70mm !important;
  max-width: 70mm !important;
  font-size: 8.2pt !important;
  line-height: 1.22 !important;
}
.roko-offer-print-final .document-title-row-a4,
.roko-offer-print-final .roko-offer-title-row {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 6mm !important;
}
.roko-offer-print-final .document-title-a4,
.roko-offer-print-final .roko-offer-title {
  display: table-cell !important;
  width: 72% !important;
  text-align: left !important;
  vertical-align: bottom !important;
}
.roko-offer-print-final .document-title-row-a4 h2,
.roko-offer-print-final .roko-offer-title h2 {
  margin: 0 !important;
  font-size: 18.4pt !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
}
.roko-offer-print-final .document-date-a4,
.roko-offer-print-final .roko-offer-date {
  display: table-cell !important;
  width: 28% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: bottom !important;
  font-size: 7.7pt !important;
  line-height: 1.1 !important;
}
.roko-offer-print-final .document-info-row-a4,
.roko-offer-print-final .roko-offer-meta {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 4mm !important;
  font-size: 7.45pt !important;
  line-height: 1.12 !important;
}
.roko-offer-print-final .document-info-row-a4 span,
.roko-offer-print-final .roko-offer-meta span {
  display: table-cell !important;
  width: 33.333% !important;
  padding-right: 4mm !important;
}
.roko-offer-print-final .document-items,
.roko-offer-print-final .roko-offer-items {
  width: 100% !important;
  margin: 0 0 5mm !important;
  border-collapse: collapse !important;
  font-size: 7.35pt !important;
  line-height: 1.18 !important;
}
.roko-offer-print-final .hosting-offer-detail-a4,
.roko-offer-print-final .document-note-a4,
.roko-offer-print-final .roko-offer-section {
  width: 100% !important;
  margin: 0 0 7mm !important;
  font-size: 8.2pt !important;
  line-height: 1.28 !important;
  page-break-inside: avoid !important;
}
.roko-offer-print-final .hosting-offer-detail-a4 p,
.roko-offer-print-final .document-note-a4 p,
.roko-offer-print-final .roko-offer-section p {
  margin: 0 0 .55mm !important;
  font-size: 8.2pt !important;
  line-height: 1.28 !important;
  white-space: pre-line !important;
}
.roko-offer-print-final .document-payment-a4,
.roko-offer-print-final .roko-offer-payment {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 1mm 0 10mm !important;
  page-break-inside: avoid !important;
}
.roko-offer-print-final .document-payment-data-a4,
.roko-offer-print-final .roko-offer-payment-data {
  display: table-cell !important;
  width: 88mm !important;
  padding: 0 10mm 0 0 !important;
  vertical-align: top !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}
.roko-offer-print-final .document-payment-data-a4 div,
.roko-offer-print-final .roko-offer-payment-row {
  display: table !important;
  width: 100% !important;
  margin: 0 0 .55mm !important;
}
.roko-offer-print-final .document-payment-data-a4 div span,
.roko-offer-print-final .roko-offer-payment-row span {
  display: table-cell !important;
  width: 24mm !important;
  padding-right: 7mm !important;
}
.roko-offer-print-final .document-payment-data-a4 div strong,
.roko-offer-print-final .roko-offer-payment-row strong {
  display: table-cell !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}
.roko-offer-print-final .payment-code,
.roko-offer-print-final .roko-offer-barcode {
  display: table-cell !important;
  width: 84mm !important;
  text-align: right !important;
  vertical-align: middle !important;
}
.roko-offer-print-final .payment-code-image,
.roko-offer-print-final .roko-offer-barcode-image {
  display: inline-block !important;
  width: 80mm !important;
  max-width: 80mm !important;
  height: 31mm !important;
  max-height: 31mm !important;
  object-fit: contain !important;
}

/* Stable unified offer print hard lock v1.3.429. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final {
  width: 210mm !important;
  min-height: 297mm !important;
  box-sizing: border-box !important;
  padding: 10mm 16mm 13mm !important;
  color: #000 !important;
  background: #fff !important;
  font-size: 8.25pt !important;
  line-height: 1.24 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-head-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-head {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 4mm !important;
  padding: 0 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-logo-box,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-logo {
  display: table-cell !important;
  width: 66% !important;
  padding: 0 !important;
  text-align: left !important;
  vertical-align: top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-logo,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-logo-image {
  display: block !important;
  width: 150mm !important;
  max-width: 150mm !important;
  height: auto !important;
  max-height: 58mm !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: left top !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-company-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-company {
  display: table-cell !important;
  width: 34% !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: top !important;
  font-size: 8.15pt !important;
  line-height: 1.18 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-company-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-company strong {
  display: block !important;
  margin: 0 0 1.2mm !important;
  padding: 0 0 .9mm !important;
  border-bottom: .25mm solid #9aa6b2 !important;
  font-size: 11.7pt !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-buyer-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-buyer-row {
  display: block !important;
  min-height: 0 !important;
  margin: 0 0 7mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-title-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-title-row {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  margin: 0 0 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-note-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-section {
  width: 100% !important;
  margin: 0 0 6.2mm !important;
  font-size: 8.2pt !important;
  line-height: 1.26 !important;
  page-break-inside: avoid !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-note-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-section p {
  margin: 0 !important;
  font-size: 8.2pt !important;
  line-height: 1.26 !important;
  white-space: pre-line !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-data {
  width: 92mm !important;
  padding-right: 12mm !important;
  font-size: 8pt !important;
  line-height: 1.12 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4 div,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-row {
  margin: 0 0 .35mm !important;
  line-height: 1.12 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4 div span,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-row span {
  width: 30mm !important;
  padding-right: 9mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .payment-code,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-barcode {
  width: 84mm !important;
  text-align: right !important;
  vertical-align: middle !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .payment-code-image,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-barcode-image {
  width: 82mm !important;
  max-width: 82mm !important;
  height: 31mm !important;
  max-height: 31mm !important;
  object-fit: contain !important;
}

/* Stable unified offer print polish v1.3.430. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-head-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-head {
  margin: 0 0 5mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-logo-box,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-logo {
  width: 58% !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-logo,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-logo-image {
  width: 104mm !important;
  max-width: 104mm !important;
  max-height: 42mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-company-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-company {
  width: 42% !important;
  font-size: 8pt !important;
  line-height: 1.16 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-buyer-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-buyer-row {
  margin: 0 0 6mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-title {
  width: 70% !important;
  vertical-align: bottom !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-date-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-date {
  width: 30% !important;
  max-width: 30% !important;
  padding: 0 !important;
  text-align: right !important;
  vertical-align: bottom !important;
  box-sizing: border-box !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-info-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-meta {
  display: grid !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(0, .8fr) minmax(0, 1.05fr) !important;
  column-gap: 6mm !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 0 4mm !important;
  font-size: 7pt !important;
  line-height: 1.08 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-info-row-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-meta span {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 10mm !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-data {
  display: block !important;
  flex: 0 0 86mm !important;
  width: 86mm !important;
  padding-right: 0 !important;
  font-size: 8pt !important;
  line-height: 1.13 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4 div,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-row {
  display: flex !important;
  align-items: baseline !important;
  gap: 8mm !important;
  width: 100% !important;
  margin: 0 0 .45mm !important;
  line-height: 1.13 !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4 div span,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-row span {
  flex: 0 0 32mm !important;
  width: 32mm !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4 div strong,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-row strong {
  flex: 1 1 auto !important;
  white-space: nowrap !important;
}

body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .payment-code,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-barcode {
  flex: 0 0 82mm !important;
  width: 82mm !important;
}

/* Stable A4 offer print layout v1.3.431. */
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  width: 210mm !important;
  min-height: 297mm !important;
  height: auto !important;
  padding: 14mm 16mm 11mm !important;
  color: #000 !important;
  background: #fff !important;
  font-family: Arial, Helvetica, sans-serif !important;
  overflow: visible !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-head-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 62mm !important;
  column-gap: 18mm !important;
  align-items: start !important;
  width: 100% !important;
  min-height: 38mm !important;
  margin: 0 0 10mm !important;
  padding: 0 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-logo-box,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-logo {
  display: block !important;
  width: 88mm !important;
  max-width: 88mm !important;
  padding: 0 !important;
  text-align: left !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-logo,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-logo-image {
  display: block !important;
  width: 90mm !important;
  max-width: 90mm !important;
  height: auto !important;
  max-height: 38mm !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: left top !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-company-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-company {
  display: block !important;
  justify-self: end !important;
  width: 62mm !important;
  max-width: 62mm !important;
  padding: 0 !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.17 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-company-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-company strong {
  display: block !important;
  margin: 0 0 2.2mm !important;
  padding-bottom: 1.4mm !important;
  border-bottom: 1px solid #9ca3af !important;
  color: #000 !important;
  font-size: 10.2pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-company-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-company span {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.17 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-buyer-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-buyer-row {
  display: block !important;
  width: 74mm !important;
  max-width: 74mm !important;
  min-height: 0 !important;
  margin: 0 0 10mm !important;
  padding: 0 !important;
  color: #000 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-buyer-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-buyer {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-buyer-a4 > span,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-buyer-label {
  display: block !important;
  margin: 0 0 1mm !important;
  padding-bottom: .8mm !important;
  border-bottom: 1px solid #b8c2cf !important;
  text-transform: uppercase !important;
  font-size: 7pt !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-buyer-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-buyer strong {
  display: block !important;
  margin: 0 0 .7mm !important;
  font-size: 10.3pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-buyer-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-buyer p {
  margin: 0 0 .35mm !important;
  font-size: 8pt !important;
  line-height: 1.22 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-title-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-title-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 42mm !important;
  column-gap: 8mm !important;
  align-items: end !important;
  width: 100% !important;
  margin: 0 0 8mm !important;
  padding: 0 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-title {
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-title-a4 h2,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-title h2 {
  margin: 0 !important;
  color: #000 !important;
  font-size: 16.2pt !important;
  line-height: 1.06 !important;
  font-weight: 900 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-date-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-date {
  justify-self: start !important;
  width: 34mm !important;
  max-width: 34mm !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  color: #000 !important;
  font-size: 7.2pt !important;
  line-height: 1.05 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-date-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-date strong {
  display: block !important;
  margin-top: .4mm !important;
  font-size: 10pt !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-info-row-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-meta {
  display: grid !important;
  grid-template-columns: 43% 25% 32% !important;
  column-gap: 0 !important;
  width: 100% !important;
  margin: 0 0 4.5mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 6.9pt !important;
  line-height: 1.08 !important;
  font-weight: 700 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-info-row-a4 span,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-meta span {
  display: block !important;
  min-width: 0 !important;
  width: auto !important;
  padding: 0 2mm 0 0 !important;
  white-space: nowrap !important;
  overflow: visible !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-items,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-items {
  width: 100% !important;
  margin: 0 0 4.2mm !important;
  border-collapse: collapse !important;
  color: #000 !important;
  font-size: 7pt !important;
  line-height: 1.18 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-items th,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-items td,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-items th,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-items td {
  padding: 1.35mm 1.4mm !important;
  color: #000 !important;
  font-size: 7pt !important;
  line-height: 1.18 !important;
  vertical-align: top !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-valid-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-valid {
  display: block !important;
  width: 100% !important;
  margin: 0 0 6.5mm !important;
  color: #000 !important;
  font-size: 8.7pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-valid-a4 strong,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-valid strong {
  margin-left: 2mm !important;
  font-size: 11pt !important;
  line-height: 1.05 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .hosting-offer-detail-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-note-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-section {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 6mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #000 !important;
  font-size: 7.8pt !important;
  line-height: 1.25 !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .hosting-offer-detail-title-a4,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-note-a4 h4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-section-title {
  display: block !important;
  margin: 0 0 1.7mm !important;
  color: #000 !important;
  font-size: 8.9pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .hosting-offer-detail-a4 p,
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-note-a4 p,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-section p {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 7.8pt !important;
  line-height: 1.25 !important;
  white-space: pre-line !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment {
  display: grid !important;
  grid-template-columns: 88mm 76mm !important;
  column-gap: 14mm !important;
  align-items: start !important;
  width: 100% !important;
  margin: 1mm 0 8mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-data {
  display: block !important;
  width: 88mm !important;
  max-width: 88mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.7pt !important;
  line-height: 1.15 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-title {
  display: block !important;
  margin: 0 0 7mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4 div,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-row {
  display: grid !important;
  grid-template-columns: 32mm minmax(0, 1fr) !important;
  column-gap: 7mm !important;
  align-items: baseline !important;
  width: 100% !important;
  margin: 0 0 .85mm !important;
  color: #000 !important;
  font-size: 7.7pt !important;
  line-height: 1.15 !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4 div span,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-row span {
  display: block !important;
  min-width: 0 !important;
  width: auto !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.7pt !important;
  line-height: 1.15 !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-payment-data-a4 div strong,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-payment-row strong {
  display: block !important;
  min-width: 0 !important;
  width: auto !important;
  color: #000 !important;
  font-size: 7.7pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .payment-code,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-barcode {
  display: block !important;
  justify-self: start !important;
  width: 76mm !important;
  max-width: 76mm !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .payment-code-title-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-barcode-title {
  display: block !important;
  margin: 0 0 1.3mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .payment-code-image,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-barcode img {
  display: block !important;
  width: 68mm !important;
  max-width: 68mm !important;
  height: auto !important;
  max-height: 30mm !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}
body .document-page.document-page-a4.invoice-page-a4.hosting-offer-page.roko-offer-print-v2.roko-offer-print-final .document-footer-a4,
body .document-page.roko-offer-a4.roko-offer-print-v2.roko-offer-print-final .roko-offer-footer {
  display: block !important;
  width: 100% !important;
  margin: auto 0 0 !important;
  padding: 2.4mm 0 0 !important;
  border-top: 1px solid #000 !important;
  color: #333 !important;
  text-align: center !important;
  font-size: 5.9pt !important;
  line-height: 1.1 !important;
}

/* Clean shared offer document, using the Smjestaj print flow without legacy offer overrides. */
.document-offer-a4 {
  box-sizing: border-box !important;
  width: min(210mm, 100%) !important;
  min-height: 297mm !important;
  margin: 18px auto 36px !important;
  padding: 18mm 18mm 12mm !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  background: #fff !important;
  border: 1px solid #d8e0ea !important;
  border-radius: 4px !important;
  box-shadow: 0 18px 50px rgba(15, 23, 42, .14) !important;
  color: #050b18 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 8.4pt !important;
  line-height: 1.34 !important;
  overflow: visible !important;
}

.document-offer-a4 *,
.document-offer-a4 *::before,
.document-offer-a4 *::after {
  box-sizing: border-box !important;
}

.document-offer-a4 .document-head-a4 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 72mm !important;
  gap: 18mm !important;
  align-items: start !important;
  margin: 0 0 10mm !important;
  padding: 0 !important;
  border: 0 !important;
}

.document-offer-a4 .document-logo-box {
  min-height: 50mm !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.document-offer-a4 .document-logo {
  width: 95mm !important;
  max-width: 95mm !important;
  height: auto !important;
  max-height: 47mm !important;
  object-fit: contain !important;
  object-position: left top !important;
}

.document-offer-a4 .document-logo-box h2 {
  margin: 0 !important;
  color: #00537e !important;
  font-size: 26pt !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.document-offer-a4 .document-company-a4 {
  display: block !important;
  width: auto !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 7.3pt !important;
  line-height: 1.3 !important;
}

.document-offer-a4 .document-company-a4 strong {
  display: block !important;
  margin: 0 0 2mm !important;
  padding: 0 0 1.2mm !important;
  border-bottom: .25mm solid #c5cfdb !important;
  color: #000 !important;
  font-size: 10.2pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.document-offer-a4 .document-company-a4 span {
  display: block !important;
  margin: 0 0 .45mm !important;
  color: #000 !important;
}

.document-offer-a4 .document-buyer-row-a4 {
  width: 86mm !important;
  margin: 0 0 11mm !important;
  padding: 0 !important;
}

.document-offer-a4 .document-buyer-a4 > span,
.document-offer-a4 .document-label {
  display: block !important;
  width: 58mm !important;
  margin: 0 0 1.3mm !important;
  padding: 0 0 .8mm !important;
  border-bottom: .22mm solid #b7c1cf !important;
  color: #000 !important;
  font-size: 6.3pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.document-offer-a4 .document-buyer-a4 strong {
  display: block !important;
  margin: 0 0 .6mm !important;
  color: #000 !important;
  font-size: 10.3pt !important;
  line-height: 1.13 !important;
  font-weight: 900 !important;
}

.document-offer-a4 .document-buyer-a4 p {
  margin: 0 0 .35mm !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.23 !important;
}

.document-offer-a4 .document-title-row-a4 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 40mm !important;
  gap: 10mm !important;
  align-items: end !important;
  margin: 0 0 7mm !important;
  padding: 0 !important;
}

.document-offer-a4 .document-title-a4 {
  display: block !important;
  text-align: left !important;
}

.document-offer-a4 .document-title-a4 h2,
.document-offer-a4 .document-title-row-a4 h2 {
  display: block !important;
  margin: 0 !important;
  color: #000 !important;
  font-size: 17pt !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

.document-offer-a4 .document-date-a4 {
  margin: 0 !important;
  text-align: right !important;
  color: #000 !important;
  font-size: 7.4pt !important;
  line-height: 1.1 !important;
}

.document-offer-a4 .document-date-a4 strong {
  display: block !important;
  margin-top: .5mm !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

.document-offer-a4 .document-info-row-a4 {
  display: grid !important;
  grid-template-columns: 1.15fr .85fr .8fr !important;
  gap: 7mm !important;
  margin: 0 0 4.5mm !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.5pt !important;
  line-height: 1.15 !important;
}

.document-offer-a4 .document-info-row-a4 span {
  display: block !important;
  min-width: 0 !important;
  white-space: normal !important;
}

.document-offer-a4 .document-items {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  border-top: .35mm solid #111 !important;
  border-bottom: 0 !important;
  color: #000 !important;
  font-size: 7.8pt !important;
  line-height: 1.2 !important;
}

.document-offer-a4 .document-items th {
  padding: 1.65mm .8mm !important;
  background: #eef2f7 !important;
  border-bottom: .35mm solid #111 !important;
  color: #000 !important;
  font-size: 7.3pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-align: left !important;
  white-space: nowrap !important;
}

.document-offer-a4 .document-items td {
  padding: 1.6mm .8mm !important;
  border-bottom: .15mm solid #d6dbe4 !important;
  color: #000 !important;
  font-size: 7.7pt !important;
  line-height: 1.2 !important;
  vertical-align: top !important;
}

.document-offer-a4 .document-items tbody tr:last-child td {
  border-bottom: 0 !important;
}

.document-offer-a4 .document-items th:nth-child(1),
.document-offer-a4 .document-items td:nth-child(1) { width: 9mm !important; text-align: center !important; }
.document-offer-a4 .document-items th:nth-child(2),
.document-offer-a4 .document-items td:nth-child(2) { width: 78mm !important; text-align: left !important; white-space: normal !important; }
.document-offer-a4 .document-items th:nth-child(3),
.document-offer-a4 .document-items td:nth-child(3) { width: 12mm !important; text-align: center !important; }
.document-offer-a4 .document-items th:nth-child(4),
.document-offer-a4 .document-items td:nth-child(4) { width: 16mm !important; text-align: right !important; }
.document-offer-a4 .document-items th:nth-child(5),
.document-offer-a4 .document-items td:nth-child(5),
.document-offer-a4 .document-items th:nth-child(6),
.document-offer-a4 .document-items td:nth-child(6),
.document-offer-a4 .document-items th:nth-child(7),
.document-offer-a4 .document-items td:nth-child(7) { text-align: right !important; white-space: nowrap !important; }

.document-offer-a4 .document-items tfoot td {
  padding: 2.4mm .9mm 1.5mm !important;
  border-top: .55mm solid #000 !important;
  border-bottom: 0 !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 8.7pt !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.document-offer-a4 .document-items tfoot td:first-child {
  text-align: right !important;
  padding-right: 4mm !important;
}

.document-offer-a4 .document-items tfoot td:last-child {
  text-align: right !important;
  white-space: nowrap !important;
}

.document-offer-a4 .document-offer-valid {
  margin: 7mm 0 0 !important;
  color: #000 !important;
  font-size: 10pt !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.document-offer-a4 .document-offer-section {
  width: 100% !important;
  margin: 7mm 0 0 !important;
  padding: 0 !important;
  color: #000 !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

.document-offer-a4 .document-offer-section h4 {
  display: block !important;
  margin: 0 0 2mm !important;
  color: #000 !important;
  font-size: 8.7pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
}

.document-offer-a4 .document-offer-section p,
.document-offer-a4 .document-offer-lines {
  margin: 0 !important;
  color: #000 !important;
  font-size: 8pt !important;
  line-height: 1.35 !important;
}

.document-offer-a4 .document-offer-lines {
  padding-left: 5mm !important;
}

.document-offer-a4 .document-offer-lines li {
  margin: 0 0 1mm !important;
}

.document-offer-a4 .document-payment-a4 {
  display: grid !important;
  grid-template-columns: minmax(0, 92mm) 78mm !important;
  column-gap: 12mm !important;
  align-items: start !important;
  margin: 10mm 0 8mm !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  page-break-inside: avoid !important;
  break-inside: avoid !important;
}

.document-offer-a4 .document-payment-data-a4 {
  display: block !important;
  width: 92mm !important;
  max-width: 92mm !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #000 !important;
  font-size: 7.8pt !important;
  line-height: 1.16 !important;
  background: transparent !important;
  border: 0 !important;
}

.document-offer-a4 .document-payment-title-a4 {
  display: block !important;
  margin: 0 0 4mm !important;
  color: #000 !important;
  font-size: 8.2pt !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  text-decoration: underline !important;
}

.document-offer-a4 .document-payment-data-a4 div {
  display: grid !important;
  grid-template-columns: 30mm minmax(0, 1fr) !important;
  column-gap: 7mm !important;
  align-items: baseline !important;
  width: 100% !important;
  margin: 0 0 .95mm !important;
  color: #000 !important;
}

.document-offer-a4 .document-payment-data-a4 span,
.document-offer-a4 .document-payment-data-a4 strong {
  display: block !important;
  color: #000 !important;
  font-size: 7.8pt !important;
  line-height: 1.16 !important;
}

.document-offer-a4 .document-payment-data-a4 span {
  font-weight: 500 !important;
}

.document-offer-a4 .document-payment-data-a4 strong {
  min-width: 0 !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.document-offer-a4 .payment-code {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: flex-start !important;
  width: 78mm !important;
  max-width: 78mm !important;
  min-height: 26mm !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.document-offer-a4 .payment-code-image {
  display: block !important;
  width: 76mm !important;
  max-width: 76mm !important;
  height: auto !important;
  max-height: 31mm !important;
  object-fit: contain !important;
  object-position: right top !important;
}

.document-offer-a4 .payment-code span {
  color: #64748b !important;
  font-size: 7pt !important;
  text-align: right !important;
}

.document-offer-a4 .document-footer-a4 {
  display: block !important;
  width: 100% !important;
  margin: auto 0 0 !important;
  padding: 2.4mm 0 0 !important;
  border-top: .25mm solid #111 !important;
  color: #475569 !important;
  text-align: center !important;
  font-size: 6.1pt !important;
  line-height: 1.1 !important;
}

@media (max-width: 760px) {
  .document-offer-a4 {
    width: 100% !important;
    min-height: auto !important;
    padding: 20px !important;
    font-size: 11px !important;
  }

  .document-offer-a4 .document-head-a4,
  .document-offer-a4 .document-title-row-a4,
  .document-offer-a4 .document-info-row-a4,
  .document-offer-a4 .document-payment-a4 {
    grid-template-columns: 1fr !important;
  }

  .document-offer-a4 .document-company-a4,
  .document-offer-a4 .document-date-a4 {
    text-align: left !important;
  }

  .document-offer-a4 .document-buyer-row-a4,
  .document-offer-a4 .document-payment-data-a4,
  .document-offer-a4 .payment-code {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media print {
  @page {
    size: A4 portrait;
    margin: 0;
  }

  html.offer-document-print-root,
  body.offer-document-print-window,
  body.print-offer-document-only {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: visible !important;
  }

  body.offer-document-print-window .print-window-wrap,
  body.print-offer-document-only #print-document-host {
    position: static !important;
    inset: auto !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: visible !important;
  }

  body.offer-document-print-window .document-offer-a4,
  body.print-offer-document-only #print-document-host .document-offer-a4 {
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    min-height: 297mm !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 18mm 18mm 12mm !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    page-break-before: auto !important;
    page-break-after: auto !important;
    page-break-inside: auto !important;
    break-before: auto !important;
    break-after: auto !important;
    break-inside: auto !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  body.print-window-pdf.offer-document-print-window .document-offer-a4,
  body.print-window-pdf.offer-document-print-window .document-offer-a4 * {
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  body.offer-document-print-window .document-offer-a4 .document-items thead,
  body.print-offer-document-only #print-document-host .document-offer-a4 .document-items thead {
    display: table-header-group !important;
  }

  body.offer-document-print-window .document-offer-a4 .document-items tfoot,
  body.print-offer-document-only #print-document-host .document-offer-a4 .document-items tfoot {
    display: table-row-group !important;
  }

  body.offer-document-print-window .document-offer-a4 .document-items tr,
  body.print-offer-document-only #print-document-host .document-offer-a4 .document-items tr {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  body.offer-document-print-window .document-offer-a4 .document-offer-section,
  body.offer-document-print-window .document-offer-a4 .document-payment-a4,
  body.print-offer-document-only #print-document-host .document-offer-a4 .document-offer-section,
  body.print-offer-document-only #print-document-host .document-offer-a4 .document-payment-a4 {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
}

/* v1.3.505 - Poslovanje responsive screen layer */
@media screen {
  body.business-module-page {
    overflow-x: hidden;
  }

  body.business-module-page .main {
    min-width: 0;
    max-width: 100vw;
    overflow-x: hidden;
  }

  body.business-module-page .business-hero,
  body.business-module-page .business-tabs,
  body.business-module-page .business-page-head,
  body.business-module-page .business-filter-card,
  body.business-module-page .business-table-card,
  body.business-module-page .business-summary-grid,
  body.business-module-page .business-overview-card,
  body.business-module-page .business-synesis-panel,
  body.business-module-page .business-partner-panel,
  body.business-module-page .business-offer-line,
  body.business-module-page .business-offer-line-summary,
  body.business-module-page .business-offer-line-editor {
    max-width: 100%;
    min-width: 0;
  }

  body.business-module-page .business-table-card {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  body.business-module-page .business-filter-card input,
  body.business-module-page .business-filter-card select,
  body.business-module-page .business-filter-card textarea,
  body.business-module-page .business-partner-drawer input,
  body.business-module-page .business-partner-drawer select,
  body.business-module-page .business-partner-drawer textarea,
  body.business-module-page .business-offer-drawer input,
  body.business-module-page .business-offer-drawer select,
  body.business-module-page .business-offer-drawer textarea {
    min-width: 0;
  }

  body.business-module-page .business-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  }

  body.business-module-page .business-source-tabs {
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  }

  body.business-module-page .business-document-source-tab {
    min-width: 0;
  }
}

@media screen and (max-width: 1180px) {
  body.business-module-page .business-page-head {
    align-items: flex-start;
    flex-direction: column;
  }

  body.business-module-page .business-page-actions {
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
  }

  body.business-module-page .business-page-actions .button {
    flex: 1 1 170px;
    justify-content: center;
  }

  body.business-module-page .business-filter-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
  }

  body.business-module-page .business-search-field {
    width: 100%;
    max-width: none;
    min-width: 0;
  }

  body.business-module-page .business-filter-actions {
    justify-content: flex-start;
    margin-left: 0;
  }

  body.business-module-page .business-advanced-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.business-module-page .business-table-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
}

@media screen and (max-width: 980px) {
  body.business-module-page .business-tabs {
    display: flex;
    width: 100%;
  }

  body.business-module-page .business-tabs a {
    flex: 1 0 150px;
    justify-content: center;
  }

  body.business-module-page .business-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  body.business-module-page .business-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.business-module-page .business-partner-table,
  body.business-module-page .business-catalog-table,
  body.business-module-page .business-kpd-table,
  body.business-module-page .business-documents-table,
  body.business-module-page .business-sales-offers-table {
    min-width: 760px;
  }

  body.business-module-page .business-synesis-workspace,
  body.business-module-page .business-synesis-action-grid,
  body.business-module-page .business-synesis-export-grid,
  body.business-module-page .business-synesis-steps,
  body.business-module-page .business-diagnostic-grid,
  body.business-module-page .business-diagnostic-details,
  body.business-module-page .business-synesis-preview-grid {
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 760px) {
  body.business-module-page .topbar {
    margin-bottom: 10px;
  }

  body.business-module-page .topbar-title h1 {
    font-size: 30px;
  }

  body.business-module-page .business-hero,
  body.business-module-page .business-page-head,
  body.business-module-page .business-filter-card,
  body.business-module-page .business-table-toolbar {
    padding: 14px;
  }

  body.business-module-page .business-page-head h2,
  body.business-module-page .business-hero h2 {
    font-size: 28px;
    line-height: 1.08;
  }

  body.business-module-page .business-page-head .card-subtitle,
  body.business-module-page .business-hero .card-subtitle {
    font-size: 14px;
    line-height: 1.35;
  }

  body.business-module-page .business-page-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  body.business-module-page .business-page-actions .button {
    width: 100%;
  }

  body.business-module-page .business-filter-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }

  body.business-module-page .business-filter-actions .button {
    width: 100%;
    justify-content: center;
  }

  body.business-module-page .business-filter-actions button[type="submit"] {
    grid-column: 1 / -1;
  }

  body.business-module-page .business-summary-grid,
  body.business-module-page .grid.grid-2.accommodation-section,
  body.business-module-page .grid.grid-3.business-summary-grid,
  body.business-module-page .grid.grid-4.business-summary-grid {
    grid-template-columns: 1fr;
  }

  body.business-module-page .stat-card {
    min-height: 74px;
    padding: 14px;
  }

  body.business-module-page .stat-card .icon-box,
  body.business-module-page .business-document-source-tab .icon-box {
    width: 42px;
    height: 42px;
  }

  body.business-module-page .business-document-source-tab {
    min-height: 74px;
  }

  body.business-module-page .business-advanced-grid {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  body.business-module-page .business-table-card table {
    width: 100%;
  }

  body.business-module-page .business-partner-overview-table,
  body.business-module-page .business-documents-table,
  body.business-module-page .business-sales-offers-table,
  body.business-module-page .business-kpd-table {
    min-width: 0;
    border-collapse: separate;
    border-spacing: 0 10px;
  }

  body.business-module-page .business-partner-overview-table thead,
  body.business-module-page .business-documents-table thead,
  body.business-module-page .business-sales-offers-table thead,
  body.business-module-page .business-kpd-table thead {
    display: none;
  }

  body.business-module-page .business-partner-overview-table tbody,
  body.business-module-page .business-partner-overview-table tr,
  body.business-module-page .business-partner-overview-table td,
  body.business-module-page .business-documents-table tbody,
  body.business-module-page .business-documents-table tr,
  body.business-module-page .business-documents-table td,
  body.business-module-page .business-sales-offers-table tbody,
  body.business-module-page .business-sales-offers-table tr,
  body.business-module-page .business-sales-offers-table td,
  body.business-module-page .business-kpd-table tbody,
  body.business-module-page .business-kpd-table tr,
  body.business-module-page .business-kpd-table td {
    display: block;
    width: 100%;
  }

  body.business-module-page .business-partner-overview-table tbody tr,
  body.business-module-page .business-documents-table tbody tr,
  body.business-module-page .business-sales-offers-table tbody tr,
  body.business-module-page .business-kpd-table tbody tr {
    overflow: hidden;
    border: 1px solid #d6e4f5;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
  }

  body.business-module-page .business-partner-overview-table tbody td,
  body.business-module-page .business-documents-table tbody td,
  body.business-module-page .business-sales-offers-table tbody td,
  body.business-module-page .business-kpd-table tbody td {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 10px 12px;
    border: 0;
    border-bottom: 1px solid #e2eaf5;
    background: #fff;
    white-space: normal;
  }

  body.business-module-page .business-partner-overview-table tbody td:last-child,
  body.business-module-page .business-documents-table tbody td:last-child,
  body.business-module-page .business-sales-offers-table tbody td:last-child,
  body.business-module-page .business-kpd-table tbody td:last-child {
    border-bottom: 0;
  }

  body.business-module-page .business-partner-overview-table tbody td::before,
  body.business-module-page .business-documents-table tbody td::before,
  body.business-module-page .business-sales-offers-table tbody td::before,
  body.business-module-page .business-kpd-table tbody td::before {
    color: #52637a;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 0;
    text-transform: uppercase;
  }

  body.business-module-page .business-partner-overview-table td:nth-child(1)::before { content: "Sifra"; }
  body.business-module-page .business-partner-overview-table td:nth-child(2)::before { content: "Partner"; }
  body.business-module-page .business-partner-overview-table td:nth-child(3)::before { content: "Mjesto"; }
  body.business-module-page .business-partner-overview-table td:nth-child(4)::before { content: "Email"; }
  body.business-module-page .business-partner-overview-table td:nth-child(5)::before { content: "OIB"; }
  body.business-module-page .business-partner-overview-table td:nth-child(6)::before { content: "Vrsta"; }
  body.business-module-page .business-partner-overview-table td:nth-child(7)::before { content: "Status"; }

  body.business-module-page .business-documents-table td:nth-child(1)::before { content: "Dokument"; }
  body.business-module-page .business-documents-table td:nth-child(2)::before { content: "Partner"; }
  body.business-module-page .business-documents-table td:nth-child(3)::before { content: "Izvor"; }
  body.business-module-page .business-documents-table td:nth-child(4)::before { content: "Datum"; }
  body.business-module-page .business-documents-table td:nth-child(5)::before { content: "Iznos"; }
  body.business-module-page .business-documents-table td:nth-child(6)::before { content: "Status"; }

  body.business-module-page .business-sales-offers-table td:nth-child(1)::before { content: "Ponuda"; }
  body.business-module-page .business-sales-offers-table td:nth-child(2)::before { content: "Partner"; }
  body.business-module-page .business-sales-offers-table td:nth-child(3)::before { content: "Datum"; }
  body.business-module-page .business-sales-offers-table td:nth-child(4)::before { content: "Vrijedi do"; }
  body.business-module-page .business-sales-offers-table td:nth-child(5)::before { content: "Iznos"; }
  body.business-module-page .business-sales-offers-table td:nth-child(6)::before { content: "Status"; }

  body.business-module-page .business-kpd-table td:nth-child(1)::before { content: "Sifra"; }
  body.business-module-page .business-kpd-table td:nth-child(2)::before { content: "Naziv"; }
  body.business-module-page .business-kpd-table td:nth-child(3)::before { content: "Razina"; }
  body.business-module-page .business-kpd-table td:nth-child(4)::before { content: "Status"; }

  body.business-module-page .business-catalog-overview-table {
    min-width: 720px;
  }

  body.business-module-page .business-table-kpis,
  body.business-module-page .business-synesis-meta,
  body.business-module-page .business-synesis-columns {
    justify-content: flex-start;
  }
}

@media screen and (max-width: 560px) {
  body.business-module-page .main {
    padding-left: 10px;
    padding-right: 10px;
  }

  body.business-module-page .business-tabs {
    padding: 6px;
  }

  body.business-module-page .business-tabs a {
    flex-basis: 132px;
    min-height: 42px;
    padding: 8px 10px;
    font-size: 13px;
  }

  body.business-module-page .business-filter-actions {
    grid-template-columns: 1fr;
  }

  body.business-module-page .business-partner-overview-table tbody td,
  body.business-module-page .business-documents-table tbody td,
  body.business-module-page .business-sales-offers-table tbody td,
  body.business-module-page .business-kpd-table tbody td {
    grid-template-columns: 92px minmax(0, 1fr);
    padding: 7px 9px;
  }

  body.business-module-page .business-partner-drawer,
  body.business-module-page .business-offer-drawer {
    padding-left: 10px;
    padding-right: 10px;
  }

  body.business-module-page .business-partner-drawer .unit-drawer-head,
  body.business-module-page .business-offer-drawer .unit-drawer-head {
    margin-left: -10px;
    margin-right: -10px;
    padding-left: 10px;
    padding-right: 10px;
  }

  body.business-module-page .business-partner-drawer-head h2,
  body.business-module-page .business-offer-drawer-head h2 {
    font-size: 24px;
    line-height: 1.08;
  }

  body.business-module-page .business-partner-drawer-head .action-row,
  body.business-module-page .business-offer-drawer-head .action-row {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  body.business-module-page .business-partner-drawer-head .action-row .button,
  body.business-module-page .business-offer-drawer-head .action-row .button {
    width: 100%;
    justify-content: center;
  }

  body.business-module-page .business-offer-line-summary {
    align-items: stretch;
    flex-direction: column;
  }

  body.business-module-page .business-offer-line-summary-actions {
    justify-content: flex-start;
  }
}

/* v1.3.511 - mobile Poslovanje/Hosting app navigation */
body.mobile-app-mode.mobile-business-entry .business-page-head {
  margin: 0 0 12px;
  padding: 14px;
  border-radius: 22px;
}

body.mobile-app-mode.mobile-business-entry .business-page-head h2 {
  font-size: 30px;
  line-height: 1.05;
}

body.mobile-app-mode.mobile-business-entry .business-page-head .card-subtitle {
  font-size: 13px;
  line-height: 1.35;
}

body.mobile-app-mode.mobile-business-entry .mobile-business-submodules {
  gap: 10px;
  margin-bottom: 12px;
}

body.mobile-app-mode.mobile-business-entry .mobile-business-module-block {
  padding: 12px;
  border-radius: 22px;
  box-shadow: 0 12px 26px rgba(15, 23, 42, .06);
}

body.mobile-app-mode.mobile-business-entry .mobile-business-module-head strong {
  font-size: 20px;
}

body.mobile-app-mode.mobile-business-entry .mobile-business-module-head small {
  font-size: 12px;
}

body.mobile-app-mode.mobile-business-entry .mobile-business-hosting-grid a {
  color: #0f766e;
  border-color: #bbf7d0;
  background: #f8fffb;
}

body.mobile-app-mode.mobile-business-entry .mobile-business-hosting-grid a:hover {
  color: #fff;
  border-color: #0f766e;
  background: #0f766e;
}

/* v1.3.597 - Poslovanje mobile overview cards */
body.mobile-app-mode.mobile-business-entry .business-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

body.mobile-app-mode.mobile-business-entry.business-module-page .grid.grid-4.business-summary-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.mobile-app-mode.mobile-business-entry .business-summary-grid .stat-card {
  min-height: 86px;
  padding: 14px;
  border-radius: 18px;
}

body.mobile-app-mode.mobile-business-entry .business-summary-grid .stat-card .icon-box {
  width: 48px;
  height: 48px;
  border-radius: 14px;
}

body.mobile-app-mode.mobile-business-entry .business-summary-grid .stat-card span {
  font-size: 12px;
  line-height: 1.15;
}

body.mobile-app-mode.mobile-business-entry .business-summary-grid .stat-card strong {
  font-size: 28px;
  line-height: 1;
}

body.mobile-app-mode.mobile-business-entry .grid.grid-2.accommodation-section {
  grid-template-columns: 1fr;
  gap: 12px;
}

body.mobile-app-mode.mobile-business-entry .business-overview-card {
  min-height: 0;
  padding: 18px;
  border-radius: 20px;
  overflow: hidden;
}

body.mobile-app-mode.mobile-business-entry .business-overview-card .hosting-card-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

body.mobile-app-mode.mobile-business-entry .business-overview-card h2 {
  margin-top: 4px;
  font-size: 28px;
  line-height: 1.05;
  overflow-wrap: anywhere;
}

body.mobile-app-mode.mobile-business-entry .business-overview-card .button {
  min-height: 48px;
  padding: 10px 18px;
  border-radius: 14px;
  white-space: nowrap;
}

body.mobile-app-mode.mobile-business-entry .business-overview-card .card-subtitle {
  margin: 0;
  max-width: 100%;
  font-size: 13px;
  line-height: 1.35;
  text-transform: none;
  overflow-wrap: anywhere;
}

body.mobile-app-mode.mobile-hosting-entry .main {
  width: min(560px, 100%);
  max-width: 560px;
  min-height: 100vh;
  margin: 0 auto;
  padding: 18px 16px 92px;
  overflow-x: hidden;
}

.mobile-hosting-context {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 12px;
}

.mobile-hosting-context.has-superadmin-return {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mobile-hosting-context .mobile-app-ghost {
  justify-content: center;
  min-height: 52px;
  border-color: #dbe7f5;
  color: #0b63c7;
  background: #fff;
  box-shadow: 0 12px 24px rgba(15, 23, 42, .06);
}

.mobile-hosting-context .mobile-app-ghost.is-superadmin {
  color: #475569;
  background: #fff;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact {
  display: grid;
  gap: 14px;
  margin: 0 0 12px;
  padding: 18px;
  border-radius: 24px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact h2 {
  font-size: 30px;
  line-height: 1.05;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .card-subtitle {
  font-size: 13px;
  line-height: 1.35;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions .button {
  width: 100%;
  min-height: 48px;
  padding: 10px;
  justify-content: center;
  font-size: 14px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions .button:first-child {
  grid-column: 1 / -1;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0 0 12px;
  padding: 10px;
  border: 1px solid #dbe7f5;
  border-radius: 24px;
  background: #f1f7fd;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact a {
  justify-content: flex-start;
  min-height: 52px;
  padding: 10px 12px;
  border-radius: 16px;
  font-size: 15px;
  font-weight: 900;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact a.is-active {
  color: #061831;
  background: #fff;
  box-shadow: 0 12px 24px rgba(15, 23, 42, .08);
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact {
  margin: 0 0 12px;
  padding: 10px;
  border-radius: 20px;
  background: #fff;
  box-shadow: none;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  align-items: stretch;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row > * {
  width: 100%;
  min-width: 0;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-search-field,
body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-search-field input {
  width: 100%;
  max-width: none;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact input,
body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact select {
  min-height: 48px;
  font-size: 16px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .button {
  width: 100%;
  min-height: 46px;
  justify-content: center;
  font-size: 15px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-advanced {
  grid-template-columns: 1fr;
  gap: 8px;
  margin-top: 8px;
}

@media (max-width: 420px) {
  body.mobile-app-mode.mobile-business-entry .main,
  body.mobile-app-mode.mobile-hosting-entry .main {
    padding-left: 10px;
    padding-right: 10px;
  }

  body.mobile-app-mode.mobile-business-entry .mobile-business-link-grid a,
  body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact a {
    min-height: 48px;
    font-size: 13px;
  }

  body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions {
    grid-template-columns: 1fr;
  }

  .mobile-hosting-context.has-superadmin-return {
    grid-template-columns: 1fr 1fr;
  }

  .mobile-hosting-context.has-superadmin-return .mobile-app-ghost.is-superadmin {
    grid-column: 1 / -1;
  }
}

/* v1.3.513 - serious Smjestaj mobile app ergonomics */
body.accommodation-module-page.mobile-app-mode .main {
  width: min(560px, 100%);
  max-width: 560px;
  padding: 10px 10px 98px;
  margin: 0 auto;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell {
  gap: 10px;
  padding: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar {
  gap: 10px;
  padding: 12px;
  border-radius: 20px;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar > div small {
  display: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-back {
  min-height: 44px;
  border-radius: 15px;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar form {
  gap: 6px;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar select {
  min-height: 46px;
  border-radius: 14px;
  font-size: 15px;
}

body.accommodation-module-page.mobile-app-mode .mobile-home-header {
  position: sticky;
  top: 0;
  z-index: 55;
  align-items: center;
  margin: 0 -10px 4px;
  padding: 10px 10px 12px;
  border-bottom: 1px solid rgba(207, 224, 243, .8);
  background: rgba(239, 246, 255, .94);
  backdrop-filter: blur(14px);
}

body.accommodation-module-page.mobile-app-mode .mobile-home-header p {
  max-width: 260px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-home-header h2 {
  font-size: clamp(32px, 9vw, 42px);
}

body.accommodation-module-page.mobile-app-mode .mobile-home-header > div > span {
  margin-top: 6px;
  padding: 6px 10px;
  font-size: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-header-actions {
  gap: 7px;
}

body.accommodation-module-page.mobile-app-mode .mobile-icon-link {
  width: 48px;
  height: 48px;
  border-radius: 18px;
}

body.accommodation-module-page.mobile-app-mode .mobile-icon-link svg {
  width: 24px;
  height: 22px;
}

body.accommodation-module-page.mobile-app-mode .mobile-card-section,
body.accommodation-module-page.mobile-app-mode .mobile-day-card,
body.accommodation-module-page.mobile-app-mode .mobile-main-alert,
body.accommodation-module-page.mobile-app-mode .mobile-main-next {
  border-radius: 22px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell {
  padding: 0;
  overflow: hidden;
  background: #fff;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  min-height: 52px;
  padding: 10px 13px;
  cursor: pointer;
  list-style: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary::-webkit-details-marker {
  display: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary em,
body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary strong,
body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary small {
  display: block;
  font-style: normal;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary em {
  color: #0b63c7;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .03em;
  text-transform: uppercase;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary strong {
  max-width: 100%;
  overflow: hidden;
  color: #061831;
  font-size: 17px;
  line-height: 1.12;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary small {
  margin-top: 2px;
  color: #64748b;
  font-size: 11px;
  font-weight: 850;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell summary svg {
  width: 21px;
  height: 21px;
  color: #0b63c7;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell form {
  display: grid;
  gap: 10px;
  padding: 0 13px 13px;
  border-top: 1px solid #e5edf7;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-options {
  grid-template-columns: 1fr;
  max-height: min(42vh, 330px);
  overflow: auto;
  padding-top: 10px;
  padding-right: 2px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-options label {
  min-height: 42px;
  padding: 8px 10px;
  border-radius: 14px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell .button {
  width: 100%;
  min-height: 44px;
  justify-content: center;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen] .mobile-unit-filter-shell.is-mobile-filter-sheet {
  display: block !important;
  position: fixed;
  left: max(12px, env(safe-area-inset-left));
  right: max(12px, env(safe-area-inset-right));
  bottom: calc(92px + env(safe-area-inset-bottom));
  z-index: 90;
  max-height: min(68vh, 520px);
  border: 1px solid #cfe1f4;
  box-shadow: 0 24px 70px rgba(6, 24, 49, .22);
  overflow: auto;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-filter-shell.is-mobile-filter-sheet summary {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #fff;
}

body.accommodation-module-page.mobile-app-mode .mobile-day-card {
  padding: 15px;
}

body.accommodation-module-page.mobile-app-mode .mobile-day-card-head {
  margin-bottom: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-day-card-head strong {
  font-size: 20px;
}

body.accommodation-module-page.mobile-app-mode .mobile-day-card-head a {
  min-height: 38px;
  padding: 9px 12px;
  border-radius: 14px;
}

body.accommodation-module-page.mobile-app-mode .mobile-today-grid article {
  min-height: 78px;
  border-radius: 16px;
}

body.accommodation-module-page.mobile-app-mode .mobile-today-grid strong {
  font-size: 28px;
}

body.accommodation-module-page.mobile-app-mode .mobile-primary-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-primary-actions a {
  min-height: 68px;
  border-radius: 18px;
}

body.accommodation-module-page.mobile-app-mode .mobile-primary-actions svg {
  width: 23px;
  height: 23px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-section {
  padding: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-card {
  gap: 10px;
  padding: 12px;
  border-radius: 18px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main .unit-color {
  height: 44px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main strong {
  font-size: 19px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main em {
  margin-top: 5px;
  padding: 5px 9px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main small {
  margin-top: 5px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-actions,
body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-actions a,
body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a {
  display: inline-flex;
  flex: 1 1 calc(50% - 7px);
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  padding: 7px 9px;
  border-radius: 14px;
  font-size: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-actions a:first-child {
  color: #fff;
  border-color: #0b63c7;
  background: #0b63c7;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-actions a:first-child svg {
  color: #fff;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-section {
  padding: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day {
  grid-template-columns: 74px minmax(0, 1fr);
  border-radius: 15px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-date strong {
  font-size: 13px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-events a {
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 40px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-events a small {
  grid-column: 2;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-grid {
  grid-template-columns: 1fr;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-grid a {
  min-height: 50px;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-tabbar {
  bottom: 10px;
  width: min(538px, calc(100vw - 20px));
  padding: 7px;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-tabbar a {
  min-height: 52px;
  border-radius: 16px;
}

@media (max-width: 390px) {
  body.accommodation-module-page.mobile-app-mode .main {
    padding-left: 8px;
    padding-right: 8px;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-home-header {
    margin-left: -8px;
    margin-right: -8px;
    padding-left: 8px;
    padding-right: 8px;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-header-actions {
    flex-direction: column;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-icon-link {
    width: 42px;
    height: 42px;
    border-radius: 15px;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-today-grid {
    grid-template-columns: 1fr;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-calendar-day {
    grid-template-columns: 1fr;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-unit-status-actions a,
  body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a {
    flex-basis: 100%;
  }
}

/* v1.3.514 - Smjestaj mobile app compact cockpit pass */
body.accommodation-module-page.mobile-app-mode .mobile-day-card {
  padding: 12px;
  border-radius: 18px;
}

body.accommodation-module-page.mobile-app-mode .mobile-day-card-head {
  align-items: center;
  margin-bottom: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-day-card-head strong {
  font-size: 18px;
}

body.accommodation-module-page.mobile-app-mode .mobile-day-card-head a {
  min-height: 34px;
  padding: 7px 10px;
  border-radius: 13px;
  font-size: 12px;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-today-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 7px;
}

body.accommodation-module-page.mobile-app-mode .mobile-today-grid article {
  justify-content: center;
  min-height: 58px;
  padding: 8px;
  border-radius: 14px;
}

body.accommodation-module-page.mobile-app-mode .mobile-today-grid span {
  overflow: hidden;
  font-size: 10px;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-today-grid strong {
  margin-top: 4px;
  font-size: 23px;
  line-height: 1;
}

body.accommodation-module-page.mobile-app-mode .mobile-primary-actions {
  gap: 7px;
}

body.accommodation-module-page.mobile-app-mode .mobile-primary-actions a {
  min-height: 56px;
  padding: 8px;
  border-radius: 15px;
  font-size: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-primary-actions svg {
  width: 20px;
  height: 20px;
}

body.accommodation-module-page.mobile-app-mode .mobile-main-alert {
  padding: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-next-grid {
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-main-next {
  padding: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-section {
  padding: 10px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-list {
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  padding: 10px;
  border-radius: 16px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main {
  min-width: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main .unit-color {
  width: 7px;
  height: 40px;
  border-radius: 999px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main strong {
  font-size: 17px;
  line-height: 1.12;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main em {
  margin-top: 4px;
  padding: 0;
  color: #061831;
  background: transparent;
  font-size: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main small {
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.25;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-actions {
  display: block;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-actions a {
  display: inline-flex;
  width: 100%;
  min-height: 40px;
  justify-content: center;
  gap: 7px;
  padding: 8px 10px;
  border-radius: 13px;
  font-size: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-agenda-section {
  padding: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-card {
  min-height: 56px;
  padding: 10px;
  border-radius: 15px;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day,
body.accommodation-module-page.mobile-app-mode .mobile-money-card,
body.accommodation-module-page.mobile-app-mode .mobile-more-grid a {
  border-radius: 15px;
}

@media (min-width: 380px) {
  body.accommodation-module-page.mobile-app-mode .mobile-unit-status-card {
    grid-template-columns: minmax(0, 1fr) 128px;
    align-items: center;
  }
}

/* v1.3.515 - Smjestaj mobile app polish */
body.accommodation-module-page.mobile-app-mode .mobile-super-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 8px;
  padding: 8px;
  border-radius: 16px;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar > div {
  min-width: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar > div span {
  font-size: 9px;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar > div strong {
  overflow: hidden;
  display: block;
  font-size: 15px;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-back {
  width: 42px;
  min-height: 36px;
  padding: 0;
  border-radius: 13px;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-back span {
  display: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-back svg {
  width: 18px;
  height: 18px;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar form {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  margin: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar form label {
  margin: 0;
  font-size: 10px;
}

body.accommodation-module-page.mobile-app-mode .mobile-super-bar select {
  min-height: 38px;
  padding: 8px 34px 8px 11px;
  border-radius: 12px;
  font-size: 13px;
}

body.accommodation-module-page.mobile-app-mode .mobile-home-header {
  padding-top: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-home-header h2 {
  font-size: clamp(27px, 8vw, 36px);
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-main small {
  max-width: 100%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-status-actions a span {
  line-height: 1.05;
}

body.accommodation-module-page.mobile-app-mode .mobile-section-head {
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-section-total {
  margin-left: auto;
  padding: 8px 10px;
  border-radius: 999px;
  color: #0b63c7;
  background: #eaf4ff;
  font-size: 13px;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-section-total + a {
  margin-left: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-list .mobile-empty {
  margin: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-action-panel p {
  margin: 8px 0 0;
  color: #52647d;
  font-size: 13px;
  line-height: 1.35;
}

@media (max-width: 370px) {
  body.accommodation-module-page.mobile-app-mode .mobile-super-bar form {
    grid-template-columns: 1fr;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-section-total {
    order: 3;
    width: 100%;
    text-align: center;
  }
}

/* v1.3.516 - Smjestaj mobile app navigation and stats */
body.accommodation-module-page.mobile-app-mode .mobile-home-header {
  grid-template-columns: 1fr auto;
}

body.accommodation-module-page.mobile-app-mode .mobile-header-actions {
  display: flex !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-soft-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 7px 11px;
  border-radius: 999px;
  color: #0b63c7;
  background: #eaf4ff;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-groups {
  display: grid;
  gap: 10px;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-group {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #dbe7f5;
  border-radius: 18px;
  background: #f8fbff;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-group h4 {
  margin: 0;
  color: #0057b8;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list {
  display: grid;
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list a,
body.accommodation-module-page.mobile-app-mode .mobile-more-list button {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 10px;
  border: 1px solid #dbe7f5;
  border-radius: 15px;
  color: #061831;
  background: #fff;
  text-decoration: none;
  width: 100%;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list a.is-danger,
body.accommodation-module-page.mobile-app-mode .mobile-more-list button.is-danger {
  border-color: #ffd1d1;
  color: #9b1c1c;
  background: #fff7f7;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list a.is-danger svg,
body.accommodation-module-page.mobile-app-mode .mobile-more-list button.is-danger svg {
  color: #d64545;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list svg {
  width: 20px;
  height: 20px;
  color: #0b63c7;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list strong {
  overflow: hidden;
  font-size: 14px;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list small {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-list em {
  justify-self: end;
  max-width: 96px;
  overflow: hidden;
  padding: 6px 8px;
  border-radius: 999px;
  color: #0b63c7;
  background: #eaf4ff;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="stats"] .mobile-stats-section {
  display: grid;
  gap: 10px;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen]:not([data-mobile-screen="stats"]) .mobile-stats-section[data-mobile-panel] {
  display: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-stats-scope {
  margin: -2px 0 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}

body.accommodation-module-page.mobile-app-mode .mobile-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-stats-grid article {
  min-width: 0;
  padding: 10px;
  border: 1px solid #dbe7f5;
  border-radius: 15px;
  background: #f8fbff;
}

body.accommodation-module-page.mobile-app-mode .mobile-stats-grid span {
  display: block;
  color: #64748b;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

body.accommodation-module-page.mobile-app-mode .mobile-stats-grid strong {
  overflow: hidden;
  display: block;
  margin-top: 4px;
  color: #061831;
  font-size: 16px;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-subsection-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 2px 0 -2px;
}

body.accommodation-module-page.mobile-app-mode .mobile-subsection-head p {
  margin: 0;
  color: #0b63c7;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .02em;
  text-transform: uppercase;
}

body.accommodation-module-page.mobile-app-mode .mobile-document-created {
  display: grid;
  gap: 10px;
  border-color: #bfdbfe;
  background: #f8fbff;
}

body.accommodation-module-page.mobile-app-mode .mobile-document-created p {
  margin: 0;
  color: #475569;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}

body.accommodation-module-page.mobile-app-mode .mobile-document-created-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-document-created-actions a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  border: 1px solid #cfe0f3;
  border-radius: 15px;
  background: #fff;
  color: #0b63c7;
  font-weight: 950;
  text-decoration: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-document-created-actions a:first-child {
  border-color: #0b63c7;
  background: #0b63c7;
  color: #fff;
}

body.accommodation-module-page.mobile-app-mode .mobile-document-created-actions svg {
  width: 18px;
  height: 18px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-list {
  display: grid;
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid #dbe7f5;
  border-radius: 16px;
  background: #fff;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-row .unit-color {
  width: 7px;
  height: 38px;
  border-radius: 999px;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-row strong {
  overflow: hidden;
  display: block;
  font-size: 15px;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-row small {
  color: #64748b;
  font-size: 11px;
  font-weight: 850;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-row dl {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  margin: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-row dl div {
  min-width: 0;
  padding: 7px;
  border-radius: 12px;
  background: #f2f7fc;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-row dt {
  color: #64748b;
  font-size: 9px;
  font-weight: 950;
  text-transform: uppercase;
}

body.accommodation-module-page.mobile-app-mode .mobile-unit-stat-row dd {
  overflow: hidden;
  margin: 2px 0 0;
  color: #061831;
  font-size: 11px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 360px) {
  body.accommodation-module-page.mobile-app-mode .mobile-more-list a,
  body.accommodation-module-page.mobile-app-mode .mobile-more-list button {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  body.accommodation-module-page.mobile-app-mode .mobile-more-list em {
    grid-column: 2;
    justify-self: start;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-stats-grid {
    grid-template-columns: 1fr;
  }
}

/* v1.3.517 - Smjestaj mobile reservation detail tightening */
body.accommodation-module-page.mobile-app-mode .mobile-reservation-detail {
  padding: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-detail .mobile-section-head {
  align-items: center;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-detail .mobile-section-head h3 {
  font-size: clamp(22px, 6.2vw, 28px);
  line-height: 1.05;
}

body.accommodation-module-page.mobile-app-mode .mobile-detail-grid {
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-detail-grid article {
  min-height: 78px;
  padding: 12px;
  border-radius: 16px;
}

body.accommodation-module-page.mobile-app-mode .mobile-detail-grid article span {
  font-size: 11px;
}

body.accommodation-module-page.mobile-app-mode .mobile-detail-grid article strong {
  font-size: 17px;
  line-height: 1.15;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px;
  margin-top: 10px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a {
  display: inline-flex !important;
  flex: none !important;
  min-height: 48px;
  justify-content: center;
  padding: 7px 9px;
  border-radius: 15px;
  font-size: 13px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a:first-child {
  color: #fff;
  border-color: #0b63c7;
  background: #0b63c7;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a:first-child svg {
  color: #fff;
}

@media (max-width: 360px) {
  body.accommodation-module-page.mobile-app-mode .mobile-detail-grid article {
    min-height: 70px;
    padding: 10px;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-detail-grid article strong {
    font-size: 15px;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a {
    min-height: 44px;
    font-size: 12px;
  }
}

/* v1.3.518 - Smjestaj mobile working action forms */
body.accommodation-module-page.mobile-app-mode .mobile-action-panel {
  gap: 10px;
  scroll-margin-top: 14px;
}

body.accommodation-module-page.mobile-app-mode .mobile-action-summary {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #cfe0f2;
  border-radius: 16px;
  background: #f6f9fd;
}

body.accommodation-module-page.mobile-app-mode .mobile-action-summary strong {
  color: #071a33;
  font-size: 16px;
  font-weight: 950;
}

body.accommodation-module-page.mobile-app-mode .mobile-action-summary span {
  color: #52667f;
  font-size: 12px;
  font-weight: 850;
}

body.accommodation-module-page.mobile-app-mode .mobile-action-form {
  display: grid;
  gap: 10px;
}

body.accommodation-module-page.mobile-app-mode .mobile-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-field {
  display: grid;
  gap: 5px;
  min-width: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-field-wide {
  grid-column: 1 / -1;
}

body.accommodation-module-page.mobile-app-mode .mobile-field span {
  color: #5d7089;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

body.accommodation-module-page.mobile-app-mode .mobile-field input,
body.accommodation-module-page.mobile-app-mode .mobile-field select,
body.accommodation-module-page.mobile-app-mode .mobile-field textarea {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #cfe0f2;
  border-radius: 14px;
  background: #fff;
  color: #071a33;
  font-size: 15px;
  font-weight: 800;
}

body.accommodation-module-page.mobile-app-mode .mobile-field textarea {
  min-height: 68px;
  resize: vertical;
}

body.accommodation-module-page.mobile-app-mode .mobile-form-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  width: 100%;
  border: 0;
  border-radius: 16px;
  background: #0b63c7;
  color: #fff;
  font-size: 15px;
  font-weight: 950;
}

body.accommodation-module-page.mobile-app-mode .mobile-form-submit svg {
  width: 18px;
  height: 18px;
}

body.accommodation-module-page.mobile-app-mode .mobile-choice-list {
  display: grid;
  gap: 8px;
}

body.accommodation-module-page.mobile-app-mode .mobile-choice-list a {
  display: grid;
  gap: 3px;
  padding: 11px 12px;
  border: 1px solid #cfe0f2;
  border-radius: 16px;
  background: #fff;
  color: #071a33;
  text-decoration: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-choice-list strong {
  font-size: 15px;
  font-weight: 950;
}

body.accommodation-module-page.mobile-app-mode .mobile-choice-list span,
body.accommodation-module-page.mobile-app-mode .mobile-empty-note {
  color: #52667f;
  font-size: 12px;
  font-weight: 850;
}

body.accommodation-module-page.mobile-app-mode .mobile-empty-note {
  padding: 14px;
  border: 1px dashed #bdd4ee;
  border-radius: 16px;
  background: #f6f9fd;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 6px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a {
  min-height: 44px;
  flex-direction: column;
  gap: 3px;
  padding: 7px 5px;
  border-radius: 14px;
  font-size: 11px;
  line-height: 1.05;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a svg {
  width: 16px;
  height: 16px;
}

body.accommodation-module-page.mobile-app-mode .mobile-action-hint {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #cfe0f2;
  border-radius: 16px;
  background: #f6f9fd;
  color: #52667f;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-fields {
  display: grid;
  gap: 10px;
  border: 1px solid #d6e4f5;
  border-radius: 16px;
  background: #f8fbff;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-fields > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 46px;
  padding: 0 12px;
  color: #0b63c7;
  font-size: 13px;
  font-weight: 950;
  list-style: none;
  cursor: pointer;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-fields > summary::-webkit-details-marker {
  display: none;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-fields > summary svg {
  width: 18px;
  height: 18px;
  transition: transform .18s ease;
}

body.accommodation-module-page.mobile-app-mode .mobile-more-fields[open] > summary svg {
  transform: rotate(180deg);
}

body.accommodation-module-page.mobile-app-mode .mobile-more-fields > .mobile-form-grid {
  padding: 0 10px 10px;
}

body.accommodation-module-page.mobile-app-mode input[type="date"] {
  cursor: pointer;
}

@media (max-width: 340px) {
  body.accommodation-module-page.mobile-app-mode .mobile-form-grid {
    grid-template-columns: 1fr;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-reservation-actions a {
    font-size: 10px;
  }
}

.roko-smjestaj-install-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border: 1px solid #b7dcff;
  border-radius: 22px;
  background: #f1f8ff;
  box-shadow: 0 14px 28px rgba(11, 99, 199, .08);
}

.roko-smjestaj-install-card strong,
.roko-smjestaj-install-card small {
  display: block;
}

.roko-smjestaj-install-card strong {
  color: #061831;
  font-size: 18px;
  font-weight: 950;
}

.roko-smjestaj-install-card small {
  margin-top: 4px;
  color: #52667f;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}

.roko-smjestaj-install-card .button {
  min-height: 42px;
  white-space: nowrap;
}

.roko-smjestaj-install-card .button:disabled {
  cursor: wait;
  opacity: .72;
}

.roko-smjestaj-install-help {
  color: #0b63c7 !important;
}

.roko-smjestaj-install-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.roko-smjestaj-install-card-compact {
  margin-bottom: 12px;
}

@media (max-width: 420px) {
  .roko-smjestaj-install-card {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .roko-smjestaj-install-card .button {
    width: 100%;
  }

  .roko-smjestaj-install-actions {
    grid-column: 1 / -1;
    flex-direction: column;
    align-items: stretch;
  }
}

/* v1.3.532 - Atol IT about page, legal acceptance and editable platform texts */
.atolit-about-page,
.terms-page {
  min-height: 100vh;
  background: linear-gradient(135deg, #edf6ff 0%, #f7fbff 46%, #f3f6fa 100%);
}

.atolit-about-shell,
.terms-shell {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 34px 0;
}

.atolit-about-hero,
.terms-card {
  border: 1px solid #d5e5f4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 31, 53, .08);
}

.atolit-about-hero {
  display: grid;
  grid-template-columns: 380px minmax(0, 1fr);
  gap: 34px;
  align-items: center;
  padding: clamp(24px, 4vw, 42px);
}

.terms-logo {
  display: grid;
  place-items: center;
  min-height: 210px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.atolit-about-logo {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: auto;
  border: 0;
  background: transparent;
  box-shadow: none;
  text-decoration: none;
}

.atolit-about-logo img {
  width: min(430px, 100%);
  height: auto;
  max-height: none;
  object-fit: contain;
}

.atolit-about-logo-caption {
  color: #52667f;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.atolit-about-hero-copy {
  display: grid;
  gap: 14px;
}

.atolit-about-hero h1,
.terms-card h1 {
  margin: 0;
  max-width: 820px;
  color: #071a33;
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.06;
  letter-spacing: 0;
}

.atolit-about-hero p,
.terms-card p,
.terms-legal-text {
  margin: 0;
  color: #52667f;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.62;
}

.atolit-about-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
}

.atolit-about-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 22px;
}

.atolit-about-card {
  display: grid;
  gap: 14px;
  align-content: start;
  min-height: 260px;
  padding: 28px;
  border: 1px solid #d5e5f4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(15, 31, 53, .06);
}

.atolit-about-card-wide {
  grid-column: 1 / -1;
}

.atolit-about-card-dedication {
  min-height: 0;
}

.atolit-about-card-dedication .atolit-about-prose {
  max-width: 920px;
}

.atolit-about-card h2,
.terms-card h2,
.terms-admin-section h3 {
  margin: 0;
  color: #071a33;
  font-size: 24px;
  line-height: 1.1;
  letter-spacing: 0;
}

.atolit-about-card p {
  margin: 0;
  color: #263955;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.65;
}

.atolit-about-prose {
  display: grid;
  gap: 12px;
}

.atolit-about-prose p {
  margin: 0;
}

.atolit-about-card-legal .atolit-about-prose {
  max-width: 920px;
}

.atolit-about-card-legal .atolit-about-prose p {
  color: #2f415b;
  font-size: 15.5px;
  font-weight: 500;
  line-height: 1.72;
}

.atolit-about-card-legal {
  grid-column: 1 / -1;
  border-color: #ffd6b4;
  background: #fffaf4;
}

.atolit-about-card-legal p {
  white-space: normal;
}

.atolit-about-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border-radius: 8px;
  background: #eef6ff;
  color: #0b63c7;
}

.atolit-about-icon svg {
  width: 27px;
  height: 27px;
}

.atolit-about-legal-note,
.atolit-about-version {
  color: #617086 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase;
}

.atolit-about-version {
  margin: 22px 0 0;
  text-align: center;
}

.terms-shell {
  width: min(860px, calc(100% - 28px));
  display: grid;
  gap: 18px;
}

.terms-card {
  padding: 26px;
}

.terms-hero {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 24px;
  align-items: center;
}

.terms-logo {
  min-height: 130px;
}

.terms-logo img {
  width: min(170px, 88%);
  max-height: 145px;
  height: auto;
  object-fit: contain;
}

.terms-card h1 {
  font-size: clamp(30px, 5vw, 42px);
}

.terms-card h2 {
  margin-bottom: 14px;
}

.terms-legal-text {
  color: #31445e;
  font-size: 16.5px;
  font-weight: 600;
  line-height: 1.72;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.terms-form {
  display: grid;
  gap: 14px;
}

.terms-check {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 16px;
  border: 1px solid #cfe0f2;
  border-radius: 8px;
  background: #f7fbff;
  color: #071a33;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.45;
}

.terms-check input {
  width: 22px;
  height: 22px;
  margin-top: 2px;
}

.terms-admin-page .roko-start-hero {
  margin-bottom: 18px;
}

.admin-page .stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.admin-users-filter,
.terms-acceptance-filter {
  display: grid;
  align-items: end;
  grid-template-columns: minmax(220px, 1.6fr) minmax(180px, 1.2fr) minmax(150px, .9fr) minmax(140px, .8fr) auto auto;
  margin-bottom: 18px;
  gap: 12px;
}

.terms-acceptance-filter {
  grid-template-columns: minmax(220px, 1.6fr) minmax(180px, 1.2fr) minmax(160px, .9fr) auto auto;
}

.admin-users-table .table-card-head,
.terms-acceptance-card .table-card-head {
  margin-bottom: 14px;
}

.admin-user-identity {
  display: grid;
  gap: 7px;
  min-width: 220px;
}

.admin-user-identity input,
.admin-users-table select,
.admin-users-table input[type="email"],
.admin-users-table input[type="password"],
.admin-users-table input[name="delete_confirm_username"] {
  min-height: 38px;
  border: 1px solid #d8e5f2;
  border-radius: 8px;
  padding: 8px 10px;
  font-weight: 800;
}

.admin-users-table tr.is-muted-row {
  opacity: .68;
}

.admin-user-delete {
  position: relative;
}

.admin-user-delete summary {
  cursor: pointer;
  list-style: none;
}

.admin-user-delete summary::-webkit-details-marker {
  display: none;
}

.admin-user-delete > div {
  position: absolute;
  z-index: 20;
  right: 0;
  top: calc(100% + 8px);
  display: grid;
  gap: 10px;
  width: min(320px, 86vw);
  border: 1px solid #ffd2d2;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(31, 41, 55, .16);
  padding: 14px;
}

.admin-user-delete p,
.admin-user-delete label {
  margin: 0;
  color: #5f2730;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.4;
}

.terms-acceptance-card {
  margin-bottom: 18px;
}

.terms-acceptance-card .muted-small,
.admin-users-table .muted-small {
  overflow-wrap: anywhere;
}
.terms-acceptance-empty {
  border: 1px solid #d8e5f2;
  border-radius: 8px;
  background: #f8fbff;
  padding: 18px;
  color: var(--muted);
  font-weight: 900;
}

.terms-acceptance-list {
  display: grid;
  gap: 10px;
}

.terms-acceptance-item {
  border: 1px solid #d8e5f2;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(8, 43, 84, .04);
  overflow: hidden;
}

.terms-acceptance-item summary {
  display: grid;
  grid-template-columns: minmax(230px, 1.25fr) minmax(150px, .85fr) minmax(130px, .7fr) minmax(150px, .85fr) minmax(120px, .6fr) 24px;
  align-items: center;
  gap: 16px;
  min-height: 78px;
  padding: 14px 16px;
  cursor: pointer;
  list-style: none;
}

.terms-acceptance-item summary::-webkit-details-marker {
  display: none;
}

.terms-acceptance-item summary:hover {
  background: #f8fbff;
}

.terms-acceptance-item[open] summary {
  border-bottom: 1px solid #d8e5f2;
  background: #f8fbff;
}

.terms-acceptance-item summary > svg {
  justify-self: end;
  color: var(--blue);
  transition: transform .16s ease;
}

.terms-acceptance-item[open] summary > svg {
  transform: rotate(180deg);
}

.terms-acceptance-person,
.terms-acceptance-summary-cell,
.terms-acceptance-details > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.terms-acceptance-person strong,
.terms-acceptance-summary-cell strong,
.terms-acceptance-details strong {
  min-width: 0;
  color: var(--ink);
  font-weight: 950;
  overflow-wrap: anywhere;
}

.terms-acceptance-person small,
.terms-acceptance-summary-cell small,
.terms-acceptance-details span,
.terms-acceptance-details small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.terms-acceptance-details {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 16px;
  background: #fff;
}

.terms-acceptance-details > div {
  border: 1px solid #e1edf8;
  border-radius: 8px;
  background: #f8fbff;
  padding: 12px;
}

.terms-acceptance-device {
  grid-column: span 2;
}

@media (max-width: 1180px) {
  .terms-acceptance-item summary {
    grid-template-columns: minmax(220px, 1.4fr) minmax(150px, .9fr) minmax(130px, .8fr) 24px;
  }

  .terms-acceptance-email-status {
    grid-column: 3 / 4;
  }

  .terms-acceptance-details {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.terms-admin-form {
  display: grid;
  gap: 18px;
}

.terms-admin-section {
  display: grid;
  gap: 16px;
}

.terms-admin-section textarea {
  min-height: 110px;
  line-height: 1.45;
}

.terms-admin-legal textarea {
  min-height: 260px;
}

.terms-admin-warning {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 14px;
  border: 1px solid #ffd6b4;
  border-radius: 8px;
  background: #fff8ed;
  color: #7c4200;
  font-weight: 850;
  line-height: 1.45;
}

.terms-admin-warning svg {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
}

@media (max-width: 760px) {
  .admin-page .stat-grid,
  .admin-users-filter,
  .terms-acceptance-filter {
    grid-template-columns: 1fr;
  }

  .terms-acceptance-item summary {
    grid-template-columns: 1fr 24px;
    gap: 10px;
    min-height: 0;
  }

  .terms-acceptance-summary-cell,
  .terms-acceptance-email-status {
    grid-column: 1 / -1;
  }

  .terms-acceptance-details {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  .terms-acceptance-device {
    grid-column: auto;
  }
  .atolit-about-shell,
  .terms-shell {
    width: min(100% - 20px, 560px);
    padding: 18px 0;
  }

  .atolit-about-hero,
  .terms-hero {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .atolit-about-logo {
    min-height: auto;
    align-items: flex-start;
  }

  .atolit-about-logo img {
    width: min(300px, 82vw);
    height: auto;
  }

  .atolit-about-grid {
    grid-template-columns: 1fr;
  }

  .atolit-about-card {
    min-height: 0;
    padding: 22px;
  }

  .atolit-about-card h2,
  .terms-card h2 {
    font-size: 24px;
  }

  .atolit-about-hero p,
  .terms-card p,
  .terms-legal-text {
    font-size: 16px;
  }

  .atolit-about-prose p,
  .atolit-about-card-legal .atolit-about-prose p {
    font-size: 15px;
  }

  .atolit-about-hero-actions .button,
  .terms-form .button {
    width: 100%;
  }
}

/* v1.3.550 - final mobile calendar width guard */
body.accommodation-module-page.mobile-app-mode .mobile-calendar-section,
body.accommodation-module-page.mobile-app-mode .mobile-calendar-months,
body.accommodation-module-page.mobile-app-mode .mobile-calendar-month,
body.accommodation-module-page.mobile-app-mode .mobile-calendar-weeks,
body.accommodation-module-page.mobile-app-mode .mobile-calendar-week {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: min(100%, calc(100vw - 24px)) !important;
  max-width: min(100%, calc(100vw - 24px)) !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-section {
  margin-right: auto !important;
  margin-left: auto !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-weekdays,
body.accommodation-module-page.mobile-app-mode .mobile-calendar-week-days {
  box-sizing: border-box !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-calendar-day-cell {
  min-width: 0 !important;
  max-width: 100% !important;
}

@media (max-width: 640px) {
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-section {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-calendar-months,
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-month,
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-weeks {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-calendar-week,
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-weekdays,
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-week-days {
    width: calc(100vw - 44px) !important;
    max-width: calc(100vw - 44px) !important;
  }

  body.accommodation-module-page.mobile-app-mode .mobile-calendar-weekdays,
  body.accommodation-module-page.mobile-app-mode .mobile-calendar-week-days {
    grid-template-columns: repeat(7, minmax(0, calc((100vw - 44px) / 7))) !important;
  }
}

/* v1.3.557 - mobile app screen guard and quieter finance presentation */
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen] [data-mobile-panel] {
  display: none !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] [data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="calendar"] [data-mobile-panel~="calendar"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="reservations"] [data-mobile-panel~="reservations"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="payments"] [data-mobile-panel~="payments"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="history"] [data-mobile-panel~="history"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="stats"] [data-mobile-panel~="stats"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="more"] [data-mobile-panel~="more"] {
  display: block !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] .mobile-primary-actions[data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] .mobile-next-grid[data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] .mobile-alert-card[data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] .mobile-ok-card[data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="stats"] .mobile-stats-section[data-mobile-panel~="stats"] {
  display: grid !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-overview-section {
  display: grid;
  gap: 12px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-block {
  display: grid;
  gap: 6px;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-block + .mobile-reservation-block {
  padding-top: 10px;
  border-top: 1px solid #e5edf7;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-card em.is-arrival,
body.accommodation-module-page.mobile-app-mode .mobile-reservation-card em.is-next {
  color: #0b63c7;
  background: #eaf4ff;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-card em.is-current {
  color: #047857;
  background: #dcfce7;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-card em.is-departure {
  color: #b45309;
  background: #fff7ed;
}

body.accommodation-module-page.mobile-app-mode .mobile-reservation-card em.is-history {
  color: #64748b;
  background: #f1f5f9;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen] [data-mobile-panel] {
  display: none !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] [data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="calendar"] [data-mobile-panel~="calendar"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="reservations"] [data-mobile-panel~="reservations"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="payments"] [data-mobile-panel~="payments"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="history"] [data-mobile-panel~="history"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="stats"] [data-mobile-panel~="stats"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="more"] [data-mobile-panel~="more"] {
  display: block !important;
}

body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] .mobile-primary-actions[data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] .mobile-next-grid[data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] .mobile-alert-card[data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="today"] .mobile-ok-card[data-mobile-panel~="today"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="stats"] .mobile-stats-section[data-mobile-panel~="stats"],
body.accommodation-module-page.mobile-app-mode .mobile-app-shell[data-mobile-screen="reservations"] .mobile-reservation-overview-section[data-mobile-panel~="reservations"] {
  display: grid !important;
}

/* v1.3.559 - Smjestaj desktop booking calendar grid guard */
body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-weekdays,
body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-week {
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-week {
  grid-auto-columns: minmax(0, 1fr);
  grid-auto-flow: row;
  isolation: isolate;
  overflow: hidden;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-day {
  position: relative;
  z-index: 1;
  grid-row: 1 / -1;
  min-width: 0;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-bar,
body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-more {
  z-index: 3;
  align-self: center;
  min-width: 0;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-bar {
  box-sizing: border-box;
}

/* v1.3.579 - compact desktop booking calendar with stable unit lanes */
body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-shell {
  gap: 10px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-shell-head {
  display: none;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-card {
  overflow: hidden;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-month-title {
  padding: 12px 16px 10px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-week {
  grid-template-rows: 32px repeat(var(--calendar-week-lanes, 1), 25px);
  min-height: calc(38px + (var(--calendar-week-lanes, 1) * 25px));
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-day {
  padding: 7px 8px;
}

/* v1.3.583 - keep booking bars over dates while all unit lanes stay visible */
body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar {
  grid-column: 1 / -1 !important;
  grid-row: 1 / -1 !important;
  top: calc(34px + (var(--booking-lane, 0) * 25px));
  height: 20px;
  padding: 0 8px;
  line-height: 20px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-more {
  align-self: start;
  margin-top: 2px;
}

/* v1.3.580 - compact desktop calendar controls */
body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px;
  padding: 14px 16px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-nav {
  display: flex;
  align-items: center;
  flex: 0 1 auto;
  gap: 8px;
  min-width: 0;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-month-field,
body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-view-field {
  min-width: 0;
  margin: 0;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-month-field {
  width: 220px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-view-field {
  width: 210px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-view-field > label {
  display: none;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-view-field select {
  min-height: 46px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar > .button {
  width: auto;
  justify-content: center;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .unified-filter-advanced {
  flex: 1 0 100%;
  display: flex;
  align-items: stretch;
  gap: 10px;
  margin-top: 0;
  padding: 10px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .unified-filter-advanced[hidden] {
  display: none !important;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-filter-group {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1 1 0;
  min-width: 0;
  padding: 8px 10px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-filter-group legend {
  padding: 0 4px;
  white-space: nowrap;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .checkbox-pill-grid {
  gap: 8px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .checkbox-pill-grid label {
  min-height: 34px;
  padding: 6px 10px;
  font-size: 12px;
}

/* v1.3.584 - calendar unit selection stays readable with max four units */
body.accommodation-module-page:not(.mobile-app-mode) .calendar-filter-limit-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 26px;
  border: 1px solid #cfe2ff;
  border-radius: 999px;
  background: #eef6ff;
  color: #075ebf;
  padding: 4px 9px;
  font-size: 12px;
  font-weight: 950;
  line-height: 1;
  white-space: nowrap;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-filter-limit-chip-standalone {
  align-self: center;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-unit-limit-hint {
  flex: 1 1 100%;
  margin: -2px 0 2px;
  color: #075ebf;
  font-size: 12px;
  font-weight: 850;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-unit-limit-hint[hidden] {
  display: none !important;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .checkbox-pill-grid label.is-disabled {
  opacity: .48;
  cursor: not-allowed;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .checkbox-pill-grid label.is-disabled input {
  cursor: not-allowed;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-month-title {
  display: none;
}

/* v1.3.593 - superadmin dashboard mobile ergonomics */
@media (max-width: 900px) {
  .superadmin-dashboard-page .roko-start-hero {
    gap: 14px;
    padding: 16px;
  }

  .superadmin-dashboard-page .roko-start-hero h2,
  .superadmin-dashboard-page .roko-platform-picker h2 {
    font-size: 25px;
    line-height: 1.08;
  }

  .superadmin-dashboard-page .roko-start-hero-main,
  .superadmin-dashboard-page .roko-platform-picker-head {
    gap: 10px;
  }

  .superadmin-dashboard-page .roko-start-hero-main .icon-box,
  .superadmin-dashboard-page .roko-platform-picker-head .icon-box {
    width: 44px;
    min-width: 44px;
    height: 44px;
  }

  .superadmin-dashboard-page .roko-start-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
  }

  .superadmin-dashboard-page .roko-start-actions .button {
    display: grid;
    gap: 5px;
    width: 100%;
    min-height: 62px;
    padding: 8px 5px;
    border-radius: 8px;
    font-size: 12px;
    line-height: 1.1;
    text-align: center;
    white-space: normal;
  }

  .superadmin-dashboard-page .roko-start-actions .button svg {
    width: 20px;
    height: 20px;
    margin: 0 auto;
  }

  .superadmin-dashboard-page .roko-admin-toolbar {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }

  .superadmin-dashboard-page .roko-admin-toolbar .button {
    justify-content: center;
    min-height: 44px;
    padding-inline: 8px;
    white-space: normal;
  }

  .superadmin-dashboard-page .roko-platform-picker-compact {
    gap: 14px;
    padding: 16px;
  }

  .superadmin-dashboard-page .roko-platform-picker-compact .card-subtitle {
    max-width: 100%;
    overflow-wrap: anywhere;
    font-size: 12px;
    line-height: 1.3;
  }

  .superadmin-dashboard-page .roko-platform-picker-compact .roko-platform-picker-form {
    grid-template-columns: 1fr;
    gap: 10px;
    width: 100%;
  }

  .superadmin-dashboard-page .roko-platform-picker-form .field,
  .superadmin-dashboard-page .roko-platform-picker-form select,
  .superadmin-dashboard-page .roko-platform-picker-form .button {
    width: 100%;
    min-width: 0;
  }

  .superadmin-dashboard-page .roko-platform-picker-form .button {
    min-height: 48px;
    padding-inline: 12px;
    white-space: normal;
  }
}

@media (max-width: 420px) {
  .superadmin-dashboard-page .roko-start-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .superadmin-dashboard-page .roko-admin-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .superadmin-dashboard-page .roko-start-actions .button {
    min-height: 58px;
  }
}

@media (max-width: 1260px) {
  body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-month-field {
    width: 190px;
  }

  body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-view-field {
    width: 190px;
  }

  body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-filter-group {
    flex: 1 1 100%;
  }
}

/* v1.3.560 - NKD 2025 Roko data-table polish */
.nkd-structured-editor {
  gap: 10px;
}

.nkd-editor-head {
  align-items: flex-start;
  padding: 2px 0 4px;
}

.nkd-editor-head .field-hint {
  max-width: 760px;
  margin-top: 4px;
}

.nkd-roko-table {
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

.nkd-roko-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  height: 42px;
  border-bottom: 1px solid #d9e6f3;
  background: #f3f7fb;
  color: #536783;
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1;
  text-align: left;
}

.nkd-roko-table tbody tr {
  transition: background .15s ease;
}

.nkd-roko-table td {
  height: 52px;
  padding: 8px 10px;
  vertical-align: middle;
}

.nkd-roko-table tbody tr:hover td {
  background: #f8fbff;
}

.nkd-roko-table input,
.nkd-roko-table select {
  min-height: 36px;
  border-radius: 7px;
  font-size: 13px;
  line-height: 1.25;
}

.nkd-roko-table input[name="nkd_codes[]"] {
  font-family: inherit;
  font-weight: 950;
}

.nkd-roko-table input[name="nkd_descriptions[]"] {
  font-weight: 900;
}

.nkd-roko-table input[readonly],
.nkd-roko-table select:disabled,
.company-card.is-readonly .nkd-roko-table input,
.company-card.is-readonly .nkd-roko-table select {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
}

.nkd-roko-table input[type="radio"] {
  width: 22px;
  height: 22px;
  min-height: 22px;
  margin: 0;
}

.nkd-roko-table th:first-child,
.nkd-roko-table td:first-child {
  width: 70px;
  text-align: center;
}

.nkd-roko-table th:nth-child(2),
.nkd-roko-table td:nth-child(2) {
  width: 128px;
}

.nkd-roko-table th:nth-child(4),
.nkd-roko-table td:nth-child(4) {
  width: 118px;
}

.nkd-roko-table th:nth-child(5),
.nkd-roko-table td:nth-child(5) {
  width: 140px;
}

.nkd-simple-edit-table.nkd-roko-table th:nth-child(2),
.nkd-simple-edit-table.nkd-roko-table td:nth-child(2) {
  width: 128px;
}

.nkd-simple-edit-table.nkd-roko-table th:nth-child(4),
.nkd-simple-edit-table.nkd-roko-table td:nth-child(4) {
  width: 74px;
}

.nkd-roko-table .actions {
  text-align: center;
}

.nkd-roko-table .actions .button {
  width: 36px;
  min-width: 36px;
  height: 36px;
  border-radius: 8px;
}

.nkd-roko-table .actions .button[hidden] {
  display: none;
}

.nkd-inline-check {
  min-height: 36px;
  color: #0b63c7;
}

@media (min-width: 721px) {
  .nkd-table-wrap {
    max-height: 520px;
    overflow: auto;
  }

  .company-nkd-simple-editor .nkd-table-wrap {
    max-height: 430px;
  }
}

@media (max-width: 720px) {
  .nkd-editor-head {
    display: grid;
    gap: 10px;
  }

  .nkd-editor-head .button {
    width: 100%;
    justify-content: center;
  }

  .nkd-roko-table td {
    height: auto;
    padding: 8px 10px;
  }

  .nkd-roko-table input,
  .nkd-roko-table select {
    min-height: 38px;
  }

  .nkd-roko-table input[readonly],
  .company-card.is-readonly .nkd-roko-table input {
    padding-left: 10px;
    padding-right: 10px;
    border-color: #d7e5f4;
    background: #fff;
  }
}

/* v1.3.561 - NKD accordion blocks without inner scroll */
.company-nkd-accordion {
  padding: 0;
  overflow: hidden;
}

.company-nkd-accordion > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 18px;
  cursor: pointer;
  list-style: none;
}

.company-nkd-accordion > summary::-webkit-details-marker {
  display: none;
}

.company-nkd-accordion > summary h4,
.company-nkd-accordion > summary p {
  margin: 0;
}

.company-nkd-accordion > summary h4 {
  margin-top: 4px;
}

.company-nkd-summary-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  background: #fff;
  color: #0b63c7;
  flex: 0 0 auto;
}

.company-nkd-summary-action svg {
  width: 18px;
  height: 18px;
  transition: transform .15s ease;
}

.company-nkd-accordion[open] .company-nkd-summary-action svg {
  transform: rotate(180deg);
}

.company-nkd-accordion .company-nkd-simple-editor {
  margin: 0 18px 18px;
}

.nkd-table-wrap,
.company-nkd-simple-editor .nkd-table-wrap {
  max-height: none !important;
  overflow: visible !important;
}

.nkd-roko-table td[data-label="Primarna"] {
  position: relative;
  text-align: center;
}

.nkd-roko-table td[data-label="Primarna"]::before {
  content: "Odaberi";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  min-height: 30px;
  border: 1px solid #d7e5f4;
  border-radius: 999px;
  background: #fff;
  color: #536783;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
}

.nkd-roko-table td[data-label="Primarna"]:has(input[type="radio"]:checked)::before {
  content: "Primarna";
  border-color: #b9d8fb;
  background: #eaf4ff;
  color: #0b63c7;
}

.nkd-roko-table td[data-label="Primarna"] input[type="radio"] {
  position: absolute;
  inset: 8px 10px;
  z-index: 2;
  width: calc(100% - 20px);
  height: calc(100% - 16px);
  min-height: 0;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.company-card.is-readonly .nkd-roko-table td[data-label="Primarna"] input[type="radio"] {
  cursor: default;
}

.nkd-roko-table th:first-child,
.nkd-roko-table td:first-child {
  width: 96px;
}

.company-nkd-simple-editor .nkd-editor-head {
  border-bottom: 1px solid #e0ebf7;
  padding-bottom: 12px;
}

@media (max-width: 720px) {
  .company-nkd-accordion > summary {
    align-items: flex-start;
  }

  .company-nkd-accordion .company-nkd-simple-editor {
    margin: 0 12px 12px;
  }

  .nkd-roko-table td[data-label="Primarna"]::before {
    width: 100%;
  }
}

/* v1.3.562 - NKD settings list aligned with business catalog table */
.nkd-business-list-editor {
  gap: 0;
}

.nkd-business-list-head.business-table-toolbar {
  padding: 0 0 8px;
  border-bottom: 0;
}

.nkd-business-list-head h3 {
  margin: 2px 0 0;
  color: #061a36;
  font-size: 24px;
  line-height: 1.12;
}

.nkd-business-list-actions {
  align-items: center;
}

.nkd-business-list-actions .button {
  min-height: 44px;
}

.nkd-business-list-table {
  min-width: 920px;
}

.nkd-business-list-table thead th {
  height: 44px;
  background: #f8fbff;
  border-top: 1px solid #d7e5f4;
  border-bottom: 1px solid #d7e5f4;
}

.nkd-business-list-table td {
  height: 64px;
  padding-top: 12px;
  padding-bottom: 12px;
  background: #fff;
}

.nkd-business-list-table tbody tr:hover td {
  background: #f7fbff;
}

.nkd-business-list-table input:not([type="radio"]):not([type="checkbox"]),
.nkd-business-list-table select {
  min-height: 36px;
  border-color: transparent;
  background: transparent;
  padding-left: 0;
  padding-right: 0;
  font-size: 14px;
  box-shadow: none;
}

.nkd-business-list-table tr:focus-within input:not([type="radio"]):not([type="checkbox"]),
.nkd-business-list-table tr:focus-within select,
.nkd-business-list-table input:not([type="radio"]):not([type="checkbox"]):focus,
.nkd-business-list-table select:focus {
  border-color: #b9d8fb;
  background: #fff;
  padding-left: 10px;
  padding-right: 10px;
}

.nkd-business-list-table input[name="nkd_codes[]"] {
  color: #005fc4;
  font-size: 15px;
}

.nkd-business-list-table input[name="nkd_descriptions[]"] {
  color: #061a36;
  font-size: 15px;
}

.nkd-business-list-table .nkd-inline-check {
  display: inline-flex;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #eef6ff;
  color: #0b63c7;
}

.nkd-business-list-table .nkd-inline-check input {
  width: 16px;
  min-height: 16px;
}

.nkd-business-list-table th:nth-child(2),
.nkd-business-list-table td:nth-child(2) {
  width: 120px;
}

.nkd-business-list-table th:nth-child(4),
.nkd-business-list-table td:nth-child(4) {
  width: 120px;
}

.nkd-business-list-table th:nth-child(5),
.nkd-business-list-table td:nth-child(5) {
  width: 130px;
}

.nkd-business-list-table th:nth-child(6),
.nkd-business-list-table td:nth-child(6) {
  width: 86px;
  text-align: center;
}

@media (max-width: 960px) {
  .nkd-business-list-head.business-table-toolbar {
    display: grid;
  }

  .nkd-business-list-actions {
    justify-content: stretch;
  }

  .nkd-business-list-actions .button,
  .nkd-business-list-actions span {
    width: 100%;
    justify-content: center;
  }
}

/* v1.3.567 - professional subject accordions, module category and safer archive flow */
.company-admin-accordion {
  display: block;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d5e5f7;
  border-radius: 8px;
  background: #fff;
}

.company-admin-accordion > summary {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 14px 16px;
  cursor: pointer;
  list-style: none;
}

.company-admin-accordion > summary::-webkit-details-marker {
  display: none;
}

.company-admin-accordion > summary span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: #eef6ff;
  color: #0b63c7;
  flex: 0 0 auto;
}

.company-admin-accordion > summary strong {
  display: block;
  color: #061a36;
  font-size: 17px;
  line-height: 1.2;
}

.company-admin-accordion > summary small {
  display: block;
  margin-top: 2px;
  color: #5f6f85;
  font-size: 12px;
  font-weight: 700;
}

.company-admin-accordion-body {
  display: grid;
  gap: 12px;
  padding: 0 16px 16px;
}

.company-admin-accordion-body .grid {
  align-items: start;
}

.company-safety-accordion {
  order: 20;
}

.company-safety-action-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  background: #f8fbff;
}

.company-safety-action-card h4,
.company-safety-action-card p {
  margin: 0;
}

.company-safety-action-card h4 {
  margin-top: 3px;
  color: #061a36;
}

.company-safety-action-card p {
  margin-top: 5px;
  color: #5f6f85;
}

.company-danger-zone {
  order: 40;
  border-color: #fecaca;
  background: #fff7f7;
}

.company-danger-zone > summary span:first-child {
  background: #fee2e2;
  color: #b91c1c;
}

.company-danger-zone h4,
.company-danger-zone p {
  margin: 0;
}

.company-danger-zone h4 {
  color: #991b1b;
}

.company-danger-zone p {
  color: #7f1d1d;
}

.company-profile-grid {
  order: 10;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.company-profile-grid .company-panel-main,
.company-profile-grid .company-panel-side,
.company-profile-grid .company-logo-panel,
.company-profile-grid .company-nkd-panel,
.company-users-accordion {
  grid-column: 1 / -1;
}

.company-profile-grid .company-admin-accordion > summary,
.company-profile-grid .company-nkd-accordion > summary {
  min-height: 64px;
  padding: 14px 18px;
}

.company-profile-grid .company-admin-accordion > summary strong,
.company-profile-grid .company-nkd-accordion > summary h4 {
  min-width: 180px;
}

.company-profile-grid .company-admin-accordion[open],
.company-profile-grid .company-nkd-accordion[open] {
  box-shadow: 0 16px 34px rgba(12, 55, 96, .08);
}

.company-profile-grid .company-admin-accordion[open] > summary,
.company-profile-grid .company-nkd-accordion[open] > summary {
  border-bottom: 1px solid #d7e5f4;
  background: #f8fbff;
}

.company-users-list {
  display: grid;
  gap: 8px;
}

.company-user-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #dbe8f6;
  border-radius: 8px;
  background: #f9fcff;
}

.company-user-row strong,
.company-user-row span {
  min-width: 0;
}

.company-user-row > div {
  min-width: 0;
}

.company-user-row > div span {
  display: block;
  margin-top: 2px;
  color: #5f6f85;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.company-user-row.is-muted {
  opacity: .66;
}

.company-user-role,
.company-user-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #eef6ff;
  color: #0b63c7;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.company-user-status.is-active {
  background: #dcfce7;
  color: #15803d;
}

.company-user-status.is-inactive {
  background: #eef2f7;
  color: #637083;
}

.company-users-edit-link {
  justify-self: start;
}

.company-subject-users-table-wrap {
  border: 1px solid #d7e5f4;
  border-radius: 8px;
  background: #fff;
}

.company-subject-users-table {
  width: 100%;
  min-width: 1080px;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
}

.company-subject-users-table th {
  height: 42px;
  background: #f8fbff;
  color: #52637a;
  font-size: 12px;
  text-transform: uppercase;
}

.company-subject-users-table td {
  padding: 12px 14px;
  vertical-align: middle;
  background: #fff;
}

.company-subject-users-table tbody tr:hover td {
  background: #f8fbff;
}

.company-subject-users-table tr.is-muted-row {
  opacity: .68;
}

.company-subject-users-table .admin-user-identity {
  min-width: 240px;
}

.company-subject-users-table .admin-user-identity input,
.company-subject-users-table select,
.company-subject-users-table input[type="email"],
.company-subject-users-table input[type="password"],
.company-subject-users-table input[name^="subject_delete_confirm_username"],
.company-subject-users-table input[name="new_user_username"],
.company-subject-users-table input[name="new_user_name"] {
  min-height: 38px;
  border: 1px solid #d8e5f2;
  border-radius: 7px;
  background: #fff;
  font-weight: 800;
}

.company-subject-users-table .actions {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 210px;
}

.company-subject-user-new-row td {
  background: #f8fbff;
}

.company-subject-user-new-row strong {
  color: #0b63c7;
}

.business-settings-save-footer {
  justify-content: flex-end;
  padding: 12px 14px;
  border: 1px solid #d5e5f7;
  border-radius: 8px;
  background: #f8fbff;
}

.business-settings-save-footer span {
  margin-right: auto;
  color: #5f6f85;
  font-weight: 800;
}

@media (max-width: 960px) {
  .company-safety-action-card {
    grid-template-columns: 1fr;
  }

  .company-safety-action-card .button {
    justify-self: stretch;
  }

  .company-safety-action-card .button {
    width: 100%;
    justify-content: center;
  }

  .company-user-row {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .company-users-edit-link,
  .business-settings-save-footer .button {
    width: 100%;
    justify-content: center;
  }

  .business-settings-save-footer {
    justify-content: stretch;
  }

  .business-settings-save-footer span {
    width: 100%;
  }
}

/* v1.3.594 - Hosting mobile app layout */
body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact {
  gap: 10px;
  padding: 14px;
  border-radius: 20px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact h2 {
  font-size: 26px;
  line-height: 1.08;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .card-subtitle {
  font-size: 12px;
  line-height: 1.3;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions .button,
body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions .button:first-child {
  display: grid;
  grid-column: auto;
  justify-items: center;
  gap: 5px;
  min-height: 56px;
  padding: 8px 5px;
  border-radius: 16px;
  font-size: 12px;
  line-height: 1.12;
  text-align: center;
  white-space: normal;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions .button svg {
  width: 20px;
  height: 20px;
  margin: 0;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  padding: 8px;
  border-radius: 18px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact a {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 5px;
  min-height: 48px;
  padding: 7px 4px;
  border-radius: 14px;
  font-size: 11px;
  line-height: 1.12;
  text-align: center;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact a svg {
  width: 19px;
  height: 19px;
  margin: 0;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact {
  padding: 10px;
  border-radius: 20px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-search-field,
body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-search-field input,
body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row .button[type="submit"] {
  grid-column: 1 / -1;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row:has(button[data-toggle-target]) > a.button-light[href] {
  grid-column: 2;
  grid-row: 2;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row:has(button[data-toggle-target]) > button[type="submit"] {
  grid-column: 1 / -1;
  grid-row: 3;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .button {
  min-height: 42px;
  border-radius: 14px;
  font-size: 14px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-section-toolbar {
  margin: 4px 0 8px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-section-toolbar h2 {
  font-size: 24px;
  line-height: 1.08;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-money-strip {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 0 0 6px;
  scroll-snap-type: x mandatory;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-money-strip .stat-card {
  flex: 0 0 136px;
  min-height: 64px;
  padding: 10px 12px;
  scroll-snap-align: start;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-money-strip .stat-card span {
  font-size: 10px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-money-strip .stat-card strong {
  font-size: 17px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) {
  display: block;
  min-width: 0 !important;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) thead {
  display: none;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) tbody {
  display: grid;
  gap: 10px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) tr {
  display: grid;
  gap: 0;
  padding: 0;
  border: 1px solid #dbe7f5;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 26px rgba(15, 35, 70, 0.06);
  overflow: hidden;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) td {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  padding: 10px 14px;
  border-bottom: 1px solid #edf2f8;
  font-size: 14px;
  line-height: 1.25;
  text-align: right;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) td::before {
  content: attr(data-label);
  flex: 0 0 auto;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
  text-align: left;
  white-space: nowrap;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) td:first-child {
  display: grid;
  justify-content: stretch;
  gap: 4px;
  padding: 14px;
  background: #f8fbff;
  text-align: left;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) td:first-child strong {
  font-size: 17px;
  line-height: 1.12;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-table-card .hosting-table:not(.hosting-services-table) td:last-child {
  border-bottom: 0;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table {
  display: block;
  min-width: 0 !important;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table thead {
  display: none;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table tbody {
  display: grid;
  gap: 12px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table tr {
  display: grid;
  gap: 0;
  padding: 0;
  border: 1px solid #dbe7f5;
  border-left: 5px solid #0b63c7;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 30px rgba(15, 35, 70, 0.08);
  overflow: hidden;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table td {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  padding: 10px 14px;
  border-bottom: 1px solid #edf2f8;
  font-size: 14px;
  line-height: 1.25;
  text-align: right;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table td::before {
  content: attr(data-label);
  flex: 0 0 auto;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
  text-align: left;
  white-space: nowrap;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table td:first-child {
  display: grid;
  justify-content: stretch;
  gap: 4px;
  padding: 15px 14px 13px;
  background: #f8fbff;
  text-align: left;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table td:first-child::before {
  margin-bottom: 2px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table td:first-child strong {
  font-size: 18px;
  line-height: 1.1;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table td:first-child .muted-small {
  font-size: 13px;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table td:last-child {
  border-bottom: 0;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-renewal-cell {
  display: grid;
  grid-template-columns: auto 1fr;
  justify-items: end;
  text-align: right;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-renewal-cell::before {
  grid-row: 1 / span 3;
  justify-self: start;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-renewal-cell .muted-small {
  text-align: right;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-payment-badge,
body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .status-badge {
  white-space: nowrap;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-service-status-cell {
  justify-items: stretch;
  max-width: none;
  text-align: left;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-offer-summary {
  align-items: flex-start;
  width: 100%;
  margin-left: 0;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-status-line {
  grid-template-columns: 70px minmax(0, 1fr);
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-auto-offer-form {
  width: auto;
  margin: 0;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-auto-offer-form .button,
body.mobile-app-mode.mobile-hosting-entry .hosting-services-table .hosting-status-open-button {
  width: auto;
  min-height: 34px;
  padding: 7px 11px;
}

@media (max-width: 420px) {
  body.mobile-app-mode.mobile-hosting-entry .hosting-hero-compact .hero-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body.mobile-app-mode.mobile-hosting-entry .hosting-tabs-compact a {
    min-height: 46px;
    font-size: 10px;
  }
}

/* v1.3.595 - Hosting mobile filter buttons without :has dependency */
body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row > button[data-toggle-target] {
  grid-column: 1;
  grid-row: 2;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row > a.button-light[href] {
  grid-column: 2;
  grid-row: 2;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row > button[type="submit"] {
  grid-column: 1 / -1;
  grid-row: 3;
}

body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row > button[data-toggle-target],
body.mobile-app-mode.mobile-hosting-entry .hosting-filter-card-compact .hosting-filter-primary-row > a.button-light[href] {
  width: 100%;
  min-height: 46px;
}

/* v1.3.604 - compact superadmin mobile bottom navigation */
@media (max-width: 760px) {
  body.admin-page .mobile-nav {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 6px 8px 8px;
    gap: 4px;
    box-shadow: 0 -10px 24px rgba(15, 23, 42, .08);
  }

  body.admin-page .mobile-nav a {
    min-height: 46px;
    padding: 6px 2px;
    border-radius: 12px;
    gap: 2px;
    font-size: 10.5px;
    line-height: 1.1;
  }

  body.admin-page .mobile-nav a:hover,
  body.admin-page .mobile-nav a:focus-visible {
    color: #0b63c7;
    background: #edf6ff;
  }

  body.admin-page .mobile-nav svg {
    width: 17px;
    height: 17px;
    stroke-width: 2;
  }

  body.admin-page .mobile-nav span {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.admin-page .version-footer {
    bottom: 110px;
  }
}

/* v1.3.606 - tighter superadmin mobile actions and filters */
@media (max-width: 760px) {
  body.admin-page .company-filter-card {
    padding: 14px;
  }

  body.admin-page .company-filter-primary.unified-filter-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  body.admin-page .company-filter-primary.unified-filter-row > .field {
    grid-column: 1 / -1;
  }

  body.admin-page .company-filter-primary.unified-filter-row > .button,
  body.admin-page .company-filter-primary.unified-filter-row > a.button {
    width: 100%;
    min-height: 44px;
    padding: 9px 12px;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.1;
  }

  body.admin-page .company-filter-primary.unified-filter-row > button[data-toggle-target] {
    grid-column: 1 / -1;
    min-height: 42px;
    background: #f8fbff;
  }

  body.admin-page .company-filter-primary.unified-filter-row > button[type="submit"] {
    grid-column: 1;
  }

  body.admin-page .company-filter-primary.unified-filter-row > a.button[href] {
    grid-column: 2;
  }

  body.admin-page .company-card-head {
    gap: 14px;
  }

  body.admin-page .company-card-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
  }

  body.admin-page .company-card-actions .button,
  body.admin-page .company-card-actions .status-toggle {
    width: 100%;
    min-height: 42px;
    padding: 9px 12px;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.1;
  }

  body.admin-page .company-card-actions .button svg,
  body.admin-page .company-filter-primary.unified-filter-row .button svg {
    width: 17px;
    height: 17px;
  }
}

/* v1.3.607 - compact demo company actions on mobile */
@media (max-width: 760px) {
  body.admin-page .demo-company-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
  }

  body.admin-page .demo-company-actions > a.button {
    grid-column: 1 / -1;
  }

  body.admin-page .demo-company-actions form {
    width: 100%;
    min-width: 0;
  }

  body.admin-page .demo-company-actions .button {
    width: 100%;
    min-height: 44px;
    padding: 9px 12px;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.1;
  }

  body.admin-page .demo-company-actions .button svg {
    width: 17px;
    height: 17px;
  }
}

/* v1.3.609 - mobile Superadmin users layout */
@media (max-width: 760px) {
  body.admin-users-page .admin-users-hero {
    grid-template-columns: 1fr;
    align-items: stretch;
    gap: 14px;
    padding: 18px 16px;
    overflow: visible;
  }

  body.admin-users-page .admin-users-hero .roko-start-hero-main {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
  }

  body.admin-users-page .admin-users-hero .icon-box {
    width: 46px;
    height: 46px;
    border-radius: 12px;
  }

  body.admin-users-page .admin-users-hero h2 {
    margin-bottom: 6px;
    font-size: clamp(28px, 8vw, 36px);
    line-height: 1.06;
  }

  body.admin-users-page .admin-users-hero .card-subtitle {
    max-width: none;
    font-size: 12px;
    line-height: 1.34;
  }

  body.admin-users-page .admin-users-hero .roko-start-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
    justify-content: stretch;
  }

  body.admin-users-page .admin-users-hero .roko-start-actions .button {
    width: 100%;
    min-height: 46px;
    padding: 10px 12px;
    justify-content: center;
    border-radius: 8px;
    font-size: 15px;
    line-height: 1.15;
    white-space: nowrap;
  }

  body.admin-users-page .admin-users-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.admin-users-page .admin-users-stats .stat-card {
    min-height: 76px;
    padding: 12px;
    gap: 10px;
  }

  body.admin-users-page .admin-users-stats .icon-box {
    width: 42px;
    height: 42px;
    border-radius: 10px;
  }

  body.admin-users-page .admin-users-stats .stat-card span {
    font-size: 11px;
    line-height: 1.1;
  }

  body.admin-users-page .admin-users-stats .stat-card strong {
    font-size: 24px;
    line-height: 1;
  }

  body.admin-users-page .admin-users-table .table-responsive {
    overflow: visible;
  }

  body.admin-users-page .admin-users-table table,
  body.admin-users-page .admin-users-table thead,
  body.admin-users-page .admin-users-table tbody,
  body.admin-users-page .admin-users-table tr,
  body.admin-users-page .admin-users-table td {
    display: block;
    min-width: 0;
    width: 100%;
  }

  body.admin-users-page .admin-users-table thead {
    display: none;
  }

  body.admin-users-page .admin-users-table tbody {
    display: grid;
    gap: 12px;
  }

  body.admin-users-page .admin-users-table tr {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid #d7e5f4;
    border-radius: 8px;
    background: #fff;
  }

  body.admin-users-page .admin-users-table td {
    display: grid;
    gap: 6px;
    padding: 0;
    border: 0;
  }

  body.admin-users-page .admin-users-table td::before {
    content: attr(data-label);
    color: #64748b;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .02em;
    line-height: 1;
    text-transform: uppercase;
  }

  body.admin-users-page .admin-users-table td[data-label="Korisnik"]::before,
  body.admin-users-page .admin-users-table td.actions::before {
    display: none;
  }

  body.admin-users-page .admin-user-identity {
    min-width: 0;
  }

  body.admin-users-page .admin-users-table .actions {
    display: grid;
    gap: 8px;
  }

  body.admin-users-page .admin-users-table .actions .button,
  body.admin-users-page .admin-user-delete summary {
    width: 100%;
    justify-content: center;
  }

  body.admin-users-page .admin-user-delete > div {
    position: static;
    width: 100%;
    margin-top: 8px;
  }
}

@media (max-width: 390px) {
  body.admin-users-page .admin-users-hero .roko-start-actions {
    grid-template-columns: 1fr;
  }
}

/* v1.3.610 - mobile Superadmin users accordion and maintenance layout */
body.admin-users-page .admin-user-mobile-summary,
body.admin-users-page .admin-user-mobile-toggle {
  display: none;
}

@media (max-width: 760px) {
  body.admin-users-page .admin-users-table tr.admin-user-row:not(.is-mobile-open) td:not([data-label="Korisnik"]) {
    display: none;
  }

  body.admin-users-page .admin-users-table tr.admin-user-row.is-mobile-open td:not([data-label="Korisnik"]) {
    display: grid;
  }

  body.admin-users-page .admin-user-mobile-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
  }

  body.admin-users-page .admin-user-mobile-summary span {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 5px 9px;
    border: 1px solid #d8e6f5;
    border-radius: 999px;
    background: #f4f9ff;
    color: #53657d;
    font-size: 11px;
    font-weight: 900;
    line-height: 1.15;
  }

  body.admin-users-page .admin-user-mobile-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 42px;
    margin-top: 10px;
    padding: 9px 12px;
    border: 1px solid #d7e5f4;
    border-radius: 8px;
    background: #fff;
    color: var(--blue-dark);
    font: inherit;
    font-size: 15px;
    font-weight: 950;
    cursor: pointer;
  }

  body.admin-users-page .admin-user-mobile-toggle svg {
    width: 18px;
    height: 18px;
    transition: transform .18s ease;
  }

  body.admin-users-page .admin-users-table tr.is-mobile-open .admin-user-mobile-toggle svg {
    transform: rotate(180deg);
  }

  .module-reset-page {
    gap: 14px;
    padding-bottom: 126px;
  }

  .module-reset-page .roko-settings-card,
  .module-reset-page .roko-settings-panel {
    padding: 16px;
    overflow: hidden;
  }

  .module-reset-page .table-card-head {
    display: grid;
    grid-template-columns: 1fr;
    align-items: start;
    gap: 12px;
  }

  .module-reset-page .table-card-head h2,
  .module-reset-page .table-card-head h3 {
    max-width: 100%;
    font-size: clamp(25px, 7.5vw, 34px);
    line-height: 1.05;
    overflow-wrap: anywhere;
  }

  .module-reset-page .table-card-head .card-subtitle {
    max-width: 100%;
    font-size: 12px;
    line-height: 1.32;
    overflow-wrap: anywhere;
  }

  .module-reset-page .table-card-head .status-badge {
    justify-self: start;
    max-width: 100%;
    min-height: 36px;
    padding: 8px 12px;
    white-space: normal;
  }

  .module-reset-page .module-reset-selector {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 12px;
  }

  .module-reset-page .module-reset-selector .field {
    min-width: 0;
  }

  .module-reset-page .module-reset-selector select,
  .module-reset-page .module-reset-selector .button {
    width: 100%;
    min-height: 46px;
  }

  .module-reset-page .module-reset-guide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 10px;
  }

  .module-reset-page .module-reset-guide-item {
    min-width: 0;
    padding: 10px;
    border-radius: 8px;
  }

  .module-reset-page .module-reset-guide-item strong {
    font-size: 12px;
    line-height: 1.2;
  }

  .module-reset-page .module-reset-guide-item span {
    margin-top: 4px;
    font-size: 11px;
    line-height: 1.25;
  }

  .module-reset-page .module-reset-scope-note {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .module-reset-page .module-reset-scope-note span {
    align-items: flex-start;
    font-size: 12px;
    line-height: 1.3;
  }

  .module-reset-page .module-reset-total {
    width: 100%;
    min-width: 0;
    padding: 14px;
    text-align: left;
  }

  .module-reset-page .module-reset-total strong {
    font-size: 30px;
  }

  .module-reset-page .module-reset-confirm-grid,
  .module-reset-page .module-reset-backup-row {
    grid-template-columns: 1fr;
  }

  .module-reset-page .module-reset-danger-form .button,
  .module-reset-page .module-reset-backup-actions .button {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 430px) {
  .module-reset-page .module-reset-guide {
    grid-template-columns: 1fr;
  }
}

/* v1.3.611 - mobile maintenance cards */
@media (max-width: 760px) {
  .module-reset-page,
  .module-reset-page * {
    max-width: 100%;
  }

  .module-reset-page .roko-settings-panel .table-card-head {
    gap: 14px;
  }

  .module-reset-page .roko-settings-panel .table-card-head > div:first-child,
  .module-reset-page .roko-settings-panel .table-card-head h2,
  .module-reset-page .roko-settings-panel .table-card-head .card-subtitle {
    min-width: 0;
  }

  .module-reset-page .module-reset-total {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    min-height: 78px;
  }

  .module-reset-page .module-reset-total span {
    font-size: 12px;
    line-height: 1.2;
    white-space: normal;
  }

  .module-reset-page .module-reset-total strong {
    font-size: 34px;
  }

  .module-reset-page .module-reset-scope-note span {
    display: block;
    min-width: 0;
    padding: 12px;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .module-reset-page .module-reset-scope-note span svg {
    float: left;
    width: 20px;
    height: 20px;
    margin: 1px 9px 4px 0;
  }

  .module-reset-page .module-reset-scope-note span strong {
    margin-right: 4px;
  }

  .module-reset-page .roko-settings-panel .table-responsive {
    overflow: visible;
  }

  .module-reset-page .roko-settings-panel table,
  .module-reset-page .roko-settings-panel thead,
  .module-reset-page .roko-settings-panel tbody,
  .module-reset-page .roko-settings-panel tr,
  .module-reset-page .roko-settings-panel td {
    display: block;
    width: 100%;
    min-width: 0;
  }

  .module-reset-page .roko-settings-panel thead {
    display: none;
  }

  .module-reset-page .roko-settings-panel tbody {
    display: grid;
    gap: 8px;
  }

  .module-reset-page .roko-settings-panel tr {
    border: 1px solid #d7e5f4;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
  }

  .module-reset-page .roko-settings-panel td {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 9px 11px;
    border: 0;
    text-align: left;
  }

  .module-reset-page .roko-settings-panel td + td {
    border-top: 1px solid #e5eef8;
  }

  .module-reset-page .roko-settings-panel td::before {
    content: attr(data-label);
    color: #64748b;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .02em;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .module-reset-page .roko-settings-panel td code {
    display: block;
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    font-size: 12px;
    line-height: 1.25;
  }

  .module-reset-page .module-reset-danger-form {
    min-width: 0;
  }

  .module-reset-page .module-reset-danger-form .alert,
  .module-reset-page .module-reset-check {
    overflow-wrap: anywhere;
    word-break: break-word;
  }
}

/* v1.3.612 - mobile Superadmin terms and logs */
@media (max-width: 760px) {
  body.terms-admin-page,
  body.system-logs-page {
    overflow-x: hidden;
  }

  body.terms-admin-page .roko-start-hero,
  body.system-logs-page .system-logs-hero {
    grid-template-columns: 1fr;
    align-items: stretch;
    gap: 14px;
    padding: 16px;
    overflow: hidden;
  }

  body.terms-admin-page .roko-start-hero-main,
  body.system-logs-page .system-logs-hero .roko-start-hero-main {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    width: 100%;
    min-width: 0;
  }

  body.terms-admin-page .roko-start-hero .icon-box,
  body.system-logs-page .system-logs-hero .icon-box {
    width: 44px;
    height: 44px;
  }

  body.terms-admin-page .roko-start-hero h2,
  body.system-logs-page .system-logs-hero h2 {
    max-width: 100%;
    margin: 0 0 5px;
    font-size: clamp(30px, 9vw, 42px);
    line-height: 1.02;
    overflow-wrap: anywhere;
  }

  body.terms-admin-page .roko-start-hero .card-subtitle,
  body.system-logs-page .system-logs-hero .card-subtitle {
    max-width: 100%;
    margin: 0;
    font-size: 13px;
    line-height: 1.32;
    overflow-wrap: anywhere;
  }

  body.terms-admin-page .roko-start-actions,
  body.system-logs-page .system-logs-hero .roko-start-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    justify-content: stretch;
    width: 100%;
  }

  body.system-logs-page .system-logs-hero .roko-start-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.terms-admin-page .roko-start-actions .button,
  body.system-logs-page .system-logs-hero .roko-start-actions .button {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.15;
    white-space: normal;
  }

  body.terms-admin-page .terms-acceptance-stats,
  body.system-logs-page .system-log-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px;
    margin-bottom: 14px;
  }

  body.terms-admin-page .terms-acceptance-stats .stat-card,
  body.system-logs-page .system-log-summary .stat-card {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    min-height: 84px;
    padding: 13px;
    overflow: hidden;
  }

  body.terms-admin-page .terms-acceptance-stats .icon-box,
  body.system-logs-page .system-log-summary .icon-box {
    width: 42px;
    height: 42px;
  }

  body.terms-admin-page .terms-acceptance-stats span,
  body.system-logs-page .system-log-summary span {
    font-size: 11px;
    line-height: 1.14;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  body.terms-admin-page .terms-acceptance-stats strong,
  body.system-logs-page .system-log-summary strong {
    font-size: 28px;
    line-height: 1;
  }

  body.terms-admin-page .terms-acceptance-card,
  body.system-logs-page .system-log-table-card,
  body.system-logs-page .system-log-help,
  body.system-logs-page .system-log-filters {
    overflow: hidden;
  }

  body.terms-admin-page .terms-acceptance-card .table-card-head {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 16px;
  }

  body.terms-admin-page .terms-acceptance-card .table-card-head .pill {
    justify-self: start;
    max-width: 100%;
    white-space: normal;
  }

  body.terms-admin-page .terms-acceptance-filter {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px;
    padding: 0 16px 16px;
  }

  body.terms-admin-page .terms-acceptance-filter .field:first-child {
    grid-column: 1 / -1;
  }

  body.terms-admin-page .terms-acceptance-filter .button {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
  }

  body.terms-admin-page .terms-acceptance-list {
    padding: 0 16px 16px;
  }

  body.terms-admin-page .terms-acceptance-item summary {
    grid-template-columns: minmax(0, 1fr) 22px;
    gap: 10px;
    padding: 13px;
  }

  body.terms-admin-page .terms-acceptance-item summary .terms-acceptance-summary-cell {
    display: none;
  }

  body.terms-admin-page .terms-acceptance-person strong {
    font-size: 15px;
    line-height: 1.18;
  }

  body.terms-admin-page .terms-acceptance-details {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 10px;
  }

  body.terms-admin-page .terms-admin-section {
    padding: 16px;
    overflow: hidden;
  }

  body.terms-admin-page .terms-admin-section .grid-2 {
    grid-template-columns: 1fr;
  }

  body.system-logs-page .system-log-help {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
  }

  body.system-logs-page .system-log-help h3 {
    margin-bottom: 4px;
    font-size: 19px;
    line-height: 1.1;
  }

  body.system-logs-page .system-log-help p {
    font-size: 13px;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  body.system-logs-page .roko-admin-filter-primary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.system-logs-page .roko-admin-filter-search,
  body.system-logs-page .roko-admin-filter-toggle,
  body.system-logs-page .system-log-filter-actions {
    grid-column: 1 / -1;
  }

  body.system-logs-page .system-log-filter-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body.system-logs-page .system-log-filter-actions .button {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.15;
    white-space: normal;
  }

  body.system-logs-page .system-log-filter-actions button[name="download_log"] {
    grid-column: 1 / -1;
  }

  body.system-logs-page .system-log-table-head {
    display: grid;
    gap: 6px;
    padding: 16px 16px 0;
  }

  body.system-logs-page .system-log-table-head h2 {
    font-size: 28px;
    line-height: 1.05;
  }

  body.system-logs-page .system-log-table-head .card-subtitle {
    font-size: 12px;
    line-height: 1.35;
  }

  body.system-logs-page .system-log-table-card table,
  body.system-logs-page .system-log-table-card thead,
  body.system-logs-page .system-log-table-card tbody,
  body.system-logs-page .system-log-table-card tr,
  body.system-logs-page .system-log-table-card td {
    display: block;
    width: 100%;
    min-width: 0;
  }

  body.system-logs-page .system-log-table-card thead {
    display: none;
  }

  body.system-logs-page .system-log-table-card tbody {
    display: grid;
    gap: 10px;
    padding: 12px;
  }

  body.system-logs-page .system-log-table-card tr {
    border: 1px solid #d7e5f4;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
  }

  body.system-logs-page .system-log-table-card td {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 10px 12px;
    border: 0;
    text-align: left;
  }

  body.system-logs-page .system-log-table-card td + td {
    border-top: 1px solid #e5eef8;
  }

  body.system-logs-page .system-log-table-card td::before {
    content: attr(data-label);
    grid-row: 1 / span 12;
    color: #64748b;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .02em;
    line-height: 1.2;
    text-transform: uppercase;
  }

  body.system-logs-page .system-log-table-card td > * {
    grid-column: 2;
    min-width: 0;
    overflow-wrap: anywhere;
  }

  body.system-logs-page .system-log-badge {
    min-width: 0;
    width: max-content;
    max-width: 100%;
    padding: 6px 9px;
    font-size: 12px;
  }

  body.system-logs-page .system-log-details pre {
    max-height: 220px;
    font-size: 11px;
  }
}

@media (max-width: 420px) {
  body.system-logs-page .system-logs-hero .roko-start-actions {
    grid-template-columns: 1fr;
  }

  body.terms-admin-page .terms-acceptance-stats,
  body.system-logs-page .system-log-summary {
    gap: 8px;
  }

  body.terms-admin-page .terms-acceptance-stats .stat-card,
  body.system-logs-page .system-log-summary .stat-card {
    grid-template-columns: 36px minmax(0, 1fr);
    min-height: 78px;
    padding: 11px;
  }

  body.terms-admin-page .terms-acceptance-stats .icon-box,
  body.system-logs-page .system-log-summary .icon-box {
    width: 36px;
    height: 36px;
  }
}

/* v1.3.628 - Smjestaj PDV obracun drawer i kontrolni pregled */
.report-builder-shell {
  align-items: stretch;
  justify-content: flex-end;
}

.report-builder-shell .unit-drawer-scrim {
  position: fixed;
  inset: 0;
}

.report-builder-shell .report-builder {
  width: min(1060px, calc(100vw - 28px));
  flex: 0 0 min(1060px, calc(100vw - 28px));
  height: 100vh;
  max-height: 100vh;
  margin: 0;
  border-radius: 18px 0 0 18px;
  overflow-y: auto;
  box-shadow: -28px 0 70px rgba(15, 23, 42, 0.22);
}

.report-builder .ep-picker-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
}

.report-period-section,
.report-reservation-preview-section,
.report-builder .ep-picker-actions {
  grid-column: 1 / -1;
}

.report-month-select-field select {
  min-height: 48px;
  font-size: 17px;
  font-weight: 800;
}

.report-reservation-preview-section {
  display: grid;
  gap: 14px;
}

.report-reservation-preview-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.report-reservation-preview-head h3 {
  margin: 0;
}

.report-reservation-preview-table-wrap {
  max-width: 100%;
  overflow-x: hidden;
  border: 1px solid #d8e6f6;
  border-radius: 8px;
  background: #fff;
}

.report-reservation-preview-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.report-reservation-preview-table th,
.report-reservation-preview-table td {
  vertical-align: top;
}

.report-reservation-preview-table th:nth-child(1),
.report-reservation-preview-table td:nth-child(1) {
  width: 20%;
}

.report-reservation-preview-table th:nth-child(2),
.report-reservation-preview-table td:nth-child(2) {
  width: 13%;
}

.report-reservation-preview-table th:nth-child(3),
.report-reservation-preview-table td:nth-child(3) {
  width: 17%;
}

.report-reservation-preview-table th:nth-child(4),
.report-reservation-preview-table td:nth-child(4) {
  width: 17%;
}

.report-reservation-preview-table th:nth-child(5),
.report-reservation-preview-table td:nth-child(5),
.report-reservation-preview-table th:nth-child(6),
.report-reservation-preview-table td:nth-child(6),
.report-reservation-preview-table th:nth-child(7),
.report-reservation-preview-table td:nth-child(7) {
  width: 11%;
  text-align: right;
  white-space: nowrap;
}

.report-reservation-preview-table .detail-cell {
  display: grid;
  gap: 3px;
  text-align: left;
  overflow-wrap: anywhere;
}

.report-reservation-preview-table .detail-cell span {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
}

.report-reservation-preview-table .money-cell {
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.commission-vat-report-page .report-detail-table {
  width: 100% !important;
  table-layout: fixed !important;
  font-size: 6.8pt !important;
  line-height: 1.24 !important;
}

.commission-vat-report-page .report-detail-table .col-row-number {
  width: 5% !important;
}

.commission-vat-report-page .report-detail-table .col-reservation {
  width: 27% !important;
}

.commission-vat-report-page .report-detail-table .col-invoice {
  width: 16% !important;
}

.commission-vat-report-page .report-detail-table .col-period {
  width: 29% !important;
}

.commission-vat-report-page .report-detail-table .col-amounts {
  width: 23% !important;
}

.commission-vat-report-page .report-detail-table th,
.commission-vat-report-page .report-detail-table td {
  vertical-align: top !important;
}

.commission-vat-report-page .report-detail-table th:nth-child(1),
.commission-vat-report-page .report-detail-table td:nth-child(1) {
  text-align: center !important;
}

.commission-vat-report-page .report-detail-table td:nth-child(2),
.commission-vat-report-page .report-detail-table td:nth-child(3),
.commission-vat-report-page .report-detail-table td:nth-child(4) {
  overflow-wrap: anywhere;
}

.commission-vat-report-page .report-detail-table th:nth-child(2),
.commission-vat-report-page .report-detail-table th:nth-child(3),
.commission-vat-report-page .report-detail-table th:nth-child(4),
.commission-vat-report-page .report-detail-table td:nth-child(2),
.commission-vat-report-page .report-detail-table td:nth-child(3),
.commission-vat-report-page .report-detail-table td:nth-child(4),
.commission-vat-report-page .report-detail-table td:nth-child(2) *,
.commission-vat-report-page .report-detail-table td:nth-child(3) *,
.commission-vat-report-page .report-detail-table td:nth-child(4) * {
  text-align: left !important;
}

.commission-vat-report-page .report-detail-table th:nth-child(5),
.commission-vat-report-page .report-detail-table td:nth-child(5) {
  text-align: left !important;
}

.commission-vat-report-page .report-detail-table .invoice-reference-cell {
  vertical-align: top !important;
  font-variant-numeric: tabular-nums;
}

.commission-vat-report-page .report-detail-table .invoice-reference-item {
  display: block;
  white-space: nowrap;
}

.commission-vat-report-page .report-detail-table .invoice-reference-item + .invoice-reference-item {
  margin-top: 0.8mm;
}

.commission-vat-report-page .report-detail-table .invoice-reference-item strong {
  color: #07192f;
  font-size: 6.7pt;
  font-weight: 900;
}

.commission-vat-report-page .report-detail-table .invoice-reference-item small {
  display: block;
  margin-top: 0.4mm;
  color: #a02a1f;
  font-size: 5.8pt;
  font-weight: 800;
}

.commission-vat-report-page .report-detail-table .invoice-reference-empty {
  color: #7b8798;
  font-weight: 700;
}

.commission-vat-report-page .report-detail-table .detail-cell span {
  display: block;
  margin-top: 2px;
}

.commission-vat-report-page .report-detail-table .amount-breakdown-cell {
  padding: 1.2mm 1.1mm !important;
}

.commission-vat-report-page .report-detail-table .amount-breakdown-cell span {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 2.5mm !important;
  align-items: baseline !important;
  white-space: nowrap !important;
  font-variant-numeric: tabular-nums;
}

.commission-vat-report-page .report-detail-table .amount-breakdown-cell span + span {
  margin-top: 0.7mm !important;
}

.commission-vat-report-page .report-detail-table .amount-breakdown-cell em {
  color: #52627a !important;
  font-style: normal !important;
  font-weight: 800 !important;
}

.commission-vat-report-page .report-detail-table .amount-breakdown-cell strong {
  color: #07192f !important;
  font-weight: 900 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Screen VAT preview: keep both comparison tables readable.
   Print and PDF retain their separately verified dimensions. */
@media screen {
  /* In the portal preview, keep the amount breakdown at the same visual
     scale as the neighboring reservation details. Print keeps its own rules. */
  .report-preview-shell .commission-vat-report-page .report-detail-table .amount-breakdown-cell em,
  .report-preview-shell .commission-vat-report-page .report-detail-table .amount-breakdown-cell strong {
    font-size: 6.8pt !important;
    line-height: 1.24 !important;
  }

  .report-preview-shell .commission-vat-report-page .report-print-mini-table th,
  .report-preview-shell .commission-vat-report-page .report-print-mini-table td {
    box-sizing: border-box;
    min-width: 0;
  }

  .report-preview-shell .commission-vat-report-page .report-print-mini-table th:first-child,
  .report-preview-shell .commission-vat-report-page .report-print-mini-table td:first-child {
    width: 43% !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }

  .report-preview-shell .commission-vat-report-page .report-print-mini-table th:nth-child(2),
  .report-preview-shell .commission-vat-report-page .report-print-mini-table td:nth-child(2) {
    width: 10% !important;
    padding-inline: 0.7mm !important;
    white-space: nowrap !important;
  }

  .report-preview-shell .commission-vat-report-page .report-print-mini-table th:nth-child(3),
  .report-preview-shell .commission-vat-report-page .report-print-mini-table td:nth-child(3) {
    width: 24% !important;
  }

  .report-preview-shell .commission-vat-report-page .report-print-mini-table th:nth-child(4),
  .report-preview-shell .commission-vat-report-page .report-print-mini-table td:nth-child(4) {
    width: 23% !important;
  }

  .report-preview-shell .commission-vat-report-page .report-print-mini-table th:nth-child(3),
  .report-preview-shell .commission-vat-report-page .report-print-mini-table td:nth-child(3),
  .report-preview-shell .commission-vat-report-page .report-print-mini-table th:nth-child(4),
  .report-preview-shell .commission-vat-report-page .report-print-mini-table td:nth-child(4) {
    padding-inline: 1mm !important;
    white-space: nowrap !important;
    font-variant-numeric: tabular-nums;
  }
}

@media (max-width: 900px) {
  .report-builder-shell .report-builder {
    width: 100vw;
    border-radius: 0;
  }

  .report-builder .ep-picker-form {
    grid-template-columns: 1fr;
  }

  .report-reservation-preview-section,
  .report-builder .ep-picker-actions {
    grid-column: auto;
  }

  .report-month-control {
    grid-template-columns: 46px minmax(0, 1fr) 46px;
  }

  .report-reservation-preview-table {
    min-width: 0;
    table-layout: auto;
  }

  .report-reservation-preview-table thead {
    display: none;
  }

  .report-reservation-preview-table tbody,
  .report-reservation-preview-table tr,
  .report-reservation-preview-table td {
    display: block;
    width: 100% !important;
  }

  .report-reservation-preview-table tr {
    padding: 12px 14px;
    border-bottom: 1px solid #d8e6f6;
  }

  .report-reservation-preview-table tr:last-child {
    border-bottom: 0;
  }

  .report-reservation-preview-table td {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 8px;
    border: 0;
    padding: 5px 0;
    text-align: left;
    white-space: normal;
  }

  .report-reservation-preview-table td::before {
    content: attr(data-label);
    color: #5f6f86;
    font-size: 11px;
    font-weight: 900;
    line-height: 1.25;
    text-transform: uppercase;
  }

  .report-reservation-preview-table .report-preview-money-cell {
    justify-items: end;
    text-align: right;
  }

  .report-reservation-preview-table .report-preview-money-cell::before {
    justify-self: start;
    text-align: left;
  }
}
/* PDV report drawer and reservation preview */
.report-builder-shell {
    position: fixed;
    inset: 0;
    z-index: 2200;
    display: flex;
    align-items: stretch !important;
    justify-content: flex-end !important;
    padding: 0 !important;
    background: transparent;
}

.report-builder-shell .unit-drawer-scrim {
    position: fixed;
    inset: 0;
    width: auto;
    height: auto;
    background: rgba(15, 23, 42, .56);
}

.report-builder-shell .report-builder {
    position: relative;
    z-index: 1;
    width: min(900px, calc(100vw - 28px));
    max-width: 100%;
    height: 100dvh;
    max-height: 100dvh;
    margin: 0;
    border-radius: 0;
    overflow-y: auto;
    overflow-x: hidden;
    background: #fff;
    border-left: 1px solid var(--line);
    box-shadow: -28px 0 70px rgba(15, 23, 42, .28);
}

.report-reservation-preview-table-wrap {
    width: 100%;
    overflow-x: hidden;
    border: 1px solid #d8e6f7;
    border-radius: 14px;
    background: #fff;
}

.report-reservation-preview-table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
    border-collapse: collapse;
}

.report-reservation-preview-table .report-res-col-reservation {
    width: 20%;
}

.report-reservation-preview-table .report-res-col-invoice {
    width: 13%;
}

.report-reservation-preview-table .report-res-col-stay {
    width: 17%;
}

.report-reservation-preview-table .report-res-col-payment {
    width: 17%;
}

.report-reservation-preview-table .report-res-col-money {
    width: 11%;
}

.report-reservation-preview-table th,
.report-reservation-preview-table td {
    display: table-cell;
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
}

.report-reservation-preview-table td.detail-cell {
    display: table-cell;
}

.report-reservation-preview-table th:nth-child(5),
.report-reservation-preview-table th:nth-child(6),
.report-reservation-preview-table th:nth-child(7),
.report-reservation-preview-table td:nth-child(5),
.report-reservation-preview-table td:nth-child(6),
.report-reservation-preview-table td:nth-child(7) {
    text-align: right;
}

.report-reservation-preview-table thead {
    display: table-header-group;
}

.report-reservation-preview-table tbody {
    display: table-row-group;
}

.report-reservation-preview-table tr {
    display: table-row;
}

.report-reservation-preview-table .detail-cell {
    text-align: left;
}

.report-reservation-preview-table .detail-cell span {
    display: block;
    line-height: 1.35;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
}

.report-reservation-preview-table .report-preview-reservation-cell strong {
    display: block;
    margin-bottom: 5px;
    color: #0b1930;
    line-height: 1.2;
}

.report-reservation-preview-table .report-preview-invoice-cell {
    color: #0b1930;
    font-size: 13px;
    font-variant-numeric: tabular-nums;
    font-weight: 900;
}

.report-reservation-preview-table .report-preview-invoice-item {
    display: block;
    white-space: nowrap;
}

.report-reservation-preview-table .report-preview-invoice-item + .report-preview-invoice-item {
    margin-top: 6px;
}

.report-reservation-preview-table .report-preview-invoice-item small {
    display: block;
    margin-top: 2px;
    color: #a02a1f;
    font-size: 11px;
    font-weight: 800;
}

.report-reservation-preview-table .report-preview-invoice-empty {
    color: #8491a3;
    font-weight: 800;
}

.report-reservation-preview-table .report-preview-period-cell,
.report-reservation-preview-table .report-preview-payment-cell {
    color: #52637a;
    font-size: 13px;
    font-weight: 800;
}

.report-reservation-preview-table .detail-cell strong {
    font-weight: 900;
}

.report-date-range {
    display: inline-flex !important;
    align-items: center;
    gap: 5px;
    flex-wrap: nowrap;
}

.report-nowrap,
.report-date-range .report-nowrap {
    white-space: nowrap !important;
}

.report-date-separator {
    color: #8a9ab0;
    white-space: nowrap !important;
}

.report-reservation-preview-table .money-cell {
    text-align: right;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

@media (max-width: 900px) {
    .report-builder-shell .report-builder {
        width: 100vw;
        border-radius: 0;
    }

    .report-reservation-preview-table-wrap {
        overflow-x: visible;
        border: 0;
        background: transparent;
    }

    .report-reservation-preview-table {
        min-width: 0;
    }

    .report-reservation-preview-table thead,
    .report-reservation-preview-table colgroup {
        display: none;
    }

    .report-reservation-preview-table,
    .report-reservation-preview-table tbody,
    .report-reservation-preview-table tr,
    .report-reservation-preview-table td {
        display: block;
        width: 100%;
    }

    .report-reservation-preview-table tr {
        border: 1px solid #d8e6f7;
        border-radius: 14px;
        padding: 10px 12px;
        margin: 0 0 10px;
        background: #fff;
    }

    .report-reservation-preview-table td {
        display: grid;
        grid-template-columns: 112px minmax(0, 1fr);
        gap: 10px;
        border: 0;
        padding: 8px 0;
        text-align: left;
    }

    .report-reservation-preview-table td.detail-cell {
        display: grid;
    }

    .report-reservation-preview-table td::before {
        content: attr(data-label);
        font-weight: 800;
        color: #5f6f86;
        text-transform: uppercase;
        font-size: .72rem;
    }

    .report-reservation-preview-table .money-cell {
        text-align: left;
        white-space: nowrap;
    }
}

/* v1.3.637 - izolirani ispis knjige gostiju */
body.guest-print-window {
    margin: 0;
    padding: 24px;
    background: #f3f5f8;
}

body.guest-print-window .guest-print-window-wrap {
    width: min(1020px, 100%);
    margin: 0 auto;
    background: #fff;
}

body.guest-print-window .guest-print-page {
    box-shadow: none;
}

@media print {
    html.guest-print-root,
    body.guest-print-window,
    body.print-guestbook-only {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        background: #fff !important;
    }

    body.print-guestbook-only > *:not(#print-document-host) {
        display: none !important;
    }

    body.guest-print-window *,
    body.guest-print-window .print-window-wrap,
    body.guest-print-window .print-window-wrap * {
        visibility: visible !important;
    }

    body.guest-print-window .guest-print-window-wrap,
    body.print-guestbook-only #print-document-host {
        position: static !important;
        inset: auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        background: #fff !important;
    }

    body.guest-print-window .guest-print-page,
    body.print-guestbook-only #print-document-host .guest-print-page {
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 10mm 8mm !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
        color: #0f172a !important;
        background: #fff !important;
    }

    body.guest-print-window .guest-print-head,
    body.print-guestbook-only #print-document-host .guest-print-head,
    body.guest-print-window .guest-print-title,
    body.print-guestbook-only #print-document-host .guest-print-title {
        display: flex !important;
        justify-content: space-between !important;
        gap: 10mm !important;
    }

    body.guest-print-window .guest-print-head,
    body.print-guestbook-only #print-document-host .guest-print-head {
        align-items: flex-start !important;
        padding-bottom: 7mm !important;
        border-bottom: .3mm solid #dce7f3 !important;
    }

    body.guest-print-window .guest-print-logo,
    body.print-guestbook-only #print-document-host .guest-print-logo {
        width: 45mm !important;
        max-width: 45mm !important;
        max-height: 30mm !important;
        object-fit: contain !important;
    }

    body.guest-print-window .guest-print-company,
    body.print-guestbook-only #print-document-host .guest-print-company {
        text-align: right !important;
        font-size: 8.5pt !important;
        line-height: 1.25 !important;
    }

    body.guest-print-window .guest-print-title,
    body.print-guestbook-only #print-document-host .guest-print-title {
        align-items: flex-end !important;
        margin: 7mm 0 6mm !important;
    }

    body.guest-print-window .guest-print-title h2,
    body.print-guestbook-only #print-document-host .guest-print-title h2 {
        margin: 0 0 2mm !important;
        font-size: 16pt !important;
        line-height: 1.15 !important;
    }

    body.guest-print-window .guest-print-title > div:last-child,
    body.print-guestbook-only #print-document-host .guest-print-title > div:last-child {
        text-align: right !important;
    }

    body.guest-print-window .guest-print-table,
    body.print-guestbook-only #print-document-host .guest-print-table {
        width: 100% !important;
        table-layout: fixed !important;
        border-collapse: collapse !important;
        font-size: 7.8pt !important;
        line-height: 1.25 !important;
    }

    body.guest-print-window .guest-print-table thead,
    body.print-guestbook-only #print-document-host .guest-print-table thead {
        display: table-header-group !important;
    }

    body.guest-print-window .guest-print-table tr,
    body.print-guestbook-only #print-document-host .guest-print-table tr {
        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }

    body.guest-print-window .guest-print-table th,
    body.guest-print-window .guest-print-table td,
    body.print-guestbook-only #print-document-host .guest-print-table th,
    body.print-guestbook-only #print-document-host .guest-print-table td {
        padding: 2.4mm 1.5mm !important;
        border-bottom: .25mm solid #dce7f3 !important;
        text-align: left !important;
        vertical-align: top !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    body.guest-print-window .guest-print-table th,
    body.print-guestbook-only #print-document-host .guest-print-table th {
        font-size: 6.6pt !important;
        background: #f4f7fb !important;
        color: #53647d !important;
    }

    body.guest-print-window .guest-print-company span,
    body.guest-print-window .guest-print-title p,
    body.guest-print-window .guest-print-title span,
    body.guest-print-window .guest-print-table span,
    body.print-guestbook-only #print-document-host .guest-print-company span,
    body.print-guestbook-only #print-document-host .guest-print-title p,
    body.print-guestbook-only #print-document-host .guest-print-title span,
    body.print-guestbook-only #print-document-host .guest-print-table span {
        font-size: 7.2pt !important;
        line-height: 1.2 !important;
        color: #53647d !important;
    }

    body.guest-print-window .guest-print-table th:nth-child(1),
    body.guest-print-window .guest-print-table td:nth-child(1),
    body.print-guestbook-only #print-document-host .guest-print-table th:nth-child(1),
    body.print-guestbook-only #print-document-host .guest-print-table td:nth-child(1) {
        width: 26% !important;
    }

    body.guest-print-window .guest-print-table th:nth-child(2),
    body.guest-print-window .guest-print-table td:nth-child(2),
    body.print-guestbook-only #print-document-host .guest-print-table th:nth-child(2),
    body.print-guestbook-only #print-document-host .guest-print-table td:nth-child(2) {
        width: 17% !important;
    }

    body.guest-print-window .guest-print-table th:nth-child(3),
    body.guest-print-window .guest-print-table td:nth-child(3),
    body.print-guestbook-only #print-document-host .guest-print-table th:nth-child(3),
    body.print-guestbook-only #print-document-host .guest-print-table td:nth-child(3) {
        width: 17% !important;
    }

    body.guest-print-window .guest-print-table th:nth-child(4),
    body.guest-print-window .guest-print-table td:nth-child(4),
    body.print-guestbook-only #print-document-host .guest-print-table th:nth-child(4),
    body.print-guestbook-only #print-document-host .guest-print-table td:nth-child(4) {
        width: 20% !important;
    }

    body.guest-print-window .guest-print-table th:nth-child(5),
    body.guest-print-window .guest-print-table td:nth-child(5),
    body.print-guestbook-only #print-document-host .guest-print-table th:nth-child(5),
    body.print-guestbook-only #print-document-host .guest-print-table td:nth-child(5) {
        width: 20% !important;
    }
}

/* v1.3.640 - Roko UI documents overview, sorting and reservation handoff */
.documents-hero {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(360px, auto) auto;
  gap: 14px;
  align-items: stretch;
  margin-bottom: 12px;
  padding: 18px 20px;
  border: 1px solid #d8e7f7;
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: linear-gradient(135deg, #ffffff 0%, #f6faff 100%);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.04);
}

.documents-hero-main {
  display: grid;
  gap: 5px;
  align-content: center;
  min-width: 0;
}

.documents-hero-main h2 {
  margin: 0;
  color: var(--ink);
  font-size: 26px;
  line-height: 1.08;
  letter-spacing: 0;
}

.documents-hero-main p:not(.eyebrow) {
  max-width: 620px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.documents-hero-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(112px, 1fr));
  gap: 10px;
  align-items: stretch;
}

.documents-hero-stats article {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #d9e8f8;
  border-radius: 8px;
  background: #ffffff;
}

.documents-hero-stats p {
  margin: 0 0 2px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.documents-hero-stats strong {
  display: block;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.documents-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  align-content: center;
  align-items: center;
  min-width: 240px;
}

.documents-table tbody tr[data-row-href] {
  cursor: pointer;
}

.documents-table tbody tr[data-row-href]:hover td {
  background: #f8fbff;
}

.document-sort-heading {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  color: inherit;
  text-decoration: none;
}

.document-sort-heading span {
  color: var(--blue);
  font-size: 12px;
}

.document-title-link {
  display: inline-flex;
  color: var(--ink);
  text-decoration: none;
}

.document-title-link:hover {
  color: var(--blue);
}

.documents-table .document-row-meta {
  display: block;
  margin-top: 4px;
}

.document-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 8px;
}

.document-preview-link {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.document-preview-link svg {
  width: 14px;
  height: 14px;
}

.document-preview-link:hover {
  text-decoration: underline;
}

.document-row-delete-form {
  display: inline-flex;
  margin: 0;
}

.document-inline-delete {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 0;
  border: 0;
  background: transparent;
  color: var(--danger);
  padding: 0;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.document-inline-delete svg {
  width: 14px;
  height: 14px;
}

.document-inline-delete:hover {
  text-decoration: underline;
}

.reservation-document-context {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 0 20px 14px;
  border: 1px solid #cfe2f7;
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #f8fbff;
  padding: 12px 14px;
}

.reservation-document-context-main {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.reservation-document-context-main span,
.reservation-document-context-main small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.reservation-document-context-main span {
  color: var(--blue);
  text-transform: uppercase;
}

.reservation-document-context-main strong {
  color: var(--ink);
  font-size: 17px;
  font-weight: 950;
}

.reservation-document-context-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.reservation-document-context-actions .button {
  min-height: 38px;
  padding: 8px 11px;
}

@media (max-width: 900px) {
  .reservation-document-context {
    grid-template-columns: 1fr;
    margin: 0 14px 12px;
  }

  .reservation-document-context-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 1240px) {
  .documents-hero {
    grid-template-columns: 1fr;
  }

  .documents-hero-actions {
    justify-content: flex-start;
    min-width: 0;
  }
}

@media (max-width: 720px) {
  .documents-hero {
    padding: 14px;
  }

  .documents-hero-main h2 {
    font-size: 22px;
  }

  .documents-hero-stats {
    grid-template-columns: 1fr;
  }

  .documents-hero-actions .button {
    flex: 1 1 100%;
    justify-content: center;
  }
}

/* v1.3.641 - finance overview as operational Roko dashboard */
.finance-ops-hero {
  display: grid;
  grid-template-columns: minmax(260px, 0.86fr) minmax(520px, 1.35fr) minmax(260px, 0.7fr);
  gap: 14px;
  align-items: stretch;
  margin: 0 0 12px;
  padding: 16px;
  border: 1px solid #d8e7f7;
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: linear-gradient(135deg, #fff 0%, #f7fbff 100%);
  box-shadow: 0 12px 28px rgba(15, 23, 42, .04);
}

.finance-ops-main {
  display: grid;
  gap: 6px;
  align-content: center;
  min-width: 0;
}

.finance-ops-main h2,
.finance-ops-main p {
  margin: 0;
}

.finance-ops-main h2 {
  color: var(--ink);
  font-size: 26px;
  line-height: 1.1;
  letter-spacing: 0;
}

.finance-ops-main p:not(.eyebrow) {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.finance-ops-main .status-badge {
  justify-self: start;
  margin-top: 4px;
  white-space: normal;
}

.finance-ops-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 10px;
}

.finance-ops-kpis article {
  display: grid;
  align-content: center;
  gap: 4px;
  min-width: 0;
  min-height: 92px;
  padding: 12px;
  border: 1px solid #dbe9f7;
  border-radius: 8px;
  background: #fff;
}

.finance-ops-kpis span,
.finance-flow-head span,
.finance-flow-legend span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.finance-ops-kpis strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.finance-ops-kpis small,
.finance-flow-head small {
  color: #5f7086;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
}

.finance-ops-kpis article.is-warning {
  border-color: #f8d38c;
  background: #fffbf1;
}

.finance-ops-kpis article.is-ok,
.finance-ops-kpis article.is-net {
  border-color: #bfe8d2;
  background: #f3fff8;
}

.finance-ops-kpis article.is-expected,
.finance-ops-kpis article.is-projected {
  border-color: #f8d38c;
  background: #fffbf1;
}

.finance-flow-card {
  display: grid;
  align-content: center;
  gap: 12px;
  min-width: 0;
  padding: 12px;
  border: 1px solid #dbe9f7;
  border-radius: 8px;
  background: #fff;
}

.finance-flow-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.finance-flow-head strong {
  display: block;
  color: var(--ink);
  font-size: 19px;
  line-height: 1.1;
}

.finance-flow-bar {
  display: flex;
  width: 100%;
  height: 14px;
  overflow: hidden;
  border-radius: 999px;
  background: #edf3fb;
}

.finance-flow-bar span {
  display: block;
  min-width: 4px;
}

.finance-flow-bar .is-paid,
.finance-flow-legend .is-paid {
  background: #0b63c7;
}

.finance-flow-bar .is-open,
.finance-flow-legend .is-open {
  background: #f59e0b;
}

.finance-flow-bar .is-cost,
.finance-flow-legend .is-cost {
  background: #ef4444;
}

.finance-flow-bar .is-net,
.finance-flow-legend .is-net {
  background: #059669;
}

.finance-flow-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
}

.finance-flow-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  text-transform: none;
}

.finance-flow-legend i {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 999px;
}

.finance-action-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 14px;
}

.finance-action-strip a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 64px;
  padding: 12px;
  border: 1px solid #dbe9f7;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-decoration: none;
}

.finance-action-strip a:hover {
  border-color: #afcbe8;
  background: #f7fbff;
}

.finance-action-strip svg {
  flex: 0 0 auto;
  color: var(--blue);
}

.finance-action-strip span {
  display: grid;
  gap: 2px;
}

.finance-action-strip strong {
  font-size: 15px;
  line-height: 1.15;
}

.finance-action-strip small {
  color: var(--muted);
  font-weight: 800;
}

.finance-detail-summary {
  margin: 0 0 16px;
  border: 1px solid #dbe9f7;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.finance-detail-summary > summary {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 22px;
  gap: 12px;
  align-items: center;
  min-height: 62px;
  padding: 12px 14px;
  cursor: pointer;
  list-style: none;
}

.finance-detail-summary > summary::-webkit-details-marker {
  display: none;
}

.finance-detail-summary > summary > span {
  display: inline-grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 8px;
  color: var(--blue);
  background: #eef7ff;
}

.finance-detail-summary > summary strong,
.finance-detail-summary > summary small {
  display: block;
}

.finance-detail-summary > summary strong {
  color: var(--ink);
  font-size: 15px;
}

.finance-detail-summary > summary small {
  color: var(--muted);
  font-weight: 800;
}

.finance-detail-summary > summary > svg {
  color: var(--muted);
  transition: transform .16s ease;
}

.finance-detail-summary[open] > summary > svg {
  transform: rotate(180deg);
}

.finance-detail-summary-body {
  padding: 0 12px 12px;
}

.finance-detail-summary .finance-insight-panel {
  margin-top: 0;
}

.finance-invoice-worklist {
  border-left: 4px solid var(--blue);
}

.finance-worklist-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 12px;
}

.finance-worklist-head h2,
.finance-worklist-head p {
  margin: 0;
}

.finance-worklist-table tbody tr[data-row-href] {
  cursor: pointer;
}

.finance-worklist-table tbody tr[data-row-href]:hover td {
  background: #f8fbff;
}

.finance-worklist-title {
  display: inline-flex;
  color: var(--ink);
  text-decoration: none;
}

.finance-worklist-title:hover {
  color: var(--blue);
}

.finance-worklist-actions {
  text-align: right;
}

.finance-worklist-actions .button {
  min-width: 104px;
  justify-content: center;
}

@media (max-width: 1240px) {
  .finance-ops-hero {
    grid-template-columns: 1fr;
  }

  .finance-ops-kpis {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  }
}

@media (max-width: 820px) {
  .finance-action-strip {
    grid-template-columns: 1fr;
  }

  .finance-worklist-head {
    align-items: stretch;
    flex-direction: column;
  }
}

/* v1.3.642 - reservation drawer polish: action menu, clearer summary and live calculation */
.reservation-drawer-actions {
  align-items: center;
  gap: 8px;
}

.reservation-drawer .unit-drawer-head {
  z-index: 6;
}

.reservation-drawer-close {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  border-color: #d7e6f7;
  background: #fff;
  color: var(--ink);
}

.reservation-drawer-close:hover {
  border-color: #b9d3ef;
  background: #f7fbff;
  color: var(--blue);
}

.reservation-action-more {
  position: relative;
}

.reservation-action-more > summary {
  list-style: none;
  cursor: pointer;
}

.reservation-action-more > summary::-webkit-details-marker {
  display: none;
}

.reservation-action-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 40;
  display: grid;
  gap: 6px;
  min-width: 230px;
  padding: 8px;
  border: 1px solid #d7e6f7;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .16);
}

.reservation-action-menu .button {
  width: 100%;
  justify-content: flex-start;
}

.reservation-action-menu .button-danger {
  margin-top: 4px;
  border-color: #fecaca;
  background: #fff5f5;
  color: #b91c1c;
}

.reservation-action-menu .button-danger:hover {
  background: #fee2e2;
  color: #991b1b;
}

.reservation-drawer .unit-drawer-head .reservation-action-menu [form^="generate-offer-"],
.reservation-drawer .unit-drawer-head .reservation-action-menu [form^="generate-invoice-"] {
  display: inline-flex !important;
}

.reservation-drawer-summary {
  align-items: stretch;
}

.reservation-drawer-summary div {
  display: grid;
  align-content: start;
  min-height: 72px;
}

.reservation-calculation-card {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 14px;
  border: 1px solid #cfe4f8;
  border-radius: 8px;
  background: #f8fbff;
}

.reservation-calculation-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.reservation-calculation-head span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.reservation-calculation-head strong {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.2;
}

.reservation-calculation-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.reservation-calculation-list > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  min-height: 48px;
  padding: 10px 12px;
  border: 1px solid #dceaf8;
  border-radius: 8px;
  background: #fff;
}

.reservation-calculation-list dt,
.reservation-calculation-list dd {
  margin: 0;
}

.reservation-calculation-list dt {
  color: #5f7086;
  font-size: 12px;
  font-weight: 900;
}

.reservation-calculation-list dd {
  color: var(--ink);
  font-size: 14px;
  font-weight: 950;
  text-align: right;
  white-space: nowrap;
}

.reservation-calculation-list .is-subtotal {
  border-color: #bcd7f3;
  background: #eef7ff;
}

.reservation-calculation-list .is-total {
  border-color: #bfe8d2;
  background: #f3fff8;
}

.reservation-calculation-list .is-total dd {
  color: #047857;
}

@media (max-width: 900px) {
  .reservation-calculation-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .reservation-drawer-actions {
    justify-content: flex-start;
  }

  .reservation-action-more,
  .reservation-action-more > summary,
  .reservation-action-menu .button {
    width: 100%;
  }

  .reservation-action-menu {
    position: static;
    min-width: 0;
    margin-top: 8px;
    box-shadow: none;
  }

  .reservation-drawer-close {
    margin-left: auto;
  }

  .reservation-calculation-list {
    grid-template-columns: 1fr;
  }
}

/* v1.3.643 - remaining Smjestaj UX polish without changing Roko workflows */
.overview-today-brief {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) repeat(5, minmax(150px, 1fr));
  gap: 10px;
  margin: 0 0 16px;
  padding: 12px;
  border: 1px solid #d8e7f7;
  border-left: 4px solid var(--blue);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .04);
}

.overview-today-brief-head,
.overview-today-brief a {
  min-width: 0;
  min-height: 64px;
  border: 1px solid #dbe9f7;
  border-radius: 8px;
  background: #f8fbff;
  padding: 10px 12px;
}

.overview-today-brief-head {
  display: grid;
  align-content: center;
  gap: 3px;
}

.overview-today-brief-head h3,
.overview-today-brief-head p {
  margin: 0;
}

.overview-today-brief a {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--ink);
  text-decoration: none;
}

.overview-today-brief a:hover {
  border-color: #b9d3ef;
  background: #f1f8ff;
}

.overview-today-brief svg {
  flex: 0 0 auto;
  color: var(--blue);
}

.overview-today-brief strong,
.overview-today-brief small {
  display: block;
}

.overview-today-brief strong {
  color: var(--ink);
  font-size: 20px;
  line-height: 1.05;
}

.overview-today-brief small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
}

.reservation-money-summary {
  display: grid;
  gap: 5px;
  min-width: 210px;
}

.reservation-money-summary span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.reservation-money-summary em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.reservation-money-summary strong {
  color: var(--ink);
  font-size: 13px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.reservation-money-summary .is-zero strong,
.reservation-money-summary strong.amount-paid {
  color: #047857;
}

.reservation-money-summary .is-negative strong {
  color: #dc2626;
}

.reservation-money-summary.is-total {
  min-width: 260px;
}

.reservation-document-pill {
  display: inline-grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 2px 8px;
  align-items: center;
  min-width: 140px;
  padding: 8px 10px;
  border: 1px solid #dbe9f7;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  text-align: left;
  text-decoration: none;
}

.reservation-document-pill:hover {
  border-color: #b9d3ef;
  background: #f7fbff;
}

.reservation-document-pill svg {
  grid-row: 1 / span 2;
  width: 18px;
  height: 18px;
  color: var(--blue);
}

.reservation-document-pill span,
.reservation-document-pill small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.reservation-document-pill span {
  font-weight: 950;
}

.reservation-document-pill small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

.reservation-document-pill.is-missing {
  border-color: #f8d38c;
  background: #fffbf1;
}

.reservation-document-pill.is-missing svg,
.reservation-document-pill.is-missing small {
  color: #b45309;
}

.reservation-drawer-tabs button {
  position: relative;
}

.reservation-tab-state {
  display: inline-grid;
  width: 18px;
  height: 18px;
  place-items: center;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
}

.reservation-drawer-tabs button.is-complete .reservation-tab-state {
  background: #dcfce7;
  color: #047857;
}

.reservation-drawer-tabs button.is-missing .reservation-tab-state {
  background: #fff7ed;
  color: #c2410c;
}

.reservation-drawer .field:has(input[required]) > label::after,
.reservation-drawer .field:has(select[required]) > label::after,
.reservation-drawer .field:has(textarea[required]) > label::after {
  content: " *";
  color: #dc2626;
}

.reservation-validation-alert[hidden] {
  display: none !important;
}

.formatted-input-preview {
  display: block;
  margin-top: 5px;
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
  text-align: right;
}

.finance-invoice-groups {
  display: grid;
  gap: 10px;
}

.finance-invoice-group {
  overflow: hidden;
  border: 1px solid #dbe9f7;
  border-radius: 8px;
  background: #fff;
}

.finance-invoice-group > summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto 20px;
  gap: 10px;
  align-items: center;
  min-height: 54px;
  padding: 10px 12px;
  cursor: pointer;
  list-style: none;
}

.finance-invoice-group > summary::-webkit-details-marker {
  display: none;
}

.finance-invoice-group > summary strong,
.finance-invoice-group > summary small {
  min-width: 0;
}

.finance-invoice-group > summary small {
  color: var(--muted);
  font-weight: 900;
  white-space: nowrap;
}

.finance-invoice-group > summary > svg {
  color: var(--muted);
  transition: transform .16s ease;
}

.finance-invoice-group[open] > summary > svg {
  transform: rotate(180deg);
}

.finance-invoice-group.is-due {
  border-left: 4px solid #f59e0b;
}

.finance-invoice-group.is-active {
  border-left: 4px solid #0b63c7;
}

.finance-invoice-group.is-upcoming {
  border-left: 4px solid #94a3b8;
}

.finance-invoice-group .finance-mini-table-wrap {
  border-top: 1px solid #e4edf8;
}

.invoice-priority-chip {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 950;
}

.invoice-priority-chip.is-due {
  color: #92400e;
  background: #fff3cd;
}

.invoice-priority-chip.is-active {
  color: #075985;
  background: #e0f2fe;
}

.invoice-priority-chip.is-upcoming {
  color: #475569;
  background: #eef2f7;
}

.calendar-booking-months .calendar-booking-bar span,
.calendar-reservation-bar span {
  font-weight: 950;
}

@media (max-width: 1240px) {
  .overview-today-brief {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .overview-today-brief,
  .finance-invoice-group > summary {
    grid-template-columns: 1fr;
  }

  .reservation-document-pill,
  .reservation-money-summary {
    width: 100%;
  }
}

/* v1.3.644 - finance hero overlap guard */
.finance-ops-hero {
  grid-template-columns: minmax(250px, .85fr) minmax(0, 1.55fr);
}

.finance-ops-kpis {
  min-width: 0;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
}

.finance-flow-card {
  grid-column: 1 / -1;
}

@media (min-width: 1700px) {
  .finance-ops-hero {
    grid-template-columns: minmax(260px, .82fr) minmax(0, 1.55fr) minmax(300px, .75fr);
  }

  .finance-flow-card {
    grid-column: auto;
  }
}

/* v1.3.645 - calmer finance hero polish */
.finance-ops-hero {
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.9fr);
  gap: 12px;
  align-items: start;
  padding: 14px;
}

.finance-ops-main {
  align-content: start;
  padding-top: 10px;
}

.finance-ops-main h2 {
  font-size: 24px;
}

.finance-ops-kpis {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  align-self: start;
}

.finance-ops-kpis article {
  min-height: 84px;
  padding: 10px 12px;
}

.finance-ops-kpis strong {
  font-size: 18px;
}

.finance-flow-card {
  grid-column: 1 / -1;
  gap: 8px;
  padding: 10px 14px;
}

.finance-flow-head {
  align-items: center;
}

.finance-flow-head strong {
  font-size: 18px;
}

.finance-flow-bar {
  height: 10px;
}

.finance-flow-legend {
  gap: 6px 10px;
}

@media (min-width: 1700px) {
  .finance-ops-hero {
    grid-template-columns: minmax(260px, .75fr) minmax(0, 1.65fr) minmax(300px, .72fr);
  }

  .finance-flow-card {
    grid-column: auto;
  }
}

@media (max-width: 1280px) {
  .finance-ops-hero {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  .finance-ops-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .finance-ops-kpis {
    grid-template-columns: 1fr;
  }
}
.finance-global-filter-card {
  margin-bottom: 14px;
  overflow: visible;
}

.finance-global-filter-main {
  display: grid;
  grid-template-columns: minmax(260px, 1.45fr) minmax(230px, .85fr) auto;
  gap: 14px;
  align-items: end;
}

.finance-filter-search-field,
.finance-filter-unit-field {
  min-width: 0;
}

.finance-filter-unit-picker {
  width: 100%;
}

.finance-filter-unit-picker > summary {
  min-height: 48px;
  justify-content: flex-start;
}

.finance-filter-actions {
  display: flex;
  gap: 10px;
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: center;
}

.finance-filter-actions .button {
  min-height: 48px;
  white-space: nowrap;
}

.finance-filter-advanced-panel {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--border);
}

.finance-filter-panel-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.finance-filter-panel-title svg {
  width: 18px;
  height: 18px;
}

.finance-filter-advanced-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(170px, 1fr));
  gap: 14px;
  align-items: end;
}

.finance-filter-advanced-grid .reports-shared-expense-toggle {
  min-height: 48px;
  align-items: center;
  padding: 10px 12px;
}

.finance-tabs-under-filter {
  margin: 0 0 18px;
}

.finance-tabs-under-filter.report-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

@media (max-width: 1180px) {
  .finance-global-filter-main {
    grid-template-columns: minmax(260px, 1fr) minmax(220px, .8fr);
  }

  .finance-filter-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  .finance-filter-advanced-grid {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }
}

@media (max-width: 720px) {
  .finance-global-filter-main,
  .finance-filter-advanced-grid {
    grid-template-columns: 1fr;
  }

  .finance-filter-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .finance-filter-actions .button {
    justify-content: center;
  }

  .finance-filter-actions .button[type="submit"] {
    grid-column: 1 / -1;
    order: -1;
  }
}
/* v1.3.704 - Roko UI polish for accommodation finance expense table */
.finance-expense-section .table-card.embedded-table {
  overflow-x: auto;
  border: 1px solid #d7e6f7;
  border-radius: 8px;
  background: #fff;
}

.roko-expense-table {
  width: 100%;
  min-width: 980px;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
}

.roko-expense-table th {
  padding: 14px 18px;
  background: #f8fbff;
  color: #5b6d86;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  vertical-align: middle;
}

.roko-expense-table td {
  padding: 18px;
  border-top: 1px solid #dbe7f5;
  color: #061831;
  font-size: 16px;
  vertical-align: middle;
}

.roko-expense-table tbody tr:first-child td {
  border-top: 0;
}

.roko-expense-row {
  transition: background-color .15s ease, box-shadow .15s ease;
}

.roko-expense-row:hover td {
  background: #f8fbff;
}

.finance-period-mode-tabs {
  margin: 0 0 12px;
  border-bottom: 1px solid var(--line);
}

.finance-period-mode-tabs a {
  min-width: 170px;
  justify-content: center;
}

.roko-expense-row.is-expected td {
  background: #fffdf7;
}

.expense-timing-badge {
  display: block;
  width: max-content;
  margin-top: 6px;
  padding: 3px 7px;
  border: 1px solid #bfe8d2;
  border-radius: 999px;
  background: #f3fff8;
  color: #16734a;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.2;
  text-transform: uppercase;
}

.expense-timing-badge.is-expected {
  border-color: #f8d38c;
  background: #fffbf1;
  color: #9a5b00;
}

.roko-expense-table th:nth-child(1),
.roko-expense-table td:nth-child(1) {
  width: 12%;
}

.roko-expense-table th:nth-child(2),
.roko-expense-table td:nth-child(2) {
  width: 21%;
}

.roko-expense-table th:nth-child(3),
.roko-expense-table td:nth-child(3) {
  width: 23%;
}

.roko-expense-table th:nth-child(4),
.roko-expense-table td:nth-child(4) {
  width: 30%;
}

.roko-expense-table th:nth-child(5),
.roko-expense-table td:nth-child(5) {
  width: 12%;
  text-align: right;
}

.roko-expense-table th:nth-child(6),
.roko-expense-table td:nth-child(6) {
  width: 112px;
}

.expense-date-cell,
.expense-unit-cell,
.expense-description-cell,
.expense-category-cell {
  line-height: 1.35;
}

.expense-date-cell,
.expense-unit-cell {
  font-weight: 700;
}

.expense-category-badge {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 32px;
  padding: 6px 11px;
  border: 1px solid #cfe1f7;
  border-radius: 999px;
  background: #eef6ff;
  color: #064f92;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
}

.expense-description-cell span {
  display: block;
  max-width: 560px;
  color: #061831;
}

.expense-amount-cell .expense-cell {
  min-width: auto;
  color: #c2410c;
  font-size: 17px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.expense-row-actions {
  justify-content: flex-end;
  gap: 8px;
  min-width: 96px;
}

.expense-row-actions form {
  margin: 0;
}

.expense-icon-button {
  width: 42px;
  height: 42px;
  min-height: 42px;
  padding: 0;
  border-radius: 8px;
}

.expense-icon-button i {
  width: 18px;
  height: 18px;
}

@media (max-width: 900px) {
  .roko-expense-table {
    min-width: 860px;
  }

  .roko-expense-table th,
  .roko-expense-table td {
    padding: 14px;
    font-size: 15px;
  }

  .expense-category-badge {
    font-size: 13px;
  }
}
/* v1.3.705 - Smjestaj scoped typography and Roko UI polish */
body.accommodation-module-page {
    --erp-font-size-2xs: 10px;
    --erp-font-size-xs: 11px;
    --erp-font-size-sm: 12px;
    --erp-font-size-base: 14px;
    --erp-font-size-md: 15px;
    --erp-font-size-lg: 18px;
    --erp-font-size-xl: 22px;
    --erp-font-size-2xl: 28px;
    --erp-font-size-3xl: 32px;
    --erp-font-weight-regular: 400;
    --erp-font-weight-medium: 500;
    --erp-font-weight-semibold: 600;
    --erp-font-weight-bold: 700;
    --erp-line-height-tight: 1.15;
    --erp-line-height-heading: 1.25;
    --erp-line-height-base: 1.5;
    --erp-line-height-relaxed: 1.6;
    --erp-letter-spacing-label: 0;
    --erp-letter-spacing-heading: 0;
    --erp-radius-control: 8px;
    --erp-radius-card: 8px;
    --erp-border-soft: #d9e7f6;
    --erp-text-muted: #5f7086;
    --erp-surface-soft: #f8fbff;
    --erp-surface-muted: #f3f7fb;
    --erp-shadow-card: 0 12px 28px rgba(15, 31, 53, .045);
    --erp-shadow-panel: 0 16px 38px rgba(15, 31, 53, .055);
    color: var(--ink);
    font-size: var(--erp-font-size-base);
    line-height: var(--erp-line-height-base);
}

body.accommodation-module-page h1,
body.accommodation-module-page h2,
body.accommodation-module-page h3,
body.accommodation-module-page h4 {
    letter-spacing: var(--erp-letter-spacing-heading);
    line-height: var(--erp-line-height-heading);
}

body.accommodation-module-page p,
body.accommodation-module-page li,
body.accommodation-module-page td,
body.accommodation-module-page input,
body.accommodation-module-page select,
body.accommodation-module-page textarea {
    font-weight: var(--erp-font-weight-regular);
    line-height: var(--erp-line-height-base);
}

body.accommodation-module-page .topbar h1 {
    font-size: var(--erp-font-size-3xl);
    font-weight: var(--erp-font-weight-bold);
    line-height: var(--erp-line-height-tight);
}

body.accommodation-module-page .topbar p,
body.accommodation-module-page .module-helper,
body.accommodation-module-page .section-title p:not(.eyebrow),
body.accommodation-module-page .settings-card-head p,
body.accommodation-module-page .table-card-head p,
body.accommodation-module-page .invoice-step-heading p,
body.accommodation-module-page .documents-hero-main p:not(.eyebrow),
body.accommodation-module-page .finance-ops-main p:not(.eyebrow),
body.accommodation-module-page .finance-action-strip small,
body.accommodation-module-page .reservation-document-context-main small,
body.accommodation-module-page .finance-detail-summary > summary small {
    color: var(--erp-text-muted);
    font-size: var(--erp-font-size-sm);
    font-weight: var(--erp-font-weight-regular);
    line-height: 1.45;
    letter-spacing: 0;
    text-transform: none;
}

body.accommodation-module-page .section-title h1,
body.accommodation-module-page .section-title h2,
body.accommodation-module-page .documents-hero-main h2,
body.accommodation-module-page .finance-ops-main h2,
body.accommodation-module-page .unit-drawer-head h2,
body.accommodation-module-page .settings-card-head h2,
body.accommodation-module-page .invoice-step-heading h2 {
    font-size: var(--erp-font-size-2xl);
    font-weight: var(--erp-font-weight-bold);
    line-height: 1.2;
}

body.accommodation-module-page .card h3,
body.accommodation-module-page .table-card-head h3,
body.accommodation-module-page .filter-card h3,
body.accommodation-module-page .info-panel h3,
body.accommodation-module-page .roko-settings-card h3,
body.accommodation-module-page .finance-action-strip h3,
body.accommodation-module-page .finance-detail-summary > summary strong,
body.accommodation-module-page .guest-pricing-panel summary strong,
body.accommodation-module-page .reservation-calculation-head h3,
body.accommodation-module-page .mobile-section-head h2 {
    font-size: var(--erp-font-size-lg);
    font-weight: var(--erp-font-weight-bold);
    line-height: var(--erp-line-height-heading);
}

body.accommodation-module-page .eyebrow,
body.accommodation-module-page .field label,
body.accommodation-module-page .filter-field label,
body.accommodation-module-page .finance-filter-search-field label,
body.accommodation-module-page .finance-filter-unit-field label,
body.accommodation-module-page .calendar-month-field label,
body.accommodation-module-page .calendar-view-field label,
body.accommodation-module-page .finance-filter-panel-title,
body.accommodation-module-page .guest-occupancy-head,
body.accommodation-module-page .invoice-date-note span,
body.accommodation-module-page .reservation-money-summary em,
body.accommodation-module-page .compact-definition dt,
body.accommodation-module-page .settings-subtitle,
body.accommodation-module-page .sidebar-eyebrow,
body.accommodation-module-page .sidebar-subsection,
body.accommodation-module-page th {
    font-size: var(--erp-font-size-xs);
    font-weight: var(--erp-font-weight-bold);
    letter-spacing: var(--erp-letter-spacing-label);
    line-height: var(--erp-line-height-tight);
    text-transform: uppercase;
}

body.accommodation-module-page .button,
body.accommodation-module-page .button-light,
body.accommodation-module-page .button-plain,
body.accommodation-module-page .icon-button,
body.accommodation-module-page .chip-button,
body.accommodation-module-page .reservation-drawer-tabs button,
body.accommodation-module-page .finance-view-tabs a,
body.accommodation-module-page .mobile-nav a {
    border-radius: var(--erp-radius-control);
    font-size: var(--erp-font-size-base);
    font-weight: var(--erp-font-weight-semibold);
    letter-spacing: 0;
    line-height: 1.2;
}

body.accommodation-module-page .button,
body.accommodation-module-page .button-light,
body.accommodation-module-page .button-plain {
    min-height: 42px;
}

body.accommodation-module-page .icon-button {
    min-width: 42px;
    min-height: 42px;
}

body.accommodation-module-page .pill,
body.accommodation-module-page .status-badge,
body.accommodation-module-page .invoice-priority-chip,
body.accommodation-module-page .expense-category-badge,
body.accommodation-module-page .reservation-document-pill,
body.accommodation-module-page .reservation-document-state,
body.accommodation-module-page .guest-pricing-chip,
body.accommodation-module-page .finance-flow-legend span,
body.accommodation-module-page .documents-hero-stats span {
    border-radius: 999px;
    font-size: var(--erp-font-size-xs);
    font-weight: var(--erp-font-weight-semibold);
    letter-spacing: 0;
    line-height: 1.2;
    text-transform: none;
}

body.accommodation-module-page .card,
body.accommodation-module-page .stat-card,
body.accommodation-module-page .table-card,
body.accommodation-module-page .filter-card,
body.accommodation-module-page .info-panel,
body.accommodation-module-page .roko-settings-card,
body.accommodation-module-page .settings-panel,
body.accommodation-module-page .documents-hero,
body.accommodation-module-page .documents-hero-card,
body.accommodation-module-page .finance-ops-hero,
body.accommodation-module-page .finance-global-filter-card,
body.accommodation-module-page .finance-action-strip,
body.accommodation-module-page .finance-detail-summary,
body.accommodation-module-page .finance-invoice-worklist,
body.accommodation-module-page .guest-pricing-panel,
body.accommodation-module-page .reservation-money-summary,
body.accommodation-module-page .reservation-calculation-card,
body.accommodation-module-page .reservation-document-context,
body.accommodation-module-page .unit-card,
body.accommodation-module-page .unit-drawer,
body.accommodation-module-page .mobile-card {
    border-color: var(--erp-border-soft);
    border-radius: var(--erp-radius-card);
    box-shadow: var(--erp-shadow-card);
}

body.accommodation-module-page .table-card,
body.accommodation-module-page .documents-hero,
body.accommodation-module-page .finance-ops-hero,
body.accommodation-module-page .finance-global-filter-card,
body.accommodation-module-page .unit-drawer {
    box-shadow: var(--erp-shadow-panel);
}

/* v1.3.957 - unified finance navigation and quick-action drawers */
body.accommodation-module-page .finance-report-list-controls {
  padding: 0;
  overflow: hidden;
}

body.accommodation-module-page .finance-report-list-controls .finance-tabs-under-filter {
  margin: 0;
  padding: 10px 12px;
}

body.accommodation-module-page .finance-quick-drawer {
  width: min(960px, calc(100vw - 48px));
}

.finance-quick-drawer-body {
  display: grid;
  gap: 16px;
  padding-bottom: 24px;
}

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

.finance-quick-summary-grid article {
  display: grid;
  gap: 5px;
  min-height: 112px;
  padding: 16px;
  border: 1px solid var(--erp-border-soft, #dbe7f5);
  border-radius: var(--erp-radius-card, 10px);
  background: #fff;
}

.finance-quick-summary-grid article.is-total {
  border-color: #a7e5c7;
  background: #effcf5;
}

.finance-quick-summary-grid span,
.finance-quick-summary-grid small {
  color: var(--erp-text-muted, #607089);
  font-size: 12px;
}

.finance-quick-summary-grid span {
  font-weight: 800;
  text-transform: uppercase;
}

.finance-quick-summary-grid strong {
  color: var(--ink);
  font-size: 21px;
  line-height: 1.15;
}

.finance-cost-detail-card {
  margin: 0;
}

.finance-cost-breakdown-list {
  margin: 0;
}

.finance-cost-category-list {
  display: grid;
  border: 1px solid var(--erp-border-soft, #dbe7f5);
  border-radius: 8px;
  overflow: hidden;
}

.finance-cost-category-list > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 14px;
  border-top: 1px solid var(--erp-border-soft, #dbe7f5);
}

.finance-cost-category-list > div:first-child {
  border-top: 0;
}

.finance-cost-category-list span,
.finance-cost-category-list small {
  display: block;
}

.finance-cost-category-list small {
  margin-top: 2px;
  color: var(--erp-text-muted, #607089);
}

.finance-quick-drawer-footer {
  position: sticky;
  bottom: 0;
  z-index: 2;
  justify-content: flex-end;
  margin: 0 -22px -24px;
  padding: 14px 22px;
  border-top: 1px solid var(--erp-border-soft, #dbe7f5);
  background: rgba(255, 255, 255, .97);
  backdrop-filter: blur(12px);
}

@media (max-width: 840px) {
  body.accommodation-module-page .finance-quick-drawer {
    width: min(100vw, 960px);
  }

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

@media (max-width: 520px) {
  .finance-quick-summary-grid {
    grid-template-columns: 1fr;
  }
}

body.accommodation-module-page input,
body.accommodation-module-page select,
body.accommodation-module-page textarea,
body.accommodation-module-page .fake-input,
body.accommodation-module-page .roko-combobox,
body.accommodation-module-page .roko-combobox-toggle {
    border-color: var(--erp-border-soft);
    border-radius: var(--erp-radius-control);
    color: var(--ink);
    font-size: var(--erp-font-size-md);
    font-weight: var(--erp-font-weight-regular);
    letter-spacing: 0;
    min-height: 42px;
}

body.accommodation-module-page input::placeholder,
body.accommodation-module-page textarea::placeholder {
    color: #7b899c;
    font-weight: var(--erp-font-weight-regular);
}

body.accommodation-module-page table {
    border-color: var(--erp-border-soft);
}

body.accommodation-module-page th {
    background: var(--erp-surface-muted);
    color: var(--erp-text-muted);
    padding-top: 12px;
    padding-bottom: 12px;
}

body.accommodation-module-page td {
    color: var(--ink);
    font-size: var(--erp-font-size-base);
    padding-top: 14px;
    padding-bottom: 14px;
}

body.accommodation-module-page td strong,
body.accommodation-module-page .stat-card strong,
body.accommodation-module-page .documents-hero-stats strong,
body.accommodation-module-page .finance-ops-kpis strong,
body.accommodation-module-page .finance-flow-head strong,
body.accommodation-module-page .reservation-money-summary strong,
body.accommodation-module-page .reservation-summary-card strong,
body.accommodation-module-page .expense-amount-cell,
body.accommodation-module-page .invoice-total-cell,
body.accommodation-module-page .amount {
    font-weight: var(--erp-font-weight-bold);
    letter-spacing: 0;
}

body.accommodation-module-page .table-card tbody tr,
body.accommodation-module-page .roko-expense-table tbody tr,
body.accommodation-module-page .documents-table tbody tr,
body.accommodation-module-page .finance-payments-table tbody tr {
    border-color: var(--erp-border-soft);
}

body.accommodation-module-page .table-card tbody tr:hover,
body.accommodation-module-page .roko-expense-table tbody tr:hover,
body.accommodation-module-page .documents-table tbody tr:hover,
body.accommodation-module-page .finance-payments-table tbody tr:hover {
    background: var(--erp-surface-soft);
}

body.accommodation-module-page .nav-list a,
body.accommodation-module-page .super-company-links a,
body.accommodation-module-page .company-module-link,
body.accommodation-module-page .sidebar-module-summary,
body.accommodation-module-page .sidebar-submodule-links a {
    font-size: 13px;
    font-weight: var(--erp-font-weight-semibold);
    letter-spacing: 0;
    line-height: 1.25;
}

body.accommodation-module-page .super-company-links small,
body.accommodation-module-page .sidebar-company-search input {
    font-size: var(--erp-font-size-sm);
    font-weight: var(--erp-font-weight-regular);
    letter-spacing: 0;
}

body.accommodation-module-page .documents-hero {
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

body.accommodation-module-page .documents-hero-stats,
body.accommodation-module-page .finance-ops-kpis {
    gap: 12px;
}

body.accommodation-module-page .documents-hero-stats .stat-card,
body.accommodation-module-page .finance-ops-kpis .stat-card,
body.accommodation-module-page .finance-kpi-card {
    min-height: 96px;
    padding: 16px;
}

body.accommodation-module-page .documents-hero-stats strong,
body.accommodation-module-page .finance-ops-kpis strong,
body.accommodation-module-page .finance-kpi-card strong {
    display: block;
    font-size: var(--erp-font-size-xl);
    line-height: 1.15;
}

body.accommodation-module-page .finance-global-filter-card {
    background: #fff;
    padding: 20px;
}

body.accommodation-module-page .finance-global-filter-card .field,
body.accommodation-module-page .finance-filter-row .field {
    gap: 7px;
}

body.accommodation-module-page .finance-flow-card,
body.accommodation-module-page .finance-status-card,
body.accommodation-module-page .finance-summary-card,
body.accommodation-module-page .reservation-summary-card {
    border-radius: var(--erp-radius-card);
    border-color: var(--erp-border-soft);
}

body.accommodation-module-page .finance-flow-head strong {
    font-size: var(--erp-font-size-xl);
}

body.accommodation-module-page .roko-expense-table th,
body.accommodation-module-page .roko-expense-table td {
    vertical-align: middle;
}

body.accommodation-module-page .roko-expense-table .expense-category-badge {
    background: #eef6ff;
    color: var(--blue-dark);
}

body.accommodation-module-page .unit-drawer-head {
    border-bottom-color: var(--erp-border-soft);
}

body.accommodation-module-page .unit-drawer-head .eyebrow,
body.accommodation-module-page .unit-drawer-actions .button {
    font-weight: var(--erp-font-weight-semibold);
}

body.accommodation-module-page .reservation-drawer-tabs {
    gap: 8px;
    flex-wrap: wrap;
    overflow-x: visible;
    padding-bottom: 0;
}

body.accommodation-module-page .reservation-drawer-tabs button {
    flex: 1 1 126px;
    min-width: 112px;
    justify-content: center;
    padding: 10px 14px;
}

body.accommodation-module-page .reservation-drawer-summary {
    gap: 10px;
}

body.accommodation-module-page .reservation-drawer-summary > .reservation-summary-card,
body.accommodation-module-page .reservation-money-summary,
body.accommodation-module-page .guest-pricing-panel,
body.accommodation-module-page .reservation-payment-panel-inline {
    background: #fff;
}
body.accommodation-module-page .reservation-summary-card small {
    display: block;
    margin-bottom: 4px;
}

body.accommodation-module-page .reservation-summary-card strong {
    display: block;
    line-height: 1.28;
}

body.accommodation-module-page .reservation-summary-card .reservation-summary-muted {
    color: var(--erp-text-muted);
    font-weight: var(--erp-font-weight-semibold);
}

body.accommodation-module-page .reservation-summary-card-money dl {
    display: grid;
    gap: 7px;
    margin: 0;
}

body.accommodation-module-page .reservation-summary-card-money dl > div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    min-height: auto;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

body.accommodation-module-page .reservation-summary-card-money dt {
    color: var(--erp-text-muted);
    font-size: 12px;
    font-weight: var(--erp-font-weight-semibold);
    line-height: 1.25;
    text-transform: uppercase;
}

body.accommodation-module-page .reservation-summary-card-money dd {
    margin: 0;
    font-weight: var(--erp-font-weight-bold);
    white-space: nowrap;
}

body.accommodation-module-page .reservation-payment-panel-inline {
    border: 1px solid var(--erp-border-soft);
    border-radius: var(--erp-radius-card);
    padding: 16px;
}

body.accommodation-module-page .reservation-payment-panel-inline .reservation-prepayment-note-compact {
    margin-bottom: 14px;
}

body.accommodation-module-page .reservation-payment-panel-inline .new-reservation-payment-grid {
    align-items: start;
}

body.accommodation-module-page .reservation-payment-panel-inline .new-reservation-payment-grid .field {
    display: flex;
    flex-direction: column;
}

body.accommodation-module-page .reservation-payment-panel-inline .new-reservation-payment-grid .formatted-input-preview {
    min-height: 18px;
    margin-top: 5px;
    line-height: 1.25;
}

@media (max-width: 920px) {
    body.accommodation-module-page .reservation-drawer-tabs button {
        flex: 1 1 150px;
    }

    body.accommodation-module-page .reservation-drawer-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    body.accommodation-module-page .reservation-drawer-tabs button {
        flex: 1 1 calc(50% - 8px);
        min-width: 0;
    }

    body.accommodation-module-page .reservation-drawer-summary {
        grid-template-columns: 1fr;
    }

    body.accommodation-module-page .extra-guest-row .extra-guest-first-name-field,
    body.accommodation-module-page .extra-guest-row .extra-guest-last-name-field,
    body.accommodation-module-page .extra-guest-row .extra-guest-address-field,
    body.accommodation-module-page .extra-guest-row .extra-guest-email-field,
    body.accommodation-module-page .extra-guest-row .extra-guest-phone-field,
    body.accommodation-module-page .extra-guest-row .extra-guest-country-field,
    body.accommodation-module-page .extra-guest-row .extra-guest-document-type-field,
    body.accommodation-module-page .extra-guest-row .extra-guest-document-field,
    body.accommodation-module-page .extra-guest-row .icon-button.danger {
        grid-column: 1;
    }
}

body.accommodation-module-page .reservation-calculation-row,
body.accommodation-module-page .reservation-money-summary-row,
body.accommodation-module-page .compact-definition div {
    border-color: var(--erp-border-soft);
}

body.accommodation-module-page .calendar-toolbar,
body.accommodation-module-page .calendar-booking-card,
body.accommodation-module-page .calendar-booking-months,
body.accommodation-module-page .calendar-reservation-list {
    border-color: var(--erp-border-soft);
    border-radius: var(--erp-radius-card);
}

body.accommodation-module-page .calendar-month-title,
body.accommodation-module-page .calendar-booking-day strong,
body.accommodation-module-page .calendar-reservation-bar strong {
    font-weight: var(--erp-font-weight-bold);
    letter-spacing: 0;
}

body.accommodation-module-page .calendar-booking-day small,
body.accommodation-module-page .calendar-reservation-bar span,
body.accommodation-module-page .calendar-empty-state {
    color: var(--erp-text-muted);
    font-size: var(--erp-font-size-sm);
    font-weight: var(--erp-font-weight-regular);
    line-height: 1.45;
}

body.accommodation-module-page.mobile-app-mode {
    font-size: var(--erp-font-size-base);
}

body.accommodation-module-page.mobile-app-mode .mobile-screen-title h1,
body.accommodation-module-page.mobile-app-mode .mobile-section-head h2 {
    font-weight: var(--erp-font-weight-bold);
    letter-spacing: 0;
}

body.accommodation-module-page.mobile-app-mode .mobile-action-card,
body.accommodation-module-page.mobile-app-mode .mobile-unit-card,
body.accommodation-module-page.mobile-app-mode .mobile-bottom-nav {
    border-color: var(--erp-border-soft);
    border-radius: var(--erp-radius-card);
    box-shadow: var(--erp-shadow-card);
}

body.accommodation-module-page.mobile-app-mode .mobile-action-card span,
body.accommodation-module-page.mobile-app-mode .mobile-unit-card strong,
body.accommodation-module-page.mobile-app-mode .mobile-bottom-nav a {
    font-weight: var(--erp-font-weight-semibold);
    letter-spacing: 0;
}

@media (max-width: 1100px) {
    body.accommodation-module-page .documents-hero-stats strong,
    body.accommodation-module-page .finance-ops-kpis strong,
    body.accommodation-module-page .finance-kpi-card strong {
        font-size: var(--erp-font-size-lg);
    }
}

@media (max-width: 900px) {
    body.accommodation-module-page .topbar h1 {
        font-size: var(--erp-font-size-2xl);
    }

    body.accommodation-module-page .section-title h1,
    body.accommodation-module-page .section-title h2,
    body.accommodation-module-page .documents-hero-main h2,
    body.accommodation-module-page .finance-ops-main h2,
    body.accommodation-module-page .unit-drawer-head h2 {
        font-size: var(--erp-font-size-xl);
    }

    body.accommodation-module-page .finance-global-filter-card,
    body.accommodation-module-page .documents-hero,
    body.accommodation-module-page .finance-ops-hero {
        padding: 16px;
    }

    body.accommodation-module-page th,
    body.accommodation-module-page td {
        padding-top: 11px;
        padding-bottom: 11px;
    }
}

@media (max-width: 640px) {
    body.accommodation-module-page {
        font-size: var(--erp-font-size-sm);
    }

    body.accommodation-module-page .button,
    body.accommodation-module-page .button-light,
    body.accommodation-module-page .button-plain,
    body.accommodation-module-page .icon-button {
        min-height: 40px;
    }

    body.accommodation-module-page input,
    body.accommodation-module-page select,
    body.accommodation-module-page textarea,
    body.accommodation-module-page .fake-input,
    body.accommodation-module-page .roko-combobox,
    body.accommodation-module-page .roko-combobox-toggle {
        font-size: var(--erp-font-size-base);
        min-height: 40px;
    }

    body.accommodation-module-page .pill,
    body.accommodation-module-page .status-badge,
    body.accommodation-module-page .expense-category-badge {
        font-size: var(--erp-font-size-2xs);
    }
}

/* v1.3.706 - Compact accommodation calendar height */
body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar {
    gap: 8px;
    margin-bottom: 10px;
    padding: 12px 14px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .calendar-view-field select {
    min-height: 42px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .button,
body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .button-light,
body.accommodation-module-page:not(.mobile-app-mode) .calendar-toolbar .fake-input {
    min-height: 42px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months {
    gap: 8px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-weekdays span {
    padding: 7px 5px;
    font-size: 10.5px;
    line-height: 1.15;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-week {
    grid-template-rows: 24px repeat(var(--calendar-week-lanes, 1), 20px);
    min-height: calc(28px + (var(--calendar-week-lanes, 1) * 20px));
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-day {
    padding: 5px 6px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-day-head strong {
    font-size: 13px;
    line-height: 1.1;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar {
    top: calc(26px + (var(--booking-lane, 0) * 20px));
    height: 17px;
    padding: 0 7px;
    font-size: 10px;
    line-height: 17px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar span {
    line-height: 17px;
}

@media (min-width: 1200px) and (max-height: 900px) {
    body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-week {
        grid-template-rows: 22px repeat(var(--calendar-week-lanes, 1), 18px);
        min-height: calc(25px + (var(--calendar-week-lanes, 1) * 18px));
    }

    body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar {
        top: calc(24px + (var(--booking-lane, 0) * 18px));
        height: 16px;
        line-height: 16px;
    }

    body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar span {
        line-height: 16px;
    }
}

/* v1.3.715 - Roko UI audit compact calendar polish */
body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months {
    gap: 6px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-weekdays span {
    padding: 6px 5px;
    font-size: 10px;
    line-height: 1.1;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-week {
    grid-template-rows: 22px repeat(var(--calendar-week-lanes, 1), 18px);
    min-height: calc(24px + (var(--calendar-week-lanes, 1) * 18px));
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-day {
    padding: 4px 6px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-day-head strong {
    font-size: 12px;
    line-height: 1.05;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar {
    top: calc(24px + (var(--booking-lane, 0) * 18px));
    height: 16px;
    padding: 0 7px;
    font-size: 9.5px;
    line-height: 16px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar span {
    line-height: 16px;
}

@media (min-width: 1200px) and (max-height: 820px) {
    body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-week {
        grid-template-rows: 20px repeat(var(--calendar-week-lanes, 1), 16px);
        min-height: calc(22px + (var(--calendar-week-lanes, 1) * 16px));
    }

    body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar {
        top: calc(22px + (var(--booking-lane, 0) * 16px));
        height: 15px;
        font-size: 9px;
        line-height: 15px;
    }

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-months .calendar-booking-bar span {
        line-height: 15px;
    }
}

/* v1.3.953: reviewed merging of duplicate Guestbook profiles. */
.guest-duplicate-panel {
    display: grid;
    gap: 14px;
    border-color: #f2cf7f;
    background: #fffdf6;
}

.guest-duplicate-head,
.guest-duplicate-card {
    display: flex;
    align-items: center;
    gap: 16px;
}

.guest-duplicate-head {
    justify-content: space-between;
}

.guest-duplicate-head > div {
    min-width: 0;
}

.guest-duplicate-head .eyebrow {
    margin: 0 0 4px;
    color: #8a5a00;
}

.guest-duplicate-head h4,
.guest-duplicate-head p {
    margin: 0;
}

.guest-duplicate-head p {
    margin-top: 4px;
}

.guest-duplicate-count {
    flex: 0 0 auto;
    padding: 6px 10px;
    border-radius: 999px;
    color: #774d00;
    background: #fff0c7;
    font-size: 11px;
    font-weight: 900;
}

.guest-duplicate-list {
    display: grid;
    gap: 10px;
}

.guest-duplicate-card {
    padding: 12px;
    border: 1px solid #ead8ac;
    border-radius: 11px;
    background: #fff;
}

.guest-duplicate-person,
.guest-duplicate-stay {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.guest-duplicate-person {
    flex: 1 1 42%;
}

.guest-duplicate-stay {
    flex: 1 1 36%;
}

.guest-duplicate-person > span,
.guest-duplicate-person > small,
.guest-duplicate-stay > span,
.guest-duplicate-stay > small {
    color: #607896;
    font-size: 11px;
}

.guest-duplicate-stay > span {
    color: #8a5a00;
    font-weight: 900;
    text-transform: uppercase;
}

.guest-duplicate-card .button {
    flex: 0 0 auto;
}

@media (max-width: 760px) {
    .guest-duplicate-head,
    .guest-duplicate-card {
        align-items: stretch;
        flex-direction: column;
    }

    .guest-duplicate-count {
        width: max-content;
    }

    .guest-duplicate-card .button {
        width: 100%;
    }
}

/* v1.3.952: intuitive travel-party view in the Guestbook list. */
.guest-party-toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: max-content;
    min-height: 32px;
    margin-top: 8px;
    padding: 5px 9px;
    border: 1px solid #b9d5ee;
    border-radius: 999px;
    color: #075ea8;
    background: #edf6ff;
    font: inherit;
    font-size: 11px;
    font-weight: 900;
    cursor: pointer;
}

.guest-party-toggle:hover,
.guest-party-toggle:focus-visible,
.guest-party-toggle.is-open {
    border-color: #77afe0;
    outline: 0;
    color: #03477e;
    background: #dfefff;
}

.guest-party-toggle svg {
    width: 15px;
    height: 15px;
}

.guest-party-toggle [data-guest-party-chevron] {
    transition: transform .18s ease;
}

.guest-party-toggle.is-open [data-guest-party-chevron] {
    transform: rotate(180deg);
}

.guest-party-detail-row[hidden] {
    display: none !important;
}

.guestbook-table .guest-party-detail-row td {
    padding: 0 18px 18px;
    border-top: 0;
    background: #f7fbff;
}

.guestbook-table .guest-party-detail-row td::before {
    display: none;
}

.guest-party-card {
    display: grid;
    gap: 14px;
    padding: 16px;
    border: 1px solid #c9def2;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(8, 47, 85, .07);
}

.guest-party-card-head,
.guest-party-card-actions,
.guest-party-count,
.guest-party-member-group strong,
.guest-party-name {
    display: flex;
    align-items: center;
}

.guest-party-card-head {
    justify-content: space-between;
    gap: 18px;
}

.guest-party-card-head > div {
    display: grid;
    gap: 3px;
}

.guest-party-card-head .eyebrow {
    margin: 0;
    color: #607896;
    font-size: 10px;
}

.guest-party-card-head strong {
    color: #082f55;
    font-size: 16px;
}

.guest-party-card-head small {
    color: #607896;
}

.guest-party-count {
    flex: 0 0 auto;
    gap: 7px;
    padding: 7px 10px;
    border-radius: 999px;
    color: #075b3f;
    background: #e9f8f1;
    font-size: 12px;
    font-weight: 900;
}

.guest-party-count svg,
.guest-party-member-group strong svg,
.guest-party-name svg {
    width: 16px;
    height: 16px;
}

.guest-party-members {
    display: grid;
    grid-template-columns: minmax(220px, .8fr) minmax(0, 1.7fr);
    gap: 12px;
}

.guest-party-member-group {
    display: grid;
    gap: 7px;
    padding: 12px;
    border: 1px solid #dfebf6;
    border-radius: 10px;
    background: #fbfdff;
}

.guest-party-member-group > span {
    color: #607896;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

.guest-party-member-group strong {
    gap: 7px;
    color: #075b3f;
}

.guest-party-name-list {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.guest-party-name {
    gap: 5px;
    padding: 6px 9px;
    border: 1px solid #d6e5f3;
    border-radius: 999px;
    color: #173d62;
    background: #fff;
    font-size: 12px;
    font-weight: 800;
}

.guest-party-card-actions {
    justify-content: flex-end;
    padding-top: 2px;
}

@media (max-width: 760px) {
    .guest-party-toggle {
        width: max-content !important;
        min-height: 34px !important;
    }

    .guestbook-table .guest-party-detail-row {
        padding: 0;
        border: 0;
        background: transparent;
    }

    .guestbook-table .guest-party-detail-row td {
        padding: 0;
        background: transparent;
    }

    .guest-party-card-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .guest-party-members {
        grid-template-columns: 1fr;
    }

    .guest-party-card-actions,
    .guest-party-card-actions .button {
        width: 100%;
    }
}

/* v1.3.821 - prostraniji kalendar kada je prikazana samo jedna smještajna jedinica */
body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-shell.is-single-unit .calendar-booking-week {
    grid-template-rows: 32px repeat(var(--calendar-week-lanes, 1), 30px);
    min-height: calc(36px + (var(--calendar-week-lanes, 1) * 30px));
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-shell.is-single-unit .calendar-booking-day {
    padding: 7px 8px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-shell.is-single-unit .calendar-booking-day-head strong {
    font-size: 13px;
    line-height: 1.15;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-shell.is-single-unit .calendar-booking-bar {
    top: calc(34px + (var(--booking-lane, 0) * 30px));
    height: 23px;
    padding: 0 9px;
    font-size: 10px;
    line-height: 23px;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-shell.is-single-unit .calendar-booking-bar span {
    line-height: 23px;
}

/* v1.3.824 - jasna oznaka današnjeg datuma bez natpisa i punog okvira */
.calendar-booking-today-marker {
    display: none;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-day.is-today {
    position: relative;
    box-shadow: none;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-day.is-today::after {
    content: none;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-day.is-today .calendar-booking-day-head strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    min-height: 24px;
    margin: -3px 0 0 -3px;
    border-radius: 999px;
    background: #0b63c7;
    box-shadow: 0 2px 7px rgba(11, 99, 199, .24);
    color: #fff;
    line-height: 1;
}

body.accommodation-module-page:not(.mobile-app-mode) .calendar-booking-today-marker {
    position: relative;
    z-index: 4;
    display: block;
    grid-row: 1 / -1;
    align-self: stretch;
    min-width: 0;
    background: rgba(11, 99, 199, .055);
    box-shadow: inset 2px 0 0 rgba(11, 99, 199, .9);
    pointer-events: none;
}

/* v1.3.823 - kompaktan profesionalni kalendar kada je prikazano vise jedinica */
@media (min-width: 1101px) {
    body.accommodation-calendar-multi-unit .main {
        padding-top: 6px;
    }

    body.accommodation-calendar-multi-unit .topbar {
        margin-bottom: 6px;
        padding: 7px 14px;
    }

    body.accommodation-calendar-multi-unit .topbar-title .eyebrow {
        margin-bottom: 1px;
        font-size: 10px;
    }

    body.accommodation-calendar-multi-unit .topbar-title h1 {
        font-size: clamp(27px, 1.8vw, 32px);
    }

    body.accommodation-calendar-multi-unit .topbar-actions .button {
        min-height: 38px;
        padding: 8px 13px;
    }

    body.accommodation-calendar-multi-unit .superadmin-context-switcher {
        margin: -2px 0 2px;
        padding: 6px 10px;
    }

    body.accommodation-calendar-multi-unit .superadmin-context-switcher select {
        min-height: 38px;
    }

    body.accommodation-calendar-multi-unit .section-title.reservation-title {
        gap: 10px;
        margin-bottom: 6px;
        padding: 6px 14px;
    }

    body.accommodation-calendar-multi-unit .section-title.reservation-title h2 {
        font-size: clamp(23px, 1.65vw, 27px);
    }

    body.accommodation-calendar-multi-unit .section-title.reservation-title .card-subtitle {
        margin-top: 2px;
        font-size: 11.5px;
        line-height: 1.25;
    }

    body.accommodation-calendar-multi-unit .section-title.reservation-title .button {
        min-height: 38px;
        padding: 8px 13px;
    }

    body.accommodation-calendar-multi-unit .section-title.reservation-title .icon-button {
        width: 38px;
        padding-inline: 0;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar {
        gap: 6px;
        margin-bottom: 6px;
        padding: 6px 10px;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-nav {
        gap: 6px;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-month-field {
        width: 175px;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-view-field {
        width: 175px;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-view-field select,
    body.accommodation-calendar-multi-unit .calendar-toolbar .button,
    body.accommodation-calendar-multi-unit .calendar-toolbar .button-light,
    body.accommodation-calendar-multi-unit .calendar-toolbar .fake-input,
    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-month-picker {
        min-height: 38px;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .button,
    body.accommodation-calendar-multi-unit .calendar-toolbar .button-light {
        padding: 7px 11px;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-nav-button {
        width: 38px;
        min-width: 38px;
        padding-inline: 0;
        font-size: 0;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-nav-button svg {
        width: 18px;
        height: 18px;
        margin: 0;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-month-picker {
        padding: 6px 34px 6px 10px;
    }

    body.accommodation-calendar-multi-unit .calendar-toolbar .calendar-month-picker strong {
        font-size: 14px;
    }

    body.accommodation-calendar-multi-unit .calendar-filter-limit-chip {
        min-width: 38px;
        min-height: 38px;
    }

    body.accommodation-calendar-multi-unit .version-footer {
        display: none;
    }
}

/* Obojani akcijski gumbi moraju ostati citljivi i tijekom hover/klik/loading stanja. */
.button.button-success,
a.button.button-success,
button.button.button-success {
    background: var(--success) !important;
    color: #fff !important;
    border-color: var(--success) !important;
}

.button.button-success:hover,
.button.button-success:active,
.button.button-success:focus,
.button.button-success:focus-visible,
.button.button-success:disabled,
.button.button-success:disabled:hover,
.button.button-success.is-loading,
.button.button-success.is-loading:hover,
.button.button-success[aria-busy="true"],
.button.button-success[aria-busy="true"]:hover {
    background: #126535 !important;
    color: #fff !important;
    border-color: #126535 !important;
    box-shadow: 0 10px 24px rgba(25, 123, 69, .18) !important;
}

.button.button-danger,
a.button.button-danger,
button.button.button-danger {
    background: var(--danger) !important;
    color: #fff !important;
    border-color: var(--danger) !important;
}

.button.button-danger:hover,
.button.button-danger:active,
.button.button-danger:focus,
.button.button-danger:focus-visible,
.button.button-danger:disabled,
.button.button-danger:disabled:hover,
.button.button-danger.is-loading,
.button.button-danger.is-loading:hover,
.button.button-danger[aria-busy="true"],
.button.button-danger[aria-busy="true"]:hover {
    background: #dc2626 !important;
    color: #fff !important;
    border-color: #dc2626 !important;
    box-shadow: 0 10px 24px rgba(220, 38, 38, .18) !important;
}

.button.button-success svg,
.button.button-danger svg {
    color: #fff !important;
    stroke: currentColor !important;
}
.business-synesis-agent-progress {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px 12px;
  align-items: center;
}

.business-synesis-agent-progress-text {
  min-width: 0;
  font-weight: 700;
}

.business-synesis-agent-progress-track {
  grid-column: 1 / -1;
  height: 9px;
  overflow: hidden;
  border: 1px solid #b7e4d2;
  border-radius: 999px;
  background: #e8f7f1;
}

.business-synesis-agent-progress-bar {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0f9f6e, #16b981);
  transition: width 220ms ease;
}

.business-synesis-agent-progress-meta {
  color: #52657d;
  font-size: 12px;
  font-weight: 700;
  text-align: right;
}

.business-synesis-agent-progress.is-error .business-synesis-agent-progress-track {
  border-color: #fecaca;
  background: #fff1f2;
}

.business-synesis-agent-progress.is-error .business-synesis-agent-progress-bar {
  background: #dc2626;
}

@media (max-width: 720px) {
  .business-synesis-agent-progress {
    grid-template-columns: 1fr;
  }

  .business-synesis-agent-progress-meta {
    text-align: left;
  }
}
/* Hosting: ulazni troškovi i cjenik domena */
.hosting-costs-page {
    display: grid;
    gap: 12px;
}

.hosting-costs-head,
.hosting-cost-card-head,
.hosting-cost-price-actions,
.hosting-cost-sync-form {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.hosting-costs-hero {
    padding-block: 9px;
}

.hosting-costs-hero-tools,
.hosting-costs-hero-tools .hero-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.hosting-costs-head h2,
.hosting-cost-card-head h3 {
    margin: 2px 0 0;
}

.hosting-cost-year-tabs {
    display: flex;
    align-items: stretch;
    gap: 4px;
    padding: 4px;
    border: 1px solid var(--line, #d8e3f0);
    border-radius: 12px;
    background: #f5f8fc;
}

.hosting-cost-year-tabs a {
    display: grid;
    min-width: 82px;
    padding: 5px 9px;
    border: 1px solid transparent;
    border-radius: 8px;
    color: #526783;
    text-align: center;
    text-decoration: none;
}

.hosting-cost-year-tabs a small {
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
}

.hosting-cost-year-tabs a strong {
    font-size: 14px;
}

.hosting-cost-year-tabs a.is-active {
    border-color: #75aefc;
    background: #fff;
    color: #0569d8;
    box-shadow: 0 5px 14px rgb(36 111 211 / 10%);
}

.hosting-cost-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    overflow: hidden;
    border: 1px solid #d8e3f0;
    border-radius: 14px;
    background: #fff;
}

.hosting-cost-stat {
    position: relative;
    min-height: 84px;
    padding: 12px 16px;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.hosting-cost-stat + .hosting-cost-stat {
    border-left: 1px solid #d8e3f0;
}

.hosting-cost-stat::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: #1677e8;
    content: "";
}

.hosting-cost-stat.is-domain::before { background: #07a98b; }
.hosting-cost-stat.is-server::before { background: #7957dc; }
.hosting-cost-stat.is-expected::before { background: #d89200; }
.hosting-cost-stat.is-warning::before { background: #d44a42; }
.hosting-cost-stat.is-ready::before { background: #168b51; }

.hosting-cost-stat span,
.hosting-cost-stat small {
    display: block;
    color: #5a6d86;
    font-weight: 700;
}

.hosting-cost-stat span {
    font-size: 12px;
    text-transform: uppercase;
}

.hosting-cost-stat strong {
    display: block;
    margin: 5px 0 3px;
    color: #071d3c;
    font-size: clamp(20px, 1.7vw, 26px);
    line-height: 1;
}

.hosting-cost-stat.is-warning strong { color: #c8342e; }
.hosting-cost-stat.is-ready strong { color: #087f44; }

.hosting-cost-alert {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 14px;
    padding: 10px 14px;
    border: 1px solid #f0c05d;
    border-radius: 13px;
    background: #fff8e8;
    color: #704a00;
}

.hosting-cost-alert > i {
    width: 22px;
    height: 22px;
}

.hosting-cost-alert div,
.hosting-cost-alert span {
    display: block;
}

.hosting-cost-view-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    padding: 6px;
    border: 1px solid #d8e3f0;
    border-radius: 14px;
    background: #edf3fa;
}

.hosting-cost-view-tabs a {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
    min-height: 58px;
    padding: 9px 13px;
    border: 1px solid transparent;
    border-radius: 10px;
    color: #536a85;
    text-decoration: none;
}

.hosting-cost-view-tabs a:hover {
    border-color: #c8d9ed;
    background: rgb(255 255 255 / 60%);
}

.hosting-cost-view-tabs a.is-active {
    border-color: #83b9fb;
    background: #fff;
    color: #086dcc;
    box-shadow: 0 7px 18px rgb(27 85 155 / 10%);
}

.hosting-cost-view-tabs a > i {
    flex: 0 0 auto;
    width: 21px;
    height: 21px;
}

.hosting-cost-view-tabs a span,
.hosting-cost-view-tabs a strong,
.hosting-cost-view-tabs a small {
    display: block;
    min-width: 0;
}

.hosting-cost-view-tabs a strong {
    color: #102441;
    font-size: 14px;
}

.hosting-cost-view-tabs a small {
    margin-top: 2px;
    overflow: hidden;
    color: #64778f;
    font-size: 11px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hosting-cost-workspace {
    display: grid;
    grid-template-columns: minmax(0, 900px);
    justify-content: center;
    gap: 10px;
    align-items: start;
}

.hosting-cost-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #cddff2;
    border-radius: 13px;
    background: #f4f8fd;
}

.hosting-cost-panel-head h3 {
    margin: 2px 0 0;
}

.hosting-cost-workspace > form {
    width: 100%;
    margin-inline: auto;
}

.hosting-cost-form,
.hosting-cost-import,
.hosting-cost-renewals,
.hosting-cost-ledger,
.hosting-cost-pricebook {
    margin: 0;
}

.hosting-cost-form-grid {
    margin-top: 16px;
}

.hosting-cost-span-2 {
    grid-column: 1 / -1;
}

.hosting-cost-eur-preview {
    display: flex;
    align-items: center;
    justify-content: space-between;
    align-self: end;
    min-height: 58px;
    padding: 11px 14px;
    border: 1px solid #a9dfc1;
    border-radius: 10px;
    background: #effcf4;
    color: #087b40;
}

.hosting-cost-eur-preview span {
    color: #507064;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.hosting-cost-eur-preview strong {
    font-size: 20px;
}

.hosting-cost-import {
    display: grid;
    gap: 14px;
}

.hosting-cost-import-note {
    display: flex;
    gap: 10px;
    padding: 11px 12px;
    border: 1px solid #b9dfcc;
    border-radius: 10px;
    background: #f2fbf6;
    color: #276344;
    font-size: 13px;
    font-weight: 650;
}

.hosting-cost-import-note i {
    flex: 0 0 auto;
    width: 19px;
    height: 19px;
}

.hosting-cost-table-wrap {
    margin: 14px -20px -20px;
    overflow-x: auto;
}

.hosting-cost-table-wrap .hosting-table {
    min-width: 760px;
}

.hosting-cost-ledger .muted-small {
    display: block;
    margin-top: 3px;
}

.hosting-cost-pricebook {
    padding: 0;
    overflow: hidden;
}

.hosting-cost-pricebook > summary {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 18px 20px;
    cursor: pointer;
    list-style: none;
}

.hosting-cost-pricebook > summary::-webkit-details-marker {
    display: none;
}

.hosting-cost-pricebook > summary > span:first-child {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
    background: #eaf3ff;
    color: #0873df;
}

.hosting-cost-pricebook > summary strong,
.hosting-cost-pricebook > summary small {
    display: block;
}

.hosting-cost-pricebook > summary small {
    margin-top: 3px;
    color: #64748a;
}

.hosting-cost-pricebook > form {
    padding: 0 20px 18px;
}

.hosting-cost-price-grid {
    display: grid;
    grid-template-columns: minmax(100px, .7fr) minmax(150px, 1.15fr) 90px 110px minmax(135px, 1fr) minmax(135px, 1fr);
    gap: 8px;
    align-items: center;
    padding: 8px 0;
    border-top: 1px solid #e4ebf4;
}

.hosting-cost-price-grid input,
.hosting-cost-price-grid select {
    width: 100%;
    min-width: 0;
}

.hosting-cost-price-grid-head {
    color: #5d7089;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.hosting-cost-price-grid.is-new {
    margin-top: 8px;
    padding: 12px;
    border: 1px dashed #91b7e9;
    border-radius: 11px;
    background: #f6faff;
}

.hosting-cost-price-actions {
    margin-top: 12px;
}

.hosting-cost-sync-form {
    padding: 16px 20px;
    border-top: 1px solid #dce6f1;
    background: #f8fafc;
}

.hosting-cost-sync-form strong,
.hosting-cost-sync-form small {
    display: block;
}

.hosting-cost-sync-form small {
    margin-top: 3px;
    color: #65758a;
}

.hosting-module-page .hosting-cost-toast {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 2200;
    width: min(460px, calc(100vw - 32px));
    margin: 0;
    padding-right: 48px;
    box-shadow: 0 18px 46px rgb(17 42 74 / 22%);
    animation: hosting-cost-toast-in 180ms ease-out;
}

.hosting-cost-toast-close {
    position: absolute;
    top: 50%;
    right: 12px;
    display: grid;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: rgb(255 255 255 / 58%);
    color: currentColor;
    font-size: 22px;
    line-height: 1;
    place-items: center;
    transform: translateY(-50%);
    cursor: pointer;
}

.hosting-cost-toast.is-leaving {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 180ms ease, transform 180ms ease;
}

@keyframes hosting-cost-toast-in {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 1280px) {
    .hosting-cost-summary {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hosting-cost-workspace {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .hosting-costs-head,
    .hosting-cost-card-head,
    .hosting-cost-sync-form {
        align-items: stretch;
        flex-direction: column;
    }

    .hosting-cost-year-tabs {
        width: 100%;
        overflow-x: auto;
    }

    .hosting-cost-year-tabs a {
        flex: 1 0 100px;
        min-width: 100px;
    }

    .hosting-costs-hero,
    .hosting-costs-hero-tools {
        align-items: stretch;
        flex-direction: column;
    }

    .hosting-costs-hero-tools .hero-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

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

    .hosting-cost-stat:nth-child(3) {
        grid-column: 1 / -1;
        border-top: 1px solid #d8e3f0;
        border-left: 0;
    }

    .hosting-cost-price-grid-head {
        display: none;
    }

    .hosting-cost-price-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 14px 0;
    }

    .hosting-cost-price-grid input:first-child {
        grid-column: 1 / -1;
    }

    .hosting-cost-view-tabs {
        grid-template-columns: 1fr;
    }

    .hosting-cost-view-tabs a {
        min-height: 52px;
    }
}

@media (max-width: 560px) {
    .hosting-cost-summary,
    .hosting-cost-form-grid,
    .hosting-cost-price-grid {
        grid-template-columns: 1fr;
    }

    .hosting-cost-span-2,
    .hosting-cost-price-grid input:first-child {
        grid-column: auto;
    }

    .hosting-cost-stat + .hosting-cost-stat,
    .hosting-cost-stat:nth-child(3) {
        grid-column: auto;
        border-top: 1px solid #d8e3f0;
        border-left: 0;
    }

    .hosting-cost-alert {
        grid-template-columns: auto 1fr;
    }

    .hosting-cost-alert .button {
        grid-column: 1 / -1;
    }

    .hosting-cost-panel-head {
        align-items: stretch;
        flex-direction: column;
    }

    .hosting-module-page .hosting-cost-toast {
        right: 16px;
        bottom: 16px;
    }
}

/* v1.3.838 - compact contract payments workspace */
body.business-contract-payments-page .business-page-head {
    min-height: 0;
    margin-bottom: 10px;
    padding: 12px 18px;
}

body.business-contract-payments-page .business-page-head .eyebrow {
    margin-bottom: 2px;
}

body.business-contract-payments-page .business-page-head h2 {
    font-size: clamp(1.5rem, 2vw, 1.8rem);
    line-height: 1.05;
}

body.business-contract-payments-page .business-page-head .card-subtitle {
    margin-top: 3px;
    font-size: .82rem;
    line-height: 1.25;
}

body.business-contract-payments-page .business-contract-filter-card {
    margin-bottom: 10px;
    padding: 11px 14px;
}

body.business-contract-payments-page .business-contract-payment-filter-row {
    display: grid;
    grid-template-columns: minmax(240px, 1.45fr) 90px 120px minmax(190px, 1fr) 140px auto;
    align-items: end;
    gap: 9px;
}

body.business-contract-payments-page .business-contract-payment-filter-row .field {
    min-width: 0;
}

body.business-contract-payments-page .business-contract-payment-filter-row label {
    margin-bottom: 4px;
    font-size: .72rem;
}

body.business-contract-payments-page .business-contract-payment-filter-row input,
body.business-contract-payments-page .business-contract-payment-filter-row select,
body.business-contract-payments-page .business-contract-payment-filter-row .button {
    min-height: 42px;
}

body.business-contract-payments-page .business-contract-payment-filter-row input,
body.business-contract-payments-page .business-contract-payment-filter-row select {
    padding-top: 8px;
    padding-bottom: 8px;
}

body.business-contract-payments-page .business-contract-payment-filter-row .business-filter-actions {
    display: flex;
    flex-wrap: nowrap;
    gap: 7px;
    margin-left: 0;
}

body.business-contract-payments-page .business-contract-payment-filter-row .business-filter-actions .button {
    padding: 0 13px;
    white-space: nowrap;
}

body.business-contract-payments-page .business-contract-payment-summary-strip {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    overflow: hidden;
    margin: 0 0 10px;
    border: 1px solid #d8e5f2;
    border-radius: 12px;
    background: #fff;
}

body.business-contract-payments-page .business-contract-payment-summary-strip article {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 3px;
    min-width: 0;
    padding: 9px 13px;
    border-left: 1px solid #e1e9f2;
}

body.business-contract-payments-page .business-contract-payment-summary-strip article:first-child {
    border-left: 0;
}

body.business-contract-payments-page .business-contract-payment-summary-strip span {
    color: #607188;
    font-size: .68rem;
    font-weight: 950;
    line-height: 1.18;
    letter-spacing: .025em;
    text-transform: uppercase;
    white-space: normal;
}

body.business-contract-payments-page .business-contract-payment-summary-strip strong {
    color: #10233e;
    font-size: .98rem;
    line-height: 1.15;
    white-space: nowrap;
}

body.business-contract-payments-page .business-contract-payment-summary-strip small {
    color: #718198;
    font-size: .7rem;
    font-weight: 750;
}

body.business-contract-payments-page .business-contract-payment-summary-strip .is-paid strong {
    color: #07853f;
}

body.business-contract-payments-page .business-contract-payment-summary-strip .is-open strong {
    color: #a76200;
}

body.business-contract-payments-page .business-contract-payment-summary-strip .is-due strong {
    color: #c71d25;
}

body.business-contract-payments-page .business-contract-payment-workbench {
    margin-top: 0;
}

body.business-contract-payments-page details.business-report-accordion {
    overflow: hidden;
    padding: 0;
}

body.business-contract-payments-page .business-report-accordion > summary {
    display: grid;
    gap: 10px;
    padding: 13px 16px;
    cursor: pointer;
    list-style: none;
}

body.business-contract-payments-page .business-report-accordion > summary::-webkit-details-marker {
    display: none;
}

body.business-contract-payments-page .business-report-accordion-title {
    display: grid;
    gap: 2px;
}

body.business-contract-payments-page .business-report-accordion-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

body.business-contract-payments-page .business-report-accordion-summary-grid {
    width: 100%;
    margin: 0;
    pointer-events: none;
}

body.business-contract-payments-page .business-report-accordion-title small {
    color: #607188;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .025em;
}

body.business-contract-payments-page .business-report-accordion-title strong {
    color: #10233e;
    font-size: 1.08rem;
}

body.business-contract-payments-page .business-report-accordion-title em {
    color: #50719a;
    font-size: .78rem;
    font-style: normal;
    font-weight: 750;
}

body.business-contract-payments-page .business-report-accordion-action {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #0667d9;
    font-size: .82rem;
    font-weight: 850;
    white-space: nowrap;
}

body.business-contract-payments-page .business-report-accordion-action svg {
    width: 18px;
    transition: transform .18s ease;
}

body.business-contract-payments-page .business-report-accordion[open] > summary {
    border-bottom: 1px solid #dce8f4;
}

body.business-contract-payments-page .business-report-accordion[open] .business-report-accordion-action svg {
    transform: rotate(180deg);
}

body.business-contract-payments-page .business-report-accordion-body {
    padding: 10px 14px 14px;
}

body.business-contract-payments-page .business-report-accordion-description {
    margin: 0 0 9px;
    color: #607188;
    font-size: .78rem;
}

body.business-contract-payments-page .business-contract-payment-workbench > .business-table-toolbar {
    padding: 11px 14px 8px;
}

body.business-contract-payments-page .business-contract-payment-workbench > .business-table-toolbar .eyebrow {
    margin-bottom: 2px;
    font-size: .7rem;
}

body.business-contract-payments-page .business-contract-payment-workbench > .business-table-toolbar h3 {
    font-size: 1.2rem;
    line-height: 1.1;
}

body.business-contract-payments-page .business-contract-payment-workbench > .business-table-toolbar .card-subtitle {
    margin-top: 3px;
    font-size: .78rem;
}

body.business-contract-payments-page .business-contract-payment-workbench > .business-table-toolbar .button {
    min-height: 40px;
    padding: 0 14px;
}

body.business-contract-payments-page .business-contract-payment-view-tabs {
    gap: 4px;
    margin: 0 12px 7px;
    padding: 4px;
}

body.business-contract-payments-page .business-contract-payment-view-tab {
    min-height: 44px;
    padding: 6px 10px;
    text-decoration: none;
}

body.business-contract-payments-page .business-contract-payment-view-tab-main {
    display: flex;
    align-items: center;
    gap: 6px;
}

body.business-contract-payments-page .business-contract-payment-view-tab-main strong,
body.business-contract-payments-page .business-contract-payment-view-tab > b {
    font-size: .86rem;
}

body.business-contract-payments-page .business-contract-payment-view-tab-main small {
    font-size: .7rem;
    white-space: nowrap;
}

body.business-contract-payments-page .business-contract-payment-view-info {
    margin: 0;
    padding: 5px 14px 7px;
    font-size: .76rem;
}

body.business-contract-payments-page .business-contract-payment-view-info strong {
    font-size: .78rem;
}

body.business-contract-payments-page .business-contract-payment-table th,
body.business-contract-payments-page .business-contract-payment-table td {
    padding-top: 8px;
    padding-bottom: 8px;
}

@media screen and (min-width: 761px) {
    body.business-contract-payments-page .main {
        padding-top: 18px;
    }

    body.business-contract-payments-page .topbar {
        margin-bottom: 10px;
        padding: 10px 20px;
    }

    body.business-contract-payments-page .topbar .eyebrow {
        margin-bottom: 2px;
    }

    body.business-contract-payments-page .topbar h1 {
        font-size: clamp(1.65rem, 2.25vw, 2.15rem);
        line-height: 1.05;
    }
}

@media screen and (max-width: 1320px) {
    body.business-contract-payments-page .business-contract-payment-filter-row {
        grid-template-columns: minmax(240px, 1.4fr) 90px 120px minmax(180px, 1fr);
    }

    body.business-contract-payments-page .business-contract-payment-status-filter {
        grid-column: 1 / 2;
    }

    body.business-contract-payments-page .business-contract-payment-filter-row .business-filter-actions {
        grid-column: 2 / -1;
        justify-content: flex-end;
    }
}

@media screen and (max-width: 900px) {
    body.business-contract-payments-page .business-contract-payment-filter-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.business-contract-payments-page .business-contract-payment-filter-row .business-search-field,
    body.business-contract-payments-page .business-contract-payment-filter-row .business-contract-select-filter {
        grid-column: 1 / -1;
    }

    body.business-contract-payments-page .business-contract-payment-status-filter {
        grid-column: auto;
    }

    body.business-contract-payments-page .business-contract-payment-filter-row .business-filter-actions {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }

    body.business-contract-payments-page .business-contract-payment-summary-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.business-contract-payments-page .business-contract-payment-summary-strip article:nth-child(odd) {
        border-left: 0;
    }
}

@media screen and (max-width: 600px) {
    body.business-contract-payments-page .business-contract-payment-filter-row,
    body.business-contract-payments-page .business-contract-payment-summary-strip,
    body.business-contract-payments-page .business-contract-payment-view-tabs {
        grid-template-columns: 1fr;
    }

    body.business-contract-payments-page .business-contract-payment-filter-row .business-search-field,
    body.business-contract-payments-page .business-contract-payment-filter-row .business-contract-select-filter,
    body.business-contract-payments-page .business-contract-payment-status-filter,
    body.business-contract-payments-page .business-contract-payment-filter-row .business-filter-actions {
        grid-column: auto;
    }

    body.business-contract-payments-page .business-contract-payment-summary-strip article {
        border-top: 1px solid #e1e9f2;
        border-left: 0;
    }

    body.business-contract-payments-page .business-contract-payment-summary-strip article:first-child {
        border-top: 0;
    }
}
/* Poslovanje: jedinstveni kompaktni radni standard */
body.business-standard-page .business-page-head {
    min-height: 0;
    margin-bottom: 12px;
    padding: 16px 20px;
}

body.business-standard-page .business-page-head .eyebrow {
    margin-bottom: 2px;
}

body.business-standard-page .business-page-head h2 {
    margin: 0;
    font-size: clamp(1.65rem, 2.2vw, 2rem);
    line-height: 1.1;
}

body.business-standard-page .business-page-head p {
    margin: 3px 0 0;
    line-height: 1.35;
}

body.business-standard-page .compact-filter-card,
body.business-standard-page .business-filter-card,
body.business-standard-page .business-contract-filter-card {
    margin-bottom: 12px;
    padding: 12px 16px;
}

body.business-standard-page .business-renewal-workbar-main {
    align-items: end;
    gap: 12px;
}

body.business-standard-page .business-renewal-control-panel {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.business-standard-page .business-renewal-panel-heading {
    margin-bottom: 5px;
}

body.business-standard-page .business-renewal-panel-heading svg {
    width: 18px;
    height: 18px;
}

body.business-standard-page .business-renewal-workbar .business-filter-row,
body.business-standard-page .business-contract-payment-filter-row {
    gap: 8px;
}

body.business-standard-page .business-renewal-workbar .business-search-field {
    min-width: 250px;
}

body.business-standard-page .business-renewal-workbar input,
body.business-standard-page .business-renewal-workbar select,
body.business-standard-page .business-contract-filter-card input,
body.business-standard-page .business-contract-filter-card select {
    min-height: 46px;
}

body.business-standard-page .business-renewal-workbar .business-filter-actions .button,
body.business-standard-page .business-contract-filter-card .button {
    min-height: 46px;
    padding-block: 8px;
}

body.business-standard-page .business-renewal-year-nav a,
body.business-standard-page .business-contract-year-nav a {
    min-height: 44px;
    padding: 8px 12px;
}

body.business-standard-page .business-control-dashboard {
    padding: 16px 18px;
}

body.business-standard-page .business-control-dashboard-head {
    margin-bottom: 12px;
    padding-bottom: 12px;
}

body.business-standard-page .business-control-dashboard-head h2 {
    margin: 2px 0;
    font-size: clamp(1.65rem, 2.2vw, 2rem);
}

body.business-standard-page .business-dashboard-group-head {
    margin-bottom: 10px;
}

body.business-standard-page .business-dashboard-kpi-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    overflow: hidden;
    border: 1px solid #d7e4f2;
    border-radius: 14px;
    background: #fff;
}

body.business-standard-page .business-dashboard-kpi-grid > * {
    min-height: 92px;
    padding: 13px 16px;
    border: 0;
    border-right: 1px solid #d7e4f2;
    border-radius: 0;
    box-shadow: none;
}

body.business-standard-page .business-dashboard-kpi-grid > *:last-child {
    border-right: 0;
}

body.business-standard-page .business-dashboard-kpi-grid strong,
body.business-standard-page .business-dashboard-kpi-grid .value {
    font-size: clamp(1.45rem, 2vw, 1.9rem);
    line-height: 1.1;
}

body.business-standard-page .business-contract-payment-summary-strip {
    margin-bottom: 12px;
}

@media screen and (min-width: 1101px) {
    body.business-standard-page .business-renewal-workbar-main {
        grid-template-columns: minmax(0, 1fr) minmax(430px, 0.72fr);
    }
}

@media screen and (max-width: 1100px) {
    body.business-standard-page .business-renewal-workbar-main {
        grid-template-columns: 1fr;
    }

    body.business-standard-page .business-dashboard-kpi-grid {
        grid-template-columns: 1fr;
    }

    body.business-standard-page .business-dashboard-kpi-grid > * {
        border-right: 0;
        border-bottom: 1px solid #d7e4f2;
    }

    body.business-standard-page .business-dashboard-kpi-grid > *:last-child {
        border-bottom: 0;
    }
}

@media screen and (max-width: 720px) {
    body.business-standard-page .business-page-head,
    body.business-standard-page .compact-filter-card,
    body.business-standard-page .business-filter-card,
    body.business-standard-page .business-contract-filter-card,
    body.business-standard-page .business-control-dashboard {
        padding: 12px;
    }

    body.business-standard-page .business-renewal-workbar .business-search-field {
        min-width: 0;
        width: 100%;
    }
}

/* Session security: POST logout keeps the existing visual controls unchanged. */
.logout-form,
.mobile-logout-form {
    margin: 0;
}

button.mobile-icon-link {
    padding: 0;
    font: inherit;
    cursor: pointer;
}

.mobile-more-logout-form {
    width: 100%;
}

.session-expiry-notice {
    position: fixed;
    z-index: 100000;
    right: 20px;
    bottom: 20px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    width: min(520px, calc(100vw - 32px));
    padding: 16px 18px;
    border: 1px solid #f2c14e;
    border-radius: 16px;
    color: #3d2b00;
    background: #fff8df;
    box-shadow: 0 20px 50px rgba(15, 23, 42, .2);
}

.session-expiry-notice[hidden] {
    display: none;
}

.session-expiry-notice strong,
.session-expiry-notice span {
    display: block;
}

.session-expiry-notice span {
    margin-top: 3px;
    font-size: 13px;
    line-height: 1.4;
}

.session-expiry-notice .button {
    white-space: nowrap;
}

@media (max-width: 640px) {
    .session-expiry-notice {
        right: 12px;
        bottom: 84px;
        grid-template-columns: 1fr;
        width: calc(100vw - 24px);
    }

    .session-expiry-notice .button {
        width: 100%;
    }
}

/* v1.3.944: existing guest picker in the reservation drawer. */
.reservation-guest-picker {
    position: relative;
    display: grid;
    gap: 10px;
    margin-bottom: 18px;
    padding: 14px;
    border: 1px solid #cfe0f3;
    border-radius: 14px;
    background: #f7fbff;
}

.reservation-guest-picker-head,
.reservation-guest-selected,
.reservation-guest-update {
    display: flex;
    align-items: center;
    gap: 12px;
}

.reservation-guest-picker-head {
    justify-content: space-between;
}

.reservation-guest-picker-head > div,
.reservation-guest-selected > div,
.reservation-guest-update > span,
.reservation-guest-result-main,
.reservation-guest-result-history {
    min-width: 0;
}

.reservation-guest-picker-head strong,
.reservation-guest-picker-head span,
.reservation-guest-selected span,
.reservation-guest-selected strong,
.reservation-guest-selected small,
.reservation-guest-update strong,
.reservation-guest-update small,
.reservation-guest-result span,
.reservation-guest-result strong,
.reservation-guest-result small {
    display: block;
}

.reservation-guest-picker-head > div > strong {
    color: #082f55;
    font-size: 15px;
}

.reservation-guest-picker-head > div > span,
.reservation-guest-update small {
    margin-top: 2px;
    color: #607896;
    font-size: 12px;
    line-height: 1.4;
}

.reservation-guest-new-button {
    flex: 0 0 auto;
}

.reservation-guest-search {
    position: relative;
}

.reservation-guest-search > svg {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 14px;
    width: 19px;
    height: 19px;
    color: #477097;
    transform: translateY(-50%);
    pointer-events: none;
}

.reservation-guest-search input {
    width: 100%;
    min-height: 48px;
    padding-left: 44px;
    border-color: #bfd6ee;
    background: #fff;
}

.reservation-guest-picker-status {
    margin: 0;
    color: #607896;
    font-size: 12px;
}

.reservation-guest-picker-status.is-error {
    color: #b42318;
}

.reservation-guest-picker-results {
    position: absolute;
    z-index: 30;
    top: calc(100% + 6px);
    right: 0;
    left: 0;
    max-height: 330px;
    overflow-y: auto;
    border: 1px solid #b9d2eb;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(8, 47, 85, .18);
}

.reservation-guest-result {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(190px, .8fr) auto;
    align-items: center;
    gap: 16px;
    width: 100%;
    padding: 12px 14px;
    border: 0;
    border-bottom: 1px solid #e1ebf5;
    color: #102a43;
    text-align: left;
    background: #fff;
    cursor: pointer;
}

.reservation-guest-result:last-child {
    border-bottom: 0;
}

.reservation-guest-result:hover,
.reservation-guest-result:focus-visible {
    outline: 0;
    background: #edf6ff;
}

.reservation-guest-result strong {
    font-size: 14px;
}

.reservation-guest-result small {
    margin-top: 3px;
    overflow: hidden;
    color: #607896;
    font-size: 11px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.reservation-guest-result-action {
    color: #0866c6;
    font-size: 12px;
    font-weight: 800;
}

.reservation-guest-selected {
    padding: 11px 12px;
    border: 1px solid #9cd8bd;
    border-radius: 11px;
    color: #075b3f;
    background: #effbf5;
}

.reservation-guest-selected > svg {
    flex: 0 0 auto;
    width: 21px;
    height: 21px;
}

.reservation-guest-selected > div {
    flex: 1 1 auto;
}

.reservation-guest-selected span,
.reservation-guest-selected small {
    font-size: 11px;
}

.reservation-guest-selected strong {
    margin-top: 1px;
    color: #073b2c;
    font-size: 14px;
}

.reservation-guest-selected small {
    margin-top: 2px;
    color: #39705f;
}

.reservation-guest-update {
    align-items: flex-start;
    padding: 10px 12px;
    border: 1px dashed #bfd6ee;
    border-radius: 10px;
    background: #fff;
    cursor: pointer;
}

.reservation-guest-update input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
}

.reservation-guest-update strong {
    color: #173d62;
    font-size: 13px;
}

@media (max-width: 760px) {
    .reservation-guest-picker-head,
    .reservation-guest-selected {
        align-items: stretch;
        flex-direction: column;
    }

    .reservation-guest-new-button,
    .reservation-guest-selected .button {
        width: 100%;
    }

    .reservation-guest-result {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 8px 12px;
    }

    .reservation-guest-result-history {
        grid-column: 1 / -1;
        grid-row: 2;
    }
}

/* v1.3.946: PDV commission report may flow across as many A4 pages as needed. */
@media print {
    @page commission-vat-report {
        size: A4 portrait;
        margin: 0;
    }

    html.commission-vat-print-root,
    html.commission-vat-print-root body.print-window,
    html.commission-vat-print-root body.print-document-only {
        width: 210mm !important;
        min-width: 210mm !important;
        max-width: 210mm !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.commission-vat-report-print-window .print-window-wrap,
    body.print-commission-vat-report-only #print-document-host {
        position: static !important;
        inset: auto !important;
        display: block !important;
        width: 210mm !important;
        min-width: 210mm !important;
        max-width: 210mm !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.commission-vat-report-print-window .commission-vat-report-page,
    body.print-commission-vat-report-only #print-document-host .commission-vat-report-page {
        width: 210mm !important;
        min-width: 210mm !important;
        max-width: 210mm !important;
        height: auto !important;
        min-height: 297mm !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 18mm 14mm 20mm !important;
        overflow: visible !important;
        box-shadow: none !important;
        page: commission-vat-report !important;
        break-inside: auto !important;
        page-break-inside: auto !important;
    }

    .commission-vat-report-page .report-print-head,
    .commission-vat-report-page .report-print-title-block,
    .commission-vat-report-page .report-period-note,
    .commission-vat-report-page .report-print-summary,
    .commission-vat-report-page .report-print-two-col,
    .commission-vat-report-page .report-print-section-title,
    .commission-vat-report-page .document-footer {
        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }

    .commission-vat-report-page .report-detail-table {
        break-inside: auto !important;
        page-break-inside: auto !important;
    }

    .commission-vat-report-page .report-detail-table thead {
        display: table-header-group !important;
    }

    .commission-vat-report-page .report-detail-table tfoot {
        display: table-footer-group !important;
    }

    .commission-vat-report-page .report-detail-table tr,
    .commission-vat-report-page .report-detail-table td {
        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }
}

/* v1.3.949: explicit, printer-safe A4 sheets with numbered footers. */
#print-document-host.commission-vat-pagination-host {
    position: absolute;
    top: 0;
    left: -300vw;
    display: block;
    visibility: hidden;
    width: 210mm;
}

.commission-vat-print-pages {
    display: grid;
    width: 210mm;
    margin: 0 auto;
    gap: 18px;
}

.commission-vat-print-sheet,
body.commission-vat-report-print-window .print-window-wrap .commission-vat-print-sheet,
body.print-document-only #print-document-host .commission-vat-print-sheet {
    position: relative !important;
    display: block !important;
    box-sizing: border-box !important;
    width: 210mm !important;
    min-width: 210mm !important;
    max-width: 210mm !important;
    height: 296mm !important;
    min-height: 296mm !important;
    max-height: 296mm !important;
    margin: 0 !important;
    padding: 12mm 14mm 23mm !important;
    overflow: hidden !important;
    background: #fff !important;
    page: auto !important;
}

.commission-vat-print-sheet-content {
    box-sizing: border-box;
    height: 258mm;
    overflow: hidden;
}

.commission-vat-print-footer,
.commission-vat-report-page .commission-vat-print-footer {
    position: absolute !important;
    right: 14mm !important;
    bottom: 12mm !important;
    left: 14mm !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: auto !important;
    min-height: 5mm;
    margin: 0 !important;
    padding: 2.5mm 0 0 !important;
    border-top: .18mm solid #9aabba !important;
    color: #596b80 !important;
    text-align: left !important;
    font-size: 6.5pt !important;
    line-height: 1.2 !important;
}

.commission-vat-print-page-number {
    color: #0a2342;
    font-size: 7pt;
    font-weight: 800;
    white-space: nowrap;
}

.commission-vat-continuation-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12mm;
    margin: 0 0 5mm;
    padding: 0 0 3mm;
    border-bottom: .18mm solid #9aabba;
    color: #0a2342;
}

.commission-vat-continuation-head strong {
    font-size: 11pt;
    text-transform: uppercase;
}

.commission-vat-continuation-head span {
    color: #596b80;
    font-size: 7.5pt;
    white-space: nowrap;
}

@media print {
    body.print-commission-vat-report-only #print-document-host.commission-vat-pagination-host {
        position: static !important;
        display: block !important;
        visibility: visible !important;
    }

    .commission-vat-print-pages {
        display: block !important;
        gap: 0 !important;
    }

    .commission-vat-print-sheet,
    body.commission-vat-report-print-window .commission-vat-print-sheet,
    body.print-commission-vat-report-only #print-document-host .commission-vat-print-sheet {
        page-break-inside: avoid !important;
        box-shadow: none !important;
    }
}

/* v1.3.947: minimal guestbook data entry. */
.guestbook-minimal-form {
    display: grid;
    gap: 18px;
}

/* v1.3.950: reservation guest entry follows the same minimal-data model. */
.reservation-panel-guest .extra-guest-row .extra-guest-first-name-field,
.reservation-panel-guest .extra-guest-row .extra-guest-last-name-field,
.reservation-panel-guest .extra-guest-row .extra-guest-email-field,
.reservation-panel-guest .extra-guest-row .extra-guest-phone-field {
    grid-column: span 3;
}

.reservation-panel-guest .extra-guest-row .extra-guest-country-field {
    grid-column: span 4;
}

/* v1.3.951: additional guests use the Guestbook picker and share reservation history. */
.reservation-panel-guest .extra-guest-picker {
    position: relative;
    display: grid;
    grid-column: 1 / 13;
    gap: 9px;
    padding: 12px;
    border: 1px solid #cfe0f3;
    border-radius: 12px;
    background: #f7fbff;
}

.extra-guest-picker-head,
.extra-guest-selected,
.extra-guest-update-choice {
    display: flex;
    align-items: center;
    gap: 10px;
}

.extra-guest-picker-head {
    justify-content: space-between;
}

.extra-guest-picker-head > div {
    min-width: 0;
}

.extra-guest-picker-head strong,
.extra-guest-picker-head span {
    display: block;
}

.extra-guest-picker-head strong {
    color: #082f55;
    font-size: 13px;
}

.extra-guest-picker-head span {
    margin-top: 2px;
    color: #607896;
    font-size: 11px;
}

.extra-guest-picker-head .button {
    flex: 0 0 auto;
    min-height: 36px;
    padding: 7px 10px;
    font-size: 12px;
}

.extra-guest-picker .reservation-guest-search input {
    min-height: 42px;
}

.extra-guest-selected {
    padding: 8px 10px;
    border: 1px solid #9cd8bd;
    border-radius: 9px;
    color: #075b3f;
    background: #effbf5;
    font-size: 12px;
}

.extra-guest-selected > svg {
    width: 18px;
    height: 18px;
}

.extra-guest-update-choice {
    align-items: flex-start;
    color: #385675;
    font-size: 12px;
    cursor: pointer;
}

.extra-guest-update-choice input {
    width: 17px;
    height: 17px;
    margin: 0;
}

.guest-history-main {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.guest-history-main small {
    color: #607896;
    line-height: 1.35;
}

.guest-history-role {
    padding: 5px 9px;
    border-radius: 999px;
    color: #5b3f00;
    background: #fff4d6;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.guest-history-role.is-primary {
    color: #075b3f;
    background: #e9f8f1;
}

@media (max-width: 760px) {
    .reservation-panel-guest .extra-guest-picker {
        grid-column: 1 / -1;
    }

    .extra-guest-picker-head {
        align-items: flex-start;
    }

    .extra-guest-picker .reservation-guest-result {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .extra-guest-picker .reservation-guest-result-history {
        display: none;
    }

    .guest-history-item {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .guest-history-item > .status-badge {
        grid-column: 2;
    }
}

.guestbook-minimal-intro {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--line);
}

.guestbook-minimal-intro h4 {
    margin: 0 0 5px;
}

.guestbook-minimal-intro p {
    max-width: 760px;
    margin: 0;
}

@media (max-width: 640px) {
    .guestbook-minimal-intro {
        align-items: stretch;
        flex-direction: column;
    }

    .guestbook-minimal-intro .status-badge {
        width: max-content;
    }
}

/* v1.3.959 - consolidated two-column accommodation finance overview */
.finance-overview-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(330px, .82fr);
    gap: 14px;
    align-items: stretch;
    margin: 0 0 18px;
}

.finance-statement-card,
.finance-control-card {
    min-width: 0;
    border: 1px solid var(--erp-border-soft, #dbe7f5);
    border-radius: var(--erp-radius-card, 10px);
    background: #fff;
    box-shadow: var(--erp-shadow-card, 0 12px 28px rgba(15, 31, 53, .06));
}

.finance-statement-card {
    overflow: hidden;
    border-left: 4px solid #68aef4;
}

.finance-statement-card.is-actual {
    border-left-color: #059669;
}

.finance-statement-head,
.finance-control-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.finance-statement-head {
    padding: 18px 20px 16px;
    border-bottom: 1px solid var(--erp-border-soft, #dbe7f5);
    background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
}

.finance-statement-head h2,
.finance-statement-head p,
.finance-control-head h2,
.finance-control-head p {
    margin: 0;
}

.finance-statement-head h2,
.finance-control-head h2 {
    color: var(--ink);
    font-size: 20px;
    line-height: 1.2;
}

.finance-statement-head p:not(.eyebrow) {
    max-width: 680px;
    margin-top: 5px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}

.finance-statement-head .status-badge {
    flex: 0 0 auto;
    max-width: 44%;
    white-space: normal;
}

.finance-statement-list {
    display: grid;
    margin: 0;
    padding: 6px 20px 8px;
}

.finance-statement-list > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: baseline;
    min-height: 48px;
    padding: 13px 0;
    border-top: 1px solid #edf3fb;
}

.finance-statement-list > div:first-child {
    border-top: 0;
}

.finance-statement-list > .finance-statement-section-start {
    margin-top: 5px;
    border-top: 2px solid #dce9f7;
}

.finance-statement-list > .finance-statement-subtotal {
    font-weight: 800;
}

.finance-statement-list dt {
    color: #53657d;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .015em;
    text-transform: uppercase;
}

.finance-statement-list dd {
    margin: 0;
    color: var(--ink);
    font-size: 17px;
    font-weight: 850;
    line-height: 1.2;
    text-align: right;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.finance-statement-list > .is-total {
    min-height: 58px;
    margin: 5px -10px 0;
    padding: 15px 10px;
    border: 0;
    border-radius: 8px;
    background: #edf7ff;
}

.finance-statement-card.is-actual .finance-statement-list > .is-total {
    background: #eafbf2;
}

.finance-statement-list > .is-total dt,
.finance-statement-list > .is-total dd {
    color: #047857;
    font-size: 18px;
}

.finance-statement-list > .finance-period-split {
    min-height: 42px;
    padding: 10px 0;
    background: #fbfdff;
}

.finance-statement-list > .finance-period-split dt {
    color: var(--muted);
}

.finance-statement-list > .finance-period-split dd {
    font-size: 15px;
}

.finance-statement-foot {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 13px 20px;
    border-top: 1px solid var(--erp-border-soft, #dbe7f5);
    background: #f8fbff;
}

.finance-statement-foot span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border: 1px solid #d8e7f7;
    border-radius: 999px;
    background: #fff;
    color: #53657d;
    font-size: 12px;
    font-weight: 700;
}

.finance-statement-foot svg {
    width: 15px;
    height: 15px;
    color: var(--blue);
}

.finance-statement-foot strong {
    color: var(--ink);
}

.finance-control-card {
    display: grid;
    grid-template-rows: auto auto auto 1fr;
    align-content: start;
    overflow: hidden;
}

.finance-control-head {
    padding: 18px;
    border-bottom: 1px solid var(--erp-border-soft, #dbe7f5);
}

.finance-control-state {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 28px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #edf3fb;
    color: #53657d;
    font-size: 11px;
    font-weight: 850;
    white-space: nowrap;
}

.finance-control-state.is-ok,
.finance-control-actions em.is-ok {
    background: #e9f9f0;
    color: #047857;
}

.finance-control-state.is-attention,
.finance-control-actions em.is-attention {
    background: #fff4dc;
    color: #b45309;
}

.finance-control-actions {
    display: grid;
    padding: 8px 14px;
    border-bottom: 1px solid var(--erp-border-soft, #dbe7f5);
}

.finance-control-actions a {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) auto 18px;
    gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 10px 4px;
    border-top: 1px solid #edf3fb;
    color: var(--ink);
    text-decoration: none;
}

.finance-control-actions a:first-child {
    border-top: 0;
}

.finance-control-actions a:hover {
    color: var(--blue);
}

.finance-control-actions a > span:not(.finance-control-action-icon) {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.finance-control-action-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: #eef6ff;
    color: var(--blue);
}

.finance-control-action-icon svg,
.finance-control-actions a > svg {
    width: 17px;
    height: 17px;
}

.finance-control-actions a > svg {
    color: #8ca0b8;
}

.finance-control-actions strong,
.finance-control-actions small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.finance-control-actions strong {
    font-size: 14px;
}

.finance-control-actions small {
    color: var(--muted);
    font-size: 11px;
    font-weight: 700;
}

.finance-control-actions em {
    padding: 5px 8px;
    border-radius: 999px;
    background: #f2f6fb;
    color: #53657d;
    font-size: 11px;
    font-style: normal;
    font-weight: 850;
    white-space: nowrap;
}

.finance-ratio-section {
    display: grid;
    gap: 14px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--erp-border-soft, #dbe7f5);
}

.finance-ratio-heading h3,
.finance-ratio-heading small {
    display: block;
    margin: 0;
}

.finance-ratio-heading h3 {
    color: var(--ink);
    font-size: 14px;
}

.finance-ratio-heading small {
    margin-top: 2px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 700;
}

.finance-ratio-row {
    display: grid;
    gap: 6px;
}

.finance-ratio-row > div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
}

.finance-ratio-row span,
.finance-ratio-row strong {
    font-size: 12px;
    font-weight: 800;
}

.finance-ratio-row span {
    color: #53657d;
}

.finance-ratio-row strong {
    color: var(--ink);
    font-variant-numeric: tabular-nums;
}

.finance-ratio-track {
    display: block;
    width: 100%;
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: #edf3fb;
}

.finance-ratio-track i {
    display: block;
    height: 100%;
    border-radius: inherit;
}

.finance-ratio-track i.is-paid {
    background: #0b63c7;
}

.finance-ratio-track i.is-cost {
    background: #ef4444;
}

.finance-ratio-track i.is-net {
    background: #059669;
}

.finance-control-flow {
    display: grid;
    align-content: end;
    gap: 9px;
    padding: 16px 18px 18px;
    background: #fbfdff;
}

.finance-control-flow .finance-flow-head {
    align-items: center;
}

.finance-control-flow .finance-flow-head small {
    max-width: 190px;
    text-align: right;
}

.finance-control-flow .finance-flow-bar {
    height: 9px;
}

.finance-control-flow .finance-flow-legend {
    gap: 6px 10px;
}

@media (max-width: 1180px) {
    .finance-overview-workspace {
        grid-template-columns: minmax(0, 1.45fr) minmax(310px, .8fr);
    }

    .finance-control-actions a {
        grid-template-columns: 34px minmax(0, 1fr) 18px;
    }

    .finance-control-actions em {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 920px) {
    .finance-overview-workspace {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 620px) {
    .finance-statement-head,
    .finance-control-head {
        flex-direction: column;
    }

    .finance-statement-head .status-badge {
        max-width: 100%;
    }

    .finance-statement-list {
        padding-right: 14px;
        padding-left: 14px;
    }

    .finance-statement-list > div {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .finance-statement-list dd {
        text-align: left;
    }
}

/* v1.3.960 - accommodation finance typography aligned with the module */
body.accommodation-module-page .finance-statement-head h2,
body.accommodation-module-page .finance-control-head h2 {
    font-size: 18px;
    line-height: 1.2;
}

body.accommodation-module-page .finance-statement-list dd {
    font-size: 16px;
}

body.accommodation-module-page .finance-statement-list > .is-total {
    min-height: 52px;
    padding-top: 12px;
    padding-bottom: 12px;
}

body.accommodation-module-page .finance-statement-list > .is-total dt {
    font-size: 12px;
}

body.accommodation-module-page .finance-statement-list > .is-total dd {
    font-size: 16px;
}

body.accommodation-module-page .finance-control-actions strong,
body.accommodation-module-page .finance-ratio-heading h3 {
    font-size: 13px;
}

body.accommodation-module-page .finance-ratio-row span,
body.accommodation-module-page .finance-ratio-row strong {
    font-size: 11px;
}

body.accommodation-module-page .finance-subpage-card {
    margin-top: 10px;
    border: 1px solid var(--erp-border-soft, #dbe7f5);
    border-left: 4px solid #70aeea;
    border-radius: var(--erp-radius-card, 10px);
    background: #fff;
    box-shadow: var(--erp-shadow-card, 0 12px 30px rgba(22, 55, 96, .07));
    overflow: hidden;
}

body.accommodation-module-page .finance-subpage-payments {
    border-left-color: #0b63c7;
}

body.accommodation-module-page .finance-subpage-expenses {
    border-left-color: #e89a24;
}

body.accommodation-module-page .finance-subpage-vat {
    border-left-color: #7c62d8;
}

body.accommodation-module-page .finance-subpage-archive {
    border-left-color: #64748b;
}

body.accommodation-module-page .finance-subpage-card > .finance-subpage-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin: 0;
    padding: 16px 18px 14px;
    border-bottom: 1px solid #e7eef7;
    background: #fff;
}

body.accommodation-module-page .finance-subpage-head .eyebrow {
    margin-bottom: 5px;
    font-size: 10px;
    line-height: 1.2;
}

body.accommodation-module-page .finance-subpage-head h2 {
    margin: 0;
    font-size: 18px;
    font-weight: 750;
    line-height: 1.25;
}

body.accommodation-module-page .finance-subpage-head .card-subtitle {
    margin-top: 6px;
    font-size: 11px;
    line-height: 1.45;
}

body.accommodation-module-page .finance-subpage-card .payment-summary-grid,
body.accommodation-module-page .finance-subpage-card .expense-summary-grid {
    gap: 10px;
    margin: 0;
    padding: 14px 16px;
    border-bottom: 1px solid #e7eef7;
    background: #fbfdff;
}

body.accommodation-module-page .finance-subpage-card .payment-summary-grid > div,
body.accommodation-module-page .finance-subpage-card .expense-summary-grid > article {
    min-height: 78px;
    padding: 12px 13px;
    border-radius: 8px;
}

body.accommodation-module-page .finance-subpage-card .payment-summary-grid span,
body.accommodation-module-page .finance-subpage-card .expense-summary-grid span {
    font-size: 10px;
    letter-spacing: .02em;
}

body.accommodation-module-page .finance-subpage-card .payment-summary-grid strong,
body.accommodation-module-page .finance-subpage-card .expense-summary-grid strong {
    margin-top: 4px;
    font-size: 17px;
    line-height: 1.2;
}

body.accommodation-module-page .finance-subpage-card .payment-summary-grid small,
body.accommodation-module-page .finance-subpage-card .expense-summary-grid small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 10px;
    font-weight: 650;
}

body.accommodation-module-page .finance-subpage-card > .table-card.embedded-table,
body.accommodation-module-page .finance-subpage-card > table {
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

body.accommodation-module-page .finance-subpage-card table th {
    font-size: 10px;
}

body.accommodation-module-page .finance-subpage-card table td {
    font-size: 12px;
}

body.accommodation-module-page .finance-subpage-vat .report-vat-filter {
    gap: 10px;
    margin: 0;
    padding: 14px 16px;
    border-top: 0;
    border-bottom: 1px solid #e7eef7;
    background: #fff;
}

body.accommodation-module-page .finance-subpage-vat .report-vat-grid {
    gap: 12px;
    padding: 14px 16px 16px;
}

body.accommodation-module-page .finance-subpage-vat .report-vat-grid > .table-card {
    margin: 0;
    border-radius: 8px;
    box-shadow: none;
}

body.accommodation-module-page .finance-subpage-vat .report-vat-grid .table-card-head {
    padding: 13px 14px 11px;
}

body.accommodation-module-page .finance-subpage-vat .report-vat-grid h2 {
    font-size: 15px;
}

body.accommodation-module-page .finance-subpage-archive .report-archive-list-table {
    border-top: 1px solid #e7eef7;
}

body.accommodation-module-page .finance-tabs-under-filter a {
    font-size: 12px;
}

@media (max-width: 760px) {
    body.accommodation-module-page .finance-subpage-card > .finance-subpage-head {
        flex-direction: column;
    }

    body.accommodation-module-page .finance-subpage-vat .report-vat-grid {
        grid-template-columns: 1fr;
    }
}
