/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: 'Inter', 'Noto Sans SC', system-ui, -apple-system, sans-serif;
    --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-100: oklch(93.6% 0.032 17.717);
    --color-red-200: oklch(88.5% 0.062 18.334);
    --color-red-400: oklch(70.4% 0.191 22.216);
    --color-red-500: oklch(63.7% 0.237 25.331);
    --color-red-600: oklch(57.7% 0.245 27.325);
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-orange-100: oklch(95.4% 0.038 75.164);
    --color-amber-50: oklch(98.7% 0.022 95.277);
    --color-amber-100: oklch(96.2% 0.059 95.617);
    --color-amber-200: oklch(92.4% 0.12 95.746);
    --color-amber-400: oklch(82.8% 0.189 84.429);
    --color-amber-500: oklch(76.9% 0.188 70.08);
    --color-amber-600: oklch(66.6% 0.179 58.318);
    --color-amber-700: oklch(55.5% 0.163 48.998);
    --color-green-50: oklch(98.2% 0.018 155.826);
    --color-green-100: oklch(96.2% 0.044 156.743);
    --color-green-200: oklch(92.5% 0.084 155.995);
    --color-green-400: oklch(79.2% 0.209 151.711);
    --color-green-500: oklch(72.3% 0.219 149.579);
    --color-green-600: oklch(62.7% 0.194 149.214);
    --color-green-700: oklch(52.7% 0.154 150.069);
    --color-emerald-50: oklch(97.9% 0.021 166.113);
    --color-emerald-200: oklch(90.5% 0.093 164.15);
    --color-emerald-700: oklch(50.8% 0.118 165.612);
    --color-blue-50: oklch(97% 0.014 254.604);
    --color-blue-100: oklch(93.2% 0.032 255.585);
    --color-blue-200: oklch(88.2% 0.059 254.128);
    --color-blue-500: oklch(62.3% 0.214 259.815);
    --color-blue-600: oklch(54.6% 0.245 262.881);
    --color-blue-700: oklch(48.8% 0.243 264.376);
    --color-purple-50: oklch(97.7% 0.014 308.299);
    --color-purple-100: oklch(94.6% 0.033 307.174);
    --color-purple-500: oklch(62.7% 0.265 303.9);
    --color-purple-600: oklch(55.8% 0.288 302.321);
    --color-purple-700: oklch(49.6% 0.265 301.924);
    --color-pink-500: oklch(65.6% 0.241 354.308);
    --color-slate-100: oklch(96.8% 0.007 247.896);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-100: oklch(96.7% 0.003 264.542);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-gray-400: oklch(70.7% 0.022 261.325);
    --color-gray-500: oklch(55.1% 0.027 264.364);
    --color-gray-600: oklch(44.6% 0.03 256.802);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-gray-800: oklch(27.8% 0.033 256.848);
    --color-gray-900: oklch(21% 0.034 264.665);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --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-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --blur-md: 12px;
    --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);
    --color-admin: #1a2e5a;
    --color-admin-dark: #0f1d3d;
    --color-portal: #75b325;
    --color-brand: #75b325;
    --color-brand-dark: #5a9a1e;
    --color-accent: #f0a500;
    --color-success: #22c55e;
    --color-danger: #ef4444;
    --color-info: #3b82f6;
    --width-sidebar: 260px;
  }
}
@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;
  }
  .visible {
    visibility: visible;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-14 {
    top: calc(var(--spacing) * 14);
  }
  .top-\[-20\%\] {
    top: -20%;
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-2 {
    right: calc(var(--spacing) * 2);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .right-\[-10\%\] {
    right: -10%;
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .bottom-20 {
    bottom: calc(var(--spacing) * 20);
  }
  .bottom-\[-25\%\] {
    bottom: -25%;
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .left-\[-15\%\] {
    left: -15%;
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .z-30 {
    z-index: 30;
  }
  .z-50 {
    z-index: 50;
  }
  .z-\[1\] {
    z-index: 1;
  }
  .z-\[9999\] {
    z-index: 9999;
  }
  .container {
    width: 100%;
    @media (width >= 480px) {
      max-width: 480px;
    }
    @media (width >= 768px) {
      max-width: 768px;
    }
    @media (width >= 1024px) {
      max-width: 1024px;
    }
    @media (width >= 1280px) {
      max-width: 1280px;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .-mx-4 {
    margin-inline: calc(var(--spacing) * -4);
  }
  .-mx-5 {
    margin-inline: calc(var(--spacing) * -5);
  }
  .mx-3 {
    margin-inline: calc(var(--spacing) * 3);
  }
  .mx-4 {
    margin-inline: calc(var(--spacing) * 4);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .-mt-10 {
    margin-top: calc(var(--spacing) * -10);
  }
  .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-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-14 {
    margin-top: calc(var(--spacing) * 14);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mr-0\.5 {
    margin-right: calc(var(--spacing) * 0.5);
  }
  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }
  .mr-1\.5 {
    margin-right: calc(var(--spacing) * 1.5);
  }
  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }
  .mr-3 {
    margin-right: calc(var(--spacing) * 3);
  }
  .-mb-px {
    margin-bottom: -1px;
  }
  .mb-0 {
    margin-bottom: calc(var(--spacing) * 0);
  }
  .mb-0\.5 {
    margin-bottom: calc(var(--spacing) * 0.5);
  }
  .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-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .ml-0\.5 {
    margin-left: calc(var(--spacing) * 0.5);
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-6 {
    margin-left: calc(var(--spacing) * 6);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .block {
    display: block;
  }
  .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;
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .h-20 {
    height: calc(var(--spacing) * 20);
  }
  .h-\[600px\] {
    height: 600px;
  }
  .h-\[700px\] {
    height: 700px;
  }
  .h-full {
    height: 100%;
  }
  .max-h-\[60vh\] {
    max-height: 60vh;
  }
  .min-h-\[40px\] {
    min-height: 40px;
  }
  .min-h-\[calc\(100vh-56px\)\] {
    min-height: calc(100vh - 56px);
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-7 {
    width: calc(var(--spacing) * 7);
  }
  .w-8 {
    width: calc(var(--spacing) * 8);
  }
  .w-9 {
    width: calc(var(--spacing) * 9);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-14 {
    width: calc(var(--spacing) * 14);
  }
  .w-16 {
    width: calc(var(--spacing) * 16);
  }
  .w-20 {
    width: calc(var(--spacing) * 20);
  }
  .w-\[600px\] {
    width: 600px;
  }
  .w-\[700px\] {
    width: 700px;
  }
  .w-full {
    width: 100%;
  }
  .w-px {
    width: 1px;
  }
  .w-sidebar {
    width: var(--width-sidebar);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-\[340px\] {
    max-width: 340px;
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xs {
    max-width: var(--container-xs);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .min-w-\[320px\] {
    min-width: 320px;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .table-auto {
    table-layout: auto;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-\[fadeInUp_0\.3s_ease-out\] {
    animation: fadeInUp 0.3s ease-out;
  }
  .cursor-grab {
    cursor: grab;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .resize {
    resize: both;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .space-y-2\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2.5) * 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)));
    }
  }
  .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-gray-50 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-gray-50);
    }
  }
  .divide-gray-100 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-gray-100);
    }
  }
  .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-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .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-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }
  .border-admin {
    border-color: var(--color-admin);
  }
  .border-admin\/10 {
    border-color: color-mix(in srgb, #1a2e5a 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-admin) 10%, transparent);
    }
  }
  .border-amber-200 {
    border-color: var(--color-amber-200);
  }
  .border-blue-200 {
    border-color: var(--color-blue-200);
  }
  .border-gray-50 {
    border-color: var(--color-gray-50);
  }
  .border-gray-100 {
    border-color: var(--color-gray-100);
  }
  .border-gray-200 {
    border-color: var(--color-gray-200);
  }
  .border-gray-300 {
    border-color: var(--color-gray-300);
  }
  .border-green-100 {
    border-color: var(--color-green-100);
  }
  .border-green-200 {
    border-color: var(--color-green-200);
  }
  .border-red-100 {
    border-color: var(--color-red-100);
  }
  .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);
    }
  }
  .border-white\/30 {
    border-color: color-mix(in srgb, #fff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }
  .bg-\[\#1a1a1a\] {
    background-color: #1a1a1a;
  }
  .bg-accent\/10 {
    background-color: color-mix(in srgb, #f0a500 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-accent) 10%, transparent);
    }
  }
  .bg-admin {
    background-color: var(--color-admin);
  }
  .bg-admin\/5 {
    background-color: color-mix(in srgb, #1a2e5a 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-admin) 5%, transparent);
    }
  }
  .bg-admin\/10 {
    background-color: color-mix(in srgb, #1a2e5a 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-admin) 10%, transparent);
    }
  }
  .bg-amber-50 {
    background-color: var(--color-amber-50);
  }
  .bg-amber-100 {
    background-color: var(--color-amber-100);
  }
  .bg-amber-500 {
    background-color: var(--color-amber-500);
  }
  .bg-black\/0 {
    background-color: color-mix(in srgb, #000 0%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 0%, transparent);
    }
  }
  .bg-black\/40 {
    background-color: color-mix(in srgb, #000 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }
  .bg-black\/50 {
    background-color: color-mix(in srgb, #000 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }
  .bg-black\/60 {
    background-color: color-mix(in srgb, #000 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
  }
  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }
  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }
  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }
  .bg-gray-50\/50 {
    background-color: color-mix(in srgb, oklch(98.5% 0.002 247.839) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-gray-50) 50%, transparent);
    }
  }
  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }
  .bg-gray-300 {
    background-color: var(--color-gray-300);
  }
  .bg-gray-800 {
    background-color: var(--color-gray-800);
  }
  .bg-gray-900 {
    background-color: var(--color-gray-900);
  }
  .bg-green-50 {
    background-color: var(--color-green-50);
  }
  .bg-green-100 {
    background-color: var(--color-green-100);
  }
  .bg-green-400 {
    background-color: var(--color-green-400);
  }
  .bg-green-500 {
    background-color: var(--color-green-500);
  }
  .bg-orange-100 {
    background-color: var(--color-orange-100);
  }
  .bg-portal {
    background-color: var(--color-portal);
  }
  .bg-portal\/5 {
    background-color: color-mix(in srgb, #75b325 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-portal) 5%, transparent);
    }
  }
  .bg-portal\/10 {
    background-color: color-mix(in srgb, #75b325 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-portal) 10%, transparent);
    }
  }
  .bg-purple-100 {
    background-color: var(--color-purple-100);
  }
  .bg-red-50 {
    background-color: var(--color-red-50);
  }
  .bg-red-100 {
    background-color: var(--color-red-100);
  }
  .bg-red-400 {
    background-color: var(--color-red-400);
  }
  .bg-red-500 {
    background-color: var(--color-red-500);
  }
  .bg-slate-100 {
    background-color: var(--color-slate-100);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-white\/10 {
    background-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .bg-white\/15 {
    background-color: color-mix(in srgb, #fff 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }
  .bg-white\/20 {
    background-color: color-mix(in srgb, #fff 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }
  .bg-gradient-to-t {
    --tw-gradient-position: to top in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-black\/60 {
    --tw-gradient-from: color-mix(in srgb, #000 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-black\/80 {
    --tw-gradient-from: color-mix(in srgb, #000 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 80%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .via-black\/40 {
    --tw-gradient-via: color-mix(in srgb, #000 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-transparent {
    --tw-gradient-via: transparent;
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .to-black\/20 {
    --tw-gradient-to: color-mix(in srgb, #000 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-transparent {
    --tw-gradient-to: transparent;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .\!p-0 {
    padding: calc(var(--spacing) * 0) !important;
  }
  .\!p-2\.5 {
    padding: calc(var(--spacing) * 2.5) !important;
  }
  .\!p-3 {
    padding: calc(var(--spacing) * 3) !important;
  }
  .\!p-4 {
    padding: calc(var(--spacing) * 4) !important;
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-10 {
    padding: calc(var(--spacing) * 10);
  }
  .\!px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5) !important;
  }
  .\!px-4 {
    padding-inline: calc(var(--spacing) * 4) !important;
  }
  .\!px-5 {
    padding-inline: calc(var(--spacing) * 5) !important;
  }
  .\!px-6 {
    padding-inline: calc(var(--spacing) * 6) !important;
  }
  .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-3\.5 {
    padding-inline: calc(var(--spacing) * 3.5);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .px-10 {
    padding-inline: calc(var(--spacing) * 10);
  }
  .\!py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5) !important;
  }
  .\!py-2 {
    padding-block: calc(var(--spacing) * 2) !important;
  }
  .\!py-3 {
    padding-block: calc(var(--spacing) * 3) !important;
  }
  .py-0 {
    padding-block: calc(var(--spacing) * 0);
  }
  .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-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .py-20 {
    padding-block: calc(var(--spacing) * 20);
  }
  .\!pt-6 {
    padding-top: calc(var(--spacing) * 6) !important;
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-5 {
    padding-top: calc(var(--spacing) * 5);
  }
  .pr-2 {
    padding-right: calc(var(--spacing) * 2);
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }
  .pr-5 {
    padding-right: calc(var(--spacing) * 5);
  }
  .pr-10 {
    padding-right: calc(var(--spacing) * 10);
  }
  .\!pb-0 {
    padding-bottom: calc(var(--spacing) * 0) !important;
  }
  .pb-1 {
    padding-bottom: calc(var(--spacing) * 1);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-2\.5 {
    padding-bottom: calc(var(--spacing) * 2.5);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }
  .pl-3 {
    padding-left: calc(var(--spacing) * 3);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-5 {
    padding-left: calc(var(--spacing) * 5);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .align-middle {
    vertical-align: middle;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .font-sans {
    font-family: var(--font-sans);
  }
  .\!text-base {
    font-size: var(--text-base) !important;
    line-height: var(--tw-leading, var(--text-base--line-height)) !important;
  }
  .\!text-sm {
    font-size: var(--text-sm) !important;
    line-height: var(--tw-leading, var(--text-sm--line-height)) !important;
  }
  .\!text-xs {
    font-size: var(--text-xs) !important;
    line-height: var(--tw-leading, var(--text-xs--line-height)) !important;
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--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-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .\!text-\[10px\] {
    font-size: 10px !important;
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .text-\[11px\] {
    font-size: 11px;
  }
  .text-\[15px\] {
    font-size: 15px;
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }
  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }
  .break-all {
    word-break: break-all;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-accent {
    color: var(--color-accent);
  }
  .text-admin {
    color: var(--color-admin);
  }
  .text-amber-400 {
    color: var(--color-amber-400);
  }
  .text-amber-500 {
    color: var(--color-amber-500);
  }
  .text-amber-600 {
    color: var(--color-amber-600);
  }
  .text-amber-700 {
    color: var(--color-amber-700);
  }
  .text-blue-500 {
    color: var(--color-blue-500);
  }
  .text-blue-600 {
    color: var(--color-blue-600);
  }
  .text-blue-700 {
    color: var(--color-blue-700);
  }
  .text-danger {
    color: var(--color-danger);
  }
  .text-gray-200 {
    color: var(--color-gray-200);
  }
  .text-gray-300 {
    color: var(--color-gray-300);
  }
  .text-gray-400 {
    color: var(--color-gray-400);
  }
  .text-gray-500 {
    color: var(--color-gray-500);
  }
  .text-gray-600 {
    color: var(--color-gray-600);
  }
  .text-gray-700 {
    color: var(--color-gray-700);
  }
  .text-gray-800 {
    color: var(--color-gray-800);
  }
  .text-gray-900 {
    color: var(--color-gray-900);
  }
  .text-green-500 {
    color: var(--color-green-500);
  }
  .text-green-600 {
    color: var(--color-green-600);
  }
  .text-green-700 {
    color: var(--color-green-700);
  }
  .text-pink-500 {
    color: var(--color-pink-500);
  }
  .text-portal {
    color: var(--color-portal);
  }
  .text-purple-500 {
    color: var(--color-purple-500);
  }
  .text-purple-600 {
    color: var(--color-purple-600);
  }
  .text-red-500 {
    color: var(--color-red-500);
  }
  .text-red-600 {
    color: var(--color-red-600);
  }
  .text-red-700 {
    color: var(--color-red-700);
  }
  .text-success {
    color: var(--color-success);
  }
  .text-white {
    color: var(--color-white);
  }
  .text-white\/15 {
    color: color-mix(in srgb, #fff 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }
  .text-white\/25 {
    color: color-mix(in srgb, #fff 25%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 25%, transparent);
    }
  }
  .text-white\/45 {
    color: color-mix(in srgb, #fff 45%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 45%, transparent);
    }
  }
  .text-white\/55 {
    color: color-mix(in srgb, #fff 55%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 55%, transparent);
    }
  }
  .text-white\/60 {
    color: color-mix(in srgb, #fff 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
  }
  .text-white\/70 {
    color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .text-white\/80 {
    color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .text-white\/85 {
    color: color-mix(in srgb, #fff 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 85%, transparent);
    }
  }
  .text-white\/90 {
    color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .underline {
    text-decoration-line: underline;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-20 {
    opacity: 20%;
  }
  .opacity-30 {
    opacity: 30%;
  }
  .opacity-40 {
    opacity: 40%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --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);
  }
  .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);
  }
  .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);
  }
  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .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-all {
    transition-property: all;
    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));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    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));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .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;
  }
  .group-hover\:border-portal {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        border-color: var(--color-portal);
      }
    }
  }
  .group-hover\:bg-black\/40 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #000 40%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
        }
      }
    }
  }
  .group-hover\:text-accent {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-accent);
      }
    }
  }
  .group-hover\:text-admin {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-admin);
      }
    }
  }
  .group-hover\:text-danger {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-danger);
      }
    }
  }
  .group-hover\:text-success {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-success);
      }
    }
  }
  .group-hover\:opacity-100 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .last\:border-0 {
    &:last-child {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }
  .hover\:scale-110 {
    &:hover {
      @media (hover: hover) {
        --tw-scale-x: 110%;
        --tw-scale-y: 110%;
        --tw-scale-z: 110%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .hover\:border-accent\/30 {
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #f0a500 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-accent) 30%, transparent);
        }
      }
    }
  }
  .hover\:border-admin\/30 {
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #1a2e5a 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-admin) 30%, transparent);
        }
      }
    }
  }
  .hover\:border-danger\/30 {
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #ef4444 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-danger) 30%, transparent);
        }
      }
    }
  }
  .hover\:border-gray-300 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-gray-300);
      }
    }
  }
  .hover\:border-portal {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-portal);
      }
    }
  }
  .hover\:border-success\/30 {
    &:hover {
      @media (hover: hover) {
        border-color: color-mix(in srgb, #22c55e 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-success) 30%, transparent);
        }
      }
    }
  }
  .hover\:bg-amber-100\/70 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(96.2% 0.059 95.617) 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-amber-100) 70%, transparent);
        }
      }
    }
  }
  .hover\:bg-amber-600 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-600);
      }
    }
  }
  .hover\:bg-gray-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-50);
      }
    }
  }
  .hover\:bg-gray-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-100);
      }
    }
  }
  .hover\:bg-gray-200 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-200);
      }
    }
  }
  .hover\:bg-gray-300 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-300);
      }
    }
  }
  .hover\:bg-green-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-green-50);
      }
    }
  }
  .hover\:bg-green-600 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-green-600);
      }
    }
  }
  .hover\:bg-red-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-red-50);
      }
    }
  }
  .hover\:bg-red-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-red-100);
      }
    }
  }
  .hover\:bg-red-600 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-red-600);
      }
    }
  }
  .hover\:bg-white\/20 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #fff 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
        }
      }
    }
  }
  .hover\:text-admin {
    &:hover {
      @media (hover: hover) {
        color: var(--color-admin);
      }
    }
  }
  .hover\:text-admin-dark {
    &:hover {
      @media (hover: hover) {
        color: var(--color-admin-dark);
      }
    }
  }
  .hover\:text-admin\/70 {
    &:hover {
      @media (hover: hover) {
        color: color-mix(in srgb, #1a2e5a 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-admin) 70%, transparent);
        }
      }
    }
  }
  .hover\:text-blue-500 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-500);
      }
    }
  }
  .hover\:text-gray-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-gray-600);
      }
    }
  }
  .hover\:text-gray-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-gray-700);
      }
    }
  }
  .hover\:text-portal {
    &:hover {
      @media (hover: hover) {
        color: var(--color-portal);
      }
    }
  }
  .hover\:text-red-500 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-red-500);
      }
    }
  }
  .hover\:text-red-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-red-600);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:opacity-80 {
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
  }
  .hover\:opacity-90 {
    &:hover {
      @media (hover: hover) {
        opacity: 90%;
      }
    }
  }
  .hover\:shadow-md {
    &:hover {
      @media (hover: hover) {
        --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);
      }
    }
  }
  .focus\:ring-0 {
    &:focus {
      --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);
    }
  }
  .focus\:ring-admin\/30 {
    &:focus {
      --tw-ring-color: color-mix(in srgb, #1a2e5a 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-admin) 30%, transparent);
      }
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .sm\:-mx-6 {
    @media (width >= 480px) {
      margin-inline: calc(var(--spacing) * -6);
    }
  }
  .sm\:mr-4 {
    @media (width >= 480px) {
      margin-right: calc(var(--spacing) * 4);
    }
  }
  .sm\:ml-auto {
    @media (width >= 480px) {
      margin-left: auto;
    }
  }
  .sm\:hidden {
    @media (width >= 480px) {
      display: none;
    }
  }
  .sm\:table-cell {
    @media (width >= 480px) {
      display: table-cell;
    }
  }
  .sm\:w-24 {
    @media (width >= 480px) {
      width: calc(var(--spacing) * 24);
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 480px) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-4 {
    @media (width >= 480px) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-6 {
    @media (width >= 480px) {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }
  .sm\:flex-row {
    @media (width >= 480px) {
      flex-direction: row;
    }
  }
  .sm\:items-center {
    @media (width >= 480px) {
      align-items: center;
    }
  }
  .sm\:items-start {
    @media (width >= 480px) {
      align-items: flex-start;
    }
  }
  .sm\:gap-0 {
    @media (width >= 480px) {
      gap: calc(var(--spacing) * 0);
    }
  }
  .sm\:gap-6 {
    @media (width >= 480px) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .sm\:p-4 {
    @media (width >= 480px) {
      padding: calc(var(--spacing) * 4);
    }
  }
  .sm\:p-6 {
    @media (width >= 480px) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .sm\:px-6 {
    @media (width >= 480px) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .sm\:pt-0\.5 {
    @media (width >= 480px) {
      padding-top: calc(var(--spacing) * 0.5);
    }
  }
  .sm\:pr-6 {
    @media (width >= 480px) {
      padding-right: calc(var(--spacing) * 6);
    }
  }
  .sm\:pl-6 {
    @media (width >= 480px) {
      padding-left: calc(var(--spacing) * 6);
    }
  }
  .sm\:text-right {
    @media (width >= 480px) {
      text-align: right;
    }
  }
  .sm\:text-lg {
    @media (width >= 480px) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .sm\:text-sm {
    @media (width >= 480px) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .sm\:text-xl {
    @media (width >= 480px) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .sm\:text-xs {
    @media (width >= 480px) {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
  .md\:col-span-1 {
    @media (width >= 768px) {
      grid-column: span 1 / span 1;
    }
  }
  .md\:col-span-2 {
    @media (width >= 768px) {
      grid-column: span 2 / span 2;
    }
  }
  .md\:col-span-3 {
    @media (width >= 768px) {
      grid-column: span 3 / span 3;
    }
  }
  .md\:ml-sidebar {
    @media (width >= 768px) {
      margin-left: 260px;
    }
  }
  .md\:flex {
    @media (width >= 768px) {
      display: flex;
    }
  }
  .md\:hidden {
    @media (width >= 768px) {
      display: none;
    }
  }
  .md\:inline-flex {
    @media (width >= 768px) {
      display: inline-flex;
    }
  }
  .md\:table-cell {
    @media (width >= 768px) {
      display: table-cell;
    }
  }
  .md\:w-1\/2 {
    @media (width >= 768px) {
      width: calc(1 / 2 * 100%);
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 768px) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 768px) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-4 {
    @media (width >= 768px) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-5 {
    @media (width >= 768px) {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  .md\:gap-4 {
    @media (width >= 768px) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .md\:p-6 {
    @media (width >= 768px) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .md\:px-6 {
    @media (width >= 768px) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .md\:py-0 {
    @media (width >= 768px) {
      padding-block: calc(var(--spacing) * 0);
    }
  }
  .lg\:col-span-2 {
    @media (width >= 1024px) {
      grid-column: span 2 / span 2;
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 1024px) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 1024px) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .xl\:px-14 {
    @media (width >= 1280px) {
      padding-inline: calc(var(--spacing) * 14);
    }
  }
  .xl\:text-3xl {
    @media (width >= 1280px) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
}
* {
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 transparent;
}
*::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
*::-webkit-scrollbar-track {
  background: transparent;
}
*::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 9999px;
}
*::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}
html {
  max-width: 100vw;
  overflow-x: hidden;
  scroll-behavior: smooth;
}
body {
  max-width: 100vw;
  overflow-x: hidden;
  background-color: #f1f5f9 !important;
}
main {
  overflow-x: hidden;
  min-width: 0;
}
.flex-1 {
  min-width: 0;
}
.admin-main {
  font-size: 0.85rem !important;
}
.admin-main h1, .admin-main h2, .admin-main h3, .admin-main p, .admin-main span, .admin-main div, .admin-main a, .admin-main li, .admin-main td, .admin-main th, .admin-main label, .admin-main button {
  font-size: inherit !important;
}
.admin-main .text-xs {
  font-size: 0.75rem !important;
}
.admin-main h1 {
  font-size: 1rem !important;
  font-weight: 700 !important;
}
.admin-main .form-input, .admin-main .form-select, .admin-main .form-textarea, .admin-main input, .admin-main select, .admin-main textarea {
  font-size: 0.85rem !important;
}
.admin-main .form-label {
  font-size: 0.8rem !important;
}
.admin-main table {
  font-size: 0.85rem !important;
}
::selection {
  background: rgba(117,179,37,0.2);
  color: inherit;
}
nav a, .admin-sidebar a, .admin-bar-tab, .admin-popup-item, main a {
  text-decoration: none !important;
}
main h1, main h2, main h3, main h4, main h5, main h6 {
  font-size: inherit;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  main > .flex {
    flex-wrap: wrap;
    gap: 0.5rem;
  }
}
.btn {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
.btn-primary {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #75b325 0%, #8fd040 100%);
}
.btn-primary:hover {
  --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);
  background: linear-gradient(135deg, #5a9a1e 0%, #75b325 100%);
}
.settings-tab {
  border-color: transparent;
  color: var(--color-gray-400);
}
.settings-tab:hover {
  border-color: var(--color-gray-300);
  color: var(--color-gray-600);
}
.settings-tab.active {
  color: #1a2e5a;
  border-color: #1a2e5a;
}
.ios-toggle {
  position: relative;
  display: inline-block;
  width: 48px;
  height: 28px;
  flex-shrink: 0;
  cursor: pointer;
}
.ios-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
}
.ios-toggle-slider {
  position: absolute;
  inset: 0;
  background: #e5e7eb;
  border-radius: 9999px;
  transition: background 0.3s;
}
.ios-toggle-slider::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 2px;
  width: 24px;
  height: 24px;
  background: white;
  border-radius: 9999px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.15);
  transition: transform 0.3s;
}
.ios-toggle input:checked + .ios-toggle-slider {
  background: #ef4444;
}
.ios-toggle input:checked + .ios-toggle-slider::before {
  transform: translateX(20px);
}
.btn-admin-primary {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #1a2e5a 0%, #75b325 100%);
}
.btn-admin-primary:hover {
  --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);
  background: linear-gradient(135deg, #0f1d3d 0%, #5a9a1e 100%);
}
.btn-portal-primary {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #75b325 0%, #1a2e5a 100%);
}
.btn-portal-primary:hover {
  --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);
  background: linear-gradient(135deg, #5a9a1e 0%, #0f1d3d 100%);
}
.btn-success {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #16a34a 0%, #22c55e 100%);
}
.btn-success:hover {
  --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);
  background: linear-gradient(135deg, #15803d 0%, #16a34a 100%);
}
.btn-danger {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #dc2626 0%, #ef4444 100%);
}
.btn-danger:hover {
  --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);
  background: linear-gradient(135deg, #b91c1c 0%, #dc2626 100%);
}
.btn-warning {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #ea580c 0%, #f97316 100%);
}
.btn-warning:hover {
  --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);
  background: linear-gradient(135deg, #c2410c 0%, #ea580c 100%);
}
.btn-info {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #0284c7 0%, #38bdf8 100%);
}
.btn-info:hover {
  --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);
  background: linear-gradient(135deg, #0369a1 0%, #0284c7 100%);
}
.btn-secondary {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-300);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-600);
  text-decoration-line: none;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #f9fafb 0%, #e5e7eb 100%);
}
.btn-secondary:hover {
  --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);
  background: linear-gradient(135deg, #e5e7eb 0%, #d1d5db 100%);
}
.btn-outline {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-300);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-700);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #ffffff 0%, #f3f4f6 100%);
}
.btn-outline:hover {
  background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
}
.btn-wa {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-radius: var(--radius-lg);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  background: linear-gradient(135deg, #25d366 0%, #5eea8d 100%);
}
.btn-wa:hover {
  background: linear-gradient(135deg, #20bd5a 0%, #25d366 100%);
  --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);
}
.btn-lg {
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.btn-sm {
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 1.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.auth-submit-btn {
  width: 100%;
  cursor: pointer;
  border-radius: var(--radius-xl);
  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);
  color: var(--color-white);
  --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);
  padding: 14px 0;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: transform 0.15s, box-shadow 0.15s;
}
.auth-submit-btn:hover {
  --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);
  filter: brightness(1.05);
}
.auth-submit-btn:active {
  transform: scale(0.98);
}
.form-input {
  width: 100%;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 3.5);
  padding-block: calc(var(--spacing) * 2.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  &::placeholder {
    color: var(--color-gray-300);
  }
  &:focus {
    border-color: var(--color-brand);
  }
  &: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-color: color-mix(in srgb, #75b325 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-brand) 20%, transparent);
    }
  }
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
}
.form-input:hover:not(:focus) {
  border-color: var(--color-gray-300);
}
.form-select {
  width: 100%;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 3.5);
  padding-block: calc(var(--spacing) * 2.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  &:focus {
    border-color: var(--color-brand);
  }
  &: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-color: color-mix(in srgb, #75b325 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-brand) 20%, transparent);
    }
  }
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
}
.form-select:hover:not(:focus) {
  border-color: var(--color-gray-300);
}
.form-textarea {
  width: 100%;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 3.5);
  padding-block: calc(var(--spacing) * 2.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  &::placeholder {
    color: var(--color-gray-300);
  }
  &:focus {
    border-color: var(--color-brand);
  }
  &: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-color: color-mix(in srgb, #75b325 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-brand) 20%, transparent);
    }
  }
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
}
.form-textarea:hover:not(:focus) {
  border-color: var(--color-gray-300);
}
.form-label {
  margin-bottom: calc(var(--spacing) * 1.5);
  display: block;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-600);
}
.admin-form .form-input:focus, .admin-form .form-select:focus, .admin-form .form-textarea:focus {
  border-color: var(--color-admin);
  --tw-ring-color: color-mix(in srgb, #1a2e5a 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-ring-color: color-mix(in oklab, var(--color-admin) 20%, transparent);
  }
}
.portal-form .form-input:focus, .portal-form .form-select:focus, .portal-form .form-textarea:focus {
  border-color: var(--color-portal);
  --tw-ring-color: color-mix(in srgb, #75b325 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-ring-color: color-mix(in oklab, var(--color-portal) 20%, transparent);
  }
}
.form-input:focus, .form-textarea:focus {
  border-color: #75b325;
  box-shadow: 0 0 0 3px rgba(117,179,37,0.15);
  outline: none;
}
.card {
  border-radius: var(--radius-xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-100);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 6);
  --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);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.card-hover:hover {
  --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);
}
.card table:has(thead) {
  min-width: 600px;
}
.table-auto thead {
  background-color: color-mix(in srgb, oklch(98.5% 0.002 247.839) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-gray-50) 80%, transparent);
  }
}
.table-auto th {
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  text-align: left;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  --tw-tracking: var(--tracking-wider);
  letter-spacing: var(--tracking-wider);
  color: var(--color-gray-400);
  text-transform: uppercase;
}
.table-auto td {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-gray-50);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-600);
}
.table-auto tbody tr {
  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));
  --tw-duration: 150ms;
  transition-duration: 150ms;
}
.table-auto tbody tr:hover {
  background-color: color-mix(in srgb, oklch(98.5% 0.002 247.839) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-gray-50) 60%, transparent);
  }
}
.table-auto tbody tr:nth-child(even) {
  background-color: color-mix(in srgb, oklch(98.5% 0.002 247.839) 30%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-gray-50) 30%, transparent);
  }
}
.table-row-clickable {
  cursor: pointer;
  transition: background-color 0.15s;
}
.table-row-clickable:hover {
  background-color: #f9fafb;
}
.badge {
  display: inline-flex;
  align-items: center;
  border-radius: calc(infinity * 1px);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.badge-success {
  display: inline-flex;
  align-items: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-emerald-50);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-emerald-700);
}
.badge-warning {
  display: inline-flex;
  align-items: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-amber-50);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-amber-700);
}
.badge-danger {
  display: inline-flex;
  align-items: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-red-50);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-red-700);
}
.badge-info {
  display: inline-flex;
  align-items: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-blue-50);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-blue-700);
}
.badge-purple {
  display: inline-flex;
  align-items: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-purple-50);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-purple-700);
}
.badge-gray {
  display: inline-flex;
  align-items: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-gray-100);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-500);
}
.badge i, .badge-success i, .badge-warning i, .badge-danger i, .badge-info i, .badge-purple i, .badge-gray i {
  margin-right: calc(var(--spacing) * 1);
  font-size: 10px;
}
.sidebar-section-title {
  padding: 1.25rem 1.25rem 0.5rem;
  font-size: 0.65rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #9ca3af;
}
.sidebar-link-admin {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.55rem 1rem;
  margin: 1px 0.75rem;
  border-radius: 0.5rem;
  font-size: 0.82rem;
  font-weight: 400;
  color: #64748b;
  text-decoration: none;
  transition: all 0.15s ease;
}
.sidebar-link-admin:hover {
  background: rgba(26, 46, 90, 0.06);
  color: #1a2e5a;
}
.sidebar-link-admin.active {
  background: rgba(26, 46, 90, 0.08);
  color: #1a2e5a;
  font-weight: 500;
}
.sidebar-link-admin i {
  width: 1.25rem;
  text-align: center;
  font-size: 0.95rem;
  flex-shrink: 0;
}
.sidebar-link-portal {
  margin-inline: calc(var(--spacing) * 3);
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-lg);
  padding-inline: calc(var(--spacing) * 5);
  padding-block: calc(var(--spacing) * 2.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-500);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  &:hover {
    @media (hover: hover) {
      background-color: color-mix(in srgb, #75b325 5%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-portal) 5%, transparent);
      }
    }
  }
  &:hover {
    @media (hover: hover) {
      color: var(--color-portal);
    }
  }
}
.sidebar-link-portal.active {
  background-color: color-mix(in srgb, #75b325 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-portal) 10%, transparent);
  }
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-portal);
}
.sidebar-link-portal i {
  width: calc(var(--spacing) * 5);
  text-align: center;
  font-size: 15px;
}
.admin-sidebar {
  background: #fff;
  border-right: 1px solid #e5e7eb;
  box-shadow: none;
}
.admin-sidebar::-webkit-scrollbar {
  width: 4px;
}
.admin-sidebar::-webkit-scrollbar-thumb {
  background: #e5e7eb;
  border-radius: 4px;
}
.sidebar-footer {
  border-top: 1px solid #e5e7eb;
  padding: 0.75rem 1.25rem;
  flex-shrink: 0;
  margin-top: auto;
}
.sidebar-footer a {
  color: #ef4444;
  text-decoration: none;
  font-size: 0.82rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.4rem 0;
}
.sidebar-footer a:hover {
  color: #b91c1c;
}
@media (max-width: 767px) {
  .admin-sidebar {
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    display: flex !important;
  }
  .admin-sidebar.open {
    transform: translateX(0);
  }
}
.sidebar-overlay {
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.sidebar-overlay.open {
  opacity: 1;
  pointer-events: auto;
}
.alert {
  margin-bottom: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.alert-success {
  margin-bottom: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-emerald-200);
  background-color: var(--color-emerald-50);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-emerald-700);
}
.alert-danger {
  margin-bottom: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-red-200);
  background-color: var(--color-red-50);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-red-700);
}
.alert-warning {
  margin-bottom: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-amber-200);
  background-color: var(--color-amber-50);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-amber-700);
}
.alert-info {
  margin-bottom: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-blue-200);
  background-color: var(--color-blue-50);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-blue-700);
}
.admin-bottom-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 40;
  padding: 0 8px 8px;
  padding-bottom: calc(8px + env(safe-area-inset-bottom, 0));
}
@media (min-width: 768px) {
  .admin-bottom-bar {
    display: none !important;
  }
}
@media (max-width: 767px) {
  main {
    padding-bottom: 80px !important;
  }
}
.admin-bar-inner {
  display: flex;
  align-items: center;
  height: 56px;
  background: linear-gradient(135deg, #1a2e5a 0%, #233a63 100%);
  border-radius: 18px;
  box-shadow: 0 -4px 24px rgba(0,0,0,0.12), 0 4px 12px rgba(0,0,0,0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 0 8px;
  gap: 2px;
}
.admin-bar-tabs {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
}
.admin-bar-tab {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 4px 14px;
  border-radius: 10px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 11px;
  font-weight: 500;
  gap: 3px;
  white-space: nowrap;
  text-decoration: none;
  transition: color 0.2s, background 0.2s;
  -webkit-tap-highlight-color: transparent;
}
.admin-bar-tab i {
  font-size: 20px;
  line-height: 1;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.admin-bar-tab:active {
  background: rgba(255, 255, 255, 0.1);
}
.admin-bar-tab.active-admin {
  color: #ffffff;
  font-weight: 600;
}
.admin-bar-tab.active-admin i {
  transform: translateY(-1px) scale(1.08);
}
.admin-bar-tab.active-portal {
  color: #75b325;
  font-weight: 600;
}
.admin-bar-tab.active-portal i {
  transform: translateY(-1px) scale(1.08);
}
.portal-five-tabs {
  gap: 2px;
}
.portal-five-tabs .admin-bar-tab {
  padding: 4px 8px;
  flex: 1;
  min-width: 0;
}
.portal-tab-logout {
  color: #ef4444 !important;
}
.portal-tab-logout:active {
  background: #fef2f2 !important;
}
.admin-bar-hamburger {
  flex: none;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.6);
  font-size: 17px;
  background: none;
  border: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background 0.2s, color 0.2s;
}
.admin-bar-hamburger:active {
  background: rgba(255, 255, 255, 0.1);
}
.admin-bar-hamburger.menu-open-admin {
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff;
}
.admin-bar-hamburger.menu-open-portal {
  background: rgba(117,179,37,0.1);
  color: #75b325;
}
.admin-popup-overlay {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 39;
}
.admin-popup-overlay.open {
  display: block;
}
.admin-popup-menu {
  position: absolute;
  bottom: 64px;
  left: 8px;
  z-index: 50;
  pointer-events: none;
  opacity: 0;
  transform: translateY(12px) scale(0.95);
  transform-origin: bottom left;
  transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.admin-popup-menu.open {
  pointer-events: auto;
  opacity: 1;
  transform: translateY(0) scale(1);
}
.admin-popup-inner {
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.06);
  padding: 8px 0;
  min-width: 200px;
  max-height: 60vh;
  overflow-y: auto;
}
.admin-popup-title {
  padding: 8px 16px 4px;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #9ca3af;
}
.admin-popup-title:not(:first-child) {
  margin-top: 4px;
  border-top: 1px solid #f3f4f6;
  padding-top: 10px;
}
.admin-popup-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 500;
  color: #4b5563;
  text-decoration: none;
  transition: background 0.15s, color 0.15s;
}
.admin-popup-item i {
  width: 18px;
  text-align: center;
  font-size: 14px;
  color: #9ca3af;
  transition: color 0.15s;
}
.admin-popup-item:hover, .admin-popup-item:active {
  background: #f3f4f6;
}
.admin-popup-admin .admin-popup-item:hover, .admin-popup-admin .admin-popup-item:active {
  color: #1a2e5a;
}
.admin-popup-admin .admin-popup-item:hover i, .admin-popup-admin .admin-popup-item:active i {
  color: #1a2e5a;
}
.admin-popup-portal .admin-popup-item:hover, .admin-popup-portal .admin-popup-item:active {
  color: #75b325;
}
.admin-popup-portal .admin-popup-item:hover i, .admin-popup-portal .admin-popup-item:active i {
  color: #75b325;
}
.admin-popup-divider {
  height: 1px;
  background: #f3f4f6;
  margin: 6px 0;
}
.admin-popup-danger {
  color: #ef4444 !important;
}
.admin-popup-danger i {
  color: #ef4444 !important;
}
.admin-popup-danger:hover, .admin-popup-danger:active {
  background: #fef2f2 !important;
  color: #dc2626 !important;
}
.toggle-switch {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
  flex-shrink: 0;
}
.toggle-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
.toggle-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e2e8f0;
  border-radius: 24px;
  transition: background-color 0.2s;
}
.toggle-slider::before {
  content: "";
  position: absolute;
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  border-radius: 50%;
  transition: transform 0.2s;
  box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}
