@tailwind base;
@tailwind components;
@tailwind utilities;

@layer base {
  @font-face {
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 100 900;
    src: url(/assets/Nunito-VariableFont_wght.other-bddcabaec6ad909317e06861ed572454dd735318fb344eabd00d1a4baa814c47.woff2) format('woff2');
    font-display: swap;
    unicode-range: U+0181, U+018A, U+0192, U+01A0-01A1, U+01AF-01B0, U+01B3-01B4, U+01C4-01CE, U+01D4, U+01E5-01E7, U+01E9-01EB, U+01EF, U+01FA-0217, U+021F, U+0226-0228, U+022A-022D, U+0230-0233, U+0237, U+0253, U+0257, U+0292, U+02B9-02BA, U+02BE-02BF, U+02C7-02CC, U+02D8-02D9, U+02DB, U+02DD, U+0394, U+03A3, U+03A9, U+03BC, U+03C0, U+0400-045F, U+0462-0463, U+046A-046B, U+0472-0475, U+048A-04A5, U+04A8-04FF, U+0510-0513, U+051A-051D, U+0524-0529, U+052E-052F, U+1E08-1E09, U+1E0C-1E0F, U+1E14-1E17, U+1E1C-1E1D, U+1E20-1E21, U+1E24-1E25, U+1E2A-1E2B, U+1E2E-1E2F, U+1E36-1E37, U+1E3A-1E3B, U+1E42-1E49, U+1E4C-1E53, U+1E5A-1E5B, U+1E5E-1E69, U+1E6C-1E6F, U+1E78-1E7B, U+1E80-1E85, U+1E8E-1E8F, U+1E92-1E93, U+1E97, U+1E9E, U+1EA0-1EF9, U+2070, U+2074-2079, U+2080-2089, U+20A1, U+20A3-20A4, U+20A6-20A7, U+20A9, U+20AB, U+20AD-20AE, U+20B1-20B2, U+20B4-20B5, U+20B8-20BA, U+20BC-20BD, U+2113, U+2116, U+2126, U+212E, U+2202, U+2205-2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+27E8-27E9, U+F8FF, U+FB01-FB02;
  }

  @font-face {
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 100 900;
    src: url(/assets/Nunito-VariableFont_wght.latin-2d6eb5090a0f44e9c608e988dcc4bba103492bc501c50ca70c195ea08d10d456.woff2) format('woff2');
    font-display: swap;
    unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-0132, U+0134-017E, U+018F, U+0218-021B, U+0259, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0300-0304, U+0306-030C, U+030F, U+0311-0312, U+031B, U+0323-0324, U+0326-0328, U+032E, U+0331, U+0335, U+0337-0338, U+2007-200B, U+2010, U+2012-2015, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2032-2033, U+2039-203A, U+2044, U+2052, U+20AC, U+2122, U+2212, U+2215;
  }

  @font-face {
    font-family: 'Mulish';
    font-style: normal;
    font-weight: 200 1000;
    src: url(/assets/Mulish-VariableFont_wght.other-6a7eaea31605540c96a9d850bfb670ca4f7cc7316582036286b46753a22dd39d.woff2) format('woff2');
    font-display: swap;
    unicode-range: U+0181, U+018A, U+0192, U+01A0-01A1, U+01AF-01B0, U+01B3-01B4, U+01C4-01CE, U+01D4, U+01E5-01E7, U+01E9-01EB, U+01FA-0217, U+021F, U+0226-0228, U+022A-022D, U+0230-0233, U+0237, U+0253, U+0257, U+02B9-02BA, U+02BE-02BF, U+02C7-02CC, U+02D8-02D9, U+02DB, U+02DD, U+0394, U+03A3, U+03A9, U+03BC, U+03C0, U+0400-045F, U+0462-0463, U+046A-046B, U+0472-0475, U+048A-04A5, U+04A8-04FF, U+0510-0513, U+051A-051D, U+0524-0529, U+052E-052F, U+1E08-1E09, U+1E0C-1E0F, U+1E14-1E17, U+1E1C-1E1D, U+1E20-1E21, U+1E24-1E25, U+1E2A-1E2B, U+1E2E-1E2F, U+1E36-1E37, U+1E3A-1E3B, U+1E42-1E49, U+1E4C-1E53, U+1E5A-1E5B, U+1E5E-1E69, U+1E6C-1E6F, U+1E78-1E7B, U+1E80-1E85, U+1E8E-1E8F, U+1E92-1E93, U+1E97, U+1E9E, U+1EA0-1EF9, U+2070, U+2074-2079, U+2080-2089, U+20A1, U+20A3-20A4, U+20A6-20A7, U+20A9, U+20AB, U+20AD-20AE, U+20B1-20B2, U+20B4-20B5, U+20B8-20BA, U+20BC-20BD, U+2113, U+2116, U+2126, U+212E, U+2202, U+2205-2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+27E8-27E9, U+F8FF, U+FB01-FB02;
  }

  @font-face {
    font-family: 'Mulish';
    font-style: normal;
    font-weight: 200 1000;
    src: url(/assets/Mulish-VariableFont_wght.latin-bc1482e7fe420cdda53ad9283f40daa4cfc597ec466c8c0bded88232c62958b4.woff2) format('woff2');
    font-display: swap;
    unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-0132, U+0134-017E, U+018F, U+0218-021B, U+0259, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0300-0304, U+0306-030C, U+030F, U+0311-0312, U+031B, U+0323-0324, U+0326-0328, U+032E, U+0331, U+0335, U+0337-0338, U+2007-200B, U+2010, U+2012-2015, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2032-2033, U+2039-203A, U+2044, U+2052, U+20AC, U+2122, U+2212, U+2215;
  }

  @font-face {
    font-family: 'Mulish';
    font-style: italic;
    font-weight: 200 1000;
    src: url(/assets/Mulish-Italic-VariableFont_wght.other-bc1cce2aeb7c29fc5a03e40d37125ce80fea5289bd1f6edb9d3b342438576e98.woff2) format('woff2');
    font-display: swap;
    unicode-range: U+0181, U+018A, U+0192, U+01A0-01A1, U+01AF-01B0, U+01B3-01B4, U+01C4-01CE, U+01D4, U+01E5-01E7, U+01E9-01EB, U+01FA-0217, U+021F, U+0226-0228, U+022A-022D, U+0230-0233, U+0237, U+0253, U+0257, U+02B9-02BA, U+02BE-02BF, U+02C7-02CC, U+02D8-02D9, U+02DB, U+02DD, U+0394, U+03A3, U+03A9, U+03BC, U+03C0, U+0400-045F, U+0462-0463, U+046A-046B, U+0472-0475, U+048A-04A5, U+04A8-04FF, U+0510-0513, U+051A-051D, U+0524-0529, U+052E-052F, U+1E08-1E09, U+1E0C-1E0F, U+1E14-1E17, U+1E1C-1E1D, U+1E20-1E21, U+1E24-1E25, U+1E2A-1E2B, U+1E2E-1E2F, U+1E36-1E37, U+1E3A-1E3B, U+1E42-1E49, U+1E4C-1E53, U+1E5A-1E5B, U+1E5E-1E69, U+1E6C-1E6F, U+1E78-1E7B, U+1E80-1E85, U+1E8E-1E8F, U+1E92-1E93, U+1E97, U+1E9E, U+1EA0-1EF9, U+2070, U+2074-2079, U+2080-2089, U+20A1, U+20A3-20A4, U+20A6-20A7, U+20A9, U+20AB, U+20AD-20AE, U+20B1-20B2, U+20B4-20B5, U+20B8-20BA, U+20BC-20BD, U+2113, U+2116, U+2126, U+212E, U+2202, U+2205-2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+27E8-27E9, U+F8FF, U+FB01-FB02;
  }

  @font-face {
    font-family: 'Mulish';
    font-style: italic;
    font-weight: 200 1000;
    src: url(/assets/Mulish-Italic-VariableFont_wght.latin-8c05ed29c4b5202a4c829317b321e7195340a0588caf5ef2b0dcaec9b0fa54a2.woff2) format('woff2');
    font-display: swap;
    unicode-range: U+0000, U+000D, U+0020-007E, U+00A0-0132, U+0134-017E, U+018F, U+0218-021B, U+0259, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0300-0304, U+0306-030C, U+030F, U+0311-0312, U+031B, U+0323-0324, U+0326-0328, U+032E, U+0331, U+0335, U+0337-0338, U+2007-200B, U+2010, U+2012-2015, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2032-2033, U+2039-203A, U+2044, U+2052, U+20AC, U+2122, U+2212, U+2215;
  }

  body {
    @apply font-body;
    font-optical-sizing: auto;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    @apply font-heading;
  }

  a,
  button,
  input,
  select,
  textarea,
  [tabindex]:not([tabindex="-1"]) {
    @apply focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-green-600 focus-visible:ring-offset-2;
  }

  input,
  input[type],
  select,
  textarea {
    @apply focus:border-green-600 focus:ring-green-600;
  }

}

