/* src/styles.css */
:root {
  color-scheme: light;
  font-family:
    Arial,
    Helvetica,
    sans-serif;
  background: #f4f6f8;
  color: #1c2733;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  min-width: 320px;
}
button,
input,
textarea,
select {
  font: inherit;
}
html,
body,
app-root {
  height: 100%;
}
html,
body {
  overflow: hidden;
}
app-root {
  display: block;
}
@media print {
  html,
  body,
  app-root {
    height: auto !important;
    min-height: auto !important;
    overflow: visible !important;
  }
}

/* src/design-system.css */
:root {
  --ds-font-family:
    Arial,
    Helvetica,
    sans-serif;
  --ds-font-xs: 0.75rem;
  --ds-font-sm: 0.8125rem;
  --ds-font-md: 0.875rem;
  --ds-font-lg: 1rem;
  --ds-font-xl: 1.25rem;
  --ds-space-1: 4px;
  --ds-space-2: 8px;
  --ds-space-3: 12px;
  --ds-space-4: 16px;
  --ds-space-5: 20px;
  --ds-space-6: 24px;
  --ds-page: #f4f6f8;
  --ds-surface: #ffffff;
  --ds-surface-muted: #f8fafc;
  --ds-text: #1c2733;
  --ds-text-muted: #64748b;
  --ds-border: #d8e0e7;
  --ds-border-strong: #c8d2dc;
  --ds-primary: #1a5d7c;
  --ds-primary-hover: #124463;
  --ds-primary-soft: #e9f3f8;
  --ds-success: #15803d;
  --ds-success-hover: #166534;
  --ds-danger: #dc2626;
  --ds-danger-hover: #b91c1c;
  --ds-warning: #b45309;
  --ds-info: #0369a1;
  --ds-disabled: #edf2f7;
  --ds-header-start: #247aa6;
  --ds-header-end: #124463;
  --ds-control-height: 38px;
  --ds-radius-sm: 6px;
  --ds-radius-md: 8px;
  --ds-radius-lg: 12px;
  --ds-shadow-sm: 0 1px 4px rgba(15, 23, 42, 0.06);
  --ds-shadow-md: 0 8px 24px rgba(15, 23, 42, 0.12);
  --ds-focus: 0 0 0 3px rgba(36, 122, 166, 0.18);
  --ds-transition: 140ms ease;
  --ds-z-dropdown: 1000;
  --ds-z-modal: 10000;
}
.ds-page {
  min-width: 0;
  color: var(--ds-text);
  font-family: var(--ds-font-family);
}
.ds-page-content {
  display: grid;
  gap: 16px;
  min-width: 0;
}
.ds-page-header {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
  margin-bottom: 18px;
  padding: 18px 20px;
  border-radius: var(--ds-radius-lg);
  background:
    linear-gradient(
      135deg,
      var(--ds-header-start),
      var(--ds-header-end));
  box-shadow: 0 6px 20px rgba(18, 68, 99, 0.22);
  color: #ffffff;
}
.ds-page-header-icon {
  display: inline-flex;
  flex: 0 0 44px;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.18);
  color: #ffffff;
}
.ds-page-header-icon > svg,
.ds-page-header-icon > lucide-icon,
.ds-icon > svg,
.ds-icon > lucide-icon {
  display: block;
  width: 1.25em;
  height: 1.25em;
}
.ds-page-header-copy {
  flex: 1 1 auto;
  min-width: 0;
}
.ds-page-title {
  margin: 0;
  color: #ffffff;
  font-size: var(--ds-font-xl);
  font-weight: 700;
  line-height: 1.25;
}
.ds-page-subtitle {
  margin: 4px 0 0;
  color: rgba(255, 255, 255, 0.82);
  font-size: var(--ds-font-sm);
  line-height: 1.4;
}
.ds-page-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}
.bt,
.ds-btn,
[class^=bt-],
[class*=" bt-"],
.bt-buscar,
.bt-limpar,
.bt-salvar,
.bt-cancelar,
.bt-excluir,
.bt-editar,
.bt-novo,
.bt-voltar,
.bt-imprimir,
.bt-pdf,
.bt-excel,
.bt-confirmar,
.bt-fechar {
  --ds-btn-bg: var(--ds-primary);
  --ds-btn-border: var(--ds-primary);
  --ds-btn-color: #ffffff;
  --ds-btn-hover-bg: var(--ds-primary-hover);
  --ds-btn-hover-border: var(--ds-primary-hover);
  --ds-btn-icon: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: var(--ds-control-height);
  margin: 0;
  padding: 8px 14px;
  border: 1px solid var(--ds-btn-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-btn-bg);
  color: var(--ds-btn-color);
  font-family: var(--ds-font-family);
  font-size: var(--ds-font-md);
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background-color var(--ds-transition),
    border-color var(--ds-transition),
    box-shadow var(--ds-transition),
    transform var(--ds-transition);
}
.bt-buscar::before,
.bt-limpar::before,
.bt-salvar::before,
.bt-cancelar::before,
.bt-excluir::before,
.bt-editar::before,
.bt-novo::before,
.bt-voltar::before,
.bt-imprimir::before,
.bt-pdf::before,
.bt-excel::before,
.bt-confirmar::before,
.bt-fechar::before,
.bt-atualizar::before,
.bt-filtrar::before,
.bt-adicionar::before,
.bt-remover::before,
.bt-upload::before,
.bt-download::before,
.bt-whatsapp::before,
.bt-concluir::before {
  display: block;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  background-color: currentColor;
  content: "";
  mask: var(--ds-btn-icon) center / contain no-repeat;
  -webkit-mask: var(--ds-btn-icon) center / contain no-repeat;
}
.bt:hover:not(:disabled):not([aria-disabled=true]),
.ds-btn:hover:not(:disabled):not([aria-disabled=true]),
[class^=bt-]:hover:not(:disabled):not([aria-disabled=true]),
[class*=" bt-"]:hover:not(:disabled):not([aria-disabled=true]),
.bt-buscar:hover:not(:disabled),
.bt-limpar:hover:not(:disabled),
.bt-salvar:hover:not(:disabled),
.bt-cancelar:hover:not(:disabled),
.bt-excluir:hover:not(:disabled),
.bt-editar:hover:not(:disabled),
.bt-novo:hover:not(:disabled),
.bt-voltar:hover:not(:disabled),
.bt-imprimir:hover:not(:disabled),
.bt-pdf:hover:not(:disabled),
.bt-excel:hover:not(:disabled),
.bt-confirmar:hover:not(:disabled),
.bt-fechar:hover:not(:disabled) {
  border-color: var(--ds-btn-hover-border);
  background: var(--ds-btn-hover-bg);
  transform: translateY(-1px);
}
.bt:focus-visible,
.ds-btn:focus-visible,
[class^=bt-]:focus-visible,
[class*=" bt-"]:focus-visible,
.bt-buscar:focus-visible,
.bt-limpar:focus-visible,
.bt-salvar:focus-visible,
.bt-cancelar:focus-visible,
.bt-excluir:focus-visible,
.bt-editar:focus-visible,
.bt-novo:focus-visible,
.bt-voltar:focus-visible,
.bt-imprimir:focus-visible,
.bt-pdf:focus-visible,
.bt-excel:focus-visible,
.bt-confirmar:focus-visible,
.bt-fechar:focus-visible {
  outline: none;
  box-shadow: var(--ds-focus);
}
.bt:disabled,
.ds-btn:disabled,
[class^=bt-]:disabled,
[class*=" bt-"]:disabled,
.bt-buscar:disabled,
.bt-limpar:disabled,
.bt-salvar:disabled,
.bt-cancelar:disabled,
.bt-excluir:disabled,
.bt-editar:disabled,
.bt-novo:disabled,
.bt-voltar:disabled,
.bt-imprimir:disabled,
.bt-pdf:disabled,
.bt-excel:disabled,
.bt-confirmar:disabled,
.bt-fechar:disabled,
.bt[aria-disabled=true],
.ds-btn[aria-disabled=true],
[class^=bt-][aria-disabled=true],
[class*=" bt-"][aria-disabled=true] {
  opacity: 0.55;
  cursor: not-allowed;
  transform: none;
}
.bt-secundario,
.bt-limpar,
.bt-cancelar,
.bt-voltar,
.bt-fechar {
  --ds-btn-bg: #ffffff;
  --ds-btn-border: var(--ds-border-strong);
  --ds-btn-color: #334155;
  --ds-btn-hover-bg: #eef2f6;
  --ds-btn-hover-border: var(--ds-border-strong);
}
.bt-sucesso,
.bt-salvar,
.bt-confirmar {
  --ds-btn-bg: var(--ds-success);
  --ds-btn-border: var(--ds-success);
  --ds-btn-color: #ffffff;
  --ds-btn-hover-bg: var(--ds-success-hover);
  --ds-btn-hover-border: var(--ds-success-hover);
}
.bt-perigo,
.bt-excluir {
  --ds-btn-bg: var(--ds-danger);
  --ds-btn-border: var(--ds-danger);
  --ds-btn-color: #ffffff;
  --ds-btn-hover-bg: var(--ds-danger-hover);
  --ds-btn-hover-border: var(--ds-danger-hover);
}
.bt-aviso {
  --ds-btn-bg: #fffbeb;
  --ds-btn-border: #fde68a;
  --ds-btn-color: #92400e;
  --ds-btn-hover-bg: #fef3c7;
  --ds-btn-hover-border: #f59e0b;
}
.bt-buscar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");
}
.bt-limpar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m19 3-7 7M21 5l-7 7M6 11l7 7M5 12l-3 7 7-3'/%3E%3C/svg%3E");
}
.bt-salvar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2Z'/%3E%3Cpath d='M17 21v-8H7v8M7 3v5h8'/%3E%3C/svg%3E");
}
.bt-cancelar,
.bt-fechar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E");
}
.bt-excluir {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18M8 6V4h8v2M19 6l-1 15H6L5 6M10 11v6M14 11v6'/%3E%3C/svg%3E");
}
.bt-editar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9M16.5 3.5a2.1 2.1 0 0 1 3 3L8 18l-4 1 1-4Z'/%3E%3C/svg%3E");
}
.bt-novo {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
}
.bt-voltar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E");
}
.bt-imprimir {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M6 9V2h12v7M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2'/%3E%3Cpath d='M6 14h12v8H6z'/%3E%3C/svg%3E");
}
.bt-pdf {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z'/%3E%3Cpath d='M14 2v6h6M8 15h8M8 11h2M8 19h6'/%3E%3C/svg%3E");
}
.bt-excel {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z'/%3E%3Cpath d='M14 2v6h6M8 13l5 6M13 13l-5 6'/%3E%3C/svg%3E");
}
.bt-confirmar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m20 6-11 11-5-5'/%3E%3C/svg%3E");
}
.bt-atualizar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11a8 8 0 1 0 2 5M20 4v7h-7'/%3E%3C/svg%3E");
}
.bt-filtrar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 3H2l8 9.5V19l4 2v-8.5Z'/%3E%3C/svg%3E");
}
.bt-adicionar {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
}
.bt-remover {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");
}
.bt-upload {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V4M7 9l5-5 5 5M5 20h14'/%3E%3C/svg%3E");
}
.bt-download {
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v12M7 11l5 5 5-5M5 20h14'/%3E%3C/svg%3E");
}
.bt-whatsapp {
  --ds-btn-bg: #15803d;
  --ds-btn-border: #15803d;
  --ds-btn-hover-bg: #166534;
  --ds-btn-hover-border: #166534;
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.4 8.4 0 0 1-9 8.5 9.5 9.5 0 0 1-4-1l-5 2 2-5a9.5 9.5 0 0 1-1-4 8.4 8.4 0 0 1 8.5-9 8.5 8.5 0 0 1 8.5 8.5Z'/%3E%3Cpath d='M9 8c.5 3 2 4.5 5 5'/%3E%3C/svg%3E");
}
.bt-concluir {
  --ds-btn-bg: var(--ds-success);
  --ds-btn-border: var(--ds-success);
  --ds-btn-hover-bg: var(--ds-success-hover);
  --ds-btn-hover-border: var(--ds-success-hover);
  --ds-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m20 6-11 11-5-5'/%3E%3C/svg%3E");
}
.bt-sem-icone::before,
.ds-btn--no-icon::before {
  display: none;
}
.bt-sm,
.ds-btn--sm {
  min-height: 32px;
  padding: 6px 10px;
  font-size: var(--ds-font-sm);
}
.bt-lg,
.ds-btn--lg {
  min-height: 44px;
  padding: 10px 18px;
  font-size: var(--ds-font-lg);
}
.bt-so-icone,
.ds-btn--icon-only {
  width: var(--ds-control-height);
  min-width: var(--ds-control-height);
  padding: 0;
  font-size: 0;
}
.bt-carregando::before,
.ds-btn--loading::before {
  display: block;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  background: none;
  content: "";
  mask: none;
  -webkit-mask: none;
  animation: ds-spin 0.7s linear infinite;
}
.btn-salvar-header {
  background: #10b981;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 8px 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  transition: background 0.15s, opacity 0.15s;
}
.btn-salvar-header:hover:not(:disabled) {
  background: #059669;
}
.btn-salvar-header:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.ds-form {
  display: grid;
  gap: 14px;
}
.ds-form-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 12px;
}
.ds-col-1 {
  grid-column: span 1;
}
.ds-col-2 {
  grid-column: span 2;
}
.ds-col-3 {
  grid-column: span 3;
}
.ds-col-4 {
  grid-column: span 4;
}
.ds-col-5 {
  grid-column: span 5;
}
.ds-col-6 {
  grid-column: span 6;
}
.ds-col-7 {
  grid-column: span 7;
}
.ds-col-8 {
  grid-column: span 8;
}
.ds-col-9 {
  grid-column: span 9;
}
.ds-col-10 {
  grid-column: span 10;
}
.ds-col-11 {
  grid-column: span 11;
}
.ds-col-12 {
  grid-column: span 12;
}
.ds-field {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
}
.ds-label {
  color: var(--ds-text-muted);
  font-size: var(--ds-font-sm);
  font-weight: 700;
  line-height: 1.25;
}
.ds-label-obrigatorio::after {
  margin-left: 3px;
  color: var(--ds-danger);
  content: "*";
}
.ds-input,
.ds-select,
.ds-textarea {
  width: 100%;
  min-width: 0;
  min-height: var(--ds-control-height);
  margin: 0;
  padding: 0 12px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  outline: none;
  background: var(--ds-surface);
  color: var(--ds-text);
  font-family: var(--ds-font-family);
  font-size: var(--ds-font-md);
  line-height: 1.4;
  transition:
    border-color var(--ds-transition),
    box-shadow var(--ds-transition),
    background-color var(--ds-transition);
}
.ds-textarea {
  min-height: 96px;
  padding: 10px 12px;
  resize: vertical;
}
.ds-input::placeholder,
.ds-textarea::placeholder {
  color: #94a3b8;
  opacity: 1;
}
.ds-input:hover:not(:disabled),
.ds-select:hover:not(:disabled),
.ds-textarea:hover:not(:disabled) {
  border-color: var(--ds-border-strong);
}
.ds-input:focus,
.ds-select:focus,
.ds-textarea:focus {
  border-color: var(--ds-primary);
  box-shadow: var(--ds-focus);
}
.ds-input:disabled,
.ds-select:disabled,
.ds-textarea:disabled,
.ds-input[readonly],
.ds-textarea[readonly] {
  background: var(--ds-disabled);
  color: var(--ds-text-muted);
  cursor: not-allowed;
}
.ds-field--erro .ds-input,
.ds-field--erro .ds-select,
.ds-field--erro .ds-textarea,
.ds-input[aria-invalid=true],
.ds-select[aria-invalid=true],
.ds-textarea[aria-invalid=true] {
  border-color: var(--ds-danger);
}
.ds-field--erro .ds-input:focus,
.ds-field--erro .ds-select:focus,
.ds-field--erro .ds-textarea:focus,
.ds-input[aria-invalid=true]:focus,
.ds-select[aria-invalid=true]:focus,
.ds-textarea[aria-invalid=true]:focus {
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.14);
}
.ds-field-help,
.ds-field-error {
  margin: 0;
  color: var(--ds-text-muted);
  font-size: var(--ds-font-xs);
  line-height: 1.35;
}
.ds-field-error {
  color: var(--ds-danger);
}
.ds-input-group {
  position: relative;
  display: flex;
  min-width: 0;
}
.ds-input-group > .ds-input {
  flex: 1 1 auto;
}
.ds-input-group--icon > .ds-input {
  padding-left: 38px;
}
.ds-input-icon {
  position: absolute;
  top: 50%;
  left: 12px;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  color: var(--ds-text-muted);
  pointer-events: none;
  transform: translateY(-50%);
}
.ds-input-addon {
  display: inline-flex;
  align-items: center;
  min-height: var(--ds-control-height);
  padding: 0 11px;
  border: 1px solid var(--ds-border);
  background: var(--ds-surface-muted);
  color: var(--ds-text-muted);
  font-size: var(--ds-font-sm);
}
.ds-input-group > .ds-input-addon:first-child {
  border-right: 0;
  border-radius: var(--ds-radius-md) 0 0 var(--ds-radius-md);
}
.ds-input-group > .ds-input-addon:first-child + .ds-input {
  border-radius: 0 var(--ds-radius-md) var(--ds-radius-md) 0;
}
.ds-input-group > .ds-input:last-child:not(:first-child) {
  border-radius: 0 var(--ds-radius-md) var(--ds-radius-md) 0;
}
.ds-input-group > .ds-input:first-child:not(:last-child) {
  border-radius: var(--ds-radius-md) 0 0 var(--ds-radius-md);
}
.ds-input-group > .ds-input + .ds-input-addon {
  border-left: 0;
  border-radius: 0 var(--ds-radius-md) var(--ds-radius-md) 0;
}
.ds-input--number,
.ds-input--currency {
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.ds-input--code,
.ds-text-mono {
  font-family:
    Consolas,
    "Courier New",
    monospace;
}
.ds-input--sm,
.ds-select--sm {
  min-height: 32px;
  padding-right: 9px;
  padding-left: 9px;
  font-size: var(--ds-font-sm);
}
.ds-input--lg,
.ds-select--lg {
  min-height: 44px;
  font-size: var(--ds-font-lg);
}
.ds-file-input {
  width: 100%;
  min-height: var(--ds-control-height);
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface);
  color: var(--ds-text-muted);
  font: var(--ds-font-md) var(--ds-font-family);
}
.ds-file-input::file-selector-button {
  min-height: calc(var(--ds-control-height) - 2px);
  margin-right: 10px;
  padding: 0 12px;
  border: 0;
  border-right: 1px solid var(--ds-border);
  background: var(--ds-surface-muted);
  color: var(--ds-primary);
  font-weight: 700;
  cursor: pointer;
}
.ds-file-input:focus-visible {
  outline: none;
  border-color: var(--ds-primary);
  box-shadow: var(--ds-focus);
}
.ds-search {
  position: relative;
  min-width: 0;
}
.ds-search > .ds-input {
  padding-right: 38px;
  padding-left: 38px;
}
.ds-search::before {
  position: absolute;
  top: 50%;
  left: 12px;
  z-index: 1;
  width: 16px;
  height: 16px;
  background: var(--ds-text-muted);
  content: "";
  pointer-events: none;
  transform: translateY(-50%);
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center / contain no-repeat;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.ds-input-clear {
  position: absolute;
  top: 50%;
  right: 7px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  padding: 0;
  border: 0;
  border-radius: var(--ds-radius-sm);
  background: transparent;
  color: var(--ds-text-muted);
  cursor: pointer;
  transform: translateY(-50%);
}
.ds-input-clear:hover {
  background: #eef2f6;
  color: var(--ds-text);
}
.ds-fieldset {
  min-width: 0;
  margin: 0;
  padding: 14px 16px 16px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
}
.ds-legend {
  padding: 0 6px;
  color: var(--ds-text);
  font-size: var(--ds-font-md);
  font-weight: 700;
}
.ds-check-group,
.ds-radio-group {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.ds-checkbox-label,
.ds-radio-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--ds-text);
  font-size: var(--ds-font-md);
  line-height: 1.3;
  cursor: pointer;
}
.ds-checkbox,
.ds-radio {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--ds-primary);
}
.ds-checkbox:focus-visible,
.ds-radio:focus-visible,
.ds-switch-input:focus-visible + .ds-switch-control {
  outline: none;
  box-shadow: var(--ds-focus);
}
.ds-switch {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}
.ds-switch-input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
}
.ds-switch-control {
  position: relative;
  width: 38px;
  height: 22px;
  border-radius: 999px;
  background: #94a3b8;
  transition: background-color var(--ds-transition);
}
.ds-switch-control::after {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.3);
  content: "";
  transition: transform var(--ds-transition);
}
.ds-switch-input:checked + .ds-switch-control {
  background: var(--ds-primary);
}
.ds-switch-input:checked + .ds-switch-control::after {
  transform: translateX(16px);
}
.ds-section,
.ds-card {
  min-width: 0;
  padding: 16px 18px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-lg);
  background: var(--ds-surface);
  box-shadow: var(--ds-shadow-sm);
}
.ds-section-header,
.ds-card-header,
.ds-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}
.ds-section-title,
.ds-card-title {
  margin: 0;
  color: var(--ds-text);
  font-size: var(--ds-font-lg);
  font-weight: 700;
  line-height: 1.3;
}
.ds-section-body,
.ds-card-body {
  margin-top: 14px;
}
.ds-toolbar {
  flex-wrap: wrap;
}
.ds-toolbar-group,
.ds-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.ds-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}
.ds-table-container {
  width: 100%;
  min-width: 0;
  overflow: auto;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface);
}
.ds-table {
  width: 100%;
  min-width: 680px;
  border-spacing: 0;
  border-collapse: separate;
  color: var(--ds-text);
  font-family: var(--ds-font-family);
}
.ds-table th,
.ds-table td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--ds-border);
  font-size: var(--ds-font-sm);
  line-height: 1.35;
  text-align: left;
  vertical-align: middle;
}
.ds-table th {
  background: #eef3f6;
  color: #364a5f;
  font-weight: 700;
  white-space: nowrap;
}
.ds-table--sticky-header thead th {
  position: sticky;
  top: 0;
  z-index: 2;
}
.ds-table tbody tr:last-child td {
  border-bottom: 0;
}
.ds-table tbody tr:hover td {
  background: #f5f9fb;
}
.ds-table--striped tbody tr:nth-child(even) td {
  background: var(--ds-surface-muted);
}
.ds-table--striped tbody tr:hover td {
  background: #f5f9fb;
}
.ds-table--compact th,
.ds-table--compact td {
  padding: 7px 9px;
}
.ds-table-row--selected td {
  background: var(--ds-primary-soft) !important;
}
.ds-table-cell--number {
  font-variant-numeric: tabular-nums;
  text-align: right !important;
}
.ds-table-cell--actions {
  width: 1%;
  text-align: right !important;
  white-space: nowrap;
}
.ds-table-empty {
  padding: 28px 16px !important;
  color: var(--ds-text-muted);
  text-align: center !important;
}
.ds-tabs {
  display: flex;
  gap: 4px;
  overflow-x: auto;
  border-bottom: 1px solid var(--ds-border);
}
.ds-tab {
  padding: 10px 14px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--ds-text-muted);
  font: 700 var(--ds-font-md) var(--ds-font-family);
  white-space: nowrap;
  cursor: pointer;
}
.ds-tab:hover,
.ds-tab--active,
.ds-tab[aria-selected=true] {
  border-bottom-color: var(--ds-primary);
  color: var(--ds-primary);
}
.ds-pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  padding-top: 12px;
}
.ds-pagination-info {
  margin-right: auto;
  color: var(--ds-text-muted);
  font-size: var(--ds-font-sm);
}
.ds-dropdown {
  position: relative;
}
.ds-dropdown-menu {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: var(--ds-z-dropdown);
  min-width: 190px;
  padding: 6px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface);
  box-shadow: var(--ds-shadow-md);
}
.ds-dropdown-item {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 8px 10px;
  border: 0;
  border-radius: var(--ds-radius-sm);
  background: transparent;
  color: var(--ds-text);
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.ds-dropdown-item:hover {
  background: var(--ds-surface-muted);
}
.ds-combobox {
  position: relative;
  min-width: 0;
}
.ds-combobox-input {
  padding-right: 38px;
}
.ds-combobox-toggle {
  position: absolute;
  top: 1px;
  right: 1px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 0 var(--ds-radius-md) var(--ds-radius-md) 0;
  background: transparent;
  color: var(--ds-text-muted);
  cursor: pointer;
}
.ds-combobox-panel {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  left: 0;
  z-index: var(--ds-z-dropdown);
  max-height: 260px;
  overflow: auto;
  padding: 5px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface);
  box-shadow: var(--ds-shadow-md);
}
.ds-combobox-option {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 8px 10px;
  border: 0;
  border-radius: var(--ds-radius-sm);
  background: transparent;
  color: var(--ds-text);
  font-size: var(--ds-font-sm);
  text-align: left;
  cursor: pointer;
}
.ds-combobox-option:hover,
.ds-combobox-option--active,
.ds-combobox-option[aria-selected=true] {
  background: var(--ds-primary-soft);
  color: var(--ds-primary-hover);
}
.ds-combobox-empty {
  padding: 16px 10px;
  color: var(--ds-text-muted);
  font-size: var(--ds-font-sm);
  text-align: center;
}
.ds-filter-bar {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  flex-wrap: wrap;
  padding: 12px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface-muted);
}
.ds-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 4px 9px;
  border: 1px solid #b9d7e6;
  border-radius: 999px;
  background: var(--ds-primary-soft);
  color: var(--ds-primary-hover);
  font-size: var(--ds-font-xs);
  font-weight: 700;
}
.ds-filter-chip-remove {
  display: inline-flex;
  width: 16px;
  height: 16px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.ds-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}
