/* Generated from palettes.json by scripts/verify-ui-ux.mjs --write-tokens. */
.ui-kit {
  --ui-bg: #F8FAFC;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #334155;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #E2E8F0;
  --ui-space-1: .25rem;
  --ui-space-2: .5rem;
  --ui-space-3: .75rem;
  --ui-space-4: 1rem;
  --ui-space-6: 1.5rem;
  --ui-space-8: 2rem;
  --ui-font-body-size: 1rem;
  --ui-font-help-size: .9rem;
  --ui-control-min-size: 2.75rem;
  --ui-control-radius: .5rem;
  --ui-border-width: 1px;
  --ui-focus-width: 3px;
  --ui-radius: .75rem;
  --ui-fast: 140ms;
  --ui-ease: cubic-bezier(.2, 0, 0, 1);
  color-scheme: light;
  color: var(--ui-text);
  background: var(--ui-bg);
  font-family: system-ui, sans-serif;
  line-height: 1.65;
}
.ui-kit[data-palette="ink"][data-mode="light"] {
  --ui-bg: #F8FAFC;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #334155;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #E2E8F0;
}
.ui-kit[data-palette="ink"][data-mode="dark"] {
  --ui-bg: #0F172A;
  --ui-surface: #172033;
  --ui-text: #F1F5F9;
  --ui-muted: #CBD5E1;
  --ui-border: #94A3B8;
  --ui-primary: #CBD5E1;
  --ui-on-primary: #0F172A;
  --ui-accent: #293548;
}
.ui-kit[data-palette="blue"][data-mode="light"] {
  --ui-bg: #EFF6FF;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #1D4ED8;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #DBEAFE;
}
.ui-kit[data-palette="blue"][data-mode="dark"] {
  --ui-bg: #0F172A;
  --ui-surface: #172033;
  --ui-text: #F1F5F9;
  --ui-muted: #CBD5E1;
  --ui-border: #94A3B8;
  --ui-primary: #93C5FD;
  --ui-on-primary: #0F172A;
  --ui-accent: #1E3655;
}
.ui-kit[data-palette="forest"][data-mode="light"] {
  --ui-bg: #F0FDF4;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #166534;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #DCFCE7;
}
.ui-kit[data-palette="forest"][data-mode="dark"] {
  --ui-bg: #0F172A;
  --ui-surface: #172033;
  --ui-text: #F1F5F9;
  --ui-muted: #CBD5E1;
  --ui-border: #94A3B8;
  --ui-primary: #86EFAC;
  --ui-on-primary: #0F172A;
  --ui-accent: #183B32;
}
.ui-kit[data-palette="plum"][data-mode="light"] {
  --ui-bg: #F5F3FF;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #6D28D9;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #EDE9FE;
}
.ui-kit[data-palette="plum"][data-mode="dark"] {
  --ui-bg: #0F172A;
  --ui-surface: #172033;
  --ui-text: #F1F5F9;
  --ui-muted: #CBD5E1;
  --ui-border: #94A3B8;
  --ui-primary: #C4B5FD;
  --ui-on-primary: #0F172A;
  --ui-accent: #342650;
}
.ui-kit[data-palette="clay"][data-mode="light"] {
  --ui-bg: #FFF7ED;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #9A3412;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #FFEDD5;
}
.ui-kit[data-palette="clay"][data-mode="dark"] {
  --ui-bg: #0F172A;
  --ui-surface: #172033;
  --ui-text: #F1F5F9;
  --ui-muted: #CBD5E1;
  --ui-border: #94A3B8;
  --ui-primary: #FDBA74;
  --ui-on-primary: #0F172A;
  --ui-accent: #462F29;
}
.ui-kit[data-palette="teal"][data-mode="light"] {
  --ui-bg: #F0FDFA;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #115E59;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #CCFBF1;
}
.ui-kit[data-palette="teal"][data-mode="dark"] {
  --ui-bg: #0F172A;
  --ui-surface: #172033;
  --ui-text: #F1F5F9;
  --ui-muted: #CBD5E1;
  --ui-border: #94A3B8;
  --ui-primary: #5EEAD4;
  --ui-on-primary: #0F172A;
  --ui-accent: #153D40;
}
.ui-kit[data-palette="rose"][data-mode="light"] {
  --ui-bg: #FFF1F2;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #9F1239;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #FFE4E6;
}
.ui-kit[data-palette="rose"][data-mode="dark"] {
  --ui-bg: #0F172A;
  --ui-surface: #172033;
  --ui-text: #F1F5F9;
  --ui-muted: #CBD5E1;
  --ui-border: #94A3B8;
  --ui-primary: #FDA4AF;
  --ui-on-primary: #0F172A;
  --ui-accent: #452736;
}
.ui-kit[data-palette="amber"][data-mode="light"] {
  --ui-bg: #FFFBEB;
  --ui-surface: #FFFFFF;
  --ui-text: #0F172A;
  --ui-muted: #475569;
  --ui-border: #64748B;
  --ui-primary: #854D0E;
  --ui-on-primary: #FFFFFF;
  --ui-accent: #FEF3C7;
}
.ui-kit[data-palette="amber"][data-mode="dark"] {
  --ui-bg: #0F172A;
  --ui-surface: #172033;
  --ui-text: #F1F5F9;
  --ui-muted: #CBD5E1;
  --ui-border: #94A3B8;
  --ui-primary: #FDE68A;
  --ui-on-primary: #0F172A;
  --ui-accent: #423B24;
}
.ui-kit:not([data-mode="dark"]) {
  --ui-success: #166534;
  --ui-warning: #854D0E;
  --ui-danger: #9F1239;
  color-scheme: light;
}
.ui-kit[data-mode="dark"] {
  --ui-success: #86EFAC;
  --ui-warning: #FDE68A;
  --ui-danger: #FDA4AF;
  color-scheme: dark;
}