@layer utilities {
  .paused {
    animation-play-state: paused;
  }
}

@layer components {
  .pagy.nav a {
    @apply inline-block px-3 py-2;
  }

  .ticket-hospitality {
    @apply absolute inset-x-0 bottom-0 flex h-5 items-center justify-center gap-1 cursor-help bg-amber-50/80 font-sans text-[11px] font-semibold uppercase leading-none tracking-[0.06em] text-amber-800;
    box-shadow: 0 -3px 8px -3px rgb(120 53 15 / 0.16), inset 0 1px 0 rgb(255 255 255 / 0.9);
    clip-path: inset(-16px 0 0 0);
  }

  .ticket-hospitality__icon {
    @apply h-3 w-auto shrink-0 overflow-visible;
  }

  .ticket-ribbon {
    @apply absolute -top-2 -left-1.5 z-15 inline-flex items-stretch whitespace-nowrap font-sans text-xs font-medium shadow-sm;
  }

  .ticket-ribbon,
  .ticket-ribbon__segment:first-child {
    @apply rounded-tl-md;
  }

  .ticket-ribbon,
  .ticket-ribbon__segment:last-child {
    @apply rounded-r-md;
  }

  .ticket-ribbon::before,
  .ticket-ribbon::after {
    content: "";
    @apply absolute left-0 top-full block;
  }

  .ticket-ribbon::before {
    @apply h-1.5 w-1.5;
  }

  .ticket-ribbon::after {
    @apply h-3 w-1.5 rounded-l-full brightness-75;
  }

  .ticket-ribbon--authorized {
    @apply shadow-blue-900/30;
  }

  .ticket-ribbon--authorized::before {
    @apply bg-blue-50;
  }

  .ticket-ribbon--authorized::after {
    @apply bg-blue-200;
  }

  .ticket-ribbon--official {
    @apply shadow-green-900/30;
  }

  .ticket-ribbon--official::before {
    @apply bg-green-50;
  }

  .ticket-ribbon--official::after {
    @apply bg-green-200;
  }

  .ticket-ribbon__icon {
    @apply box-content size-[1.25em] shrink-0 rounded-full p-[2px] ring-1 ring-inset;
  }

  .ticket-ribbon__icon--authorized {
    @apply bg-blue-100/60 text-blue-600 ring-blue-200/60;
  }

  .ticket-ribbon__icon--official {
    @apply bg-green-100/60 text-green-600 ring-green-200/60;
  }

  .ticket-ribbon__segment {
    @apply inline-flex min-h-[1.325rem] items-center gap-1 px-2 py-1 leading-none;
  }

  .ticket-ribbon__segment--authorized {
    @apply bg-blue-50 text-blue-700;
  }

  .ticket-ribbon__segment--official {
    @apply bg-green-50 text-green-600;
  }

  .trix-content a {
    @apply font-medium text-green-600 underline hover:text-green-700;
  }

  @media (max-width: 639px) {
    .ticket-ribbon {
      @apply tracking-tight;
    }
  }

  @media (min-width: 640px) {
    .ticket-hospitality {
      @apply left-7;
    }

    .ticket-ribbon {
      @apply text-[11px];
    }
  }

  @media (min-width: 768px) {
    .ticket-ribbon {
      @apply shadow-md;
    }

    .ticket-ribbon__segment {
      @apply px-3;
    }
  }

  @media (min-width: 1024px) {
    .ticket-ribbon {
      @apply text-xs;
    }

    .ticket-ribbon__segment {
      @apply min-h-[1.575rem] px-4 py-1.5;
    }
  }
}

