@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/pilot/assets/fonts/golos-text-cyrillic-400-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

.fm2-otiz-page{background:#fff;color:#14202b}.fm2-otiz-tabs{display:flex;gap:24px;border-bottom:1px solid #dfe4e8}.fm2-otiz-tabs a{min-height:44px;padding:12px 2px;color:#53616d;text-decoration:none}.fm2-otiz-tabs a[aria-current=page]{color:#14202b;border-bottom:2px solid #245b99}.fm2-otiz-workflow{display:grid;gap:24px;margin:24px 0;padding:26px;background:#eef0f4;border-radius:14px}.fm2-otiz-facts,.fm2-otiz-object-row header dl{display:flex;flex-wrap:wrap;gap:24px;margin:16px 0 0}.fm2-otiz-facts div,.fm2-otiz-object-row header dl div{display:grid;gap:4px}.fm2-otiz-facts dt,.fm2-otiz-object-row dt{color:#53616d;font-size:12px}.fm2-otiz-facts dd,.fm2-otiz-object-row dd{margin:0;font-weight:600}.fm2-otiz-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:0;padding:0;list-style:none;background:#d9dee3}.fm2-otiz-steps li{padding:14px;background:#fff;font-size:13px}.fm2-otiz-workflow-actions{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px}.fm2-otiz-workflow-actions form{display:grid;gap:8px}.fm2-otiz-workflow-actions p{margin:0;max-width:70ch}.fm2-otiz-object-row{margin:18px 0;padding:24px;border:1px solid #dfe4e8;border-radius:14px}.fm2-otiz-object-row>header{display:flex;justify-content:space-between;gap:24px}.fm2-otiz-object-row h2{margin:0}.fm2-otiz-object-row h3{font-size:14px}.fm2-otiz-drawer[aria-hidden=true],.fm2-otiz-payment-dialog[aria-hidden=true]{display:none}.fm2-otiz-drawer,.fm2-otiz-payment-dialog{position:fixed;inset:0;z-index:1000}.fm2-otiz-drawer-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgb(10 20 30/45%)}.fm2-otiz-drawer-panel{position:absolute;inset-block:0;inset-inline-end:0;width:min(520px,92vw);overflow:auto;padding:28px;background:#fff;box-shadow:-12px 0 32px rgb(15 30 45/18%)}.fm2-otiz-payment-dialog{display:grid;place-items:center;padding:20px;background:rgb(10 20 30/45%)}.fm2-otiz-payment-dialog>div{max-width:520px;padding:28px;border-radius:14px;background:#fff}.fm2-otiz-ledger{margin-top:24px}.fm2-otiz-register-wrap{overflow-x:auto;background:#fff}.fm2-otiz-register-wrap:focus-visible,.fm2-otiz :focus-visible{outline:3px solid #245b99;outline-offset:3px}
@media(max-width:640px){.fm2-otiz-steps{grid-template-columns:1fr}.fm2-otiz-object-row>header{flex-direction:column}.fm2-otiz-workflow{padding:18px}.fm2-otiz-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;overflow:visible}.fm2-otiz-tabs a{display:grid;place-items:center;min-width:0;padding-inline:4px;font-size:12px;line-height:1.25;text-align:center;white-space:normal}.fm2-otiz-workflow-actions,.fm2-otiz-workflow-actions form,.fm2-otiz-workflow-actions .shlz-button,.fm2-otiz-object-row .shlz-button{width:100%;box-sizing:border-box}.fm2-otiz-object-row{padding:18px;overflow:hidden}.fm2-otiz-object-row a{overflow-wrap:anywhere}}

