/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */
@layer properties;
.tsf-dashboard * {
  border-color: #e5e7eb;
}
button,input:where([type=button]),input:where([type=reset]), input:where([type=submit]) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
.tsf\:fixed {
  position: fixed;
}
.tsf\:sticky {
  position: sticky;
}
.tsf\:inset-0 {
  inset: calc(var(--tsf-spacing) * 0);
}
.tsf\:top-0 {
  top: calc(var(--tsf-spacing) * 0);
}
.tsf\:z-10 {
  z-index: 10;
}
.tsf\:z-50 {
  z-index: 50;
}
.tsf\:mx-auto {
  margin-inline: auto;
}
.tsf\:mt-8 {
  margin-top: calc(var(--tsf-spacing) * 8);
}
.tsf\:mr-2 {
  margin-right: calc(var(--tsf-spacing) * 2);
}
.tsf\:-mb-px {
  margin-bottom: -1px;
}
.tsf\:mb-2 {
  margin-bottom: calc(var(--tsf-spacing) * 2);
}
.tsf\:mb-4 {
  margin-bottom: calc(var(--tsf-spacing) * 4);
}
.tsf\:mb-6 {
  margin-bottom: calc(var(--tsf-spacing) * 6);
}
.tsf\:flex {
  display: flex;
}
.tsf\:grid {
  display: grid;
}
.tsf\:h-48 {
  height: calc(var(--tsf-spacing) * 48);
}
.tsf\:min-h-screen {
  min-height: 100vh;
}
.tsf\:w-full {
  width: 100%;
}
.tsf\:max-w-2xl {
  max-width: var(--tsf-container-2xl);
}
.tsf\:max-w-7xl {
  max-width: var(--tsf-container-7xl);
}
.tsf\:flex-grow {
  flex-grow: 1;
}
.tsf\:grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.tsf\:flex-col {
  flex-direction: column;
}
.tsf\:items-center {
  align-items: center;
}
.tsf\:items-start {
  align-items: flex-start;
}
.tsf\:justify-between {
  justify-content: space-between;
}
.tsf\:justify-center {
  justify-content: center;
}
.tsf\:justify-end {
  justify-content: flex-end;
}
.tsf\:gap-4 {
  gap: calc(var(--tsf-spacing) * 4);
}
.tsf\:gap-6 {
  gap: calc(var(--tsf-spacing) * 6);
}
.tsf\:space-y-3 {
  :where(& > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--tsf-spacing) * 3) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--tsf-spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
  }
}
.tsf\:space-y-6 {
  :where(& > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--tsf-spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--tsf-spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
  }
}
.tsf\:gap-x-8 {
  -moz-column-gap: calc(var(--tsf-spacing) * 8);
       column-gap: calc(var(--tsf-spacing) * 8);
}
.tsf\:space-x-3 {
  :where(& > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--tsf-spacing) * 3) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--tsf-spacing) * 3) * calc(1 - var(--tw-space-x-reverse)));
  }
}
.tsf\:space-x-4 {
  :where(& > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--tsf-spacing) * 4) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--tsf-spacing) * 4) * calc(1 - var(--tw-space-x-reverse)));
  }
}
.tsf\:space-x-8 {
  :where(& > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--tsf-spacing) * 8) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--tsf-spacing) * 8) * calc(1 - var(--tw-space-x-reverse)));
  }
}
.tsf\:overflow-hidden {
  overflow: hidden;
}
.tsf\:rounded-full {
  border-radius: calc(infinity * 1px);
}
.tsf\:rounded-lg {
  border-radius: var(--tsf-radius-lg);
}
.tsf\:rounded-b-lg {
  border-bottom-right-radius: var(--tsf-radius-lg);
  border-bottom-left-radius: var(--tsf-radius-lg);
}
.tsf\:border-t {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
}
.tsf\:border-b {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
}
.tsf\:border-b-2 {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 2px;
}
.tsf\:border-gray-200 {
  border-color: var(--tsf-color-gray-200);
}
.tsf\:bg-blue-50 {
  background-color: var(--tsf-color-blue-50);
}
.tsf\:bg-gray-50 {
  background-color: var(--tsf-color-gray-50);
}
.tsf\:bg-gray-900 {
  background-color: var(--tsf-color-gray-900);
}
.tsf\:bg-green-50 {
  background-color: var(--tsf-color-green-50);
}
.tsf\:bg-green-100 {
  background-color: var(--tsf-color-green-100);
}
.tsf\:bg-indigo-100 {
  background-color: var(--tsf-color-indigo-100);
}
.tsf\:bg-indigo-600 {
  background-color: var(--tsf-color-indigo-600);
}
.tsf\:bg-purple-50 {
  background-color: var(--tsf-color-purple-50);
}
.tsf\:bg-white {
  background-color: var(--tsf-color-white);
}
.tsf\:bg-yellow-100 {
  background-color: var(--tsf-color-yellow-100);
}
.tsf\:p-2 {
  padding: calc(var(--tsf-spacing) * 2);
}
.tsf\:p-4 {
  padding: calc(var(--tsf-spacing) * 4);
}
.tsf\:p-5 {
  padding: calc(var(--tsf-spacing) * 5);
}
.tsf\:p-6 {
  padding: calc(var(--tsf-spacing) * 6);
}
.tsf\:px-1 {
  padding-inline: calc(var(--tsf-spacing) * 1);
}
.tsf\:px-2 {
  padding-inline: calc(var(--tsf-spacing) * 2);
}
.tsf\:px-4 {
  padding-inline: calc(var(--tsf-spacing) * 4);
}
.tsf\:px-6 {
  padding-inline: calc(var(--tsf-spacing) * 6);
}
.tsf\:py-1 {
  padding-block: calc(var(--tsf-spacing) * 1);
}
.tsf\:py-2 {
  padding-block: calc(var(--tsf-spacing) * 2);
}
.tsf\:py-4 {
  padding-block: calc(var(--tsf-spacing) * 4);
}
.tsf\:py-8 {
  padding-block: calc(var(--tsf-spacing) * 8);
}
.tsf\:text-center {
  text-align: center;
}
.tsf\:text-2xl {
  font-size: var(--tsf-text-2xl);
  line-height: var(--tw-leading, var(--tsf-text-2xl--line-height));
}
.tsf\:text-3xl {
  font-size: var(--tsf-text-3xl);
  line-height: var(--tw-leading, var(--tsf-text-3xl--line-height));
}
.tsf\:text-base {
  font-size: var(--tsf-text-base);
  line-height: var(--tw-leading, var(--tsf-text-base--line-height));
}
.tsf\:text-lg {
  font-size: var(--tsf-text-lg);
  line-height: var(--tw-leading, var(--tsf-text-lg--line-height));
}
.tsf\:text-sm {
  font-size: var(--tsf-text-sm);
  line-height: var(--tw-leading, var(--tsf-text-sm--line-height));
}
.tsf\:text-xl {
  font-size: var(--tsf-text-xl);
  line-height: var(--tw-leading, var(--tsf-text-xl--line-height));
}
.tsf\:font-bold {
  --tw-font-weight: var(--tsf-font-weight-bold);
  font-weight: var(--tsf-font-weight-bold);
}
.tsf\:font-medium {
  --tw-font-weight: var(--tsf-font-weight-medium);
  font-weight: var(--tsf-font-weight-medium);
}
.tsf\:font-semibold {
  --tw-font-weight: var(--tsf-font-weight-semibold);
  font-weight: var(--tsf-font-weight-semibold);
}
.tsf\:whitespace-nowrap {
  white-space: nowrap;
}
.tsf\:text-blue-700 {
  color: var(--tsf-color-blue-700);
}
.tsf\:text-blue-900 {
  color: var(--tsf-color-blue-900);
}
.tsf\:text-gray-400 {
  color: var(--tsf-color-gray-400);
}
.tsf\:text-gray-500 {
  color: var(--tsf-color-gray-500);
}
.tsf\:text-gray-600 {
  color: var(--tsf-color-gray-600);
}
.tsf\:text-gray-700 {
  color: var(--tsf-color-gray-700);
}
.tsf\:text-gray-900 {
  color: var(--tsf-color-gray-900);
}
.tsf\:text-green-500 {
  color: var(--tsf-color-green-500);
}
.tsf\:text-green-700 {
  color: var(--tsf-color-green-700);
}
.tsf\:text-green-900 {
  color: var(--tsf-color-green-900);
}
.tsf\:text-indigo-600 {
  color: var(--tsf-color-indigo-600);
}
.tsf\:text-purple-700 {
  color: var(--tsf-color-purple-700);
}
.tsf\:text-purple-900 {
  color: var(--tsf-color-purple-900);
}
.tsf\:text-red-600 {
  color: var(--tsf-color-red-600);
}
.tsf\:text-white {
  color: var(--tsf-color-white);
}
.tsf\:text-yellow-500 {
  color: var(--tsf-color-yellow-500);
}
.tsf\:text-yellow-800 {
  color: var(--tsf-color-yellow-800);
}
.tsf\:shadow-md {
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px 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);
}
.tsf\:shadow-sm {
  --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);
}
.tsf\:shadow-xl {
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px 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);
}
.tsf\: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(--tsf-default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--tsf-default-transition-duration));
}
.tsf\:transition-shadow {
  transition-property: box-shadow;
  transition-timing-function: var(--tw-ease, var(--tsf-default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--tsf-default-transition-duration));
}
.tsf\:duration-300 {
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.tsf\:hover\:border-gray-300 {
  &:hover {
    @media (hover: hover) {
      border-color: var(--tsf-color-gray-300);
    }
  }
}
.tsf\:hover\:bg-indigo-700 {
  &:hover {
    @media (hover: hover) {
      background-color: var(--tsf-color-indigo-700);
    }
  }
}
.tsf\:hover\:text-gray-600 {
  &:hover {
    @media (hover: hover) {
      color: var(--tsf-color-gray-600);
    }
  }
}
.tsf\:hover\:text-gray-700 {
  &:hover {
    @media (hover: hover) {
      color: var(--tsf-color-gray-700);
    }
  }
}
.tsf\:hover\:shadow-lg {
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px 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);
    }
  }
}
.tsf\:sm\:grid-cols-3 {
  @media (width >= 40rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.tsf\:sm\:px-6 {
  @media (width >= 40rem) {
    padding-inline: calc(var(--tsf-spacing) * 6);
  }
}
.tsf\:md\:grid-cols-2 {
  @media (width >= 48rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.tsf\:md\:grid-cols-3 {
  @media (width >= 48rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.tsf\:lg\:grid-cols-3 {
  @media (width >= 64rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.tsf\:lg\:px-8 {
  @media (width >= 64rem) {
    padding-inline: calc(var(--tsf-spacing) * 8);
  }
}
:root, :host {
  --tsf-color-red-600: oklch(57.7% 0.245 27.325);
  --tsf-color-yellow-100: oklch(97.3% 0.071 103.193);
  --tsf-color-yellow-500: oklch(79.5% 0.184 86.047);
  --tsf-color-yellow-800: oklch(47.6% 0.114 61.907);
  --tsf-color-green-50: oklch(98.2% 0.018 155.826);
  --tsf-color-green-100: oklch(96.2% 0.044 156.743);
  --tsf-color-green-500: oklch(72.3% 0.219 149.579);
  --tsf-color-green-700: oklch(52.7% 0.154 150.069);
  --tsf-color-green-900: oklch(39.3% 0.095 152.535);
  --tsf-color-blue-50: oklch(97% 0.014 254.604);
  --tsf-color-blue-700: oklch(48.8% 0.243 264.376);
  --tsf-color-blue-900: oklch(37.9% 0.146 265.522);
  --tsf-color-indigo-100: oklch(93% 0.034 272.788);
  --tsf-color-indigo-600: oklch(51.1% 0.262 276.966);
  --tsf-color-indigo-700: oklch(45.7% 0.24 277.023);
  --tsf-color-purple-50: oklch(97.7% 0.014 308.299);
  --tsf-color-purple-700: oklch(49.6% 0.265 301.924);
  --tsf-color-purple-900: oklch(38.1% 0.176 304.987);
  --tsf-color-gray-50: oklch(98.5% 0.002 247.839);
  --tsf-color-gray-200: oklch(92.8% 0.006 264.531);
  --tsf-color-gray-300: oklch(87.2% 0.01 258.338);
  --tsf-color-gray-400: oklch(70.7% 0.022 261.325);
  --tsf-color-gray-500: oklch(55.1% 0.027 264.364);
  --tsf-color-gray-600: oklch(44.6% 0.03 256.802);
  --tsf-color-gray-700: oklch(37.3% 0.034 259.733);
  --tsf-color-gray-900: oklch(21% 0.034 264.665);
  --tsf-color-white: #fff;
  --tsf-spacing: 0.25rem;
  --tsf-container-2xl: 42rem;
  --tsf-container-7xl: 80rem;
  --tsf-text-sm: 0.875rem;
  --tsf-text-sm--line-height: calc(1.25 / 0.875);
  --tsf-text-base: 1rem;
  --tsf-text-base--line-height: calc(1.5 / 1);
  --tsf-text-lg: 1.125rem;
  --tsf-text-lg--line-height: calc(1.75 / 1.125);
  --tsf-text-xl: 1.25rem;
  --tsf-text-xl--line-height: calc(1.75 / 1.25);
  --tsf-text-2xl: 1.5rem;
  --tsf-text-2xl--line-height: calc(2 / 1.5);
  --tsf-text-3xl: 1.875rem;
  --tsf-text-3xl--line-height: calc(2.25 / 1.875);
  --tsf-font-weight-medium: 500;
  --tsf-font-weight-semibold: 600;
  --tsf-font-weight-bold: 700;
  --tsf-radius-lg: 0.5rem;
  --tsf-default-transition-duration: 150ms;
  --tsf-default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.tab-active {
  border-bottom-color: #4f46e5;
  color: #4f46e5;
}
#stats-modal.hidden {
  display: none;
}
#stats-modal-panel {
  animation: fadeIn 0.3s ease-out;
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-font-weight {
  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-duration {
  syntax: "*";
  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-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-font-weight: 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-duration: initial;
    }
  }
}
