.ui-page-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 1.5rem; margin-bottom: 1.5rem; }
.ui-page-title { margin: 0 0 .375rem; }
.ui-page-description { color: var(--ui-text-muted); margin: 0; max-width: 65ch; }
.ui-page-eyebrow { color: var(--ui-text-tertiary); font-size: .75rem; font-weight: 500; margin: 0 0 .375rem; }
.ui-page-header .ui-status { margin-top: .5rem; }
.ui-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.ui-icon-button { display: inline-flex; align-items: center; justify-content: center; width: 2.75rem; min-height: 2.75rem; padding: .625rem; border: 1px solid var(--ui-line); border-radius: var(--ui-radius-control); background: var(--ui-surface); color: var(--ui-text); cursor: pointer; }
.ui-menu-dialog .ui-icon-button { background: transparent; border-color: rgb(255 255 255 / 32%); color: #fff; }
.ui-icon-button:hover { background: var(--ui-surface-subtle); }
.ui-menu-dialog .ui-icon-button:hover { background: rgb(255 255 255 / 10%); }
.ui-section-heading { margin-bottom: 1rem; }
.ui-section-heading h2 { margin: 0 0 .25rem; }
.ui-section-heading p { color: var(--ui-text-muted); font-size: .875rem; margin: 0; }
.ui-button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: .5rem;
    min-height: 2.5rem;
    padding: .5rem .875rem;
    border: 1px solid var(--ui-control-border);
    border-radius: var(--ui-radius-control);
    background: var(--ui-surface);
    color: var(--ui-text);
    font-size: .875rem;
    font-weight: 500;
    line-height: 1.3;
    text-decoration: none;
    cursor: pointer;
    transition: background-color var(--ui-motion-fast), border-color var(--ui-motion-fast), color var(--ui-motion-fast);
}
.ui-button:hover { color: var(--ui-text); background: var(--ui-surface-subtle); border-color: var(--ui-text-muted); }
.ui-button:active { background: var(--ui-line); }
.ui-button--primary { background: var(--ui-action); border-color: var(--ui-action); color: #fff; }
.ui-button--primary:hover { background: var(--ui-action-hover); border-color: var(--ui-action-hover); color: #fff; }
.ui-button--primary:active { background: var(--ui-action-pressed); }
.ui-button--tertiary { background: transparent; border-color: transparent; color: var(--ui-action); }
.ui-button--danger { color: var(--ui-danger); border-color: var(--ui-danger); }
.ui-button--danger:hover { background: var(--ui-danger-bg); color: var(--ui-danger); border-color: var(--ui-danger); }
.ui-button--small { min-height: 2rem; padding: .375rem .625rem; font-size: .8125rem; }
.ui-button:disabled, .ui-button[aria-disabled="true"] { opacity: .65; cursor: default; }
.ui-button--wide { width: 100%; }
.ui-status { display: inline-flex; align-items: center; min-height: 1.5rem; padding: .1875rem .5rem; border-radius: var(--ui-radius-small); color: var(--ui-neutral); background: var(--ui-neutral-bg); font-size: .75rem; font-weight: 500; line-height: 1.25; white-space: nowrap; }
.ui-status--info { color: var(--ui-info); background: var(--ui-info-bg); }
.ui-status--success { color: var(--ui-success); background: var(--ui-success-bg); }
.ui-status--warning { color: var(--ui-warning); background: var(--ui-warning-bg); }
.ui-status--danger { color: var(--ui-danger); background: var(--ui-danger-bg); }
.ui-alert { border: 1px solid var(--ui-line); border-left: 3px solid var(--ui-neutral); border-radius: var(--ui-radius-control); background: var(--ui-neutral-bg); color: var(--ui-neutral); padding: .875rem 1rem; margin-bottom: 1rem; }
.ui-alert p:last-child { margin-bottom: 0; }
.ui-alert-title { display: block; font-weight: 600; margin-bottom: .25rem; }
.ui-alert--info { color: var(--ui-info); background: var(--ui-info-bg); border-left-color: var(--ui-info); }
.ui-alert--success { color: var(--ui-success); background: var(--ui-success-bg); border-left-color: var(--ui-success); }
.ui-alert--warning { color: var(--ui-warning); background: var(--ui-warning-bg); border-left-color: var(--ui-warning); }
.ui-alert--danger { color: var(--ui-danger); background: var(--ui-danger-bg); border-left-color: var(--ui-danger); }
.ui-messages { list-style: none; margin: 0 0 1.5rem; padding: 0; }
.ui-empty { padding: 2rem 1.5rem; border-block: 1px solid var(--ui-line); color: var(--ui-text-muted); }
.ui-empty h2, .ui-empty h3 { font-size: 1.125rem; margin: 0 0 .5rem; }
.ui-empty p { max-width: 65ch; margin: 0 0 1rem; }
.ui-field { display: grid; gap: .375rem; min-width: 0; margin: 0; align-content: start; }
.ui-field-label, .ui-fieldset legend { margin: 0; font-size: .875rem; font-weight: 500; }
.ui-required { color: var(--ui-danger); }
.ui-field-required { color: var(--ui-text-muted); font-size: .8125rem; font-weight: 400; margin-left: .25rem; }
.ui-control {
    width: 100%;
    min-height: 2.5rem;
    border: 1px solid var(--ui-control-border);
    border-radius: var(--ui-radius-control);
    padding: .5rem .625rem;
    background-color: var(--ui-surface);
    color: var(--ui-text);
    font-size: .9375rem;
    line-height: 1.4;
}
.ui-control::placeholder { color: var(--ui-text-tertiary); opacity: 1; }
textarea.ui-control { min-height: 7rem; resize: vertical; }
.ui-control:focus, .ui-control:focus-visible { border-color: var(--ui-focus); outline: 2px solid var(--ui-focus); outline-offset: 2px; box-shadow: none; }
.ui-control:disabled { background-color: var(--ui-surface-subtle); color: var(--ui-text-muted); cursor: default; }
.ui-control[aria-invalid="true"] { border-color: var(--ui-danger); }
.ui-field-help { font-size: .8125rem; line-height: 1.4; color: var(--ui-text-muted); }
.ui-field-help p:last-child { margin: 0; }
.ui-field-errors { list-style: none; padding: 0; margin: 0; color: var(--ui-danger); font-size: .8125rem; }
.ui-field-errors li { margin-top: .25rem; }
.ui-check-row { display: flex; align-items: flex-start; gap: .625rem; min-height: 2.5rem; padding-block: .5rem; }
.ui-check-row input, input.ui-check, input.ui-control[type="checkbox"], input.ui-control[type="radio"] { width: 1.125rem; height: 1.125rem; min-height: 0; padding: 0; margin: .125rem 0 0; flex: 0 0 auto; accent-color: var(--ui-action); }
.ui-field input[type="checkbox"], .ui-field input[type="radio"] { width: 1.125rem; height: 1.125rem; min-height: 0; padding: 0; accent-color: var(--ui-action); }
.ui-fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.ui-fieldset legend { width: auto; float: none; margin-bottom: .5rem; }
.ui-fieldset .ui-control { width: auto; }
.ui-fieldset input[type="radio"], .ui-fieldset input[type="checkbox"] { width: 1.125rem; min-height: 0; margin-right: .5rem; accent-color: var(--ui-action); }
.ui-fieldset label { font-size: .875rem; font-weight: 400; display: inline-flex; align-items: center; min-height: 2rem; }
.ui-form-errors { padding: 1rem; border: 1px solid var(--ui-danger); border-left-width: 3px; border-radius: var(--ui-radius-control); color: var(--ui-danger); background: var(--ui-danger-bg); margin-bottom: 1.5rem; }
.ui-form-errors h2 { font-size: 1rem; color: inherit; margin-bottom: .5rem; }
.ui-form-errors ul { margin: 0; padding-left: 1.25rem; }
.ui-form-errors a { color: inherit; }
.ui-form { max-width: 60rem; }
.ui-form-layout { max-width: 60rem; }
.ui-form-layout > .ui-actions { margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid var(--ui-line); }
.ui-section { margin-bottom: 2rem; min-width: 0; }
.ui-section-title { margin: 0 0 .5rem; }
.ui-section-description { color: var(--ui-text-muted); max-width: 65ch; margin-bottom: 1.5rem; }
.ui-stack { display: grid; gap: 1rem; min-width: 0; }
.ui-stack > .ui-alert { margin: 0; }
.ui-demo-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.ui-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1.5rem; }
.ui-form-section { padding: 1.5rem 0; border-top: 1px solid var(--ui-line); }
.ui-form-section h2 { margin-bottom: 1.25rem; }
.ui-form-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: .5rem; padding-top: 1.5rem; border-top: 1px solid var(--ui-line); margin-top: 1.5rem; }
.ui-table-scroll { min-width: 0; max-width: 100%; overflow-x: auto; background: var(--ui-surface); border-block: 1px solid var(--ui-line); }
.ui-table-scroll:focus-visible { outline-offset: 2px; }
.ui-table { width: 100%; border-collapse: collapse; background: var(--ui-surface); font-size: var(--ui-type-table); line-height: 1.4; font-variant-numeric: tabular-nums; }
.ui-table caption { padding: .75rem 1rem; color: var(--ui-text-muted); font-size: .8125rem; caption-side: top; text-align: left; }
.ui-table th, .ui-table td { text-align: left; vertical-align: middle; padding: .625rem 1rem; border-bottom: 1px solid var(--ui-line); }
.ui-table th { font-weight: 500; color: var(--ui-text-muted); background: var(--ui-surface-subtle); font-size: .8125rem; }
.ui-table tbody th { background: transparent; color: var(--ui-text); font-size: .875rem; }
.ui-table tbody tr:last-child td { border-bottom: 0; }
.ui-table tbody tr:last-child th { border-bottom: 0; }
.ui-table tbody tr:hover, .ui-table tbody tr:focus-within { background: #f5f9fc; }
.ui-table .ui-cell-number { text-align: right; }
.ui-table .ui-numeric { text-align: right; }
.ui-table .ui-cell-actions { text-align: right; white-space: nowrap; }
.ui-table a { font-weight: 500; text-decoration: none; }
.ui-table a:hover { text-decoration: underline; }
.ui-cell-secondary { display: block; font-size: .8125rem; color: var(--ui-text-muted); font-weight: 400; margin-top: .125rem; }
.ui-table-secondary { display: block; font-size: .8125rem; color: var(--ui-text-muted); font-weight: 400; margin-top: .125rem; }
.ui-table-description { color: var(--ui-text-muted); font-size: .8125rem; margin: 0; }
.ui-table-compact th, .ui-table-compact td { padding-block: .5rem; }
.ui-table-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: 1rem; }
.ui-filters { border-top: 1px solid var(--ui-line); padding: 1rem 0; }
.ui-filter-form { display: flex; flex-wrap: wrap; gap: 1rem; align-items: flex-end; border-top: 1px solid var(--ui-line); padding: 1rem 0; }
.ui-filter-fields { display: flex; flex-wrap: wrap; gap: .75rem; flex: 1 1 28rem; }
.ui-filter-fields .ui-field { flex: 1 1 10rem; }
.ui-filter-controls { display: flex; flex-wrap: wrap; gap: .75rem; align-items: flex-end; }
.ui-filter-controls .ui-field { flex: 1 1 10rem; }
.ui-filter-controls .ui-filter-search { flex: 2 1 16rem; }
.ui-filter-state { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; color: var(--ui-text-muted); font-size: .8125rem; margin-top: .75rem; }
.ui-filter-state a { display: inline-flex; gap: .5rem; align-items: center; padding: .375rem .625rem; background: var(--ui-surface); border: 1px solid var(--ui-line); border-radius: var(--ui-radius-small); text-decoration: none; }
.ui-active-filters { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin: 0 0 1rem; padding: 0; list-style: none; font-size: .8125rem; color: var(--ui-text-muted); }
.ui-active-filters ul { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; list-style: none; margin: 0; padding: 0; }
.ui-active-filters li { display: inline-flex; align-items: center; gap: .5rem; padding: .125rem .625rem; border: 1px solid var(--ui-line); border-radius: var(--ui-radius-small); background: var(--ui-surface); }
.ui-active-filters li .ui-filter-value { min-height: 0; border: 0; padding: 0; font-weight: 500; }
.ui-active-filters li a { min-height: 2rem; display: inline-flex; align-items: center; }
.ui-filter-value { display: inline-flex; gap: .375rem; align-items: center; padding: .375rem .625rem; border: 1px solid var(--ui-line); border-radius: var(--ui-radius-small); background: var(--ui-surface); text-decoration: none; min-height: 2rem; }
.ui-filter-advanced { flex: 0 1 auto; }
.ui-filter-advanced > summary { display: list-item; min-height: 2.5rem; padding: .625rem .875rem; border: 1px solid var(--ui-control-border); border-radius: var(--ui-radius-control); background: var(--ui-surface); color: var(--ui-action); cursor: pointer; font-size: .875rem; }
.ui-filter-advanced[open] { flex-basis: 100%; }
.ui-filter-advanced[open] .ui-filter-fields { padding-top: 1rem; }
.ui-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; padding: 1rem 0; font-size: .875rem; color: var(--ui-text-muted); }
.ui-pagination-links { display: flex; gap: .5rem; align-items: center; }
.ui-pagination-pages { display: flex; gap: .25rem; align-items: center; list-style: none; margin: 0; padding: 0; }
.ui-pagination-pages a, .ui-pagination-pages span { display: grid; place-items: center; min-width: 2rem; min-height: 2rem; padding: .375rem; border-radius: var(--ui-radius-small); }
.ui-pagination-pages [aria-current="page"] { color: var(--ui-info); background: var(--ui-info-bg); font-weight: 600; }
.ui-semantic-rows { margin: 0; display: grid; gap: 0; }
.ui-semantic-row { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(0, 2fr); gap: 1rem; padding: .75rem 0; border-bottom: 1px solid var(--ui-line); }
.ui-semantic-row dt { font-size: .875rem; font-weight: 400; color: var(--ui-text-muted); }
.ui-semantic-row dd { margin: 0; overflow-wrap: anywhere; }
.ui-document-list { list-style: none; padding: 0; margin: 0; }
.ui-document-row { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--ui-line); }
.ui-document-name { font-weight: 500; overflow-wrap: anywhere; }
.ui-document-meta { color: var(--ui-text-muted); font-size: .8125rem; }
.ui-document-identity { min-width: 0; }
.ui-document-identity strong { font-weight: 500; overflow-wrap: anywhere; }
.ui-document-meta { display: block; margin-top: .25rem; }
.ui-loading { display: flex; align-items: center; gap: .75rem; font-size: .875rem; color: var(--ui-text-muted); }
.ui-progress { width: 100%; display: grid; gap: .5rem; }
.ui-progress progress { width: 100%; height: .375rem; accent-color: var(--ui-action); }
.ui-progress-label { font-size: .875rem; font-weight: 500; }
.ui-progress .ui-field-help { margin: 0; }
details.ui-disclosure { border-block: 1px solid var(--ui-line); padding: .75rem 0; }
details.ui-disclosure > summary { cursor: pointer; color: var(--ui-action); font-weight: 500; min-height: 2rem; }
details.ui-disclosure[open] > summary { margin-bottom: 1rem; }
.ui-dialog { max-width: min(36rem, calc(100vw - 2rem)); border: 1px solid var(--ui-line); border-radius: var(--ui-radius-overlay); padding: 1.5rem; background: var(--ui-surface); color: var(--ui-text); box-shadow: var(--ui-shadow-overlay); }
.ui-dialog::backdrop { background: rgb(17 46 73 / 42%); }
.ui-dialog-actions { display: flex; justify-content: flex-end; gap: .5rem; margin-top: 1.5rem; }
@media (max-width: 767px) {
    .ui-demo-columns { grid-template-columns: minmax(0, 1fr); }
    .ui-page-header { flex-direction: column; gap: 1rem; }
    .ui-form-grid { grid-template-columns: minmax(0, 1fr); }
    .ui-form-actions { justify-content: stretch; }
    .ui-form-actions .ui-button { flex: 1 1 auto; }
    .ui-semantic-row { grid-template-columns: minmax(0, 1fr); gap: .25rem; }
    .ui-document-row { align-items: flex-start; flex-direction: column; gap: .75rem; }
}
@media (max-width: 479px) {
    .ui-button, .ui-control, .ui-check-row, .ui-fieldset label { min-height: 2.75rem; }
    .ui-fieldset input[type="radio"], .ui-fieldset input[type="checkbox"] { min-height: 0; }
    .ui-filter-controls > .ui-actions { width: 100%; }
    .ui-table th, .ui-table td { padding: .75rem; }
}