/* OTIZ object economics register */
.fm2-otiz-register-head{align-items:flex-end}.fm2-otiz-asof{margin:0;color:#66717c;font-size:13px;white-space:nowrap}.fm2-otiz-register-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:24px 0;background:#fff;border-radius:14px;overflow:hidden}.fm2-otiz-register-summary>div{display:flex;min-height:116px;flex-direction:column;justify-content:center;padding:20px 22px;border-right:1px solid #e0e4e8}.fm2-otiz-register-summary>div:last-child{border:0}.fm2-otiz-register-summary span{color:#66717c;font-size:13px}.fm2-otiz-register-summary strong{margin:7px 0 5px;color:#0b1623;font-size:24px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.fm2-otiz-register-summary small{color:#7a858f;font-size:12px}.fm2-otiz-register-summary__balance{background:#eef0f4}.fm2-otiz-register-toolbar{display:flex;align-items:flex-end;gap:16px;padding:18px 20px;border-bottom:1px solid #e0e4e8}.fm2-otiz-register-toolbar .shlz-field:first-child{width:min(360px,40vw)}.fm2-otiz-register-toolbar .shlz-field:nth-child(2){width:230px}.fm2-otiz-register-toolbar .fm2-result-count{margin-left:auto;margin-bottom:12px}.fm2-otiz-register-table{min-width:1320px}.fm2-otiz-register-table th{white-space:nowrap}.fm2-otiz-register-table td{vertical-align:top;font-variant-numeric:tabular-nums}.fm2-otiz-register-table td:first-child{min-width:210px}.fm2-otiz-register-table td:nth-child(3),.fm2-otiz-register-table td:nth-child(5),.fm2-otiz-register-table td:nth-child(6),.fm2-otiz-register-table td:nth-child(8){min-width:145px}.fm2-otiz-register-table td:nth-child(7){min-width:180px}.fm2-otiz-register-table td strong{display:block;white-space:nowrap}.fm2-otiz-register-table td small{display:block;max-width:250px;margin-top:4px;color:#737e89;line-height:1.35}.fm2-money-positive strong{color:#245b99}.fm2-money-negative strong{color:#9a4f24}.fm2-fund-track{display:block;width:100%;height:4px;margin-top:9px;overflow:hidden;border-radius:2px;background:#dfe2e6}.fm2-fund-track-fill{fill:var(--fm2-primary)}.fm2-otiz-register-empty{padding:56px 24px;text-align:center}.fm2-otiz-register-empty h2{margin:0 0 8px;font-size:20px}.fm2-otiz-register-empty p{margin:0;color:#66717c}
@media(max-width:1100px){.fm2-otiz-register-summary{grid-template-columns:repeat(2,1fr)}.fm2-otiz-register-summary>div{border-bottom:1px solid #e0e4e8}.fm2-otiz-register-summary__balance{grid-column:span 2}}
@media(max-width:700px){.fm2-otiz-register-head{align-items:flex-start}.fm2-otiz-asof{white-space:normal}.fm2-otiz-register-summary{grid-template-columns:1fr}.fm2-otiz-register-summary__balance{grid-column:auto}.fm2-otiz-register-summary>div{min-height:98px;border-right:0}.fm2-otiz-register-toolbar{align-items:stretch;flex-direction:column}.fm2-otiz-register-toolbar .shlz-field:first-child,.fm2-otiz-register-toolbar .shlz-field:nth-child(2){width:100%}.fm2-otiz-register-toolbar .fm2-result-count{margin:0}}
.fm2-otiz-register-table{min-inline-size:1180px;table-layout:auto}.fm2-otiz-register-table .shlz-table__cell{block-size:50px;padding:0 8px;vertical-align:middle}.fm2-otiz-register-table td.shlz-table__cell:first-child{min-inline-size:210px;inline-size:20%}.fm2-otiz-register-table td.shlz-table__cell:nth-child(3),.fm2-otiz-register-table td.shlz-table__cell:nth-child(5),.fm2-otiz-register-table td.shlz-table__cell:nth-child(6),.fm2-otiz-register-table td.shlz-table__cell:nth-child(8){min-inline-size:0}.fm2-otiz-register-table td.shlz-table__cell:nth-child(7){min-inline-size:180px}.fm2-otiz-register-table .shlz-table__cell>small{max-inline-size:none}
.fm2-penalty-breakdown{display:grid!important;gap:2px}.fm2-penalty-breakdown span{display:block;white-space:nowrap}

@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/pilot/assets/fonts/golos-text-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00ff, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/pilot/assets/fonts/golos-text-cyrillic-500-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/pilot/assets/fonts/golos-text-latin-500-normal.woff2") format("woff2");
  unicode-range: U+0000-00ff, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/pilot/assets/fonts/golos-text-cyrillic-600-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045f, U+0490-0491, U+04b0-04b1, U+2116;
}

@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/pilot/assets/fonts/golos-text-latin-600-normal.woff2") format("woff2");
  unicode-range: U+0000-00ff, U+0131, U+0152-0153, U+02bb-02bc, U+02c6, U+02da, U+02dc, U+0304, U+0308, U+0329, U+2000-206f, U+20ac, U+2122, U+2191, U+2193, U+2212, U+2215, U+feff, U+fffd;
}

:root {
  color-scheme: light;
  --fm2-ink: var(--shlz-source-color-dark-blue-dark-blue, #0b1623);
  --fm2-primary: var(--shlz-source-color-blue-blue-200, #253d98);
  --fm2-primary-soft: var(--shlz-source-color-blue-blue-100, #dfe2f0);
  --fm2-filter: var(--shlz-source-color-blue-blue-50, #eef0f4);
  --fm2-canvas: var(--shlz-semantic-color-surface-subtle, #f4f6f9);
  --fm2-surface: var(--shlz-semantic-color-surface-base, #fff);
  --fm2-border: var(--shlz-semantic-color-border-default, #d1d8df);
  --fm2-muted: var(--shlz-semantic-color-text-secondary, #697586);
  --fm2-focus-ring: #46515e;
  --fm2-focus-ring-inverse: #fff;
  --fm2-focus-halo: rgb(70 81 94 / 18%);
  --fm2-radius: var(--shlz-source-radius-regular, 8px);
  --fm2-pill: var(--shlz-source-radius-max, 999px);
}

/* Short first-session launch state. Kept local so it remains available before
   the application shell and optional behavior bundles finish loading. */
.fm2-preloader {
  position: fixed;
  z-index: 1000;
  inset: 0;
  display: none;
  place-items: center;
  overflow: hidden;
  color: #fff;
  background: var(--fm2-ink, #0b1623);
  isolation: isolate;
}

.fm2-preload-enabled .fm2-preloader { display: grid; }

.fm2-preloader::before {
  position: absolute;
  z-index: -1;
  inset: 34% 14%;
  background: radial-gradient(ellipse at center, rgb(111 140 255 / 24%), transparent 68%);
  content: "";
  animation: fm2-preloader-ambient 1.1s ease-in-out infinite alternate;
}

.fm2-preloader__lockup {
  display: grid;
  justify-items: center;
  gap: 18px;
  inline-size: min(320px, 80vw);
}

.fm2-preloader__mark {
  inline-size: 76px;
  block-size: 76px;
  filter: drop-shadow(0 12px 22px rgb(0 0 0 / 24%));
  animation: fm2-preloader-mark-in .52s cubic-bezier(.16, 1, .3, 1) both;
}

.fm2-preloader__lift { animation: fm2-preloader-lift .82s cubic-bezier(.65, 0, .35, 1) infinite; }
.fm2-preloader__track { inline-size: 100%; block-size: 2px; overflow: hidden; background: rgb(255 255 255 / 14%); }
.fm2-preloader__track::after { display: block; inline-size: 38%; block-size: 100%; background: #8ea2e8; transform: translateX(-110%); content: ""; animation: fm2-preloader-progress .82s cubic-bezier(.65, 0, .35, 1) infinite; }
.fm2-preloader__name { margin: 0; color: #fff; font-size: 19px; font-weight: 600; line-height: 1; letter-spacing: -.02em; }
.fm2-preloader__name span { color: #aab8ef; }
.fm2-preloader__status { margin: -8px 0 0; color: #cbd2dc; font-size: 12px; line-height: 1.4; letter-spacing: .02em; }
.fm2-preloader.is-leaving { pointer-events: none; animation: fm2-preloader-leave .24s cubic-bezier(.3, 0, 1, 1) forwards; }
.fm2-preloader.is-leaving .fm2-preloader__lockup { animation: fm2-preloader-lockup-out .2s cubic-bezier(.3, 0, 1, 1) forwards; }

@keyframes fm2-preloader-mark-in { from { opacity: 0; transform: translateY(10px) scale(.9); } to { opacity: 1; transform: none; } }
@keyframes fm2-preloader-lift { 0%, 100% { transform: translateY(7px); } 50% { transform: translateY(-7px); } }
@keyframes fm2-preloader-progress { 0% { transform: translateX(-110%); } 55%, 100% { transform: translateX(270%); } }
@keyframes fm2-preloader-ambient { from { opacity: .55; transform: scale(.9); } to { opacity: 1; transform: scale(1.08); } }
@keyframes fm2-preloader-leave { to { opacity: 0; visibility: hidden; } }
@keyframes fm2-preloader-lockup-out { to { opacity: 0; transform: translateY(-6px) scale(.98); } }

@media (prefers-reduced-motion: reduce) {
  .fm2-preloader::before,
  .fm2-preloader__lift { animation: none; }
  .fm2-preloader__track::after {
    inline-size: 100%;
    transform: none;
    animation: fm2-preloader-reduced-progress .36s ease-in-out infinite alternate;
  }
  .fm2-preloader__mark { animation: fm2-preloader-reduced-in .18s ease-out both; }
  @keyframes fm2-preloader-reduced-progress { from { opacity: .28; } to { opacity: 1; } }
  @keyframes fm2-preloader-reduced-in { from { opacity: .65; } to { opacity: 1; } }
}

@media (scripting: none) {
  .fm2-object-tabs > .shlz-tabs__panel[hidden],
  .fm2-object-tabs .shlz-select-fallback { display: block !important; }
  .fm2-object-tabs .shlz-select__trigger { display: none !important; }
  .fm2-object-tabs .shlz-select-fallback select { display: block !important; min-block-size: 40px; }
}

* { box-sizing: border-box; }

.fm2-auth-page { min-block-size: 100vh; background: var(--fm2-canvas); }
.fm2-auth-layout { display: grid; min-block-size: 100vh; grid-template-columns: minmax(300px, .8fr) minmax(440px, 1.2fr); }
.fm2-auth-brand { display: flex; padding: 48px; align-items: flex-start; gap: 16px; color: #fff; background: var(--fm2-ink); }
.fm2-auth-brand img { padding: 8px; background: #fff; border-radius: var(--fm2-radius); }
.fm2-auth-brand div { display: grid; gap: 3px; padding-block-start: 5px; }
.fm2-auth-brand strong { font-size: 20px; font-weight: 600; letter-spacing: -.02em; }
.fm2-auth-brand span { color: rgb(255 255 255 / 58%); font-size: 12px; }
.fm2-auth-card { align-self: center; inline-size: min(100% - 48px, 440px); margin-inline: auto; padding: 32px; background: var(--fm2-surface); border-radius: var(--fm2-radius); box-shadow: 0 16px 48px rgb(11 22 35 / 9%); }
.fm2-auth-heading { margin-block-end: 24px; }
.fm2-auth-kicker { display: block; margin-block-end: 12px; color: var(--fm2-primary); font-size: 11px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; }
.fm2-auth-heading h1 { margin: 0; font-size: 26px; font-weight: 500; line-height: 1.2; letter-spacing: -.025em; }
.fm2-auth-heading p { margin: 8px 0 0; color: var(--fm2-muted); font-size: 13px; line-height: 1.5; }
.fm2-auth-form { display: grid; gap: 16px; }
.fm2-auth-submit { inline-size: 100%; margin-block-start: 4px; }
.fm2-auth-error { margin: 0; padding: 10px 12px; color: var(--shlz-source-color-aditional-red-100, #cc1f1f); background: var(--shlz-source-color-aditional-red-50, #fbd5d5); border-radius: var(--fm2-radius); font-size: 12px; }
.fm2-auth-identity { display: flex; align-items: center; gap: 12px; padding: 12px; background: var(--fm2-filter); border-radius: var(--fm2-radius); }
.fm2-auth-identity > span:last-child { display: grid; min-inline-size: 0; }
.fm2-auth-identity strong { overflow: hidden; font-size: 13px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.fm2-auth-identity small { color: var(--fm2-muted); font-size: 12px; }
.fm2-auth-avatar { display: grid; flex: 0 0 36px; inline-size: 36px; block-size: 36px; place-items: center; color: var(--fm2-primary); background: var(--fm2-primary-soft); border-radius: 50%; font-size: 11px; font-weight: 600; }
.fm2-auth-back { justify-self: center; color: var(--fm2-primary); font-size: 12px; text-decoration: none; }
.fm2-auth-back:hover { text-decoration: underline; text-underline-offset: 3px; }
.fm2-auth-note { position: fixed; inset-inline-end: 32px; inset-block-end: 24px; margin: 0; color: var(--fm2-muted); font-size: 11px; }

@media (max-width: 720px) {
  .fm2-auth-layout { display: block; padding-block-end: 64px; }
  .fm2-auth-brand { padding: 20px 24px; }
  .fm2-auth-brand img { inline-size: 44px; block-size: 44px; }
  .fm2-auth-card { inline-size: calc(100% - 32px); margin-block-start: 36px; padding: 24px; }
  .fm2-auth-note { position: static; margin: 24px 24px 0; text-align: center; }
}

::selection { color: #fff; background: #46515e; }

.shlz-scope {
  margin: 0;
  color: var(--fm2-ink);
  background: var(--fm2-canvas);
  font-family: var(--shlz-semantic-font-family, "Golos Text", Arial, sans-serif);
  font-size: 14px;
  line-height: 1.45;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.fm2-skip {
  position: fixed;
  z-index: 100;
  inset-block-start: 12px;
  inset-inline-start: 16px;
  padding: 10px 16px;
  color: var(--fm2-ink);
  background: #fff;
  border-radius: var(--fm2-pill);
  box-shadow: 0 8px 28px rgb(11 22 35 / 18%);
  transform: translateY(-160%);
}

.fm2-skip:focus { transform: none; }

.fm2-shell {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  min-block-size: 100vh;
  transition: grid-template-columns 280ms cubic-bezier(.2, 0, 0, 1);
}

.fm2-shell:has(.fm2-nav-state[open]) { grid-template-columns: 260px minmax(0, 1fr); }
html[data-fm2-sidebar="collapsed"] .fm2-shell { grid-template-columns: 72px minmax(0, 1fr) !important; transition: none; }
html:not([data-fm2-sidebar-ready]) .fm2-shell { transition: none; }
html[data-fm2-sidebar="collapsed"] :is(.fm2-nav-text, .fm2-nav-group, .fm2-logo-name, .fm2-nav-trigger-text, .fm2-sidebar-user-copy) { display: none !important; }
html[data-fm2-sidebar="collapsed"] .fm2-logo { inline-size: 48px !important; }

.fm2-sidebar {
  position: sticky;
  inset-block-start: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  block-size: 100vh;
  padding: 20px 10px 12px;
  color: #fff;
  background: var(--fm2-ink);
}

.fm2-nav-state { inline-size: 100%; }
.fm2-nav-body { display: flex; flex: 1; flex-direction: column; inline-size: 100%; min-block-size: 0; }

.fm2-logo {
  display: flex;
  inline-size: 48px;
  min-block-size: 48px;
  padding-inline: 8px;
  align-items: center;
  gap: 11px;
  color: var(--fm2-ink);
  background: #fff;
  border-radius: var(--fm2-radius);
  text-decoration: none;
}

.fm2-logo:hover { background: var(--shlz-source-color-gray-gray-50, #f5f5f5); }

.fm2-logo-mark { flex: 0 0 32px; inline-size: 32px; block-size: 32px; overflow: visible; }
.fm2-logo-rail { fill: var(--fm2-ink); }
.fm2-logo-progress { fill: var(--shlz-source-color-blue-blue-200, #253d98); }
.fm2-logo-name { display: none; color: var(--fm2-ink); font-size: 16px; font-weight: 600; letter-spacing: -.02em; white-space: nowrap; }
.fm2-nav-trigger {
  display: flex;
  min-block-size: 48px;
  padding: 12px 14px;
  align-items: center;
  gap: 12px;
  color: rgb(255 255 255 / 62%);
  border-block-start: 1px solid rgb(255 255 255 / 10%);
  font-size: 12px;
  list-style: none;
  cursor: pointer;
}
.fm2-nav-trigger::-webkit-details-marker { display: none; }
.fm2-nav-trigger:hover { color: #fff; background: rgb(255 255 255 / 7%); }
.fm2-nav-trigger:focus-visible { outline: 2px solid var(--fm2-focus-ring-inverse); outline-offset: -2px; }
.fm2-nav-trigger-icon { flex: 0 0 24px; inline-size: 24px; block-size: 24px; }
.fm2-nav-trigger-icon--expand { display: block; }
.fm2-nav-trigger-icon--collapse { display: none; }
.fm2-nav-state[open] .fm2-nav-trigger-icon--expand { display: none; }
.fm2-nav-state[open] .fm2-nav-trigger-icon--collapse { display: block; }
.fm2-nav-trigger-text { display: none; white-space: nowrap; }

.fm2-primary-nav {
  display: flex;
  flex: 1;
  flex-direction: column;
  inline-size: 100%;
  gap: 3px;
  margin-block-start: 22px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgb(255 255 255 / 20%) transparent;
}

.fm2-nav-item {
  display: flex;
  min-block-size: 44px;
  padding: 8px 13px;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  color: rgb(255 255 255 / 64%);
  border-radius: var(--fm2-radius);
  font-size: 13px;
  line-height: 1.25;
  text-decoration: none;
}

.fm2-nav-item:hover { color: #fff; background: rgb(255 255 255 / 7%); }
.fm2-nav-item[aria-current="page"] { color: #fff; background: rgb(255 255 255 / 10%); }
.fm2-nav-item--muted { opacity: .42; }

.fm2-nav-icon { flex: 0 0 24px; inline-size: 24px; block-size: 24px; fill: currentcolor; stroke: currentcolor; stroke-width: .55; paint-order: stroke fill; }
svg.fm2-nav-icon.fm2-nav-icon--shlz { fill: none; stroke: initial; stroke-width: initial; paint-order: normal; }
.fm2-nav-text, .fm2-nav-group { display: none; }
.fm2-nav-text { min-inline-size: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fm2-nav-group { margin: 14px 13px 3px; color: rgb(255 255 255 / 38%); font-size: 10px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.fm2-shell:has(.fm2-nav-state[open]) :is(.fm2-nav-text, .fm2-nav-group, .fm2-logo-name, .fm2-nav-trigger-text) { display: block; }
.fm2-shell:has(.fm2-nav-state[open]) .fm2-logo { inline-size: 100%; }
.fm2-feedback-fab { position: fixed; z-index: 60; inset-inline-end: max(20px, env(safe-area-inset-right)); inset-block-end: max(20px, env(safe-area-inset-bottom)); display: grid; inline-size: 48px; block-size: 48px; place-items: center; color: #fff; background: var(--fm2-primary); border-radius: 50%; box-shadow: 0 10px 28px rgb(11 22 35 / 24%); text-decoration: none; }
.fm2-feedback-fab:hover { background: var(--fm2-ink); }
.fm2-feedback-fab:focus-visible { outline: 2px solid var(--fm2-focus-ring); outline-offset: 3px; }
.fm2-feedback-fab-icon { inline-size: 24px; block-size: 24px; }
.fm2-sidebar-user { display: flex; inline-size: 100%; min-block-size: 56px; padding: 10px 8px; align-items: center; gap: 10px; border-block-start: 1px solid rgb(255 255 255 / 10%); }
.fm2-sidebar-avatar { flex: 0 0 32px; color: var(--fm2-ink); background: #fff; font-size: 10px; }
.fm2-sidebar:not(:has(.fm2-nav-state[open])) .fm2-sidebar-user { justify-content: center; gap: 0; }
.fm2-sidebar:not(:has(.fm2-nav-state[open])) .fm2-sidebar-avatar { display: none; }
.fm2-sidebar-user-copy { display: none; min-inline-size: 0; flex: 1; }
.fm2-sidebar-user-copy strong, .fm2-sidebar-user-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fm2-sidebar-user-copy strong { color: #fff; font-size: 12px; font-weight: 500; }
.fm2-sidebar-user-copy small { margin-block-start: 2px; color: rgb(255 255 255 / 48%); font-size: 10px; }
.fm2-shell:has(.fm2-nav-state[open]) .fm2-sidebar-user-copy { display: block; }
.fm2-logout-form { flex: 0 0 auto; margin-inline-start: auto; }
.fm2-logout { display: grid; inline-size: 34px; block-size: 34px; padding: 7px; place-items: center; border: 0; border-radius: 8px; background: transparent; color: rgb(255 255 255 / 62%); font: inherit; cursor: pointer; }
.fm2-user-logout-icon { inline-size: 20px; block-size: 20px; fill: currentcolor; }
.fm2-logout-text { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.fm2-logout:hover { background: rgb(255 255 255 / 14%); color: #fff; }
.fm2-logout:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

.fm2-workspace { min-inline-size: 0; }

.fm2-main {
  inline-size: 100%;
  max-inline-size: 1680px;
  padding: 24px 28px 48px;
}

.fm2-breadcrumb ol {
  display: flex;
  gap: 8px;
  margin: 0 0 16px;
  padding: 0;
  color: var(--fm2-muted);
  font-size: 12px;
  list-style: none;
}

.fm2-breadcrumb li + li::before { margin-inline-end: 8px; color: #a8afb6; content: "/"; }
.fm2-breadcrumb-link { color: var(--fm2-primary); font: inherit; text-decoration: none; }
.fm2-breadcrumb-link:hover { color: var(--shlz-source-color-blue-blue-300); text-decoration: underline; text-underline-offset: 3px; }
.fm2-breadcrumb-link:focus-visible { border-radius: 2px; outline: 2px solid var(--fm2-focus-ring); outline-offset: 2px; }

.fm2-page-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-block-end: 20px;
}

.fm2-page-header h1 {
  margin: 0;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.02em;
}

.fm2-page-header p { margin: 5px 0 0; color: var(--fm2-muted); font-size: 13px; }

.fm2-result-count {
  padding: 6px 11px;
  color: var(--fm2-primary);
  background: var(--fm2-primary-soft);
  border-radius: var(--fm2-pill);
  font-size: 12px;
  font-weight: 500;
}

.fm2-list-surface,
.fm2-panel,
.fm2-next,
.fm2-form-card {
  background: var(--fm2-surface);
  border-radius: var(--fm2-radius);
}

.fm2-list-surface { overflow: hidden; box-shadow: 0 1px 2px rgb(11 22 35 / 5%); }

.fm2-list-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-block-size: 60px;
  padding-inline: 16px;
  border-block-end: 1px solid var(--fm2-border);
}
.fm2-object-filters { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(220px, 280px) auto auto; gap: 12px; align-items: end; inline-size: 100%; padding-block: 12px; }
.fm2-object-filters .shlz-button, .fm2-object-filters > .shlz-link { min-block-size: 44px; }
.fm2-object-filters > .shlz-link { display: inline-flex; align-items: center; }
.fm2-object-filters .shlz-field { inline-size: 100%; }
.fm2-object-filters .shlz-field__control { color: var(--fm2-text); background: #fff; border-color: var(--fm2-border); border-radius: 10px; transition: border-color 120ms ease-out, box-shadow 120ms ease-out; }
.fm2-object-filters .shlz-field__control:hover:not(:has(:disabled, [readonly])) { background: #fff; border-color: #aeb7c2; }
.fm2-object-filters .shlz-field__control:focus-within { background: #fff; border-color: var(--fm2-focus-ring); box-shadow: 0 0 0 3px var(--fm2-focus-halo); }
.fm2-object-filters .shlz-input { appearance: none; caret-color: var(--fm2-primary); }
.fm2-object-filters .shlz-input::-webkit-search-decoration { appearance: none; }

.fm2-segments { display: flex; gap: 4px; padding: 4px; background: var(--fm2-filter); border-radius: var(--fm2-pill); }

.fm2-segment {
  padding: 7px 12px;
  color: var(--fm2-muted);
  border-radius: var(--fm2-pill);
  font-size: 12px;
  white-space: nowrap;
}

.fm2-segment--active { color: #fff; background: var(--fm2-primary); font-weight: 500; }
.fm2-segment b { margin-inline-start: 4px; font-weight: inherit; }
.fm2-segment { text-decoration: none; min-block-size: 44px; display: inline-flex; align-items: center; }
.fm2-origin-badge { margin-block-start: 7px; font-size: 11px; }
.fm2-object-badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.fm2-origin-notice { margin-block: 16px; }
.fm2-table-wrap { overflow-x: auto; }

.fm2-queue-table { inline-size: 100%; border-collapse: collapse; }

.fm2-queue-table th {
  block-size: 42px;
  padding: 0 16px;
  color: var(--fm2-muted);
  background: var(--fm2-surface);
  border-block-end: 1px solid var(--fm2-border);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .02em;
  text-align: start;
  text-transform: uppercase;
  white-space: nowrap;
}

.fm2-queue-table td {
  block-size: 58px;
  padding: 8px 16px;
  border-block-end: 1px solid var(--fm2-border);
  font-size: 13px;
  vertical-align: middle;
}

.fm2-queue-table tbody tr { transition: background-color 120ms ease-out; }
.fm2-queue-table tbody tr:hover { background: var(--fm2-filter); }

.fm2-object-link { display: grid; gap: 1px; color: var(--fm2-ink); text-decoration: none; }
.fm2-object-identity { min-inline-size: 0; overflow-wrap: anywhere; }
.fm2-queue-table .fm2-object-identity { display: grid; grid-template-columns: minmax(0, 1fr); min-inline-size: 0; align-items: start; gap: 1px; }
.fm2-queue-table .fm2-object-identity > :is(strong, small) { display: block; min-inline-size: 0; overflow-wrap: anywhere; }
.shlz-select-root.is-enhanced > .shlz-select-fallback { display: none; }
.shlz-field.shlz-select-root.is-enhanced:has(.shlz-select-fallback select:disabled) { cursor: auto; }
.shlz-field.shlz-select-root.is-enhanced:has(.shlz-select-fallback select:disabled) :is(.shlz-field__label, .shlz-select__trigger) { opacity: 1; }
.fm2-object-link strong { color: var(--fm2-primary); font-size: 13px; font-weight: 500; }
.fm2-cell-main { display: block; font-weight: 400; }
.fm2-queue-table small { display: block; margin-block-start: 1px; color: var(--fm2-muted); font-size: 11px; }

.fm2-status { max-inline-size: 100%; white-space: normal; }

.fm2-row-action { inline-size: 48px; color: var(--fm2-muted); font-size: 18px; text-align: center; }

.fm2-table-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-block-size: 52px;
  padding-inline: 16px;
  color: var(--fm2-muted);
  font-size: 12px;
}

/* Pagination is rendered by the public SHLZ contract; keep controls touch-safe
   and reduce only the contextual window on narrow screens. */
.fm2-table-footer .shlz-pagination__item,
.fm2-control-footer .shlz-pagination__item {
  min-inline-size: 44px;
  min-block-size: 44px;
}

@media (max-width: 480px) {
  .fm2-table-footer .fm2-pagination__context,
  .fm2-control-footer .fm2-pagination__context { display: none; }
  .fm2-table-footer .shlz-pagination__list,
  .fm2-control-footer .shlz-pagination__list { gap: 8px; }
}

.fm2-primary-link {
  display: inline-flex;
  min-block-size: 36px;
  padding: 8px 15px;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--fm2-primary);
  border: 0;
  border-radius: var(--fm2-pill);
  font-size: 12px;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
}

.fm2-primary-link:hover { filter: brightness(.92); }

.fm2-alert { margin: 0 0 18px; padding: 13px 16px; color: #233a84; background: #f0f3fc; border-radius: var(--fm2-radius); }
.fm2-object-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 20px; margin-block-end: 20px; }
.fm2-object-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 8px; color: var(--fm2-muted); font-size: 12px; }
.fm2-process { display: grid; grid-template-columns: repeat(4, 1fr); margin-block-end: 16px; padding: 18px 20px; background: #fff; border-radius: var(--fm2-radius); }
.fm2-process-step { position: relative; display: grid; gap: 3px; padding-inline-start: 26px; color: var(--fm2-muted); font-size: 11px; }
.fm2-process-step::before { position: absolute; inset: 2px auto auto 0; inline-size: 15px; block-size: 15px; background: #dce1e8; border-radius: 50%; content: ""; }
.fm2-process-step:not(:last-child)::after { position: absolute; inset: 8px 8px auto 15px; block-size: 1px; background: #dce1e8; content: ""; }
.fm2-process-step--done::before { background: var(--fm2-primary); }
.fm2-process-step--current::before { background: #fff; box-shadow: inset 0 0 0 4px var(--fm2-primary); }
.fm2-process-step strong { color: var(--fm2-ink); font-size: 12px; font-weight: 500; }
.fm2-command { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-block-end: 16px; padding: 16px 18px; background: var(--fm2-primary-soft); border-radius: var(--fm2-radius); }
.fm2-command h2 { margin: 0 0 3px; font-size: 15px; font-weight: 500; }
.fm2-command p { margin: 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-tabs { position: relative; }
.fm2-tabs > input { position: absolute; opacity: 0; pointer-events: none; }
.fm2-tab-list { display: flex; gap: 2px; overflow-x: auto; padding-inline: 10px; background: #fff; border-radius: var(--fm2-radius) var(--fm2-radius) 0 0; }
.fm2-tab-list label { padding: 15px 13px 12px; color: var(--fm2-muted); border-block-end: 2px solid transparent; font-size: 12px; white-space: nowrap; cursor: pointer; }
.fm2-tabs > input:nth-of-type(1):checked ~ .fm2-tab-list label:nth-child(1),
.fm2-tabs > input:nth-of-type(2):checked ~ .fm2-tab-list label:nth-child(2),
.fm2-tabs > input:nth-of-type(3):checked ~ .fm2-tab-list label:nth-child(3),
.fm2-tabs > input:nth-of-type(4):checked ~ .fm2-tab-list label:nth-child(4),
.fm2-tabs > input:nth-of-type(5):checked ~ .fm2-tab-list label:nth-child(5),
.fm2-tabs > input:nth-of-type(6):checked ~ .fm2-tab-list label:nth-child(6) { color: var(--fm2-primary); border-color: var(--fm2-primary); font-weight: 500; }
.fm2-tab-panels { background: #fff; border-block-start: 1px solid var(--fm2-border); border-radius: 0 0 var(--fm2-radius) var(--fm2-radius); }
.fm2-tab-panel { display: none; padding: 22px; }
.fm2-tabs > input:nth-of-type(1):checked ~ .fm2-tab-panels .fm2-tab-panel:nth-child(1),
.fm2-tabs > input:nth-of-type(2):checked ~ .fm2-tab-panels .fm2-tab-panel:nth-child(2),
.fm2-tabs > input:nth-of-type(3):checked ~ .fm2-tab-panels .fm2-tab-panel:nth-child(3),
.fm2-tabs > input:nth-of-type(4):checked ~ .fm2-tab-panels .fm2-tab-panel:nth-child(4),
.fm2-tabs > input:nth-of-type(5):checked ~ .fm2-tab-panels .fm2-tab-panel:nth-child(5),
.fm2-tabs > input:nth-of-type(6):checked ~ .fm2-tab-panels .fm2-tab-panel:nth-child(6) { display: block; }
.fm2-section-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.fm2-panel { padding: 18px; border: 1px solid var(--fm2-border); }
.fm2-panel h2 { margin: 0 0 14px; font-size: 14px; font-weight: 500; }
.fm2-details { display: grid; grid-template-columns: minmax(140px, .75fr) minmax(0, 1.25fr); gap: 10px 18px; margin: 0; }
.fm2-details dt { color: var(--fm2-muted); font-size: 12px; }
.fm2-details dd { margin: 0; font-weight: 500; }
.fm2-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 14px; }
.fm2-inline-form { display: grid; max-inline-size: 520px; gap: 10px; margin-block-start: 16px; padding-block-start: 16px; border-block-start: 1px solid var(--fm2-border); }
.fm2-inline-form input { inline-size: 100%; padding: 11px 14px; background: var(--fm2-filter); border: 1px solid transparent; border-radius: var(--fm2-pill); }
.fm2-event-list { display: grid; }
.fm2-event { display: grid; grid-template-columns: 150px 1fr; gap: 18px; padding-block: 12px; border-block-end: 1px solid var(--fm2-border); }
.fm2-event:last-child { border-block-end: 0; }
.fm2-event time { color: var(--fm2-muted); font-size: 11px; }
.fm2-form { display: grid; gap: 16px; }
.fm2-person { padding: 13px; border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); }
.fm2-field-error { color: #a62b2b; }
.fm2-db-text { overflow-wrap: anywhere; }
.fm2-empty { padding: 32px; }
.fm2-shell :is(a, input, button, label, select, textarea, summary, [tabindex]):focus-visible { outline: 2px solid var(--fm2-focus-ring); outline-offset: 2px; }
.fm2-form-layout { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 18px; align-items: start; }
.fm2-form-card { padding: 4px 22px; }
.fm2-form-card > section { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; padding-block: 20px; border-block-end: 1px solid var(--fm2-border); }
.fm2-form-card > section:last-child { border-block-end: 0; }
.fm2-form-card h2 { margin: 0 0 4px; font-size: 15px; font-weight: 500; }
.fm2-form-card p { margin: 0 0 12px; color: var(--fm2-muted); font-size: 12px; }
.fm2-step-number { display: grid; inline-size: 28px; block-size: 28px; place-items: center; color: var(--fm2-primary); background: var(--fm2-primary-soft); border-radius: 50%; font-size: 12px; font-weight: 500; }
.fm2-picker { display: grid; justify-items: start; gap: 10px; }
.fm2-picker-dialog { position: fixed; z-index: 31; inset: 50% auto auto 50%; inline-size: min(680px, calc(100vw - 32px)); max-block-size: min(720px, calc(100vh - 32px)); padding: 0; overflow: hidden; background: #fff; border: 1px solid var(--fm2-border); border-radius: 10px; box-shadow: 0 24px 80px rgb(11 22 35 / 28%); transform: translate(-50%, -50%); }
.fm2-picker-dialog::backdrop { background: rgb(11 22 35 / 52%); }
.fm2-picker-head { display: flex; justify-content: space-between; gap: 20px; padding: 20px 22px 16px; border-block-end: 1px solid var(--fm2-border); }
.fm2-picker-head h3 { margin: 0 0 4px; font-size: 18px; font-weight: 600; }
.fm2-picker-head p { margin: 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-picker-x { display: grid; flex: 0 0 32px; inline-size: 32px; block-size: 32px; padding: 0; color: var(--fm2-muted); background: transparent; border: 0; border-radius: 50%; place-items: center; font-size: 24px; line-height: 1; cursor: pointer; }
.fm2-picker-x:hover { color: var(--fm2-ink); background: var(--fm2-filter); }
.fm2-picker-dialog label { display: grid; gap: 7px; margin-block-start: 12px; font-size: 12px; font-weight: 500; }
.fm2-picker-dialog input,
.fm2-picker-dialog select { inline-size: 100%; padding: 10px 12px; background: var(--fm2-filter); border: 1px solid transparent; border-radius: var(--fm2-radius); font: inherit; }
.fm2-picker-dialog select { padding: 6px; }
.fm2-picker-dialog option { padding: 9px; }
.fm2-picker-dialog small { display: block; margin-block-start: 8px; color: var(--fm2-muted); }
.fm2-picker:not(.fm2-installer-picker) .fm2-picker-dialog { padding: 22px; }
.fm2-picker:not(.fm2-installer-picker) .fm2-picker-head { padding: 0; border: 0; }
.fm2-installer-picker .fm2-search-field { position: relative; margin: 16px 22px 0; }
.fm2-picker-modal-selection { display: grid; gap: 8px; padding: 12px 22px; background: #fafbfc; border-block-end: 1px solid var(--fm2-border); }
.fm2-picker-modal-selection > strong { color: var(--fm2-muted); font-size: 11px; font-weight: 600; }
.fm2-picker-modal-selection .fm2-picker-selection { max-block-size: 72px; overflow-y: auto; }
.fm2-installer-picker .fm2-search-field::before { position: absolute; z-index: 1; inset: 13px auto auto 14px; inline-size: 10px; block-size: 10px; border: 1.5px solid #788494; border-radius: 50%; content: ''; pointer-events: none; }
.fm2-installer-picker .fm2-search-field::after { position: absolute; z-index: 1; inset: 24px auto auto 25px; inline-size: 6px; block-size: 1.5px; background: #788494; content: ''; pointer-events: none; transform: rotate(45deg); transform-origin: left center; }
.fm2-installer-picker .fm2-search-field input { block-size: 42px; padding-inline: 38px 14px; background: #f5f7fa; border-color: #e2e6ec; border-radius: 8px; }
.fm2-picker-result-meta { padding: 10px 22px 8px; color: var(--fm2-muted); font-size: 11px; }
.fm2-picker-results { min-block-size: 188px; max-block-size: 354px; padding-inline: 10px; overflow-y: auto; border-block: 1px solid var(--fm2-border); }
.fm2-picker-result { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 10px; inline-size: 100%; min-block-size: 54px; padding: 8px 12px; align-items: center; color: var(--fm2-ink); background: transparent; border: 0; border-block-end: 1px solid #edf0f3; text-align: start; cursor: pointer; }
.fm2-picker-result:last-child { border-block-end: 0; }
.fm2-picker-result:hover { background: #f7f8fb; }
.fm2-picker-result--selected { background: var(--fm2-primary-soft); }
.fm2-picker-result-mark { display: grid; inline-size: 24px; block-size: 24px; color: var(--fm2-muted); border: 1px solid #cbd2db; border-radius: 50%; place-items: center; font-size: 15px; }
.fm2-picker-result--selected .fm2-picker-result-mark { color: #fff; background: var(--fm2-primary); border-color: var(--fm2-primary); }
.fm2-picker-result-text { display: grid; min-inline-size: 0; gap: 3px; }
.fm2-picker-result-text strong { overflow: hidden; font-size: 13px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.fm2-picker-result-text > span { overflow: hidden; color: var(--fm2-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.fm2-picker-result-busy { max-inline-size: 140px; color: #8a5d2c; font-size: 11px; text-align: end; }
.fm2-picker-empty { margin: 0; padding: 56px 20px; color: var(--fm2-muted); text-align: center; font-size: 13px; }
.fm2-picker-footer { display: flex; justify-content: space-between; padding: 14px 22px; align-items: center; background: #fafbfc; }
.fm2-picker-footer > span { color: var(--fm2-muted); font-size: 12px; }
.fm2-picker-selection { display: flex; flex-wrap: wrap; gap: 6px; }
.fm2-picker-selection-empty { color: var(--fm2-muted); font-size: 12px; }
.fm2-picker-chip { padding: 6px 9px; color: var(--fm2-primary); background: var(--fm2-primary-soft); border: 0; border-radius: var(--fm2-pill); font-size: 11px; cursor: pointer; }
.fm2-picker-chip:hover { background: #dfe5fa; }
.fm2-visually-hidden { position: absolute; inline-size: 1px; block-size: 1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.fm2-confirm { display: flex; align-items: flex-start; gap: 9px; }
.fm2-engineer-form { display: grid; grid-template-columns: minmax(240px, 1fr) auto; gap: 10px; margin-block-start: 18px; align-items: end; }
.fm2-engineer-form small { grid-column: 1 / -1; color: var(--fm2-muted); font-size: 11px; }
.fm2-reference-person { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; max-inline-size: 520px; padding: 12px; align-items: center; background: var(--fm2-filter); border-radius: var(--fm2-radius); }
.fm2-reference-person span:last-child { display: grid; gap: 3px; }
.fm2-reference-person strong { font-size: 13px; font-weight: 600; }
.fm2-reference-person small { color: var(--fm2-muted); font-size: 11px; }

/* ОТиЗ: application composition over public shlz-ui primitives. */
.fm2-otiz { font-variant-numeric: tabular-nums; }
.fm2-otiz-start { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; padding: 24px 26px; align-items: end; background: var(--fm2-surface); border-radius: var(--fm2-radius); }
.fm2-otiz-start h1, .fm2-otiz-snapshot-head h1 { margin: 0; font-size: 26px; font-weight: 500; letter-spacing: -.025em; }
.fm2-otiz-start p, .fm2-otiz-snapshot-head p { max-inline-size: 70ch; margin: 7px 0 0; color: var(--fm2-muted); font-size: 13px; }
.fm2-otiz-date { display: flex; gap: 10px; align-items: end; }
.fm2-otiz-date .shlz-field { min-inline-size: 190px; }
.fm2-otiz-tabs { margin-block: 14px 20px; overflow-x: auto; }
.fm2-otiz-tabs .shlz-tabs__list { min-inline-size: max-content; }
.fm2-otiz-tabs .shlz-tabs__tab { color: var(--fm2-ink); text-decoration: none; }
.fm2-otiz-tabs .shlz-tabs__tab[aria-current="page"] { border-block-end-color: var(--shlz-semantic-color-action-primary); font-weight: 500; }
.fm2-otiz-subnav { display: flex; gap: 24px; margin-block: 18px; padding-inline: 4px; }
.fm2-otiz-subnav .shlz-link { padding-block: 6px; font-size: 13px; text-decoration: none; }
.fm2-otiz-subnav .shlz-link[aria-current="page"] { color: var(--fm2-ink); border-block-end: 2px solid var(--fm2-primary); font-weight: 500; }
.fm2-otiz-current { display: flex; min-block-size: 140px; padding: 24px 26px; align-items: center; justify-content: space-between; gap: 30px; color: var(--fm2-ink); background: var(--fm2-surface); border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); }
.fm2-otiz-current h2 { margin: 12px 0 0; font-size: 22px; font-weight: 500; }
.fm2-otiz-current p { margin: 5px 0 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-otiz-current > div:last-child { display: grid; justify-items: end; gap: 3px; }
.fm2-otiz-current > div:last-child strong { font-size: 26px; font-weight: 500; letter-spacing: -.02em; }
.fm2-otiz-current > div:last-child span { color: var(--fm2-muted); font-size: 11px; }
.fm2-otiz-current .shlz-link { margin-block-start: 9px; }
.fm2-otiz-scenarios { margin-block-start: 18px; padding: 24px 26px; background: var(--fm2-surface); border-radius: var(--fm2-radius); }
.fm2-otiz-scenarios header { display: flex; justify-content: space-between; gap: 24px; align-items: baseline; }
.fm2-otiz-scenarios h2, .fm2-otiz-ledger h2, .fm2-otiz-proof h2 { margin: 0; font-size: 16px; font-weight: 500; }
.fm2-otiz-scenarios header p { margin: 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-otiz-scenarios ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 22px 0 0; padding: 0; list-style: none; border-block-start: 1px solid var(--fm2-border); }
.fm2-otiz-scenarios li { display: grid; gap: 4px; padding: 18px 20px 4px 0; }
.fm2-otiz-scenarios li:nth-child(3n+2), .fm2-otiz-scenarios li:nth-child(3n+3) { padding-inline-start: 20px; border-inline-start: 1px solid var(--fm2-border); }
.fm2-otiz-scenarios li strong { font-size: 13px; font-weight: 500; }
.fm2-otiz-scenarios li span { color: var(--fm2-muted); font-size: 11px; }
.fm2-otiz-snapshot-head { display: flex; margin-block-end: 18px; align-items: center; justify-content: space-between; gap: 24px; }
.fm2-otiz-title-line { display: flex; gap: 12px; align-items: center; }
.fm2-otiz-actions { display: flex; align-items: center; gap: 10px; }
.fm2-otiz-summary { display: grid; grid-template-columns: 1.4fr 1fr .7fr .7fr; margin-block-end: 18px; background: var(--fm2-ink); border-radius: var(--fm2-radius); }
.fm2-otiz-summary > div { display: grid; gap: 4px; padding: 18px 22px; border-inline-end: 1px solid rgb(255 255 255 / 12%); }
.fm2-otiz-summary > div:last-child { border-inline-end: 0; }
.fm2-otiz-summary span { color: rgb(255 255 255 / 58%); font-size: 11px; }
.fm2-otiz-summary strong { color: #fff; font-size: 20px; font-weight: 500; }
.fm2-list-toolbar h2 { margin: 0; font-size: 15px; font-weight: 500; }
.fm2-otiz-table details { min-inline-size: 255px; }
.fm2-otiz-table summary { display: grid; gap: 2px; color: var(--fm2-primary); cursor: pointer; }
.fm2-otiz-table summary::marker { font-size: 10px; }
.fm2-otiz-table summary strong { font-weight: 500; }
.fm2-otiz-object-row:has(details[open]) > td { vertical-align: top; background: #fbfcfe; }
.fm2-otiz-detail { inline-size: min(660px, calc(100vw - 160px)); padding: 16px 0 8px 14px; color: var(--fm2-ink); }
.fm2-otiz-allocation h3 { margin: 0 0 10px; font-size: 12px; font-weight: 500; }
.fm2-otiz-trace { margin-block-end: 16px; padding: 11px 13px; background: var(--fm2-filter); border-radius: var(--fm2-radius); }
.fm2-otiz-trace > summary { display: list-item; color: var(--fm2-primary); font-size: 12px; font-weight: 500; cursor: pointer; }
.fm2-otiz-trace p { margin: 9px 0; color: var(--fm2-muted); font-size: 10px; }
.fm2-otiz-trace ol { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.fm2-otiz-trace li { display: grid; grid-template-columns: 70px minmax(0,1fr) auto; gap: 10px; align-items: baseline; font-size: 10px; }
.fm2-otiz-trace code { color: var(--fm2-muted); overflow-wrap: anywhere; }
.fm2-otiz-trace strong { font-weight: 600; white-space: nowrap; }
.fm2-otiz-allocation > div { display: flex; padding-block: 8px; align-items: center; justify-content: space-between; gap: 16px; border-block-end: 1px solid var(--fm2-border); }
.fm2-otiz-allocation span { display: grid; gap: 2px; }
.fm2-otiz-allocation small { margin: 0; }
.fm2-otiz-allocation b { font-size: 13px; font-weight: 500; white-space: nowrap; }
.fm2-otiz-issues { display: grid; gap: 8px; margin: 14px 0 0; padding: 0; list-style: none; }
.fm2-otiz-issues li { padding: 10px 12px; color: #683c10; background: #fff1df; border-radius: var(--fm2-radius); font-size: 11px; }
.fm2-otiz-issues li span { display: block; margin-block-start: 3px; color: #745c43; }
.fm2-otiz-close { margin-block-start: 14px; }
.fm2-otiz-close > summary { display: list-item; color: var(--fm2-primary); font-size: 12px; }
.fm2-otiz-close form { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-block-start: 12px; padding: 14px; background: var(--fm2-filter); border-radius: var(--fm2-radius); }
.fm2-otiz-close form label:nth-of-type(4), .fm2-otiz-close form label:nth-of-type(5) { grid-column: span 3; }
.fm2-otiz-close form button { justify-self: start; }
.fm2-otiz-close form > small { align-self: center; color: var(--fm2-muted); }
.fm2-otiz-system-money { display: grid; grid-template-columns: repeat(2, minmax(180px, 1fr)); gap: 1px; margin-block-start: 12px; overflow: hidden; background: var(--fm2-border); border-radius: var(--fm2-radius); }
.fm2-otiz-system-money > div, .fm2-otiz-system-money > p { margin: 0; padding: 12px 14px; background: var(--fm2-surface); }
.fm2-otiz-system-money > div { display: grid; gap: 3px; }
.fm2-otiz-system-money span, .fm2-otiz-system-money p { color: var(--fm2-muted); font-size: 11px; }
.fm2-otiz-system-money strong { font-size: 15px; font-variant-numeric: tabular-nums; }
.fm2-otiz-system-money > p { grid-column: 1 / -1; }
.fm2-otiz-settlement { margin-block-start: 14px; }
.fm2-otiz-payment-complete { display: grid; grid-template-columns: minmax(180px, 1fr) auto; gap: 4px 16px; align-items: center; margin-block-start: 10px; padding: 14px; background: var(--fm2-filter); border-radius: var(--fm2-radius); }
.fm2-otiz-payment-complete > span { display: grid; gap: 2px; color: var(--fm2-muted); font-size: 11px; }
.fm2-otiz-payment-complete > span strong { color: var(--fm2-ink); font-size: 18px; font-variant-numeric: tabular-nums; }
.fm2-otiz-payment-complete > small { grid-column: 1 / -1; color: var(--fm2-muted); }
.fm2-otiz-error { margin: 0 0 18px; padding: 13px 16px; color: #8c2020; background: #fbdede; border-radius: var(--fm2-radius); }
.fm2-otiz-ledger, .fm2-otiz-proof { margin-block-start: 18px; padding: 20px; background: var(--fm2-surface); border-radius: var(--fm2-radius); }
.fm2-otiz-ledger h2 { margin-block-end: 12px; }
.fm2-otiz-reverse { display: flex; min-inline-size: 250px; gap: 6px; align-items: center; }
.fm2-otiz-reverse .shlz-input { min-inline-size: 140px; }
.fm2-otiz-proof p { max-inline-size: 72ch; color: var(--fm2-muted); }

/* OTIZ payout desk: one calm operational hierarchy, composed from shlz-ui primitives. */
.fm2-otiz-start { padding: 28px 30px; align-items: center; border: 1px solid var(--fm2-border); }
.fm2-otiz-start h1 { font-size: 30px; font-weight: 550; }
.fm2-otiz-start p { max-inline-size: 58ch; font-size: 14px; line-height: 1.5; }
.fm2-otiz-date { padding-inline-start: 28px; border-inline-start: 1px solid var(--fm2-border); }
.fm2-otiz-current { min-block-size: 164px; padding: 28px 30px; }
.fm2-otiz-current h2 { margin-block-start: 14px; font-size: 24px; }
.fm2-otiz-current p { max-inline-size: 60ch; font-size: 13px; line-height: 1.45; }
.fm2-otiz-current > div:last-child { min-inline-size: 230px; gap: 5px; }
.fm2-otiz-current > div:last-child strong { font-size: 30px; }
.fm2-otiz-current .shlz-button { margin-block-start: 12px; text-decoration: none; }
.fm2-otiz-scenarios { padding: 26px 30px; border: 1px solid var(--fm2-border); }
.fm2-otiz-scenarios header p { font-size: 13px; }
.fm2-otiz-scenarios ol { margin-block-start: 20px; }
.fm2-otiz-scenarios li { gap: 6px; padding-block: 20px 6px; }
.fm2-otiz-scenarios li strong { font-size: 14px; }
.fm2-otiz-scenarios li span { max-inline-size: 34ch; font-size: 12px; line-height: 1.45; }
.fm2-otiz-trace li { grid-template-columns: minmax(0, 1fr) auto; padding-block: 4px; border-block-end: 1px solid var(--fm2-border); }
.fm2-otiz-trace li:last-child { border-block-end: 0; }
.fm2-otiz-trace li strong { font-size: 11px; }
.fm2-recon-summary { display: grid; grid-template-columns: auto auto minmax(0,1fr); margin-block-end: 18px; overflow: hidden; color: #fff; background: var(--fm2-ink); border-radius: var(--fm2-radius); }
.fm2-recon-summary > div { display: grid; min-inline-size: 150px; gap: 2px; padding: 18px 22px; border-inline-end: 1px solid rgb(255 255 255 / 14%); }
.fm2-recon-summary strong { font-size: 23px; font-weight: 500; }
.fm2-recon-summary span { color: rgb(255 255 255 / 64%); font-size: 11px; }
.fm2-recon-summary p { align-self: center; max-inline-size: 68ch; margin: 0; padding: 18px 22px; color: rgb(255 255 255 / 72%); font-size: 12px; }
.fm2-recon-queue-summary { display: grid; grid-template-columns: repeat(3,auto) minmax(250px,.8fr) minmax(300px,1.2fr); align-items: stretch; overflow: hidden; margin-block-end: 10px; color: #fff; background: var(--fm2-ink); border-radius: var(--fm2-radius); }
.fm2-recon-queue-summary > div { display: grid; align-content: center; min-inline-size: 140px; gap: 3px; padding: 17px 18px; border-inline-end: 1px solid rgb(255 255 255 / 14%); }
.fm2-recon-queue-summary > div strong { font-size: 23px; font-weight: 500; }
.fm2-recon-queue-summary > div span, .fm2-recon-queue-summary dt, .fm2-recon-queue-summary p { color: rgb(255 255 255 / 65%); font-size: 10px; }
.fm2-recon-queue-summary dl { display: grid; align-content: center; gap: 5px; margin: 0; padding: 14px 18px; border-inline-end: 1px solid rgb(255 255 255 / 14%); }
.fm2-recon-queue-summary dl div { display: flex; justify-content: space-between; gap: 12px; }
.fm2-recon-queue-summary dd { margin: 0; font-size: 11px; }
.fm2-recon-queue-summary p { align-self: center; margin: 0; padding: 16px 18px; line-height: 1.45; }
.fm2-recon-status-counts { display: flex; flex-wrap: wrap; gap: 1px; margin-block-end: 10px; overflow: hidden; border-radius: var(--fm2-radius); background: var(--fm2-border); }
.fm2-recon-status-counts span { flex: 1 1 150px; padding: 10px 13px; color: var(--fm2-muted); background: var(--fm2-surface); font-size: 10px; }
.fm2-recon-status-counts strong { float: inline-end; color: var(--fm2-ink); font-size: 12px; }
.fm2-recon-filters { display: grid; grid-template-columns: repeat(5,minmax(135px,1fr)); gap: 10px; margin-block-end: 14px; padding: 14px; border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); background: var(--fm2-surface); }
.fm2-recon-filters .shlz-input { min-inline-size: 0; font-size: 13px; }
.fm2-recon-filter-actions { display: flex; grid-column: 1 / -1; align-items: center; gap: 14px; }
.fm2-recon-filter-actions .fm2-result-count { margin-inline-start: auto; }
.fm2-recon-pager { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-block-start: 14px; padding: 12px 14px; border-radius: var(--fm2-radius); background: var(--fm2-surface); }
.fm2-recon-pager > span, .fm2-recon-pager strong { color: var(--fm2-muted); font-size: 11px; font-weight: 500; }
.fm2-recon-pager > div { display: flex; align-items: center; gap: 12px; }
.fm2-recon-pager .shlz-button { padding-block: 7px; text-decoration: none; }
.fm2-recon-pager .shlz-pagination__item { min-inline-size: 44px; block-size: 44px; }
.fm2-active-summary { display: grid; grid-template-columns: repeat(4,auto) minmax(300px,1fr); overflow: hidden; margin-block-end: 10px; color: #fff; background: var(--fm2-ink); border-radius: var(--fm2-radius); }
.fm2-active-summary > div { display: grid; align-content: center; min-inline-size: 130px; gap: 3px; padding: 17px 18px; border-inline-end: 1px solid rgb(255 255 255 / 14%); }
.fm2-active-summary strong { font-size: 23px; font-weight: 500; }
.fm2-active-summary span, .fm2-active-summary p { color: rgb(255 255 255 / 65%); font-size: 10px; }
.fm2-active-summary p { align-self: center; margin: 0; padding: 16px 18px; line-height: 1.45; }
.fm2-active-filters { display: grid; grid-template-columns: minmax(190px,1fr) minmax(190px,1fr) auto auto 1fr; align-items: end; gap: 12px; margin-block-end: 14px; padding: 14px; border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); background: var(--fm2-surface); }
.fm2-active-filters .shlz-input { font-size: 13px; }
.fm2-active-filters .fm2-result-count { justify-self: end; }
.fm2-active-list { display: grid; gap: 12px; }
.fm2-active-item { overflow: hidden; background: var(--fm2-surface); border-radius: var(--fm2-radius); }
.fm2-active-item > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 18px 20px; border-block-end: 1px solid var(--fm2-border); }
.fm2-active-item h2 { margin: 0; font-size: 18px; font-weight: 550; }
.fm2-active-item header p { margin: 4px 0 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-active-grid { display: grid; grid-template-columns: 1.1fr 1.1fr .75fr 1.25fr 1.2fr; }
.fm2-active-grid > section { min-inline-size: 0; padding: 16px 18px; border-inline-end: 1px solid var(--fm2-border); }
.fm2-active-grid > section:last-child { border-inline-end: 0; }
.fm2-active-grid h3 { margin: 0 0 9px; color: var(--fm2-muted); font-size: 10px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.fm2-active-grid dl { display: grid; gap: 6px; margin: 0; }
.fm2-active-grid dl div { display: flex; justify-content: space-between; gap: 10px; }
.fm2-active-grid dt, .fm2-active-grid dd, .fm2-active-grid p, .fm2-active-grid small { margin: 0; font-size: 10px; overflow-wrap: anywhere; }
.fm2-active-grid dt, .fm2-active-grid small { color: var(--fm2-muted); }
.fm2-active-conflicts ul { margin: 0; padding-inline-start: 16px; color: #8c3d13; font-size: 11px; }
.fm2-active-missing { color: #8c3d13; }
.fm2-active-readonly { margin: 0; padding: 10px 18px; border-block-start: 1px solid var(--fm2-border); color: var(--fm2-muted); background: #f8fafc; font-size: 10px; }
.fm2-recon-list { display: grid; gap: 12px; }
.fm2-recon-item { overflow: hidden; background: var(--fm2-surface); border-radius: var(--fm2-radius); }
.fm2-recon-item > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding: 20px 22px 16px; border-block-end: 1px solid var(--fm2-border); }
.fm2-recon-item h2 { margin: 0; font-size: 18px; font-weight: 550; letter-spacing: -.015em; }
.fm2-recon-item header p { max-inline-size: 64ch; margin: 4px 0 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-recon-state { display: grid; flex: 0 0 auto; justify-items: end; gap: 6px; }
.fm2-recon-state strong { font-size: 12px; font-weight: 500; }
.fm2-recon-grid { display: grid; grid-template-columns: 1.15fr 1.35fr .85fr 1.1fr; }
.fm2-recon-grid > section { min-inline-size: 0; padding: 18px 20px; border-inline-end: 1px solid var(--fm2-border); }
.fm2-recon-grid > section:last-child { border-inline-end: 0; }
.fm2-recon-grid h3 { margin: 0 0 10px; color: var(--fm2-muted); font-size: 10px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.fm2-recon-grid p { margin: 0 0 12px; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.fm2-recon-grid dl { display: grid; gap: 7px; margin: 0; }
.fm2-recon-grid dl div { display: flex; justify-content: space-between; gap: 12px; }
.fm2-recon-grid dt { color: var(--fm2-muted); font-size: 10px; }
.fm2-recon-grid dd { margin: 0; font-size: 10px; font-weight: 500; text-align: end; overflow-wrap: anywhere; }
.fm2-recon-conflicts ul { display: grid; gap: 6px; margin: 0; padding-inline-start: 16px; color: #8c3d13; font-size: 11px; }
.fm2-recon-clear { color: #276747; font-size: 11px; font-weight: 500; }
.fm2-recon-notice { margin: 0 0 14px; padding: 12px 16px; border-radius: var(--fm2-radius); font-size: 13px; }
.fm2-recon-notice--success { color: #185c3e; background: #e8f5ee; }
.fm2-recon-notice--error { color: #8c3d13; background: #fff0e8; }
.fm2-data-unavailable { margin: 0 0 16px; padding: 12px 16px; border-radius: var(--fm2-radius); color: #8c3d13; background: #fff0e8; font-size: 14px; overflow-wrap: anywhere; }
.fm2-recon-decision { margin: 0 20px 20px; padding: 18px; border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); background: #f8fafc; }
.fm2-recon-decision > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.fm2-recon-decision h3 { margin: 0; font-size: 14px; font-weight: 600; }
.fm2-recon-decision header p, .fm2-recon-history-empty { margin: 4px 0 0; color: var(--fm2-muted); font-size: 11px; }
.fm2-recon-history { display: grid; gap: 8px; margin: 14px 0; padding: 0; list-style: none; }
.fm2-recon-history li { padding: 11px 12px; border: 1px solid var(--fm2-border); border-radius: 8px; background: #fff; }
.fm2-recon-history li > div { display: flex; justify-content: space-between; gap: 12px; }
.fm2-recon-history strong, .fm2-recon-history span { font-size: 11px; }
.fm2-recon-history span { color: var(--fm2-muted); }
.fm2-recon-history p { margin: 5px 0 0; font-size: 12px; overflow-wrap: anywhere; }
.fm2-recon-history code { display: inline-block; margin-block-start: 6px; font-size: 11px; overflow-wrap: anywhere; }
.fm2-recon-decision-form { display: grid; grid-template-columns: minmax(180px,.8fr) minmax(230px,1fr) minmax(260px,1.4fr) auto; align-items: end; gap: 12px; margin-block-start: 14px; }
.fm2-recon-decision-form .shlz-input { min-inline-size: 0; font-size: 14px; }
.fm2-recon-decision-form textarea { resize: vertical; }
.fm2-recon-guardrail { margin: 12px 0 0; color: #70421e; font-size: 11px; line-height: 1.5; }
.fm2-replay-list { display: grid; gap: 12px; }
.fm2-replay-item { overflow: hidden; background: var(--fm2-surface); border-radius: var(--fm2-radius); }
.fm2-replay-item > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding: 18px 22px; border-block-end: 1px solid var(--fm2-border); }
.fm2-replay-item h2 { margin: 0; font-size: 18px; font-weight: 550; letter-spacing: -.015em; }
.fm2-replay-item header p { margin: 4px 0 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-replay-body { display: grid; grid-template-columns: 1.5fr .75fr 1fr 1fr; }
.fm2-replay-body > section { min-inline-size: 0; padding: 18px 20px; border-inline-end: 1px solid var(--fm2-border); }
.fm2-replay-body > section:last-child { border-inline-end: 0; }
.fm2-replay-body h3 { margin: 0 0 10px; color: var(--fm2-muted); font-size: 10px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.fm2-replay-body ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.fm2-replay-body li { display: grid; gap: 2px; }
.fm2-replay-body li code { color: #8c3d13; font-size: 9px; overflow-wrap: anywhere; }
.fm2-replay-body li span, .fm2-replay-body p { margin: 0; color: var(--fm2-muted); font-size: 10px; line-height: 1.45; }
.fm2-replay-body > section > strong { display: block; margin-block-end: 6px; font-size: 18px; font-weight: 550; }
.fm2-replay-body > section > code { display: block; margin-block-start: 8px; color: var(--fm2-muted); font-size: 9px; overflow-wrap: anywhere; }

@media (max-width: 900px) {
  .fm2-otiz-start { grid-template-columns: 1fr; gap: 20px; }
  .fm2-otiz-date { padding-inline-start: 0; border-inline-start: 0; }
  .fm2-otiz-scenarios ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fm2-otiz-scenarios li:nth-child(n) { padding-inline: 0 18px; border-inline-start: 0; }
  .fm2-otiz-scenarios li:nth-child(even) { padding-inline-start: 18px; border-inline-start: 1px solid var(--fm2-border); }
  .fm2-recon-queue-summary { grid-template-columns: repeat(3,1fr); }
  .fm2-recon-queue-summary dl, .fm2-recon-queue-summary p { grid-column: span 3; border-block-start: 1px solid rgb(255 255 255 / 14%); border-inline-end: 0; }
  .fm2-recon-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fm2-active-summary { grid-template-columns: repeat(4,1fr); }
  .fm2-active-summary p { grid-column: 1 / -1; border-block-start: 1px solid rgb(255 255 255 / 14%); }
  .fm2-active-grid { grid-template-columns: repeat(2,1fr); }
  .fm2-active-grid > section { border-block-end: 1px solid var(--fm2-border); }
  .fm2-active-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 640px) {
  .fm2-otiz { padding-block-end: 92px; }
  .fm2-otiz-start { padding: 18px; }
  .fm2-otiz-start h1, .fm2-otiz-snapshot-head h1 { font-size: 22px; }
  .fm2-otiz-date { display: grid; }
  .fm2-otiz-date .shlz-field, .fm2-otiz-date .shlz-button { inline-size: 100%; }
  .fm2-otiz-subnav { gap: 16px; overflow-x: auto; white-space: nowrap; }
  .fm2-otiz-current, .fm2-otiz-snapshot-head { align-items: flex-start; flex-direction: column; }
  .fm2-otiz-current > div:last-child { justify-items: start; }
  .fm2-otiz-scenarios header { display: block; }
  .fm2-otiz-scenarios header p { margin-block-start: 5px; }
  .fm2-otiz-scenarios ol { grid-template-columns: 1fr; }
  .fm2-otiz-scenarios li:nth-child(n) { padding: 14px 0; border-inline-start: 0; border-block-end: 1px solid var(--fm2-border); }
  .fm2-otiz-summary { grid-template-columns: repeat(2, 1fr); }
  .fm2-otiz-summary > div:nth-child(2) { border-inline-end: 0; }
  .fm2-otiz-summary > div:nth-child(-n+2) { border-block-end: 1px solid rgb(255 255 255 / 12%); }
  .fm2-otiz-detail { inline-size: calc(100vw - 68px); }
  .fm2-otiz-close form { grid-template-columns: 1fr; }
  .fm2-otiz-close form label:nth-of-type(n) { grid-column: auto; }
  .fm2-otiz-history td { grid-template-columns: 112px minmax(0, 1fr); align-items: baseline; gap: 10px; }
  .fm2-otiz-history td::before { color: var(--fm2-muted); font-size: 10px; font-weight: 500; letter-spacing: .02em; text-transform: uppercase; content: attr(data-label); }
  .fm2-recon-summary { grid-template-columns: repeat(2,1fr); }
  .fm2-recon-summary p { grid-column: 1 / -1; border-block-start: 1px solid rgb(255 255 255 / 14%); }
  .fm2-recon-grid { grid-template-columns: 1fr; }
  .fm2-recon-grid > section { border-inline-end: 0; border-block-end: 1px solid var(--fm2-border); }
  .fm2-recon-grid > section:last-child { border-block-end: 0; }
  .fm2-recon-item > header { align-items: stretch; flex-direction: column; }
  .fm2-recon-state { justify-items: start; }
  .fm2-recon-queue-summary { grid-template-columns: 1fr; }
  .fm2-recon-queue-summary > div { border-inline-end: 0; border-block-end: 1px solid rgb(255 255 255 / 14%); }
  .fm2-recon-queue-summary dl, .fm2-recon-queue-summary p { grid-column: auto; }
  .fm2-recon-status-counts { display: grid; grid-template-columns: 1fr; }
  .fm2-recon-filters { grid-template-columns: 1fr; }
  .fm2-recon-filters .shlz-input { font-size: 16px; }
  .fm2-recon-filter-actions { align-items: stretch; flex-direction: column; }
  .fm2-recon-filter-actions .shlz-button { min-block-size: 44px; }
  .fm2-recon-filter-actions .fm2-result-count { margin-inline-start: 0; text-align: center; }
  .fm2-recon-pager, .fm2-recon-pager > div { align-items: stretch; flex-direction: column; text-align: center; }
  .fm2-recon-pager .shlz-button { min-block-size: 44px; box-sizing: border-box; justify-content: center; }
  .fm2-recon-pager .fm2-pagination__context { display: none; }
  .fm2-recon-pager .shlz-pagination__list { justify-content: center; gap: 8px; }
  .fm2-active-summary { grid-template-columns: repeat(2,1fr); }
  .fm2-active-summary > div { min-inline-size: 0; }
  .fm2-active-summary p { grid-column: 1 / -1; }
  .fm2-active-filters, .fm2-active-grid { grid-template-columns: 1fr; }
  .fm2-active-filters .shlz-input { font-size: 16px; }
  .fm2-active-filters .shlz-button { min-block-size: 44px; }
  .fm2-active-filters .fm2-result-count { justify-self: stretch; text-align: center; }
  .fm2-active-item > header { align-items: stretch; flex-direction: column; }
  .fm2-active-grid > section { border-inline-end: 0; }
  .fm2-recon-decision { margin-inline: 12px; }
  .fm2-recon-decision > header, .fm2-recon-history li > div { flex-direction: column; }
  .fm2-recon-decision-form { grid-template-columns: 1fr; }
  .fm2-recon-decision-form .shlz-input { font-size: 16px; }
  .fm2-recon-decision-form .shlz-button { inline-size: 100%; min-block-size: 44px; }
  .fm2-replay-item > header { align-items: stretch; flex-direction: column; }
  .fm2-replay-body { grid-template-columns: 1fr; }
  .fm2-replay-body > section { border-inline-end: 0; border-block-end: 1px solid var(--fm2-border); }
  .fm2-replay-body > section:last-child { border-block-end: 0; }
}

.fm2-order-heading { max-inline-size: 760px; }
.fm2-order-form { display: grid; grid-template-columns: minmax(0, 920px) minmax(240px, 300px); gap: 16px; align-items: start; }
.fm2-order-form > form { display: contents; }
.fm2-order-surface { inline-size: 100%; max-inline-size: 920px; min-inline-size: 0; overflow: hidden; background: #fff; border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); }
.fm2-order-surface > header { padding: 16px 20px; background: #f8f9fb; border-block-end: 1px solid var(--fm2-border); }
.fm2-order-object { display: grid; gap: 3px; }
.fm2-order-object strong { font-size: 14px; }
.fm2-order-object span, .fm2-order-object small { color: var(--fm2-muted); font-size: 12px; }
.fm2-order-upload { display: grid; gap: 14px; padding: 22px 20px; border-block-end: 1px solid var(--fm2-border); }
.fm2-order-section-head { display: flex; justify-content: space-between; gap: 20px; align-items: flex-start; }
.fm2-order-eyebrow { display: block; margin-block-end: 5px; color: var(--fm2-primary); font-size: 10px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; }
.fm2-order-team { display: grid; gap: 14px; padding: 22px 20px; }
.fm2-order-section-head h2 { margin: 0 0 4px; font-size: 16px; font-weight: 600; }
.fm2-order-section-head p { margin: 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-order-selection { padding: 16px; background: var(--fm2-filter); border-radius: var(--fm2-radius); }
.fm2-order-selection .fm2-picker { gap: 12px; }
.fm2-order-selection .fm2-picker-selection { min-block-size: 28px; align-items: center; }
.fm2-file-drop { position: relative; display: flex; min-block-size: 112px; padding: 22px; align-items: center; justify-content: center; gap: 14px; color: var(--fm2-muted); background: #fafbfc; border: 1px dashed #b9c1cb; border-radius: var(--fm2-radius); text-align: center; cursor: pointer; transition: 120ms ease-out; }
.fm2-file-drop:hover { color: var(--fm2-primary); background: var(--fm2-primary-soft); border-color: var(--fm2-primary); }
.fm2-file-drop:focus-within { border-color: var(--fm2-focus-ring); box-shadow: 0 0 0 3px var(--fm2-focus-halo); }
.fm2-file-drop input { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; opacity: 0; cursor: pointer; }
.fm2-file-drop :is(svg, img) { inline-size: 30px; block-size: 30px; flex: 0 0 auto; }
.fm2-file-drop span { display: grid; gap: 5px; text-align: start; }
.fm2-file-drop strong { color: var(--fm2-ink); font-size: 13px; font-weight: 500; }
.fm2-file-drop small { color: var(--fm2-muted); font-size: 11px; overflow-wrap: anywhere; }
.fm2-file-drop--selected { color: var(--fm2-primary); background: var(--fm2-primary-soft); border-style: solid; border-color: #b9c6ea; }
.fm2-order-engineer { display: grid; grid-template-columns: minmax(220px, .8fr) minmax(280px, 1.2fr); gap: 18px; padding: 16px 20px; align-items: center; border-block: 1px solid var(--fm2-border); }
.fm2-order-engineer > div:first-child { display: grid; gap: 3px; }
.fm2-order-engineer > div:first-child span { font-size: 13px; font-weight: 600; }
.fm2-order-engineer > div:first-child small { color: var(--fm2-muted); font-size: 11px; }
.fm2-order-engineer .fm2-reference-person { max-inline-size: none; padding: 0; background: transparent; }
.fm2-order-actions { display: flex; justify-content: flex-end; gap: 12px; padding: 16px 20px; align-items: center; background: #f8f9fb; }
.fm2-order-helper { position: relative; display: grid; min-inline-size: 0; gap: 14px; padding: 18px; opacity: 1; background: #fff; border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); transform: translateY(0); transition: opacity 240ms ease-out, transform 240ms ease-out; }
.fm2-order-helper[hidden] { display: none; }
.fm2-order-helper--entering { animation: fm2-template-offer-in 240ms ease-out both; }
.fm2-order-helper--motion-start { opacity: .99; transform: translateY(.1px); transition: none; }
.fm2-order-helper--exiting { opacity: 0; transform: translateY(12px); }
@starting-style { .fm2-order-helper:not([hidden]) { opacity: 0; transform: translateY(12px); } }
@keyframes fm2-template-offer-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
.fm2-order-helper-icon { display: grid; inline-size: 38px; block-size: 38px; place-items: center; color: var(--fm2-primary); background: var(--fm2-primary-soft); border-radius: 50%; }
.fm2-order-helper-icon :is(svg, img) { inline-size: 21px; block-size: 21px; }
.fm2-order-helper h2 { margin: 0 0 5px; font-size: 15px; font-weight: 600; }
.fm2-order-helper p { margin: 0; color: var(--fm2-muted); font-size: 12px; line-height: 1.45; }
.fm2-order-helper .shlz-button { justify-self: start; }
.fm2-order-helper form { min-inline-size: 0; }
.fm2-order-current { display: flex; justify-content: space-between; gap: 18px; padding: 14px 20px; align-items: center; background: #f8f9fb; border-block-end: 1px solid var(--fm2-border); }
.fm2-order-current > div { display: grid; gap: 3px; min-inline-size: 0; }
.fm2-order-current span, .fm2-order-current small { color: var(--fm2-muted); font-size: 12px; overflow-wrap: anywhere; }
.fm2-order-followup { max-inline-size: 920px; margin-block-start: 14px; text-align: end; }
.fm2-order-engineer-line { display: flex; gap: 12px; margin: 0; justify-content: space-between; color: var(--fm2-muted); font-size: 12px; }
.fm2-original-details { border-block-start: 1px solid var(--fm2-border); }
.fm2-original-status { grid-column: 1; margin: 0; color: var(--fm2-muted); }
[data-selection-picker] .fm2-selection-modal { inline-size: min(680px, calc(100vw - 32px)); max-block-size: min(760px, calc(100vh - 32px)); }
[data-selection-picker] .fm2-selection-modal .shlz-modal__surface { max-block-size: inherit; }
[data-selection-picker] .fm2-selection-modal .shlz-modal__header > div { flex: 1 1 auto; min-inline-size: 0; }
[data-selection-picker] .fm2-selection-modal .shlz-modal__header p { margin: 4px 0 0; color: var(--fm2-muted); font-size: 12px; }
[data-selection-picker] .fm2-selection-modal .shlz-modal__close { flex: 0 0 auto; margin-inline-start: auto; }
[data-selection-picker] .fm2-selection-modal .shlz-modal__close svg, [data-selection-picker] .fm2-picker-chip button svg { inline-size: 18px; block-size: 18px; fill: none; stroke: currentcolor; stroke-width: 1.5; }
[data-selection-picker] .fm2-selection-modal .shlz-modal__body { display: grid; grid-auto-rows: max-content; gap: 14px; min-block-size: 360px; overflow: auto; }
[data-selection-picker] .fm2-selection-modal .fm2-search-field { display: grid; gap: 6px; }
[data-selection-picker] .fm2-selection-modal .fm2-search-field > span { font-size: 12px; font-weight: 600; }
[data-selection-picker] .fm2-selection-modal .fm2-picker-results { display: grid; grid-auto-rows: max-content; gap: 2px; }
[data-selection-picker] .fm2-selection-modal .fm2-picker-result { display: grid; grid-template-columns: auto minmax(0,1fr); min-block-size: 72px; gap: 10px; padding: 10px; align-items: start; border-radius: 10px; cursor: pointer; }
[data-selection-picker] .fm2-selection-modal .fm2-picker-result:hover { background: var(--fm2-filter); }
[data-selection-picker] .fm2-selection-modal .fm2-picker-result > span { display: grid; grid-auto-rows: max-content; gap: 2px; min-inline-size: 0; }
[data-selection-picker] .fm2-selection-modal .fm2-picker-result small { color: var(--fm2-muted); font-size: 11px; line-height: 1.35; overflow-wrap: anywhere; }
[data-selection-picker] .fm2-picker-selection { display: flex; flex-wrap: wrap; gap: 8px; }
[data-selection-picker] .fm2-picker-chip { display: inline-flex; max-inline-size: 100%; gap: 7px; padding: 6px 8px 6px 10px; align-items: center; color: var(--fm2-ink); background: #fff; border: 1px solid var(--fm2-border); border-radius: 10px; font-size: 12px; }
[data-selection-picker] .fm2-picker-chip > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
[data-selection-picker] .fm2-picker-chip small { color: var(--fm2-muted); white-space: nowrap; }
[data-selection-picker] .fm2-picker-chip button { display: grid; inline-size: 24px; block-size: 24px; padding: 0; place-items: center; color: var(--fm2-muted); background: transparent; border: 0; border-radius: 6px; cursor: pointer; }
[data-selection-picker] .fm2-picker-chip button:hover { color: var(--fm2-ink); background: var(--fm2-filter); }
[data-selection-picker] .fm2-picker-chip button:focus-visible { outline: 2px solid var(--fm2-focus-ring); outline-offset: 1px; }
[data-selection-picker] .fm2-picker-selection-empty, [data-selection-picker] .fm2-picker-result-meta { color: var(--fm2-muted); font-size: 12px; }
@media (max-width: 640px) {
  [data-selection-picker] .fm2-selection-modal { inline-size: calc(100vw - 16px); max-block-size: calc(100dvh - 16px); padding: 0; }
  [data-selection-picker] .fm2-selection-modal .shlz-modal__header,
  [data-selection-picker] .fm2-selection-modal .shlz-modal__body,
  [data-selection-picker] .fm2-selection-modal .shlz-modal__footer { padding-inline: 14px; }
  [data-selection-picker] .fm2-selection-modal .shlz-modal__body { min-block-size: 0; max-block-size: calc(100dvh - 180px); }
  [data-selection-picker] .fm2-selection-modal .fm2-picker-result { min-block-size: 78px; }
}

.fm2-object-identity { display: flex; justify-content: space-between; gap: 24px; margin-block-end: 18px; align-items: flex-start; }
.fm2-object-identity h1 { margin: 0 0 6px; font-size: 25px; font-weight: 600; }
.fm2-object-identity p { margin: 0 0 5px; font-size: 15px; font-weight: 500; }
.fm2-object-identity div > span { color: var(--fm2-muted); font-size: 12px; }
.fm2-next-action { display: flex; justify-content: space-between; gap: 24px; margin-block-end: 16px; padding: 18px 20px; align-items: center; background: var(--fm2-primary-soft); border-radius: var(--fm2-radius); }
.fm2-next-action > div:first-child h2 { margin: 0 0 4px; font-size: 16px; font-weight: 600; }
.fm2-next-action > div:first-child p { margin: 0; color: #4b5670; font-size: 12px; }
.fm2-next-action .fm2-inline-form { grid-template-columns: minmax(210px, 1fr) auto; max-inline-size: 600px; margin: 0; padding: 0; align-items: end; border: 0; }
.fm2-next-action .fm2-inline-form label, .fm2-next-action .fm2-inline-form small { grid-column: 1; }
.fm2-next-action .fm2-inline-form button { grid-column: 2; grid-row: 2; }
.fm2-next-action .fm2-registration-form { inline-size: min(100%, 640px); }
.fm2-next-action .fm2-inline-form:has(#actualStartDate) { display: flex; inline-size: auto; max-inline-size: none; align-items: center; gap: 12px; }
.fm2-open-date { display: flex; align-items: center; gap: 10px; color: #4b5670; font-size: 12px; white-space: nowrap; }
.fm2-open-date .shlz-input { inline-size: 156px; min-block-size: 40px; padding-inline: 12px; color: var(--fm2-ink); background: #fff; border: 1px solid var(--fm2-border); border-radius: 10px; }
.fm2-next-action .fm2-inline-form:has(#actualStartDate) > button { flex: 0 0 auto; white-space: nowrap; }
.fm2-order-documents { margin-block-start: 16px; }
.fm2-order-documents .shlz-document-row:last-child { border-block-end: 0; }
.fm2-object-dashboard { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(280px, .8fr); gap: 16px; align-items: start; }
.fm2-object-dashboard > main, .fm2-object-dashboard > aside { display: grid; min-inline-size: 0; gap: 16px; }
.fm2-object-dashboard .fm2-panel { background: #fff; border-radius: var(--fm2-radius); }
.fm2-object-dashboard .fm2-panel, .fm2-object-dashboard .fm2-details dd { min-inline-size: 0; overflow-wrap: anywhere; }
.fm2-object-dashboard select { inline-size: 100%; max-inline-size: 100%; }
.fm2-object-dashboard .fm2-section-grid { gap: 16px; }
.fm2-quiet-empty, .fm2-problem { display: grid; gap: 4px; padding: 12px; background: var(--fm2-filter); border-radius: var(--fm2-radius); }
.fm2-quiet-empty strong, .fm2-problem strong { font-size: 12px; font-weight: 600; }
.fm2-quiet-empty span, .fm2-problem span { color: var(--fm2-muted); font-size: 11px; }
.fm2-problem { color: #8a3f20; background: #fff3ea; }
.fm2-problem span { color: #794f3b; }
.fm2-object-dashboard .fm2-event { grid-template-columns: 1fr; gap: 4px; padding-block: 10px; }
.fm2-object-dashboard .fm2-event div { display: grid; gap: 3px; }
.fm2-object-dashboard .fm2-event small { color: var(--fm2-muted); }

.fm2-object-data {
  max-inline-size: 1480px;
  margin-block-end: 24px;
}

.fm2-object-data > header {
  display: flex;
  min-block-size: 92px;
  padding: 18px 22px;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
  background: var(--fm2-surface);
  border-radius: 12px 12px 0 0;
}

.fm2-object-data > header > div { display: grid; gap: 5px; }
.fm2-object-data > header h2 { margin: 0; font-size: 16px; font-weight: 600; }
.fm2-object-data > header p { margin: 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-object-data > .fm2-card-header { align-items: center; }
.fm2-object-title { min-inline-size: 0; }
.fm2-object-title__line { display: flex; align-items: center; gap: 12px; }
.fm2-card-header h1 { max-inline-size: 780px; margin: 0; font-size: 22px; font-weight: 600; line-height: 1.25; letter-spacing: -.02em; text-wrap: balance; }
.fm2-card-header .shlz-status { flex: 0 0 auto; }
.fm2-registration { min-inline-size: 184px; padding-inline-start: 22px; border-inline-start: 1px solid var(--fm2-border); text-align: start; }
.fm2-registration span { color: var(--fm2-muted); font-size: 12px; }
.fm2-registration strong { font-size: 22px; font-weight: 600; line-height: 1.15; font-variant-numeric: tabular-nums; letter-spacing: -.02em; }

.fm2-object-data { container-type: inline-size; }
.fm2-object-data :is(h1, h2, h3, p, a, strong, small, span, dt, dd, label) { overflow-wrap: anywhere; }
.fm2-object-data :is(.fm2-card-header, .fm2-object-title, .fm2-next-action, .fm2-object-layout, .fm2-object-workspace, .fm2-static-passport, .fm2-detail-group, .fm2-team-content, .fm2-compact-values) { min-inline-size: 0; }
.fm2-object-layout { display: grid; grid-template-columns: minmax(270px,320px) minmax(0,1fr); align-items: start; gap: 16px; padding-block-start: 16px; }
.fm2-static-passport { position: sticky; inset-block-start: 18px; overflow: hidden; background: var(--fm2-surface); border-radius: 12px; }
.fm2-passport-heading { padding: 17px 18px 13px; border-block-end: 1px solid var(--fm2-border); }
.fm2-passport-heading h2 { margin: 0; font-size: 15px; font-weight: 600; }
.fm2-passport-heading span { color: var(--fm2-muted); font-size: 11px; }
.fm2-object-workspace { min-inline-size: 0; overflow: hidden; background: var(--fm2-surface); border-radius: 12px; }
.fm2-object-workspace > .fm2-next-action { margin: 0; border-radius: 0; }
.fm2-passport-grid { display: grid; grid-template-columns: 1fr; gap: 0; margin: 0; padding: 4px 18px 18px; }
.fm2-passport-grid > div { min-inline-size: 0; padding: 12px 16px 4px 0; }
.fm2-passport-grid dt { color: var(--fm2-muted); font-size: 11px; }
.fm2-passport-grid dd { margin: 3px 0 0; font-size: 13px; font-weight: 600; }
.fm2-passport-technical { padding: 16px 18px 18px; border-block-start: 1px solid var(--fm2-border); }
.fm2-passport-technical h3 { margin: 0 0 10px; }
.fm2-passport-technical .fm2-fact { grid-template-columns: 1fr; gap: 2px; }
.fm2-object-data > .fm2-next-action { margin: 16px 0 0; padding: 18px 20px; background: var(--shlz-source-color-blue-blue-50, #eef0f4); border: 1px solid var(--shlz-source-color-blue-blue-100, #dfe2f0); border-radius: var(--fm2-radius); }
.fm2-object-data > .fm2-next-action h2 { font-size: 17px; }
.fm2-object-data > .fm2-next-action p { max-inline-size: 68ch; color: #566171; font-size: 13px; line-height: 1.45; }
.fm2-next-action:has(.fm2-action-stack) > div:first-child { display: grid; min-inline-size: 0; gap: 4px; }
.fm2-next-action .fm2-action-stack { display: flex; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 10px 16px; }
.fm2-compact-list { display: grid; }
.fm2-compact-row { display: grid; grid-template-columns: minmax(140px,.44fr) minmax(0,1.56fr); gap: 20px; padding-block: 14px; align-items: start; border-block-start: 1px solid #e3e7eb; }
.fm2-static-passport .fm2-compact-list { padding: 3px 18px 10px; }
.fm2-static-passport h3 { margin: 0; font-size: 13px; font-weight: 600; }
.fm2-static-passport .fm2-team-engineer { grid-template-columns: 1fr; }
.fm2-context-link { display: inline-flex; min-block-size: 44px; margin: 2px 18px 16px; align-items: center; }
.fm2-static-passport .fm2-compact-row { grid-template-columns: 1fr; gap: 9px; padding-block: 14px; }
.fm2-static-passport .fm2-compact-values { grid-template-columns: repeat(2,minmax(0,1fr)); }
.fm2-compact-row:first-child { border-block-start: 0; }
.fm2-compact-row h4 { margin: 1px 0 0; font-size: 13px; font-weight: 600; }
.fm2-compact-values { display: grid; grid-template-columns: repeat(auto-fit,minmax(150px,1fr)); gap: 12px 20px; }
.fm2-compact-value { display: grid; min-inline-size: 0; gap: 2px; }
.fm2-compact-value > span { color: var(--fm2-muted); font-size: 11px; }
.fm2-compact-value > strong { min-inline-size: 0; overflow-wrap: anywhere; font-size: 13px; font-weight: 600; font-variant-numeric: tabular-nums; }
.fm2-compact-value--empty > strong { color: #8b96a3; font-weight: 400; }
.fm2-team-content { display: grid; gap: 14px; }
.fm2-team-row .fm2-team-content { max-inline-size: 680px; }
.fm2-team-engineer { display: grid; grid-template-columns: minmax(220px,1.3fr) minmax(130px,.7fr); gap: 14px; }
.fm2-team-engineer > div { display: grid; gap: 2px; }
.fm2-team-engineer span, .fm2-team-label { color: var(--fm2-muted); font-size: 11px; }
.fm2-team-engineer strong { font-size: 13px; font-weight: 600; }
.fm2-team-label { display: block; margin-block-end: 6px; }
.fm2-installer-roster { display: grid; }
.fm2-object-installer { display: grid; grid-template-columns: minmax(180px,1fr) minmax(110px,.45fr) auto; min-inline-size: 0; padding-block: 8px; align-items: center; gap: 12px; border-block-start: 1px solid #e1e6eb; }
.fm2-object-installer:first-child { border-block-start: 0; }
.fm2-object-installer strong { overflow-wrap: anywhere; font-size: 12px; font-weight: 600; }
.fm2-object-installer > span:not(.shlz-status), .fm2-roster-empty { color: var(--fm2-muted); font-size: 11px; }
.fm2-object-tabs > .shlz-tabs__list { gap: 4px; padding: 14px 18px 0; overflow-x: auto; border-block-end: 1px solid var(--fm2-border); scrollbar-width: thin; }
.fm2-object-tabs .shlz-tabs__tab { min-inline-size: auto; }
.fm2-object-tab-panel { padding: 8px 22px 18px; }
.fm2-tab-section { padding-block: 20px; border-block-start: 1px solid var(--fm2-border); }
.fm2-tab-section:first-child { border-block-start: 0; }
.fm2-tab-section > h2 { margin: 0 0 14px; font-size: 15px; font-weight: 600; }
.fm2-fact-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 0 0 12px; column-gap: 28px; }
.fm2-team-role { display: block; margin-block-end: 2px; color: var(--fm2-muted); font-size: 11px; }
.fm2-person-row { display: grid; grid-template-columns: minmax(180px,.7fr) minmax(220px,1fr) minmax(150px,.6fr); gap: 16px; padding-block: 10px; align-items: center; }
.fm2-person-row > span:last-child { color: var(--fm2-muted); font-size: 12px; }
.fm2-object-tab-panel .shlz-document-row__actions { inline-size: auto; min-inline-size: 72px; }
.fm2-object-tab-panel .shlz-document-row { grid-template-columns: 48px minmax(0,1fr) minmax(72px,auto); }
.fm2-object-tab-panel .shlz-document-row__action { inline-size: auto; padding-inline: 10px; color: var(--fm2-primary); font-size: 12px; text-decoration: none; }
.fm2-document-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 14px; }
.fm2-workspace-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 12px; }
.fm2-object-tab-panel h2, .fm2-integrated-panel h2 { margin: 0 0 14px; font-size: 15px; font-weight: 600; }
.fm2-integrated-panel { margin-block-start: 10px; background: #f8f9fb !important; }
.fm2-team-command { display: flex; justify-content: space-between; gap: 24px; padding: 14px 0; align-items: center; border-block-end: 1px solid var(--fm2-border); }
.fm2-team-command div { display: grid; gap: 3px; }
.fm2-team-command h3 { margin: 0; font-size: 13px; font-weight: 600; }
.fm2-team-command p { max-inline-size: 62ch; margin: 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-team-command form { flex: 0 0 auto; margin: 0; }

.fm2-detail-group { min-inline-size: 0; padding: 20px 18px 22px; }
.fm2-object-tab-panel:has(.fm2-detail-group + .fm2-detail-group) { display: grid; grid-template-columns: minmax(0,1.12fr) minmax(0,.88fr); }
.fm2-object-tab-panel .fm2-detail-group + .fm2-detail-group { border-inline-start: 1px solid var(--fm2-border); }
.fm2-detail-group h3 { margin: 0 0 14px; font-size: 13px; font-weight: 600; }
.fm2-detail-group dl { display: grid; gap: 0; margin: 0; }
.fm2-fact { display: grid; grid-template-columns: minmax(130px, .8fr) minmax(0, 1.2fr); gap: 16px; padding-block: 9px; border-block-start: 1px solid #e8ecf0; }
.fm2-fact:first-child { border-block-start: 0; }
.fm2-fact dt { color: var(--fm2-muted); font-size: 12px; }
.fm2-fact dd { min-inline-size: 0; margin: 0; overflow-wrap: anywhere; font-size: 13px; font-weight: 500; }
.fm2-fact--empty dd { color: #8b96a3; font-weight: 400; }
.fm2-object-workspace .fm2-event-list { margin: 0; padding: 0; list-style: none; }
.fm2-object-workspace .fm2-event { grid-template-columns: 1fr; gap: 4px; }
.fm2-object-workspace .fm2-event div { display: grid; gap: 3px; }
.fm2-object-workspace .fm2-event small { color: var(--fm2-muted); line-height: 1.45; }

@media (max-width: 900px) {
  .fm2-shell { grid-template-columns: 64px minmax(0, 1fr); }
  .fm2-shell:has(.fm2-nav-state[open]) { grid-template-columns: 238px minmax(0, 1fr); }
  .fm2-main { padding: 22px 20px 40px; }
  .fm2-section-grid, .fm2-form-layout { grid-template-columns: 1fr; }
  .fm2-object-dashboard { grid-template-columns: 1fr; }
  .fm2-object-layout { grid-template-columns: 1fr; }
  .fm2-static-passport { position: static; }
  .fm2-object-tab-panel:has(.fm2-detail-group + .fm2-detail-group) { grid-template-columns: 1fr; }
  .fm2-object-tab-panel .fm2-detail-group + .fm2-detail-group { border-block-start: 1px solid var(--fm2-border); border-inline-start: 0; }
  .fm2-process { grid-template-columns: repeat(2, 1fr); gap: 18px; }
  .fm2-process-step:not(:last-child)::after { display: none; }
}

@media (pointer: coarse) {
  .fm2-shell :is(button, .shlz-button, summary) { min-inline-size: 44px; min-block-size: 44px; }
}

@media (prefers-reduced-motion: reduce) {
  .fm2-object-data *, .fm2-object-data *::before, .fm2-object-data *::after { scroll-behavior: auto !important; animation-duration: 0s !important; transition-duration: 0s !important; }
}

@media (max-width: 680px) {
  .fm2-shell { display: block; }
  .fm2-workspace { padding-block-end: calc(64px + env(safe-area-inset-bottom)); }
  .fm2-sidebar { position: fixed; z-index: 40; inset: auto 0 0; flex-direction: row; inline-size: 100%; block-size: calc(64px + env(safe-area-inset-bottom)); padding: 8px 8px calc(8px + env(safe-area-inset-bottom)); border-block-start: 1px solid rgb(255 255 255 / 12%); box-shadow: 0 -10px 28px rgb(11 22 35 / 18%); }
  .fm2-nav-body { flex-direction: row; }
  .fm2-logo { display: none; }
  .fm2-primary-nav { flex-direction: row; gap: 4px; margin: 0; overflow-x: auto; overflow-y: hidden; overscroll-behavior-inline: contain; scrollbar-width: none; }
  .fm2-primary-nav::-webkit-scrollbar { display: none; }
  .fm2-nav-item { flex: 0 0 48px; inline-size: 48px; min-block-size: 48px; padding: 10px 12px; }
  .fm2-nav-trigger, .fm2-nav-group, .fm2-nav-text, .fm2-logo-name { display: none !important; }
  .fm2-sidebar-user { flex: 0 0 auto; inline-size: auto; min-block-size: 48px; padding: 4px; border: 0; }
  .fm2-sidebar-user-copy, .fm2-sidebar-avatar { display: none !important; }
  .fm2-feedback-fab { inset-inline-end: max(12px, env(safe-area-inset-right)); inset-block-end: calc(76px + env(safe-area-inset-bottom)); }
  .fm2-logout { inline-size: 40px; block-size: 40px; }
  .fm2-main { padding: 18px 12px 32px; }
  .fm2-page-header, .fm2-object-head, .fm2-command { display: grid; }
  .fm2-page-header h1 { font-size: 22px; }
  .fm2-result-count { justify-self: start; }
  .fm2-list-toolbar { align-items: flex-start; gap: 10px; padding: 10px; overflow: hidden; }
  .fm2-object-filters { grid-template-columns: 1fr; padding-block: 0; }
  .fm2-object-filters .shlz-button { inline-size: 100%; }
  .fm2-segments { overflow-x: auto; max-inline-size: 100%; }
  .fm2-queue-table thead { display: none; }
  .fm2-queue-table, .fm2-queue-table tbody, .fm2-queue-table tr, .fm2-queue-table td { display: block; inline-size: 100%; }
  .fm2-queue-table tr { position: relative; padding: 10px 42px 10px 12px; border-block-end: 1px solid var(--fm2-border); }
  .fm2-queue-table td { display: grid; grid-template-columns: 102px minmax(0, 1fr); gap: 8px; block-size: auto; padding: 6px 0; border: 0; }
  .fm2-queue-table td::before { color: var(--fm2-muted); font-size: 11px; content: attr(data-label); }
  .fm2-queue-table .fm2-row-action { position: absolute; inset: 10px 10px auto auto; display: block; inline-size: auto; }
  .fm2-process { grid-template-columns: 1fr; }
  .fm2-tab-panel { padding: 16px; }
  .fm2-details { grid-template-columns: 1fr; gap: 2px; }
  .fm2-object-data > header { align-items: flex-start; flex-direction: column; gap: 14px; padding: 18px 16px; }
  .fm2-object-data > .fm2-next-action { margin-block-start: 12px; padding: 16px; }
  .fm2-object-title__line { align-items: flex-start; flex-direction: column; gap: 9px; }
  .fm2-card-header h1 { font-size: 20px; }
  .fm2-registration { inline-size: 100%; min-inline-size: 0; padding: 12px 0 0; border-block-start: 1px solid var(--fm2-border); border-inline-start: 0; }
  .fm2-registration strong { font-size: 19px; }
  .fm2-object-layout { grid-template-columns: 1fr; }
  .fm2-static-passport { position: static; }
  .fm2-object-tabs > .shlz-tabs__list { gap: 4px; padding: 12px 12px 0; overflow-x: auto; }
  .fm2-object-tabs .shlz-tabs__tab { flex: 0 0 auto; min-inline-size: max-content; font-size: 12px; }
  .fm2-object-tab-panel { padding-inline: 14px; }
  .fm2-passport-grid { grid-template-columns: 1fr; padding-inline: 14px; }
  .fm2-fact-grid { grid-template-columns: 1fr; }
  .fm2-person-row { grid-template-columns: 1fr; gap: 3px; }
  .fm2-object-tab-panel .shlz-document-row { grid-template-columns: 40px minmax(0,1fr); }
  .fm2-object-tab-panel .shlz-document-row__visual { inline-size: 40px; }
  .fm2-object-tab-panel .shlz-document-row__visual :is(img,.shlz-icon) { inline-size: 36px; block-size: 36px; }
  .fm2-object-tab-panel .shlz-document-row__actions { grid-column: 2; justify-content: flex-start; }
  .fm2-team-command { align-items: flex-start; flex-direction: column; gap: 10px; }
  .fm2-compact-row { grid-template-columns: 1fr; gap: 7px; padding-block: 11px; }
  .fm2-compact-values { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 14px; }
  .fm2-team-engineer { grid-template-columns: 1fr; }
  .fm2-object-installer { grid-template-columns: minmax(0,1fr) auto; gap: 4px 10px; }
  .fm2-object-installer > span:not(.shlz-status) { grid-column: 1; }
  .fm2-object-installer .shlz-status { grid-column: 2; grid-row: 1 / span 2; }
  .fm2-detail-group { padding: 17px 14px 19px; }
  .fm2-fact { grid-template-columns: 1fr; gap: 2px; }
  .fm2-details dd { margin-block-end: 10px; }
  .fm2-event { grid-template-columns: 1fr; gap: 3px; }
  .fm2-form-card { padding: 4px 14px; }
  .fm2-engineer-form { grid-template-columns: 1fr; }
  .fm2-engineer-form small { grid-column: auto; }
  .fm2-picker-dialog { inline-size: calc(100vw - 20px); }
  .fm2-picker:not(.fm2-installer-picker) .fm2-picker-dialog { padding: 18px; }
  .fm2-picker-head { padding: 16px; }
  .fm2-installer-picker .fm2-search-field { margin-inline: 16px; }
  .fm2-picker-modal-selection { padding-inline: 16px; }
  .fm2-picker-result-meta, .fm2-picker-footer { padding-inline: 16px; }
  .fm2-picker-result { grid-template-columns: 28px minmax(0, 1fr); }
  .fm2-picker-result-busy { grid-column: 2; max-inline-size: none; text-align: start; }
  .fm2-object-identity, .fm2-order-actions { display: grid; }
  .fm2-order-form { grid-template-columns: 1fr; }
  .fm2-order-helper { grid-template-columns: auto 1fr auto; align-items: center; }
  .fm2-object-identity h1 { font-size: 22px; }
  .fm2-next-action { display: grid; padding: 16px; }
  .fm2-next-action .fm2-inline-form { grid-template-columns: 1fr; }
  .fm2-next-action .fm2-inline-form label, .fm2-next-action .fm2-inline-form small, .fm2-next-action .fm2-inline-form button { grid-column: 1; grid-row: auto; }
  .fm2-order-surface > header, .fm2-order-team, .fm2-order-engineer, .fm2-order-actions { padding-inline: 14px; }
  .fm2-order-engineer { grid-template-columns: 1fr; }
  .fm2-order-actions .fm2-actions { justify-content: space-between; }
  .fm2-order-actions .fm2-actions .shlz-button { flex: 1; }
  .fm2-shell .shlz-button, .fm2-installer-filters label { min-block-size: 44px; }
  .fm2-role-add select { min-block-size: 44px; }
}

.fm2-installer-table-scroll { max-block-size: calc(100vh - 300px); overflow: auto; }
.fm2-installer-server-filters { display: grid; grid-template-columns: minmax(280px,2fr) minmax(180px,1fr) minmax(180px,1fr) auto auto; gap: 12px; align-items: end; margin-block-end: 16px; padding: 18px 20px; background: var(--fm2-surface); border-radius: var(--fm2-radius); box-shadow: 0 1px 2px rgb(11 22 35 / 5%); }
.fm2-installer-server-filters .shlz-field { inline-size: 100%; }
.fm2-installer-server-filters .shlz-field__control { color: var(--fm2-ink); background: var(--fm2-surface); border-color: var(--fm2-border); border-radius: 10px; transition: border-color 120ms ease-out, box-shadow 120ms ease-out; }
.fm2-installer-server-filters .shlz-field__control:hover { background: var(--fm2-surface); border-color: #aeb7c2; }
.fm2-installer-server-filters .shlz-field__control:focus-within { background: var(--fm2-surface); border-color: var(--fm2-focus-ring); box-shadow: 0 0 0 3px var(--fm2-focus-halo); }
.fm2-installer-server-filters .shlz-input { appearance: none; caret-color: var(--fm2-primary); }
.fm2-installer-server-filters .shlz-input::-webkit-search-decoration { appearance: none; }
.fm2-installer-server-filters .shlz-select__listbox { inline-size: max(100%, 220px); }
.fm2-installer-filter-reset { display: inline-flex; min-block-size: 44px; align-items: center; }
.fm2-installer-directory > .shlz-pagination { padding: 14px; border-block-start: 1px solid var(--fm2-border); }
.fm2-installer-filters { display: flex; gap: 6px; padding: 11px 14px; overflow-x: auto; border-block-end: 1px solid var(--fm2-border); }
.fm2-installer-filters input { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; }
.fm2-installer-filters label { flex: 0 0 auto; padding: 7px 11px; color: var(--fm2-muted); background: var(--fm2-surface); border: 1px solid var(--fm2-border); border-radius: var(--fm2-pill); cursor: pointer; font-size: 12px; }
.fm2-installer-filters label b { margin-inline-start: 4px; color: inherit; }
.fm2-installer-filters input:checked + label { color: var(--fm2-primary); background: var(--fm2-filter); border-color: var(--fm2-primary-soft); font-weight: 600; }
.fm2-installer-filters input:focus-visible + label { outline: 2px solid var(--fm2-focus-ring); outline-offset: 2px; }
.fm2-installer-directory:has(#if-employed:checked) .fm2-installer-row:not(.fm2-installer-row--employed),
.fm2-installer-directory:has(#if-dismissed:checked) .fm2-installer-row:not(.fm2-installer-row--dismissed),
.fm2-installer-directory:has(#if-assigned:checked) .fm2-installer-row:not(.fm2-installer-row--assigned),
.fm2-installer-directory:has(#if-free:checked) .fm2-installer-row:not(.fm2-installer-row--free) { display: none; }
.fm2-installer-table { min-inline-size: 900px; table-layout: auto; }
.fm2-installer-table .shlz-table__head .shlz-table__cell { position: sticky; z-index: 2; inset-block-start: 0; background: var(--shlz-semantic-color-surface-base, #fff); }
.fm2-installer-table th:nth-child(1) { inline-size: 25%; }
.fm2-installer-table th:nth-child(2) { inline-size: 12%; }
.fm2-installer-table th:nth-child(3) { inline-size: 20%; }
.fm2-installer-table th:nth-child(4) { inline-size: 28%; }
.fm2-installer-table th:nth-child(5) { inline-size: 15%; }
.fm2-installer-table td > small, .fm2-installer-person small { display: block; margin-block-start: 3px; color: var(--fm2-muted); font-size: 11px; }
.fm2-installer-person { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; align-items: center; }
.fm2-installer-person .fm2-person-mark { inline-size: 34px; block-size: 34px; }
.fm2-assignment-stack { display: grid; gap: 5px; }
.fm2-assignment-link { display: grid; min-inline-size: 0; text-decoration: none; }
.fm2-assignment-link span { overflow: hidden; color: var(--fm2-muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }

@media (max-width: 680px) {
  .fm2-installer-server-filters { grid-template-columns: 1fr; }
  .fm2-installer-server-filters { padding: 16px; }
  .fm2-installer-server-filters .shlz-button { inline-size: 100%; }
  .fm2-installer-server-filters .shlz-input, .fm2-installer-directory .shlz-pagination__item { min-block-size: 44px; }
  .fm2-installer-table { min-inline-size: 760px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: var(--fm2-motion-duration, .01ms) !important; }
  .fm2-order-helper { animation: none !important; transform: none !important; transition: none !important; }
  @starting-style { .fm2-order-helper:not([hidden]) { opacity: 1; transform: none; } }
}

.fm2-directory-summary { display: grid; grid-template-columns: repeat(3, minmax(110px, 150px)) minmax(280px, 1fr); gap: 1px; margin-block-end: 16px; overflow: hidden; background: var(--fm2-border); border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); }
.fm2-directory-summary > div, .fm2-directory-summary > p { display: grid; min-block-size: 72px; margin: 0; padding: 13px 16px; align-content: center; background: var(--fm2-surface); }
.fm2-directory-summary strong { color: var(--fm2-ink); font-size: 21px; line-height: 1.1; }
.fm2-directory-summary span { margin-block-start: 4px; color: var(--fm2-muted); font-size: 12px; }
.fm2-directory-summary p { font-size: 13px; line-height: 1.35; }
.fm2-installer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.fm2-installer-card { min-inline-size: 0; overflow: hidden; background: var(--fm2-surface); border: 1px solid var(--fm2-border); border-radius: var(--fm2-radius); }
.fm2-installer-card > header { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 11px; padding: 14px 16px; align-items: center; }
.fm2-person-mark { display: grid; inline-size: 40px; block-size: 40px; color: var(--fm2-primary); background: var(--fm2-filter); border-radius: var(--fm2-radius); place-items: center; font-size: 12px; font-weight: 600; }
.fm2-installer-card h2 { margin: 0; color: var(--fm2-ink); font-size: 15px; line-height: 1.35; font-weight: 600; }
.fm2-installer-card header p { margin: 3px 0 0; color: var(--fm2-muted); font-size: 12px; line-height: 1.4; }
.fm2-employment { display: inline-flex; padding: 5px 8px; border-radius: var(--fm2-radius); font-size: 12px; font-weight: 600; }
.fm2-employment--active { color: #2f6a42; background: #e6efe7; }
.fm2-employment--dismissed { color: #8a3636; background: #f4e8e8; }
.fm2-dismissal-note { margin: 0 16px 12px; padding: 8px 10px; color: #7b4444; background: #faf2f2; border-radius: var(--fm2-radius); font-size: 12px; }
.fm2-installer-meta { display: flex; flex-wrap: wrap; gap: 7px 20px; padding: 10px 16px; color: var(--fm2-muted); background: #fafbfc; border-block: 1px solid var(--fm2-border); font-size: 11px; }
.fm2-installer-meta b, .fm2-installer-meta time { color: #3f4b5a; font-weight: 500; }
.fm2-installer-card > section { padding: 12px 16px 14px; }
.fm2-installer-card h3 { margin: 0 0 8px; color: #616d7c; font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.fm2-installer-card ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.fm2-installer-card li { display: grid; min-inline-size: 0; gap: 2px; font-size: 12px; }
.fm2-installer-card li > a { overflow-wrap: anywhere; font-weight: 500; }
.fm2-installer-card li > span, .fm2-assignment-empty { color: var(--fm2-muted); font-size: 11px; }

@media (max-width: 900px) {
  .fm2-installer-grid { grid-template-columns: 1fr; }
  .fm2-directory-summary { grid-template-columns: repeat(3, 1fr); }
  .fm2-directory-summary > p { grid-column: 1 / -1; }
}

@media (max-width: 680px) {
  .fm2-directory-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .fm2-directory-summary > div, .fm2-directory-summary > p { min-block-size: 58px; padding: 10px; }
  .fm2-directory-summary strong { font-size: 18px; }
  .fm2-installer-card > header { grid-template-columns: 38px minmax(0, 1fr); padding: 13px; }
  .fm2-person-mark { inline-size: 38px; block-size: 38px; }
  .fm2-employment { grid-column: 2; justify-self: start; }
  .fm2-installer-meta, .fm2-installer-card > section { padding-inline: 13px; }
}

.fm2-user-toolbar { display: flex; gap: 14px; padding: 12px 14px; align-items: end; border-block-end: 1px solid var(--fm2-border); }
.fm2-user-toolbar .shlz-field { flex: 1 1 340px; max-inline-size: 460px; }
.fm2-user-toolbar .fm2-role-filter { position: relative; flex: 0 0 230px; max-inline-size: 230px; }
.fm2-role-filter .shlz-select__listbox { z-index: 8; inline-size: 280px; max-block-size: 330px; overflow-y: auto; }
.fm2-role-filter .shlz-select__option { display: flex; gap: 16px; justify-content: space-between; }
.fm2-role-filter .shlz-select__option small { color: var(--fm2-muted); font-size: 11px; }
.fm2-user-toolbar .fm2-installer-filters { padding: 0; border: 0; }
.fm2-user-table th:nth-child(1) { inline-size: 17%; }
.fm2-user-table th:nth-child(2) { inline-size: 18%; }
.fm2-user-table th:nth-child(3) { inline-size: 13%; }
.fm2-user-table th:nth-child(4) { inline-size: 24%; }
.fm2-user-table th:nth-child(5) { inline-size: 12%; }
.fm2-user-table th:nth-child(6) { inline-size: 16%; }
.fm2-invitation-reissue { min-inline-size: 140px; white-space: normal; word-break: normal; }
.fm2-user-table :is(th, td) { padding-inline: 16px; }
.fm2-role-stack { display: flex; flex-wrap: wrap; gap: 10px 8px; align-items: center; padding-block: 4px; }
.fm2-role-stack form { margin: 0; }
.fm2-role-chip { max-inline-size: 100%; }
.fm2-role-chip > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fm2-role-chip .shlz-tag__icon { fill: none; stroke: currentcolor; stroke-linecap: round; stroke-width: 1.5; }
.fm2-role-add select { min-block-size: 30px; max-inline-size: 190px; padding: 4px 32px 4px 10px; color: var(--shlz-semantic-color-text-secondary); background: var(--shlz-semantic-color-surface-base); border: 1px solid var(--shlz-semantic-color-border-default); border-radius: var(--shlz-source-radius-regular); cursor: pointer; font: inherit; }
.fm2-role-add select:hover { border-color: var(--shlz-semantic-color-action-primary); }
.fm2-role-add select:focus-visible { outline: 2px solid var(--fm2-focus-ring); outline-offset: 1px; }
.fm2-invite-panel > p { max-inline-size: 72ch; }
.fm2-invite-panel .fm2-auth-form { grid-template-columns: minmax(220px, 1fr) minmax(260px, 1.2fr) auto; align-items: end; }
.fm2-invite-panel .shlz-field { min-inline-size: 0; }
.fm2-invite-feedback { display: grid; gap: 10px; margin-block: 16px; padding: 16px 18px; background: #edf7f1; border-radius: var(--fm2-radius); }
.fm2-invite-feedback--error { background: #fff1f0; }
.fm2-invite-feedback > strong { color: var(--fm2-ink); font-size: 15px; }
.fm2-invite-feedback > p { max-inline-size: 78ch; margin: 0; color: var(--fm2-muted); font-size: 13px; line-height: 1.5; }
.fm2-invite-link { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: end; }
.fm2-invite-copy-status { min-block-size: 20px; color: var(--fm2-muted); font-size: 12px; }
.fm2-employment--invited { color: #7a5600; background: #fff3cc; }
.fm2-user-status-form { margin: 0; }
.fm2-user-status-form .shlz-button { min-block-size: 30px; padding-inline: 10px; font-size: 12px; }
.fm2-activation-login { display: grid; gap: 3px; margin-block: 18px; padding: 12px 14px; background: var(--fm2-soft); border-radius: 10px; }
.fm2-activation-login span, .fm2-password-rules { color: var(--fm2-muted); font-size: 12px; }
.fm2-activation-login strong { overflow-wrap: anywhere; font-size: 14px; }
.fm2-password-rules { margin-block: 0 18px; line-height: 1.5; }
.fm2-access-details summary { display: flex; gap: 8px; align-items: center; color: var(--fm2-primary); font-size: 13px; font-weight: 600; cursor: pointer; }
.fm2-access-details summary span { min-inline-size: 22px; padding: 1px 6px; color: var(--fm2-muted); text-align: center; background: var(--fm2-soft); border-radius: 999px; font-size: 11px; font-variant-numeric: tabular-nums; }
.fm2-access-details ul { display: grid; gap: 9px; margin: 12px 0 0; padding: 0; list-style: none; }
.fm2-access-details li { display: grid; gap: 2px; }
.fm2-access-details li strong { color: var(--fm2-ink); font-size: 12px; line-height: 1.35; }
.fm2-access-details li span { color: var(--fm2-muted); font-size: 11px; line-height: 1.4; }
.fm2-role-catalog { margin-block-start: 28px; }
.fm2-section-head { display: flex; gap: 18px; margin-block-end: 12px; align-items: end; justify-content: space-between; }
.fm2-section-head h2 { margin: 0; color: var(--fm2-ink); font-size: 18px; }
.fm2-section-head p { max-inline-size: 58ch; margin: 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-role-table { table-layout: fixed; }
.fm2-role-column { inline-size: 24%; }
.fm2-permissions-column { inline-size: 48%; }
.fm2-role-status-column { inline-size: 14%; }
.fm2-role-count-column { inline-size: 14%; }
.fm2-role-name { display: block; overflow-wrap: anywhere; font-weight: var(--shlz-semantic-typography-weight-medium); }
.fm2-role-table td small { display: block; margin-block-start: 3px; color: var(--shlz-semantic-color-text-secondary); font-size: 11px; }
.fm2-role-model-note { padding: 16px 18px; border-radius: var(--fm2-radius); background: #fff; }
.fm2-role-model-note strong { font-size: 14px; }
.fm2-role-model-note p { max-inline-size: 76ch; margin: 5px 0 0; color: var(--fm2-muted); font-size: 12px; line-height: 1.5; }
.fm2-role-surface { margin-block-start: 16px; overflow-x: auto; }
.fm2-permission-list { display: flex; flex-wrap: wrap; gap: 6px; }
.fm2-permission-chip { min-block-size: 26px; padding-inline: 9px; font-size: 12px; line-height: 16px; white-space: nowrap; }
@media (max-width: 680px) {
  .fm2-role-model-note { padding: 14px; }
  .fm2-role-table { min-inline-size: 680px; }
}
.fm2-user-row[hidden] { display: none; }
.fm2-search-control { position: relative; }
.fm2-search-control svg { position: absolute; z-index: 1; inset: 50% auto auto 13px; inline-size: 18px; block-size: 18px; fill: none; stroke: #697586; stroke-linecap: round; stroke-width: 1.6; transform: translateY(-50%); pointer-events: none; }
.fm2-search-control .shlz-input { inline-size: 100%; padding-inline-start: 40px; appearance: none; }
.fm2-search-control .shlz-input::-webkit-search-cancel-button { opacity: .55; cursor: pointer; }
@media (max-width: 900px) { .fm2-user-toolbar { display: grid; align-items: stretch; } .fm2-user-toolbar .shlz-field { max-inline-size: none; } .fm2-user-toolbar .fm2-installer-filters { overflow-x: auto; } }
@media (max-width: 680px) { .fm2-user-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); } .fm2-user-table td { grid-template-columns: 92px minmax(0, 1fr); } .fm2-section-head, .fm2-invite-panel .fm2-auth-form, .fm2-invite-link { display: grid; grid-template-columns: minmax(0, 1fr); } }

/* Checklist task surface. shlz-ui continues to own base button geometry and states. */
html:has(.fm2-check-page) { scrollbar-gutter: stable; }
.fm2-check-page { --check-ink: #132238; --check-blue: #2451c6; --check-soft: #edf2ff; --check-green: #16734a; --check-green-soft: #eaf7f0; --check-amber-soft: #fff5dc; position: relative; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,920px) minmax(0,1fr); padding-block-end: 24px; color: var(--check-ink); }
.fm2-check-page > :not(.fm2-toast) { grid-column: 2; min-inline-size: 0; }
.fm2-check-hero { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; column-gap: 32px; row-gap: 14px; padding: 4px 0 24px; }
.fm2-check-object { flex: 1 1 auto; min-inline-size: 0; }
.fm2-check-topline { display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; gap: 16px; inline-size: 100%; }
.fm2-check-object h1 { max-inline-size: 24ch; margin: 14px 0 7px; font-size: clamp(24px, 3vw, 38px); line-height: 1.12; letter-spacing: -.03em; text-wrap: balance; overflow-wrap: anywhere; }
.fm2-check-object p { margin: 0; color: #5d6b7d; font-size: 14px; overflow-wrap: anywhere; }
.fm2-back-link { display: inline-flex; align-items: center; gap: 7px; color: var(--check-blue); font-size: 13px; font-weight: 600; text-decoration: none; }
.fm2-back-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.fm2-back-link svg { inline-size: 18px; block-size: 18px; fill: none; stroke: currentColor; stroke-width: 2; }
.fm2-progress-summary { display: grid; justify-items: end; flex: 0 0 auto; }
.fm2-progress-summary strong { color: var(--check-blue); font-size: 52px; line-height: .9; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.fm2-progress-summary > span { margin-block-start: 8px; color: #5d6b7d; font-size: 13px; }
.fm2-sync-banner { display: flex; align-items: center; gap: 7px; min-inline-size: 0; color: #536174; font-size: 12px; font-weight: 600; white-space: nowrap; }
.fm2-sync-dot { inline-size: 8px; block-size: 8px; border-radius: 50%; background: var(--check-green); }
.fm2-sync-banner[data-state="pending"], .fm2-sync-banner[data-state="offline"] { color: #9a6200; }
.fm2-sync-banner[data-state="pending"] .fm2-sync-dot, .fm2-sync-banner[data-state="offline"] .fm2-sync-dot { background: #d68b00; }
.fm2-sync-banner[data-state="sending"] .fm2-sync-dot { background: var(--check-blue); animation: fm2-sync-pulse 1s ease-in-out infinite; }
.fm2-sync-banner[data-state="error"] { color: #a32d2d; }
.fm2-sync-banner[data-state="error"] .fm2-sync-dot { background: #a32d2d; }
.fm2-sync-banner button { padding: 0; border: 0; background: none; color: inherit; text-decoration: underline; text-underline-offset: 3px; font: inherit; cursor: pointer; }
@keyframes fm2-sync-pulse { 50% { transform: scale(1.6); opacity: .45; } }
.fm2-check-gate { display: grid; gap: 4px; padding: 15px 18px; margin-block-end: 18px; border-radius: var(--fm2-radius); background: var(--check-amber-soft); color: #694908; }
.fm2-check-gate span { font-size: 13px; }
.fm2-check-opening { grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 18px; }
.fm2-check-opening > div { display: grid; gap: 4px; }
.fm2-opening-form { display: flex; align-items: end; gap: 10px; }
.fm2-opening-form .shlz-field { min-inline-size: 190px; }
.fm2-opening-form .shlz-button { min-block-size: 40px; }
.fm2-check-layout { inline-size: 100%; max-inline-size: 920px; margin-inline: auto; }
.fm2-check-layout[inert] { opacity: .54; filter: saturate(.5); }
.fm2-check-content { display: grid; gap: 12px; min-inline-size: 0; }
.fm2-check-section { overflow: hidden; border-radius: 16px; background: #fff; box-shadow: 0 1px 0 rgba(19,34,56,.08), 0 10px 28px rgba(19,34,56,.055); }
.fm2-check-section-head { display: grid; grid-template-columns: minmax(0,1fr) 22px; gap: 12px; align-items: center; inline-size: 100%; min-block-size: 68px; padding: 11px 16px; border: 0; background: #fff; color: inherit; text-align: start; cursor: pointer; }
.fm2-section-toggle:hover, .fm2-check-toggle:hover { background: #f9fbff; }
.fm2-section-toggle:focus-visible, .fm2-check-all:focus-visible, .fm2-check-toggle:focus-visible, .fm2-item-installers:focus-visible { outline: 2px solid var(--fm2-focus-ring); outline-offset: -2px; }
.fm2-check-all { display: grid; grid-template-columns: 30px minmax(0,1fr); gap: 12px; align-items: center; inline-size: 100%; min-block-size: 52px; padding: 8px 2px; border: 0; border-block-end: 1px solid #edf0f4; background: var(--check-soft); color: var(--check-blue); font: inherit; font-size: 13px; font-weight: 600; text-align: start; cursor: pointer; }
.fm2-check-all:hover { background: #e5ecff; }
.fm2-check-all .fm2-check-box { inline-size: 26px; block-size: 26px; border-color: #7890cb; border-radius: 8px; }
.fm2-check-all.is-checked .fm2-check-box { border-color: var(--check-green); background: var(--check-green); }
.fm2-check-all.is-checked .fm2-check-box svg { opacity: 1; }
.fm2-check-all:disabled { background: var(--check-green-soft); color: var(--check-green); cursor: default; }
.fm2-section-title { display: grid; gap: 4px; min-inline-size: 0; }
.fm2-section-title strong { font-size: 15px; overflow-wrap: anywhere; }
.fm2-section-title small { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; color: #6b7888; font-size: 12px; }
.fm2-section-work-state { margin-inline-start: auto; padding: 2px 7px; border-radius: var(--fm2-pill); background: #eef1f5; color: #536174; font-weight: 600; white-space: nowrap; }
.fm2-section-chevron { inline-size: 20px; block-size: 20px; fill: none; stroke: #768395; stroke-width: 2; transition: transform .2s cubic-bezier(.16,1,.3,1); }
.fm2-check-section.is-open .fm2-section-chevron { transform: rotate(180deg); }
.fm2-check-section.is-progressing .fm2-section-work-state { background: var(--check-soft); color: var(--check-blue); }
.fm2-check-section.is-complete .fm2-section-work-state { background: var(--check-green-soft); color: var(--check-green); }
.fm2-check-section.needs-photo .fm2-section-work-state { background: #fff0cf; color: #9a6200; }
.fm2-check-section-body { display: none; padding: 0 16px 18px; }
.fm2-check-section.is-open .fm2-check-section-body { display: block; }
.fm2-check-items { border-block-start: 1px solid #edf0f4; }
.fm2-check-item { display: grid; border-block-end: 1px solid #edf0f4; background: #fff; }
.fm2-check-toggle { display: grid; grid-template-columns: 30px minmax(0,1fr) auto; gap: 12px; align-items: center; inline-size: 100%; min-block-size: 58px; padding: 9px 2px 5px; border: 0; background: transparent; color: inherit; text-align: start; cursor: pointer; }
.fm2-check-box { display: grid; place-items: center; inline-size: 28px; block-size: 28px; box-sizing: border-box; border: 2px solid #aeb8c5; border-radius: 9px; color: #fff; }
.fm2-check-box svg { inline-size: 18px; block-size: 18px; fill: none; stroke: currentColor; stroke-width: 2.5; opacity: 0; }
.fm2-check-item.is-checked .fm2-check-box { border-color: var(--check-green); background: var(--check-green); }
.fm2-check-item.is-checked .fm2-check-box svg { opacity: 1; }
.fm2-check-label { display: grid; gap: 3px; min-inline-size: 0; line-height: 1.3; overflow-wrap: anywhere; }
.fm2-check-label small { color: #748194; font-size: 11px; }
.fm2-check-item.is-checked .fm2-check-label small { color: var(--check-green); }
.fm2-check-weight { color: var(--check-blue); font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; }
.fm2-item-installers { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; min-block-size: 36px; margin-inline-start: 42px; padding: 2px 2px 9px; border: 0; background: transparent; color: var(--check-blue); font: inherit; font-size: 12px; text-align: start; cursor: pointer; }
.fm2-item-installers > span { min-inline-size: 0; overflow: hidden; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.fm2-item-installers small { flex: 0 0 auto; color: #6b7888; font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.fm2-check-item.has-dismissed { background: #fff9ed; }
.fm2-check-item.has-dismissed .fm2-item-installers, .fm2-check-item.has-dismissed .fm2-item-installers small { color: #8a5a00; }
.fm2-photo-zone { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 14px 18px; align-items: center; padding: 18px 0 4px; }
.fm2-photo-copy { display: grid; gap: 3px; }.fm2-photo-copy span { color: #6b7888; font-size: 12px; }
.fm2-photo-actions { display: flex; align-items: center; gap: 10px; }.fm2-camera-action { gap: 7px; }.fm2-camera-action svg { inline-size: 18px; block-size: 18px; fill: currentColor; }
.fm2-camera-action input, .fm2-file-action input { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.fm2-file-action { color: var(--check-blue); font-size: 12px; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.fm2-photo-strip { grid-column: 1/-1; display: flex; gap: 10px; min-block-size: 74px; overflow-x: auto; padding: 3px 0 8px; }.fm2-photo-empty { align-self: center; color: #7c8897; font-size: 12px; }
.fm2-photo-thumb { position: relative; flex: 0 0 88px; block-size: 72px; margin: 0; overflow: hidden; border-radius: 10px; background: #e8edf3; }.fm2-photo-thumb > a { display: block; inline-size: 100%; block-size: 100%; color: #374860; }.fm2-photo-thumb img { inline-size: 100%; block-size: 100%; object-fit: cover; }.fm2-photo-thumb figcaption { position: absolute; inset: auto 4px 4px; padding: 3px 5px; border-radius: 5px; background: rgba(19,34,56,.82); color: #fff; font-size: 9px; text-align: center; pointer-events: none; }.fm2-photo-thumb > button { position: absolute; inset: 4px 4px auto auto; display: grid; place-items: center; inline-size: 24px; block-size: 24px; padding: 0; border: 0; border-radius: 7px; background: rgba(255,255,255,.94); color: #a32d2d; font-size: 18px; cursor: pointer; }.fm2-photo-thumb [data-photo-error], .fm2-gallery-photo [data-photo-error] { display: grid; place-items: center; gap: 5px; block-size: 100%; padding: 7px; box-sizing: border-box; font-size: 10px; text-align: center; }.fm2-photo-thumb [data-photo-error] button, .fm2-gallery-photo [data-photo-error] button { border: 0; background: transparent; color: var(--check-blue); font: inherit; font-weight: 700; text-decoration: underline; cursor: pointer; }
.fm2-all-photos { justify-self: stretch; min-block-size: 48px; margin-block-start: 16px; border: 1px solid #cbd4df; border-radius: 12px; background: #fff; color: var(--check-blue); font: inherit; font-weight: 600; cursor: pointer; }
.fm2-all-photos:hover { background: #f6f8fc; }
.fm2-all-photos span { display: inline-grid; place-items: center; min-inline-size: 24px; block-size: 24px; margin-inline-start: 6px; border-radius: var(--fm2-pill); background: var(--check-soft); font-size: 12px; font-variant-numeric: tabular-nums; }
.fm2-gallery-page { min-inline-size: 0; }
.fm2-gallery-page[hidden] { display: none; }
.fm2-check-page.is-gallery > .fm2-check-hero, .fm2-check-page.is-gallery > .fm2-check-layout, .fm2-check-page.is-gallery > .fm2-all-photos, .fm2-check-page.is-gallery > .fm2-check-gate { display: none; }
.fm2-gallery-head { display: grid; gap: 18px; padding-block: 4px 24px; }
.fm2-gallery-head button { display: inline-flex; align-items: center; justify-self: start; gap: 7px; padding: 0; border: 0; background: transparent; color: var(--check-blue); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.fm2-gallery-head button svg { inline-size: 18px; block-size: 18px; fill: none; stroke: currentColor; stroke-width: 2; }
.fm2-gallery-head h2 { margin: 0; font-size: clamp(26px,3vw,38px); letter-spacing: -.03em; }
.fm2-gallery-content { display: grid; gap: 28px; }
.fm2-gallery-group { display: grid; gap: 12px; }
.fm2-gallery-group h3 { margin: 0; font-size: 16px; }
.fm2-gallery-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(180px,1fr)); gap: 12px; }
.fm2-gallery-photo { position: relative; aspect-ratio: 4 / 3; margin: 0; overflow: hidden; border-radius: 12px; background: #e8edf3; }
.fm2-gallery-photo > a { display: block; inline-size: 100%; block-size: 100%; color: #374860; }.fm2-gallery-photo img { inline-size: 100%; block-size: 100%; object-fit: cover; }
.fm2-gallery-photo figcaption { position: absolute; inset: auto 8px 8px; padding: 4px 7px; border-radius: 6px; background: rgba(19,34,56,.82); color: #fff; font-size: 10px; }
.fm2-gallery-placeholder { display: grid; place-items: center; block-size: 100%; padding: 20px; color: #657181; font-size: 12px; text-align: center; }
.fm2-gallery-empty { margin: 0; padding: 28px; border-radius: 12px; background: #fff; color: #657181; text-align: center; }
.fm2-confirm-dialog { inline-size: min(440px,calc(100vw - 32px)); padding: 0; border: 0; border-radius: 16px; background: #fff; color: var(--check-ink); box-shadow: 0 24px 64px rgba(19,34,56,.24); }
.fm2-confirm-dialog::backdrop { background: rgba(12,24,41,.52); }
.fm2-confirm-dialog__content { padding: 24px; }
.fm2-confirm-dialog h2 { margin: 0 0 10px; font-size: 22px; line-height: 1.2; letter-spacing: -.02em; }
.fm2-confirm-dialog p { margin: 0; color: #5d6b7d; font-size: 14px; line-height: 1.5; }
.fm2-confirm-dialog p strong { color: var(--check-ink); }
.fm2-confirm-dialog__actions { display: flex; justify-content: flex-end; gap: 10px; margin-block-start: 24px; }
.fm2-confirm-dialog__actions .shlz-button { min-block-size: 44px; }
.fm2-confirm-dialog .shlz-field { display: grid; gap: 7px; margin-block-start: 18px; }
.fm2-confirm-dialog textarea.shlz-input { min-block-size: 96px; resize: vertical; }
.fm2-installer-dialog { inline-size: min(560px,calc(100vw - 32px)); max-block-size: min(760px,calc(100dvh - 32px)); padding: 0; border: 0; border-radius: 16px; background: transparent; color: var(--check-ink); }
.fm2-installer-dialog::backdrop { background: rgba(12,24,41,.52); }
.fm2-installer-dialog__surface { display: grid; grid-template-rows: auto minmax(0,1fr) auto; max-block-size: inherit; overflow: hidden; border-radius: inherit; background: #fff; box-shadow: 0 24px 64px rgba(19,34,56,.24); }
.fm2-installer-dialog header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 22px 22px 14px; border-block-end: 1px solid #edf0f4; }
.fm2-installer-dialog :is(.fm2-installer-dialog__surface, header, header > div, .fm2-installer-dialog__body, footer, [data-installer-options]) { min-inline-size: 0; max-inline-size: 100%; box-sizing: border-box; }
.fm2-installer-dialog h2 { margin: 0; font-size: 22px; letter-spacing: -.02em; }
.fm2-installer-dialog header p { margin: 5px 0 0; overflow-wrap: anywhere; color: #5d6b7d; font-size: 13px; }
.fm2-installer-dialog header > button { display: grid; flex: 0 0 44px; inline-size: 44px; block-size: 44px; padding: 0; border: 0; border-radius: 10px; background: #f2f4f7; color: #536174; font-size: 26px; cursor: pointer; place-items: center; }
.fm2-installer-dialog__body { overflow-y: auto; padding: 16px 22px; }
.fm2-installer-help { margin: 0 0 14px; color: #5d6b7d; font-size: 13px; line-height: 1.45; }
.fm2-installer-choice { display: grid; grid-template-columns: 24px minmax(0,1fr); gap: 10px; align-items: center; min-block-size: 54px; padding: 7px 2px; border-block-end: 1px solid #edf0f4; cursor: pointer; }
.fm2-installer-choice > span { display: grid; gap: 3px; min-inline-size: 0; }
.fm2-installer-choice strong { overflow-wrap: anywhere; font-size: 14px; }
.fm2-installer-choice small { color: #657181; font-size: 11px; }
.fm2-installer-choice__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; min-inline-size: 0; }
.fm2-installer-choice em { padding: 4px 7px; border-radius: 8px; font-size: 11px; font-style: normal; font-weight: 600; white-space: nowrap; }
.fm2-installer-choice.is-employed em { background: #e6efe7; color: #2f6a42; }
.fm2-installer-choice.is-dismissed em { background: #f4e8e8; color: #8a3636; }
.fm2-installer-error { margin: 12px 0 0; color: #a32d2d; font-size: 13px; font-weight: 600; }
.fm2-installer-dialog footer { display: flex; justify-content: flex-end; gap: 10px; padding: 14px 22px 20px; border-block-start: 1px solid #edf0f4; }
.fm2-installer-dialog footer .shlz-button { min-block-size: 44px; }
.fm2-toast { position: fixed; z-index: 30; inset: 20px 20px auto auto; max-inline-size: min(360px,calc(100vw - 40px)); padding: 13px 16px; border-radius: 12px; background: var(--check-ink); color: #fff; box-shadow: 0 16px 40px rgba(19,34,56,.24); font-size: 13px; }
.fm2-toast[hidden] { display: none; }
@media (max-width: 680px) { .fm2-main:has(.fm2-check-page) { padding: 0 12px 32px; } .fm2-main:has(.fm2-check-page) > .fm2-breadcrumb { display: none; } .fm2-check-page { padding-block-start: 16px; } .fm2-check-hero { align-items: flex-start; padding-block-end: 16px; } .fm2-check-object h1 { margin-block-start: 11px; font-size: 24px; } .fm2-progress-summary strong { font-size: 38px; } .fm2-check-opening { grid-template-columns: 1fr; align-items: stretch; } .fm2-opening-form { display: grid; grid-template-columns: 1fr; } .fm2-opening-form .shlz-field { min-inline-size: 0; } .fm2-opening-form .shlz-button { inline-size: 100%; min-block-size: 48px; } .fm2-check-section-head { grid-template-columns: minmax(0,1fr) 20px; min-block-size: 72px; padding: 11px 12px; } .fm2-section-chevron { grid-column: 2; } .fm2-check-section-body { padding: 0 12px 15px; } .fm2-check-toggle { min-block-size: 62px; } .fm2-item-installers { align-items: flex-start; flex-direction: column; gap: 3px; min-block-size: 42px; margin-inline-start: 42px; } .fm2-item-installers > span { max-inline-size: 100%; } .fm2-photo-zone { grid-template-columns: 1fr; } .fm2-photo-actions { display: grid; grid-template-columns: 1fr 1fr; } .fm2-camera-action, .fm2-file-action { min-block-size: 44px; box-sizing: border-box; justify-content: center; text-align: center; } .fm2-file-action { display: grid; place-items: center; border: 1px solid #cfd7e3; border-radius: 10px; text-decoration: none; } .fm2-photo-strip { grid-column: 1; } }

.fm2-photo-placeholder { display: grid; place-items: center; inline-size: 92px; block-size: 72px; background: #eef3f8; color: #5d6b7d; font-size: 12px; font-weight: 600; }

/* Monthly daily-work calendar; shlz-ui owns Calendar Grid geometry and states. */
.fm2-calendar-page { display: grid; gap: 16px; }
.fm2-calendar-header, .fm2-calendar-toolbar, .fm2-calendar-period { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.fm2-calendar-header h1 { margin: 0; font-size: 28px; font-weight: 500; letter-spacing: -.025em; }
.fm2-calendar-header p { margin: 5px 0 0; color: var(--fm2-muted); font-size: 13px; }
.fm2-calendar-toolbar { min-block-size: 58px; padding: 9px 12px; border-radius: var(--fm2-radius); background: var(--fm2-surface); }
.fm2-calendar-period h2 { min-inline-size: 190px; margin: 0; text-align: center; font-size: 17px; font-weight: 500; }
.fm2-calendar-period > span { color: var(--fm2-muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.fm2-calendar-period .shlz-button { min-inline-size: 40px; padding-inline: 10px; text-decoration: none; }
.fm2-calendar-layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 16px; align-items: start; min-inline-size: 0; }
.fm2-calendar-grid { --shlz-calendar-grid-row-header-width: 12rem; --shlz-calendar-grid-column-width: 8rem; --shlz-calendar-grid-max-block-size: calc(100vh - 220px); }
.fm2-calendar-grid thead [scope="colgroup"]:is([data-shlz-calendar-grid-state="past"],[data-shlz-calendar-grid-state="future"]) > .shlz-calendar-grid__group-label { position: sticky; inset-inline-start: calc(var(--shlz-calendar-grid-row-header-width) + 12px); display: inline-block; min-inline-size: max-content; }
.fm2-calendar-grid .fm2-calendar-day { inline-size: 100%; padding: 3px; border: 0; border-radius: 6px; color: inherit; background: transparent; font: inherit; text-align: start; cursor: pointer; }
.fm2-calendar-grid .fm2-calendar-day:hover, .fm2-calendar-grid .fm2-calendar-day.is-selected { color: var(--fm2-primary); background: var(--fm2-primary-soft); }
.fm2-calendar-grid .shlz-calendar-grid__disclosure { margin-block-start: var(--shlz-source-spacing-8, 8px); }
.fm2-calendar-grid .shlz-calendar-grid__disclosure + .shlz-calendar-grid__items:not([hidden]) { margin-block-start: var(--shlz-source-spacing-8, 8px); }
.fm2-calendar-event-link { display: grid; gap: 2px; color: inherit; font-size: 11px; line-height: 1.3; text-decoration: none; }
.fm2-calendar-event-link strong { font-size: 12px; font-weight: 600; }
.fm2-calendar-event-link:hover strong { text-decoration: underline; text-underline-offset: 2px; }
.fm2-calendar-cell-empty { color: var(--fm2-muted); opacity: .55; }
.fm2-calendar-agenda { min-block-size: 240px; padding: 18px; border-radius: var(--fm2-radius); background: var(--fm2-surface); }
.fm2-calendar-agenda header { padding-block-end: 13px; border-block-end: 1px solid var(--fm2-border); }
.fm2-calendar-agenda h2 { margin: 0; font-size: 18px; font-weight: 500; font-variant-numeric: tabular-nums; }
.fm2-calendar-agenda header p { margin: 3px 0 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-agenda-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.fm2-agenda-item { display: grid; grid-template-columns: 8px minmax(0,1fr); gap: 10px; padding-block: 13px; border-block-end: 1px solid #edf0f4; }
.fm2-agenda-item > div { display: grid; gap: 4px; min-inline-size: 0; }
.fm2-agenda-item strong { font-size: 12px; }
.fm2-agenda-item a { overflow-wrap: anywhere; font-size: 13px; font-weight: 500; }
.fm2-agenda-item span:last-child { color: var(--fm2-muted); font-size: 11px; }
.fm2-agenda-tone { block-size: 100%; min-block-size: 34px; border-radius: var(--fm2-pill); background: var(--fm2-primary-soft); }
.fm2-agenda-tone[data-tone="success"] { background: var(--shlz-source-color-aditional-bright-green-15); }
.fm2-agenda-tone[data-tone="warning"] { background: var(--shlz-source-color-aditional-orange-15); }
.fm2-agenda-tone[data-tone="danger"] { background: var(--shlz-source-color-aditional-red-100-15); }
.fm2-calendar-empty, .fm2-calendar-note { margin: 18px 0 0; color: var(--fm2-muted); font-size: 12px; }
.fm2-visually-hidden { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 1000px) { .fm2-calendar-layout { grid-template-columns: 1fr; } .fm2-calendar-agenda { min-block-size: 0; } }
@media (max-width: 680px) { .fm2-main:has(.fm2-calendar-page) { padding: 14px 10px 92px; } .fm2-main:has(.fm2-calendar-page) > .fm2-breadcrumb { display: none; } .fm2-calendar-header h1 { font-size: 22px; } .fm2-calendar-header p { display: none; } .fm2-calendar-toolbar { align-items: stretch; flex-direction: column; } .fm2-calendar-period { inline-size: 100%; } .fm2-calendar-period h2 { min-inline-size: 0; } .fm2-calendar-grid { --shlz-calendar-grid-max-block-size: 58vh; } }
@media (max-width: 680px) {
  .fm2-check-hero { grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; padding-block-end: 12px; }
  .fm2-check-object { min-inline-size: 0; }
  .fm2-check-object h1 { margin-block-start: 8px; font-size: 20px; line-height: 1.16; }
  .fm2-progress-summary { justify-items: end; align-self: end; padding-block-end: 1px; }
  .fm2-progress-summary strong { font-size: 34px; }
  .fm2-progress-summary > span { margin-block-start: 5px; font-size: 10px; }
  .fm2-confirm-dialog, .fm2-installer-dialog { position: fixed; inset: auto 8px 8px; box-sizing: border-box; inline-size: auto; max-inline-size: none; margin: 0; overflow-x: hidden; border-radius: 18px; }
  .fm2-confirm-dialog { max-block-size: calc(100dvh - 16px); }
  .fm2-confirm-dialog__content { padding: 24px 18px max(18px,env(safe-area-inset-bottom)); }
  .fm2-confirm-dialog p strong { overflow-wrap: anywhere; }
  .fm2-confirm-dialog__actions { display: grid; grid-template-columns: minmax(0,1fr); }
  .fm2-confirm-dialog__actions .shlz-button { box-sizing: border-box; inline-size: 100%; min-inline-size: 0; min-block-size: 48px; padding-inline: 10px; overflow-wrap: anywhere; white-space: normal; }
  .fm2-installer-dialog { max-block-size: calc(100dvh - 16px); }
  .fm2-installer-dialog__surface { inline-size: 100%; max-inline-size: 100%; overflow-x: hidden; }
  .fm2-installer-dialog header { padding: 18px 16px 12px; }
  .fm2-installer-dialog__body { padding: 14px 16px; }
  .fm2-installer-choice { min-block-size: 56px; }
  .fm2-installer-dialog footer { display: grid; grid-template-columns: minmax(0,1fr); padding: 12px 16px max(16px,env(safe-area-inset-bottom)); }
  .fm2-installer-dialog footer .shlz-button { box-sizing: border-box; inline-size: 100%; min-inline-size: 0; min-block-size: 48px; overflow-wrap: anywhere; white-space: normal; }
}
@media (prefers-reduced-motion: reduce) { .fm2-check-page * { scroll-behavior: auto !important; animation: none !important; transition: none !important; } }

/* Rapid-pilot inspection scheduling */
.fm2-inspection-action { inline-size: 52px; padding-inline: 4px !important; text-align: center; }
.fm2-schedule-button { display: inline-grid; inline-size: 40px; min-inline-size: 40px; block-size: 40px; padding: 0; place-items: center; }
.fm2-schedule-button :is(svg, img) { inline-size: 19px; block-size: 19px; }
.fm2-inspection-notice { margin: 0 0 16px; padding: 12px 16px; border-radius: 12px; background: #e8f3ea; color: #285f38; font-size: 14px; font-weight: 600; }
.fm2-inspection-dialog { inline-size: min(480px,calc(100vw - 32px)); padding: 0; border: 0; border-radius: 16px; background: transparent; color: #0b1623; }
.fm2-inspection-dialog::backdrop { background: rgba(12,24,41,.52); }
.fm2-inspection-dialog__surface { overflow: hidden; border-radius: 16px; background: #fff; box-shadow: 0 24px 64px rgba(19,34,56,.24); }
.fm2-inspection-dialog header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 22px 22px 14px; border-block-end: 1px solid #edf0f4; }
.fm2-inspection-dialog h2 { margin: 0; font-size: 22px; letter-spacing: -.02em; }
.fm2-inspection-dialog header p { margin: 5px 0 0; color: #5d6b7d; font-size: 13px; }
.fm2-inspection-dialog header button { display: grid; flex: 0 0 44px; inline-size: 44px; block-size: 44px; padding: 0; border: 0; border-radius: 10px; background: #f2f4f7; color: #536174; font-size: 26px; cursor: pointer; place-items: center; }
.fm2-inspection-dialog__body { padding: 18px 22px 24px; }
.fm2-inspection-dialog footer { display: flex; justify-content: flex-end; gap: 10px; padding: 14px 22px 20px; border-block-start: 1px solid #edf0f4; }
.fm2-control-row--planned { background: #f5f8ff; }
.fm2-planned-inspection { display: inline-flex; align-items: center; gap: 7px; margin-block-end: 7px; color: #253d98; font-size: 12px; font-weight: 600; }
.fm2-planned-inspection :is(svg, img) { inline-size: 16px; block-size: 16px; }
@media (max-width: 900px) { .fm2-inspection-action { min-inline-size: 0; } }
@media (max-width: 680px) { .fm2-inspection-dialog { position: fixed; inset: auto 8px 8px; inline-size: auto; max-inline-size: none; margin: 0; border-radius: 18px; } .fm2-inspection-dialog footer { display: grid; grid-template-columns: 1fr; padding-block-end: max(16px,env(safe-area-inset-bottom)); } .fm2-inspection-dialog footer .shlz-button { inline-size: 100%; min-block-size: 48px; } .fm2-queue-table .fm2-inspection-action { display: block; margin-block-start: 12px; } }

/* Construction-control queue */
.fm2-control-queue { display: grid; gap: 20px; color: #0b1623; }
.fm2-control-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.fm2-control-header h1 { margin: 0 0 7px; font-size: 32px; line-height: 1.15; letter-spacing: -.025em; }
.fm2-control-header p { max-inline-size: 62ch; margin: 0; color: #657181; font-size: 14px; }
.fm2-control-tools { display: grid; grid-template-columns: minmax(280px,520px) auto; gap: 20px; align-items: end; padding: 18px 20px; border-radius: 14px; background: #fff; }
.fm2-control-search .shlz-field__control { position: relative; }
.fm2-control-search :is(svg, img) { position: absolute; z-index: 1; inset: 50% auto auto 12px; inline-size: 18px; block-size: 18px; transform: translateY(-50%); pointer-events: none; }
.fm2-control-search .shlz-input { padding-inline-start: 40px; }
.fm2-control-search .shlz-input:focus-visible { outline: 0; }
.fm2-control-search input[type=search]::-webkit-search-cancel-button { cursor: pointer; }

/*
 * Rapid-pilot focus contract
 * Keep focus chrome neutral across native controls and shlz-ui components.
 * Product/status blue remains valid outside focus and expanded-control paint.
 */
.shlz-scope :is(
  a,
  button,
  input,
  select,
  textarea,
  summary,
  [tabindex],
  .shlz-control,
  .shlz-focusable,
  [class~="shlz-button"],
  .shlz-link,
  .shlz-table__affordance,
  .shlz-table__dropdown,
  .shlz-select__trigger,
  .shlz-select__option,
  .shlz-checkbox,
  .shlz-radio,
  .shlz-switch__input,
  .shlz-dropdown__item,
  .shlz-tabs__tab,
  .shlz-pagination__item,
  .shlz-tag__remove,
  .shlz-notification__action,
  .shlz-notification__close,
  .shlz-modal__close,
  .shlz-drawer__close,
  .shlz-file-row__primary,
  .shlz-file-row__action,
  .shlz-document-row__title,
  .shlz-document-row__action
):focus-visible {
  outline-color: var(--fm2-focus-ring);
}

.shlz-scope .shlz-field__control:focus-within,
.shlz-scope .shlz-field--visual-focus .shlz-field__control {
  background: var(--fm2-surface);
  border-color: var(--fm2-focus-ring);
  box-shadow: 0 0 0 3px var(--fm2-focus-halo);
}

/* The field shell owns focus. Nested native controls must not add the
   browser/shlz blue frame on top of the neutral rapid-pilot ring. */
.shlz-scope .shlz-field__control :is(.shlz-input, .shlz-select, input, textarea, select):focus,
.shlz-scope .shlz-field__control :is(.shlz-input, .shlz-select, input, textarea, select):focus-visible {
  outline: 0;
  box-shadow: none;
}

.shlz-scope .shlz-select__trigger[aria-expanded="true"] {
  background: var(--fm2-surface);
  border-color: var(--fm2-focus-ring);
}

.shlz-scope .shlz-segment__input:focus-visible + .shlz-segment__label {
  outline-color: var(--fm2-focus-ring);
}

.shlz-scope :is(.fm2-sidebar, .fm2-skip) :is(a, button, summary, [tabindex]):focus-visible {
  outline-color: var(--fm2-focus-ring-inverse);
}

/* A field shell owns search focus. The nested input must never draw a second
   browser/global ring, and this compact filter intentionally has no halo. */
.shlz-scope .fm2-object-filters .shlz-field__control:focus-within {
  background: #fff;
  border-color: var(--fm2-focus-ring);
  box-shadow: none;
}

.shlz-scope .fm2-object-filters .shlz-input:focus,
.shlz-scope .fm2-object-filters .shlz-input:focus-visible {
  outline: 0;
  box-shadow: none;
}

.shlz-scope .fm2-otiz-register-toolbar .shlz-field__control:focus-within {
  background: var(--fm2-surface);
  border-color: var(--fm2-focus-ring);
  box-shadow: none;
}

.shlz-scope .fm2-otiz-register-toolbar :is(.shlz-input, .shlz-select):focus,
.shlz-scope .fm2-otiz-register-toolbar :is(.shlz-input, .shlz-select):focus-visible {
  outline: 0;
  box-shadow: none;
}
.fm2-control-filters { display: flex; align-items: center; justify-content: flex-end; gap: 20px; min-block-size: 40px; }
.fm2-completed-switch { white-space: nowrap; }
.fm2-control-surface { overflow: hidden; border-radius: 14px; background: #fff; }
.fm2-control-table { inline-size: 100%; border-collapse: collapse; }
.fm2-control-table th { block-size: 50px; padding: 0 16px; color: #657181; text-align: start; font-size: 12px; font-weight: 500; text-transform: uppercase; }
.fm2-control-table td { block-size: 72px; padding: 10px 16px; border-block-start: 1px solid #eef0f4; vertical-align: middle; font-size: 14px; }
.fm2-control-row { cursor: pointer; transition: background-color .16s cubic-bezier(.16,1,.3,1); }
.fm2-control-row:hover { background: #f7f8fb; }
.fm2-control-link { display: grid; gap: 5px; color: inherit; text-decoration: none; }
.fm2-shipment-cell { box-sizing: border-box; inline-size: 48px; padding-inline: 12px !important; text-align: center; }
.fm2-shipment-status { display: inline-flex; inline-size: 24px; block-size: 24px; align-items: center; justify-content: center; color: var(--shlz-semantic-color-text-primary); }
.fm2-shipment-icon-stack { position: relative; display: inline-grid; flex: 0 0 24px; inline-size: 24px; block-size: 24px; place-items: center; }
.fm2-shipment-icon { flex: 0 0 24px; inline-size: 24px; block-size: 24px; }
.fm2-control-address { max-inline-size: 54ch; color: #253d98; font-size: 15px; font-weight: 600; line-height: 1.35; }
.fm2-control-reg { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; color: #657181; font-size: 12px; font-variant-numeric: tabular-nums; }
.fm2-control-entrance { padding: 3px 8px; border-radius: var(--fm2-pill); background: #edf2ff; color: #253d98; font-size: 12px; font-weight: 600; }
.fm2-activity { display: grid; gap: 2px; color: var(--shlz-semantic-color-text-primary); font-variant-numeric: tabular-nums; white-space: nowrap; }
.fm2-activity-date { font-size: 14px; font-weight: 400; line-height: 1.25; }
.fm2-activity-time { color: var(--shlz-semantic-color-text-secondary); font-size: 11px; font-weight: 400; line-height: 1.2; }
.fm2-activity--never { color: #8a5d05; font-weight: 500; }
.fm2-activity--ready { color: var(--shlz-semantic-color-text-primary); font-weight: 500; }
.fm2-activity-line { display: flex; align-items: center; gap: 8px; }
.fm2-local-sync { flex: 0 0 auto; inline-size: 9px; block-size: 9px; border-radius: 50%; background: #25983e; }
.fm2-local-sync[data-state="queued"] { background: #d47e2e; }
.fm2-local-sync[data-state="sending"] { background: #2f67c7; box-shadow: 0 0 0 3px rgb(47 103 199 / 16%); }
.fm2-local-sync[data-state="retryable"] { background: #b96a00; box-shadow: 0 0 0 3px rgb(185 106 0 / 18%); }
.fm2-local-sync[data-state="blocked"] { background: #b82c35; box-shadow: 0 0 0 3px rgb(184 44 53 / 18%); }
.fm2-control-table .fm2-row-action { inline-size: 48px; padding-inline-start: 4px; }
.fm2-control-table .fm2-row-action span { display: grid; place-items: center; inline-size: 36px; block-size: 36px; border-radius: 9px; color: #253d98; }
.fm2-control-table .fm2-row-action :is(svg, img) { inline-size: 20px; block-size: 20px; }
.fm2-control-empty { border: 0; border-radius: 0; }
.fm2-control-footer { display: flex; justify-content: space-between; gap: 16px; padding: 14px 20px; border-block-start: 1px solid #eef0f4; color: #657181; font-size: 12px; }
.fm2-control-row[hidden], .fm2-control-empty[hidden] { display: none !important; }
@media (max-width: 900px) { .fm2-control-tools { grid-template-columns: 1fr; } .fm2-control-filters { justify-content: space-between; } .fm2-control-table th:nth-child(4), .fm2-control-table td:nth-child(4) { display: none; } }
@media (max-width: 680px) { .fm2-main:has(.fm2-control-queue) { padding: 18px 12px 92px; } .fm2-control-queue { gap: 14px; } .fm2-control-header { align-items: flex-start; } .fm2-control-header h1 { font-size: 25px; } .fm2-control-header p { font-size: 13px; } .fm2-result-count { flex: 0 0 auto; } .fm2-control-tools { gap: 14px; padding: 14px 12px; } .fm2-control-filters { align-items: flex-start; flex-direction: column; gap: 14px; } .fm2-completed-switch { min-block-size: 36px; } .fm2-control-surface { background: transparent; } .fm2-control-table, .fm2-control-table tbody { display: grid; gap: 8px; } .fm2-control-table thead { display: none; } .fm2-control-table tr { position: relative; display: grid; padding: 14px 76px 13px 14px; border-radius: 12px; background: #fff; } .fm2-control-table td { display: block; block-size: auto; padding: 0; border: 0; } .fm2-control-table td:nth-child(2) { margin-block-start: 10px; } .fm2-shipment-cell { position: absolute; inset: 50% 44px auto auto; display: grid !important; inline-size: 24px; block-size: 24px; padding: 0 !important; place-items: center; transform: translateY(-50%); } .fm2-control-address { font-size: 15px; } .fm2-control-reg { font-size: 12px; } .fm2-control-table .fm2-row-action { position: absolute; inset: 50% 8px auto auto; display: block; inline-size: 36px; padding: 0; transform: translateY(-50%); } .fm2-control-footer { padding: 12px 4px; border: 0; } .fm2-control-footer span:last-child { display: none; } }
@media (max-width: 680px) {
  .fm2-main:has(.fm2-control-queue) { padding-block-start: 10px; }
  .fm2-control-queue { gap: 8px; }
  .fm2-control-header { align-items: center; }
  .fm2-control-header h1 { margin: 0; font-size: 22px; }
  .fm2-result-count { font-size: 12px; }
  .fm2-control-tools { gap: 8px; padding: 8px; border-radius: 12px; }
  .fm2-control-search { inline-size: 100%; max-inline-size: none; }
  .fm2-control-search > .shlz-field__label { display: none; }
  .fm2-control-search .shlz-input { min-block-size: 40px; }
  .fm2-control-filters { flex-direction: row; align-items: center; justify-content: space-between; gap: 10px; min-block-size: 36px; }
  .fm2-control-filters .shlz-segment__label { min-block-size: 36px; padding-block: 7px; }
  .fm2-completed-switch { min-block-size: 36px; font-size: 12px; }
  .fm2-completed-prefix { display: none; }
}
.fm2-assignment-list{display:grid;gap:0;min-width:0}
.fm2-assignment-version{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:14px 0;border-bottom:1px solid var(--shlz-color-border,#d1d8df)}
.fm2-assignment-version:first-child{padding-top:0}.fm2-assignment-version:last-child{padding-bottom:0;border-bottom:0}
.fm2-assignment-version>div:first-child{display:grid;gap:3px;min-width:0}.fm2-assignment-version strong{overflow-wrap:anywhere}.fm2-assignment-version span{color:var(--shlz-color-text-secondary,#56616d);font-size:13px}
.fm2-assignment-files{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 16px}.fm2-document-empty{white-space:nowrap}
@media(max-width:760px){.fm2-assignment-version{align-items:flex-start;grid-template-columns:1fr}.fm2-assignment-files{justify-content:flex-start}}
.fm2-object-workspace > .fm2-completion { display: block; margin: 0 22px 24px; padding: 14px 16px; border: 1px solid var(--shlz-color-border, #d9dde3); border-radius: var(--fm2-radius); background: #fff; }
.fm2-object-workspace > .fm2-completion-action { display: grid; align-items: start; grid-template-columns: minmax(0, 1fr); container-type: inline-size; }
.fm2-completion-action > .fm2-completion-form { margin: 0; padding: 0; border: 0; }
.fm2-completion-action > .fm2-action-stack { grid-column: 1 / -1; justify-content: flex-start; }
.fm2-completion > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-block-end: 10px; }
.fm2-completion h2 { margin: 0 0 2px; font-size: 16px; }
.fm2-completion header p { margin: 0; color: #5d6470; font-size: 11px; }
.fm2-completion-track { display: grid; grid-template-columns: 85fr 15fr; min-height: 10px; block-size: 10px; margin-block-end: 12px; overflow: hidden; border: 1px solid #d9dde3; border-radius: 5px; color: #303640; }
.fm2-completion-track__segment { display: block; inline-size: 100%; block-size: 100%; min-width: 0; appearance: none; border: 0; border-radius: 0; background: var(--shlz-source-color-blue-blue-50, #eef0f4); }
.fm2-completion-track__segment::-webkit-progress-bar { background: var(--shlz-source-color-blue-blue-50, #eef0f4); }
.fm2-completion-track__segment::-webkit-progress-value { background: var(--shlz-source-color-blue-blue-200, #253d98); }
.fm2-completion-track__segment::-moz-progress-bar { background: var(--shlz-source-color-blue-blue-200, #253d98); }
.fm2-completion-track__segment--documents::-webkit-progress-value { background: var(--shlz-source-color-blue-blue-300, #17276b); }
.fm2-completion-track__segment--documents::-moz-progress-bar { background: var(--shlz-source-color-blue-blue-300, #17276b); }
.fm2-completion-track__segment + .fm2-completion-track__segment { border-inline-start: 2px solid #fff; }
.fm2-completion-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 0; padding: 0; list-style: none; }
.fm2-completion-steps li { display: flex; gap: 8px; min-width: 0; color: #747b86; }
.fm2-completion-steps li > span { flex: 0 0 22px; display: grid; place-items: center; height: 22px; border: 1px solid #c9ced6; border-radius: 50%; font-size: 11px; font-weight: 600; }
.fm2-completion-steps li div { display: grid; gap: 1px; min-width: 0; }
.fm2-completion-steps strong { color: #303640; font-size: 12px; }
.fm2-completion-steps small, .fm2-completion-steps div > span { color: #6c737e; font-size: 11px; }
.fm2-completion-steps .is-done > span { border-color: #2f7a45; background: #2f7a45; color: #fff; }
.fm2-completion-steps .is-current > span { border-color: #303640; color: #303640; }
.fm2-completion-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-inline-size: 0; align-items: end; gap: 16px; margin-block-start: 24px; padding-block-start: 20px; border-block-start: 1px solid #e4e7eb; }
.fm2-completion-form > .shlz-field { min-inline-size: 0; }
.fm2-completion-form > .shlz-button { grid-column: 1 / -1; justify-self: start; max-inline-size: 100%; overflow-wrap: normal; }
.fm2-completion-form:not(:has(.fm2-completion-details)) { grid-template-columns: minmax(0, 320px); justify-content: start; }
@container (max-width: 520px) { .fm2-completion-form { grid-template-columns: minmax(0, 1fr); } }
@container (max-width: 720px) {
  .fm2-object-layout { grid-template-columns: minmax(0, 1fr); }
  .fm2-static-passport { position: static; }
  .fm2-card-header { flex-direction: column; align-items: flex-start; }
  .fm2-object-title__line { flex-wrap: wrap; }
  .fm2-registration { inline-size: 100%; min-inline-size: 0; padding: 12px 0 0; border-block-start: 1px solid var(--fm2-border); border-inline-start: 0; }
}
.fm2-check-closeout { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px 24px; }
.fm2-check-closeout__copy { display: grid; gap: 9px; min-width: 0; }
.fm2-check-closeout__copy > div { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.fm2-check-closeout__copy > div > strong { font-size: 17px; }
.fm2-check-closeout__copy p { margin: 0; color: #657181; font-size: 13px; }
.fm2-check-closeout__copy ul { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 0; padding: 0; list-style: none; }
.fm2-check-closeout__copy li { display: flex; align-items: center; gap: 7px; color: #657181; font-size: 13px; }
.fm2-check-closeout__copy li > span { width: 9px; height: 9px; border: 1px solid #aab1bc; border-radius: 50%; background: #fff; }
.fm2-check-closeout__copy li.is-done { color: #285f39; font-weight: 500; }
.fm2-check-closeout__copy li.is-done > span { border-color: #2f7a45; background: #2f7a45; }
.fm2-check-closeout > .shlz-button { flex: 0 0 auto; text-decoration: none; }
@media (max-width: 760px) { .fm2-object-workspace > .fm2-next-action { margin: 14px 14px 10px; padding: 16px; } .fm2-object-workspace > .fm2-completion { margin-inline: 14px; padding: 12px 14px; } .fm2-object-workspace > .fm2-completion-action { grid-template-columns: 1fr; } .fm2-completion > header { align-items: flex-start; flex-direction: column; gap: 6px; } .fm2-completion-steps, .fm2-completion-form { grid-template-columns: 1fr; } .fm2-completion-form:not(:has(.fm2-completion-details)) { grid-template-columns: 1fr; } .fm2-next-action .fm2-inline-form:has(#actualStartDate) { align-items: stretch; flex-direction: column; } .fm2-open-date { align-items: stretch; flex-direction: column; } .fm2-open-date .shlz-input { inline-size: 100%; } .fm2-next-action .fm2-action-stack { justify-content: flex-start; } }
@media (max-width: 620px) { .fm2-check-closeout { align-items: stretch; flex-direction: column; padding: 18px; } .fm2-check-closeout > .shlz-button { width: 100%; } }

.fm2-feedback-surface { padding: 24px; }
.fm2-feedback-form { display: grid; gap: 16px; max-inline-size: 75ch; }
.fm2-feedback-form .shlz-field,
.fm2-feedback-form .shlz-field__control,
.fm2-feedback-textarea { inline-size: 100%; box-sizing: border-box; }
.fm2-feedback-surface .shlz-field--textarea .shlz-field__control {
  block-size: auto;
  min-block-size: 120px;
  align-items: stretch;
  padding: 10px 12px;
  overflow: visible;
  border-radius: 12px;
}
.fm2-feedback-textarea { min-block-size: 120px; resize: vertical; border-radius: 12px; }
@media (max-width: 680px) { .fm2-feedback-surface { padding: 18px 14px; } }

/* Register controls wrap as a group while preserving the shared field geometry. */
.fm2-otiz-register-toolbar { flex-wrap: wrap; }
.fm2-otiz-register-toolbar .shlz-field { min-inline-size: 160px; }

/* OTIZ settlement workspace: scoped compositions over public shlz-ui exports. */
.fm2-otiz { --fm2-motion-duration: 160ms; display: grid; gap: 28px; min-inline-size: 0; color: var(--shlz-semantic-color-text-primary); font-variant-numeric: tabular-nums; }
.fm2-otiz-page { background: var(--shlz-semantic-color-surface-base); }
.fm2-shell:has(.fm2-otiz) { grid-template-columns: 72px minmax(0,1fr); }
.fm2-shell:has(.fm2-otiz) :is(.fm2-nav-text,.fm2-nav-group,.fm2-logo-name,.fm2-nav-trigger-text,.fm2-sidebar-user-copy) { display: none; }
.fm2-shell:has(.fm2-otiz) .fm2-logo { inline-size: 48px; }
.fm2-otiz ::selection { background: var(--shlz-source-color-blue-blue-200-15); color: var(--shlz-semantic-color-text-primary); }
.fm2-otiz :focus-visible { outline: 3px solid var(--shlz-semantic-color-action-primary); outline-offset: 3px; }
.fm2-otiz-tabs { display: flex; gap: 4px; max-inline-size: 100%; overflow-x: auto; border-block-end: 1px solid var(--shlz-semantic-color-border-default); }
.fm2-otiz-tabs a { min-block-size: 44px; display: inline-flex; flex: 0 0 auto; align-items: center; padding: 0 14px; color: var(--shlz-semantic-color-text-secondary); font-weight: 500; text-decoration: none; }
.fm2-otiz-tabs a[aria-current="page"] { box-shadow: inset 0 -2px var(--shlz-semantic-color-action-primary); color: var(--shlz-semantic-color-text-primary); }
.fm2-otiz-workflow { display: flex; align-items: end; justify-content: space-between; gap: 32px; padding: 28px 30px; border-radius: 14px; background: var(--shlz-semantic-color-surface-muted); }
.fm2-otiz-workflow h1 { max-inline-size: 22ch; margin: 0 0 12px; font-size: clamp(25px, 3vw, 38px); letter-spacing: -.025em; }
.fm2-otiz-workflow p { margin: 10px 0 0; color: var(--shlz-semantic-color-text-secondary); }
.fm2-otiz-workflow-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.fm2-otiz-workflow-actions form { margin: 0; }
.fm2-otiz-period-form { display: flex; align-items: end; gap: 12px; }
.fm2-otiz-register-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; overflow: hidden; border-radius: 14px; background: var(--shlz-semantic-color-border-default); }
.fm2-otiz-register-summary > div { display: grid; gap: 6px; padding: 18px; background: var(--shlz-semantic-color-surface-subtle); }
.fm2-otiz-register-summary span { color: var(--shlz-semantic-color-text-muted); font-size: 12px; }
.fm2-otiz-register-summary strong { font-size: 18px; }
.fm2-otiz-register-toolbar { display: flex; align-items: end; gap: 12px; }
.fm2-otiz-register-wrap { min-inline-size: 0; overflow-x: auto; background: var(--shlz-semantic-color-surface-base); }
.fm2-otiz-register-table { inline-size: 100%; }
.fm2-otiz-register-table a { display: grid; gap: 4px; color: var(--shlz-semantic-color-action-primary); }
.fm2-otiz-register-table small { color: var(--shlz-semantic-color-text-muted); overflow-wrap: anywhere; }
.fm2-otiz-object-row { min-inline-size: 0; padding-block: 28px; border-block-start: 1px solid var(--shlz-semantic-color-border-default); }
.fm2-otiz-object-row > header { display: flex; align-items: start; justify-content: space-between; gap: 28px; margin-block-end: 20px; }
.fm2-otiz-object-row h2,.fm2-otiz-object-row h3 { margin-block-start: 0; }
.fm2-otiz-object-row > header h2 { margin-block-end: 5px; overflow-wrap: anywhere; font-size: 22px; }
.fm2-otiz-object-row > header p { max-inline-size: 70ch; margin: 0; color: var(--shlz-semantic-color-text-secondary); overflow-wrap: anywhere; }
.fm2-otiz-object-row dl { display: flex; gap: 28px; margin: 0; }
.fm2-otiz-object-row dl div { display: grid; gap: 4px; }
.fm2-otiz-object-row dt { color: var(--shlz-semantic-color-text-muted); font-size: 12px; }
.fm2-otiz-object-row dd { margin: 0; font-weight: 600; white-space: nowrap; }
.fm2-otiz-trace,.fm2-otiz-allocation,.fm2-otiz-issues,.fm2-otiz-discipline { margin-block-start: 18px; }
.fm2-otiz-issues p { max-inline-size: 75ch; padding: 12px 14px; border-radius: 12px; background: var(--shlz-source-color-aditional-orange-15); color: var(--shlz-source-color-aditional-orange); overflow-wrap: anywhere; }
.fm2-otiz-issues [data-severity="blocker"] { background: var(--shlz-source-color-aditional-red-100-15); color: var(--shlz-semantic-color-status-danger); }
.fm2-otiz-discipline form,.fm2-otiz-ledger form { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; }
.fm2-otiz-discipline label { display: grid; gap: 5px; color: var(--shlz-semantic-color-text-secondary); font-size: 12px; }
.fm2-otiz-ledger { min-inline-size: 0; max-inline-size: 100%; overflow: hidden; }
.fm2-otiz-ledger .shlz-table-wrap { inline-size: 100%; min-inline-size: 0; max-inline-size: 100%; overflow-x: auto; }
.fm2-otiz-ledger table { min-inline-size: 920px; }
.fm2-otiz-ledger form { min-inline-size: 250px; }
.fm2-otiz-feedback,.fm2-otiz-state { max-inline-size: 75ch; padding: 14px 16px; border-radius: 12px; background: var(--shlz-semantic-color-surface-muted); }
.fm2-otiz-empty { padding: 32px; border: 1px dashed var(--shlz-semantic-color-border-default); border-radius: 14px; }
.fm2-otiz-empty h2 { margin-block-start: 0; }
.fm2-otiz-snapshots ul { display: grid; gap: 1px; margin: 0; padding: 0; list-style: none; background: var(--shlz-semantic-color-border-default); }
.fm2-otiz-snapshots li a { display: flex; justify-content: space-between; gap: 18px; padding: 14px 16px; background: var(--shlz-semantic-color-surface-base); color: var(--shlz-semantic-color-action-primary); text-decoration: none; }
@media (max-width: 760px) { .fm2-otiz-workflow,.fm2-otiz-object-row > header { align-items: stretch; flex-direction: column; } .fm2-otiz-workflow-actions,.fm2-otiz-workflow-actions > *,.fm2-otiz-workflow-actions .shlz-button { inline-size: 100%; } .fm2-otiz-period-form,.fm2-otiz-register-toolbar { align-items: stretch; flex-direction: column; } .fm2-otiz-register-summary { grid-template-columns: repeat(2,minmax(0,1fr)); } .fm2-otiz-register-table thead { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); } .fm2-otiz-register-table tr,.fm2-otiz-register-table td { display: block; } .fm2-otiz-register-table tr { padding-block: 10px; border-block-end: 1px solid var(--shlz-semantic-color-border-default); } .fm2-otiz-register-table td { display: grid; grid-template-columns: minmax(90px,35%) minmax(0,1fr); gap: 12px; border: 0; } .fm2-otiz-register-table td::before { content: attr(data-label); color: var(--shlz-semantic-color-text-muted); font-size: 12px; } }
@media (max-width: 900px) and (min-width: 681px) { .fm2-shell:has(.fm2-otiz) { grid-template-columns: 64px minmax(0,1fr); } }
@media (max-width: 900px) { .fm2-otiz-tabs { flex-wrap: wrap; overflow: visible; } .fm2-otiz-tabs a { flex: 1 1 130px; justify-content: center; text-align: center; } }
@media (max-width: 420px) { .fm2-otiz { gap: 20px; } .fm2-otiz-workflow { padding: 20px 16px; } .fm2-otiz-register-summary { grid-template-columns: 1fr; } .fm2-otiz-object-row dl { flex-direction: column; gap: 12px; } }
@media (pointer: coarse) { body:has(.fm2-otiz) :is(a,button,input,select,summary) { min-inline-size: 44px; min-block-size: 44px; } body:has(.fm2-otiz) a { display: inline-flex; align-items: center; } }
@media (max-width: 760px) { body.shlz-scope .fm2-shell .fm2-otiz-page :is(a,button,input,select,summary) { min-inline-size: 48px; min-block-size: 48px; } .fm2-otiz-page a { display: inline-flex; align-items: center; } }
@media (prefers-reduced-motion: reduce) { .fm2-otiz { --fm2-motion-duration: 0s; } body.shlz-scope .fm2-shell .fm2-workspace .fm2-main .fm2-otiz * { animation: none; transition: none; } }

/* Minimal operational dashboard composes the pinned public shlz-ui primitives. */
.fm2-dashboard-page { display: grid; gap: 28px; min-inline-size: 0; padding: 32px; }
.fm2-dashboard-header { display: flex; align-items: start; justify-content: space-between; gap: 20px; }
.fm2-dashboard-header h1 { margin: 0; font-size: clamp(28px,4vw,42px); }
.fm2-dashboard-header p { margin: 8px 0 0; color: var(--shlz-semantic-color-text-secondary); }
.fm2-dashboard-metrics { grid-template-columns: repeat(4,minmax(0,1fr)); }
.fm2-dashboard-metric { grid-template-rows: 44px 64px minmax(42px,auto); gap: 10px; align-content: start; min-block-size: 0; padding: 24px; color: inherit; text-decoration: none; }
.fm2-dashboard-value { display: block; font-size: clamp(38px,5vw,64px); font-weight: 600; line-height: 1; }
.fm2-dashboard-basis { color: var(--shlz-semantic-color-text-secondary); font-size: 13px; line-height: 1.45; }
.fm2-dashboard-lists { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.fm2-dashboard-list { min-inline-size: 0; padding: 24px; border: 1px solid var(--shlz-semantic-color-border-default); border-radius: 16px; background: var(--shlz-semantic-color-surface-base); }
.fm2-dashboard-list > header { display: flex; justify-content: space-between; gap: 16px; }
.fm2-dashboard-list h2 { margin: 0; font-size: 20px; }
.fm2-dashboard-list ol { display: grid; gap: 1px; margin: 18px 0 0; padding: 0; list-style: none; background: var(--shlz-semantic-color-border-default); }
.fm2-dashboard-list li { min-inline-size: 0; background: var(--shlz-semantic-color-surface-base); }
.fm2-dashboard-list li a { display: grid; gap: 4px; min-inline-size: 0; padding: 14px 0; overflow-wrap: anywhere; }
.fm2-dashboard-list li span { color: var(--shlz-semantic-color-text-secondary); font-size: 13px; }
.fm2-dashboard-state { max-inline-size: 760px; }
.fm2-dashboard-register { justify-self: start; }
.fm2-dashboard-charts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; min-inline-size: 0; }
.fm2-dashboard-chart { grid-template-rows: auto minmax(0,auto); gap: 18px; min-inline-size: 0; min-block-size: 0; padding: 24px; }
.fm2-dashboard-chart > .shlz-chart-widget__plot { min-block-size: 0; overflow: visible; }
.fm2-dashboard-chart--stages { grid-column: 1/-1; }
.fm2-dashboard-chart:not(.fm2-dashboard-chart--stages) { --fm2-chart-header-size: 64px; grid-template-rows: var(--fm2-chart-header-size) minmax(0,1fr); }
.fm2-dashboard-chart:not(.fm2-dashboard-chart--stages) > .shlz-chart-widget__header { block-size: var(--fm2-chart-header-size); align-items: flex-start; }
.fm2-dashboard-chart h2 { margin: 0; font-size: 20px; }
.fm2-dashboard-chart .shlz-chart-widget__header p { margin: 6px 0 0; color: var(--shlz-semantic-color-text-secondary); font-size: 12px; }
.fm2-chart-bars { display: grid; align-items: end; gap: 10px; min-block-size: 190px; margin-block-start: 18px; }
.fm2-chart-bars--six { grid-template-columns: repeat(6,minmax(0,1fr)); }
.fm2-chart-bars--five { grid-template-columns: repeat(5,minmax(0,1fr)); }
.fm2-chart-bars--risk { margin-block-start: 35px; }
.fm2-chart-bars > .fm2-chart-bar { align-self: stretch; grid-template-rows: 120px 27px 70px; align-content: start; }
.fm2-chart-weeks { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 10px; min-inline-size: 0; }
.fm2-chart-week { display: grid; grid-template-rows: auto auto; align-content: start; gap: 8px; min-inline-size: 0; }
.fm2-chart-week__label { display: grid; grid-template-rows: auto 5px auto; justify-items: center; color: var(--shlz-semantic-color-text-secondary); font-size: 11px; font-variant-numeric: tabular-nums; line-height: 1; text-align: center; }
.fm2-chart-week__label i { align-self: center; display: block; inline-size: 12px; block-size: 1px; background: var(--shlz-semantic-color-border-default); }
.fm2-chart-week__bars { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: end; gap: 4px; min-inline-size: 0; }
.fm2-chart-week__bars .fm2-chart-bar { grid-template-rows: 120px auto auto; }
.fm2-chart-week__bars .fm2-chart-bar__label { font-size: 10px; }
.fm2-chart-bar { display: grid; grid-template-columns: minmax(0,1fr); grid-template-rows: 120px auto auto; align-items: end; gap: 6px; min-inline-size: 0; color: inherit; text-align: center; text-decoration: none; }
.fm2-chart-bar:focus-visible { outline: 3px solid var(--shlz-semantic-color-action-primary); outline-offset: 4px; border-radius: 6px; }
.fm2-chart-bar__mark-frame { align-self: end; justify-self: center; inline-size: 100%; max-inline-size: 56px; min-inline-size: 0; block-size: 116px; overflow: hidden; }
.fm2-chart-bar__mark { display: block; inline-size: 100%; block-size: 100%; color: var(--shlz-source-color-blue-blue-200,#253d98); }
.fm2-chart-bar__mark rect { fill: currentColor; }
.fm2-chart-bar--order .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-orange,#d47e2e); }
.fm2-chart-bar--ready .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-blue,#245b99); }
.fm2-chart-bar--installation .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-turquoise,#4191b3); }
.fm2-chart-bar--closeout .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-violet,#8131a7); }
.fm2-chart-bar--completed .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-bright-green,#25983e); }
.fm2-chart-bar--change .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-pink,#a942a7); }
.fm2-dashboard-chart .fm2-chart-week__bars .fm2-chart-bar.fm2-chart-bar--planned-start .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-bright-blue,#3d88de); }
.fm2-dashboard-chart .fm2-chart-week__bars .fm2-chart-bar.fm2-chart-bar--planned-finish .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-orange,#d47e2e); }
.fm2-chart-bar--risk-overdue .fm2-chart-bar__mark { color: var(--shlz-semantic-color-status-error,#b3261e); }
.fm2-chart-bar--risk-high .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-orange,#d47e2e); }
.fm2-chart-bar--risk-medium .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-yellow,#c39a24); }
.fm2-chart-bar--risk-ready .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-blue,#245b99); }
.fm2-chart-bar--risk-opened .fm2-chart-bar__mark { color: var(--shlz-source-color-aditional-bright-green,#25983e); }
.fm2-chart-bar__value { font-size: 18px; font-weight: 600; font-variant-numeric: tabular-nums; }
.fm2-chart-bar__label { align-self: start; color: var(--shlz-semantic-color-text-secondary); font-size: 11px; line-height: 1.25; overflow-wrap: anywhere; }
.fm2-chart-bar--legend-only { grid-template-rows: 120px auto; }
.fm2-chart-key { display: inline-block; inline-size: 10px; block-size: 10px; margin-inline-end: 4px; border-radius: 2px; background: var(--shlz-source-color-aditional-bright-blue,#3d88de); }
.fm2-chart-key--finish { background: var(--shlz-source-color-aditional-orange,#d47e2e); }
@media (max-width: 1200px) { .fm2-dashboard-charts { grid-template-columns: minmax(0,1fr); } .fm2-dashboard-chart--stages { grid-column: auto; } }
@media (max-width: 1050px) { .fm2-dashboard-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 680px) { .fm2-dashboard-page { gap: 20px; padding: 20px 14px; } .fm2-dashboard-header { align-items: flex-start; flex-direction: column; } .fm2-dashboard-metrics,.fm2-dashboard-lists,.fm2-dashboard-charts { grid-template-columns: minmax(0,1fr); } .fm2-dashboard-chart--stages { grid-column: auto; } .fm2-dashboard-chart:not(.fm2-dashboard-chart--stages) { --fm2-chart-header-size: 96px; } .fm2-dashboard-chart { padding: 18px 12px; } .fm2-chart-bars { min-block-size: 190px; gap: 6px; } .fm2-chart-weeks { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 12px; } .fm2-chart-week__bars .fm2-chart-bar { grid-template-rows: 88px auto auto; } .fm2-chart-week__bars .fm2-chart-bar__mark-frame { block-size: 84px; } .fm2-chart-bar__label { font-size: 11px; } .fm2-dashboard-metric { min-block-size: 0; } .fm2-dashboard-register { inline-size: 100%; } }
.shlz-modal__close{min-inline-size:40px!important;inline-size:40px!important;min-block-size:40px!important;block-size:40px!important}
.fm2-object-edit{flex:0 0 40px;inline-size:40px;block-size:40px;padding:0;font-size:1.25rem}
.fm2-object-details-modal fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 24px;padding:0;border:0}
.fm2-object-details-modal legend{grid-column:1/-1;margin-block-end:12px;font-weight:600}
.fm2-details-field{display:grid;gap:6px;min-width:0}.fm2-event-change{display:block;margin-block-start:6px;overflow-wrap:anywhere}
@media (width < 640px){.fm2-object-details-modal fieldset{grid-template-columns:1fr}}
@media(max-width:680px){.fm2-shell:has(.fm2-otiz) .fm2-sidebar{display:none}.fm2-shell:has(.fm2-otiz) .fm2-workspace{padding-block-end:0}}
.fm2-otiz-ledger .shlz-table-wrap{display:block;max-width:100%;overflow-x:auto}.fm2-otiz-ledger .shlz-table{min-width:760px}
.fm2-otiz-page{min-width:0;max-width:100%;overflow-x:clip}.fm2-shell:has(.fm2-otiz){min-width:0}.fm2-shell:has(.fm2-otiz) .fm2-workspace,.fm2-shell:has(.fm2-otiz) .fm2-main{min-width:0;max-width:100%}
@media(max-width:900px){.fm2-shell:has(.fm2-otiz) .fm2-sidebar{display:none}.fm2-shell:has(.fm2-otiz){display:block}.fm2-otiz-discipline form{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.fm2-otiz-discipline label,.fm2-otiz-discipline input{display:block;width:100%;box-sizing:border-box}.fm2-otiz-workflow-actions{max-width:100%}}
@media(max-width:900px){body.shlz-scope .fm2-shell:has(.fm2-otiz) .fm2-workspace,body.shlz-scope .fm2-shell:has(.fm2-otiz) .fm2-main{width:100vw;max-width:100vw;margin:0;box-sizing:border-box}.fm2-otiz-tabs,.fm2-otiz-workflow,.fm2-otiz-object-row,.fm2-otiz-ledger{width:100%;max-width:100%;box-sizing:border-box}}
@media(max-width:900px){.fm2-otiz :is(a,button,input,select,summary){max-width:100%;box-sizing:border-box}.fm2-otiz-workflow-actions{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}.fm2-otiz-workflow-actions form,.fm2-otiz-workflow-actions .shlz-button{width:100%;white-space:normal}}
@media(max-width:1100px){.fm2-shell:has(.fm2-otiz) .fm2-sidebar{display:none}.fm2-shell:has(.fm2-otiz){display:block}.fm2-shell:has(.fm2-otiz) .fm2-workspace,.fm2-shell:has(.fm2-otiz) .fm2-main{width:100vw;max-width:100vw;margin:0;box-sizing:border-box}}
.fm2-otiz-register-table td:first-child .shlz-button{display:inline-flex;width:auto;min-width:0;min-inline-size:0;margin-top:4px;padding:4px 8px;font-size:11px}.fm2-otiz-register-table td:first-child{height:auto;min-height:72px}

/* OTIZ variant B: one measured layout system over public shlz primitives. */
.fm2-shell:has(.fm2-otiz) .fm2-main{padding-inline:clamp(20px,3vw,48px)}
.fm2-otiz-page{display:grid;gap:28px;width:min(100%,1680px);margin-inline:auto;padding-block:8px 48px;overflow:visible;background:#fff}
.fm2-otiz-page>:where(header,section,form,nav,div){min-width:0}
.fm2-otiz-page .fm2-page-header{margin:4px 0 0;padding:24px;border:0}
.fm2-otiz-page .fm2-page-header h1{font-size:30px;line-height:38px;letter-spacing:-.025em}
.fm2-otiz-page .fm2-page-header p{margin-top:6px;font-size:14px;line-height:20px}
.fm2-otiz-tabs{margin:0;overflow-x:auto;border-bottom:1px solid #dfe4e8}
.fm2-otiz-tabs a{padding:14px 4px 12px;white-space:nowrap}
.fm2-otiz-register-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border:1px solid #e4e8ec;border-radius:14px}
.fm2-otiz-register-summary>div{min-height:104px;padding:20px 24px}
.fm2-otiz-register-toolbar{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(180px,.8fr)) auto;gap:16px;align-items:end;padding:22px;border:1px solid #e4e8ec;border-radius:14px;background:#fff}
.fm2-otiz-register-toolbar>.shlz-field:first-child,.fm2-otiz-register-toolbar>.shlz-field:nth-child(2){width:auto}
.fm2-otiz-register-toolbar .shlz-field,.fm2-otiz-register-toolbar .shlz-select-root{width:100%;min-width:0}
.fm2-otiz-register-toolbar .shlz-select-root{inline-size:100%}.fm2-otiz-register-toolbar .shlz-select__trigger{inline-size:100%;width:100%;block-size:58px;box-sizing:border-box}
.fm2-otiz-register-wrap,.fm2-otiz-archive-wrap{max-width:100%;overflow:auto;border:1px solid #e4e8ec;border-radius:14px;background:#fff;scrollbar-color:#aeb7c0 #f4f6f8}
.fm2-otiz-register-table{min-width:1370px;table-layout:auto}
.fm2-otiz-register-table .shlz-table__cell{height:64px;padding:10px 12px;vertical-align:middle}
.fm2-otiz-register-table thead .shlz-table__cell{position:sticky;top:0;z-index:1;height:48px;background:#f6f8fa;font-size:12px;line-height:18px}
.fm2-otiz-register-table td:first-child{width:250px;min-width:250px;height:64px}
.fm2-otiz-register-table td:first-child .shlz-button{display:none}
.fm2-otiz-action-cell{width:56px;text-align:center}
.fm2-otiz-action-cell .shlz-table__affordance{margin-inline:auto}
.fm2-otiz-register-table td small,.fm2-otiz-archive td small{display:block;margin-top:3px;color:#687580;line-height:18px}
.fm2-otiz-archive{display:grid;gap:16px}
.fm2-otiz-archive h2{margin:0;font-size:20px;line-height:28px}
.fm2-otiz-archive table{min-width:1040px}
.fm2-otiz-archive .shlz-table__cell{height:60px;padding:10px 14px;vertical-align:middle}
.fm2-otiz-archive thead .shlz-table__cell{position:sticky;top:0;z-index:1;background:#f6f8fa;font-size:12px;line-height:18px}
.fm2-otiz-archive-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;white-space:nowrap}
.fm2-otiz-workflow{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:22px;margin:0;padding:28px 30px;border:1px solid #e2e7eb;border-radius:14px;background:#f7f8fa}
.fm2-otiz-workflow>div:first-child{display:grid;gap:8px}
.fm2-otiz-workflow h1{margin:0;font-size:28px;line-height:36px;letter-spacing:-.025em}
.fm2-otiz-workflow>div:first-child>p{margin:0;color:#5d6974}
.fm2-otiz-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:12px 0 0;background:#dfe4e8}
.fm2-otiz-facts>div{padding:14px 16px;background:#fff}
.fm2-otiz-steps{border:1px solid #dfe4e8;border-radius:12px;overflow:hidden;background:#dfe4e8}
.fm2-otiz-steps li{min-height:48px;padding:14px 16px;line-height:20px}
.fm2-otiz-workflow-actions{display:flex;align-items:flex-end;justify-content:flex-start;gap:12px}
.fm2-otiz-workflow-actions form{display:grid;gap:8px;max-width:680px}
.fm2-otiz-object-row{display:grid;gap:18px;margin:0;padding:24px 26px;border:1px solid #e2e7eb;border-radius:14px;background:#fff}
.fm2-otiz-object-row>header{align-items:start}
.fm2-otiz-detail-link{margin-right:12px}
.fm2-otiz-drawer-section{display:grid;gap:12px;padding:22px 0;border-bottom:1px solid #e2e7eb}
.fm2-otiz-drawer-section:first-child{padding-top:0}.fm2-otiz-drawer-section:last-child{border-bottom:0}
.fm2-otiz-drawer-section h3{margin:0;font-size:15px;line-height:22px}
.fm2-otiz-drawer-section p{margin:0;font-size:14px;line-height:20px}
.fm2-otiz-drawer-section dl{display:grid;gap:10px;margin:0}
.fm2-otiz-drawer-section dl div{display:flex;justify-content:space-between;gap:20px}
.fm2-otiz-drawer-section dt{color:#66727d}.fm2-otiz-drawer-section dd{margin:0;text-align:right;font-weight:600}
.fm2-otiz-empty{padding:48px 28px;border:1px dashed #cbd2d9;border-radius:14px;background:#fafbfc}
@media(max-width:1180px){.fm2-otiz-register-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.fm2-otiz-register-toolbar>.shlz-field:first-child{grid-column:span 2}.fm2-otiz-register-toolbar>.shlz-button{justify-self:start}.fm2-otiz-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.fm2-shell:has(.fm2-otiz) .fm2-main{padding-inline:14px}.fm2-otiz-page{gap:20px;padding-bottom:88px}.fm2-otiz-register-summary{grid-template-columns:1fr 1fr}.fm2-otiz-register-summary>div{min-height:88px;padding:16px}.fm2-otiz-register-toolbar{grid-template-columns:1fr;padding:16px}.fm2-otiz-register-toolbar>.shlz-field:first-child{grid-column:auto}.fm2-otiz-register-toolbar>.shlz-button{width:100%}.fm2-otiz-facts{grid-template-columns:1fr}.fm2-otiz-steps{grid-template-columns:1fr 1fr}.fm2-otiz-workflow{padding:20px}.fm2-otiz-workflow h1{font-size:23px;line-height:30px}.fm2-otiz-workflow-actions{align-items:stretch;flex-direction:column}.fm2-otiz-workflow-actions form,.fm2-otiz-workflow-actions .shlz-button{width:100%}.fm2-otiz-object-row{padding:20px}.fm2-otiz-object-row>header{flex-direction:column}.fm2-otiz-archive table,.fm2-otiz-archive tbody,.fm2-otiz-archive tr,.fm2-otiz-archive td{display:table-row-group;width:auto}.fm2-otiz-archive tr{display:table-row}.fm2-otiz-archive td{display:table-cell}.fm2-otiz-archive thead{display:table-header-group}.fm2-otiz-archive button{width:auto}}
@media(max-width:760px){.fm2-otiz-register-table{display:table}.fm2-otiz-register-table thead{position:static;width:auto;height:auto;overflow:visible;clip:auto}.fm2-otiz-register-table tbody{display:table-row-group}.fm2-otiz-register-table tr{display:table-row;padding:0}.fm2-otiz-register-table td{display:table-cell}.fm2-otiz-register-table td::before{content:none}}

.fm2-otiz-page{width:100%;max-width:100%;padding:24px;box-sizing:border-box;overflow-x:clip;background:#f4f6f9}
.fm2-shell:has(.fm2-otiz),.fm2-shell:has(.fm2-otiz) .fm2-workspace,.fm2-shell:has(.fm2-otiz) .fm2-main{max-width:100vw;min-width:0;overflow-x:hidden;box-sizing:border-box}
.fm2-otiz-surface{width:100%;max-width:100%;min-width:0;padding:clamp(16px,2vw,28px);box-sizing:border-box;overflow:hidden;background:#fff;border:0;border-radius:14px;box-shadow:0 8px 24px rgb(20 34 48/5%)}
.fm2-otiz-tabs-surface{padding:16px 20px 0}.fm2-otiz-tabs-surface .fm2-otiz-tabs{margin:0}
.fm2-otiz-register-wrap.fm2-otiz-surface,.fm2-otiz-archive.fm2-otiz-surface{padding:20px}
.fm2-otiz-register-toolbar .shlz-select-root{z-index:auto}.fm2-otiz-register-toolbar .shlz-select-root:has([aria-expanded=true]){z-index:20}.fm2-otiz-register-toolbar .shlz-field__label{font-weight:500}.fm2-otiz-register-toolbar .shlz-select__trigger{align-items:center}
.fm2-otiz-register-toolbar.fm2-otiz-surface{overflow:visible}.fm2-otiz-register-toolbar .shlz-select__trigger{font-weight:400}.fm2-otiz-register-toolbar .shlz-select__listbox{z-index:40}
.fm2-otiz-register-toolbar .shlz-field__control,.fm2-otiz-register-toolbar .shlz-select__trigger,.fm2-otiz-register-toolbar>.shlz-button{block-size:44px;min-block-size:44px}.fm2-otiz-register-toolbar .shlz-field__control,.fm2-otiz-register-toolbar .shlz-select__trigger{padding-block:0;padding-inline:14px;border-radius:22px}.fm2-otiz-register-toolbar>.shlz-button{padding-inline:20px}
.fm2-otiz-register-wrap.fm2-otiz-surface,.fm2-otiz-archive.fm2-otiz-surface{overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain}
.fm2-otiz-period-form .shlz-date-picker{inline-size:min(100%,360px);min-inline-size:0}.fm2-otiz-period-form .shlz-date-picker__popover{inline-size:max-content;max-inline-size:calc(100vw - 48px);padding:0;background:transparent;box-shadow:none}
@media(max-width:680px){.fm2-otiz-period-form .shlz-date-picker{inline-size:100%}.fm2-otiz-period-form .shlz-date-picker__popover{inset-inline-start:50%!important;inline-size:max-content;max-inline-size:calc(100vw - 32px);padding:0;background:transparent;box-shadow:none;transform:translateX(-50%)!important}}
.fm2-otiz-snapshot-register{min-width:0;padding:20px}.fm2-otiz-snapshot-register .shlz-table-wrap{width:100%;max-width:100%;min-width:0;overflow:auto;box-sizing:border-box}.fm2-otiz-snapshot-register table{min-width:820px}.fm2-otiz-snapshot-register td:first-child{min-width:260px}.fm2-otiz-snapshot-register td small{display:block;margin-top:4px;color:#66727d}.fm2-otiz-xlsx img{width:24px;height:24px}
.fm2-otiz-ledger{padding:20px}.fm2-otiz-ledger .shlz-table-wrap{max-width:100%;overflow:auto}.fm2-otiz-ledger table{display:table;min-width:1120px}.fm2-otiz-ledger thead{display:table-header-group}.fm2-otiz-ledger tbody{display:table-row-group}.fm2-otiz-ledger tr{display:table-row}.fm2-otiz-ledger th,.fm2-otiz-ledger td{display:table-cell;width:auto;min-width:0;padding:10px 12px;vertical-align:middle}.fm2-otiz-ledger form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:8px}
@media(max-width:680px){.fm2-otiz-page{padding:14px 14px 88px}.fm2-otiz-surface{padding:16px}.fm2-otiz-register-wrap.fm2-otiz-surface,.fm2-otiz-archive.fm2-otiz-surface,.fm2-otiz-snapshot-register,.fm2-otiz-ledger{padding:16px}}
@media(max-width:680px){.fm2-otiz-page{width:auto!important;margin-inline:0}.fm2-shell:has(.fm2-otiz) .fm2-main{width:auto!important}}
@media(max-width:680px){.fm2-otiz-page{max-width:calc(100vw - 24px)!important}.fm2-otiz-page :is(a,button,input,select,summary){max-width:100%;box-sizing:border-box}}
@media(max-width:680px){body.shlz-scope .fm2-shell:has(.fm2-otiz) .fm2-main{width:100%!important;max-width:100%!important;padding-inline:0!important}.fm2-shell:has(.fm2-otiz) .fm2-feedback-fab{display:none}}
@media(max-width:680px){body.shlz-scope:has(.fm2-otiz){width:100vw;max-width:100vw;overflow-x:clip;contain:inline-size}}
.fm2-otiz-snapshot-register .shlz-table-wrap,.fm2-otiz-ledger .shlz-table-wrap{display:block;width:100%;max-width:100%;min-width:0;overflow:auto;contain:inline-size layout paint;box-sizing:border-box}.fm2-otiz-snapshot-register table{display:table;min-width:820px}.fm2-otiz-ledger table{display:table;min-width:1120px}.fm2-otiz-snapshot-register :is(thead,tbody),.fm2-otiz-ledger :is(thead,tbody){display:table-row-group}.fm2-otiz-snapshot-register thead,.fm2-otiz-ledger thead{display:table-header-group}.fm2-otiz-snapshot-register tr,.fm2-otiz-ledger tr{display:table-row}.fm2-otiz-snapshot-register :is(th,td),.fm2-otiz-ledger :is(th,td){display:table-cell}.fm2-otiz-snapshot-register :is(th,td):last-child,.fm2-otiz-ledger :is(th,td):last-child{position:sticky;right:0;z-index:3;background:#fff}.fm2-otiz-snapshot-register thead th:last-child,.fm2-otiz-ledger thead th:last-child{background:#f6f8fa}
.fm2-shell:has(.fm2-otiz){overflow:visible}.fm2-shell:has(.fm2-otiz)>.fm2-sidebar{position:sticky;inset-block-start:0;align-self:start;block-size:100dvh}.fm2-shell:has(.fm2-otiz)>.fm2-workspace,.fm2-shell:has(.fm2-otiz) .fm2-main{overflow-x:hidden}

/* Shared SHLZ pagination composition for all data lists. */
.fm2-main .shlz-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-block-start:8px;padding-block:2px}.fm2-main .shlz-pagination__summary{order:0;white-space:nowrap}.fm2-main .shlz-pagination__list{order:1;margin-inline-start:auto}
@media(max-width:520px){.fm2-main .shlz-pagination{gap:10px}.fm2-main .shlz-pagination__summary{font-size:13px}.fm2-main .shlz-pagination__list{gap:4px}}

/* OTIZ economics fits the desktop workspace; narrow screens retain contained scroll. */
.fm2-otiz-register-table{inline-size:100%;min-inline-size:980px;table-layout:fixed}.fm2-otiz-register-table .shlz-table__cell{min-inline-size:0!important;padding-inline:6px}.fm2-otiz-register-table :is(th,td):nth-child(1){inline-size:19%}.fm2-otiz-register-table :is(th,td):nth-child(2){inline-size:8%}.fm2-otiz-register-table :is(th,td):nth-child(3){inline-size:12%}.fm2-otiz-register-table :is(th,td):nth-child(4){inline-size:5%}.fm2-otiz-register-table :is(th,td):nth-child(5){inline-size:11%}.fm2-otiz-register-table :is(th,td):nth-child(6){inline-size:10%}.fm2-otiz-register-table :is(th,td):nth-child(7){inline-size:11%}.fm2-otiz-register-table :is(th,td):nth-child(8){inline-size:12%}.fm2-otiz-register-table :is(th,td):nth-child(9){inline-size:8%}.fm2-otiz-register-table :is(th,td):nth-child(10){inline-size:4%}.fm2-otiz-register-table td:first-child{min-inline-size:0!important;inline-size:19%}.fm2-otiz-register-table .shlz-table__cell--numeric{white-space:nowrap}
@media(min-width:769px){.fm2-otiz-register-table{inline-size:100%!important;min-inline-size:0!important;max-inline-size:100%;font-size:13px}.fm2-otiz-register-table :is(th,td){overflow:hidden;text-overflow:ellipsis}.fm2-otiz-register-table td:first-child small{white-space:normal}}
.fm2-otiz-page{gap:16px}.fm2-otiz-register-summary{gap:0;padding:0;background:#fff;border:0}.fm2-otiz-register-summary>div{min-block-size:96px;background:#fff;border-inline-end:1px solid var(--shlz-semantic-color-border-default)}.fm2-otiz-register-summary>div:last-child{border-inline-end:0}.fm2-otiz-register-summary strong{font-size:clamp(22px,2vw,30px);line-height:1.15}
.fm2-otiz-register-table :is(th,td):nth-child(1){inline-size:18%}.fm2-otiz-register-table :is(th,td):nth-child(2){inline-size:8%}.fm2-otiz-register-table :is(th,td):nth-child(3){inline-size:13%}.fm2-otiz-register-table :is(th,td):nth-child(4){inline-size:6%}.fm2-otiz-register-table :is(th,td):nth-child(5){inline-size:11%}.fm2-otiz-register-table :is(th,td):nth-child(6){inline-size:15%}.fm2-otiz-register-table :is(th,td):nth-child(7){inline-size:13%}.fm2-otiz-register-table :is(th,td):nth-child(8){inline-size:12%}.fm2-otiz-register-table :is(th,td):nth-child(9){inline-size:4%}.fm2-otiz-register-table td:first-child{inline-size:18%}.fm2-otiz-register-table .fm2-otiz-payment-cell strong{display:block;font-weight:600}.fm2-otiz-register-table .fm2-otiz-payment-cell small{display:block;margin-block-start:4px;white-space:nowrap}.fm2-otiz-register-table td[data-label="Состояние"]{overflow:visible}.fm2-otiz-register-table td[data-label="Состояние"] .shlz-status{display:inline-flex;max-inline-size:100%;min-block-size:0;padding:5px 9px;white-space:normal;line-height:16px;text-align:center}
.fm2-otiz-archive table{inline-size:100%;min-inline-size:0;table-layout:fixed}.fm2-otiz-archive :is(th,td){min-inline-size:0;padding-inline:9px;overflow:hidden;text-overflow:ellipsis}.fm2-otiz-archive :is(th,td):nth-child(1){inline-size:13%}.fm2-otiz-archive :is(th,td):nth-child(2){inline-size:9%}.fm2-otiz-archive :is(th,td):nth-child(3){inline-size:16%}.fm2-otiz-archive :is(th,td):nth-child(4){inline-size:21%}.fm2-otiz-archive :is(th,td):nth-child(5){inline-size:14%}.fm2-otiz-archive :is(th,td):nth-child(6){inline-size:9%}.fm2-otiz-archive :is(th,td):nth-child(7){inline-size:13%}.fm2-otiz-archive :is(th,td):nth-child(8){inline-size:5%;overflow:visible;text-overflow:clip}.fm2-otiz-archive-actions{display:table-cell;text-align:center}.fm2-otiz-archive-actions .shlz-table__affordance{margin-inline:auto}
.fm2-otiz :is(th,td).fm2-otiz-action-cell,.fm2-otiz-snapshot-register :is(th,td):last-child{overflow:visible;text-overflow:clip}
@media(max-width:760px){.fm2-otiz-archive table{min-inline-size:860px}}
.fm2-otiz-overview-surface{display:grid;gap:0;padding:0;overflow:hidden}.fm2-otiz-overview-surface .fm2-otiz-tabs-surface{padding:16px 28px 0}.fm2-otiz-overview-surface .fm2-page-header{padding:26px 28px 20px}.fm2-otiz-overview-surface .fm2-otiz-workflow{padding:26px 28px 24px;background:#fff;border:0;border-radius:0;box-shadow:none}.fm2-otiz-overview-surface .fm2-otiz-register-summary{border-block-start:1px solid var(--shlz-semantic-color-border-default);border-radius:0}
.fm2-otiz-register-surface{padding:0;overflow:visible}.fm2-otiz-register-surface .fm2-otiz-register-toolbar{padding:20px 24px;border:0;border-block-end:1px solid var(--shlz-semantic-color-border-default);border-radius:0}.fm2-otiz-register-surface .fm2-otiz-register-wrap{padding:0 24px;border:0;border-radius:0}.fm2-otiz-register-surface>.shlz-pagination{margin:8px 24px 16px}
.fm2-otiz-register-table :is(th,td):nth-child(1){inline-size:17%}.fm2-otiz-register-table :is(th,td):nth-child(8){inline-size:14%}.fm2-otiz-register-table td:first-child{inline-size:17%}.fm2-otiz-register-table td[data-label="Состояние"] .shlz-status{min-block-size:30px;align-items:center;white-space:nowrap;line-height:18px}
@media(max-width:760px){.fm2-otiz-overview-surface .fm2-otiz-tabs-surface{padding:12px 16px 0}.fm2-otiz-overview-surface .fm2-page-header{padding:20px 16px 16px}.fm2-otiz-register-surface .fm2-otiz-register-toolbar{padding:16px}.fm2-otiz-register-surface .fm2-otiz-register-wrap{padding:0 16px}.fm2-otiz-register-surface>.shlz-pagination{margin:8px 16px 14px}.fm2-otiz-register-table{min-inline-size:980px!important}}