.opacity-0 {
  opacity: 0;
}

/* For Webkit-based browsers (Chrome, Safari and Opera) */
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

/* For IE, Edge and Firefox */
.scrollbar-hide {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

/* Scrollbar custom */
.scrollbar-custom::-webkit-scrollbar {
  height: 8px;
}

.scrollbar-custom::-webkit-scrollbar-track {
  background: transparent;
}

.scrollbar-custom::-webkit-scrollbar-thumb {
  background-color: rgba(107, 114, 128, 0.5);
  border-radius: 4px;
}

.scrollbar-custom::-webkit-scrollbar-thumb:hover {
  background-color: rgba(107, 114, 128, 0.8);
}

.scrollbar-custom {
  scrollbar-width: thin;
  scrollbar-color:  #16A34A transparent;
}

.turbo-progress-bar {
  background-color: #16A34A;
}

html:has(dialog[open]:not([data-background-scroll])) {
  overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
  .animate-bell,
  .animate-loop-scroll,
  .animate-pop-in,
  .animate-shake,
  .animate-slide-in-right {
    animation: none;
  }
}
.pagy {
  display: flex;
  align-items: center;
  font-family: sans-serif;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  color: #6b7280;
}
.pagy > :not([hidden]) ~ :not([hidden]) {
  --space-reverse: 0;
  margin-right: calc(0.25rem * var(--space-reverse));
  margin-left: calc(0.25rem * calc(1 - var(--space-reverse)));
}
.pagy a:not(.gap) {
  display: block;
  text-decoration: none;
  border-radius: 0.5rem;
  /* background-color: #e5e7eb; */
  padding: 0.25rem 0.75rem;
  color: inherit;
}
.pagy a:not(.gap):hover {
  background-color: #F9FAFB;
}
.pagy a:not(.gap):not([href]) { /* disabled links */
  cursor: default;
  /* background-color: #f3f4f6; */
  color: #d1d5db;
}
.pagy a:not(.gap).current {
  background-color: #16A34A;
  color: white;
}
.pagy label {
  white-space: nowrap;
  display: inline-block;
  border-radius: 0.5rem;
  background-color: #e5e7eb;
  padding: 0.125rem 0.75rem;
}
.pagy label input {
  line-height: 1.5rem;
  border-radius: 0.375rem;
  border-style: none;
  background-color: #f3f4f6;
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */
