
.s360-m-0 { margin: 0; }
.s360-mt-0 { margin-top: 0; }
.s360-mt-xs { margin-top: var(--s360-space-xs); }
.s360-mt-sm { margin-top: var(--s360-space-sm); }
.s360-mt-md { margin-top: var(--s360-space-md); }
.s360-mt-lg { margin-top: var(--s360-space-lg); }
.s360-mb-0 { margin-bottom: 0; }
.s360-mb-xs { margin-bottom: var(--s360-space-xs); }
.s360-mb-sm { margin-bottom: var(--s360-space-sm); }
.s360-mb-md { margin-bottom: var(--s360-space-md); }
.s360-mb-lg { margin-bottom: var(--s360-space-lg); }
.s360-pb-xs { padding-bottom: var(--s360-space-xs); }
.s360-text-sm { font-size: var(--s360-font-size-sm); }
.s360-text-xs { font-size: var(--s360-font-size-xs); }
.s360-text-muted { color: var(--s360-color-text-muted); }
.s360-text-soft { color: var(--s360-color-text-soft); }
.s360-w-full { width: 100%; max-width: 100%; }
.s360-w-220 { width: 220px; }
.s360-gap-lg { gap: var(--s360-space-18); }


.s360-mx-0 { margin-left: 0; margin-right: 0; }
.s360-my-md { margin-top: var(--s360-space-md); margin-bottom: var(--s360-space-md); }
.s360-my-lg { margin-top: var(--s360-space-lg); margin-bottom: var(--s360-space-lg); }
.s360-ml-sm { margin-left: var(--s360-space-sm); }
.s360-ml-md { margin-left: var(--s360-space-md); }
.s360-p-sm { padding: var(--s360-space-sm); }
.s360-p-md { padding: var(--s360-space-md); }
.s360-py-sm { padding-top: var(--s360-space-sm); padding-bottom: var(--s360-space-sm); }
.s360-pt-lg { padding-top: var(--s360-space-lg); }
.s360-text-prewrap { white-space: pre-wrap; }
.s360-text-nowrap { white-space: nowrap; }
.s360-font-semibold { font-weight: var(--s360-font-weight-semibold); }
.s360-font-normal { font-weight: 400; }
.s360-border-top { border-top: 1px solid var(--s360-color-border-soft); }
.s360-border-bottom { border-bottom: 1px solid var(--s360-color-border-soft); }
.s360-overflow-x { overflow-x: auto; }
.s360-list-disc { list-style: disc; margin-left: var(--s360-space-20); }
.s360-inline-form { display: inline; }
.s360-inline-actions { display: inline-flex; align-items: center; gap: var(--s360-space-xs); }

.s360-max-520 { max-width: 520px; }


.s360-mt-xl { margin-top: var(--s360-space-xl); }
.s360-mt-2xl { margin-top: calc(var(--s360-space-xl) + var(--s360-space-xs)); }
.s360-mb-md-plus { margin-bottom: var(--s360-space-20); }
.s360-mt-md-plus { margin-top: var(--s360-space-20); }
.s360-my-md-plus { margin-top: var(--s360-space-20); margin-bottom: var(--s360-space-20); }
.s360-my-md-lg { margin-top: var(--s360-space-md); margin-bottom: var(--s360-space-lg); }
.s360-table-min-600 { min-width: 600px; }
.s360-select-min-260 { min-width: 260px; }
.s360-col-module { width: 180px; }
.s360-calendar-nav-label { margin: 0 15px; }


.s360-font-bold { font-weight: var(--s360-font-weight-bold); }

