/* Neutral tokens derived from ng0x-common 0.8.0; see PROVENANCE.md. No Angular runtime. */
:root {
  --hon0x-color-background: #f6f8fb;
  --hon0x-color-surface: #ffffff;
  --hon0x-color-surface-muted: #f1f5f9;
  --hon0x-color-text: #172033;
  --hon0x-color-text-muted: #596980;
  --hon0x-color-border: #cbd5e1;
  --hon0x-color-action: #125e54;
  --hon0x-color-action-contrast: #ffffff;
  --hon0x-color-focus: #125e54;
  --hon0x-color-neutral: #475569;
  --hon0x-color-neutral-subtle: #eef2f7;
  --hon0x-color-info: #1d4ed8;
  --hon0x-color-info-subtle: #dbeafe;
  --hon0x-color-success: #166534;
  --hon0x-color-success-subtle: #dcfce7;
  --hon0x-color-warning: #92400e;
  --hon0x-color-warning-subtle: #fef3c7;
  --hon0x-color-danger: #b42318;
  --hon0x-color-danger-subtle: #fee4e2;
  --hon0x-radius-sm: 6px;
  --hon0x-radius-md: 8px;
  --hon0x-space-1: 0.25rem;
  --hon0x-space-2: 0.5rem;
  --hon0x-space-3: 0.75rem;
  --hon0x-space-4: 1rem;
  --hon0x-space-6: 1.5rem;
  --hon0x-space-8: 2rem;
  --hon0x-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; line-height: 1.5; }
button, input, select, textarea { font: inherit; }
img { max-width: 100%; height: auto; }
.hon0x-page { background: var(--hon0x-color-background); color: var(--hon0x-color-text); font-family: var(--hon0x-font-family); }
a { color: var(--hon0x-color-action); text-underline-offset: 0.2em; }
:focus-visible { outline: 3px solid var(--hon0x-color-focus); outline-offset: 3px; }
.hon0x-skip-link { position: fixed; inset-block-start: -8rem; inset-inline-start: 1rem; z-index: 10; padding: 1rem; background: var(--hon0x-color-surface); }
.hon0x-skip-link:focus { inset-block-start: 1rem; }
.hon0x-header { padding: var(--hon0x-space-4) max(var(--hon0x-space-4), calc((100vw - 72rem) / 2)); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--hon0x-space-4); background: var(--hon0x-color-surface); border-block-end: 1px solid var(--hon0x-color-border); }
.hon0x-brand { display: inline-flex; align-items: center; gap: var(--hon0x-space-3); color: var(--hon0x-color-text); font-size: 1.125rem; font-weight: 700; text-decoration: none; }
.hon0x-brand img { object-fit: contain; width: 40px; height: 40px; }
.hon0x-nav { display: flex; gap: var(--hon0x-space-4); flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.hon0x-nav a[aria-current='page'] { font-weight: 700; }
.hon0x-main { max-width: 72rem; margin-inline: auto; padding: var(--hon0x-space-8) var(--hon0x-space-4); }
.hon0x-main h1 { margin-block: 0 var(--hon0x-space-6); font-size: clamp(1.65rem, 4vw, 2.5rem); line-height: 1.2; }
.hon0x-card { padding: var(--hon0x-space-6); background: var(--hon0x-color-surface); border: 1px solid var(--hon0x-color-border); border-radius: var(--hon0x-radius-md); }
.hon0x-stack { display: grid; gap: var(--hon0x-space-4); }
.hon0x-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: var(--hon0x-space-4); }
.hon0x-inline, .hon0x-form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--hon0x-space-3); }
.hon0x-form-actions { margin-block-start: var(--hon0x-space-4); }
.hon0x-field { display: grid; gap: var(--hon0x-space-2); }
.hon0x-field label { font-size: 0.875rem; font-weight: 600; }
.hon0x-input { width: 100%; padding: 0.65rem 0.75rem; border: 1px solid var(--hon0x-color-neutral); border-radius: var(--hon0x-radius-sm); background: var(--hon0x-color-surface); color: var(--hon0x-color-text); min-height: 44px; }
textarea.hon0x-input { resize: vertical; }
input[type='checkbox'].hon0x-input, input[type='radio'].hon0x-input { width: auto; min-height: auto; }
.hon0x-input[aria-invalid='true'] { border-color: var(--hon0x-color-danger); }
.hon0x-input:disabled { background: var(--hon0x-color-surface-muted); }
.hon0x-field__hint, .hon0x-field__error { margin: 0; font-size: 0.875rem; }
.hon0x-field__hint { color: var(--hon0x-color-text-muted); }
.hon0x-field__error { color: var(--hon0x-color-danger); }
.hon0x-button { display: inline-flex; align-items: center; justify-content: center; gap: var(--hon0x-space-2); padding: 0.65rem 1rem; min-height: 44px; border: 1px solid transparent; border-radius: var(--hon0x-radius-sm); font-weight: 600; text-decoration: none; cursor: pointer; }
.hon0x-button--primary { background: var(--hon0x-color-action); color: var(--hon0x-color-action-contrast); }
.hon0x-button--secondary { background: var(--hon0x-color-surface); color: var(--hon0x-color-action); border-color: var(--hon0x-color-action); }
.hon0x-button--danger { background: var(--hon0x-color-danger); color: #fff; }
.hon0x-button:disabled { opacity: 0.6; cursor: default; }
.hon0x-alert { padding: var(--hon0x-space-4); border: 1px solid currentColor; border-radius: var(--hon0x-radius-sm); }
.hon0x-alert--info { color: var(--hon0x-color-info); background: var(--hon0x-color-info-subtle); }
.hon0x-alert--success { color: var(--hon0x-color-success); background: var(--hon0x-color-success-subtle); }
.hon0x-alert--error { color: var(--hon0x-color-danger); background: var(--hon0x-color-danger-subtle); }
.hon0x-badge { display: inline-block; padding: 0.15rem 0.5rem; border-radius: 999px; font-size: 0.8125rem; font-weight: 600; }
.hon0x-badge--neutral { color: var(--hon0x-color-neutral); background: var(--hon0x-color-neutral-subtle); }
.hon0x-badge--info { color: var(--hon0x-color-info); background: var(--hon0x-color-info-subtle); }
.hon0x-badge--success { color: var(--hon0x-color-success); background: var(--hon0x-color-success-subtle); }
.hon0x-badge--warning { color: var(--hon0x-color-warning); background: var(--hon0x-color-warning-subtle); }
.hon0x-badge--danger { color: var(--hon0x-color-danger); background: var(--hon0x-color-danger-subtle); }
.hon0x-empty-state { text-align: center; padding: var(--hon0x-space-8); color: var(--hon0x-color-text-muted); border: 1px dashed var(--hon0x-color-border); border-radius: var(--hon0x-radius-md); }
.hon0x-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--hon0x-space-4); padding-block: var(--hon0x-space-4); }
.hon0x-pagination [aria-disabled='true'] { color: var(--hon0x-color-text-muted); }
.hon0x-table { width: 100%; border-collapse: collapse; text-align: start; }
.hon0x-table th, .hon0x-table td { padding: var(--hon0x-space-3); border-block-end: 1px solid var(--hon0x-color-border); }
.hon0x-table th { font-weight: 600; }
@media (max-width: 40rem) { .hon0x-card { padding: var(--hon0x-space-4); } .hon0x-header { align-items: flex-start; } }