.toggle-switch input:checked + .toggle-slider {
  background-color: #75b325;
}
.toggle-switch input:checked + .toggle-slider::before {
  transform: translateX(20px);
}
.navbar {
  position: fixed;
  top: calc(var(--spacing) * 0);
  right: calc(var(--spacing) * 0);
  left: calc(var(--spacing) * 0);
  z-index: 50;
  background-color: color-mix(in srgb, #fff 95%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 95%, transparent);
  }
  --tw-backdrop-blur: blur(var(--blur-md));
  -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  border-bottom: 1px solid transparent;
}
.navbar.scrolled {
  background-color: var(--color-white);
  --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);
  border-bottom-color: #f3f4f6;
}
.navbar-inner {
  margin-inline: auto;
  display: flex;
  height: calc(var(--spacing) * 16);
  max-width: var(--container-7xl);
  align-items: center;
  justify-content: space-between;
  padding-inline: calc(var(--spacing) * 4);
}
.navbar-brand {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 2.5);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
  text-decoration-line: none;
}
.navbar-brand-text {
  color: var(--color-admin);
  letter-spacing: -0.025em;
}
.navbar-logo {
  height: calc(var(--spacing) * 8);
}
.navbar-nav {
  display: none;
  align-items: center;
  gap: calc(var(--spacing) * 1);
  @media (width >= 768px) {
    display: flex;
  }
}
.nav-link {
  border-radius: var(--radius-lg);
  padding-inline: calc(var(--spacing) * 3);
  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-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-600);
  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));
  &:hover {
    @media (hover: hover) {
      background-color: color-mix(in srgb, #75b325 5%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-brand) 5%, transparent);
      }
    }
  }
  &:hover {
    @media (hover: hover) {
      color: var(--color-brand);
    }
  }
}
.nav-link.active {
  background-color: color-mix(in srgb, #75b325 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-brand) 10%, transparent);
  }
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-brand);
}
.navbar-actions {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
}
.btn-lang {
  border-radius: var(--radius-md);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-300);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 1);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-600);
  text-decoration-line: none;
  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));
  &:hover {
    @media (hover: hover) {
      background-color: var(--color-gray-100);
    }
  }
}
.hamburger {
  display: flex;
  cursor: pointer;
  flex-direction: column;
  gap: calc(var(--spacing) * 1.5);
  --tw-border-style: none;
  border-style: none;
  background-color: transparent;
  padding: calc(var(--spacing) * 2);
  @media (width >= 768px) {
    display: none;
  }
}
.hamburger-line {
  height: calc(var(--spacing) * 0.5);
  width: calc(var(--spacing) * 5);
  border-radius: calc(infinity * 1px);
  background-color: var(--color-gray-700);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.hamburger.active .hamburger-line:nth-child(1) {
  transform: rotate(45deg) translate(4px, 4px);
}
.hamburger.active .hamburger-line:nth-child(2) {
  opacity: 0;
}
.hamburger.active .hamburger-line:nth-child(3) {
  transform: rotate(-45deg) translate(4px, -4px);
}
.navbar-nav.open {
  position: absolute;
  top: calc(var(--spacing) * 16);
  right: calc(var(--spacing) * 0);
  left: calc(var(--spacing) * 0);
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 1);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-gray-100);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 4);
  --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);
}
.hero {
  position: relative;
  overflow: hidden;
  padding-top: calc(var(--spacing) * 28);
  padding-bottom: calc(var(--spacing) * 20);
  text-align: center;
  color: var(--color-white);
  @media (width >= 768px) {
    padding-top: calc(var(--spacing) * 36);
  }
  @media (width >= 768px) {
    padding-bottom: calc(var(--spacing) * 28);
  }
  background: linear-gradient(135deg, #1a2e5a 0%, #1e3464 40%, #233a63 70%, #1a2e5a 100%);
}
.hero::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -20%;
  width: 60%;
  height: 200%;
  background: radial-gradient(ellipse, rgba(240,165,0,0.08) 0%, transparent 70%);
  pointer-events: none;
}
.hero::after {
  content: '';
  position: absolute;
  bottom: -30%;
  right: -10%;
  width: 50%;
  height: 160%;
  background: radial-gradient(ellipse, rgba(117,179,37,0.06) 0%, transparent 70%);
  pointer-events: none;
}
.hero-bg-image {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.hero-bg-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.25;
}
.hero-content {
  position: relative;
  z-index: 10;
  margin-inline: auto;
  max-width: var(--container-4xl);
  padding-inline: calc(var(--spacing) * 4);
  text-align: center;
}
.hero-title {
  margin-bottom: calc(var(--spacing) * 5);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 768px) {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
  letter-spacing: -0.02em;
}
.hero-subtitle {
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  color: color-mix(in srgb, #fff 85%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 85%, transparent);
  }
  @media (width >= 768px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.hero-desc {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 10);
  max-width: var(--container-2xl);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: color-mix(in srgb, #fff 65%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 65%, transparent);
  }
}
.hero-cta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
}
.gold {
  color: #f0a500;
}
.section {
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 16);
  @media (width >= 768px) {
    padding-block: calc(var(--spacing) * 24);
  }
}
.section-alt {
  background-color: var(--color-gray-50);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 16);
  @media (width >= 768px) {
    padding-block: calc(var(--spacing) * 24);
  }
}
.section-title {
  margin-bottom: calc(var(--spacing) * 6);
  text-align: center;
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
  @media (width >= 768px) {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  letter-spacing: -0.02em;
  position: relative;
  padding-bottom: 16px;
}
.section-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  background: #75b325;
  border-radius: 2px;
}
.section-subtitle {
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 2);
  margin-bottom: calc(var(--spacing) * 12);
  max-width: var(--container-2xl);
  text-align: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-500);
}
.section-actions {
  margin-top: calc(var(--spacing) * 10);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
}
.container {
  margin-inline: auto;
  max-width: var(--container-7xl);
}
.container-narrow {
  margin-inline: auto;
  max-width: var(--container-4xl);
}
.grid-2 {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 8);
  @media (width >= 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.grid-3 {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
  @media (width >= 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1024px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.grid-4 {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
  @media (width >= 480px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1024px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.card-icon {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  height: calc(var(--spacing) * 16);
  width: calc(var(--spacing) * 16);
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  background-color: #f0fdf4;
  color: #75b325;
  transition: transform 0.3s ease;
}
.card:hover .card-icon {
  transform: scale(1.05);
}
.card-title {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-800);
}
.card-text {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-500);
}
.footer {
  position: relative;
  background-color: var(--color-gray-900);
  padding-inline: calc(var(--spacing) * 4);
  padding-top: calc(var(--spacing) * 16);
  padding-bottom: calc(var(--spacing) * 8);
  color: var(--color-gray-400);
  background: linear-gradient(180deg, #111827 0%, #0f172a 100%);
}
.footer-grid {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 12);
  display: grid;
  max-width: var(--container-7xl);
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 10);
}
@media (min-width: 768px) {
  .footer-grid {
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 2rem;
  }
}
.footer-brand {
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
}
.footer-desc {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
}
.footer-heading {
  margin-bottom: calc(var(--spacing) * 4);
  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);
  --tw-tracking: var(--tracking-wider);
  letter-spacing: var(--tracking-wider);
  color: var(--color-white);
  text-transform: uppercase;
}
.footer-links {
  margin: calc(var(--spacing) * 0);
  list-style-type: none;
  :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)));
  }
  padding: calc(var(--spacing) * 0);
}
.footer-links a {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-400);
  text-decoration-line: none;
  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));
  &:hover {
    @media (hover: hover) {
      color: var(--color-white);
    }
  }
}
.footer-links a:hover {
  padding-left: 2px;
  transition: all 0.2s ease;
}
.footer-bottom {
  margin-inline: auto;
  max-width: var(--container-7xl);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-gray-800);
  padding-top: calc(var(--spacing) * 8);
  text-align: center;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.footer-legal-links {
  margin-top: calc(var(--spacing) * 2);
  color: var(--color-gray-500);
}
.footer-legal-links a {
  color: var(--color-gray-400);
  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));
  &:hover {
    @media (hover: hover) {
      color: var(--color-white);
    }
  }
}
.footer-legal-sep {
  margin-inline: calc(var(--spacing) * 2);
  color: var(--color-gray-600);
}
.wa-float {
  position: fixed;
  right: calc(var(--spacing) * 6);
  bottom: calc(var(--spacing) * 6);
  z-index: 50;
  display: flex;
  height: calc(var(--spacing) * 14);
  width: calc(var(--spacing) * 14);
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  color: var(--color-white);
  text-decoration-line: none;
  background: linear-gradient(135deg, #25d366 0%, #128c7e 100%);
  box-shadow: 0 4px 15px rgba(37,211,102,0.4);
  animation: wa-pulse 2s infinite;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.wa-float:hover {
  transform: scale(1.12);
  box-shadow: 0 6px 25px rgba(37,211,102,0.5);
}
@keyframes wa-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(37,211,102,0.5);
  }
  70% {
    box-shadow: 0 0 0 15px rgba(37,211,102,0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(37,211,102,0);
  }
}
.fade-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}
.pricing-grid {
  margin-inline: auto;
  display: grid;
  max-width: var(--container-5xl);
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
  @media (width >= 768px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.pricing-card {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-2xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 6);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.pricing-card:hover {
  --tw-translate-y: calc(var(--spacing) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --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);
}
.pricing-card-highlighted {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-2xl);
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: var(--color-accent);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 6);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  border-top: 4px solid #75b325;
  transform: scale(1.03);
  z-index: 1;
  box-shadow: 0 8px 30px rgba(240,165,0,0.15);
}
.pricing-card-highlighted:hover {
  transform: scale(1.05);
  box-shadow: 0 12px 40px rgba(240,165,0,0.2);
}
.pricing-badge {
  position: absolute;
  top: calc(var(--spacing) * -3);
  left: calc(1 / 2 * 100%);
  --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  border-radius: calc(infinity * 1px);
  background-color: var(--color-accent);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 1);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-white);
}
.pricing-plan-name {
  margin-bottom: calc(var(--spacing) * 1);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
}
.pricing-price {
  margin-bottom: calc(var(--spacing) * 4);
}
.pricing-price-amount {
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
  color: var(--color-gray-800);
  @media (width >= 768px) {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
}
.pricing-price-period {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-500);
}
.pricing-desc {
  margin-bottom: calc(var(--spacing) * 6);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-500);
}
.pricing-features {
  margin-bottom: calc(var(--spacing) * 8);
  flex: 1;
  :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)));
  }
}
.pricing-feature-item {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-600);
}
.pricing-feature-item i.fa-check {
  color: #75b325;
  font-size: 0.75rem;
  margin-top: 3px;
}
.pricing-card-cta {
  margin-top: auto;
}
.pricing-btn {
  width: 100%;
  text-align: center;
}
.pricing-trial {
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 16);
  text-align: center;
  color: var(--color-white);
  background: linear-gradient(135deg, #1a2e5a, #233a63);
}
.pricing-trial-content {
  margin-inline: auto;
  max-width: var(--container-2xl);
}
.pricing-trial-title {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 768px) {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
}
.pricing-trial-desc {
  margin-bottom: calc(var(--spacing) * 8);
  color: color-mix(in srgb, #fff 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 70%, transparent);
  }
}
.pricing-trial-cta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
}
.features-item {
  margin-inline: auto;
  display: flex;
  max-width: var(--container-5xl);
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 8);
  @media (width >= 768px) {
    flex-direction: row;
  }
}
.features-item-reverse {
  margin-inline: auto;
  display: flex;
  max-width: var(--container-5xl);
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 8);
  @media (width >= 768px) {
    flex-direction: row-reverse;
  }
}
.features-item-icon {
  display: flex;
  height: calc(var(--spacing) * 20);
  width: calc(var(--spacing) * 20);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  background: linear-gradient(135deg, #75b325 0%, #5a9a1e 100%);
  color: white;
  box-shadow: 0 8px 20px rgba(117,179,37,0.25);
}
.features-item-content {
  flex: 1;
}
.features-item-details {
  margin-top: calc(var(--spacing) * 4);
  :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)));
  }
}
.features-item-details li {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-600);
}
.features-item-details li i.fa-check {
  color: #75b325;
  font-size: 0.75rem;
  margin-top: 3px;
}
.hero-wave {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  line-height: 0;
  z-index: 1;
}
.hero-wave svg {
  display: block;
  width: 100%;
}
.hero-badge {
  margin-bottom: calc(var(--spacing) * 6);
  display: inline-flex;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  border-radius: calc(infinity * 1px);
  padding-inline: calc(var(--spacing) * 4);
  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-medium);
  font-weight: var(--font-weight-medium);
  background: rgba(117, 179, 37, 0.2);
  color: #a3d65c;
  border: 1px solid rgba(117, 179, 37, 0.3);
}
.home-integration {
  margin-inline: auto;
  max-width: var(--container-5xl);
}
.home-integration-flow {
  margin-top: calc(var(--spacing) * 10);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 6);
  @media (width >= 768px) {
    flex-direction: row;
  }
}
.home-integration-sources, .home-integration-methods {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 3);
}
.home-integration-source, .home-integration-method {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-100);
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  --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);
  min-width: 180px;
}
.home-integration-source-icon, .home-integration-method-icon {
  display: flex;
  height: calc(var(--spacing) * 9);
  width: calc(var(--spacing) * 9);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-lg);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  background-color: #f0fdf4;
  color: #75b325;
}
.home-integration-source-info, .home-integration-method-info {
  display: flex;
  flex-direction: column;
}
.home-integration-source-info strong, .home-integration-method-info strong {
  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);
  color: var(--color-gray-800);
}
.home-integration-source-info span, .home-integration-method-info span {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-gray-400);
}
.home-integration-arrow {
  display: none;
  flex-shrink: 0;
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  color: var(--color-gray-300);
  @media (width >= 768px) {
    display: block;
  }
}
.home-integration-hub {
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-2xl);
  text-align: center;
  --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);
  width: 100px;
  height: 100px;
  background: linear-gradient(135deg, #75b325, #5a9a1e);
  color: white;
}
.home-integration-hub strong {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.home-integration-hub span {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  opacity: 80%;
}
.home-features {
  margin-inline: auto;
  max-width: var(--container-7xl);
}
.home-feature-card {
  position: relative;
  overflow: hidden;
  text-align: left;
}
.home-feature-card::before {
  content: '';
  position: absolute;
  top: calc(var(--spacing) * 0);
  right: calc(var(--spacing) * 0);
  left: calc(var(--spacing) * 0);
  height: calc(var(--spacing) * 1);
  border-top-left-radius: var(--radius-xl);
  border-top-right-radius: var(--radius-xl);
}
.home-feature-card:nth-child(1)::before {
  background: #75b325;
}
.home-feature-card:nth-child(2)::before {
  background: #2563eb;
}
.home-feature-card:nth-child(3)::before {
  background: #d97706;
}
.home-feature-card:nth-child(4)::before {
  background: #7c3aed;
}
.home-feature-card:nth-child(5)::before {
  background: #db2777;
}
.home-feature-card:nth-child(6)::before {
  background: #0891b2;
}
.home-feature-card:hover {
  --tw-translate-y: calc(var(--spacing) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --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);
}
.home-feature-card .card-icon {
  margin-inline: calc(var(--spacing) * 0);
  margin-bottom: calc(var(--spacing) * 4);
}
.home-feature-card:nth-child(1) .card-icon {
  background-color: #f0fdf4;
  color: #75b325;
}
.home-feature-card:nth-child(2) .card-icon {
  background-color: #eff6ff;
  color: #2563eb;
}
.home-feature-card:nth-child(3) .card-icon {
  background-color: #fffbeb;
  color: #d97706;
}
.home-feature-card:nth-child(4) .card-icon {
  background-color: #f5f3ff;
  color: #7c3aed;
}
.home-feature-card:nth-child(5) .card-icon {
  background-color: #fdf2f8;
  color: #db2777;
}
.home-feature-card:nth-child(6) .card-icon {
  background-color: #ecfeff;
  color: #0891b2;
}
.home-solutions {
  margin-inline: auto;
  max-width: var(--container-5xl);
}
.home-solutions-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 8);
  @media (width >= 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.home-solution-card {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-2xl);
  padding: calc(var(--spacing) * 8);
  color: var(--color-white);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.home-solution-card:nth-child(1) {
  background: linear-gradient(135deg, #1a2e5a 0%, #1e3a6e 100%);
}
.home-solution-card:nth-child(2) {
  background: linear-gradient(135deg, #2d6a0a 0%, #3d8a12 100%);
}
.home-solution-card:hover {
  transform: translateY(-4px);
  --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);
}
.home-solution-card::after {
  content: '';
  position: absolute;
  top: -40px;
  right: -40px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  pointer-events: none;
}
.home-solution-card-icon {
  margin-bottom: calc(var(--spacing) * 5);
  display: flex;
  height: calc(var(--spacing) * 14);
  width: calc(var(--spacing) * 14);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-2xl);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  background: rgba(255,255,255,0.15);
}
.home-solution-card h3 {
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
}
.home-solution-card p {
  margin-bottom: calc(var(--spacing) * 5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: color-mix(in srgb, #fff 75%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 75%, transparent);
  }
}
.home-solution-card .btn-primary {
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: color-mix(in srgb, #fff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
  }
  color: var(--color-white);
  &:hover {
    @media (hover: hover) {
      background-color: color-mix(in srgb, #fff 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-white) 30%, transparent);
      }
    }
  }
  backdrop-filter: blur(4px);
}
.home-trust {
  max-width: none;
  text-align: center;
  background: linear-gradient(135deg, #1a2e5a 0%, #1e3464 50%, #1a2e5a 100%);
}
.home-trust .section-title {
  color: var(--color-white);
}
.trust-stats {
  margin-inline: auto;
  display: grid;
  max-width: var(--container-4xl);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(var(--spacing) * 8);
  @media (width >= 768px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.trust-stat-item {
  position: relative;
  text-align: center;
}
.trust-stat-item:not(:last-child)::after {
  content: '';
  position: absolute;
  top: calc(1 / 2 * 100%);
  right: calc(var(--spacing) * 0);
  display: none;
  height: calc(var(--spacing) * 12);
  width: 1px;
  --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  @media (width >= 768px) {
    display: block;
  }
  background: rgba(255,255,255,0.15);
}
.trust-stat-number {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #f0a500;
}
.trust-stat-label {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, #fff 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 60%, transparent);
  }
}
.home-bottom-cta {
  position: relative;
  overflow: hidden;
  text-align: center;
  background: linear-gradient(135deg, #4a7a18 0%, #75b325 50%, #5a9a1e 100%);
}
.home-bottom-cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient( 45deg, rgba(255,255,255,0.03) 0px, rgba(255,255,255,0.03) 1px, transparent 1px, transparent 20px );
  pointer-events: none;
}
.bottom-cta-content {
  position: relative;
  z-index: 10;
  margin-inline: auto;
  max-width: var(--container-2xl);
}
.bottom-cta-title {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
  @media (width >= 768px) {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
}
.bottom-cta-desc {
  margin-bottom: calc(var(--spacing) * 8);
  color: color-mix(in srgb, #fff 75%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 75%, transparent);
  }
}
.bottom-cta-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
}
.solutions-industry {
  padding-block: calc(var(--spacing) * 12);
}
.solutions-industry:nth-child(even) {
  background-color: var(--color-gray-50);
}
.solutions-industry-inner {
  margin-inline: auto;
  display: flex;
  max-width: var(--container-5xl);
  flex-direction: column;
  align-items: flex-start;
  gap: calc(var(--spacing) * 8);
  padding-inline: calc(var(--spacing) * 4);
  @media (width >= 768px) {
    flex-direction: row;
  }
}
.solutions-industry-icon {
  display: flex;
  height: calc(var(--spacing) * 24);
  width: calc(var(--spacing) * 24);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  background: linear-gradient(135deg, rgba(117,179,37,0.15), rgba(117,179,37,0.05));
  color: #75b325;
  box-shadow: 0 0 0 4px #f0a500, 0 0 0 8px rgba(240,165,0,0.15);
}
.solutions-industry-content {
  flex: 1;
}
.solutions-pain {
  margin-bottom: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  padding: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-600);
  border-left: 4px solid #ef4444;
  background: #fef2f2;
}
.solutions-solution {
  margin-bottom: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  padding: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-700);
  border-left: 4px solid #75b325;
  background: #f0fdf4;
}
.solutions-highlights {
  margin-bottom: calc(var(--spacing) * 6);
  gap: calc(var(--spacing) * 2);
  display: grid;
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 640px) {
  .solutions-highlights {
    grid-template-columns: 1fr;
  }
}
.solutions-highlight-item {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-600);
}
.solutions-more {
  margin-inline: auto;
  max-width: var(--container-5xl);
  padding-inline: calc(var(--spacing) * 4);
  text-align: center;
}
.solutions-more-content {
  margin-inline: auto;
  max-width: var(--container-2xl);
}
.solutions-more-text {
  margin-bottom: calc(var(--spacing) * 6);
  color: var(--color-gray-500);
}
.services-pain-grid {
  margin-inline: auto;
  display: grid;
  max-width: var(--container-5xl);
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
  @media (width >= 768px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.services-pain-card {
  text-align: center;
  border-top: 3px solid #ef4444;
}
.services-pain-icon {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  height: calc(var(--spacing) * 14);
  width: calc(var(--spacing) * 14);
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-xl);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  color: #ef4444;
}
.services-process-grid {
  margin-inline: auto;
  display: grid;
  max-width: var(--container-5xl);
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
  @media (width >= 480px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1024px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.services-process-step {
  text-align: center;
}
.services-process-number {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 3);
  display: flex;
  height: calc(var(--spacing) * 10);
  width: calc(var(--spacing) * 10);
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  background: #75b325;
  color: white;
}
.services-process-icon {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 3);
  display: flex;
  height: calc(var(--spacing) * 12);
  width: calc(var(--spacing) * 12);
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  background: linear-gradient(135deg, rgba(117,179,37,0.15), rgba(117,179,37,0.05));
  color: #75b325;
}
.services-faq-list {
  margin-inline: auto;
  max-width: var(--container-3xl);
  :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)));
  }
}
.services-faq-item {
  overflow: hidden;
  border-radius: var(--radius-xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  background-color: var(--color-white);
}
.services-faq-question {
  display: flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  --tw-border-style: none;
  border-style: none;
  background-color: transparent;
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 4);
  text-align: left;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-800);
}
.services-faq-question:hover {
  background: #f8faf5;
}
.services-faq-answer {
  padding-inline: calc(var(--spacing) * 6);
  padding-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-600);
  display: none;
}
.services-faq-item.active .services-faq-answer {
  display: block;
}
.services-faq-item.active {
  border-color: #75b325;
}
.services-cta-section {
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 16);
  text-align: center;
  color: var(--color-white);
  background: linear-gradient(135deg, #1a2e5a, #233a63);
}
.services-cta-content {
  margin-inline: auto;
  max-width: var(--container-2xl);
}
.services-cta-title {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 768px) {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
}
.services-cta-desc {
  margin-bottom: calc(var(--spacing) * 8);
  color: color-mix(in srgb, #fff 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 70%, transparent);
  }
}
.services-cta-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
}
.about-intro {
  margin-inline: auto;
  max-width: var(--container-4xl);
}
.about-intro-content {
  text-align: center;
}
.about-intro-text {
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-600);
}
.about-strengths {
  margin-inline: auto;
  max-width: var(--container-7xl);
}
.about-strengths-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
  @media (width >= 480px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1024px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.about-strength-card {
  text-align: center;
}
.about-strength-icon {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  height: calc(var(--spacing) * 16);
  width: calc(var(--spacing) * 16);
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.about-strength-card:nth-child(1) .about-strength-icon {
  background-color: #f0fdf4;
  color: #75b325;
}
.about-strength-card:nth-child(2) .about-strength-icon {
  background-color: #eff6ff;
  color: #2563eb;
}
.about-strength-card:nth-child(3) .about-strength-icon {
  background-color: #fffbeb;
  color: #d97706;
}
.about-strength-card:nth-child(4) .about-strength-icon {
  background-color: #f5f3ff;
  color: #7c3aed;
}
.about-partners {
  margin-inline: auto;
  max-width: var(--container-5xl);
}
.about-partners-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
  @media (width >= 768px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.about-partner-card {
  text-align: center;
}
.about-partner-icon {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  height: calc(var(--spacing) * 14);
  width: calc(var(--spacing) * 14);
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-xl);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
}
.about-bottom-cta {
  position: relative;
  overflow: hidden;
  text-align: center;
  background: linear-gradient(135deg, #4a7a18 0%, #75b325 50%, #5a9a1e 100%);
}
.contact-section {
  margin-inline: auto;
  max-width: var(--container-6xl);
}
.contact-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 12);
  @media (width >= 1024px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.contact-form-title {
  margin-bottom: calc(var(--spacing) * 6);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
}
.contact-form {
  :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)));
  }
}
.form-group {
  :where(& > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }
}
.contact-submit-btn {
  width: 100%;
}
.btn-spinner {
  display: none;
}
.contact-alert {
  display: none;
}
.contact-info-title {
  margin-bottom: calc(var(--spacing) * 6);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
}
.contact-wa-btn {
  margin-bottom: calc(var(--spacing) * 8);
  width: 100%;
}
.contact-info-cards {
  :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)));
  }
}
.contact-info-card {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--spacing) * 4);
  border-radius: var(--radius-xl);
  background-color: var(--color-gray-50);
  padding: calc(var(--spacing) * 4);
  border-left: 4px solid #75b325;
}
.contact-info-icon {
  display: flex;
  height: calc(var(--spacing) * 10);
  width: calc(var(--spacing) * 10);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #75b325 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-brand) 10%, transparent);
  }
  color: var(--color-brand);
}
.contact-info-detail {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 3);
}
.radio-label {
  display: flex;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  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));
  &:hover {
    @media (hover: hover) {
      border-color: color-mix(in srgb, #75b325 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-brand) 50%, transparent);
      }
    }
  }
}
.radio-label:has(input:checked) {
  border-color: var(--color-brand);
  background-color: color-mix(in srgb, #75b325 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-brand) 5%, transparent);
  }
  color: var(--color-brand);
}
.radio-label input[type="radio"] {
  display: none;
}
.required::after {
  content: " *";
  color: #ef4444;
}
.blog-list-section {
  margin-inline: auto;
  max-width: var(--container-7xl);
}
.blog-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
  @media (width >= 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1024px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.blog-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: calc(var(--spacing) * 0) !important;
}
.blog-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: calc(var(--spacing) * 5);
}
.blog-card-meta {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-gray-400);
}
.blog-card-title {
  margin-bottom: calc(var(--spacing) * 2);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-800);
}
.blog-card-summary {
  margin-bottom: calc(var(--spacing) * 4);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  flex: 1;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-500);
}
.blog-card-footer {
  margin-top: auto;
}
.blog-read-more {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-brand);
  &:hover {
    @media (hover: hover) {
      text-decoration-line: underline;
    }
  }
}
.blog-pagination {
  margin-top: calc(var(--spacing) * 10);
  display: flex;
  justify-content: center;
}
.pagination-list {
  margin: calc(var(--spacing) * 0);
  display: flex;
  list-style-type: none;
  align-items: center;
  gap: calc(var(--spacing) * 1);
  padding: calc(var(--spacing) * 0);
}
.pagination-link {
  border-radius: var(--radius-lg);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-600);
  text-decoration-line: none;
  &:hover {
    @media (hover: hover) {
      background-color: var(--color-gray-100);
    }
  }
}
.pagination-current {
  border-radius: var(--radius-lg);
  background-color: var(--color-brand);
  padding-inline: calc(var(--spacing) * 3);
  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);
  color: var(--color-white);
}
.blog-empty {
  padding-block: calc(var(--spacing) * 16);
  text-align: center;
}
.blog-empty-icon {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-5xl);
  line-height: var(--tw-leading, var(--text-5xl--line-height));
  color: var(--color-gray-300);
}
.blog-empty-text {
  color: var(--color-gray-500);
}
.blog-post-hero {
  text-align: left;
}
.blog-post-back-link {
  margin-bottom: calc(var(--spacing) * 4);
  display: inline-block;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, #fff 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 70%, transparent);
  }
  text-decoration-line: none;
  &:hover {
    @media (hover: hover) {
      color: var(--color-white);
    }
  }
}
.blog-post-title {
  text-align: left;
}
.blog-post-meta {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, #fff 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 60%, transparent);
  }
}
.blog-post-section {
  margin-inline: auto;
  max-width: var(--container-3xl);
}
.blog-post-body {
  max-width: none;
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-700);
}
.blog-post-nav-section {
  margin-inline: auto;
  max-width: var(--container-3xl);
}
.blog-post-nav {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 4);
  @media (width >= 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.blog-post-nav-item {
  border-radius: var(--radius-xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  padding: calc(var(--spacing) * 4);
  text-decoration-line: none;
  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));
  &:hover {
    @media (hover: hover) {
      border-color: color-mix(in srgb, #75b325 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-brand) 50%, transparent);
      }
    }
  }
}
.blog-post-nav-next {
  text-align: right;
}
.blog-post-nav-label {
  margin-bottom: calc(var(--spacing) * 1);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-gray-400);
}
.blog-post-nav-title {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-700);
}
.blog-post-bottom {
  margin-top: calc(var(--spacing) * 8);
  text-align: center;
}
.guide-search-section {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 4);
  max-width: var(--container-2xl);
}
.guide-search {
  position: relative;
}
.guide-search-icon {
  pointer-events: none;
  position: absolute;
  top: calc(1 / 2 * 100%);
  left: calc(var(--spacing) * 5);
  --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: var(--color-gray-400);
}
.guide-search-input {
  width: 100%;
  border-radius: var(--radius-2xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  background-color: var(--color-white);
  padding-block: calc(var(--spacing) * 4);
  padding-right: calc(var(--spacing) * 5);
  padding-left: calc(var(--spacing) * 14);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --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);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &::placeholder {
    color: var(--color-gray-400);
  }
  &:focus {
    border-color: var(--color-brand);
  }
  &: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-color: color-mix(in srgb, #75b325 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-brand) 20%, transparent);
    }
  }
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
}
.guide-no-results {
  display: none;
  padding-block: calc(var(--spacing) * 8);
  text-align: center;
  color: var(--color-gray-500);
}
.guide-category-inner {
  margin-inline: auto;
  max-width: var(--container-5xl);
}
.guide-category:nth-of-type(odd) {
  background-color: var(--color-white);
}
.guide-category:nth-of-type(even) {
  background-color: #f8fafc;
}
.guide-category-header {
  margin-bottom: calc(var(--spacing) * 8);
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 4);
}
.guide-category-icon {
  display: flex;
  height: calc(var(--spacing) * 14);
  width: calc(var(--spacing) * 14);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-2xl);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --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);
}
[data-category="getting-started"] .guide-category-icon {
  background-color: #e8f5d9;
  color: #75b325;
}
[data-category="features"] .guide-category-icon {
  background-color: #dbeafe;
  color: #2563eb;
}
[data-category="e-invoice"] .guide-category-icon {
  background-color: #fef3c7;
  color: #d97706;
}
[data-category="tax"] .guide-category-icon {
  background-color: #ede9fe;
  color: #7c3aed;
}
.guide-category-title {
  margin-bottom: calc(var(--spacing) * 0.5);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #1a2e5a;
  border-left: 4px solid #75b325;
  padding-left: 0.625rem;
}
.guide-category-desc {
  padding-left: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-500);
}
.guide-articles-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 3);
  @media (width >= 768px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.guide-article-card {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--spacing) * 4);
  border-radius: var(--radius-xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-100);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 4);
  text-decoration-line: none;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--spacing) * -0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      border-color: color-mix(in srgb, #75b325 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-brand) 40%, transparent);
      }
    }
  }
  &:hover {
    @media (hover: hover) {
      --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);
    }
  }
}
.guide-category:nth-of-type(even) .guide-article-card {
  background-color: var(--color-white);
}
.guide-article-card-icon {
  display: flex;
  height: calc(var(--spacing) * 10);
  width: calc(var(--spacing) * 10);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-xl);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  background-color: #f0fdf4;
  color: #75b325;
}
[data-category="features"] .guide-article-card-icon {
  background-color: #eff6ff;
  color: #2563eb;
}
[data-category="e-invoice"] .guide-article-card-icon {
  background-color: #fffbeb;
  color: #d97706;
}
[data-category="tax"] .guide-article-card-icon {
  background-color: #f5f3ff;
  color: #7c3aed;
}
.guide-article-card-body {
  min-width: calc(var(--spacing) * 0);
  flex: 1;
}
.guide-article-card-title {
  margin-bottom: calc(var(--spacing) * 1);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-800);
}
.guide-article-card-summary {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-500);
}
.guide-article-card-link {
  display: none;
}
.guide-article-card-arrow {
  flex-shrink: 0;
  align-self: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-300);
  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));
  &:is(:where(.group):hover *) {
    @media (hover: hover) {
      color: var(--color-brand);
    }
  }
}
.guide-cta-section {
  text-align: center;
}
.guide-breadcrumb {
  margin-inline: auto;
  max-width: var(--container-5xl);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-500);
}
.guide-breadcrumb a {
  color: var(--color-brand);
  text-decoration-line: none;
  &:hover {
    @media (hover: hover) {
      text-decoration-line: underline;
    }
  }
}
.guide-breadcrumb-sep {
  margin-inline: calc(var(--spacing) * 2);
  color: var(--color-gray-300);
}
.guide-breadcrumb-cat {
  color: var(--color-gray-600);
}
.guide-breadcrumb-current {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-800);
}
.guide-detail {
  margin-inline: auto;
  display: flex;
  max-width: var(--container-5xl);
  flex-direction: column;
  gap: calc(var(--spacing) * 8);
  @media (width >= 1024px) {
    flex-direction: row;
  }
}
.guide-detail-main {
  min-width: calc(var(--spacing) * 0);
  flex: 1;
}
.guide-article-title {
  margin-bottom: calc(var(--spacing) * 6);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
}
.guide-content {
  max-width: none;
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-700);
}
.guide-content h2 {
  margin-top: calc(var(--spacing) * 10);
  margin-bottom: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #1a2e5a;
  border-left: 4px solid #75b325;
  padding-left: 0.75rem;
  border-bottom: 1px solid #e5e7eb;
}
.guide-content h3 {
  margin-top: calc(var(--spacing) * 7);
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: #75b325;
}
.guide-content h4 {
  margin-top: calc(var(--spacing) * 5);
  margin-bottom: 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);
  --tw-tracking: var(--tracking-wide);
  letter-spacing: var(--tracking-wide);
  color: var(--color-gray-700);
  text-transform: uppercase;
}
.guide-content p {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: calc(var(--spacing) * 7);
  line-height: calc(var(--spacing) * 7);
  color: var(--color-gray-700);
}
.guide-content ul {
  margin-bottom: calc(var(--spacing) * 4);
  list-style-type: disc;
  :where(& > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }
  padding-left: calc(var(--spacing) * 6);
}
.guide-content ol {
  margin-bottom: calc(var(--spacing) * 4);
  list-style-type: decimal;
  :where(& > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }
  padding-left: calc(var(--spacing) * 6);
}
.guide-content li {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: calc(var(--spacing) * 7);
  line-height: calc(var(--spacing) * 7);
  color: var(--color-gray-700);
}
.guide-content ul ul, .guide-content ol ol, .guide-content ul ol, .guide-content ol ul {
  margin-top: calc(var(--spacing) * 1);
  margin-bottom: calc(var(--spacing) * 0);
  padding-left: calc(var(--spacing) * 5);
}
.guide-content strong {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: #1a2e5a;
}
.guide-content em {
  color: var(--color-gray-500);
  font-style: italic;
}
.guide-content code {
  border-radius: 0.25rem;
  background-color: var(--color-gray-100);
  padding-inline: calc(var(--spacing) * 1.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-brand);
}
.guide-content pre {
  margin-bottom: calc(var(--spacing) * 6);
  overflow-x: auto;
  border-radius: var(--radius-xl);
  background-color: var(--color-gray-900);
  padding: calc(var(--spacing) * 5);
  font-family: var(--font-mono);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: calc(var(--spacing) * 6);
  line-height: calc(var(--spacing) * 6);
  color: var(--color-green-400);
}
.guide-content pre code {
  background-color: transparent;
  padding: calc(var(--spacing) * 0);
  color: var(--color-green-400);
}
.guide-content blockquote {
  margin-block: calc(var(--spacing) * 6);
  border-top-right-radius: var(--radius-lg);
  border-bottom-right-radius: var(--radius-lg);
  border-left-style: var(--tw-border-style);
  border-left-width: 4px;
  padding-block: calc(var(--spacing) * 3);
  padding-right: calc(var(--spacing) * 4);
  padding-left: calc(var(--spacing) * 4);
  color: var(--color-gray-600);
  font-style: italic;
  border-color: #f0a500;
  background-color: #fffbeb;
}
.guide-content table {
  margin-bottom: calc(var(--spacing) * 6);
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  border-radius: var(--radius-xl);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  box-shadow: 0 0 0 1px #e5e7eb;
}
.guide-content thead tr {
  background-color: #1a2e5a;
}
.guide-content thead th {
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  text-align: left;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-white);
}
.guide-content tbody tr:nth-child(odd) {
  background-color: var(--color-white);
}
.guide-content tbody tr:nth-child(even) {
  background-color: #f8fafc;
}
.guide-content tbody tr:hover {
  background-color: #f0fdf4;
}
.guide-content tbody td {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-gray-100);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  vertical-align: top;
  color: var(--color-gray-700);
}
.guide-content img {
  margin-inline: auto;
  margin-block: calc(var(--spacing) * 5);
  display: block;
  max-width: 100%;
  border-radius: var(--radius-xl);
  --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);
}
.guide-content a {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-brand);
  text-decoration-line: underline;
  text-underline-offset: 2px;
  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));
  &:hover {
    @media (hover: hover) {
      color: #1a2e5a;
    }
  }
}
.guide-content hr {
  margin-block: calc(var(--spacing) * 8);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-gray-200);
}
.guide-content .video-wrapper {
  margin-block: calc(var(--spacing) * 8);
  overflow: hidden;
  border-radius: var(--radius-xl);
  --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);
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}
.guide-content .video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.guide-detail-sidebar {
  width: 100%;
  flex-shrink: 0;
  @media (width >= 1024px) {
    width: calc(var(--spacing) * 64);
  }
}
.guide-siblings {
  position: sticky;
  top: calc(var(--spacing) * 20);
}
.guide-siblings-title {
  margin-bottom: calc(var(--spacing) * 3);
  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);
  color: var(--color-gray-800);
}
.guide-siblings-list {
  margin: calc(var(--spacing) * 0);
  list-style-type: none;
  :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)));
  }
  padding: calc(var(--spacing) * 0);
}
.guide-siblings-list a {
  display: block;
  border-radius: var(--radius-lg);
  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));
  color: var(--color-gray-500);
  text-decoration-line: none;
  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));
  &:hover {
    @media (hover: hover) {
      background-color: color-mix(in srgb, #75b325 5%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-brand) 5%, transparent);
      }
    }
  }
  &:hover {
    @media (hover: hover) {
      color: var(--color-brand);
    }
  }
}
.guide-siblings-list a.active {
  background-color: color-mix(in srgb, #75b325 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-brand) 10%, transparent);
  }
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-brand);
}
.guide-back-link {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-brand);
  text-decoration-line: none;
  &:hover {
    @media (hover: hover) {
      text-decoration-line: underline;
    }
  }
}
.einvoice-intro {
  margin-inline: auto;
  max-width: var(--container-4xl);
}
.einvoice-intro-content {
  text-align: center;
}
.einvoice-intro-text {
  margin-top: calc(var(--spacing) * 4);
}
.content-text {
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-600);
}
.einvoice-compliance {
  margin-inline: auto;
  max-width: var(--container-4xl);
}
.compliance-list {
  margin-inline: auto;
  max-width: var(--container-2xl);
  :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)));
  }
}
.compliance-item {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-gray-700);
}
.compliance-check {
  margin-top: calc(var(--spacing) * 0.5);
  flex-shrink: 0;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  color: var(--color-success);
}
.einvoice-peppol {
  margin-inline: auto;
  max-width: var(--container-4xl);
}
.peppol-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 8);
  @media (width >= 768px) {
    flex-direction: row;
  }
}
.peppol-text {
  flex: 1;
}
.peppol-card {
  flex-shrink: 0;
}
.peppol-icon {
  display: flex;
  height: calc(var(--spacing) * 20);
  width: calc(var(--spacing) * 20);
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-2xl);
  background-color: var(--color-blue-50);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  color: var(--color-info);
}
.einvoice-steps {
  margin-inline: auto;
  max-width: var(--container-4xl);
}
.steps-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
  @media (width >= 768px) {
    flex-direction: row;
  }
}
.step-item {
  flex: 1;
  text-align: center;
}
.step-number {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: color-mix(in srgb, #75b325 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-brand) 20%, transparent);
  }
}
.step-title {
  margin-bottom: calc(var(--spacing) * 1);
  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);
  color: var(--color-gray-800);
}
.step-desc {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-gray-500);
}
.step-arrow {
  display: none;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  color: var(--color-gray-300);
  @media (width >= 768px) {
    display: block;
  }
}
.faq-accordion {
  margin-inline: auto;
  max-width: var(--container-3xl);
  :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)));
  }
}
.faq-item {
  overflow: hidden;
  border-radius: var(--radius-xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  background-color: var(--color-white);
}
.faq-question {
  display: flex;
  width: 100%;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  --tw-border-style: none;
  border-style: none;
  background-color: transparent;
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 4);
  text-align: left;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-gray-800);
}
.faq-answer {
  overflow: hidden;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  max-height: 0;
}
.faq-answer-inner {
  padding-inline: calc(var(--spacing) * 6);
  padding-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-600);
}
.faq-item.active .faq-answer {
  max-height: 500px;
}
.faq-arrow {
  color: var(--color-gray-400);
  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));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.faq-item.active .faq-arrow {
  transform: rotate(180deg);
}
.einvoice-cta {
  text-align: center;
}
.features-cta {
  text-align: center;
}
.features-cta-content {
  margin-inline: auto;
  max-width: var(--container-2xl);
}
.features-cta-title {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
  @media (width >= 768px) {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
}
.features-cta-desc {
  margin-bottom: calc(var(--spacing) * 8);
  color: var(--color-gray-500);
}
.features-cta-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 3);
}
.legal-hero {
  padding-top: calc(var(--spacing) * 24);
  padding-bottom: calc(var(--spacing) * 12);
  text-align: center;
  color: var(--color-white);
  background: linear-gradient(135deg, #1a2e5a 0%, #233a63 100%);
}
.legal-hero-title {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 768px) {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
}
.legal-hero-subtitle {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, #fff 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 70%, transparent);
  }
}
.legal-body {
  margin-inline: auto;
  max-width: var(--container-3xl);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 12);
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-gray-700);
}
.legal-body h2 {
  margin-top: calc(var(--spacing) * 8);
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
}
.legal-body h3 {
  margin-top: calc(var(--spacing) * 6);
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-800);
}
.legal-body p {
  margin-bottom: calc(var(--spacing) * 4);
}
.legal-body ul, .legal-body ol {
  margin-bottom: calc(var(--spacing) * 4);
  padding-left: calc(var(--spacing) * 6);
}
.legal-body li {
  margin-bottom: calc(var(--spacing) * 1);
}
.legal-container {
  margin-inline: auto;
  max-width: var(--container-3xl);
}
.legal-content {
  max-width: none;
}
.legal-empty {
  padding-block: calc(var(--spacing) * 16);
  text-align: center;
  color: var(--color-gray-400);
}
.page-header {
  padding-top: calc(var(--spacing) * 24);
  padding-bottom: calc(var(--spacing) * 12);
  text-align: center;
  color: var(--color-white);
  background: linear-gradient(135deg, #1a2e5a 0%, #233a63 100%);
}
.generic-section {
  padding-block: calc(var(--spacing) * 8);
}
.json-content {
  overflow-x: auto;
  border-radius: var(--radius-lg);
  background-color: var(--color-gray-50);
  padding: calc(var(--spacing) * 3);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-gray-500);
}
.scrollbar-hide {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}
.prose h1 {
  margin-top: calc(var(--spacing) * 8);
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
}
.prose h2 {
  margin-top: calc(var(--spacing) * 6);
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-gray-800);
}
.prose h3 {
  margin-top: calc(var(--spacing) * 5);
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-gray-800);
}
.prose p {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
}
.prose ul {
  margin-bottom: calc(var(--spacing) * 4);
  list-style-type: disc;
  :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)));
  }
  padding-left: calc(var(--spacing) * 5);
}
.prose ol {
  margin-bottom: calc(var(--spacing) * 4);
  list-style-type: decimal;
  :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)));
  }
  padding-left: calc(var(--spacing) * 5);
}
.prose li {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.prose a {
  color: var(--color-brand);
  text-decoration-line: underline;
  &:hover {
    @media (hover: hover) {
      color: var(--color-brand-dark);
    }
  }
}
.prose img {
  margin-block: calc(var(--spacing) * 4);
  max-width: 100%;
  border-radius: var(--radius-lg);
}
.prose blockquote {
  margin-block: calc(var(--spacing) * 4);
  border-left-style: var(--tw-border-style);
  border-left-width: 4px;
  border-color: color-mix(in srgb, #75b325 30%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-brand) 30%, transparent);
  }
  padding-left: calc(var(--spacing) * 4);
  color: var(--color-gray-600);
  font-style: italic;
}
.prose code {
  border-radius: 0.25rem;
  background-color: var(--color-gray-100);
  padding-inline: calc(var(--spacing) * 1.5);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.prose pre {
  margin-block: calc(var(--spacing) * 4);
  overflow-x: auto;
  border-radius: var(--radius-lg);
  background-color: var(--color-gray-900);
  padding: calc(var(--spacing) * 4);
  color: var(--color-gray-100);
}
.prose pre code {
  background-color: transparent;
  padding: calc(var(--spacing) * 0);
}
.prose table {
  margin-block: calc(var(--spacing) * 4);
  width: 100%;
  border-collapse: collapse;
}
.prose th {
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  background-color: var(--color-gray-50);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 2);
  text-align: left;
  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);
}
.prose td {
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-200);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
@keyframes pulse-wa {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(37,211,102,0.5);
  }
  50% {
    box-shadow: 0 0 0 12px rgba(37,211,102,0);
  }
}
.contact-wa-btn {
  animation: pulse-wa 2s infinite;
}
@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-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@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-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@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-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --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-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}