/* v13.8.4 inline style cleanup utilities. */
.s360-kpi-value-lg {
  display: block;
  font-size: 1.5rem;
}
.s360-inline-heading {
  display: inline;
  margin: 0;
}
.s360-flex-between-start {
  align-items: flex-start;
  display: flex;
  gap: .75rem;
  justify-content: space-between;
}
.s360-flex-wrap-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: .5rem;
}
.s360-align-stretch { align-items: stretch; }
.s360-ui-list--compact-top { margin: .75rem 0 0; }
.s360-form-label-stack {
  display: block;
  font-weight: 600;
  margin-bottom: .25rem;
}
.s360-button-full-start {
  justify-content: flex-start;
  text-align: left;
  width: 100%;
}
.s360-template-editor-layout {
  align-items: start;
  gap: 1rem;
  grid-template-columns: minmax(16rem,22rem) minmax(0,1fr);
  margin-top: 1rem;
}
.s360-template-list-item { margin: 0 0 .5rem; }
.s360-template-list-meta { margin: .25rem 0 .5rem; }
.s360-input-max-wide {
  max-width: 52rem;
  width: 100%;
}
.s360-code-token { margin-right: .35rem; }
.s360-description-spaced { margin-right: .75rem; }
.s360-gap-md { gap: 1rem; }
.s360-pre-preview {
  background: var(--s360-color-bg-subtle);
  border: 1px solid #d8e1e8;
  border-radius: .5rem;
  padding: 1rem;
  white-space: pre-wrap;
}
.s360-ui-progress {
  background: var(--s360-color-bg-subtle,#e5edf4);
  border-radius: var(--s360-radius-pill);
  overflow: hidden;
}
.s360-ui-progress--setup {
  background: #e5edf4;
  height: .75rem;
  margin-top: 1rem;
}
.s360-ui-progress__fill,
.s360-progress-fill {
  border-radius: inherit;
  display: block;
  height: 100%;
  max-width: 100%;
  width: 0%;
}
.s360-ui-progress--setup .s360-ui-progress__fill { background: #0f79bf; }
.s360-progress-fill--0 { width: 0%; }
.s360-progress-fill--1 { width: 1%; }
.s360-progress-fill--2 { width: 2%; }
.s360-progress-fill--3 { width: 3%; }
.s360-progress-fill--4 { width: 4%; }
.s360-progress-fill--5 { width: 5%; }
.s360-progress-fill--6 { width: 6%; }
.s360-progress-fill--7 { width: 7%; }
.s360-progress-fill--8 { width: 8%; }
.s360-progress-fill--9 { width: 9%; }
.s360-progress-fill--10 { width: 10%; }
.s360-progress-fill--11 { width: 11%; }
.s360-progress-fill--12 { width: 12%; }
.s360-progress-fill--13 { width: 13%; }
.s360-progress-fill--14 { width: 14%; }
.s360-progress-fill--15 { width: 15%; }
.s360-progress-fill--16 { width: 16%; }
.s360-progress-fill--17 { width: 17%; }
.s360-progress-fill--18 { width: 18%; }
.s360-progress-fill--19 { width: 19%; }
.s360-progress-fill--20 { width: 20%; }
.s360-progress-fill--21 { width: 21%; }
.s360-progress-fill--22 { width: 22%; }
.s360-progress-fill--23 { width: 23%; }
.s360-progress-fill--24 { width: 24%; }
.s360-progress-fill--25 { width: 25%; }
.s360-progress-fill--26 { width: 26%; }
.s360-progress-fill--27 { width: 27%; }
.s360-progress-fill--28 { width: 28%; }
.s360-progress-fill--29 { width: 29%; }
.s360-progress-fill--30 { width: 30%; }
.s360-progress-fill--31 { width: 31%; }
.s360-progress-fill--32 { width: 32%; }
.s360-progress-fill--33 { width: 33%; }
.s360-progress-fill--34 { width: 34%; }
.s360-progress-fill--35 { width: 35%; }
.s360-progress-fill--36 { width: 36%; }
.s360-progress-fill--37 { width: 37%; }
.s360-progress-fill--38 { width: 38%; }
.s360-progress-fill--39 { width: 39%; }
.s360-progress-fill--40 { width: 40%; }
.s360-progress-fill--41 { width: 41%; }
.s360-progress-fill--42 { width: 42%; }
.s360-progress-fill--43 { width: 43%; }
.s360-progress-fill--44 { width: 44%; }
.s360-progress-fill--45 { width: 45%; }
.s360-progress-fill--46 { width: 46%; }
.s360-progress-fill--47 { width: 47%; }
.s360-progress-fill--48 { width: 48%; }
.s360-progress-fill--49 { width: 49%; }
.s360-progress-fill--50 { width: 50%; }
.s360-progress-fill--51 { width: 51%; }
.s360-progress-fill--52 { width: 52%; }
.s360-progress-fill--53 { width: 53%; }
.s360-progress-fill--54 { width: 54%; }
.s360-progress-fill--55 { width: 55%; }
.s360-progress-fill--56 { width: 56%; }
.s360-progress-fill--57 { width: 57%; }
.s360-progress-fill--58 { width: 58%; }
.s360-progress-fill--59 { width: 59%; }
.s360-progress-fill--60 { width: 60%; }
.s360-progress-fill--61 { width: 61%; }
.s360-progress-fill--62 { width: 62%; }
.s360-progress-fill--63 { width: 63%; }
.s360-progress-fill--64 { width: 64%; }
.s360-progress-fill--65 { width: 65%; }
.s360-progress-fill--66 { width: 66%; }
.s360-progress-fill--67 { width: 67%; }
.s360-progress-fill--68 { width: 68%; }
.s360-progress-fill--69 { width: 69%; }
.s360-progress-fill--70 { width: 70%; }
.s360-progress-fill--71 { width: 71%; }
.s360-progress-fill--72 { width: 72%; }
.s360-progress-fill--73 { width: 73%; }
.s360-progress-fill--74 { width: 74%; }
.s360-progress-fill--75 { width: 75%; }
.s360-progress-fill--76 { width: 76%; }
.s360-progress-fill--77 { width: 77%; }
.s360-progress-fill--78 { width: 78%; }
.s360-progress-fill--79 { width: 79%; }
.s360-progress-fill--80 { width: 80%; }
.s360-progress-fill--81 { width: 81%; }
.s360-progress-fill--82 { width: 82%; }
.s360-progress-fill--83 { width: 83%; }
.s360-progress-fill--84 { width: 84%; }
.s360-progress-fill--85 { width: 85%; }
.s360-progress-fill--86 { width: 86%; }
.s360-progress-fill--87 { width: 87%; }
.s360-progress-fill--88 { width: 88%; }
.s360-progress-fill--89 { width: 89%; }
.s360-progress-fill--90 { width: 90%; }
.s360-progress-fill--91 { width: 91%; }
.s360-progress-fill--92 { width: 92%; }
.s360-progress-fill--93 { width: 93%; }
.s360-progress-fill--94 { width: 94%; }
.s360-progress-fill--95 { width: 95%; }
.s360-progress-fill--96 { width: 96%; }
.s360-progress-fill--97 { width: 97%; }
.s360-progress-fill--98 { width: 98%; }
.s360-progress-fill--99 { width: 99%; }
.s360-progress-fill--100 { width: 100%; }