.ui-kit, .ui-kit * { box-sizing: border-box; }
.ui-kit :is(button, input, select, textarea) { font: inherit; }
.ui-kit :is(input, select, textarea) {
  color: var(--ui-text); background: var(--ui-surface);
  border: var(--ui-border-width) solid var(--ui-border); border-radius: var(--ui-control-radius);
  min-block-size: var(--ui-control-min-size); max-inline-size: 100%; padding: .6rem var(--ui-space-3);
}
.ui-kit input::placeholder { color: var(--ui-muted); opacity: 1; }
.ui-kit :is(button, a, input, select, textarea, summary):focus-visible {
  outline: var(--ui-focus-width) solid var(--ui-primary); outline-offset: var(--ui-focus-width);
}
.ui-kit .ui-button {
  display: inline-flex; justify-content: center; align-items: center;
  min-block-size: var(--ui-control-min-size); max-inline-size: 100%; padding: .6rem var(--ui-space-4); cursor: pointer;
  white-space: normal; overflow-wrap: anywhere;
  border: var(--ui-border-width) solid var(--ui-border); border-radius: var(--ui-control-radius);
  color: var(--ui-text); background: var(--ui-surface); font-weight: 600;
}
.ui-kit .ui-button-primary {
  background: var(--ui-primary); color: var(--ui-on-primary); border-color: var(--ui-primary);
}
.ui-kit .ui-button:disabled { cursor: not-allowed; opacity: .65; }
.ui-kit .ui-button:not(:disabled):active { transform: translateY(1px); }
.ui-kit .ui-muted { color: var(--ui-muted); }
.ui-kit .ui-error { color: var(--ui-danger); }
.ui-kit .ui-success { color: var(--ui-success); }
.ui-kit .ui-surface { background: var(--ui-surface); border: var(--ui-border-width) solid var(--ui-border); }
@media (prefers-reduced-motion: reduce) {
  .ui-kit .ui-button:not(:disabled):active { transform: none; }
}