.ds-summary-item {
  padding: 12px 14px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface);
}
.ds-summary-label {
  display: block;
  margin-bottom: 4px;
  color: var(--ds-text-muted);
  font-size: var(--ds-font-xs);
  font-weight: 700;
  text-transform: uppercase;
}
.ds-summary-value {
  color: var(--ds-text);
  font-size: var(--ds-font-lg);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.ds-table-sort {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.ds-table-sort::after {
  color: var(--ds-text-muted);
  content: "\2195";
  font-size: 0.8em;
}
.ds-table-sort--asc::after {
  content: "\2191";
}
.ds-table-sort--desc::after {
  content: "\2193";
}
.ds-table-filter {
  min-width: 90px;
  min-height: 30px;
  padding: 0 8px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-sm);
  background: var(--ds-surface);
  color: var(--ds-text);
  font: var(--ds-font-xs) var(--ds-font-family);
}
.ds-table-filter:focus {
  outline: none;
  border-color: var(--ds-primary);
  box-shadow: var(--ds-focus);
}
.ds-alert {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface-muted);
  color: var(--ds-text);
  font-size: var(--ds-font-md);
  line-height: 1.4;
}
.ds-alert--success {
  border-color: #86efac;
  background: #ecfdf5;
  color: #166534;
}
.ds-alert--danger {
  border-color: #fecaca;
  background: #fef2f2;
  color: #991b1b;
}
.ds-alert--warning {
  border-color: #fde68a;
  background: #fffbeb;
  color: #92400e;
}
.ds-alert--info {
  border-color: #bae6fd;
  background: #f0f9ff;
  color: #075985;
}
.ds-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #334155;
  font-size: var(--ds-font-xs);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
