/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
.button {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  flex-shrink: 0;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-2, 0.25rem);
  border-style: var(--tw-border-style);
  border-width: 0px;
  text-decoration-line: none;
  border-radius: var(--radius-sm, 0.375rem);
  font-family: var(--font-sans, "Montserrat", "Avenir Next", "Segoe UI", sans-serif);
  font-size: var(--text-sm, clamp(0.6875rem, 0.625rem + 0.3vw, 0.8125rem));
  line-height: var(--tw-leading, var(--text-sm--line-height, 1.2));
  --tw-font-weight: var(--font-weight-medium, 500);
  font-weight: var(--font-weight-medium, 500);
  white-space: nowrap;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1)));
  transition-duration: var(--tw-duration, var(--default-transition-duration, 150ms));
  &:focus-visible {
    outline-style: var(--tw-outline-style);
    outline-width: 2px;
  }
  &:focus-visible {
    outline-offset: 2px;
  }
  &:focus-visible {
    outline-color: var(--color-primary-highlight, #e8ba00);
  }
}
.button:disabled, .button[aria-disabled="true"] {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 50%;
}
.button, .button[data-variant="default"] {
  background-color: var(--color-nav, #0d263d);
  color: var(--color-primary-soft, #fce8c2);
}
.button:hover:not(:disabled), .button[data-variant="default"]:hover:not(:disabled) {
  filter: brightness(1.08);
}
.button[data-variant="destructive"] {
  background-color: var(--color-danger, #b42318);
  color: var(--color-primary-soft, #fce8c2);
  filter: none;
}
.button[data-variant="destructive"]:hover:not(:disabled) {
  filter: brightness(1.08);
}
.button[data-variant="outline"] {
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-border, rgb(120 184 194 / 0.33));
  background-color: var(--color-surface, #fafafa);
  color: var(--color-text-strong, #0d263d);
  --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);
  filter: none;
}
.button[data-variant="outline"]:hover:not(:disabled) {
  border-color: var(--color-accent, #78b8c2);
  background-color: var(--color-surface, #fafafa);
  filter: none;
}
.button[data-variant="secondary"] {
  background-color: var(--color-secondary, #007057);
  color: var(--color-primary-soft, #fce8c2);
  filter: none;
}
.button[data-variant="secondary"]:hover:not(:disabled) {
  filter: brightness(1.08);
}
.button[data-variant="ghost"] {
  background-color: transparent;
  color: var(--color-text-strong, #0d263d);
  filter: none;
}
.button[data-variant="ghost"]:hover:not(:disabled) {
  background-color: var(--color-surface, #fafafa);
  filter: none;
}
.button[data-variant="link"] {
  background-color: transparent;
  color: var(--color-text-strong, #0d263d);
  text-underline-offset: 4px;
  filter: none;
}
.button[data-variant="link"]:hover:not(:disabled) {
  text-decoration-line: underline;
  filter: none;
}
.button, .button[data-size="default"] {
  min-height: var(--spacing-control-sm);
  padding-inline: var(--spacing-4, 1rem);
  padding-block: var(--spacing-2, 0.25rem);
}
.button[data-size="xs"] {
  min-height: var(--spacing-6, 2.5rem);
  gap: var(--spacing-1, 0.125rem);
  padding-inline: var(--spacing-2, 0.25rem);
  padding-block: var(--spacing-1, 0.125rem);
  font-size: var(--text-xs, clamp(0.5625rem, 0.5rem + 0.25vw, 0.625rem));
  line-height: var(--tw-leading, var(--text-xs--line-height, 1.2));
}
.button[data-size="sm"] {
  min-height: calc(var(--spacing, 0.25rem) * 8);
  gap: calc(var(--spacing, 0.25rem) * 1.5);
  padding-inline: var(--spacing-3, 0.75rem);
  padding-block: calc(var(--spacing, 0.25rem) * 1.5);
  font-size: var(--text-xs, clamp(0.5625rem, 0.5rem + 0.25vw, 0.625rem));
  line-height: var(--tw-leading, var(--text-xs--line-height, 1.2));
}
.button[data-size="lg"] {
  min-height: var(--spacing-control-md);
  padding-inline: var(--spacing-6, 2.5rem);
  padding-block: var(--spacing-3, 0.75rem);
  font-size: var(--text-base, clamp(1rem, 0.95rem + 0.3vw, 1.125rem));
  line-height: var(--tw-leading, var(--text-base--line-height, 1.5));
}
.button[data-size="icon"], .button[data-size="icon-sm"], .button[data-size="icon-xs"], .button[data-size="icon-lg"] {
  aspect-ratio: 1 / 1;
  padding-inline: 0px;
  padding-block: 0px;
}
.button[data-size="icon"] {
  width: var(--spacing-control-sm);
  height: var(--spacing-control-sm);
}
.button[data-size="icon-xs"] {
  width: var(--spacing-6, 2.5rem);
  height: var(--spacing-6, 2.5rem);
}
.button[data-size="icon-sm"] {
  width: calc(var(--spacing, 0.25rem) * 8);
  height: calc(var(--spacing, 0.25rem) * 8);
}
.button[data-size="icon-lg"] {
  width: var(--spacing-control-md);
  height: var(--spacing-control-md);
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@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;
}
@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-border-style: solid;
      --tw-font-weight: initial;
      --tw-outline-style: solid;
      --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;
    }
  }
}
