/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-50: oklch(97.1% 0.013 17.38);
    --color-red-200: oklch(88.5% 0.062 18.334);
    --color-red-800: oklch(44.4% 0.177 26.899);
    --color-green-50: oklch(98.2% 0.018 155.826);
    --color-green-200: oklch(92.5% 0.084 155.995);
    --color-green-800: oklch(44.8% 0.119 151.328);
    --color-emerald-500: oklch(69.6% 0.17 162.48);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-lg: 32rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --tracking-tight: -0.025em;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --leading-snug: 1.375;
    --radius-sm: 0.25rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --radius-xl: 1rem;
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --space-breath: 0.5rem;
    --space-comfort: 1rem;
    --space-generous: 1.5rem;
    --space-luxurious: 3rem;
    --motion-instant: 50ms;
    --motion-micro: 150ms;
    --motion-gentle: 300ms;
    --motion-deliberate: 500ms;
    --ease-natural: cubic-bezier(0.4, 0, 0.2, 1);
    --font-family-sans: "Noto Sans", "Aptos", "Segoe UI", system-ui, sans-serif;
    --font-family-mono: "JetBrains Mono", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;
    --tone-loud: 600;
    --tone-calm: 400;
    --tone-whisper: 500;
    --elevation-raised: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --elevation-floating: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --elevation-modal: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --brand-primary: oklch(52% 0.06 220);
    --brand-accent: oklch(65% 0.05 220);
    --brand-midnight: oklch(28% 0.03 220);
    --brand-hue: 220;
    --brand-chroma: 0.04;
    --color-accent: oklch(48% 0.13 220);
    --color-accent-subtle: oklch(95% 0.04 220);
    --color-primary-500: var(--brand-primary);
    --color-primary-600: oklch(38% 0.04 220);
    --semantic-success-hue: 155;
    --semantic-success-chroma: 0.15;
    --semantic-success-core: oklch(61% 0.15 155);
    --semantic-warning-hue: 55;
    --semantic-warning-chroma: 0.17;
    --semantic-warning-core: oklch(63% 0.17 55);
    --semantic-error-hue: 25;
    --semantic-error-chroma: 0.19;
    --semantic-error-core: oklch(58% 0.19 25);
    --semantic-info-hue: 210;
    --semantic-info-chroma: 0.10;
    --semantic-info-core: oklch(60% 0.10 210);
    --color-success-300: oklch(78% 0.14 155);
    --color-success-400: oklch(67% 0.15 155);
    --color-success-500: var(--semantic-success-core);
    --color-success-600: oklch(52% 0.14 155);
    --color-success-700: oklch(44% 0.12 155);
    --color-warning-300: oklch(78% 0.15 55);
    --color-warning-400: oklch(68% 0.17 55);
    --color-warning-500: var(--semantic-warning-core);
    --color-warning-600: oklch(54% 0.16 55);
    --color-warning-700: oklch(46% 0.14 55);
    --color-error-50: oklch(97% 0.035 25);
    --color-error-100: oklch(94% 0.07 25);
    --color-error-300: oklch(78% 0.14 25);
    --color-error-400: oklch(67% 0.16 25);
    --color-error-500: var(--semantic-error-core);
    --color-error-600: oklch(50% 0.17 25);
    --color-error-700: oklch(42% 0.15 25);
    --color-info-300: oklch(76% 0.14 210);
    --color-info-400: oklch(66% 0.16 210);
    --color-info-600: oklch(51% 0.10 210);
    --color-info-700: oklch(43% 0.09 210);
    --hover-lift: translateY(-1px);
    --active-press: translateY(1px);
    --focus-glow-width: 3px;
    --chroma-whisper: 0.27;
    --chroma-speak: 0.40;
    --font-size-xs: 0.75rem;
    --font-size-sm: 0.875rem;
    --font-size-base: 1rem;
    --font-size-xl: 1.25rem;
    --shadow-base: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --radius-base: 0.375rem;
    --radius-full: 9999px;
    --color-badge-primary-bg: oklch(95% calc(var(--brand-chroma) * 0.67) var(--brand-hue));
    --color-badge-success-bg: oklch(96% calc(var(--semantic-success-chroma) * var(--chroma-whisper)) var(--semantic-success-hue));
    --color-badge-warning-bg: oklch(97% calc(var(--semantic-warning-chroma) * var(--chroma-whisper)) var(--semantic-warning-hue));
    --color-badge-error-bg: oklch(96% calc(var(--semantic-error-chroma) * var(--chroma-whisper)) var(--semantic-error-hue));
    --color-badge-info-bg: oklch(96% calc(var(--semantic-info-chroma) * var(--chroma-whisper)) var(--semantic-info-hue));
    --color-badge-neutral-bg: oklch(97% 0.02 270);
    --color-badge-primary-text: oklch(38% var(--brand-chroma) var(--brand-hue));
    --color-badge-success-text: oklch(42% calc(var(--semantic-success-chroma) * 0.87) var(--semantic-success-hue));
    --color-badge-warning-text: oklch(43% calc(var(--semantic-warning-chroma) * 0.82) var(--semantic-warning-hue));
    --color-badge-error-text: oklch(45% calc(var(--semantic-error-chroma) * 0.74) var(--semantic-error-hue));
    --color-badge-info-text: oklch(43% calc(var(--semantic-info-chroma) * 0.69) var(--semantic-info-hue));
    --color-badge-neutral-text: oklch(38% 0.02 270);
    --color-badge-primary-ring: oklch(72% calc(var(--brand-chroma) * 0.83) var(--brand-hue));
    --color-badge-success-ring: oklch(75% calc(var(--semantic-success-chroma) * 0.47) var(--semantic-success-hue));
    --color-badge-warning-ring: oklch(75% calc(var(--semantic-warning-chroma) * 0.53) var(--semantic-warning-hue));
    --color-badge-error-ring: oklch(72% calc(var(--semantic-error-chroma) * 0.47) var(--semantic-error-hue));
    --color-badge-info-ring: oklch(72% calc(var(--semantic-info-chroma) * 0.50) var(--semantic-info-hue));
    --color-badge-neutral-ring: oklch(75% 0.02 270);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .start\! {
    inset-inline-start: var(--spacing) !important;
  }
  .end {
    inset-inline-end: var(--spacing);
  }
  .isolate {
    isolation: isolate;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .m-0 {
    margin: calc(var(--spacing) * 0);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-3 {
    margin-block: calc(var(--spacing) * 3);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-3 {
    margin-left: calc(var(--spacing) * 3);
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .size-3 {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .size-5 {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .min-h-svh {
    min-height: 100svh;
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-11 {
    width: calc(var(--spacing) * 11);
  }
  .w-full {
    width: 100%;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-\[12rem\] {
    max-width: 12rem;
  }
  .max-w-lg {
    max-width: var(--container-lg);
  }
  .max-w-xs {
    max-width: var(--container-xs);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .flex-1 {
    flex: 1;
  }
  .flex-auto {
    flex: auto;
  }
  .flex-none {
    flex: none;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .translate-x-0 {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-5 {
    --tw-translate-x: calc(var(--spacing) * 5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-180 {
    rotate: 180deg;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .transform\! {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,) !important;
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .resize {
    resize: both;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .space-y-1 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-6 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-8 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-white\/10 {
    :where(& > :not(:last-child)) {
      border-color: color-mix(in srgb, #fff 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
      }
    }
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-full {
    border-radius: var(--radius-full);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-default {
    border-color: var(--color-border);
  }
  .border-green-200 {
    border-color: var(--color-green-200);
  }
  .border-red-200 {
    border-color: var(--color-red-200);
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-white\/10 {
    border-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .bg-\[var\(--color-surface-secondary\)\] {
    background-color: var(--color-surface-secondary);
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }
  .bg-gray-300 {
    background-color: var(--color-gray-300);
  }
  .bg-green-50 {
    background-color: var(--color-green-50);
  }
  .bg-red-50 {
    background-color: var(--color-red-50);
  }
  .bg-surface-muted {
    background-color: var(--color-surface-muted);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .\!p-1\.5 {
    padding: calc(var(--spacing) * 1.5) !important;
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .font-sans {
    font-family: var(--font-sans);
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .leading-5 {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }
  .text-balance {
    text-wrap: balance;
  }
  .break-all {
    word-break: break-all;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }
  .link {
    color: var(--color-link);
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: all var(--transition-fast);
  }
  .text-\[color\:var\(--color-primary-500\)\] {
    color: var(--color-primary-500);
  }
  .text-green-800 {
    color: var(--color-green-800);
  }
  .text-primary {
    color: var(--color-text-primary);
  }
  .text-red-800 {
    color: var(--color-red-800);
  }
  .text-secondary {
    color: var(--color-text-secondary);
  }
  .text-tertiary {
    color: var(--color-text-tertiary);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .opacity-70 {
    opacity: 70%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-0 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .-outline-offset-1 {
    outline-offset: calc(1px * -1);
  }
  .outline-white\/10 {
    outline-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .\[rdoc-ref\:lib\/racc\/rdoc\/grammar\.en\.rdoc\] {
    rdoc-ref: lib/racc/rdoc/grammar.en.rdoc;
  }
  .ring-inset {
    --tw-ring-inset: inset;
  }
  .peer-checked\:inline {
    &:is(:where(.peer):checked ~ *) {
      display: inline;
    }
  }
  .peer-checked\:bg-emerald-500 {
    &:is(:where(.peer):checked ~ *) {
      background-color: var(--color-emerald-500);
    }
  }
  .after\:absolute {
    &::after {
      content: var(--tw-content);
      position: absolute;
    }
  }
  .after\:top-0\.5 {
    &::after {
      content: var(--tw-content);
      top: calc(var(--spacing) * 0.5);
    }
  }
  .after\:left-0\.5 {
    &::after {
      content: var(--tw-content);
      left: calc(var(--spacing) * 0.5);
    }
  }
  .after\:h-5 {
    &::after {
      content: var(--tw-content);
      height: calc(var(--spacing) * 5);
    }
  }
  .after\:w-5 {
    &::after {
      content: var(--tw-content);
      width: calc(var(--spacing) * 5);
    }
  }
  .after\:rounded-full {
    &::after {
      content: var(--tw-content);
      border-radius: var(--radius-full);
    }
  }
  .after\:bg-white {
    &::after {
      content: var(--tw-content);
      background-color: var(--color-white);
    }
  }
  .after\:shadow {
    &::after {
      content: var(--tw-content);
      --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .after\:transition-transform {
    &::after {
      content: var(--tw-content);
      transition-property: transform, translate, scale, rotate;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
    }
  }
  .after\:duration-200 {
    &::after {
      content: var(--tw-content);
      --tw-duration: 200ms;
      transition-duration: 200ms;
    }
  }
  .after\:content-\[\'\'\] {
    &::after {
      --tw-content: '';
      content: var(--tw-content);
    }
  }
  .peer-checked\:after\:translate-x-5 {
    &:is(:where(.peer):checked ~ *) {
      &::after {
        content: var(--tw-content);
        --tw-translate-x: calc(var(--spacing) * 5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:shadow-xs {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .focus\:ring-1 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-2 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-\[color\:var\(--color-primary-500\)\] {
    &:focus {
      --tw-ring-color: var(--color-primary-500);
    }
  }
  .focus\:ring-offset-2 {
    &:focus {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .focus-visible\:ring-offset-0 {
    &:focus-visible {
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
  }
  .focus-visible\:outline-2 {
    &:focus-visible {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
    }
  }
  .focus-visible\:outline-offset-2 {
    &:focus-visible {
      outline-offset: 2px;
    }
  }
  .disabled\:pointer-events-none {
    &:disabled {
      pointer-events: none;
    }
  }
  .disabled\:opacity-60 {
    &:disabled {
      opacity: 60%;
    }
  }
  .disabled\:hover\:shadow-none {
    &:disabled {
      &:hover {
        @media (hover: hover) {
          --tw-shadow: 0 0 #0000;
          box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
        }
      }
    }
  }
  .has-\[\:checked\]\:border-\[color\:var\(--color-primary-500\)\] {
    &:has(*:is(:checked)) {
      border-color: var(--color-primary-500);
    }
  }
  .has-\[\:checked\]\:bg-\[color\:var\(--color-accent-subtle\)\] {
    &:has(*:is(:checked)) {
      background-color: var(--color-accent-subtle);
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:flex {
    @media (width >= 64rem) {
      display: flex;
    }
  }
  .lg\:min-h-svh {
    @media (width >= 64rem) {
      min-height: 100svh;
    }
  }
  .lg\:w-60 {
    @media (width >= 64rem) {
      width: calc(var(--spacing) * 60);
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-\[minmax\(0\,2fr\)_minmax\(0\,1fr\)\] {
    @media (width >= 64rem) {
      grid-template-columns: minmax(0,2fr) minmax(0,1fr);
    }
  }
  .lg\:grid-cols-\[minmax\(180px\,1fr\)_minmax\(320px\,2fr\)_auto\] {
    @media (width >= 64rem) {
      grid-template-columns: minmax(180px,1fr) minmax(320px,2fr) auto;
    }
  }
  .lg\:flex-col {
    @media (width >= 64rem) {
      flex-direction: column;
    }
  }
  .lg\:items-center {
    @media (width >= 64rem) {
      align-items: center;
    }
  }
  .lg\:justify-end {
    @media (width >= 64rem) {
      justify-content: flex-end;
    }
  }
  .dark\:bg-gray-700 {
    @media (prefers-color-scheme: dark) {
      background-color: var(--color-gray-700);
    }
  }
}
:root {
  --color-background: oklch(98% 0 0);
  --color-surface: oklch(100% 0 0);
  --color-surface-hover: oklch(99% 0 0);
  --color-surface-active: oklch(98% 0 0);
  --color-surface-muted: oklch(96% 0 0);
  --color-surface-subtle: oklch(97.5% 0 0);
  --color-text-primary: oklch(25% 0.02 220);
  --color-text-secondary: oklch(40% 0.02 220);
  --color-text-tertiary: oklch(55% 0.02 220);
  --color-text-disabled: oklch(70% 0.01 220);
  --color-border: oklch(85% 0.02 220);
  --color-border-hover: oklch(75% 0.03 220);
  --color-border-focus: var(--brand-primary);
  --color-divider: oklch(90% 0.01 220);
  --color-link: oklch(48% 0.10 200);
  --color-link-hover: oklch(42% 0.12 200);
  --color-link-visited: oklch(45% 0.08 280);
  --color-button-primary-bg: var(--brand-primary);
  --color-button-primary-bg-hover: oklch(47% 0.06 220);
  --color-button-primary-bg-active: oklch(42% 0.06 220);
  --color-button-primary-text: oklch(97% 0 0);
  --color-button-primary-border: transparent;
  --color-button-secondary-bg: oklch(28% 0.02 220);
  --color-button-secondary-bg-hover: oklch(32% 0.025 220);
  --color-button-secondary-bg-active: oklch(36% 0.03 220);
  --color-button-secondary-text: oklch(95% 0 0);
  --color-button-secondary-border: transparent;
  --color-alert-success-bg: oklch(93% calc(var(--semantic-success-chroma) * var(--chroma-speak)) var(--semantic-success-hue));
  --color-alert-success-border: oklch(82% calc(var(--semantic-success-chroma) * 0.53) var(--semantic-success-hue));
  --color-alert-warning-bg: oklch(93% calc(var(--semantic-warning-chroma) * var(--chroma-speak)) var(--semantic-warning-hue));
  --color-alert-warning-border: oklch(82% calc(var(--semantic-warning-chroma) * 0.53) var(--semantic-warning-hue));
  --color-alert-error-bg: oklch(92% calc(var(--semantic-error-chroma) * 0.37) var(--semantic-error-hue));
  --color-alert-error-border: oklch(81% calc(var(--semantic-error-chroma) * 0.47) var(--semantic-error-hue));
  --color-alert-info-bg: oklch(93% calc(var(--semantic-info-chroma) * 0.31) var(--semantic-info-hue));
  --color-alert-info-border: oklch(82% calc(var(--semantic-info-chroma) * 0.44) var(--semantic-info-hue));
  --color-viz-primary: var(--semantic-info-core);
  --color-viz-success: var(--semantic-success-core);
  --color-viz-warning: var(--semantic-warning-core);
  --color-viz-error: var(--semantic-error-core);
  --color-viz-accent: var(--brand-accent);
  --focus-ring-width: 2px;
  --focus-ring-offset: 2px;
  --focus-ring-color: var(--brand-primary);
  --color-backdrop: oklch(0% 0 0 / 50%);
  --color-scrim: oklch(0% 0 0 / 5%);
  --shadow-input: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --shadow-input-focus-ring: 0 0 0 var(--focus-ring-width) oklch(from var(--color-border-focus) l c h / 0.2);
  --shadow-input-focus-ring-error: 0 0 0 var(--focus-ring-width) oklch(from var(--color-error-500) l c h / 0.2);
  --color-form-success-border: oklch(from var(--color-success-500) l c h / 0.4);
  --color-form-success-bg: oklch(from var(--color-success-500) l c h / 0.05);
  --color-form-error-border: oklch(from var(--color-error-500) l c h / 0.4);
  --color-form-error-bg: oklch(from var(--color-error-500) l c h / 0.05);
}
@media (prefers-color-scheme: dark) {
  :root {
    --color-background: oklch(18% 0 0);
    --color-surface: oklch(22% 0 0);
    --color-surface-hover: oklch(24% 0 0);
    --color-surface-active: oklch(26% 0 0);
    --color-surface-muted: oklch(20% 0 0);
    --color-surface-subtle: oklch(21% 0 0);
    --color-text-primary: oklch(92% 0.015 220);
    --color-text-secondary: oklch(80% 0.015 220);
    --color-text-tertiary: oklch(65% 0.015 220);
    --color-text-disabled: oklch(45% 0.01 220);
    --color-border: oklch(35% 0.02 220);
    --color-border-hover: oklch(45% 0.025 220);
    --color-border-focus: oklch(65% 0.08 220);
    --color-divider: oklch(30% 0.015 220);
    --color-link: oklch(75% 0.08 200);
    --color-link-hover: oklch(80% 0.10 200);
    --color-link-visited: oklch(70% 0.06 280);
    --color-button-primary-bg: oklch(47% 0.06 220);
    --color-button-primary-bg-hover: oklch(52% 0.07 220);
    --color-button-primary-bg-active: oklch(57% 0.08 220);
    --color-button-primary-text: oklch(95% 0 0);
    --color-button-primary-border: transparent;
    --color-button-secondary-bg: oklch(35% 0.02 220);
    --color-button-secondary-bg-hover: oklch(40% 0.025 220);
    --color-button-secondary-bg-active: oklch(45% 0.03 220);
    --color-button-secondary-text: oklch(95% 0 0);
    --color-button-secondary-border: transparent;
    --color-alert-success-bg: oklch(32% calc(var(--semantic-success-chroma) * 0.53) var(--semantic-success-hue));
    --color-alert-success-border: oklch(44% calc(var(--semantic-success-chroma) * 0.67) var(--semantic-success-hue));
    --color-alert-warning-bg: oklch(32% calc(var(--semantic-warning-chroma) * 0.53) var(--semantic-warning-hue));
    --color-alert-warning-border: oklch(44% calc(var(--semantic-warning-chroma) * 0.65) var(--semantic-warning-hue));
    --color-alert-error-bg: oklch(30% calc(var(--semantic-error-chroma) * 0.47) var(--semantic-error-hue));
    --color-alert-error-border: oklch(42% calc(var(--semantic-error-chroma) * 0.58) var(--semantic-error-hue));
    --color-alert-info-bg: oklch(31% calc(var(--semantic-info-chroma) * 0.44) var(--semantic-info-hue));
    --color-alert-info-border: oklch(43% calc(var(--semantic-info-chroma) * 0.56) var(--semantic-info-hue));
    --color-accent: oklch(68% 0.13 220);
    --color-accent-dark: oklch(58% 0.13 220);
    --color-accent-emphasis: oklch(73% 0.15 220);
    --color-accent-subtle: oklch(25% 0.06 220);
    --color-accent-primary: oklch(68% 0.13 220);
    --color-accent-500: oklch(68% 0.13 220);
    --color-viz-primary: oklch(68% 0.10 210);
    --color-viz-success: oklch(66% 0.15 155);
    --color-viz-warning: oklch(68% 0.17 55);
    --color-viz-error: oklch(65% 0.19 25);
    --color-viz-accent: oklch(70% 0.06 220);
    --color-scrim: oklch(100% 0 0 / 5%);
    --color-badge-primary-bg: oklch(28% 0.05 220);
    --color-badge-primary-text: oklch(70% 0.04 220);
    --color-badge-primary-ring: oklch(38% 0.04 220);
    --color-badge-neutral-bg: oklch(26% 0.01 270);
    --color-badge-neutral-text: oklch(68% 0.01 270);
    --color-badge-neutral-ring: oklch(36% 0.01 270);
    --color-badge-success-bg: oklch(30% 0.06 155);
    --color-badge-success-text: oklch(72% 0.08 155);
    --color-badge-success-ring: oklch(40% 0.07 155);
    --color-badge-warning-bg: oklch(31% 0.07 55);
    --color-badge-warning-text: oklch(74% 0.09 55);
    --color-badge-warning-ring: oklch(41% 0.08 55);
    --color-badge-error-bg: oklch(29% 0.07 25);
    --color-badge-error-text: oklch(71% 0.09 25);
    --color-badge-error-ring: oklch(39% 0.08 25);
    --color-badge-info-bg: oklch(29% 0.06 210);
    --color-badge-info-text: oklch(70% 0.07 210);
    --color-badge-info-ring: oklch(39% 0.06 210);
  }
}
[data-theme="light"] {
  --color-background: oklch(98% 0 0);
  --color-surface: oklch(100% 0 0);
  --color-surface-hover: oklch(99% 0 0);
  --color-surface-active: oklch(98% 0 0);
  --color-surface-muted: oklch(96% 0 0);
  --color-surface-subtle: oklch(97.5% 0 0);
  --color-text-primary: oklch(25% 0.02 220);
  --color-text-secondary: oklch(40% 0.02 220);
  --color-text-tertiary: oklch(55% 0.02 220);
  --color-text-disabled: oklch(70% 0.01 220);
  --color-border: oklch(85% 0.02 220);
  --color-border-hover: oklch(75% 0.03 220);
  --color-border-focus: var(--brand-primary);
  --color-divider: oklch(90% 0.01 220);
}
[data-theme="dark"] {
  --color-background: oklch(18% 0 0);
  --color-surface: oklch(22% 0 0);
  --color-surface-hover: oklch(24% 0 0);
  --color-surface-active: oklch(26% 0 0);
  --color-surface-muted: oklch(20% 0 0);
  --color-surface-subtle: oklch(21% 0 0);
  --color-text-primary: oklch(92% 0.015 220);
  --color-text-secondary: oklch(80% 0.015 220);
  --color-text-tertiary: oklch(65% 0.015 220);
  --color-text-disabled: oklch(45% 0.01 220);
  --color-border: oklch(35% 0.02 220);
  --color-border-hover: oklch(45% 0.025 220);
  --color-border-focus: oklch(65% 0.08 220);
  --color-divider: oklch(30% 0.015 220);
  --color-accent: oklch(70% 0.06 220);
  --color-accent-dark: oklch(60% 0.06 220);
  --color-accent-emphasis: oklch(75% 0.07 220);
  --color-accent-subtle: oklch(25% 0.03 220);
  --color-accent-primary: oklch(70% 0.06 220);
  --color-accent-500: oklch(70% 0.06 220);
  --color-scrim: oklch(100% 0 0 / 5%);
  --color-badge-primary-bg: oklch(28% 0.05 220);
  --color-badge-primary-text: oklch(70% 0.04 220);
  --color-badge-primary-ring: oklch(38% 0.04 220);
  --color-badge-neutral-bg: oklch(26% 0.01 270);
  --color-badge-neutral-text: oklch(68% 0.01 270);
  --color-badge-neutral-ring: oklch(36% 0.01 270);
  --color-badge-success-bg: oklch(30% 0.06 155);
  --color-badge-success-text: oklch(72% 0.08 155);
  --color-badge-success-ring: oklch(40% 0.07 155);
  --color-badge-warning-bg: oklch(31% 0.07 55);
  --color-badge-warning-text: oklch(74% 0.09 55);
  --color-badge-warning-ring: oklch(41% 0.08 55);
  --color-badge-error-bg: oklch(29% 0.07 25);
  --color-badge-error-text: oklch(71% 0.09 25);
  --color-badge-error-ring: oklch(39% 0.08 25);
  --color-badge-info-bg: oklch(29% 0.06 210);
  --color-badge-info-text: oklch(70% 0.07 210);
  --color-badge-info-ring: oklch(39% 0.06 210);
}
.cp-theme-transition, .cp-theme-transition * {
  transition: background-color var(--motion-gentle) var(--ease-natural), border-color var(--motion-gentle) var(--ease-natural), color var(--motion-gentle) var(--ease-natural);
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.text-link-hover:hover {
  color: var(--color-link-hover);
}
@media (prefers-color-scheme: dark) {
  .text-success {
    color: var(--color-success-400);
  }
  .text-warning {
    color: var(--color-warning-400);
  }
  .text-error {
    color: var(--color-error-400);
  }
  .text-info {
    color: var(--color-info-400);
  }
}
.link:hover {
  color: var(--color-link-hover);
  text-decoration-color: currentColor;
}
.link-muted:hover {
  color: var(--color-link);
}
.border-hover:hover {
  border-color: var(--color-border-hover);
}
.border-focus:focus {
  border-color: var(--color-border-focus);
  outline: none;
  ring: 2px;
  ring-color: var(--color-border-focus);
  ring-opacity: 0.2;
}
.focus-ring:focus {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
}
.focus-ring-error:focus {
  outline: var(--focus-ring-width) solid var(--color-error-500);
  outline-offset: var(--focus-ring-offset);
}
.focus-ring-success:focus {
  outline: var(--focus-ring-width) solid var(--color-success-500);
  outline-offset: var(--focus-ring-offset);
}
.tactile:hover {
  transform: var(--hover-lift);
}
.tactile:active {
  transform: var(--active-press);
}
.focus-polite:focus {
  outline: none;
  box-shadow: 0 0 0 var(--focus-glow-width) var(--color-border-focus);
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: 0 0 0 var(--focus-glow-width) color-mix(in oklch, var(--color-border-focus), transparent 80%);
  }
}
.surface-calm:hover {
  background: var(--color-surface-hover);
  border-color: var(--color-border-hover);
  box-shadow: var(--shadow-md);
}
.scrollbar-thin::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.scrollbar-thin::-webkit-scrollbar-track {
  background: transparent;
}
.scrollbar-thin::-webkit-scrollbar-thumb {
  background-color: var(--color-border);
  border-radius: var(--radius-full);
}
.scrollbar-thin::-webkit-scrollbar-thumb:hover {
  background-color: var(--color-border-hover);
}
.overflow-y-auto, .overflow-x-auto, .overflow-auto {
  scrollbar-width: thin;
  scrollbar-color: var(--color-border) transparent;
}
.overflow-y-auto::-webkit-scrollbar, .overflow-x-auto::-webkit-scrollbar, .overflow-auto::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.overflow-y-auto::-webkit-scrollbar-track, .overflow-x-auto::-webkit-scrollbar-track, .overflow-auto::-webkit-scrollbar-track {
  background: transparent;
}
.overflow-y-auto::-webkit-scrollbar-thumb, .overflow-x-auto::-webkit-scrollbar-thumb, .overflow-auto::-webkit-scrollbar-thumb {
  background-color: var(--color-border);
  border-radius: var(--radius-full);
}
.overflow-y-auto::-webkit-scrollbar-thumb:hover, .overflow-x-auto::-webkit-scrollbar-thumb:hover, .overflow-auto::-webkit-scrollbar-thumb:hover {
  background-color: var(--color-border-hover);
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 2);
  border-radius: var(--radius-md);
  font-weight: var(--tone-whisper);
  padding: var(--space-breath) var(--space-comfort);
  transition: all var(--motion-micro) var(--ease-natural);
  transform-style: preserve-3d;
  box-shadow: var(--elevation-raised);
}
.btn:hover:not(:disabled) {
  transform: var(--hover-lift);
  box-shadow: var(--elevation-floating);
}
.btn:active:not(:disabled) {
  transform: var(--active-press);
  box-shadow: var(--elevation-raised);
}
.btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.btn-sm {
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 1.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.btn-lg {
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.btn-xs {
  padding-inline: calc(var(--spacing) * 2);
  padding-block: calc(var(--spacing) * 1);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.btn-xxs {
  padding-inline: calc(var(--spacing) * 1);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.btn-primary {
  background-color: var(--color-button-primary-bg);
  color: var(--color-button-primary-text);
  border: 1px solid var(--color-button-primary-border);
}
.btn-primary:hover:not(:disabled) {
  background-color: var(--color-button-primary-bg-hover);
}
.btn-primary:active:not(:disabled) {
  background-color: var(--color-button-primary-bg-active);
}
.btn-secondary {
  background-color: var(--color-button-secondary-bg);
  color: var(--color-button-secondary-text);
  border: 1px solid var(--color-button-secondary-border);
}
.btn-secondary:hover:not(:disabled) {
  background-color: var(--color-button-secondary-bg-hover);
}
.btn-secondary:active:not(:disabled) {
  background-color: var(--color-button-secondary-bg-active);
}
.btn-success {
  background-color: var(--color-success-500);
  color: white;
  border: 1px solid transparent;
}
.btn-success:hover:not(:disabled) {
  background-color: var(--color-success-600);
}
.btn-warning {
  background-color: var(--color-warning-500);
  color: white;
  border: 1px solid transparent;
}
.btn-warning:hover:not(:disabled) {
  background-color: var(--color-warning-600);
}
.btn-danger {
  background-color: var(--color-error-500);
  color: white;
  border: 1px solid transparent;
}
.btn-danger:hover:not(:disabled) {
  background-color: var(--color-error-600);
}
.badge {
  display: inline-flex;
  align-items: center;
  padding: calc(var(--space-breath) * 0.5) calc(var(--space-breath) * 1.5);
  font-size: var(--font-size-xs);
  font-weight: var(--tone-whisper);
  border-radius: var(--radius-full);
  border: 1px solid transparent;
  transition: all var(--motion-micro) var(--ease-natural);
  opacity: 0.95;
}
.badge:hover {
  opacity: 1;
  transform: translateY(-0.5px);
}
.badge-primary {
  background-color: var(--color-badge-primary-bg);
  color: var(--color-badge-primary-text);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, oklch(72% calc(var(--brand-chroma) * 0.83) var(--brand-hue)), transparent 75%);
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--color-badge-primary-ring), transparent 75%);
  }
}
.badge-secondary, .badge-neutral {
  background-color: var(--color-badge-neutral-bg);
  color: var(--color-badge-neutral-text);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, oklch(75% 0.02 270), transparent 60%);
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--color-badge-neutral-ring), transparent 60%);
  }
}
.badge-success {
  background-color: var(--color-badge-success-bg);
  color: var(--color-badge-success-text);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, oklch(75% calc(var(--semantic-success-chroma) * 0.47) var(--semantic-success-hue)), transparent 75%);
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--color-badge-success-ring), transparent 75%);
  }
}
.badge-warning {
  background-color: var(--color-badge-warning-bg);
  color: var(--color-badge-warning-text);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, oklch(75% calc(var(--semantic-warning-chroma) * 0.53) var(--semantic-warning-hue)), transparent 75%);
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--color-badge-warning-ring), transparent 75%);
  }
}
.badge-error, .badge-danger {
  background-color: var(--color-badge-error-bg);
  color: var(--color-badge-error-text);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, oklch(72% calc(var(--semantic-error-chroma) * 0.47) var(--semantic-error-hue)), transparent 75%);
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--color-badge-error-ring), transparent 75%);
  }
}
.badge-info {
  background-color: var(--color-badge-info-bg);
  color: var(--color-badge-info-text);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, oklch(72% calc(var(--semantic-info-chroma) * 0.50) var(--semantic-info-hue)), transparent 75%);
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--color-badge-info-ring), transparent 75%);
  }
}
.cp-kind-badge {
  display: inline-flex;
  align-items: center;
  font-family: var(--font-family-mono);
  font-size: 0.625rem;
  font-weight: var(--font-weight-medium, 500);
  letter-spacing: 0.4px;
  text-transform: uppercase;
  padding: 2px 6px;
  border-radius: var(--radius-badge, 0);
  line-height: 1.4;
  white-space: nowrap;
  background-color: var(--color-surface-muted);
  color: var(--color-text-primary);
}
.cp-kind-badge[data-kind="invariant"] {
  background-color: var(--kind-invariant-bg);
  color: var(--kind-invariant-fg);
}
.cp-kind-badge[data-kind="guideline"] {
  background-color: var(--kind-guideline-bg);
  color: var(--kind-guideline-fg);
}
.cp-kind-badge[data-kind="standard"] {
  background-color: var(--kind-standard-bg);
  color: var(--kind-standard-fg);
}
.cp-kind-badge[data-kind="path"] {
  background-color: var(--kind-path-bg);
  color: var(--kind-path-fg);
}
.cp-kind-badge[data-kind="directive"] {
  background-color: var(--kind-directive-bg);
  color: var(--kind-directive-fg);
}
.cp-kind-badge[data-kind="global"] {
  background-color: var(--kind-directive-bg);
  color: var(--kind-directive-fg);
}
.cp-kind-badge[data-kind="rule"] {
  background-color: var(--kind-directive-bg);
  color: var(--kind-directive-fg);
}
.cp-kind-badge[data-kind="goal"] {
  background-color: var(--kind-goal-bg);
  color: var(--kind-goal-fg);
}
.cp-kind-badge[data-kind="decision"] {
  background-color: var(--kind-decision-bg);
  color: var(--kind-decision-fg);
}
.cp-kind-badge[data-kind="component"] {
  background-color: var(--kind-component-bg);
  color: var(--kind-component-fg);
}
.cp-kind-badge[data-kind="dependency"] {
  background-color: var(--kind-dependency-bg);
  color: var(--kind-dependency-fg);
}
.cp-kind-badge[data-kind="in-flight"] {
  background-color: var(--kind-in-flight-bg);
  color: var(--kind-in-flight-fg);
}
.cp-kind-badge[data-kind="active"] {
  background-color: var(--kind-active-bg);
  color: var(--kind-active-fg);
}
.cp-kind-badge[data-kind="draft"] {
  background-color: var(--kind-draft-bg);
  color: var(--kind-draft-fg);
}
.cp-kind-badge[data-kind="archive"] {
  background-color: var(--kind-archive-bg);
  color: var(--kind-archive-fg);
}
.cp-kind-badge[data-kind="closed"] {
  background-color: var(--kind-closed-bg);
  color: var(--kind-closed-fg);
}
.cp-kind-badge[data-kind="blocked"] {
  background-color: var(--kind-blocked-bg);
  color: var(--kind-blocked-fg);
}
.alert {
  padding: var(--space-comfort) calc(var(--space-comfort) * 1.25);
  border-radius: var(--radius-md);
  border: 1px solid var(--color-border);
  border-left-width: 4px;
  font-size: var(--font-size-sm);
  transition: all var(--motion-gentle) var(--ease-natural);
  opacity: 0.98;
}
.alert:hover {
  opacity: 1;
  transform: translateX(2px);
}
.alert-success {
  background-color: var(--color-alert-success-bg);
  border-left-color: var(--color-alert-success-border);
  color: var(--color-success-700);
}
.alert-warning {
  background-color: var(--color-alert-warning-bg);
  border-left-color: var(--color-alert-warning-border);
  color: var(--color-warning-700);
}
.alert-error {
  background-color: var(--color-alert-error-bg);
  border-left-color: var(--color-alert-error-border);
  color: var(--color-error-700);
}
.alert-info {
  background-color: var(--color-alert-info-bg);
  border-left-color: var(--color-alert-info-border);
  color: var(--color-info-700);
}
@media (prefers-color-scheme: dark) {
  .alert-success {
    color: var(--color-success-300);
  }
  .alert-warning {
    color: var(--color-warning-300);
  }
  .alert-error {
    color: var(--color-error-300);
  }
  .alert-info {
    color: var(--color-info-300);
  }
}
.card {
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--elevation-raised);
}
.card-hover {
  transition: all var(--transition-base);
}
.card-hover:hover {
  box-shadow: var(--elevation-floating);
  transform: var(--hover-lift);
}
.card-header {
  padding: 1.5rem;
  border-bottom: 1px solid var(--color-divider);
}
.card-body {
  padding: 1.5rem;
}
.card-footer {
  padding: 1.5rem;
  border-top: 1px solid var(--color-divider);
  background-color: var(--color-surface-hover);
}
details[open] > summary .heroicon {
  transform: rotate(180deg);
}
body.modal-open {
  overflow: hidden;
  padding-right: var(--scrollbar-compensation, 0px);
}
.modal {
  margin: calc(var(--spacing) * 0);
  padding: calc(var(--spacing) * 0);
  background: transparent;
  border: none;
  max-width: min(90vw, 32rem);
  max-height: 90vh;
  overflow: visible;
  margin: auto;
}
.modal-sm {
  max-width: min(90vw, 24rem);
}
.modal-md {
  max-width: min(90vw, 32rem);
}
.modal-lg {
  max-width: min(90vw, 48rem);
}
.modal-full {
  max-width: 95vw;
  max-height: 95vh;
}
.modal::backdrop {
  background: var(--color-backdrop);
  animation: backdrop-fade-in 0.2s var(--ease-natural);
}
.modal-card {
  border-radius: var(--radius-lg);
  padding: calc(var(--spacing) * 6);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  box-shadow: var(--elevation-modal);
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
}
.modal-card.full {
  border-radius: var(--radius-lg);
  max-height: 95vh;
}
.modal-card > button[data-action*="modal#close"] {
  position: absolute;
  top: calc(var(--spacing) * 4);
  right: calc(var(--spacing) * 4);
  border-radius: var(--radius-md);
  padding: calc(var(--spacing) * 2);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  color: var(--color-text-tertiary);
  z-index: 10;
}
.modal-card > button[data-action*="modal#close"]:hover {
  color: var(--color-text-primary);
  background: var(--color-surface-muted);
}
@keyframes backdrop-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes backdrop-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.modal {
  animation: modal-scale-in 0.2s var(--ease-natural);
}
@keyframes modal-scale-in {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes modal-bounce {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.02);
  }
}
.modal-bounce {
  animation: modal-bounce 0.2s var(--ease-natural);
}
.dropdown-menu {
  width: calc(var(--spacing) * 56);
  border-radius: var(--radius-xl);
  padding: calc(var(--spacing) * 1);
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  box-shadow: var(--elevation-floating);
  position: fixed;
  inset: unset;
  margin: 0;
  transition: opacity var(--motion-micro) var(--ease-natural), transform var(--motion-micro) var(--ease-natural), overlay var(--motion-micro) var(--ease-natural) allow-discrete, display var(--motion-micro) var(--ease-natural) allow-discrete;
  opacity: 0;
  transform: scale(0.95);
}
.dropdown-menu:popover-open {
  opacity: 1;
  transform: scale(1);
}
@starting-style {
  .dropdown-menu:popover-open {
    opacity: 0;
    transform: scale(0.95);
  }
}
.dropdown-menu-item-wrapper {
  display: block;
}
.dropdown-item {
  display: flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-lg);
  text-align: left;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  padding: var(--space-breath) calc(var(--space-breath) * 1.25);
  color: var(--color-text-primary);
  font-weight: var(--tone-calm);
  background: transparent;
  border: 0;
  font: inherit;
  transition: all var(--motion-micro) var(--ease-natural);
}
.dropdown-menu form.dropdown-form {
  display: contents;
}
.dropdown-item:hover, .dropdown-item:focus, .dropdown-item[data-highlighted] {
  background-color: var(--color-surface-muted);
  outline: none;
}
.dropdown-item-icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: var(--color-text-secondary);
}
.dropdown-item:hover .dropdown-item-icon, .dropdown-item:focus .dropdown-item-icon, .dropdown-item[data-highlighted] .dropdown-item-icon {
  color: var(--color-text-primary);
}
.dropdown-item-label {
  flex: 1;
}
.dropdown-item-kbd {
  flex-shrink: 0;
  border-radius: 0.25rem;
  padding-inline: calc(var(--spacing) * 1.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  background-color: var(--color-surface-muted);
  color: var(--color-text-tertiary);
  font-weight: var(--tone-whisper);
  border: 1px solid var(--color-border);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.dropdown-item-danger {
  display: flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-lg);
  text-align: left;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  padding: var(--space-breath) calc(var(--space-breath) * 1.25);
  color: var(--color-error-600);
  font-weight: var(--tone-calm);
  background: transparent;
  border: 0;
  font: inherit;
  transition: all var(--motion-micro) var(--ease-natural);
}
.dropdown-item-danger:hover, .dropdown-item-danger:focus, .dropdown-item-danger[data-highlighted] {
  background-color: color-mix(in srgb, oklch(58% 0.19 25), transparent 92%);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklch, var(--color-error-500), transparent 92%);
  }
  outline: none;
}
.dropdown-item-danger .dropdown-item-icon {
  color: var(--color-error-600);
}
.dropdown-item-danger:hover .dropdown-item-icon, .dropdown-item-danger:focus .dropdown-item-icon, .dropdown-item-danger[data-highlighted] .dropdown-item-icon {
  color: var(--color-error-700);
}
[data-theme="dark"] .dropdown-item-danger:hover, [data-theme="dark"] .dropdown-item-danger:focus, [data-theme="dark"] .dropdown-item-danger[data-highlighted] {
  background-color: color-mix(in srgb, oklch(58% 0.19 25), transparent 80%);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklch, var(--color-error-500), transparent 80%);
  }
}
.dropdown-divider {
  margin-block: calc(var(--spacing) * 1);
  height: 1px;
  background-color: var(--color-border);
}
.dropdown-group-heading {
  margin-top: calc(var(--spacing) * 2);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  &:first-child {
    margin-top: calc(var(--spacing) * 0);
  }
  color: var(--color-text-tertiary);
  font-weight: var(--tone-loud);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.dropdown-checkbox-item {
  display: flex;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-lg);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  padding: var(--space-breath) calc(var(--space-breath) * 1.25);
  color: var(--color-text-primary);
  font-weight: var(--tone-calm);
  transition: all var(--motion-micro) var(--ease-natural);
}
.dropdown-checkbox-item:hover, .dropdown-checkbox-item:focus, .dropdown-checkbox-item[data-highlighted] {
  background-color: var(--color-surface-muted);
  outline: none;
}
.dropdown-checkbox {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border-width: 0;
}
.dropdown-checkbox-icon {
  display: flex;
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: 0.25rem;
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-border);
  color: transparent;
  transition: all var(--motion-micro) var(--ease-natural);
}
.dropdown-checkbox:checked + .dropdown-checkbox-icon {
  background-color: var(--color-primary-600);
  border-color: var(--color-primary-600);
  color: white;
}
.dropdown-checkbox:focus + .dropdown-checkbox-icon {
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  --tw-ring-offset-width: 1px;
  --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  ring-color: var(--color-primary-500);
}
.dropdown-checkbox-label {
  flex: 1;
}
.dropdown-radio-item {
  display: flex;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-lg);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  padding: var(--space-breath) calc(var(--space-breath) * 1.25);
  color: var(--color-text-primary);
  font-weight: var(--tone-calm);
  transition: all var(--motion-micro) var(--ease-natural);
}
.dropdown-radio-item:hover, .dropdown-radio-item:focus, .dropdown-radio-item[data-highlighted] {
  background-color: var(--color-surface-muted);
  outline: none;
}
.dropdown-radio {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border-width: 0;
}
.dropdown-radio-icon {
  display: flex;
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-full);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-border);
  color: transparent;
  transition: all var(--motion-micro) var(--ease-natural);
}
.dropdown-radio:checked + .dropdown-radio-icon {
  background-color: var(--color-primary-600);
  border-color: var(--color-primary-600);
  color: white;
}
.dropdown-radio:focus + .dropdown-radio-icon {
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  --tw-ring-offset-width: 1px;
  --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  ring-color: var(--color-primary-500);
}
.dropdown-radio-label {
  flex: 1;
}
.context-menu {
  width: calc(var(--spacing) * 56);
  border-radius: var(--radius-xl);
  padding: calc(var(--spacing) * 1);
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  box-shadow: var(--elevation-floating);
  position: fixed;
  inset: unset;
  margin: 0;
  transition: opacity var(--motion-micro) var(--ease-natural), transform var(--motion-micro) var(--ease-natural), overlay var(--motion-micro) var(--ease-natural) allow-discrete, display var(--motion-micro) var(--ease-natural) allow-discrete;
  opacity: 0;
  transform: scale(0.97);
}
.context-menu:popover-open {
  opacity: 1;
  transform: scale(1);
}
@starting-style {
  .context-menu:popover-open {
    opacity: 0;
    transform: scale(0.97);
  }
}
.context-menu-item {
  display: flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-lg);
  text-align: left;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  padding: var(--space-breath) calc(var(--space-breath) * 1.25);
  color: var(--color-text-primary);
  font-weight: var(--tone-calm);
  transition: all var(--motion-micro) var(--ease-natural);
  background: transparent;
  border: 0;
}
.context-menu-item:hover, .context-menu-item:focus, .context-menu-item[data-highlighted] {
  background-color: var(--color-surface-muted);
  outline: none;
}
.context-menu-item[aria-disabled="true"], .context-menu-item:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.context-menu-item-icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: var(--color-text-secondary);
}
.context-menu-item:hover .context-menu-item-icon, .context-menu-item:focus .context-menu-item-icon, .context-menu-item[data-highlighted] .context-menu-item-icon {
  color: var(--color-text-primary);
}
.context-menu-item-label {
  flex: 1;
}
.context-menu-item-danger {
  display: flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-lg);
  text-align: left;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  padding: var(--space-breath) calc(var(--space-breath) * 1.25);
  color: var(--color-error-600);
  font-weight: var(--tone-calm);
  transition: all var(--motion-micro) var(--ease-natural);
  background: transparent;
  border: 0;
}
.context-menu-item-danger:hover, .context-menu-item-danger:focus, .context-menu-item-danger[data-highlighted] {
  background-color: color-mix(in srgb, oklch(58% 0.19 25), transparent 92%);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklch, var(--color-error-500), transparent 92%);
  }
  outline: none;
}
.context-menu-item-danger .context-menu-item-icon {
  color: var(--color-error-600);
}
.context-menu-item-danger:hover .context-menu-item-icon, .context-menu-item-danger:focus .context-menu-item-icon, .context-menu-item-danger[data-highlighted] .context-menu-item-icon {
  color: var(--color-error-700);
}
[data-theme="dark"] .context-menu-item-danger:hover, [data-theme="dark"] .context-menu-item-danger:focus, [data-theme="dark"] .context-menu-item-danger[data-highlighted] {
  background-color: color-mix(in srgb, oklch(58% 0.19 25), transparent 80%);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklch, var(--color-error-500), transparent 80%);
  }
}
.context-menu-divider {
  margin-block: calc(var(--spacing) * 1);
  height: 1px;
  background-color: var(--color-border);
}
.form-field {
  width: 100%;
  &[data-slot='field']+[data-slot='field'] {
    margin-top: calc(var(--spacing) * 4);
  }
}
.form-input {
  display: block;
  width: 100%;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 1.5);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  @media (width >= 40rem) {
    font-size: var(--text-sm);
    line-height: calc(var(--spacing) * 6);
  }
  background-color: var(--color-surface);
  color: var(--color-text-primary);
  border-color: var(--color-border);
}
.form-input:focus {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
  border-color: var(--color-border-focus);
}
.form-input::placeholder {
  color: var(--color-text-tertiary);
}
.form-file-input {
  display: block;
  width: 100%;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 1.5);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  @media (width >= 40rem) {
    font-size: var(--text-sm);
    line-height: calc(var(--spacing) * 6);
  }
  color: var(--color-text-primary);
  border-color: var(--color-border);
}
.form-file-input:focus {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
  border-color: var(--color-border-focus);
}
.form-toggle {
  width: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 4);
  border-radius: 0.25rem;
  transition: box-shadow var(--transition-fast);
  border-color: var(--color-border);
  color: var(--color-button-primary-bg);
}
.form-toggle-label {
  font-size: var(--text-sm);
  line-height: calc(var(--spacing) * 6);
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-primary);
}
.form-radio-pill {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  border-radius: var(--radius-full);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 1.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  background-color: var(--color-surface);
  color: var(--color-text-primary);
  border: 1px solid var(--color-border);
}
.form-radio-pill:hover {
  background-color: var(--color-surface-hover);
}
:has(> input:checked)+.form-radio-pill, input:checked+.form-radio-pill {
  background-color: var(--color-button-primary-bg);
  color: white;
  border-color: var(--color-button-primary-border);
}
:has(> input:checked)+.form-radio-pill:hover, input:checked+.form-radio-pill:hover {
  background-color: var(--color-button-primary-bg-hover);
}
.form-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  border-radius: var(--radius-md);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: transparent;
  --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  &:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  &:focus {
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
  &:disabled {
    cursor: not-allowed;
  }
  &:disabled {
    opacity: 50%;
  }
}
.form-toggle-wrapper {
  display: flex;
  align-items: flex-start;
  column-gap: calc(var(--spacing) * 2);
  &>input {
    margin-top: 0.15em;
  }
}
.form-label {
  margin-bottom: calc(var(--spacing) * 2);
  display: block;
  font-size: var(--text-sm);
  line-height: calc(var(--spacing) * 6);
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-primary);
}
.form-hint {
  margin-top: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-text-secondary);
}
.form-error {
  margin-top: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-error-600);
}
.form-input-error {
  outline-color: var(--color-error) !important;
}
.form-input-error:focus {
  outline-color: var(--color-error) !important;
}
.fp-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
fp-toggle {
  display: inline-flex;
  align-items: center;
  position: relative;
}
fp-toggle .form-toggle-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
fp-toggle .form-toggle-label {
  position: relative;
  padding-left: 3.25rem;
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-text-primary);
  line-height: 1.5rem;
  user-select: none;
}
fp-toggle .form-toggle-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 2.75rem;
  height: 1.5rem;
  border-radius: 9999px;
  background-color: var(--color-border);
  transition: background-color var(--motion-micro) var(--ease-natural);
}
fp-toggle .form-toggle-label::after {
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 9999px;
  background-color: var(--color-surface);
  box-shadow: var(--shadow-base);
  transition: transform var(--motion-micro) var(--ease-natural);
}
fp-toggle .form-toggle-input:checked + .form-toggle-label::before {
  background-color: var(--brand-primary);
}
fp-toggle .form-toggle-input:checked + .form-toggle-label::after {
  transform: translateX(1.25rem);
}
fp-toggle .form-toggle-input:focus-visible + .form-toggle-label::before {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
}
fp-toggle .form-toggle-input:disabled + .form-toggle-label {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}
fp-toggle .form-toggle-input:disabled + .form-toggle-label::before {
  background-color: var(--color-surface-hover);
}
fp-toggle .form-toggle-input:disabled + .form-toggle-label::after {
  box-shadow: none;
}
fp-toggle .form-toggle-input:disabled:checked + .form-toggle-label::before {
  opacity: 0.5;
}
fp-combobox {
  display: block;
  position: relative;
}
fp-combobox select[hidden] {
  display: none;
}
.fp-combobox-listbox {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 50;
  max-height: 15rem;
  overflow-y: auto;
  margin-top: 2px;
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  box-shadow: var(--elevation-floating);
}
.fp-combobox-option {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
  cursor: pointer;
  color: var(--color-text-primary);
}
.fp-combobox-option--focused {
  background-color: var(--color-surface-hover);
}
.fp-combobox-option--selected {
  font-weight: 600;
  color: var(--brand-primary);
}
.fp-combobox-option--disabled {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}
.fp-combobox-no-results {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  font-style: italic;
  color: var(--color-text-tertiary);
}
.fp-combobox-loading {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  color: var(--color-text-tertiary);
}
.fp-combobox-clear {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 1rem;
  line-height: 1;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-combobox-clear:hover {
  color: var(--color-text-primary);
  background-color: var(--color-surface-hover);
}
.fp-combobox-clear[hidden] {
  display: none;
}
fp-combobox[clearable]:not([multiple]) > input.form-input {
  padding-right: 2rem;
}
fp-combobox[multiple] .fp-combobox-clear {
  position: static;
  transform: none;
}
.fp-combobox-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem;
  min-height: 2.25rem;
  padding: 0.25rem 0.375rem;
  cursor: text;
}
.fp-combobox-tags-input {
  flex: 1 1 4rem;
  min-width: 4rem;
  border: none;
  outline: none;
  padding: 0.125rem 0.375rem;
  font-size: 0.875rem;
  line-height: 1.5;
  background: transparent;
  color: var(--color-text-primary);
}
.fp-combobox-tags-input::placeholder {
  color: var(--color-text-tertiary);
}
.fp-combobox-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  max-width: 100%;
  padding: 0.0625rem 0.375rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--color-text-primary);
  background-color: var(--color-surface-hover);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full, 9999px);
}
.fp-combobox-tag-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fp-combobox-tag-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 0.875rem;
  line-height: 1;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-combobox-tag-remove:hover {
  color: var(--color-error-500);
  background-color: var(--color-error-50);
}
.fp-combobox-option-check {
  display: inline-block;
  width: 1rem;
  flex-shrink: 0;
  text-align: center;
  color: var(--brand-primary);
}
fp-combobox[multiple] .fp-combobox-option {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.fp-combobox-listbox[popover] {
  inset: auto;
  margin: 0;
}
fp-file-upload {
  display: block;
  position: relative;
}
.fp-file-dropzone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 1.5rem;
  border: 2px dashed var(--color-border);
  border-radius: var(--radius-md);
  background-color: var(--color-surface);
  cursor: pointer;
  text-align: center;
  transition: border-color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-file-dropzone:hover {
  border-color: var(--color-border-hover);
  background-color: var(--color-surface-hover);
}
.fp-file-dropzone--active {
  border-color: var(--brand-primary);
  background-color: var(--color-surface-hover);
}
.fp-file-upload-icon {
  width: 2rem;
  height: 2rem;
  color: var(--color-text-tertiary);
}
.fp-file-dropzone-text {
  font-size: 0.875rem;
  color: var(--color-text-secondary);
}
.fp-file-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.fp-file-list:empty {
  display: none;
}
.fp-file-item {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.375rem;
  align-items: center;
  padding: 0.625rem 0.75rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  background-color: var(--color-surface);
  transition: opacity var(--motion-micro) var(--ease-natural), transform var(--motion-micro) var(--ease-natural);
}
.fp-file-item--complete {
  border-color: var(--color-form-success-border);
  background-color: var(--color-form-success-bg);
}
.fp-file-item--error {
  border-color: var(--color-form-error-border);
  background-color: var(--color-form-error-bg);
}
.fp-file-info {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
}
.fp-file-name {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fp-file-size {
  font-size: 0.75rem;
  color: var(--color-text-tertiary);
  flex-shrink: 0;
}
.fp-file-right {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}
.fp-file-status {
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--color-text-secondary);
}
.fp-file-item--complete .fp-file-status {
  color: var(--color-success-500);
}
.fp-file-item--error .fp-file-status {
  color: var(--color-error);
}
.fp-file-progress {
  grid-column: 1 / -1;
  width: 100%;
  height: 4px;
  border-radius: 9999px;
  background-color: var(--color-border);
  overflow: hidden;
}
.fp-file-progress-bar {
  height: 100%;
  border-radius: 9999px;
  background-color: var(--brand-primary);
  transition: width var(--motion-micro) var(--ease-natural);
}
.fp-file-item--complete .fp-file-progress-bar {
  background-color: var(--color-success-500);
}
.fp-file-item--error .fp-file-progress-bar {
  background-color: var(--color-error);
}
.fp-file-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 1rem;
  line-height: 1;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-file-remove:hover {
  color: var(--color-error-500);
  background-color: var(--color-error-50);
}
.fp-file-error {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  margin-top: 0.5rem;
  border: 1px solid var(--color-error-100);
  border-radius: var(--radius-base);
  background-color: var(--color-error-50);
  font-size: 0.8125rem;
  color: var(--color-error-600);
}
.fp-file-error-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 1rem;
  line-height: 1;
  color: var(--color-error-500);
  cursor: pointer;
  flex-shrink: 0;
}
.fp-file-error-close:hover {
  color: var(--color-error-600);
}
.form-collection {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.form-collection-item {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.form-collection-label {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--color-text-primary);
  cursor: pointer;
}
.form-radio-pills {
  display: inline-flex;
  gap: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full, 9999px);
  padding: 0;
  margin: 0;
  overflow: hidden;
}
.form-radio-pills legend {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.form-radio-pill-item {
  position: relative;
  display: inline-block;
}
.form-radio-pill-item + .form-radio-pill-item {
  border-left: 1px solid var(--color-border);
}
.form-radio-pills .form-radio-pill {
  display: block;
  padding: 0.375rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-text-secondary);
  cursor: pointer;
  user-select: none;
  border-radius: 0;
  border: none;
  background-color: transparent;
  transition: background-color var(--motion-micro) var(--ease-natural), color var(--motion-micro) var(--ease-natural);
}
.form-radio-pills .form-radio-pill:hover {
  background-color: var(--color-surface-hover);
  color: var(--color-text-primary);
}
.fp-sr-only:checked + .form-radio-pill {
  background-color: var(--brand-primary);
  color: var(--color-button-primary-text);
}
.fp-sr-only:focus-visible + .form-radio-pill {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: calc(-1 * var(--focus-ring-width));
}
fp-datepicker {
  display: block;
  position: relative;
}
.fp-datepicker-clear {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 1rem;
  line-height: 1;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-datepicker-clear:hover {
  color: var(--color-text-primary);
  background-color: var(--color-surface-hover);
}
.fp-datepicker-clear[hidden] {
  display: none;
}
fp-datepicker[clearable] > input.form-input {
  padding-right: 2rem;
}
.air-datepicker--fixed-weeks .air-datepicker-body--cells.-days- {
  min-height: 14rem;
}
.air-datepicker-cell.fp-datepicker-unavailable {
  text-decoration: line-through;
}
.air-datepicker[popover] {
  display: block;
  position: fixed;
  inset: auto;
  margin: 0;
  overflow: visible;
}
fp-input {
  display: block;
  position: relative;
}
.fp-input-group {
  display: flex;
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  background-color: var(--color-surface);
  box-shadow: var(--shadow-input);
  overflow: hidden;
  transition: border-color var(--motion-micro) var(--ease-natural), box-shadow var(--motion-micro) var(--ease-natural);
}
.fp-input-group:focus-within {
  border-color: var(--color-border-focus);
  box-shadow: var(--shadow-input-focus-ring);
}
.fp-input-group:has(.form-input-error) {
  border-color: var(--color-error-500);
}
.fp-input-group:has(.form-input-error):focus-within {
  box-shadow: var(--shadow-input-focus-ring-error);
}
.fp-input-group > input, .fp-input-group > textarea {
  border: none;
  box-shadow: none;
  background: transparent;
  flex: 1;
  min-width: 0;
}
.fp-input-group > input:focus, .fp-input-group > input:focus-visible, .fp-input-group > textarea:focus, .fp-input-group > textarea:focus-visible {
  border: none;
  box-shadow: none;
  outline: none;
}
.fp-input-prefix, .fp-input-suffix {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  color: var(--color-text-secondary);
  background-color: var(--color-surface-hover);
  white-space: nowrap;
  border: none;
  line-height: 1.5;
  user-select: none;
}
.fp-input-prefix {
  border-right: 1px solid var(--color-border);
}
.fp-input-suffix {
  border-left: 1px solid var(--color-border);
}
.fp-input-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-input-action:hover {
  color: var(--color-text-primary);
  background-color: var(--color-surface-hover);
}
.fp-input-action[hidden] {
  display: none;
}
.fp-input-action:last-of-type {
  margin-right: 0.25rem;
}
.fp-input-kbd {
  display: inline-flex;
  align-items: center;
  padding: 0.125rem 0.375rem;
  margin-right: 0.25rem;
  font-family: var(--font-family-mono, ui-monospace, monospace);
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-text-tertiary);
  background-color: var(--color-surface-hover);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  white-space: nowrap;
  pointer-events: none;
}
fp-input[autogrow] textarea {
  resize: none;
  overflow: hidden;
}
fp-otp-input {
  display: block;
}
.fp-otp-group {
  display: inline-flex;
  gap: 0.375rem;
}
.fp-otp-digit {
  width: 2.5rem;
  height: 2.75rem;
  text-align: center;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  color: var(--color-text-primary);
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  box-shadow: var(--shadow-input);
  outline: none;
  caret-color: var(--brand-primary);
  transition: border-color var(--motion-micro) var(--ease-natural), box-shadow var(--motion-micro) var(--ease-natural);
}
.fp-otp-digit:focus, .fp-otp-digit:focus-visible {
  border-color: var(--color-border-focus);
  box-shadow: var(--shadow-input-focus-ring);
}
.fp-otp-digit::placeholder {
  color: var(--color-text-tertiary);
}
.fp-otp-digit:disabled {
  background-color: var(--color-surface-hover);
  color: var(--color-text-disabled);
  cursor: not-allowed;
}
.toast-item {
  position: absolute;
  left: calc(var(--spacing) * 0);
  width: 100%;
  -webkit-user-select: none;
  user-select: none;
  z-index: var(--toast-z-index, 100);
  top: var(--toast-top, auto);
  bottom: var(--toast-bottom, auto);
  transform: var(--toast-transform, translateY(0));
  scale: var(--toast-scale, 100%);
  opacity: var(--toast-opacity, 1);
  transition: transform 400ms ease, opacity 400ms ease, scale 400ms ease, top 400ms ease, bottom 400ms ease, height 200ms ease;
}
.toast-item[data-mounted="false"] {
  opacity: 0;
}
.toast-item[data-mounted="false"][data-position*="bottom"] {
  transform: translateY(100%);
}
.toast-item[data-mounted="false"][data-position*="top"] {
  transform: translateY(-100%);
}
.toast-item[data-removed="true"] {
  opacity: 0;
  scale: 95%;
  pointer-events: none;
}
.toast-item[data-removed="true"][data-expanded="false"][data-position*="bottom"] {
  transform: translateY(calc(var(--toast-index) * 14px + 5%));
}
.toast-item[data-removed="true"][data-expanded="false"][data-position*="top"] {
  transform: translateY(calc(-1 * (var(--toast-index) * 14px + 5%)));
}
.toast-item[data-removed="true"][data-overflow="true"][data-expanded="false"][data-position*="bottom"] {
  transform: translateY(calc(-1 * (var(--toast-index) * 14px + 25%)));
  scale: 78%;
}
.toast-item[data-removed="true"][data-overflow="true"][data-expanded="false"][data-position*="top"] {
  transform: translateY(calc(var(--toast-index) * 14px + 25%));
  scale: 78%;
}
.toast-item[data-visible="false"] {
  pointer-events: none;
}
.toast-item[data-expanded="true"] {
  --toast-scale: 100%;
  height: var(--initial-height);
}
.toast-item[data-expanded="true"][data-position*="bottom"] {
  --toast-top: auto;
  --toast-bottom: var(--toast-offset, 0px);
  --toast-transform: translateY(0);
}
.toast-item[data-expanded="true"][data-position*="top"] {
  --toast-top: var(--toast-offset, 0px);
  --toast-bottom: auto;
  --toast-transform: translateY(0);
}
.toast-item[data-expanded="false"][data-front="true"] {
  --toast-scale: 100%;
  --toast-opacity: 1;
  height: var(--initial-height);
}
.toast-item[data-expanded="false"][data-front="true"][data-position*="bottom"] {
  --toast-top: auto;
  --toast-bottom: 0px;
  --toast-transform: translateY(0);
}
.toast-item[data-expanded="false"][data-front="true"][data-position*="top"] {
  --toast-top: 0px;
  --toast-bottom: auto;
  --toast-transform: translateY(0);
}
.toast-item[data-expanded="false"]:not([data-front="true"]) {
  height: var(--front-toast-height);
  overflow: hidden;
  --toast-scale: calc(100% - (var(--toast-index) * 6%));
  display: flex;
  flex-direction: column;
}
.toast-item[data-expanded="false"]:not([data-front="true"])[data-position*="bottom"] {
  --toast-top: auto;
  --toast-bottom: 0px;
  --toast-transform: translateY(calc(-1 * var(--toast-index) * 14px));
  justify-content: flex-start;
}
.toast-item[data-expanded="false"]:not([data-front="true"])[data-position*="top"] {
  --toast-top: 0px;
  --toast-bottom: auto;
  --toast-transform: translateY(calc(var(--toast-index) * 14px));
  justify-content: flex-end;
}
.toast-item[data-expanded="false"][data-visible="false"] {
  --toast-opacity: 0;
  --toast-scale: 82%;
}
.toast-item[data-expanded="false"][data-visible="false"][data-position*="bottom"] {
  --toast-top: auto;
  --toast-bottom: -200px;
  --toast-transform: translateY(0);
}
.toast-item[data-expanded="false"][data-visible="false"][data-position*="top"] {
  --toast-top: -200px;
  --toast-bottom: auto;
  --toast-transform: translateY(0);
}
.slideover {
  position: fixed;
  inset-block: calc(var(--spacing) * 0);
  margin: calc(var(--spacing) * 0);
  width: 100%;
  padding: calc(var(--spacing) * 6);
  background: var(--color-surface);
  box-shadow: var(--elevation-floating);
  overflow-y: auto;
  height: 100vh;
  max-height: 100vh;
}
.slideover-sm {
  max-width: 20rem;
}
.slideover-md {
  max-width: 28rem;
}
.slideover-lg {
  max-width: 42rem;
}
.slideover-xl {
  max-width: 56rem;
}
.slideover-right {
  margin-left: auto;
  border-right: 1px solid var(--color-border);
  animation: slideover-in-right 0.3s var(--ease-natural);
}
.slideover-right[closing] {
  animation: slideover-out-right 0.3s var(--ease-natural);
}
.slideover-left {
  margin-right: auto;
  border-left: 1px solid var(--color-border);
  animation: slideover-in-left 0.3s var(--ease-natural);
}
.slideover-left[closing] {
  animation: slideover-out-left 0.3s var(--ease-natural);
}
.slideover::backdrop {
  background: var(--color-backdrop);
  animation: slideover-backdrop-fade-in 0.3s var(--ease-natural);
}
.slideover[closing]::backdrop {
  animation: slideover-backdrop-fade-out 0.3s var(--ease-natural);
}
@keyframes slideover-in-right {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideover-out-right {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}
@keyframes slideover-in-left {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideover-out-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes slideover-backdrop-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes slideover-backdrop-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.command-palette {
  padding: 0;
  border: none;
  background: transparent;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
  &::backdrop {
    background: var(--color-backdrop);
    backdrop-filter: blur(4px);
  }
  &[open] {
    animation: command-palette-fade-in 150ms ease-out;
  }
  &[open]::backdrop {
    animation: command-palette-backdrop-in 150ms ease-out;
  }
  &[closing] {
    animation: command-palette-fade-out 100ms ease-in forwards;
  }
  &[closing]::backdrop {
    animation: command-palette-backdrop-out 100ms ease-in forwards;
  }
}
.command-palette__panel {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  outline: 1px solid var(--color-scrim);
  outline-offset: -1px;
}
.command-palette__input {
  border: none;
  outline: none;
  box-shadow: none;
  &:focus {
    border: none;
    outline: none;
    box-shadow: none;
    --tw-ring-shadow: none;
  }
}
.command-palette__item {
  outline: none;
  &:focus {
    outline: none;
  }
  &[hidden] {
    display: none;
  }
  &[aria-selected="true"] {
    background: var(--color-button-primary-bg);
    color: var(--color-button-primary-text);
    svg {
      color: var(--color-button-primary-text);
    }
    .command-palette__hint {
      display: inline;
    }
    .command-palette__shortcut {
      color: var(--color-button-primary-text);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklch, var(--color-button-primary-text), transparent 30%);
      }
    }
  }
}
.command-palette__hint {
  display: none;
}
@keyframes command-palette-fade-in {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes command-palette-fade-out {
  from {
    opacity: 1;
    transform: scale(1);
  }
  to {
    opacity: 0;
    transform: scale(0.95);
  }
}
@keyframes command-palette-backdrop-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes command-palette-backdrop-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.cp-overline {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  font-weight: var(--font-weight-medium, 500);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-secondary);
  line-height: 1.4;
}
.cp-why-block {
  margin: 0;
  font-size: 0.78125rem;
  line-height: 1.5;
  color: var(--color-text-secondary);
}
.cp-why-block__label {
  font-weight: var(--font-weight-semibold, 600);
  color: var(--color-text-primary);
  margin-right: 0.375rem;
}
.cp-why-block__body {
  color: inherit;
}
.cp-metric {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.125rem;
  line-height: 1.1;
}
.cp-metric__value {
  font-family: var(--font-family-sans);
  font-weight: var(--font-weight-semibold, 600);
  color: var(--color-text-primary);
  line-height: 1.1;
  letter-spacing: -0.01em;
}
.cp-metric--small .cp-metric__value {
  font-size: 1.25rem;
}
.cp-metric--medium .cp-metric__value {
  font-size: 1.5rem;
}
.cp-metric--large .cp-metric__value {
  font-size: 2rem;
}
.cp-metric--warn .cp-metric__value {
  color: var(--color-accent, currentColor);
}
.cp-metric__caption {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  font-weight: var(--font-weight-medium, 500);
  color: var(--color-text-secondary);
  letter-spacing: 0.3px;
  text-transform: uppercase;
}
.cp-confidence-bar {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.cp-confidence-bar__track {
  width: 50px;
  height: 4px;
  background: var(--color-surface-muted);
  border-radius: var(--radius-sm, 2px);
  overflow: hidden;
}
.cp-confidence-bar__fill {
  height: 100%;
  transition: width var(--motion-micro, 150ms) var(--ease-natural, ease);
}
.cp-confidence-bar__fill--strong {
  background: var(--color-text-primary);
}
.cp-confidence-bar__fill--weak {
  background: var(--color-confidence-bar-weak, var(--mp-amber-brown, #c9a64b));
}
.cp-confidence-bar__label {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-secondary);
  min-width: 2.5rem;
}
.cp-section-nav {
  display: flex;
  border-bottom: 1px solid var(--color-divider);
}
.cp-section-nav__list {
  display: flex;
  align-items: stretch;
  gap: 1.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.cp-section-nav__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 0;
  color: var(--color-text-secondary);
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: var(--font-weight-medium, 500);
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
}
.cp-section-nav__link:hover {
  color: var(--color-text-primary);
}
.cp-section-nav__link--active {
  color: var(--color-text-primary);
  font-weight: var(--font-weight-semibold, 600);
  border-bottom-color: var(--color-text-primary);
}
.cp-section-nav__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  padding: 0 0.375rem;
  height: 1rem;
  font-family: var(--font-family-mono);
  font-size: 0.625rem;
  font-weight: var(--font-weight-medium, 500);
  line-height: 1;
  letter-spacing: 0.3px;
  color: var(--color-chrome-text, var(--color-background));
  background: var(--color-chrome-bg, var(--color-text-primary));
  border-radius: var(--radius-sm, 2px);
}
.cp-filter-pills {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
}
.cp-filter-pills__label {
  position: relative;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
}
.cp-filter-pills__pill {
  padding: 0.375rem 0.75rem;
  border-radius: var(--radius-sm, 2px);
  font-size: 0.875rem;
  font-weight: var(--font-weight-medium, 500);
  color: var(--color-text-secondary);
  background: transparent;
  user-select: none;
  transition: color var(--motion-micro, 150ms) var(--ease-natural, ease), background-color var(--motion-micro, 150ms) var(--ease-natural, ease);
}
.cp-filter-pills__pill:hover {
  color: var(--color-text-primary);
}
.cp-filter-pills__label > .peer:checked ~ .cp-filter-pills__pill, .cp-filter-pills__label > input:checked + .cp-filter-pills__pill {
  background: var(--color-text-primary);
  color: var(--color-background);
  font-weight: var(--font-weight-semibold, 600);
}
.cp-table {
  width: 100%;
}
.cp-table--editorial {
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}
.cp-table__scroll {
  width: 100%;
  overflow-x: auto;
}
.cp-table__grid {
  width: 100%;
  border-collapse: collapse;
  background: transparent;
}
.cp-table__th {
  font-size: 0.75rem;
  font-weight: var(--font-weight-medium, 500);
  color: var(--color-text-secondary);
  border-bottom: 1px solid var(--color-border);
  padding: 10px 20px;
  text-align: left;
  background: transparent;
}
.cp-table__th--pad {
  padding: 10px 20px;
}
.cp-table__th--tight {
  padding: 10px 12px;
}
.cp-table__th--right {
  text-align: right;
}
.cp-table__th--mono {
  font-family: var(--font-family-mono);
  font-size: 0.625rem;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.cp-table__tr {
  border-top: 1px solid var(--color-border);
}
.cp-table__td {
  font-size: 0.875rem;
  color: var(--color-text-primary);
  padding: 14px 20px;
  text-align: left;
}
.cp-table__td--pad {
  padding: 14px 20px;
}
.cp-table__td--tight {
  padding: 14px 12px;
}
.cp-table__td--right {
  text-align: right;
}
.cp-table__header, .cp-table__footer {
  padding: 10px 20px;
  color: var(--color-text-secondary);
}
.cp-table__footer {
  border-top: 1px solid var(--color-border);
}
.cp-table__empty {
  padding: 2rem;
  text-align: center;
  color: var(--color-text-secondary);
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  letter-spacing: 0.3px;
}
.cp-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 2rem 1rem;
  text-align: center;
}
.cp-empty-state--dashed {
  border: 1px dashed var(--color-text-secondary);
  border-radius: var(--radius-md, 4px);
  background: transparent;
  color: var(--color-text-secondary);
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  letter-spacing: 0.3px;
}
.cp-empty-state__icon {
  display: block;
  width: 3rem;
  height: 3rem;
  margin-inline: auto;
  flex: none;
  color: var(--color-text-tertiary);
}
.cp-empty-state--dashed .cp-empty-state__icon {
  width: 2.5rem;
  height: 2.5rem;
  margin-bottom: 0.25rem;
}
.cp-empty-state__title {
  margin: 0.5rem 0 0;
  font-size: 0.75rem;
  font-weight: var(--font-weight-medium, 500);
  color: var(--color-text-primary);
  text-transform: lowercase;
  letter-spacing: 0.3px;
}
.cp-empty-state__description {
  margin: 0.25rem 0 0;
  max-width: 40ch;
  color: var(--color-text-secondary);
  line-height: 1.5;
}
.cp-empty-state__actions {
  margin-top: 1rem;
}
.cp-code-block {
  margin: 0;
  font-family: var(--font-family-mono);
}
.cp-code-block--inverse {
  background: var(--color-text-primary);
  color: var(--color-background);
  padding: 1rem 1.25rem;
  border-radius: var(--radius-md, 4px);
  font-size: 0.875rem;
  line-height: 1.5;
}
.cp-code-block--inverse code {
  color: inherit;
  background: transparent;
}
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");
:root {
  --mp-ink: #1a1a1a;
  --mp-paper: #fbfaf7;
  --mp-paper-alt: #f3efe6;
  --mp-line: #e3ddd0;
  --mp-line-soft: #ece7db;
  --mp-muted: #6b6660;
  --mp-muted-2: #8a857d;
  --mp-warn: #c5623a;
  --mp-warn-soft: #fbeadf;
  --mp-warn-line: #e8b79a;
  --mp-warn-text: #8b3a1c;
  --mp-ok-dot: #6ccf8e;
  --mp-amber-brown: #c9a64b;
  --color-chrome-bg: var(--mp-ink);
  --color-chrome-text: var(--mp-paper);
  --color-chrome-border: transparent;
  --color-banner-dot: var(--mp-ok-dot);
  --color-banner-dot-warn: var(--mp-warn);
  --font-family-sans: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;
  --font-family-mono: "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;
  --radius-sm: 2px;
  --radius-base: 2px;
  --radius-md: 4px;
  --radius-lg: 4px;
  --radius-xl: 4px;
  --radius-2xl: 4px;
  --radius-full: 9999px;
  --radius-badge: 0;
  --shadow-sm: none;
  --shadow-base: none;
  --shadow-md: none;
  --shadow-lg: none;
  --shadow-xl: none;
  --shadow-input: none;
  --shadow-input-focus-ring: 0 0 0 2px var(--mp-ink);
  --shadow-input-focus-ring-error: 0 0 0 2px var(--mp-warn);
  --elevation-flat: inset 0 0 0 1px var(--mp-line);
  --elevation-raised: none;
  --elevation-floating: none;
  --elevation-modal: none;
  --hover-lift: none;
  --active-press: none;
  --focus-glow-width: 2px;
  --focus-glow-opacity: 1;
  --color-background: var(--mp-paper);
  --color-surface: var(--mp-paper);
  --color-surface-hover: var(--mp-paper-alt);
  --color-surface-active: var(--mp-paper-alt);
  --color-surface-muted: var(--mp-paper-alt);
  --color-surface-subtle: var(--mp-paper-alt);
  --color-text-primary: var(--mp-ink);
  --color-text-secondary: var(--mp-muted);
  --color-text-tertiary: var(--mp-muted-2);
  --color-text-disabled: var(--mp-muted-2);
  --color-border: var(--mp-line);
  --color-border-hover: var(--mp-ink);
  --color-border-focus: var(--mp-ink);
  --color-divider: var(--mp-line-soft);
  --color-link: var(--mp-ink);
  --color-link-hover: var(--mp-ink);
  --color-link-visited: var(--mp-muted);
  --color-accent: var(--mp-warn);
  --color-accent-dark: var(--mp-warn);
  --color-accent-emphasis: var(--mp-warn);
  --color-accent-subtle: var(--mp-warn-soft);
  --color-accent-primary: var(--mp-warn);
  --color-accent-500: var(--mp-warn);
  --color-button-primary-bg: var(--mp-ink);
  --color-button-primary-bg-hover: #000;
  --color-button-primary-bg-active: #000;
  --color-button-primary-text: var(--mp-paper);
  --color-button-primary-border: transparent;
  --color-button-secondary-bg: transparent;
  --color-button-secondary-bg-hover: var(--mp-paper-alt);
  --color-button-secondary-bg-active: var(--mp-paper-alt);
  --color-button-secondary-text: var(--mp-ink);
  --color-button-secondary-border: var(--mp-line);
  --color-alert-success-bg: var(--mp-paper-alt);
  --color-alert-success-border: var(--mp-line);
  --color-alert-warning-bg: var(--mp-warn-soft);
  --color-alert-warning-border: var(--mp-warn-line);
  --color-alert-error-bg: var(--mp-warn-soft);
  --color-alert-error-border: var(--mp-warn-line);
  --color-alert-info-bg: var(--mp-paper-alt);
  --color-alert-info-border: var(--mp-line);
  --color-viz-primary: var(--mp-ink);
  --color-viz-success: var(--mp-ink);
  --color-viz-warning: var(--mp-warn);
  --color-viz-error: var(--mp-warn);
  --color-viz-accent: var(--mp-warn);
  --focus-ring-width: 2px;
  --focus-ring-offset: 2px;
  --focus-ring-color: var(--mp-ink);
  --color-backdrop: rgb(0 0 0 / 50%);
  --color-scrim: rgb(0 0 0 / 5%);
  --color-form-success-border: var(--mp-line);
  --color-form-success-bg: var(--mp-paper-alt);
  --color-form-error-border: var(--mp-warn-line);
  --color-form-error-bg: var(--mp-warn-soft);
  --color-badge-primary-bg: var(--mp-paper-alt);
  --color-badge-primary-text: var(--mp-ink);
  --color-badge-primary-ring: var(--mp-line);
  --color-badge-neutral-bg: var(--mp-paper-alt);
  --color-badge-neutral-text: var(--mp-ink);
  --color-badge-neutral-ring: var(--mp-line);
  --color-badge-success-bg: var(--mp-paper-alt);
  --color-badge-success-text: var(--mp-ink);
  --color-badge-success-ring: var(--mp-line);
  --color-badge-warning-bg: var(--mp-warn-soft);
  --color-badge-warning-text: var(--mp-warn-text);
  --color-badge-warning-ring: var(--mp-warn-line);
  --color-badge-error-bg: var(--mp-warn-soft);
  --color-badge-error-text: var(--mp-warn-text);
  --color-badge-error-ring: var(--mp-warn-line);
  --color-badge-info-bg: var(--mp-paper-alt);
  --color-badge-info-text: var(--mp-ink);
  --color-badge-info-ring: var(--mp-line);
  --kind-invariant-bg: #d8d7a8;
  --kind-invariant-fg: #3a3a14;
  --kind-guideline-bg: #f4dc9b;
  --kind-guideline-fg: #584211;
  --kind-standard-bg: #e5e1d4;
  --kind-standard-fg: #3d3a30;
  --kind-path-bg: #2d4947;
  --kind-path-fg: #eaeae4;
  --kind-directive-bg: #1a1a1a;
  --kind-directive-fg: #fbfaf7;
  --kind-goal-bg: #3c4a4a;
  --kind-goal-fg: #e8e8e2;
  --kind-decision-bg: #3c4a4a;
  --kind-decision-fg: #e8e8e2;
  --kind-component-bg: #e5e1d4;
  --kind-component-fg: #3d3a30;
  --kind-dependency-bg: #e5e1d4;
  --kind-dependency-fg: #3d3a30;
  --kind-in-flight-bg: #d8d7a8;
  --kind-in-flight-fg: #3a3a14;
  --kind-active-bg: #d8d7a8;
  --kind-active-fg: #3a3a14;
  --kind-draft-bg: #f4dc9b;
  --kind-draft-fg: #584211;
  --kind-archive-bg: #e5e1d4;
  --kind-archive-fg: #3d3a30;
  --kind-closed-bg: #e5e1d4;
  --kind-closed-fg: #3d3a30;
  --kind-blocked-bg: var(--mp-warn-soft);
  --kind-blocked-fg: var(--mp-warn-text);
}
:root {
  color-scheme: light;
}
.form-group {
  margin-bottom: var(--space-generous);
  position: relative;
}
.form-label {
  display: block;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 500;
  color: var(--color-text-primary);
  margin-bottom: 0.25rem;
}
.form-label abbr[title] {
  color: var(--color-error-500);
  text-decoration: none;
  margin-left: 0.125rem;
}
.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: var(--radius-base);
  background-color: var(--color-surface);
  color: var(--color-text-primary);
  border: 1px solid var(--color-border);
  box-shadow: 0px 1px 2px 0px rgb(0 0 0 / 0.05);
  outline: none;
  transition: border-color var(--motion-micro) var(--ease-natural), box-shadow var(--motion-micro) var(--ease-natural);
}
.form-control::placeholder {
  color: var(--color-text-tertiary);
}
.form-control:focus, .form-control:focus-visible {
  border-color: var(--color-border-focus);
  box-shadow: 0 0 0 var(--focus-ring-width) oklch(from var(--color-border-focus) l c h / 0.2);
}
.form-control:disabled, .form-control[readonly] {
  background-color: var(--color-surface-hover);
  color: var(--color-text-disabled);
  cursor: not-allowed;
}
.form-control-error {
  border-color: var(--color-error-500);
  box-shadow: inset 0 0 0 1px var(--color-error-500);
}
.form-control-error:focus, .form-control-error:focus-visible {
  border-color: var(--color-error-500);
  box-shadow: 0 0 0 var(--focus-ring-width) oklch(from var(--color-error-500) l c h / 0.2);
}
.form-hint {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  line-height: 1.33;
  color: var(--color-text-secondary);
}
.form-hint-error {
  color: var(--color-error-600);
}
select.form-control {
  appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 0.5rem center;
  background-repeat: no-repeat;
  background-size: 1.5em 1.5em;
  padding-right: 2.5rem;
}
.form-check-input {
  width: 1rem;
  height: 1rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-border);
  cursor: pointer;
  accent-color: var(--color-button-primary-bg);
}
.form-check-input:focus {
  outline: var(--focus-ring-width) solid var(--color-border-focus);
  outline-offset: var(--focus-ring-offset);
}
.form-radio-input {
  width: 1rem;
  height: 1rem;
  border-radius: 9999px;
  border: 1px solid var(--color-border);
  cursor: pointer;
  accent-color: var(--color-button-primary-bg);
}
.form-radio-input:focus {
  outline: var(--focus-ring-width) solid var(--color-border-focus);
  outline-offset: var(--focus-ring-offset);
}
.form-file-input {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: var(--radius-base);
  color: var(--color-text-primary);
  border: 1px solid var(--color-border);
}
.form-file-input:focus {
  border-color: var(--color-border-focus);
  outline: none;
  box-shadow: 0 0 0 var(--focus-ring-width) oklch(from var(--color-border-focus) l c h / 0.2);
}
textarea.form-control {
  min-height: 5rem;
  resize: vertical;
}
.form-submit {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  border-radius: var(--radius-base);
  border: none;
  cursor: pointer;
  background-color: var(--color-button-primary-bg);
  color: var(--color-button-primary-text);
  box-shadow: 0px 1px 2px 0px rgb(0 0 0 / 0.05);
  transition: background-color var(--motion-micro) var(--ease-natural), transform var(--motion-instant) var(--ease-natural);
}
.form-submit:hover {
  background-color: var(--color-button-primary-bg-hover);
  transform: translateY(-1px);
}
.form-submit:active {
  transform: translateY(1px);
}
.form-submit:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}
fp-toggle.form-toggle {
  display: inline-flex;
  align-items: center;
  position: relative;
  width: auto;
  height: auto;
  border-radius: 0;
}
.form-toggle-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.form-toggle-label {
  position: relative;
  padding-left: 3.25rem;
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-text-primary);
  line-height: 1.5rem;
  user-select: none;
}
fp-toggle .form-toggle-label.form-toggle-label--standalone {
  padding-left: 0;
  width: 2.75rem;
  height: 1.5rem;
  display: block;
}
.form-toggle-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 2.75rem;
  height: 1.5rem;
  border-radius: 9999px;
  background-color: var(--color-border);
  transition: background-color var(--motion-micro) var(--ease-natural);
}
.form-toggle-label::after {
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 9999px;
  background-color: var(--color-surface);
  box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  transition: transform var(--motion-micro) var(--ease-natural);
}
.form-toggle-input:checked + .form-toggle-label::before {
  background-color: var(--brand-primary);
}
.form-toggle-input:checked + .form-toggle-label::after {
  transform: translateX(1.25rem);
}
.form-toggle-input:focus-visible + .form-toggle-label::before {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
}
.form-toggle-input:disabled + .form-toggle-label {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}
.form-toggle-input:disabled + .form-toggle-label::before {
  background-color: var(--color-surface-hover);
}
.form-toggle-input:disabled + .form-toggle-label::after {
  box-shadow: none;
}
.form-toggle-input:disabled:checked + .form-toggle-label::before {
  opacity: 0.5;
}
fp-combobox {
  display: block;
  position: relative;
}
fp-combobox select[hidden] {
  display: none;
}
fp-combobox:not([multiple]) > input {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 0.5rem center;
  background-repeat: no-repeat;
  background-size: 1.5em 1.5em;
  padding-right: 2.5rem;
}
.fp-combobox-listbox {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 50;
  max-height: 15rem;
  overflow-y: auto;
  margin-top: 2px;
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  box-shadow: var(--elevation-floating);
}
.fp-combobox-option {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
  cursor: pointer;
  color: var(--color-text-primary);
}
.fp-combobox-option--focused {
  background-color: var(--color-surface-hover);
}
.fp-combobox-option--selected {
  font-weight: 600;
  color: var(--brand-primary);
}
.fp-combobox-option--disabled {
  color: var(--color-text-disabled);
  cursor: not-allowed;
}
.fp-combobox-no-results {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  font-style: italic;
  color: var(--color-text-tertiary);
}
.fp-combobox-loading {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  color: var(--color-text-tertiary);
}
.fp-combobox-clear {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 1rem;
  line-height: 1;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-combobox-clear:hover {
  color: var(--color-text-primary);
  background-color: var(--color-surface-hover);
}
.fp-combobox-clear[hidden] {
  display: none;
}
fp-combobox[clearable]:not([multiple]) > input {
  padding-right: 3.5rem;
}
fp-combobox[clearable]:not([multiple]) > .fp-combobox-clear {
  right: 2rem;
}
fp-combobox[multiple] .fp-combobox-clear {
  position: static;
  transform: none;
}
.fp-combobox-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem;
  min-height: 2.25rem;
  padding: 0.25rem 0.375rem;
  cursor: text;
}
.fp-combobox-tags-input {
  flex: 1 1 4rem;
  min-width: 4rem;
  border: none;
  outline: none;
  padding: 0.125rem 0.375rem;
  font-size: 0.875rem;
  line-height: 1.5;
  background: transparent;
  color: var(--color-text-primary);
}
.fp-combobox-tags-input::placeholder {
  color: var(--color-text-tertiary);
}
.fp-combobox-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  max-width: 100%;
  padding: 0.0625rem 0.375rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--color-text-primary);
  background-color: var(--color-surface-hover);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full, 9999px);
}
.fp-combobox-tag-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fp-combobox-tag-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 0.875rem;
  line-height: 1;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-combobox-tag-remove:hover {
  color: var(--color-error-500);
  background-color: var(--color-error-50);
}
.fp-combobox-option-check {
  display: inline-block;
  width: 1rem;
  flex-shrink: 0;
  text-align: center;
  color: var(--brand-primary);
}
fp-combobox[multiple] .fp-combobox-option {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.fp-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
fp-file-upload {
  display: block;
  position: relative;
}
.fp-file-dropzone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 1.5rem;
  border: 2px dashed var(--color-border);
  border-radius: var(--radius-md);
  background-color: var(--color-surface);
  cursor: pointer;
  text-align: center;
  transition: border-color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-file-dropzone:hover {
  border-color: var(--color-border-hover);
  background-color: var(--color-surface-hover);
}
.fp-file-dropzone--active {
  border-color: var(--brand-primary);
  background-color: var(--color-surface-hover);
}
.fp-file-upload-icon {
  width: 2rem;
  height: 2rem;
  color: var(--color-text-tertiary);
}
.fp-file-dropzone-text {
  font-size: 0.875rem;
  color: var(--color-text-secondary);
}
.fp-file-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.fp-file-list:empty {
  display: none;
}
.fp-file-item {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.375rem;
  align-items: center;
  padding: 0.625rem 0.75rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  background-color: var(--color-surface);
  transition: opacity var(--motion-micro) var(--ease-natural), transform var(--motion-micro) var(--ease-natural);
}
.fp-file-item--complete {
  border-color: oklch(from var(--color-success) l c h / 0.4);
  background-color: oklch(from var(--color-success) l c h / 0.05);
}
.fp-file-item--error {
  border-color: oklch(from var(--color-error) l c h / 0.4);
  background-color: oklch(from var(--color-error) l c h / 0.05);
}
.fp-file-info {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
}
.fp-file-name {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fp-file-size {
  font-size: 0.75rem;
  color: var(--color-text-tertiary);
  flex-shrink: 0;
}
.fp-file-right {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
}
.fp-file-status {
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--color-text-secondary);
}
.fp-file-item--complete .fp-file-status {
  color: var(--color-success);
}
.fp-file-item--error .fp-file-status {
  color: var(--color-error);
}
.fp-file-progress {
  grid-column: 1 / -1;
  width: 100%;
  height: 4px;
  border-radius: 9999px;
  background-color: var(--color-border);
  overflow: hidden;
}
.fp-file-progress-bar {
  height: 100%;
  border-radius: 9999px;
  background-color: var(--brand-primary);
  transition: width var(--motion-micro) var(--ease-natural);
}
.fp-file-item--complete .fp-file-progress-bar {
  background-color: var(--color-success);
}
.fp-file-item--error .fp-file-progress-bar {
  background-color: var(--color-error);
}
.fp-file-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 1rem;
  line-height: 1;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-file-remove:hover {
  color: var(--color-error-500);
  background-color: var(--color-error-50);
}
.fp-file-error {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  margin-top: 0.5rem;
  border: 1px solid var(--color-error-100);
  border-radius: var(--radius-base);
  background-color: var(--color-error-50);
  font-size: 0.8125rem;
  color: var(--color-error-600);
}
.fp-file-error-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 1rem;
  line-height: 1;
  color: var(--color-error-500);
  cursor: pointer;
  flex-shrink: 0;
}
.fp-file-error-close:hover {
  color: var(--color-error-600);
}
.form-collection {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.form-collection-item {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.form-collection-label {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--color-text-primary);
  cursor: pointer;
}
.form-radio-pills {
  display: inline-flex;
  gap: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full, 9999px);
  padding: 0;
  margin: 0;
  overflow: hidden;
}
.form-radio-pills legend {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.form-radio-pill-item {
  position: relative;
  display: inline-block;
}
.form-radio-pill-item + .form-radio-pill-item {
  border-left: 1px solid var(--color-border);
}
.form-radio-pill {
  display: block;
  padding: 0.375rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-text-secondary);
  cursor: pointer;
  user-select: none;
  transition: background-color var(--motion-micro) var(--ease-natural), color var(--motion-micro) var(--ease-natural);
}
.form-radio-pill:hover {
  background-color: var(--color-surface-hover);
  color: var(--color-text-primary);
}
.fp-sr-only:checked + .form-radio-pill {
  background-color: var(--brand-primary);
  color: var(--color-button-primary-text);
}
.fp-sr-only:focus-visible + .form-radio-pill {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: calc(-1 * var(--focus-ring-width));
}
.air-datepicker {
  --adp-font-family: var(--font-family-sans);
  --adp-font-size: 0.875rem;
  --adp-background-color: var(--color-surface);
  --adp-background-color-hover: var(--color-surface-hover);
  --adp-background-color-active: var(--color-surface-hover);
  --adp-color: var(--color-text-primary);
  --adp-color-secondary: var(--color-text-secondary);
  --adp-accent-color: var(--brand-primary);
  --adp-color-current-date: var(--brand-primary);
  --adp-color-other-month: var(--color-text-disabled);
  --adp-color-other-month-hover: var(--color-text-tertiary);
  --adp-color-disabled: var(--color-text-disabled);
  --adp-border-color: var(--color-border);
  --adp-border-color-inner: var(--color-border);
  --adp-border-color-inline: var(--color-border);
  --adp-border-radius: var(--radius-md);
  --adp-cell-border-radius: var(--radius-base);
  --adp-cell-background-color-selected: var(--brand-primary);
  --adp-cell-background-color-selected-hover: var(--color-button-primary-bg-hover);
  --adp-day-name-color: var(--color-text-secondary);
  --adp-btn-color: var(--brand-primary);
  --adp-btn-color-hover: var(--color-text-primary);
  --adp-btn-background-color-hover: var(--color-surface-hover);
  --adp-btn-background-color-active: var(--color-surface-hover);
  --adp-nav-arrow-color: var(--color-text-secondary);
  --adp-transition-duration: var(--motion-micro);
  --adp-transition-ease: var(--ease-natural);
  --adp-time-track-color: var(--color-border);
  --adp-time-track-color-hover: var(--color-border-hover);
  --adp-time-day-period-color: var(--color-text-secondary);
}
.air-datepicker--pointer:after {
  background: var(--color-surface);
}
.air-datepicker-time--row input[type=range]::-webkit-slider-thumb {
  background: var(--color-surface);
}
.air-datepicker-time--row input[type=range]::-moz-range-thumb {
  background: var(--color-surface);
}
fp-datepicker {
  display: block;
  position: relative;
}
.fp-datepicker-clear {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  background: none;
  font-size: 1rem;
  line-height: 1;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-datepicker-clear:hover {
  color: var(--color-text-primary);
  background-color: var(--color-surface-hover);
}
.fp-datepicker-clear[hidden] {
  display: none;
}
fp-datepicker[clearable] > input.form-control {
  padding-right: 2rem;
}
.air-datepicker--fixed-weeks .air-datepicker-body--cells.-days- {
  min-height: 14rem;
}
.air-datepicker-cell.fp-datepicker-unavailable {
  text-decoration: line-through;
}
.air-datepicker[popover] {
  display: block;
  position: fixed;
  inset: auto;
  margin: 0;
  overflow: visible;
}
.fp-combobox-listbox[popover] {
  inset: auto;
  margin: 0;
}
dialog {
  background-color: var(--color-background);
  color: var(--color-text-primary);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--elevation-floating);
  padding: var(--space-generous);
  max-width: 30rem;
  width: calc(100% - 2rem);
}
dialog::backdrop {
  background: oklch(0% 0 0 / 0.5);
}
fp-input {
  display: block;
  position: relative;
}
.fp-input-group {
  display: flex;
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  background-color: var(--color-surface);
  box-shadow: 0px 1px 2px 0px rgb(0 0 0 / 0.05);
  overflow: hidden;
  transition: border-color var(--motion-micro) var(--ease-natural), box-shadow var(--motion-micro) var(--ease-natural);
}
.fp-input-group:focus-within {
  border-color: var(--color-border-focus);
  box-shadow: 0 0 0 var(--focus-ring-width) oklch(from var(--color-border-focus) l c h / 0.2);
}
.fp-input-group:has(.form-control-error) {
  border-color: var(--color-error-500);
}
.fp-input-group:has(.form-control-error):focus-within {
  box-shadow: 0 0 0 var(--focus-ring-width) oklch(from var(--color-error-500) l c h / 0.2);
}
.fp-input-group > input, .fp-input-group > textarea {
  border: none;
  box-shadow: none;
  background: transparent;
  flex: 1;
  min-width: 0;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.fp-input-group > input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  height: 0.75rem;
  width: 0.75rem;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236b7280'%3e%3cpath d='M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22z'/%3e%3c/svg%3e") center/contain no-repeat;
  cursor: pointer;
}
.fp-input-group > input:focus, .fp-input-group > input:focus-visible, .fp-input-group > textarea:focus, .fp-input-group > textarea:focus-visible {
  border: none;
  box-shadow: none;
  outline: none;
}
.fp-input-prefix, .fp-input-suffix {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  color: var(--color-text-secondary);
  background-color: var(--color-surface-hover);
  white-space: nowrap;
  border: none;
  line-height: 1.5;
  user-select: none;
}
.fp-input-prefix {
  border-right: 1px solid var(--color-border);
}
.fp-input-suffix {
  border-left: 1px solid var(--color-border);
}
.fp-input-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  border: none;
  background: none;
  color: var(--color-text-tertiary);
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: color var(--motion-micro) var(--ease-natural), background-color var(--motion-micro) var(--ease-natural);
}
.fp-input-action:hover {
  color: var(--color-text-primary);
  background-color: var(--color-surface-hover);
}
.fp-input-action[hidden] {
  display: none;
}
.fp-input-action:last-of-type {
  margin-right: 0.25rem;
}
.fp-input-kbd {
  display: inline-flex;
  align-items: center;
  padding: 0.125rem 0.375rem;
  margin-right: 0.25rem;
  font-family: var(--font-family-mono, ui-monospace, monospace);
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-text-tertiary);
  background-color: var(--color-surface-hover);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  white-space: nowrap;
  pointer-events: none;
}
fp-input[autogrow] textarea {
  resize: none;
  overflow: hidden;
}
fp-otp-input {
  display: block;
}
.fp-otp-group {
  display: inline-flex;
  gap: 0.375rem;
}
.fp-otp-digit {
  width: 2.5rem;
  height: 2.75rem;
  text-align: center;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
  color: var(--color-text-primary);
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  box-shadow: 0px 1px 2px 0px rgb(0 0 0 / 0.05);
  outline: none;
  caret-color: var(--brand-primary);
  transition: border-color var(--motion-micro) var(--ease-natural), box-shadow var(--motion-micro) var(--ease-natural);
}
.fp-otp-digit:focus, .fp-otp-digit:focus-visible {
  border-color: var(--color-border-focus);
  box-shadow: 0 0 0 var(--focus-ring-width) oklch(from var(--color-border-focus) l c h / 0.2);
}
.fp-otp-digit::placeholder {
  color: var(--color-text-tertiary);
}
.fp-otp-digit:disabled {
  background-color: var(--color-surface-hover);
  color: var(--color-text-disabled);
  cursor: not-allowed;
}
body {
  font-family: var(--font-family-sans);
  color: var(--color-text-primary);
  background-color: var(--color-background);
}
.air-datepicker-cell.-year-.-other-decade-,.air-datepicker-cell.-day-.-other-month- {
  color: var(--adp-color-other-month);
}
.air-datepicker-cell.-year-.-other-decade-:hover,.air-datepicker-cell.-day-.-other-month-:hover {
  color: var(--adp-color-other-month-hover);
}
.-disabled-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-disabled-.-focus-.air-datepicker-cell.-day-.-other-month- {
  color: var(--adp-color-other-month);
}
.-selected-.air-datepicker-cell.-year-.-other-decade-,.-selected-.air-datepicker-cell.-day-.-other-month- {
  color: #fff;
  background: var(--adp-background-color-selected-other-month);
}
.-selected-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-selected-.-focus-.air-datepicker-cell.-day-.-other-month- {
  background: var(--adp-background-color-selected-other-month-focused);
}
.-in-range-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.air-datepicker-cell.-day-.-other-month- {
  background-color: var(--adp-background-color-in-range);
  color: var(--adp-color);
}
.-in-range-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.-focus-.air-datepicker-cell.-day-.-other-month- {
  background-color: var(--adp-background-color-in-range-focused);
}
.air-datepicker-cell.-year-.-other-decade-:empty,.air-datepicker-cell.-day-.-other-month-:empty {
  background: none;
  border: none;
}
.air-datepicker-cell {
  border-radius: var(--adp-cell-border-radius);
  box-sizing: border-box;
  cursor: pointer;
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.air-datepicker-cell.-focus- {
  background: var(--adp-cell-background-color-hover);
}
.air-datepicker-cell.-current- {
  color: var(--adp-color-current-date);
}
.air-datepicker-cell.-current-.-focus- {
  color: var(--adp-color);
}
.air-datepicker-cell.-current-.-in-range- {
  color: var(--adp-color-current-date);
}
.air-datepicker-cell.-disabled- {
  cursor: default;
  color: var(--adp-color-disabled);
}
.air-datepicker-cell.-disabled-.-focus- {
  color: var(--adp-color-disabled);
}
.air-datepicker-cell.-disabled-.-in-range- {
  color: var(--adp-color-disabled-in-range);
}
.air-datepicker-cell.-disabled-.-current-.-focus- {
  color: var(--adp-color-disabled);
}
.air-datepicker-cell.-in-range- {
  background: var(--adp-cell-background-color-in-range);
  border-radius: 0;
}
.air-datepicker-cell.-in-range-:hover,.air-datepicker-cell.-in-range-.-focus- {
  background: var(--adp-cell-background-color-in-range-hover);
}
.air-datepicker-cell.-range-from- {
  border: 1px solid var(--adp-cell-border-color-in-range);
  background-color: var(--adp-cell-background-color-in-range);
  border-radius: var(--adp-cell-border-radius) 0 0 var(--adp-cell-border-radius);
}
.air-datepicker-cell.-range-to- {
  border: 1px solid var(--adp-cell-border-color-in-range);
  background-color: var(--adp-cell-background-color-in-range);
  border-radius: 0 var(--adp-cell-border-radius) var(--adp-cell-border-radius) 0;
}
.air-datepicker-cell.-range-to-.-range-from- {
  border-radius: var(--adp-cell-border-radius);
}
.air-datepicker-cell.-selected- {
  color: #fff;
  border: none;
  background: var(--adp-cell-background-color-selected);
}
.air-datepicker-cell.-selected-.-current- {
  color: #fff;
  background: var(--adp-cell-background-color-selected);
}
.air-datepicker-cell.-selected-.-focus- {
  background: var(--adp-cell-background-color-selected-hover);
}
.air-datepicker-body {
  transition: all var(--adp-transition-duration) var(--adp-transition-ease);
}
.air-datepicker-body.-hidden- {
  display: none;
}
.air-datepicker-body--day-names {
  display: grid;
  grid-template-columns: repeat(7, var(--adp-day-cell-width));
  margin: 8px 0 3px;
}
.air-datepicker-body--day-name {
  color: var(--adp-day-name-color);
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  text-align: center;
  text-transform: uppercase;
  font-size: .8em;
}
.air-datepicker-body--day-name.-clickable- {
  cursor: pointer;
}
.air-datepicker-body--day-name.-clickable-:hover {
  color: var(--adp-day-name-color-hover);
}
.air-datepicker-body--cells {
  display: grid;
}
.air-datepicker-body--cells.-days- {
  grid-template-columns: repeat(7, var(--adp-day-cell-width));
  grid-auto-rows: var(--adp-day-cell-height);
}
.air-datepicker-body--cells.-months- {
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: var(--adp-month-cell-height);
}
.air-datepicker-body--cells.-years- {
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: var(--adp-year-cell-height);
}
.air-datepicker-nav {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid var(--adp-border-color-inner);
  min-height: var(--adp-nav-height);
  padding: var(--adp-padding);
  box-sizing: content-box;
}
.-only-timepicker- .air-datepicker-nav {
  display: none;
}
.air-datepicker-nav--title,.air-datepicker-nav--action {
  display: flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
}
.air-datepicker-nav--action {
  width: var(--adp-nav-action-size);
  border-radius: var(--adp-border-radius);
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.air-datepicker-nav--action:hover {
  background: var(--adp-background-color-hover);
}
.air-datepicker-nav--action:active {
  background: var(--adp-background-color-active);
}
.air-datepicker-nav--action.-disabled- {
  visibility: hidden;
}
.air-datepicker-nav--action svg {
  width: 32px;
  height: 32px;
}
.air-datepicker-nav--action path {
  fill: none;
  stroke: var(--adp-nav-arrow-color);
  stroke-width: 2px;
}
.air-datepicker-nav--title {
  border-radius: var(--adp-border-radius);
  padding: 0 8px;
}
.air-datepicker-nav--title i {
  font-style: normal;
  color: var(--adp-nav-color-secondary);
  margin-left: .3em;
}
.air-datepicker-nav--title:hover {
  background: var(--adp-background-color-hover);
}
.air-datepicker-nav--title:active {
  background: var(--adp-background-color-active);
}
.air-datepicker-nav--title.-disabled- {
  cursor: default;
  background: none;
}
.air-datepicker-buttons {
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
}
.air-datepicker-button {
  display: inline-flex;
  color: var(--adp-btn-color);
  border-radius: var(--adp-btn-border-radius);
  cursor: pointer;
  height: var(--adp-btn-height);
  border: none;
  background: rgba(255,255,255,0);
}
.air-datepicker-button:hover {
  color: var(--adp-btn-color-hover);
  background: var(--adp-btn-background-color-hover);
}
.air-datepicker-button:focus {
  color: var(--adp-btn-color-hover);
  background: var(--adp-btn-background-color-hover);
  outline: none;
}
.air-datepicker-button:active {
  background: var(--adp-btn-background-color-active);
}
.air-datepicker-button span {
  outline: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.air-datepicker-time {
  display: grid;
  grid-template-columns: max-content 1fr;
  grid-column-gap: 12px;
  align-items: center;
  position: relative;
  padding: 0 var(--adp-time-padding-inner);
}
.-only-timepicker- .air-datepicker-time {
  border-top: none;
}
.air-datepicker-time--current {
  display: flex;
  align-items: center;
  flex: 1;
  font-size: 14px;
  text-align: center;
}
.air-datepicker-time--current-colon {
  margin: 0 2px 3px;
  line-height: 1;
}
.air-datepicker-time--current-hours,.air-datepicker-time--current-minutes {
  line-height: 1;
  font-size: 19px;
  font-family: "Century Gothic",CenturyGothic,AppleGothic,sans-serif;
  position: relative;
  z-index: 1;
}
.air-datepicker-time--current-hours:after,.air-datepicker-time--current-minutes:after {
  content: "";
  background: var(--adp-background-color-hover);
  border-radius: var(--adp-border-radius);
  position: absolute;
  left: -2px;
  top: -3px;
  right: -2px;
  bottom: -2px;
  z-index: -1;
  opacity: 0;
}
.air-datepicker-time--current-hours.-focus-:after,.air-datepicker-time--current-minutes.-focus-:after {
  opacity: 1;
}
.air-datepicker-time--current-ampm {
  text-transform: uppercase;
  align-self: flex-end;
  color: var(--adp-time-day-period-color);
  margin-left: 6px;
  font-size: 11px;
  margin-bottom: 1px;
}
.air-datepicker-time--row {
  display: flex;
  align-items: center;
  font-size: 11px;
  height: 17px;
  background: linear-gradient(to right, var(--adp-time-track-color), var(--adp-time-track-color)) left 50%/100% var(--adp-time-track-height) no-repeat;
}
.air-datepicker-time--row:first-child {
  margin-bottom: 4px;
}
.air-datepicker-time--row input[type=range] {
  background: none;
  cursor: pointer;
  flex: 1;
  height: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
  -webkit-appearance: none;
}
.air-datepicker-time--row input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
}
.air-datepicker-time--row input[type=range]::-ms-tooltip {
  display: none;
}
.air-datepicker-time--row input[type=range]:hover::-webkit-slider-thumb {
  border-color: var(--adp-time-track-color-hover);
}
.air-datepicker-time--row input[type=range]:hover::-moz-range-thumb {
  border-color: var(--adp-time-track-color-hover);
}
.air-datepicker-time--row input[type=range]:hover::-ms-thumb {
  border-color: var(--adp-time-track-color-hover);
}
.air-datepicker-time--row input[type=range]:focus {
  outline: none;
}
.air-datepicker-time--row input[type=range]:focus::-webkit-slider-thumb {
  background: var(--adp-cell-background-color-selected);
  border-color: var(--adp-cell-background-color-selected);
}
.air-datepicker-time--row input[type=range]:focus::-moz-range-thumb {
  background: var(--adp-cell-background-color-selected);
  border-color: var(--adp-cell-background-color-selected);
}
.air-datepicker-time--row input[type=range]:focus::-ms-thumb {
  background: var(--adp-cell-background-color-selected);
  border-color: var(--adp-cell-background-color-selected);
}
.air-datepicker-time--row input[type=range]::-webkit-slider-thumb {
  box-sizing: border-box;
  height: 12px;
  width: 12px;
  border-radius: 3px;
  border: 1px solid var(--adp-time-track-color);
  background: #fff;
  cursor: pointer;
  -webkit-transition: background var(--adp-transition-duration);
  transition: background var(--adp-transition-duration);
}
.air-datepicker-time--row input[type=range]::-moz-range-thumb {
  box-sizing: border-box;
  height: 12px;
  width: 12px;
  border-radius: 3px;
  border: 1px solid var(--adp-time-track-color);
  background: #fff;
  cursor: pointer;
  -moz-transition: background var(--adp-transition-duration);
  transition: background var(--adp-transition-duration);
}
.air-datepicker-time--row input[type=range]::-ms-thumb {
  box-sizing: border-box;
  height: 12px;
  width: 12px;
  border-radius: 3px;
  border: 1px solid var(--adp-time-track-color);
  background: #fff;
  cursor: pointer;
  -ms-transition: background var(--adp-transition-duration);
  transition: background var(--adp-transition-duration);
}
.air-datepicker-time--row input[type=range]::-webkit-slider-thumb {
  margin-top: calc(var(--adp-time-thumb-size)/2*-1);
}
.air-datepicker-time--row input[type=range]::-webkit-slider-runnable-track {
  border: none;
  height: var(--adp-time-track-height);
  cursor: pointer;
  color: rgba(0,0,0,0);
  background: rgba(0,0,0,0);
}
.air-datepicker-time--row input[type=range]::-moz-range-track {
  border: none;
  height: var(--adp-time-track-height);
  cursor: pointer;
  color: rgba(0,0,0,0);
  background: rgba(0,0,0,0);
}
.air-datepicker-time--row input[type=range]::-ms-track {
  border: none;
  height: var(--adp-time-track-height);
  cursor: pointer;
  color: rgba(0,0,0,0);
  background: rgba(0,0,0,0);
}
.air-datepicker-time--row input[type=range]::-ms-fill-lower {
  background: rgba(0,0,0,0);
}
.air-datepicker-time--row input[type=range]::-ms-fill-upper {
  background: rgba(0,0,0,0);
}
.air-datepicker {
  --adp-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --adp-font-size: 14px;
  --adp-width: 246px;
  --adp-z-index: 100;
  --adp-padding: 4px;
  --adp-grid-areas: "nav" "body" "timepicker" "buttons";
  --adp-transition-duration: .3s;
  --adp-transition-ease: ease-out;
  --adp-transition-offset: 8px;
  --adp-background-color: #fff;
  --adp-background-color-hover: #f0f0f0;
  --adp-background-color-active: #eaeaea;
  --adp-background-color-in-range: rgba(92, 196, 239, .1);
  --adp-background-color-in-range-focused: rgba(92, 196, 239, .2);
  --adp-background-color-selected-other-month-focused: #8ad5f4;
  --adp-background-color-selected-other-month: #a2ddf6;
  --adp-color: #4a4a4a;
  --adp-color-secondary: #9c9c9c;
  --adp-accent-color: #4eb5e6;
  --adp-color-current-date: var(--adp-accent-color);
  --adp-color-other-month: #dedede;
  --adp-color-disabled: #aeaeae;
  --adp-color-disabled-in-range: #939393;
  --adp-color-other-month-hover: #c5c5c5;
  --adp-border-color: #dbdbdb;
  --adp-border-color-inner: #efefef;
  --adp-border-radius: 4px;
  --adp-border-color-inline: #d7d7d7;
  --adp-nav-height: 32px;
  --adp-nav-arrow-color: var(--adp-color-secondary);
  --adp-nav-action-size: 32px;
  --adp-nav-color-secondary: var(--adp-color-secondary);
  --adp-day-name-color: #ff9a19;
  --adp-day-name-color-hover: #8ad5f4;
  --adp-day-cell-width: 1fr;
  --adp-day-cell-height: 32px;
  --adp-month-cell-height: 42px;
  --adp-year-cell-height: 56px;
  --adp-pointer-size: 10px;
  --adp-poiner-border-radius: 2px;
  --adp-pointer-offset: 14px;
  --adp-cell-border-radius: 4px;
  --adp-cell-background-color-hover: var(--adp-background-color-hover);
  --adp-cell-background-color-selected: #5cc4ef;
  --adp-cell-background-color-selected-hover: #45bced;
  --adp-cell-background-color-in-range: rgba(92, 196, 239, 0.1);
  --adp-cell-background-color-in-range-hover: rgba(92, 196, 239, 0.2);
  --adp-cell-border-color-in-range: var(--adp-cell-background-color-selected);
  --adp-btn-height: 32px;
  --adp-btn-color: var(--adp-accent-color);
  --adp-btn-color-hover: var(--adp-color);
  --adp-btn-border-radius: var(--adp-border-radius);
  --adp-btn-background-color-hover: var(--adp-background-color-hover);
  --adp-btn-background-color-active: var(--adp-background-color-active);
  --adp-time-track-height: 1px;
  --adp-time-track-color: #dedede;
  --adp-time-track-color-hover: #b1b1b1;
  --adp-time-thumb-size: 12px;
  --adp-time-padding-inner: 10px;
  --adp-time-day-period-color: var(--adp-color-secondary);
  --adp-mobile-font-size: 16px;
  --adp-mobile-nav-height: 40px;
  --adp-mobile-width: 320px;
  --adp-mobile-day-cell-height: 38px;
  --adp-mobile-month-cell-height: 48px;
  --adp-mobile-year-cell-height: 64px;
}
.air-datepicker-overlay {
  --adp-overlay-background-color: rgba(0, 0, 0, .3);
  --adp-overlay-transition-duration: .3s;
  --adp-overlay-transition-ease: ease-out;
  --adp-overlay-z-index: 99;
}
.air-datepicker {
  background: var(--adp-background-color);
  border: 1px solid var(--adp-border-color);
  box-shadow: 0 4px 12px rgba(0,0,0,.15);
  border-radius: var(--adp-border-radius);
  box-sizing: content-box;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(4, max-content);
  grid-template-areas: var(--adp-grid-areas);
  font-family: var(--adp-font-family),sans-serif;
  font-size: var(--adp-font-size);
  color: var(--adp-color);
  width: var(--adp-width);
  position: absolute;
  transition: opacity var(--adp-transition-duration) var(--adp-transition-ease),transform var(--adp-transition-duration) var(--adp-transition-ease);
  z-index: var(--adp-z-index);
}
.air-datepicker:not(.-custom-position-) {
  opacity: 0;
}
.air-datepicker.-from-top- {
  transform: translateY(calc(var(--adp-transition-offset) * -1));
}
.air-datepicker.-from-right- {
  transform: translateX(var(--adp-transition-offset));
}
.air-datepicker.-from-bottom- {
  transform: translateY(var(--adp-transition-offset));
}
.air-datepicker.-from-left- {
  transform: translateX(calc(var(--adp-transition-offset) * -1));
}
.air-datepicker.-active-:not(.-custom-position-) {
  transform: translate(0, 0);
  opacity: 1;
}
.air-datepicker.-active-.-custom-position- {
  transition: none;
}
.air-datepicker.-inline- {
  border-color: var(--adp-border-color-inline);
  box-shadow: none;
  position: static;
  left: auto;
  right: auto;
  opacity: 1;
  transform: none;
}
.air-datepicker.-inline- .air-datepicker--pointer {
  display: none;
}
.air-datepicker.-is-mobile- {
  --adp-font-size: var(--adp-mobile-font-size);
  --adp-day-cell-height: var(--adp-mobile-day-cell-height);
  --adp-month-cell-height: var(--adp-mobile-month-cell-height);
  --adp-year-cell-height: var(--adp-mobile-year-cell-height);
  --adp-nav-height: var(--adp-mobile-nav-height);
  --adp-nav-action-size: var(--adp-mobile-nav-height);
  position: fixed;
  width: var(--adp-mobile-width);
  border: none;
}
.air-datepicker.-is-mobile- * {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}
.air-datepicker.-is-mobile- .air-datepicker--pointer {
  display: none;
}
.air-datepicker.-is-mobile-:not(.-custom-position-) {
  transform: translate(-50%, calc(-50% + var(--adp-transition-offset)));
}
.air-datepicker.-is-mobile-.-active-:not(.-custom-position-) {
  transform: translate(-50%, -50%);
}
.air-datepicker.-custom-position- {
  transition: none;
}
.air-datepicker-global-container {
  position: absolute;
  left: 0;
  top: 0;
}
.air-datepicker--pointer {
  --pointer-half-size: calc(var(--adp-pointer-size) / 2);
  position: absolute;
  width: var(--adp-pointer-size);
  height: var(--adp-pointer-size);
  z-index: -1;
}
.air-datepicker--pointer:after {
  content: "";
  position: absolute;
  background: #fff;
  border-top: 1px solid var(--adp-border-color-inline);
  border-right: 1px solid var(--adp-border-color-inline);
  border-top-right-radius: var(--adp-poiner-border-radius);
  width: var(--adp-pointer-size);
  height: var(--adp-pointer-size);
  box-sizing: border-box;
}
.-top-left- .air-datepicker--pointer,.-top-center- .air-datepicker--pointer,.-top-right- .air-datepicker--pointer,[data-popper-placement^=top] .air-datepicker--pointer {
  top: calc(100% - var(--pointer-half-size) + 1px);
}
.-top-left- .air-datepicker--pointer:after,.-top-center- .air-datepicker--pointer:after,.-top-right- .air-datepicker--pointer:after,[data-popper-placement^=top] .air-datepicker--pointer:after {
  transform: rotate(135deg);
}
.-right-top- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer,[data-popper-placement^=right] .air-datepicker--pointer {
  right: calc(100% - var(--pointer-half-size) + 1px);
}
.-right-top- .air-datepicker--pointer:after,.-right-center- .air-datepicker--pointer:after,.-right-bottom- .air-datepicker--pointer:after,[data-popper-placement^=right] .air-datepicker--pointer:after {
  transform: rotate(225deg);
}
.-bottom-left- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer,[data-popper-placement^=bottom] .air-datepicker--pointer {
  bottom: calc(100% - var(--pointer-half-size) + 1px);
}
.-bottom-left- .air-datepicker--pointer:after,.-bottom-center- .air-datepicker--pointer:after,.-bottom-right- .air-datepicker--pointer:after,[data-popper-placement^=bottom] .air-datepicker--pointer:after {
  transform: rotate(315deg);
}
.-left-top- .air-datepicker--pointer,.-left-center- .air-datepicker--pointer,.-left-bottom- .air-datepicker--pointer,[data-popper-placement^=left] .air-datepicker--pointer {
  left: calc(100% - var(--pointer-half-size) + 1px);
}
.-left-top- .air-datepicker--pointer:after,.-left-center- .air-datepicker--pointer:after,.-left-bottom- .air-datepicker--pointer:after,[data-popper-placement^=left] .air-datepicker--pointer:after {
  transform: rotate(45deg);
}
.-top-left- .air-datepicker--pointer,.-bottom-left- .air-datepicker--pointer {
  left: var(--adp-pointer-offset);
}
.-top-right- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer {
  right: var(--adp-pointer-offset);
}
.-top-center- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer {
  left: calc(50% - var(--adp-pointer-size)/2);
}
.-left-top- .air-datepicker--pointer,.-right-top- .air-datepicker--pointer {
  top: var(--adp-pointer-offset);
}
.-left-bottom- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer {
  bottom: var(--adp-pointer-offset);
}
.-left-center- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer {
  top: calc(50% - var(--adp-pointer-size)/2);
}
.air-datepicker--navigation {
  grid-area: nav;
}
.air-datepicker--content {
  box-sizing: content-box;
  padding: var(--adp-padding);
  grid-area: body;
}
.-only-timepicker- .air-datepicker--content {
  display: none;
}
.air-datepicker--time {
  grid-area: timepicker;
}
.air-datepicker--buttons {
  grid-area: buttons;
}
.air-datepicker--buttons,.air-datepicker--time {
  padding: var(--adp-padding);
  border-top: 1px solid var(--adp-border-color-inner);
}
.air-datepicker-overlay {
  position: fixed;
  background: var(--adp-overlay-background-color);
  left: 0;
  top: 0;
  width: 0;
  height: 0;
  opacity: 0;
  transition: opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease),left 0s,height 0s,width 0s;
  transition-delay: 0s,var(--adp-overlay-transition-duration),var(--adp-overlay-transition-duration),var(--adp-overlay-transition-duration);
  z-index: var(--adp-overlay-z-index);
}
.air-datepicker-overlay.-active- {
  opacity: 1;
  width: 100%;
  height: 100%;
  transition: opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease),height 0s,width 0s;
}
:root {
  --mp-chrome-max-width: 1440px;
}
.mp-topbar {
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
}
.mp-topbar__inner {
  max-width: var(--mp-chrome-max-width);
  margin: 0 auto;
  padding: 14px 28px;
  display: flex;
  align-items: center;
  gap: 16px;
}
.mp-topbar__brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-text-primary);
  text-decoration: none;
}
.mp-topbar__brand-mark {
  display: inline-flex;
  width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
  background: var(--color-text-primary);
  color: var(--color-background);
  font-family: var(--font-family-sans);
  font-weight: var(--font-weight-semibold, 600);
  font-size: 12px;
  border-radius: var(--radius-sm, 2px);
}
.mp-topbar__brand-name {
  font-family: var(--font-family-sans);
  font-weight: var(--font-weight-semibold, 600);
  font-size: 14px;
  letter-spacing: -0.01em;
}
.mp-topbar__project-picker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  font-size: 13px;
  color: var(--color-text-primary);
  background: transparent;
}
.mp-topbar__project-logo {
  font-size: 10px;
  color: var(--color-text-secondary);
}
.mp-topbar__right {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.mp-topbar__cmdk {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-secondary);
  padding: 2px 6px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
}
.mp-topbar__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--color-text-primary);
  color: var(--color-background);
  font-family: var(--font-family-sans);
  font-size: 11px;
  font-weight: var(--font-weight-semibold, 600);
  border: none;
  cursor: pointer;
}
.mp-section-nav-bar {
  background: var(--color-background);
  border-bottom: 1px solid var(--color-border);
}
.mp-section-nav-bar__inner {
  max-width: var(--mp-chrome-max-width);
  margin: 0 auto;
  padding: 0 28px;
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.mp-section-nav-bar__stack {
  font-family: var(--font-mono, ui-monospace, Menlo, monospace);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.4px;
  color: var(--color-text-tertiary);
  text-transform: lowercase;
  white-space: nowrap;
}
.mp-section-nav-bar .cp-section-nav {
  border-bottom: none;
  flex: 1;
}
.mp-main {
  background: var(--color-background);
  min-height: calc(100svh - 56px);
}
.mp-main__inner {
  max-width: var(--mp-chrome-max-width);
  margin: 0 auto;
  padding: 24px 36px;
}
.mp-active-context-banner {
  background: var(--color-chrome-bg, var(--color-text-primary));
  color: var(--color-chrome-text, var(--color-background));
}
.mp-active-context-banner__inner {
  max-width: var(--mp-chrome-max-width, 1440px);
  margin: 0 auto;
  padding: 10px 28px;
  display: flex;
  align-items: center;
  gap: 16px;
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
}
.mp-active-context-banner__dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-banner-dot, #6ccf8e);
  flex-shrink: 0;
}
.mp-active-context-banner__label {
  font-weight: var(--font-weight-semibold, 600);
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.mp-active-context-banner__meta {
  color: var(--color-chrome-text, var(--color-background));
  opacity: 0.7;
}
.mp-active-context-banner__redrive-form {
  margin-left: auto;
  display: inline-flex;
}
.mp-active-context-banner__redrive {
  background: transparent;
  border: 1px solid transparent;
  color: var(--color-chrome-text, var(--color-background));
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.3px;
  padding: 4px 8px;
  border-radius: var(--radius-sm, 2px);
  cursor: pointer;
  opacity: 0.7;
  transition: opacity var(--motion-micro, 150ms) var(--ease-natural, ease);
}
.mp-active-context-banner__redrive:hover {
  opacity: 1;
}
.mp-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 4px 10px;
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.3px;
  color: var(--color-text-primary);
  background: transparent;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  text-decoration: none;
  line-height: 1.2;
}
.mp-status-pill--clickable {
  cursor: pointer;
}
.mp-status-pill--clickable:hover {
  background: var(--color-surface-hover);
}
.mp-status-pill__dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-text-secondary);
  flex-shrink: 0;
}
.mp-status-pill__dot--warn {
  background: var(--color-accent, var(--mp-warn, #c5623a));
}
.mp-status-pill__count {
  font-weight: var(--font-weight-semibold, 600);
}
.mp-status-pill__sep {
  color: var(--color-text-tertiary);
}
.mp-opt-out-banner {
  background: var(--mp-warn-soft, #fbeadf);
  border: 1px solid var(--mp-warn-line, #e8b79a);
  border-radius: var(--radius-md, 4px);
  padding: 16px 20px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
}
.mp-opt-out-banner__icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--mp-warn, #c5623a);
  color: var(--mp-paper, #fbfaf7);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  flex-shrink: 0;
}
.mp-opt-out-banner__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.mp-opt-out-banner__title {
  font-size: 0.875rem;
  font-weight: var(--font-weight-semibold, 600);
  color: var(--mp-warn-text, #8b3a1c);
}
.mp-opt-out-banner__count {
  font-family: var(--font-family-mono);
  font-weight: var(--font-weight-medium, 500);
  opacity: 0.8;
}
.mp-opt-out-banner__description {
  margin: 0;
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.5;
}
.mp-opt-out-banner__actions {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}
.mp-project-home {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.mp-project-home__metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1rem;
  padding: 1.25rem 0;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}
.mp-project-home__body {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 2.25rem;
}
.mp-project-home__main {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 0;
}
.mp-project-home__rail {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 0;
}
.mp-project-home__section-title {
  margin: 0 0 0.75rem;
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  font-weight: var(--font-weight-medium, 500);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-secondary);
}
.mp-project-home__architecture {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--color-text-secondary);
  max-width: 70ch;
}
.mp-project-home__playbooks {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mp-project-home__playbook {
  padding: 0.75rem 1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: var(--color-surface);
}
.mp-project-home__playbook-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.mp-project-home__playbook-title {
  font-size: 0.875rem;
  font-weight: var(--font-weight-semibold, 600);
  color: var(--color-text-primary);
}
.mp-project-home__playbook-summary {
  margin: 0.25rem 0 0;
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.5;
}
.mp-active-goal-card {
  border: 1.5px solid var(--color-text-primary);
  border-radius: var(--radius-md, 4px);
  background: var(--color-surface);
  padding: 1.25rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mp-active-goal-card__head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.mp-active-goal-card__meta {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
}
.mp-active-goal-card__title {
  margin: 0.25rem 0 0;
  font-size: 1.5rem;
  font-weight: var(--font-weight-semibold, 600);
  line-height: 1.2;
  color: var(--color-text-primary);
  letter-spacing: -0.01em;
}
.mp-active-goal-card__description {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.5;
  color: var(--color-text-secondary);
  max-width: 65ch;
}
.mp-active-goal-card__children {
  list-style: none;
  margin: 0;
  padding: 0.75rem 0 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  border-top: 1px solid var(--color-divider);
}
.mp-active-goal-card__child {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.mp-active-goal-card__child-title {
  font-size: 0.875rem;
  color: var(--color-text-primary);
}
.mp-intent-rail__block {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mp-intent-rail__header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
}
.mp-intent-rail__title {
  margin: 0;
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  font-weight: var(--font-weight-medium, 500);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-secondary);
}
.mp-intent-rail__link {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-secondary);
  text-decoration: none;
  letter-spacing: 0.3px;
}
.mp-intent-rail__link:hover {
  color: var(--color-text-primary);
}
.mp-intent-rail__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mp-intent-rail__item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.mp-intent-rail__item-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.mp-intent-rail__item-title {
  font-size: 0.875rem;
  font-weight: var(--font-weight-medium, 500);
  color: var(--color-text-primary);
}
.mp-intent-rail__item-body {
  margin: 0;
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.5;
}
.mp-intent-rail__empty {
  margin: 0;
  font-size: 0.8125rem;
  color: var(--color-text-tertiary);
}
.mp-pain-item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.mp-pain-item__head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.mp-pain-item__bullet {
  color: var(--mp-warn, #c5623a);
  font-size: 10px;
  line-height: 1;
}
.mp-pain-item__title {
  font-size: 0.875rem;
  font-weight: var(--font-weight-medium, 500);
  color: var(--color-text-primary);
}
.mp-pain-item__audience {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-pain-item__body {
  margin: 0;
  padding-left: 16px;
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.5;
}
.mp-pain-item__solution {
  display: flex;
  align-items: baseline;
  gap: 0.375rem;
  padding-left: 16px;
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
}
.mp-pain-item__solution-arrow {
  color: var(--color-text-tertiary);
}
.mp-pain-item__solution-title {
  color: var(--color-text-primary);
  font-weight: var(--font-weight-medium, 500);
}
.mp-pain-item__solution-benefit {
  color: var(--color-text-tertiary);
  font-size: 0.75rem;
}
@media (max-width: 1200px) {
  .mp-project-home__body {
    grid-template-columns: 1fr;
  }
  .mp-project-home__metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.mp-project-home__section {
  display: flex;
  flex-direction: column;
}
.mp-projects-dashboard {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-projects-dashboard__filters {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}
.mp-projects-dashboard__search {
  position: relative;
  width: 280px;
}
.mp-projects-dashboard__search-icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-text-secondary);
  pointer-events: none;
  font-size: 14px;
}
.mp-projects-dashboard__search-form {
  margin: 0;
}
.mp-projects-dashboard__search-input {
  width: 100%;
  padding: 8px 12px 8px 32px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: transparent;
  font-size: 13px;
  color: var(--color-text-primary);
  font-family: var(--font-family-sans);
  outline: none;
  transition: border-color var(--motion-micro, 150ms) var(--ease-natural, ease);
}
.mp-projects-dashboard__search-input::placeholder {
  color: var(--color-text-tertiary);
}
.mp-projects-dashboard__search-input:focus {
  border-color: var(--color-text-primary);
}
.mp-projects-row__link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.mp-projects-row__project {
  display: flex;
  align-items: center;
  gap: 12px;
}
.mp-projects-row__project-logo {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--color-text-primary);
  color: var(--color-background);
  font-family: var(--font-family-sans);
  font-size: 13px;
  font-weight: var(--font-weight-semibold, 600);
  border-radius: var(--radius-sm, 2px);
}
.mp-projects-row__project-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mp-projects-row__project-name {
  font-size: 14px;
  font-weight: var(--font-weight-semibold, 600);
  color: var(--color-text-primary);
}
.mp-projects-row__project-meta {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.mp-projects-row__project-meta-sep {
  color: var(--color-text-tertiary);
}
.mp-projects-row__goal {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.mp-projects-row__goal-line {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.mp-projects-row__goal-meta {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
}
.mp-projects-row__goal-title {
  font-size: 13px;
  color: var(--color-text-primary);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mp-projects-row__muted {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-projects-row__activity {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.mp-projects-row__activity-date {
  font-size: 13px;
  color: var(--color-text-primary);
}
.mp-projects-row__activity-meta {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
}
.mp-projects-row__activity-meta--warn {
  color: var(--mp-warn, var(--color-accent));
}
.mp-projects-row__chevron {
  color: var(--color-text-tertiary);
  font-size: 16px;
  line-height: 1;
}
.mp-goal-detail {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-goal-detail__meta {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.mp-goal-detail__meta-text {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
}
.mp-goal-detail__ready-note {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
}
.mp-goal-detail__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 2.25rem;
  align-items: start;
}
.mp-goal-detail__body--with-spine {
  grid-template-columns: 240px minmax(0, 1fr) 380px;
}
.mp-goal-detail__spine-col {
  position: sticky;
  top: 24px;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 0;
}
.mp-goal-detail__main {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 0;
}
.mp-goal-detail__rail {
  position: sticky;
  top: 24px;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 0;
}
.mp-goal-detail__section {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mp-goal-detail__section-title {
  margin: 0;
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  font-weight: var(--font-weight-medium, 500);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-secondary);
}
.mp-goal-detail__subtitle {
  margin: 1rem 0 0.5rem;
  font-family: var(--font-family-mono);
  font-size: 0.625rem;
  font-weight: var(--font-weight-medium, 500);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
}
.mp-goal-detail__prose {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--color-text-secondary);
  max-width: 65ch;
  white-space: pre-line;
}
.mp-goal-detail__scope {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}
.mp-goal-detail__scope-block {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.mp-goal-detail__scope-label {
  font-family: var(--font-family-mono);
  font-size: 0.625rem;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
}
.mp-goal-detail__scope-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}
.mp-goal-detail__scope-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.mp-goal-detail__scope-list li {
  padding: 4px 0;
  border-top: 1px solid var(--color-divider, currentColor);
  @supports (color: color-mix(in lab, red, red)) {
    border-top: 1px solid var(--color-divider, color-mix(in srgb, currentColor 8%, transparent));
  }
}
.mp-goal-detail__scope-list li:first-child {
  border-top: none;
}
.mp-goal-detail__scope-list code {
  font-family: var(--font-family-mono);
  font-size: 12px;
  color: var(--color-text-primary);
  background: transparent;
  padding: 0;
  word-break: break-all;
}
.mp-goal-detail__scope-list--out code {
  color: var(--color-text-secondary);
  text-decoration: line-through;
  text-decoration-color: var(--color-warning-500, var(--color-text-tertiary));
  text-decoration-thickness: 1px;
}
.mp-goal-detail__scope-count {
  margin-left: 0.4rem;
  font-family: var(--font-family-mono);
  font-size: 10px;
  color: var(--color-text-tertiary);
}
.mp-goal-detail__scope-empty {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-tertiary);
  margin: 0;
  font-style: italic;
}
.mp-goal-detail__findings {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.mp-goal-detail__finding {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
  font-size: 0.875rem;
  color: var(--color-text-primary);
  line-height: 1.5;
}
.mp-goal-detail__finding-bullet {
  color: var(--mp-warn, var(--color-accent));
  font-size: 8px;
  padding-top: 8px;
  flex-shrink: 0;
}
.mp-goal-detail__chain {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  font-size: 0.875rem;
}
.mp-goal-detail__chain > li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.mp-goal-detail__chain-label {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
  min-width: 6rem;
}
.mp-goal-detail__chain-link {
  color: var(--color-text-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.mp-goal-detail__chain-empty {
  font-style: italic;
  color: var(--color-text-tertiary);
  font-size: 0.8125rem;
}
.mp-criteria {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.mp-criteria__row {
  padding: 12px 0;
  border-top: 1px solid var(--color-divider);
}
.mp-criteria__row:first-child {
  border-top: none;
  padding-top: 4px;
}
.mp-criteria__term {
  display: flex;
  align-items: baseline;
  gap: 10px;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--color-text-primary);
  line-height: 1.4;
  margin: 0;
}
.mp-criteria__mark {
  flex: 0 0 14px;
  font-family: var(--font-family-mono);
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  color: var(--color-text-tertiary);
  line-height: 1.3;
}
.mp-criteria__row--met .mp-criteria__mark {
  color: var(--color-text-primary);
}
.mp-criteria__row--unmet .mp-criteria__mark {
  color: var(--color-warning-500, var(--color-text-primary));
}
.mp-criteria__criterion {
  flex: 1;
  text-wrap: pretty;
}
.mp-criteria__evidence {
  margin: 4px 0 0 24px;
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.5;
}
.mp-sessions {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
}
.mp-sessions__row {
  padding: 10px 0;
  border-top: 1px solid var(--color-divider);
}
.mp-sessions__row:first-child {
  border-top: none;
  padding-top: 4px;
}
.mp-sessions__head {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.mp-sessions__time {
  font-family: var(--font-family-mono);
  font-size: 11.5px;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.2px;
  color: var(--color-text-primary);
}
.mp-sessions__arrow {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-tertiary);
}
.mp-sessions__running {
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: var(--color-warning-500);
  font-weight: 500;
}
.mp-sessions__tests {
  margin-left: auto;
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  letter-spacing: 0.2px;
  color: var(--color-text-tertiary);
  font-variant-numeric: tabular-nums;
}
.mp-sessions__summary {
  margin: 4px 0 0;
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.5;
  text-wrap: pretty;
}
.mp-sessions__details {
  margin-top: 4px;
}
.mp-sessions__details > summary {
  font-size: 13px;
  color: var(--color-text-secondary);
  line-height: 1.5;
  cursor: pointer;
  list-style: none;
  display: block;
  text-wrap: pretty;
}
.mp-sessions__details > summary::-webkit-details-marker {
  display: none;
}
.mp-sessions__details > summary::after {
  content: " ▾";
  font-family: var(--font-family-mono);
  color: var(--color-text-tertiary);
  font-size: 10px;
  margin-left: 0.25rem;
}
.mp-sessions__details[open] > summary::after {
  content: " ▴";
}
.mp-sessions__full {
  margin: 6px 0 0;
  padding: 0 0 0 10px;
  border-left: 2px solid var(--color-divider);
  font-size: 12.5px;
  color: var(--color-text-primary);
  line-height: 1.55;
  text-wrap: pretty;
  white-space: pre-wrap;
}
.mp-goal-detail__section-count {
  margin-left: 0.4rem;
  font-family: var(--font-family-mono);
  font-size: 10px;
  font-weight: 500;
  color: var(--color-text-tertiary);
  font-variant-numeric: tabular-nums;
}
.mp-goal-detail__section--reject {
  border-top: 1px solid var(--color-divider);
  padding-top: 1.5rem;
}
.mp-goal-detail__reject-form {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-width: 48rem;
}
.mp-goal-detail__reject-input {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  font-family: var(--font-family-sans);
  background: var(--color-surface);
  color: var(--color-text-primary);
  resize: vertical;
  outline: none;
}
.mp-goal-detail__reject-input:focus {
  border-color: var(--color-text-primary);
}
.mp-goal-milestones {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mp-goal-milestones__item {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  padding: 0.875rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.mp-goal-milestones__item--active {
  border: 1.5px solid var(--color-text-primary);
}
.mp-goal-milestones__head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.mp-goal-milestones__title {
  color: var(--color-text-primary);
  text-decoration: none;
  font-weight: var(--font-weight-semibold, 600);
}
.mp-goal-milestones__title:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.mp-goal-milestones__meta {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
  margin-left: auto;
}
.mp-goal-milestones__body {
  margin: 0;
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.5;
}
.mp-codify-rail {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  background: var(--color-surface);
}
.mp-codify-rail__header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.mp-codify-rail__title {
  margin: 0;
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  font-weight: var(--font-weight-medium, 500);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-secondary);
}
.mp-codify-rail__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  padding: 0 0.375rem;
  height: 1rem;
  font-family: var(--font-family-mono);
  font-size: 0.625rem;
  line-height: 1;
  background: var(--color-text-primary);
  color: var(--color-background);
  border-radius: var(--radius-sm, 2px);
}
.mp-codify-rail__link {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-secondary);
  text-decoration: none;
  margin-left: auto;
  letter-spacing: 0.2px;
}
.mp-codify-rail__link:hover {
  color: var(--color-text-primary);
}
.mp-codify-rail__link--more {
  margin-left: 0;
  padding-top: 0.375rem;
  border-top: 1px solid var(--color-divider);
}
.mp-codify-rail__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.mp-codify-rail__empty {
  margin: 0;
  font-size: 0.8125rem;
  color: var(--color-text-tertiary);
  font-family: var(--font-family-mono);
  letter-spacing: 0.2px;
}
.mp-codify-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  padding: 0.625rem 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  background: var(--color-background);
}
.mp-codify-card__head {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.mp-codify-card__body {
  font-size: 0.8125rem;
  color: var(--color-text-primary);
  line-height: 1.4;
}
.mp-codify-card__note {
  font-size: 0.75rem;
  color: var(--color-text-secondary);
  line-height: 1.4;
  font-style: italic;
}
@media (max-width: 1200px) {
  .mp-goal-detail__body, .mp-goal-detail__body--with-spine {
    grid-template-columns: 1fr;
  }
  .mp-goal-detail__spine-col, .mp-goal-detail__rail {
    position: static;
  }
}
.mp-rule-library {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-rule-library__filters {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}
.mp-rule-library__search {
  position: relative;
  width: 260px;
}
.mp-rule-library__search-icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-text-secondary);
  pointer-events: none;
  font-size: 14px;
}
.mp-rule-library__search-form {
  margin: 0;
}
.mp-rule-library__search-input {
  width: 100%;
  padding: 8px 12px 8px 32px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: transparent;
  font-size: 13px;
  color: var(--color-text-primary);
  font-family: var(--font-family-sans);
  outline: none;
}
.mp-rule-library__search-input::placeholder {
  color: var(--color-text-tertiary);
}
.mp-rule-library__search-input:focus {
  border-color: var(--color-text-primary);
}
.mp-rule-row__id {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-rule-row__body {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.mp-rule-row__content {
  font-size: 0.875rem;
  color: var(--color-text-primary);
  line-height: 1.45;
}
.mp-rule-row__scope {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mp-rule-row__scope-level {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-primary);
  letter-spacing: 0.2px;
}
.mp-rule-row__scope-glob {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
  max-width: 22ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mp-rule-row__activity {
  display: flex;
  flex-direction: column;
  gap: 2px;
  align-items: flex-end;
}
.mp-rule-row__activity-date {
  font-size: 0.8125rem;
  color: var(--color-text-primary);
}
.mp-rule-row__activity-meta {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-goals-index {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-goals-index__filters {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.mp-goal-row__id {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-goal-row__link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.mp-goal-row__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mp-goal-row__title {
  font-size: 0.9375rem;
  color: var(--color-text-primary);
  font-weight: var(--font-weight-semibold, 600);
}
.mp-goal-row__description {
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.45;
  max-width: 72ch;
}
.mp-goal-row__muted {
  color: var(--color-text-tertiary);
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
}
.mp-goal-row__activity {
  display: flex;
  flex-direction: column;
  gap: 2px;
  align-items: flex-end;
}
.mp-goal-row__activity-date {
  font-size: 0.8125rem;
  color: var(--color-text-primary);
}
.mp-goal-row__activity-meta {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-goal-row__chevron {
  color: var(--color-text-tertiary);
  font-size: 16px;
  line-height: 1;
}
.mp-task-queue {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-task-queue__filters {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.mp-task-queue__groups {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-task-group {
  display: flex;
  flex-direction: column;
}
.mp-task-group__header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 8px 16px;
  background: var(--color-surface-hover);
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-secondary);
  border-left: 2px solid transparent;
}
.mp-task-group__header--warn {
  background: var(--mp-warn-soft, var(--color-surface-hover));
  color: var(--mp-warn-text, var(--color-text-primary));
  border-left-color: var(--mp-warn, var(--color-accent));
}
.mp-task-group__label {
  font-weight: var(--font-weight-semibold, 600);
}
.mp-task-group__link {
  color: inherit;
  text-decoration: none;
}
.mp-task-group__link:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.mp-task-group__count {
  margin-left: auto;
  opacity: 0.7;
  font-weight: var(--font-weight-medium, 500);
}
.mp-task-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.mp-task-row {
  border-top: 1px solid var(--color-border);
}
.mp-task-row:last-child {
  border-bottom: 1px solid var(--color-border);
}
.mp-task-row--blocked {
  background: var(--mp-warn-soft);
  border-left: 2px solid var(--mp-warn);
}
.mp-task-row__link {
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr) 140px 140px 120px;
  gap: 16px;
  align-items: center;
  padding: 14px 20px;
  color: inherit;
  text-decoration: none;
}
.mp-task-row__id {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-task-row__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mp-task-row__title {
  font-size: 0.875rem;
  color: var(--color-text-primary);
  font-weight: var(--font-weight-medium, 500);
}
.mp-task-row__description {
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.4;
}
.mp-task-row__state {
  display: flex;
  align-items: center;
}
.mp-task-row__requires {
  display: flex;
  gap: 4px;
  align-items: center;
  flex-wrap: wrap;
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
}
.mp-task-row__requires-label {
  color: var(--color-text-tertiary);
}
.mp-task-row__requires-id {
  color: var(--color-text-primary);
}
.mp-task-row__activity {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
  text-align: right;
}
.mp-task-row__why {
  padding: 0 20px 14px 80px;
}
.mp-candidates {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-candidates__filters {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.mp-candidates__proposal {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mp-candidates__proposal-title {
  font-size: 0.875rem;
  color: var(--color-text-primary);
  font-weight: var(--font-weight-medium, 500);
}
.mp-candidates__proposal-body {
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.45;
}
.mp-candidates__evidence {
  display: inline-flex;
  align-items: center;
}
.mp-candidates__no-confidence {
  color: var(--color-text-tertiary);
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
}
.mp-candidates__source {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
}
.mp-candidates__proposed {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-candidates__actions {
  display: inline-flex;
  gap: 0.375rem;
}
.mp-guidance {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-guidance__scope {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-secondary);
  padding: 8px 12px;
  background: var(--color-surface-hover);
  border-radius: var(--radius-sm, 2px);
  line-height: 1.6;
}
.mp-guidance__scope-label {
  color: var(--color-text-tertiary);
  margin-right: 8px;
}
.mp-guidance__scope-path {
  color: var(--color-text-primary);
}
.mp-guidance__scope-more {
  color: var(--color-text-tertiary);
  margin-left: 8px;
}
.mp-guidance__body {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 2.25rem;
  align-items: start;
}
.mp-guidance__main {
  min-width: 0;
}
.mp-guidance__rail {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  min-width: 0;
}
.mp-guidance__section-title, .mp-guidance__rail-title {
  margin: 0 0 0.75rem;
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  font-weight: var(--font-weight-medium, 500);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-secondary);
}
.mp-guidance__rules, .mp-guidance__decisions, .mp-guidance__components {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mp-guidance-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  background: var(--color-surface);
}
.mp-guidance-card--compact {
  padding: 10px 12px;
}
.mp-guidance-card__head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.mp-guidance-card__meta {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
  margin-left: auto;
}
.mp-guidance-card__scope {
  font-family: var(--font-family-mono);
  font-size: 0.625rem;
  color: var(--color-text-secondary);
  padding: 2px 6px;
  background: var(--color-surface-hover);
  border-radius: var(--radius-sm, 2px);
}
.mp-guidance-card__body {
  margin: 0;
  font-size: 0.875rem;
  color: var(--color-text-primary);
  line-height: 1.45;
}
.mp-guidance-card__title {
  margin: 0;
  font-size: 0.875rem;
  color: var(--color-text-primary);
  font-weight: var(--font-weight-medium, 500);
  line-height: 1.4;
}
.mp-guidance-component {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
}
.mp-guidance-component__body {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.mp-guidance-component__name {
  font-size: 0.8125rem;
  color: var(--color-text-primary);
  font-weight: var(--font-weight-medium, 500);
}
.mp-guidance-component__path {
  font-family: var(--font-family-mono);
  font-size: 0.6875rem;
  color: var(--color-text-tertiary);
}
.mp-guidance__empty {
  margin: 0;
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  color: var(--color-text-tertiary);
}
@media (max-width: 1200px) {
  .mp-guidance__body {
    grid-template-columns: 1fr;
  }
}
.mp-landing-topbar {
  border-bottom: 1px solid var(--color-border);
}
.mp-landing-topbar__inner {
  max-width: 820px;
  margin: 0 auto;
  padding: 14px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mp-landing-topbar__nav {
  display: inline-flex;
  gap: 18px;
  align-items: center;
}
.mp-landing-topbar__link {
  font-size: 13px;
  color: var(--color-text-secondary);
  text-decoration: none;
}
.mp-landing-topbar__link:hover {
  color: var(--color-text-primary);
}
.mp-landing {
  max-width: 820px;
  margin: 0 auto;
  padding: 5rem 28px 6rem;
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
.mp-landing__hero {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-landing__title {
  margin: 0;
  font-size: 3.5rem;
  font-weight: var(--font-weight-semibold, 600);
  line-height: 1.02;
  letter-spacing: -1px;
  color: var(--color-text-primary);
  max-width: 18ch;
}
.mp-landing__subtitle {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.5;
  color: var(--color-text-secondary);
  max-width: 56ch;
}
.mp-landing__install {
  margin-top: 1.5rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md, 4px);
  overflow: hidden;
  background: var(--color-surface);
}
.mp-landing__tabs {
  display: inline-flex;
  padding: 0.5rem;
  gap: 0.25rem;
  border-bottom: 1px solid var(--color-border);
  width: 100%;
  background: var(--color-surface);
}
.mp-landing__tab {
  padding: 0.375rem 0.75rem;
  border: none;
  background: transparent;
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  letter-spacing: 0.2px;
  color: var(--color-text-secondary);
  cursor: pointer;
  border-radius: var(--radius-sm, 2px);
}
.mp-landing__tab--active {
  background: var(--color-text-primary);
  color: var(--color-background);
  font-weight: var(--font-weight-semibold, 600);
}
.mp-landing__panes {
  padding: 1rem;
}
.mp-landing__pane {
  margin: 0;
}
.mp-landing__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.mp-landing__step {
  display: flex;
  gap: 12px;
  padding: 1rem 1.25rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md, 4px);
  background: var(--color-surface);
}
.mp-landing__step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: var(--color-text-primary);
  color: var(--color-background);
  font-family: var(--font-family-sans);
  font-weight: var(--font-weight-semibold, 600);
  font-size: 14px;
  border-radius: var(--radius-sm, 2px);
  flex-shrink: 0;
}
.mp-landing__step-body {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  min-width: 0;
}
.mp-landing__step-code {
  font-family: var(--font-family-mono);
  font-size: 0.8125rem;
  background: var(--color-surface-hover);
  padding: 3px 6px;
  border-radius: var(--radius-sm, 2px);
  width: fit-content;
  color: var(--color-text-primary);
}
.mp-landing__step-description {
  margin: 0;
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
  line-height: 1.55;
}
.mp-landing__step-description code {
  font-family: var(--font-family-mono);
  font-size: 0.75rem;
  background: var(--color-surface-hover);
  padding: 1px 4px;
  border-radius: var(--radius-sm, 2px);
}
@media (max-width: 900px) {
  .mp-landing__title {
    font-size: 2.5rem;
  }
  .mp-landing__steps {
    grid-template-columns: 1fr;
  }
}
.mp-spine {
  position: relative;
  padding: 0;
  margin: 0;
}
.mp-spine__head {
  font-family: var(--font-mono, ui-monospace, monospace);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
  margin-bottom: 14px;
}
.mp-spine__empty {
  font-size: 13px;
  color: var(--color-text-secondary);
  font-style: italic;
  margin: 0;
}
.mp-spine__nodes {
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative;
}
.mp-spine__nodes::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 7px;
  bottom: 7px;
  width: 1.5px;
  background: var(--color-divider, currentColor);
  @supports (color: color-mix(in lab, red, red)) {
    background: var(--color-divider, color-mix(in srgb, currentColor 12%, transparent));
  }
}
.mp-spine__node {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 10px 10px 10px 0;
  border-radius: 4px;
  transition: background-color 120ms ease;
}
.mp-spine__node + .mp-spine__node {
  margin-top: 4px;
}
.mp-spine__node--active {
  background: var(--color-surface-hover, currentColor);
  @supports (color: color-mix(in lab, red, red)) {
    background: var(--color-surface-hover, color-mix(in srgb, currentColor 4%, transparent));
  }
  box-shadow: inset 2px 0 0 var(--color-text-primary);
}
.mp-spine__dot {
  position: relative;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  margin-top: 2px;
  border-radius: 50%;
  background: var(--color-surface, transparent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.mp-spine__dot--closed {
  background: var(--color-text-primary);
  border: 1.5px solid var(--color-text-primary);
  color: var(--color-on-primary, var(--color-surface));
}
.mp-spine__dot-glyph {
  font-size: 10px;
  line-height: 1;
  font-weight: 700;
  color: inherit;
}
.mp-spine__dot--in-flight {
  background: var(--color-warning-500, #c5623a);
  border: 1.5px solid var(--color-warning-500, #c5623a);
  box-shadow: 0 0 0 4px color-mix(in srgb, oklch(63% 0.17 55) 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--color-warning-500, #c5623a) 20%, transparent);
  }
  animation: mp-spine-pulse 1.6s ease-in-out infinite;
}
.mp-spine__dot-inner {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--color-surface, #fff);
}
.mp-spine__dot--draft {
  background: transparent;
  border: 1.5px dashed var(--color-text-tertiary);
}
.mp-spine__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mp-spine__id {
  font-family: var(--font-mono, ui-monospace, monospace);
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
}
.mp-spine__title {
  font-size: 13.5px;
  font-weight: 500;
  color: var(--color-text-primary);
  text-decoration: none;
  line-height: 1.35;
  word-break: break-word;
}
.mp-spine__title:hover {
  color: var(--color-text-primary);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
@keyframes mp-spine-pulse {
  0%, 100% {
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--color-warning-500, #c5623a) 20%, transparent);
  }
  50% {
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--color-warning-500, #c5623a) 28%, transparent);
  }
}
@media (prefers-reduced-motion: reduce) {
  .mp-spine__dot--in-flight {
    animation: none;
  }
}
.mp-goal-detail__meta-live {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: #4d9b67;
  letter-spacing: 0.2px;
}
.mp-goal-detail__meta-live-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #6ccf8e;
}
.mp-progress {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 4px 0 0;
}
.mp-progress__bar {
  display: flex;
  height: 5px;
  width: 100%;
  gap: 2px;
  border-radius: 1px;
  overflow: hidden;
  background: var(--color-divider);
}
.mp-progress__seg {
  height: 100%;
}
.mp-progress__seg--closed {
  background: var(--color-text-primary);
}
.mp-progress__seg--in-flight {
  background: var(--mp-warn, #c5623a);
}
.mp-progress__seg--blocked {
  background: var(--mp-warn, #c5623a);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--mp-warn, #c5623a) 70%, #333);
  }
}
.mp-progress__seg--drafts {
  background: var(--color-text-tertiary);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--color-text-tertiary) 50%, transparent);
  }
}
.mp-progress__legend {
  display: flex;
  align-items: center;
  gap: 18px;
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
  flex-wrap: wrap;
}
.mp-progress__legend-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.mp-progress__legend-mark {
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 1px;
}
.mp-progress__legend-mark--closed {
  background: var(--color-text-primary);
}
.mp-progress__legend-mark--in-flight {
  background: var(--mp-warn, #c5623a);
}
.mp-progress__legend-mark--blocked {
  background: var(--mp-warn, #c5623a);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--mp-warn, #c5623a) 70%, #333);
  }
}
.mp-progress__legend-mark--draft {
  background: transparent;
  border: 1px solid var(--color-text-tertiary);
  @supports (color: color-mix(in lab, red, red)) {
    border: 1px solid color-mix(in srgb, var(--color-text-tertiary) 60%, transparent);
  }
}
.mp-codify-card--actionable {
  gap: 0.5rem;
}
.mp-codify-card__meta {
  margin-left: auto;
  font-family: var(--font-family-mono);
  font-size: 10px;
  letter-spacing: 0.4px;
  color: var(--color-text-tertiary);
}
.mp-codify-card__actions {
  display: inline-flex;
  gap: 6px;
  margin-top: 0.25rem;
  flex-wrap: wrap;
}
.mp-codify-card__action-form {
  display: inline;
  margin: 0;
}
.mp-cand-btn {
  padding: 4px 10px;
  font-size: 11.5px;
  border-radius: var(--radius-sm, 2px);
  font-weight: 500;
  cursor: pointer;
  font-family: var(--font-family-sans);
  line-height: 1.2;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}
.mp-cand-btn--codify {
  background: var(--color-text-primary);
  color: var(--color-background);
  border: 1px solid var(--color-text-primary);
}
.mp-cand-btn--codify:hover {
  background: var(--color-text-primary);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--color-text-primary) 90%, transparent);
  }
}
.mp-cand-btn--edit, .mp-cand-btn--reject {
  background: transparent;
  color: var(--color-text-primary);
  border: 1px solid var(--color-border);
}
.mp-cand-btn--edit:hover, .mp-cand-btn--reject:hover {
  background: var(--color-surface-hover);
}
.mp-rail-sessions {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mp-rail-sessions__row {
  display: grid;
  grid-template-columns: 12px auto 1fr auto;
  gap: 10px;
  align-items: baseline;
  font-family: var(--font-family-mono);
  font-size: 11.5px;
  letter-spacing: 0.2px;
}
.mp-rail-sessions__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #6ccf8e;
  align-self: center;
}
.mp-rail-sessions__id {
  color: var(--color-text-primary);
  font-weight: 500;
}
.mp-rail-sessions__agent {
  color: var(--color-text-secondary);
}
.mp-rail-sessions__work {
  color: var(--color-text-primary);
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.mp-activity-rail {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mp-activity-rail__row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 10px;
  align-items: baseline;
  font-family: var(--font-family-mono);
  font-size: 11.5px;
  color: var(--color-text-primary);
  letter-spacing: 0.2px;
  line-height: 1.5;
}
.mp-activity-rail__time {
  color: var(--color-text-tertiary);
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.mp-activity-rail__body {
  min-width: 0;
}
.mp-activity-rail__text-meta {
  color: var(--color-text-secondary);
}
.mp-activity-rail__id {
  color: var(--color-text-primary);
}
.mp-settings {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.mp-settings__section {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.mp-settings__section-title {
  font-family: var(--font-family-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
  margin: 0;
}
.mp-settings__fields {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: var(--color-surface);
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.mp-settings__field {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  gap: 1rem;
  padding: 14px 18px;
  border-top: 1px solid var(--color-divider);
}
.mp-settings__field:first-child {
  border-top: none;
}
.mp-settings__field-label {
  font-family: var(--font-family-mono);
  font-size: 11px;
  letter-spacing: 0.3px;
  color: var(--color-text-tertiary);
  text-transform: uppercase;
  margin: 0;
}
.mp-settings__field-value {
  margin: 0;
  font-size: 14px;
  color: var(--color-text-primary);
  line-height: 1.45;
}
.mp-settings__field-value--prose {
  font-size: 13.5px;
  color: var(--color-text-secondary);
  max-width: 70ch;
}
.mp-settings__links {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: var(--color-surface);
}
.mp-settings__links > li + li {
  border-top: 1px solid var(--color-divider);
}
.mp-settings__link {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr) 18px;
  gap: 1rem;
  align-items: center;
  padding: 14px 18px;
  text-decoration: none;
  color: inherit;
}
.mp-settings__link:hover {
  background: var(--color-surface-hover);
}
.mp-settings__link-title {
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text-primary);
}
.mp-settings__link-meta {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.45;
}
.mp-settings__link-chevron {
  color: var(--color-text-tertiary);
  font-size: 16px;
  line-height: 1;
  text-align: right;
}
.mp-milestone-detail {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.mp-milestone-detail__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.mp-milestone-detail__title-row {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.mp-milestone-detail__title {
  font-family: var(--font-family-mono);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--color-text-primary);
  margin: 0;
}
.mp-milestone-detail__actions {
  display: inline-flex;
  gap: 8px;
}
.mp-milestone-detail__meta {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-milestone-detail__meta-sep {
  opacity: 0.5;
}
.mp-milestone-detail__meta-warn {
  color: var(--mp-warn, #c5623a);
}
.mp-milestone-detail__empty {
  font-family: var(--font-family-mono);
  font-size: 12px;
  color: var(--color-text-tertiary);
  font-style: italic;
  margin: 0;
  padding: 12px 0;
}
.mp-tasks__chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 22px;
  padding: 0 6px;
  background: var(--color-surface-hover);
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  color: var(--color-text-primary);
  letter-spacing: 0.4px;
  border-radius: var(--radius-sm, 2px);
  font-weight: 600;
}
.mp-tasks__group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.mp-tasks__section-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
}
.mp-tasks__section-tag {
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--color-text-primary);
}
.mp-tasks__section-tag--blocked {
  color: var(--mp-warn, #c5623a);
}
.mp-tasks__section-tag--draft {
  color: var(--color-text-tertiary);
}
.mp-tasks__section-count {
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-tasks__collapsed {
  margin: 0;
}
.mp-tasks__collapsed > summary {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: var(--color-surface);
  font-family: var(--font-family-mono);
  font-size: 11.5px;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
  list-style: none;
  cursor: pointer;
}
.mp-tasks__collapsed > summary::-webkit-details-marker {
  display: none;
}
.mp-tasks__collapsed-caret {
  font-family: var(--font-family-mono);
  font-size: 10px;
  color: var(--color-text-tertiary);
  transition: transform 120ms ease;
}
.mp-tasks__collapsed[open] .mp-tasks__collapsed-caret {
  transform: rotate(90deg);
}
.mp-tasks__collapsed-ids {
  color: var(--color-text-tertiary);
}
.mp-tasks__collapsed[open] > summary {
  margin-bottom: 10px;
}
.mp-task-card {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: var(--color-surface);
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.mp-task-card--blocked {
  border-color: var(--mp-warn, #c5623a);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in srgb, var(--mp-warn, #c5623a) 50%, var(--color-border));
  }
  background: var(--mp-warn-soft, #fbeadf);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--mp-warn-soft, #fbeadf) 55%, var(--color-surface));
  }
}
.mp-task-card--closed {
  opacity: 0.7;
}
.mp-task-card__head {
  display: grid;
  grid-template-columns: 16px auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
}
.mp-task-card__check {
  width: 14px;
  height: 14px;
  border: 1.5px solid var(--color-divider);
  border-radius: 2px;
  background: transparent;
  flex-shrink: 0;
}
.mp-task-card__check--in_flight {
  background: var(--mp-warn, #c5623a);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--mp-warn, #c5623a) 25%, transparent);
  }
  border-color: var(--mp-warn, #c5623a);
}
.mp-task-card__check--closed {
  background: var(--color-text-primary);
  border-color: var(--color-text-primary);
}
.mp-task-card__id {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-tertiary);
  letter-spacing: 0.3px;
}
.mp-task-card__title {
  font-size: 13.5px;
  color: var(--color-text-primary);
  font-weight: 500;
  line-height: 1.35;
  min-width: 0;
}
.mp-task-card__claim {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 8px;
  border-radius: 2px;
  background: var(--color-surface-hover);
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  color: var(--color-text-secondary);
  letter-spacing: 0.2px;
}
.mp-task-card__claim-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #6ccf8e;
}
.mp-task-card__not-claimed {
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
}
.mp-task-card__more {
  color: var(--color-text-tertiary);
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}
.mp-why {
  background: var(--mp-warn-soft, #fbeadf);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--mp-warn-soft, #fbeadf) 50%, transparent);
  }
  border-left: 2px solid var(--mp-warn, #c5623a);
  @supports (color: color-mix(in lab, red, red)) {
    border-left: 2px solid color-mix(in srgb, var(--mp-warn, #c5623a) 50%, transparent);
  }
  padding: 10px 14px;
  border-radius: 2px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.mp-task-card--blocked .mp-why {
  background: transparent;
  border-left-color: var(--mp-warn, #c5623a);
}
.mp-why__head {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--color-text-secondary);
}
.mp-why__head-sep {
  color: var(--color-text-tertiary);
}
.mp-why__head-warn {
  color: var(--mp-warn, #c5623a);
}
.mp-why__time {
  color: var(--color-text-tertiary);
  font-variant-numeric: tabular-nums;
}
.mp-why__body {
  margin: 0;
  font-size: 12.5px;
  color: var(--color-text-primary);
  line-height: 1.55;
}
.mp-why__body code {
  font-family: var(--font-family-mono);
  font-size: 11.5px;
  color: var(--color-text-primary);
  background: var(--color-text-primary);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--color-text-primary) 6%, transparent);
  }
  padding: 1px 4px;
  border-radius: 2px;
}
.mp-why__foot {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
  flex-wrap: wrap;
}
.mp-btn-secondary--disabled {
  display: inline-flex;
  align-items: center;
  padding: 5px 10px;
  font-size: 11.5px;
  color: var(--color-text-tertiary);
  background: var(--color-surface);
  border: 1px dashed var(--color-border);
  border-radius: var(--radius-sm, 2px);
  cursor: not-allowed;
  font-weight: 500;
}
.mp-overview {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mp-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: var(--color-surface);
  overflow: hidden;
}
.mp-stats__cell {
  padding: 22px 28px 18px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  border-left: 1px solid var(--color-divider);
}
.mp-stats__cell:first-child {
  border-left: none;
}
.mp-stats__value {
  font-size: 36px;
  font-weight: 600;
  color: var(--color-text-primary);
  line-height: 1;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}
.mp-stats__label {
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
}
.mp-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}
.mp-toolbar__filters {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
}
.mp-toolbar__right {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.mp-search {
  position: relative;
  margin: 0;
}
.mp-search__icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-text-tertiary);
  font-size: 12px;
  pointer-events: none;
}
.mp-search__input {
  width: 240px;
  padding: 7px 12px 7px 30px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: transparent;
  font-size: 12.5px;
  color: var(--color-text-primary);
  outline: none;
  font-family: var(--font-family-mono);
}
.mp-search__input::placeholder {
  color: var(--color-text-tertiary);
}
.mp-search__input:focus {
  border-color: var(--color-text-primary);
}
.mp-groupby {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  font-size: 12.5px;
  color: var(--color-text-primary);
  background: transparent;
  cursor: pointer;
}
.mp-groupby[disabled] {
  cursor: not-allowed;
  color: var(--color-text-tertiary);
  opacity: 0.7;
}
.mp-groupby__caret {
  color: var(--color-text-tertiary);
  font-size: 10px;
}
.mp-state-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 9px;
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  border-radius: var(--radius-sm, 2px);
  font-weight: 500;
  width: fit-content;
}
.mp-state-badge--active {
  background: #f3d97a;
  color: #5b4a12;
}
.mp-state-badge--in-review {
  background: var(--color-text-primary);
  color: var(--color-background);
}
.mp-state-badge--refining {
  background: transparent;
  color: var(--color-text-secondary);
  border: 1px solid var(--color-border);
}
.mp-state-badge--codified {
  background: var(--color-surface-hover);
  color: var(--color-text-secondary);
  border: 1px solid var(--color-divider);
}
.mp-state-badge--archived {
  background: transparent;
  color: var(--color-text-tertiary);
  border: 1px dashed var(--color-border);
}
.mp-goals-table {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm, 2px);
  background: var(--color-surface);
  overflow: hidden;
}
.mp-goals-table__head {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr) 230px 200px 18px;
  gap: 20px;
  padding: 12px 22px;
  background: var(--color-surface-hover);
  border-bottom: 1px solid var(--color-divider);
  font-family: var(--font-family-mono);
  font-size: 10.5px;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
}
.mp-goals-table__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.mp-goals-row {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr) 230px 200px 18px;
  gap: 20px;
  align-items: center;
  padding: 18px 22px;
  border-top: 1px solid var(--color-divider);
  text-decoration: none;
  color: inherit;
}
.mp-goals-row:first-child {
  border-top: none;
}
.mp-goals-row:hover {
  background: var(--color-surface-hover);
}
.mp-goals-row__state {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.mp-goals-row__id {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-tertiary);
  letter-spacing: 0.3px;
}
.mp-goals-row__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.mp-goals-row__title {
  font-size: 14.5px;
  color: var(--color-text-primary);
  font-weight: 600;
  line-height: 1.35;
}
.mp-goals-row__desc {
  font-size: 12.5px;
  color: var(--color-text-secondary);
  line-height: 1.45;
}
.mp-goals-row__progress {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  font-size: 12.5px;
  color: var(--color-text-primary);
}
.mp-goals-row__progress-primary {
  font-weight: 500;
  line-height: 1.4;
}
.mp-goals-row__progress-primary--muted {
  color: var(--color-text-tertiary);
}
.mp-goals-row__progress-secondary {
  color: var(--color-text-secondary);
  font-size: 12px;
  line-height: 1.4;
}
.mp-goals-row__activity {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.mp-goals-row__activity-primary {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  color: var(--color-text-primary);
  font-weight: 500;
}
.mp-goals-row__activity-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}
.mp-goals-row__activity-dot--live {
  background: #6ccf8e;
}
.mp-goals-row__activity-dot--idle {
  background: var(--color-text-tertiary);
}
.mp-goals-row__activity-dot--done {
  background: transparent;
  border: 1.5px solid var(--color-text-tertiary);
}
.mp-goals-row__activity-secondary {
  font-family: var(--font-family-mono);
  font-size: 11px;
  color: var(--color-text-tertiary);
  letter-spacing: 0.2px;
  padding-left: 12px;
}
.mp-goals-row__chevron {
  color: var(--color-text-tertiary);
  font-size: 16px;
  line-height: 1;
  text-align: right;
}
@media (max-width: 960px) {
  .mp-goals-table__head, .mp-goals-row {
    grid-template-columns: 120px minmax(0, 1fr) 18px;
  }
  .mp-goals-table__head > div:nth-child(3), .mp-goals-table__head > div:nth-child(4), .mp-goals-row__progress, .mp-goals-row__activity {
    display: none;
  }
  .mp-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .mp-stats__cell:nth-child(odd) {
    border-left: none;
  }
  .mp-stats__cell:nth-child(n+3) {
    border-top: 1px solid var(--color-divider);
  }
}
@layer base {
  html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  body {
    font-family: var(--font-family-sans);
    color: var(--color-text-primary);
    background-color: var(--color-background);
  }
  code, kbd, samp, pre {
    font-family: var(--font-family-mono);
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-content: "";
    }
  }
}