.ds-badge--success {
  background: #dcfce7;
  color: #166534;
}
.ds-badge--danger {
  background: #fee2e2;
  color: #991b1b;
}
.ds-badge--warning {
  background: #fef3c7;
  color: #92400e;
}
.ds-badge--info {
  background: #e0f2fe;
  color: #075985;
}
.ds-badge--pending {
  background: #fef3c7;
  color: #92400e;
}
.ds-avatar {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  overflow: hidden;
  border: 1px solid var(--ds-border);
  border-radius: 50%;
  background: var(--ds-primary-soft);
  color: var(--ds-primary);
  font-size: var(--ds-font-sm);
  font-weight: 700;
}
.ds-avatar > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ds-image-preview {
  display: block;
  max-width: 100%;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface-muted);
  object-fit: contain;
}
.ds-empty-state,
.ds-loading-state {
  display: grid;
  place-items: center;
  gap: 8px;
  min-height: 160px;
  padding: 24px;
  color: var(--ds-text-muted);
  text-align: center;
}
.ds-spinner {
  width: 24px;
  height: 24px;
  border: 3px solid var(--ds-border);
  border-right-color: var(--ds-primary);
  border-radius: 50%;
  animation: ds-spin 0.7s linear infinite;
}
.ds-progress {
  width: 100%;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e2e8f0;
}
.ds-progress-bar {
  height: 100%;
  border-radius: inherit;
  background: var(--ds-primary);
  transition: width 200ms ease;
}
.ds-skeleton {
  min-height: 16px;
  border-radius: var(--ds-radius-sm);
  background:
    linear-gradient(
      90deg,
      #e8edf2 25%,
      #f5f7f9 50%,
      #e8edf2 75%);
  background-size: 200% 100%;
  animation: ds-skeleton 1.4s ease-in-out infinite;
}
.ds-skeleton--text {
  width: 100%;
  height: 14px;
}
.ds-skeleton--circle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
.ds-toast-container {
  position: fixed;
  top: 16px;
  right: 16px;
  z-index: calc(var(--ds-z-modal) + 100);
  display: grid;
  gap: 8px;
  width: min(380px, calc(100vw - 32px));
}
.ds-toast {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid var(--ds-border);
  border-left: 4px solid var(--ds-info);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface);
  box-shadow: var(--ds-shadow-md);
  color: var(--ds-text);
  font-size: var(--ds-font-sm);
}
.ds-toast--success {
  border-left-color: var(--ds-success);
}
.ds-toast--danger {
  border-left-color: var(--ds-danger);
}
.ds-toast--warning {
  border-left-color: var(--ds-warning);
}
.ds-toast-content {
  flex: 1 1 auto;
  min-width: 0;
}
.ds-toast-title {
  display: block;
  margin-bottom: 2px;
  font-weight: 700;
}
.ds-tooltip {
  position: relative;
}
.ds-tooltip::after {
  position: absolute;
  right: 50%;
  bottom: calc(100% + 7px);
  z-index: var(--ds-z-dropdown);
  max-width: 240px;
  padding: 5px 8px;
  border-radius: var(--ds-radius-sm);
  background: #17202a;
  color: #ffffff;
  content: attr(data-tooltip);
  font-size: var(--ds-font-xs);
  line-height: 1.3;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transform: translateX(50%) translateY(3px);
  transition: opacity var(--ds-transition), transform var(--ds-transition);
}
.ds-tooltip:hover::after,
.ds-tooltip:focus-visible::after {
  opacity: 1;
  transform: translateX(50%) translateY(0);
}
.ds-accordion {
  overflow: hidden;
  border: 1px solid var(--ds-border);
  border-radius: var(--ds-radius-md);
  background: var(--ds-surface);
}
.ds-accordion + .ds-accordion {
  margin-top: 8px;
}
.ds-accordion-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  padding: 12px 14px;
  border: 0;
  background: var(--ds-surface-muted);
  color: var(--ds-text);
  font: 700 var(--ds-font-md) var(--ds-font-family);
  text-align: left;
  cursor: pointer;
}
.ds-accordion-trigger::after {
  content: "+";
  font-size: 1.15em;
}
.ds-accordion-trigger[aria-expanded=true]::after {
  content: "\2212";
}
.ds-accordion-panel {
  padding: 14px;
  border-top: 1px solid var(--ds-border);
}
.ds-breadcrumb {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  color: var(--ds-text-muted);
  font-size: var(--ds-font-sm);
  list-style: none;
}
.ds-breadcrumb-item + .ds-breadcrumb-item::before {
  margin-right: 6px;
  content: "/";
}
.ds-breadcrumb-link {
  color: var(--ds-primary);
  text-decoration: none;
}
.ds-breadcrumb-link:hover {
  text-decoration: underline;
}
.ds-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: var(--ds-z-modal);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  background: rgba(9, 30, 66, 0.52);
}
.ds-modal {
  display: flex;
  flex-direction: column;
  width: min(900px, calc(100vw - 32px));
  max-height: min(90vh, 900px);
  overflow: hidden;
  border-radius: var(--ds-radius-lg);
  background: var(--ds-surface);
  box-shadow: var(--ds-shadow-md);
  color: var(--ds-text);
  font-family: var(--ds-font-family);
}
.ds-modal--sm {
  width: min(460px, calc(100vw - 32px));
}
.ds-modal--lg {
  width: min(1200px, calc(100vw - 32px));
}
.ds-modal--full {
  width: calc(100vw - 32px);
  height: calc(100vh - 32px);
  max-height: none;
}
.ds-modal-header,
.ds-modal-footer {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  background: #fbfdff;
}
.ds-modal-header {
  border-bottom: 1px solid var(--ds-border);
}
.ds-modal-title {
  flex: 1 1 auto;
  margin: 0;
  font-size: var(--ds-font-lg);
  font-weight: 700;
}
.ds-modal-body {
  flex: 1 1 auto;
  min-height: 0;
  padding: 18px;
  overflow: auto;
}
.ds-modal-footer {
  justify-content: flex-end;
  flex-wrap: wrap;
  border-top: 1px solid var(--ds-border);
}
.ds-modal-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: var(--ds-radius-sm);
  background: transparent;
  color: var(--ds-text-muted);
  font-size: 1.25rem;
  cursor: pointer;
}
.ds-modal-close:hover {
  background: #eef2f6;
  color: var(--ds-text);
}
.ds-modal--danger .ds-modal-header {
  border-bottom-color: #fecaca;
  background: #fef2f2;
  color: #991b1b;
}
.ds-hidden {
  display: none !important;
}
.ds-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.ds-text-left {
  text-align: left !important;
}
.ds-text-center {
  text-align: center !important;
}
.ds-text-right {
  text-align: right !important;
}
.ds-text-muted {
  color: var(--ds-text-muted) !important;
}
.ds-nowrap {
  white-space: nowrap !important;
}
.ds-w-100 {
  width: 100% !important;
}
.ds-flex {
  display: flex !important;
}
.ds-flex-wrap {
  flex-wrap: wrap !important;
}
.ds-items-center {
  align-items: center !important;
}
.ds-justify-between {
  justify-content: space-between !important;
}
.ds-gap-1 {
  gap: var(--ds-space-1) !important;
}
.ds-gap-2 {
  gap: var(--ds-space-2) !important;
}
.ds-gap-3 {
  gap: var(--ds-space-3) !important;
}
.ds-mt-2 {
  margin-top: var(--ds-space-2) !important;
}
.ds-mt-3 {
  margin-top: var(--ds-space-3) !important;
}
.ds-mb-2 {
  margin-bottom: var(--ds-space-2) !important;
}
.ds-mb-3 {
  margin-bottom: var(--ds-space-3) !important;
}
@keyframes ds-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes ds-skeleton {
  to {
    background-position: -200% 0;
  }
}
@media (max-width: 860px) {
  .ds-page-header {
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 14px;
  }
  .ds-page-header-icon {
    flex-basis: 40px;
    width: 40px;
    height: 40px;
  }
  .ds-page-actions {
    flex-basis: 100%;
    margin-left: 0;
  }
  .ds-form-grid > [class^=ds-col-] {
    grid-column: span 6;
  }
}
@media (max-width: 560px) {
  .ds-form-grid > [class^=ds-col-] {
    grid-column: 1 / -1;
  }
  .ds-page-actions > .bt,
  .ds-page-actions > .ds-btn,
  .ds-page-actions > [class^=bt-] {
    flex: 1 1 auto;
  }
  .ds-section,
  .ds-card,
  .ds-modal-body {
    padding: 14px;
  }
  .ds-modal-footer > .bt,
  .ds-modal-footer > .ds-btn,
  .ds-modal-footer > [class^=bt-] {
    flex: 1 1 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bt,
  .ds-btn,
  .ds-spinner,
  .ds-skeleton,
  .ds-progress-bar {
    animation: none;
    transition: none;
  }
}
@media print {
  .ds-no-print,
  .ds-page-actions,
  .ds-modal-overlay {
    display: none !important;
  }
  .ds-section,
  .ds-card,
  .ds-table-container {
    box-shadow: none;
  }
}

/* angular:styles/global:styles */
/*# sourceMappingURL=styles.css.map */
