/* Demo shell: a minimal stand-in for @ux-sting/themes tokens. */
:root {
  color-scheme: light dark;
  --ui-background: oklch(0.99 0 0);
  --ui-foreground: oklch(0.22 0.01 260);
  --ui-surface: oklch(1 0 0);
  --ui-muted: oklch(0.95 0.005 260);
  --ui-muted-foreground: oklch(0.45 0.01 260);
  --ui-border: oklch(0.88 0.01 260);
  --ui-primary: oklch(0.5 0.17 255);
  --ui-primary-foreground: oklch(0.99 0 0);
  --ui-radius: 0.625rem;
  --ui-duration-fast: 120ms;
  --ui-duration-normal: 200ms;
  --ui-duration-slow: 300ms;
  --ui-duration-slower: 450ms;
  --ui-duration-exit-normal: 130ms;
  --ui-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --ui-ease-emphasized: cubic-bezier(0.3, 0, 0, 1.2);
  --ui-ease-in: cubic-bezier(0.4, 0, 1, 1);
  --ui-ease-out: cubic-bezier(0, 0, 0.2, 1);
}
@media (prefers-color-scheme: dark) {
  :root {
    --ui-background: oklch(0.18 0.01 260);
    --ui-foreground: oklch(0.95 0.005 260);
    --ui-surface: oklch(0.22 0.01 260);
    --ui-muted: oklch(0.26 0.01 260);
    --ui-muted-foreground: oklch(0.75 0.01 260);
    --ui-border: oklch(0.34 0.01 260);
    --ui-primary: oklch(0.72 0.14 255);
    --ui-primary-foreground: oklch(0.18 0.01 260);
  }
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  font:
    1rem/1.5 system-ui,
    sans-serif;
  background: var(--ui-background);
  color: var(--ui-foreground);
}
main {
  max-inline-size: 40rem;
  margin-inline: auto;
  padding: 2rem 1rem 4rem;
}
h1 {
  font-size: 1.75rem;
  line-height: 1.2;
  margin-block: 0.5rem 0.25rem;
}
p {
  color: var(--ui-muted-foreground);
  margin-block: 0 1rem;
}
a {
  color: var(--ui-primary);
}
.bar {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
  margin-block: 1rem;
}
button {
  font: inherit;
  padding-block: 0.5rem;
  padding-inline: 0.875rem;
  border-radius: var(--ui-radius);
  border: 1px solid var(--ui-border);
  background: var(--ui-surface);
  color: var(--ui-foreground);
  cursor: pointer;
}
button.primary {
  background: var(--ui-primary);
  color: var(--ui-primary-foreground);
  border-color: transparent;
}
button:focus-visible,
summary:focus-visible,
a:focus-visible {
  outline: 2px solid var(--ui-primary);
  outline-offset: 2px;
}
.panel {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius);
  padding: 1rem;
}
.stage {
  margin-block: 1.5rem;
}
code {
  font-size: 0.875em;
}
nav.back {
  font-size: 0.875rem;
}
.list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.5rem;
}
.list li {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}
