/* ANVA Native Design System v54 — Components */
@layer components {
  /* Canonical status callout used by SSR forms and ticket workflows. */
  .alert {
    min-inline-size:0; padding:.85rem 1rem; border:1px solid var(--anva-border-default);
    border-radius:var(--anva-radius-md); background:var(--anva-surface-2); color:var(--anva-text-primary); line-height:1.5;
  }
  .alert--info { border-color:color-mix(in srgb,var(--anva-info) 30%,var(--anva-border-default)); background:color-mix(in srgb,var(--anva-info) 8%,var(--anva-surface-1)); }
  .alert--success { border-color:color-mix(in srgb,var(--anva-success) 30%,var(--anva-border-default)); background:color-mix(in srgb,var(--anva-success) 8%,var(--anva-surface-1)); }
  .alert--warning { border-color:color-mix(in srgb,var(--anva-warning) 32%,var(--anva-border-default)); background:color-mix(in srgb,var(--anva-warning) 9%,var(--anva-surface-1)); }
  .alert--danger { border-color:color-mix(in srgb,var(--anva-danger) 30%,var(--anva-border-default)); background:color-mix(in srgb,var(--anva-danger) 8%,var(--anva-surface-1)); }
  .form-hint { margin:.25rem 0 0; color:var(--anva-text-secondary); font-size:var(--anva-label-m); line-height:1.5; }
  /* Canonical inline icon contract. SVG without explicit dimensions defaults to 300x150 in browsers;
   * every shared ui_symbol/traveler symbol is constrained here instead of per-feature patches. */
  .ui-symbol, .traveler-symbol {
    inline-size:1.2em;
    block-size:1.2em;
    flex:0 0 auto;
    display:inline-block;
    vertical-align:-.18em;
    overflow:visible;
    color:inherit;
    stroke:currentColor;
  }

  .anva-button {
    min-block-size:var(--anva-touch-target);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:var(--anva-space-2);
    padding:.7rem 1rem;
    border:1px solid transparent;
    border-radius:var(--anva-radius-md);
    font:inherit;
    font-weight:800;
    line-height:1.2;
    text-decoration:none;
    cursor:pointer;
    transition:background var(--anva-motion-fast) var(--anva-ease-standard), border-color var(--anva-motion-fast) var(--anva-ease-standard), color var(--anva-motion-fast) var(--anva-ease-standard), transform var(--anva-motion-fast) var(--anva-ease-standard);
  }
  .anva-button:active { transform:translateY(1px); }
  .anva-button--primary { background:var(--anva-primary); color:var(--anva-on-primary); }
  .anva-button--primary:hover { background:var(--anva-primary-hover); }
  .anva-button--secondary { background:var(--anva-secondary); color:var(--anva-on-secondary); border-color:var(--anva-border-subtle); }
  .anva-button--tertiary,
  .anva-button--quiet { background:transparent; color:var(--anva-text-primary); border-color:var(--anva-border-default); }
  .anva-button--danger { background:var(--anva-danger); color:var(--anva-text-inverse); }
  .anva-button[disabled], .anva-button[aria-disabled="true"] { opacity:.55; cursor:not-allowed; transform:none; }

  .anva-icon-button {
    inline-size:var(--anva-touch-target); block-size:var(--anva-touch-target);
    display:inline-grid; place-items:center; border-radius:var(--anva-radius-pill);
  }

  .anva-card {
    min-inline-size:0;
    border:1px solid var(--anva-border-default);
    border-radius:var(--anva-card-radius, var(--anva-radius-lg));
    background:var(--anva-card-bg, var(--anva-surface-1));
    color:var(--anva-text-primary);
    box-shadow:var(--anva-card-shadow, var(--anva-elevation-0));
  }

  .anva-field { display:grid; gap:var(--anva-space-2); min-inline-size:0; }
  .anva-field > label, .anva-field__label { font-size:var(--anva-label-l); font-weight:800; color:var(--anva-text-primary); }
  .anva-field__help { margin:0; color:var(--anva-text-secondary); font-size:var(--anva-body-s); line-height:1.5; }
  .anva-field__error { margin:0; color:var(--anva-danger); font-size:var(--anva-body-s); font-weight:700; }
  .anva-field :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
    min-block-size:var(--anva-touch-target); inline-size:100%; box-sizing:border-box;
    border:1px solid var(--anva-border-default); border-radius:var(--anva-radius-md);
    background:var(--anva-surface-1); color:var(--anva-text-primary); font:inherit;
  }

  .anva-badge, .anva-status {
    display:inline-flex; align-items:center; gap:.4rem; min-block-size:1.75rem;
    padding:.25rem .65rem; border-radius:var(--anva-radius-pill);
    font-size:var(--anva-label-m); font-weight:850; line-height:1.2;
    background:var(--anva-surface-3); color:var(--anva-text-secondary);
  }
  .anva-badge--success { background:color-mix(in srgb, var(--anva-success) 14%, var(--anva-surface-1)); color:var(--anva-success); }
  .anva-badge--warning { background:color-mix(in srgb, var(--anva-warning) 14%, var(--anva-surface-1)); color:var(--anva-warning); }
  .anva-badge--danger { background:color-mix(in srgb, var(--anva-danger) 13%, var(--anva-surface-1)); color:var(--anva-danger); }
  .anva-badge--info { background:color-mix(in srgb, var(--anva-info) 13%, var(--anva-surface-1)); color:var(--anva-info); }
  .anva-badge--accent { background:color-mix(in srgb, var(--anva-primary) 14%, var(--anva-surface-1)); color:var(--anva-primary); }

  .anva-metric { display:grid; gap:.25rem; min-inline-size:0; }
  .anva-metric__label { color:var(--anva-text-secondary); font-size:var(--anva-label-m); font-weight:800; }
  .anva-metric__value { color:var(--anva-text-primary); font-size:clamp(1.5rem, 3vw, 2.5rem); line-height:1; font-weight:900; letter-spacing:-.03em; }

  .anva-empty-state { display:grid; justify-items:start; gap:var(--anva-space-3); padding:var(--anva-space-6); border:1px dashed var(--anva-border-default); border-radius:var(--anva-radius-lg); background:var(--anva-surface-2); }
  .anva-empty-state > :is(h1,h2,h3,p) { margin:0; }

  .anva-pagination { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--anva-space-3); }
  .anva-tabs { display:flex; gap:var(--anva-space-2); overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:none; -ms-overflow-style:none; }
  .anva-tabs::-webkit-scrollbar { display:none; inline-size:0; block-size:0; }
  .anva-tabs > * { flex:0 0 auto; }

  .anva-table-wrap { overflow:auto; border:1px solid var(--anva-border-default); border-radius:var(--anva-radius-lg); }
  .anva-table { inline-size:100%; border-collapse:collapse; background:var(--anva-surface-1); }
  .anva-table :is(th,td) { padding:.8rem 1rem; text-align:start; border-block-end:1px solid var(--anva-border-subtle); vertical-align:top; }
  .anva-table th { color:var(--anva-text-secondary); font-size:var(--anva-label-m); font-weight:850; }

  .anva-key-value { display:grid; grid-template-columns:minmax(7rem, .7fr) minmax(0, 1.3fr); gap:var(--anva-space-2) var(--anva-space-4); }
  .anva-key-value__key { color:var(--anva-text-secondary); font-size:var(--anva-label-l); font-weight:750; }
  .anva-key-value__value { min-inline-size:0; color:var(--anva-text-primary); overflow-wrap:anywhere; }

  .anva-search { display:grid; gap:var(--anva-space-3); grid-template-columns:minmax(0,1fr); }
  .anva-progress { overflow:hidden; block-size:.6rem; border-radius:var(--anva-radius-pill); background:var(--anva-surface-3); }

  /* Canonical Entity Picker — searchable, progressive-enhancement-safe selection
   * for people/accounts and other large entity sets. The native <select> remains
   * the form source of truth; JavaScript only switches its representation. */
  .anva-entity-picker {
    min-inline-size:0;
    display:grid;
    gap:var(--anva-space-3);
    padding:var(--anva-space-4);
    border:1px solid var(--anva-border-default);
    border-radius:var(--anva-radius-lg);
    background:var(--anva-surface-2);
  }
  .anva-entity-picker__search,
  .anva-entity-picker__native {
    min-inline-size:0;
    display:grid;
    gap:var(--anva-space-2);
    color:var(--anva-text-primary);
    font-size:var(--anva-label-l);
    font-weight:800;
  }
  .anva-entity-picker__search > span,
  .anva-entity-picker__native > span {
    color:var(--anva-text-secondary);
    font-size:var(--anva-label-m);
    font-weight:900;
  }
  .anva-entity-picker__search input,
  .anva-entity-picker__native select {
    inline-size:100%;
    min-inline-size:0;
    border:1px solid var(--anva-border-default);
    border-radius:var(--anva-radius-md);
    background:var(--anva-surface-1);
    color:var(--anva-text-primary);
    font:inherit;
  }
  .anva-entity-picker__search input {
    min-block-size:var(--anva-touch-target);
    padding:.7rem .85rem;
  }
  .anva-entity-picker__native select {
    min-block-size:15rem;
    padding:.35rem;
  }
  .anva-entity-picker__native select option {
    padding:.65rem .7rem;
    line-height:1.35;
  }
  .anva-entity-picker__search input:focus,
  .anva-entity-picker__native select:focus {
    outline:3px solid color-mix(in srgb,var(--anva-focus) 24%,transparent);
    outline-offset:1px;
    border-color:var(--anva-focus);
  }
  .anva-entity-picker__search small,
  .anva-entity-picker__native small {
    color:var(--anva-text-secondary);
    font-size:var(--anva-label-s);
    font-weight:600;
    line-height:1.5;
  }
  .anva-entity-picker__meta {
    min-inline-size:0;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:var(--anva-space-2);
    padding:.65rem .75rem;
    border-radius:var(--anva-radius-md);
    background:var(--anva-surface-3);
  }
  .anva-entity-picker__meta strong {
    color:var(--anva-primary);
    font-size:var(--anva-label-l);
  }
  .anva-entity-picker__meta span {
    min-inline-size:0;
    color:var(--anva-text-secondary);
    font-size:var(--anva-label-s);
    line-height:1.45;
  }
  .anva-entity-picker__native.is-enhanced { display:none; }
  .anva-entity-picker__list[hidden] { display:none; }
  .anva-entity-picker__list {
    min-inline-size:0;
    max-block-size:22rem;
    display:grid;
    gap:var(--anva-space-2);
    overflow:auto;
    padding:var(--anva-space-1);
    border-radius:var(--anva-radius-md);
    scrollbar-width:thin;
    overscroll-behavior:contain;
  }
  .anva-entity-picker__option {
    inline-size:100%;
    min-inline-size:0;
    min-block-size:3.75rem;
    display:grid;
    grid-template-columns:2.4rem minmax(0,1fr) auto;
    align-items:center;
    gap:var(--anva-space-3);
    padding:.65rem .75rem;
    border:1px solid var(--anva-border-default);
    border-radius:var(--anva-radius-md);
    background:var(--anva-surface-1);
    color:var(--anva-text-primary);
    font:inherit;
    text-align:start;
    cursor:pointer;
    transition:border-color var(--anva-motion-fast) var(--anva-ease-standard), background var(--anva-motion-fast) var(--anva-ease-standard), transform var(--anva-motion-fast) var(--anva-ease-standard);
  }
  .anva-entity-picker__option:hover {
    border-color:color-mix(in srgb,var(--anva-primary) 38%,var(--anva-border-default));
    background:color-mix(in srgb,var(--anva-primary) 5%,var(--anva-surface-1));
  }
  .anva-entity-picker__option:active { transform:translateY(1px); }
  .anva-entity-picker__option[aria-selected="true"] {
    border-color:var(--anva-primary);
    background:var(--anva-secondary);
    box-shadow:0 0 0 2px color-mix(in srgb,var(--anva-primary) 12%,transparent);
  }
  .anva-entity-picker__option:disabled {
    cursor:not-allowed;
    opacity:.66;
    background:var(--anva-surface-2);
    transform:none;
  }
  .anva-entity-picker__avatar {
    inline-size:2.4rem;
    block-size:2.4rem;
    display:grid;
    place-items:center;
    border-radius:var(--anva-radius-md);
    background:var(--anva-secondary);
    color:var(--anva-on-secondary);
    font-size:var(--anva-label-l);
    font-weight:950;
  }
  .anva-entity-picker__copy { min-inline-size:0; display:grid; gap:.16rem; }
  .anva-entity-picker__copy strong,
  .anva-entity-picker__copy small {
    min-inline-size:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .anva-entity-picker__copy strong { font-size:var(--anva-label-l); }
  .anva-entity-picker__copy small { color:var(--anva-text-secondary); font-size:var(--anva-label-s); font-weight:600; }
  .anva-entity-picker__state {
    max-inline-size:8.5rem;
    padding:.3rem .5rem;
    border-radius:var(--anva-radius-pill);
    background:var(--anva-surface-3);
    color:var(--anva-text-secondary);
    font-size:.68rem;
    font-weight:850;
    line-height:1.25;
    text-align:center;
  }
  .anva-entity-picker__option:not(:disabled) .anva-entity-picker__state {
    background:color-mix(in srgb,var(--anva-success) 10%,var(--anva-surface-1));
    color:var(--anva-success);
  }
  .anva-entity-picker__selection {
    min-inline-size:0;
    padding:.7rem .8rem;
    border:1px dashed var(--anva-border-default);
    border-radius:var(--anva-radius-md);
    background:var(--anva-surface-1);
    color:var(--anva-text-secondary);
    font-size:var(--anva-label-m);
    line-height:1.45;
    overflow-wrap:anywhere;
  }
  .anva-entity-picker__empty {
    padding:var(--anva-space-5);
    border:1px dashed var(--anva-border-default);
    border-radius:var(--anva-radius-md);
    color:var(--anva-text-secondary);
    font-size:var(--anva-label-m);
    text-align:center;
  }

  /* Multi-role account workspace switcher. Role membership is server-derived. */
  .anva-workspace-switcher {
    display:grid;
    gap:var(--anva-space-2);
    min-inline-size:0;
    color:var(--anva-text-primary);
  }
  .anva-workspace-switcher__head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--anva-space-2);
    padding-inline:var(--anva-space-2);
    color:var(--anva-text-secondary);
  }
  .anva-workspace-switcher__head span {
    font-size:var(--anva-label-s);
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
  }
  .anva-workspace-switcher__head small {
    font-size:var(--anva-label-s);
  }
  .anva-workspace-switcher__list {
    display:grid;
    gap:var(--anva-space-1);
  }
  .anva-workspace-switcher__item {
    min-block-size:var(--anva-touch-target);
    display:grid;
    grid-template-columns:2rem minmax(0,1fr) auto;
    align-items:center;
    gap:var(--anva-space-2);
    padding:.5rem .625rem;
    border:1px solid transparent;
    border-radius:var(--anva-radius-md);
    color:var(--anva-text-primary);
    text-decoration:none;
    background:transparent;
  }
  .anva-workspace-switcher__item:hover {
    background:var(--anva-surface-2);
    border-color:var(--anva-border-subtle);
  }
  .anva-workspace-switcher__item.is-active {
    background:var(--anva-secondary);
    border-color:color-mix(in srgb,var(--anva-primary) 24%,var(--anva-border-subtle));
    color:var(--anva-on-secondary);
  }
  .anva-workspace-switcher__icon {
    inline-size:2rem;
    block-size:2rem;
    display:grid;
    place-items:center;
    border-radius:var(--anva-radius-sm);
    background:var(--anva-surface-3);
  }
  .anva-workspace-switcher__icon svg { inline-size:1.125rem; block-size:1.125rem; }
  .anva-workspace-switcher__copy { min-inline-size:0; display:grid; gap:.1rem; }
  .anva-workspace-switcher__copy strong,
  .anva-workspace-switcher__copy small {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .anva-workspace-switcher__copy strong { font-size:var(--anva-label-l); }
  .anva-workspace-switcher__copy small { color:var(--anva-text-secondary); font-size:var(--anva-label-s); }
  .anva-workspace-switcher__state { color:var(--anva-text-muted); font-size:var(--anva-label-m); }
  .anva-workspace-switcher__item.is-active .anva-workspace-switcher__state { color:var(--anva-primary); }

  .anva-entity-list { display:grid; gap:var(--anva-space-3); min-inline-size:0; }
  .anva-entity-row { min-inline-size:0; }

  .anva-tabs > a {
    min-block-size:var(--anva-touch-target);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:var(--anva-space-2);
    padding:.55rem .8rem;
    border:1px solid var(--anva-border-default);
    border-radius:var(--anva-radius-pill);
    background:var(--anva-surface-1);
    color:var(--anva-text-secondary);
    font-size:var(--anva-label-l);
    font-weight:800;
    text-decoration:none;
  }
  .anva-tabs > a.is-active {
    border-color:color-mix(in srgb,var(--anva-primary) 34%,var(--anva-border-default));
    background:var(--anva-secondary);
    color:var(--anva-on-secondary);
  }
  .anva-tabs > a b {
    min-inline-size:1.35rem;
    padding:.1rem .35rem;
    border-radius:var(--anva-radius-pill);
    background:var(--anva-surface-3);
    color:inherit;
    font-size:var(--anva-label-s);
    text-align:center;
  }

  .anva-metric > span { color:var(--anva-text-secondary); font-size:var(--anva-label-m); font-weight:800; }
  .anva-metric > strong { color:var(--anva-text-primary); font-size:clamp(1.45rem,3vw,2.35rem); line-height:1; }
  .anva-metric > small { color:var(--anva-text-muted); font-size:var(--anva-label-s); }

}


@media (max-width:639px) {
  @layer components {
    .anva-entity-picker { padding:var(--anva-space-3); }
    .anva-entity-picker__meta { align-items:flex-start; flex-direction:column; }
    .anva-entity-picker__list { max-block-size:19rem; padding:0; }
    .anva-entity-picker__option { grid-template-columns:2.25rem minmax(0,1fr); gap:var(--anva-space-2); }
    .anva-entity-picker__avatar { inline-size:2.25rem; block-size:2.25rem; }
    .anva-entity-picker__state { grid-column:2; justify-self:start; max-inline-size:100%; }
  }
}

@media (min-width:640px) {
  @layer components { .anva-search { grid-template-columns:minmax(0,1fr) auto; align-items:end; } }
}

/* Canonical workspace-shell additions. The previous inline critical drawer
 * patch is intentionally retired; the shell is governed by the shared design
 * system plus the stable base workspace contract. */
@layer components {
  body[data-anva-system] .brand-mark--image,
  body[data-anva-system] .drawer__brand-mark--image {
    overflow:hidden;
    padding:0;
    border:1px solid var(--anva-border-default);
    background:var(--anva-surface-1);
  }
  body[data-anva-system] .brand-mark--image img,
  body[data-anva-system] .drawer__brand-mark--image img {
    display:block;
    inline-size:100%;
    block-size:100%;
    object-fit:contain;
  }
  body[data-anva-system] .drawer-account-card__identity,
  body[data-anva-system] .workspace-user-card__identity {
    min-inline-size:0;
  }
  body[data-anva-system] .drawer-account-card__identity strong,
  body[data-anva-system] .drawer-account-card__identity small,
  body[data-anva-system] .workspace-user-card__copy strong,
  body[data-anva-system] .workspace-user-card__copy small {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body[data-anva-system] .drawer-logout-button,
  body[data-anva-system] .drawer-public-link {
    min-block-size:var(--anva-touch-target);
  }

  /* Workspace identity is a canonical component in every representation.
   * Size must not depend on the Expanded sidebar being present; otherwise an
   * uploaded avatar/logo can render at intrinsic size inside the Compact drawer. */
  body[data-anva-system] .workspace-user-card__avatar {
    inline-size:2.25rem;
    block-size:2.25rem;
    min-inline-size:2.25rem;
    display:grid;
    place-items:center;
    flex:0 0 2.25rem;
    overflow:hidden;
    border-radius:var(--anva-radius-md);
    background:var(--anva-secondary);
    color:var(--anva-on-secondary);
    font-size:var(--anva-label-m);
    font-weight:900;
  }
  body[data-anva-system] .workspace-user-card__avatar img {
    display:block;
    inline-size:100%;
    block-size:100%;
    max-inline-size:100%;
    object-fit:cover;
  }
  body[data-anva-system] .drawer-account-card {
    min-inline-size:0;
    max-inline-size:100%;
  }
  body[data-anva-system] .drawer-account-card__identity {
    display:flex;
    align-items:center;
    gap:var(--anva-space-3);
    min-inline-size:0;
    max-inline-size:100%;
  }
  body[data-anva-system] .drawer__body {
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  body[data-anva-system] .drawer__body::-webkit-scrollbar {
    display:none;
    inline-size:0;
    block-size:0;
  }
}

/* V64 — Canonical data directory primitives. Reusable for account, roster,
 * transaction, and other searchable administrative datasets. */
@layer components {
  .anva-data-toolbar {
    display:grid;
    grid-template-columns:minmax(15rem,2fr) repeat(3,minmax(9rem,.75fr)) auto auto;
    gap:var(--anva-space-3);
    align-items:end;
    margin-block-end:var(--anva-space-4);
  }
  .anva-data-toolbar__field { min-inline-size:0; display:grid; gap:var(--anva-space-2); }
  .anva-data-toolbar__field > span { color:var(--anva-text-secondary); font-size:var(--anva-label-m); font-weight:800; }
  .anva-data-toolbar :is(input,select) {
    inline-size:100%; min-block-size:var(--anva-touch-target); box-sizing:border-box;
    border:1px solid var(--anva-border-default); border-radius:var(--anva-radius-md);
    background:var(--anva-surface-1); color:var(--anva-text-primary); font:inherit;
  }
  .anva-data-toolbar__actions { display:flex; align-items:center; gap:var(--anva-space-2); }
  .anva-contact-stack { display:grid; gap:.35rem; min-inline-size:0; }
  .anva-contact-link {
    display:inline-flex; align-items:center; gap:.4rem; min-inline-size:0; max-inline-size:100%;
    color:var(--anva-primary); font-weight:750; text-decoration:none;
  }
  .anva-contact-link:hover { text-decoration:underline; }
  .anva-contact-link > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .anva-contact-link--whatsapp::before { content:"WA"; display:grid; place-items:center; flex:0 0 auto; inline-size:1.65rem; block-size:1.65rem; border-radius:999px; background:color-mix(in srgb,var(--anva-success) 14%,var(--anva-surface-1)); color:var(--anva-success); font-size:.62rem; font-weight:900; }
  .anva-data-pagination {
    display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
    gap:var(--anva-space-3); margin-block-start:var(--anva-space-4); padding-block-start:var(--anva-space-3);
    border-block-start:1px solid var(--anva-border-subtle);
  }
  .anva-data-pagination__summary { margin:0; color:var(--anva-text-secondary); font-size:var(--anva-body-s); }
  .anva-data-pagination__controls,.anva-data-pagination__pages { display:flex; flex-wrap:wrap; align-items:center; gap:var(--anva-space-1); }
  .anva-data-pagination__nav,.anva-data-pagination__page {
    min-block-size:2.5rem; min-inline-size:2.5rem; padding:.48rem .68rem;
    display:inline-flex; align-items:center; justify-content:center; gap:.35rem;
    border:1px solid var(--anva-border-default); border-radius:var(--anva-radius-md);
    background:var(--anva-surface-1); color:var(--anva-text-primary); font-weight:800; text-decoration:none;
  }
  .anva-data-pagination__page.is-active { border-color:var(--anva-primary); background:var(--anva-primary); color:var(--anva-on-primary); }
  .anva-data-pagination__nav.is-disabled { opacity:.45; }
  .anva-data-pagination__ellipsis { padding-inline:.3rem; color:var(--anva-text-muted); }
}

@media (max-width:959px) {
  @layer components {
    .anva-data-toolbar { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .anva-data-toolbar__field:first-child { grid-column:1 / -1; }
    .anva-data-toolbar__actions { grid-column:1 / -1; }
  }
}

@media (max-width:639px) {
  @layer components {
    .anva-data-toolbar { grid-template-columns:1fr; }
    .anva-data-toolbar__field:first-child,.anva-data-toolbar__actions { grid-column:auto; }
    .anva-data-toolbar__actions { display:grid; grid-template-columns:1fr 1fr; }
    .anva-data-toolbar__actions > * { inline-size:100%; }
    .anva-data-pagination { align-items:stretch; flex-direction:column; }
    .anva-data-pagination__controls { justify-content:space-between; }
    .anva-data-pagination__pages { justify-content:center; }
    .anva-contact-link > span { white-space:normal; overflow-wrap:anywhere; }
  }
}
