  .hidden {
      display: none;
  }

  .icon-hide {
      display: none;
  }

  .js-toggle-password.active .icon-show {
      display: none;
  }

  .js-toggle-password.active .icon-hide {
      display: inline;
  }

  @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&amp;display=swap');
  /* */
  @layer properties;
  @layer theme, base, components, utilities;

  @layer theme {

      :root,
      :host {
          --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
          --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
              "Courier New", monospace;
          --color-red-100: oklch(93.6% 0.032 17.717);
          --color-red-200: oklch(88.5% 0.062 18.334);
          --color-red-500: oklch(63.7% 0.237 25.331);
          --color-red-700: oklch(50.5% 0.213 27.518);
          --color-orange-50: oklch(98% 0.016 73.684);
          --color-orange-200: oklch(90.1% 0.076 70.697);
          --color-orange-500: oklch(70.5% 0.213 47.604);
          --color-orange-600: oklch(64.6% 0.222 41.116);
          --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-blue-100: oklch(93.2% 0.032 255.585);
          --color-blue-400: oklch(70.7% 0.165 254.624);
          --color-blue-500: oklch(62.3% 0.214 259.815);
          --color-blue-600: oklch(54.6% 0.245 262.881);
          --color-indigo-600: oklch(51.1% 0.262 276.966);
          --color-indigo-700: oklch(45.7% 0.24 277.023);
          --color-purple-500: oklch(62.7% 0.265 303.9);
          --color-purple-600: oklch(55.8% 0.288 302.321);
          --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-black: #000;
          --color-white: #fff;
          --spacing: 0.25rem;
          --container-2xl: 42rem;
          --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);
          --font-weight-medium: 500;
          --font-weight-bold: 700;
          --font-weight-black: 900;
          --tracking-tighter: -0.05em;
          --tracking-tight: -0.025em;
          --tracking-wider: 0.05em;
          --tracking-widest: 0.1em;
          --leading-relaxed: 1.625;
          --radius-sm: 0.25rem;
          --radius-lg: 0.5rem;
          --drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);
          --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 0.15);
          --animate-spin: spin 1s linear infinite;
          --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
          --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);
          /* Midnight purple and gold palette inspired by the Trung Thu event. Legacy names keep existing utilities compatible. */
          --color-nro-orange: #281033;
          --color-nro-dark-orange: #e85d04;
          --color-nro-brown: #f5efff;
          --color-nro-light-orange: #20102f;
          --color-nro-red: #ffcb05;
          --color-nro-border: #ffcb05;
      }
  }

  @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;
      }

      .absolute {
          position: absolute;
      }

      .fixed {
          position: fixed;
      }

      .relative {
          position: relative;
      }

      .sticky {
          position: sticky;
      }

      .-inset-4 {
          inset: calc(var(--spacing) * -4);
      }

      .inset-0 {
          inset: calc(var(--spacing) * 0);
      }

      .start {
          inset-inline-start: var(--spacing);
      }

      .-top-0\.5 {
          top: calc(var(--spacing) * -0.5);
      }

      .-top-1 {
          top: calc(var(--spacing) * -1);
      }

      .-top-2 {
          top: calc(var(--spacing) * -2);
      }

      .top-0 {
          top: calc(var(--spacing) * 0);
      }

      .top-1\.5 {
          top: calc(var(--spacing) * 1.5);
      }

      .top-1\/2 {
          top: calc(1 / 2 * 100%);
      }

      .top-2 {
          top: calc(var(--spacing) * 2);
      }

      .top-4 {
          top: calc(var(--spacing) * 4);
      }

      .-right-0\.5 {
          right: calc(var(--spacing) * -0.5);
      }

      .-right-1 {
          right: calc(var(--spacing) * -1);
      }

      .-right-2 {
          right: calc(var(--spacing) * -2);
      }

      .right-0 {
          right: calc(var(--spacing) * 0);
      }

      .right-2 {
          right: calc(var(--spacing) * 2);
      }

      .right-3 {
          right: calc(var(--spacing) * 3);
      }

      .right-4 {
          right: calc(var(--spacing) * 4);
      }

      .-bottom-2 {
          bottom: calc(var(--spacing) * -2);
      }

      .-bottom-5 {
          bottom: calc(var(--spacing) * -5);
      }

      .bottom-0 {
          bottom: calc(var(--spacing) * 0);
      }

      .bottom-3 {
          bottom: calc(var(--spacing) * 3);
      }

      .bottom-4 {
          bottom: calc(var(--spacing) * 4);
      }

      .bottom-12 {
          bottom: calc(var(--spacing) * 12);
      }

      .bottom-full {
          bottom: 100%;
      }

      .left-0 {
          left: calc(var(--spacing) * 0);
      }

      .left-3 {
          left: calc(var(--spacing) * 3);
      }

      .left-4 {
          left: calc(var(--spacing) * 4);
      }

      .z-10 {
          z-index: 10;
      }

      .z-50 {
          z-index: 50;
      }

      .z-\[60\] {
          z-index: 60;
      }

      .z-\[100\] {
          z-index: 100;
      }

      .z-\[110\] {
          z-index: 110;
      }

      .order-1 {
          order: 1;
      }

      .order-2 {
          order: 2;
      }

      .col-span-4 {
          grid-column: span 4 / span 4;
      }

      .mx-0\.5 {
          margin-inline: calc(var(--spacing) * 0.5);
      }

      .mx-auto {
          margin-inline: auto;
      }

      .mt-1 {
          margin-top: calc(var(--spacing) * 1);
      }

      .mt-1\.5 {
          margin-top: calc(var(--spacing) * 1.5);
      }

      .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-8 {
          margin-top: calc(var(--spacing) * 8);
      }

      .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-6 {
          margin-bottom: calc(var(--spacing) * 6);
      }

      .mb-8 {
          margin-bottom: calc(var(--spacing) * 8);
      }

      .ml-1 {
          margin-left: calc(var(--spacing) * 1);
      }

      .ml-2 {
          margin-left: calc(var(--spacing) * 2);
      }

      .ml-auto {
          margin-left: auto;
      }

      .block {
          display: block;
      }

      .flex {
          display: flex;
      }

      .grid {
          display: grid;
      }

      .hidden {
          display: none;
      }

      .inline-block {
          display: inline-block;
      }

      .h-0\.5 {
          height: calc(var(--spacing) * 0.5);
      }

      .h-2 {
          height: calc(var(--spacing) * 2);
      }

      .h-2\.5 {
          height: calc(var(--spacing) * 2.5);
      }

      .h-3 {
          height: calc(var(--spacing) * 3);
      }

      .h-3\.5 {
          height: calc(var(--spacing) * 3.5);
      }

      .h-4 {
          height: calc(var(--spacing) * 4);
      }

      .h-5 {
          height: calc(var(--spacing) * 5);
      }

      .h-6 {
          height: calc(var(--spacing) * 6);
      }

      .h-7 {
          height: calc(var(--spacing) * 7);
      }

      .h-8 {
          height: calc(var(--spacing) * 8);
      }

      .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-24 {
          height: calc(var(--spacing) * 24);
      }

      .h-64 {
          height: calc(var(--spacing) * 64);
      }

      .h-\[300px\] {
          height: 300px;
      }

      .h-\[500px\] {
          height: 500px;
      }

      .h-auto {
          height: auto;
      }

      .h-fit {
          height: fit-content;
      }

      .h-full {
          height: 100%;
      }

      .max-h-72 {
          max-height: calc(var(--spacing) * 72);
      }

      .max-h-\[85vh\] {
          max-height: 85vh;
      }

      .max-h-\[150px\] {
          max-height: 150px;
      }

      .max-h-\[350px\] {
          max-height: 350px;
      }

      .max-h-\[400px\] {
          max-height: 400px;
      }

      .max-h-full {
          max-height: 100%;
      }

      .min-h-\[50px\] {
          min-height: 50px;
      }

      .min-h-\[80px\] {
          min-height: 80px;
      }

      .min-h-\[100px\] {
          min-height: 100px;
      }

      .min-h-\[200px\] {
          min-height: 200px;
      }

      .min-h-screen {
          min-height: 100vh;
      }

      .w-2 {
          width: calc(var(--spacing) * 2);
      }

      .w-2\.5 {
          width: calc(var(--spacing) * 2.5);
      }

      .w-3 {
          width: calc(var(--spacing) * 3);
      }

      .w-3\.5 {
          width: calc(var(--spacing) * 3.5);
      }

      .w-4 {
          width: calc(var(--spacing) * 4);
      }

      .w-5 {
          width: calc(var(--spacing) * 5);
      }

      .w-6 {
          width: calc(var(--spacing) * 6);
      }

      .w-7 {
          width: calc(var(--spacing) * 7);
      }

      .w-8 {
          width: calc(var(--spacing) * 8);
      }

      .w-10 {
          width: calc(var(--spacing) * 10);
      }

      .w-12 {
          width: calc(var(--spacing) * 12);
      }

      .w-16 {
          width: calc(var(--spacing) * 16);
      }

      .w-20 {
          width: calc(var(--spacing) * 20);
      }

      .w-24 {
          width: calc(var(--spacing) * 24);
      }

      .w-40 {
          width: calc(var(--spacing) * 40);
      }

      .w-48 {
          width: calc(var(--spacing) * 48);
      }

      .w-64 {
          width: calc(var(--spacing) * 64);
      }

      .w-80 {
          width: calc(var(--spacing) * 80);
      }

      .w-fit {
          width: fit-content;
      }

      .w-full {
          width: 100%;
      }

      .max-w-2xl {
          max-width: var(--container-2xl);
      }

      .max-w-\[80\%\] {
          max-width: 80%;
      }

      .max-w-\[180px\] {
          max-width: 180px;
      }

      .max-w-\[250px\] {
          max-width: 250px;
      }

      .max-w-\[300px\] {
          max-width: 300px;
      }

      .max-w-\[400px\] {
          max-width: 400px;
      }

      .max-w-\[800px\] {
          max-width: 800px;
      }

      .max-w-\[1000px\] {
          max-width: 1000px;
      }

      .max-w-\[1200px\] {
          max-width: 1200px;
      }

      .max-w-full {
          max-width: 100%;
      }

      .min-w-0 {
          min-width: calc(var(--spacing) * 0);
      }

      .min-w-full {
          min-width: 100%;
      }

      .flex-1 {
          flex: 1;
      }

      .flex-shrink-0 {
          flex-shrink: 0;
      }

      .translate-x-0 {
          --tw-translate-x: calc(var(--spacing) * 0);
          translate: var(--tw-translate-x) var(--tw-translate-y);
      }

      .translate-x-6 {
          --tw-translate-x: calc(var(--spacing) * 6);
          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);
      }

      .scale-\[1\.02\] {
          scale: 1.02;
      }

      .transform {
          transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
      }

      .animate-pulse {
          animation: var(--animate-pulse);
      }

      .animate-spin {
          animation: var(--animate-spin);
      }

      .cursor-default {
          cursor: default;
      }

      .cursor-pointer {
          cursor: pointer;
      }

      .cursor-zoom-in {
          cursor: zoom-in;
      }

      .resize-none {
          resize: none;
      }

      .list-disc {
          list-style-type: disc;
      }

      .appearance-none {
          appearance: none;
      }

      .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));
      }

      .grid-cols-4 {
          grid-template-columns: repeat(4, minmax(0, 1fr));
      }

      .grid-cols-5 {
          grid-template-columns: repeat(5, minmax(0, 1fr));
      }

      .flex-col {
          flex-direction: column;
      }

      .flex-row {
          flex-direction: row;
      }

      .flex-row-reverse {
          flex-direction: row-reverse;
      }

      .flex-wrap {
          flex-wrap: wrap;
      }

      .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;
      }

      .justify-start {
          justify-content: flex-start;
      }

      .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-3 {
          gap: calc(var(--spacing) * 3);
      }

      .gap-4 {
          gap: calc(var(--spacing) * 4);
      }

      .gap-6 {
          gap: calc(var(--spacing) * 6);
      }

      .gap-8 {
          gap: calc(var(--spacing) * 8);
      }

      .space-y-1 {
          :where(& > :not(:last-child)) {
              --tw-space-y-reverse: 0;
              margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
              margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
          }
      }

      .space-y-2 {
          :where(& > :not(:last-child)) {
              --tw-space-y-reverse: 0;
              margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
              margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
          }
      }

      .space-y-3 {
          :where(& > :not(:last-child)) {
              --tw-space-y-reverse: 0;
              margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
              margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
          }
      }

      .space-y-4 {
          :where(& > :not(:last-child)) {
              --tw-space-y-reverse: 0;
              margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
              margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
          }
      }

      .space-y-6 {
          :where(& > :not(:last-child)) {
              --tw-space-y-reverse: 0;
              margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
              margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
          }
      }

      .gap-x-6 {
          column-gap: calc(var(--spacing) * 6);
      }

      .gap-y-4 {
          row-gap: calc(var(--spacing) * 4);
      }

      .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-nro-border\/10 {
          :where(& > :not(:last-child)) {
              border-color: color-mix(in srgb, #ffcb05 10%, transparent);

              @supports (color: color-mix(in lab, red, red)) {
                  border-color: color-mix(in oklab, var(--color-nro-border) 10%, transparent);
              }
          }
      }

      .divide-nro-border\/20 {
          :where(& > :not(:last-child)) {
              border-color: color-mix(in srgb, #ffcb05 20%, transparent);

              @supports (color: color-mix(in lab, red, red)) {
                  border-color: color-mix(in oklab, var(--color-nro-border) 20%, transparent);
              }
          }
      }

      .truncate {
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: nowrap;
      }

      .overflow-hidden {
          overflow: hidden;
      }

      .overflow-x-auto {
          overflow-x: auto;
      }

      .overflow-y-auto {
          overflow-y: auto;
      }

      .rounded {
          border-radius: 0.25rem;
      }

      .rounded-full {
          border-radius: calc(infinity * 1px);
      }

      .rounded-lg {
          border-radius: var(--radius-lg);
      }

      .rounded-sm {
          border-radius: var(--radius-sm);
      }

      .rounded-t-lg {
          border-top-left-radius: var(--radius-lg);
          border-top-right-radius: var(--radius-lg);
      }

      .rounded-tl-none {
          border-top-left-radius: 0;
      }

      .rounded-tr-none {
          border-top-right-radius: 0;
      }

      .rounded-bl-sm {
          border-bottom-left-radius: var(--radius-sm);
      }

      .border {
          border-style: var(--tw-border-style);
          border-width: 1px;
      }

      .border-2 {
          border-style: var(--tw-border-style);
          border-width: 2px;
      }

      .border-4 {
          border-style: var(--tw-border-style);
          border-width: 4px;
      }

      .border-y {
          border-block-style: var(--tw-border-style);
          border-block-width: 1px;
      }

      .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-l {
          border-left-style: var(--tw-border-style);
          border-left-width: 1px;
      }

      .border-l-4 {
          border-left-style: var(--tw-border-style);
          border-left-width: 4px;
      }

      .border-dashed {
          --tw-border-style: dashed;
          border-style: dashed;
      }

      .border-black\/10 {
          border-color: color-mix(in srgb, #000 10%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
          }
      }

      .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-gray-800 {
          border-color: var(--color-gray-800);
      }

      .border-green-100 {
          border-color: var(--color-green-100);
      }

      .border-green-200 {
          border-color: var(--color-green-200);
      }

      .border-green-600 {
          border-color: var(--color-green-600);
      }

      .border-green-700 {
          border-color: var(--color-green-700);
      }

      .border-indigo-700 {
          border-color: var(--color-indigo-700);
      }

      .border-nro-border {
          border-color: var(--color-nro-border);
      }

      .border-nro-border\/5 {
          border-color: color-mix(in srgb, #ffcb05 5%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              border-color: color-mix(in oklab, var(--color-nro-border) 5%, transparent);
          }
      }

      .border-nro-border\/10 {
          border-color: color-mix(in srgb, #ffcb05 10%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              border-color: color-mix(in oklab, var(--color-nro-border) 10%, transparent);
          }
      }

      .border-nro-border\/20 {
          border-color: color-mix(in srgb, #ffcb05 20%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              border-color: color-mix(in oklab, var(--color-nro-border) 20%, transparent);
          }
      }

      .border-nro-border\/30 {
          border-color: color-mix(in srgb, #ffcb05 30%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              border-color: color-mix(in oklab, var(--color-nro-border) 30%, transparent);
          }
      }

      .border-nro-border\/50 {
          border-color: color-mix(in srgb, #ffcb05 50%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              border-color: color-mix(in oklab, var(--color-nro-border) 50%, transparent);
          }
      }

      .border-nro-brown {
          border-color: var(--color-nro-brown);
      }

      .border-nro-dark-orange {
          border-color: var(--color-nro-dark-orange);
      }

      .border-nro-light-orange {
          border-color: var(--color-nro-light-orange);
      }

      .border-nro-orange\/50 {
          border-color: color-mix(in srgb, #281033 50%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              border-color: color-mix(in oklab, var(--color-nro-orange) 50%, transparent);
          }
      }

      .border-nro-red {
          border-color: var(--color-nro-red);
      }

      .border-nro-red\/20 {
          border-color: color-mix(in srgb, #ffcb05 20%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              border-color: color-mix(in oklab, var(--color-nro-red) 20%, transparent);
          }
      }

      .border-orange-200 {
          border-color: var(--color-orange-200);
      }

      .border-red-200 {
          border-color: var(--color-red-200);
      }

      .border-white {
          border-color: var(--color-white);
      }

      .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);
          }
      }

      .border-t-white {
          border-top-color: var(--color-white);
      }

      .border-l-nro-red {
          border-left-color: var(--color-nro-red);
      }

      .bg-\[\#f0f2f5\] {
          background-color: #f0f2f5;
      }

      .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\/20 {
          background-color: color-mix(in srgb, #000 20%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-black) 20%, 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\/90 {
          background-color: color-mix(in srgb, #000 90%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-black) 90%, transparent);
          }
      }

      .bg-blue-100 {
          background-color: var(--color-blue-100);
      }

      .bg-blue-500 {
          background-color: var(--color-blue-500);
      }

      .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-700 {
          background-color: var(--color-gray-700);
      }

      .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-green-600 {
          background-color: var(--color-green-600);
      }

      .bg-indigo-600 {
          background-color: var(--color-indigo-600);
      }

      .bg-nro-brown {
          background-color: var(--color-nro-brown);
      }

      .bg-nro-brown\/5 {
          background-color: color-mix(in srgb, #f5efff 5%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-nro-brown) 5%, transparent);
          }
      }

      .bg-nro-brown\/10 {
          background-color: color-mix(in srgb, #f5efff 10%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-nro-brown) 10%, transparent);
          }
      }

      .bg-nro-dark-orange {
          background-color: var(--color-nro-dark-orange);
      }

      .bg-nro-light-orange {
          background-color: var(--color-nro-light-orange);
      }

      .bg-nro-light-orange\/30 {
          background-color: color-mix(in srgb, #20102f 30%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-nro-light-orange) 30%, transparent);
          }
      }

      .bg-nro-orange {
          background-color: var(--color-nro-orange);
      }

      .bg-nro-orange\/5 {
          background-color: color-mix(in srgb, #281033 5%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-nro-orange) 5%, transparent);
          }
      }

      .bg-nro-orange\/10 {
          background-color: color-mix(in srgb, #281033 10%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-nro-orange) 10%, transparent);
          }
      }

      .bg-nro-orange\/20 {
          background-color: color-mix(in srgb, #281033 20%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-nro-orange) 20%, transparent);
          }
      }

      .bg-nro-red {
          background-color: var(--color-nro-red);
      }

      .bg-nro-red\/5 {
          background-color: color-mix(in srgb, #ffcb05 5%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-nro-red) 5%, transparent);
          }
      }

      .bg-nro-red\/10 {
          background-color: color-mix(in srgb, #ffcb05 10%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-nro-red) 10%, transparent);
          }
      }

      .bg-orange-50\/30 {
          background-color: color-mix(in srgb, oklch(98% 0.016 73.684) 30%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-orange-50) 30%, transparent);
          }
      }

      .bg-orange-500 {
          background-color: var(--color-orange-500);
      }

      .bg-red-100 {
          background-color: var(--color-red-100);
      }

      .bg-red-500 {
          background-color: var(--color-red-500);
      }

      .bg-white {
          background-color: var(--color-white);
      }

      .bg-white\/5 {
          background-color: color-mix(in srgb, #fff 5%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
          }
      }

      .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\/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-white\/30 {
          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);
          }
      }

      .bg-white\/50 {
          background-color: color-mix(in srgb, #fff 50%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-white) 50%, transparent);
          }
      }

      .bg-white\/80 {
          background-color: color-mix(in srgb, #fff 80%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
          }
      }

      .bg-gradient-to-b {
          --tw-gradient-position: to bottom in oklab;
          background-image: linear-gradient(var(--tw-gradient-stops));
      }



      .from-transparent {
          --tw-gradient-from: 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-black\/30 {
          --tw-gradient-to: color-mix(in srgb, #000 30%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              --tw-gradient-to: color-mix(in oklab, var(--color-black) 30%, 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\.5 {
          padding: calc(var(--spacing) * 0.5);
      }

      .p-1 {
          padding: calc(var(--spacing) * 1);
      }

      .p-1\.5 {
          padding: calc(var(--spacing) * 1.5);
      }

      .p-2 {
          padding: calc(var(--spacing) * 2);
      }

      .p-3 {
          padding: calc(var(--spacing) * 3);
      }

      .p-4 {
          padding: calc(var(--spacing) * 4);
      }

      .p-6 {
          padding: calc(var(--spacing) * 6);
      }

      .p-8 {
          padding: calc(var(--spacing) * 8);
      }

      .p-12 {
          padding: calc(var(--spacing) * 12);
      }

      .px-0\.5 {
          padding-inline: calc(var(--spacing) * 0.5);
      }

      .px-1 {
          padding-inline: calc(var(--spacing) * 1);
      }

      .px-1\.5 {
          padding-inline: calc(var(--spacing) * 1.5);
      }

      .px-2 {
          padding-inline: calc(var(--spacing) * 2);
      }

      .px-3 {
          padding-inline: calc(var(--spacing) * 3);
      }

      .px-4 {
          padding-inline: calc(var(--spacing) * 4);
      }

      .px-6 {
          padding-inline: calc(var(--spacing) * 6);
      }

      .px-8 {
          padding-inline: calc(var(--spacing) * 8);
      }

      .py-0\.5 {
          padding-block: calc(var(--spacing) * 0.5);
      }

      .py-1 {
          padding-block: calc(var(--spacing) * 1);
      }

      .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-6 {
          padding-block: calc(var(--spacing) * 6);
      }

      .py-8 {
          padding-block: calc(var(--spacing) * 8);
      }

      .pt-3 {
          padding-top: calc(var(--spacing) * 3);
      }

      .pt-4 {
          padding-top: calc(var(--spacing) * 4);
      }

      .pt-6 {
          padding-top: calc(var(--spacing) * 6);
      }

      .pr-0 {
          padding-right: calc(var(--spacing) * 0);
      }

      .pr-1 {
          padding-right: calc(var(--spacing) * 1);
      }

      .pr-4 {
          padding-right: calc(var(--spacing) * 4);
      }

      .pr-12 {
          padding-right: calc(var(--spacing) * 12);
      }

      .pr-20 {
          padding-right: calc(var(--spacing) * 20);
      }

      .pr-28 {
          padding-right: calc(var(--spacing) * 28);
      }

      .pb-1 {
          padding-bottom: calc(var(--spacing) * 1);
      }

      .pb-2 {
          padding-bottom: calc(var(--spacing) * 2);
      }

      .pb-3 {
          padding-bottom: calc(var(--spacing) * 3);
      }

      .pb-6 {
          padding-bottom: calc(var(--spacing) * 6);
      }

      .pb-12 {
          padding-bottom: calc(var(--spacing) * 12);
      }

      .pl-3 {
          padding-left: calc(var(--spacing) * 3);
      }

      .pl-4 {
          padding-left: calc(var(--spacing) * 4);
      }

      .pl-10 {
          padding-left: calc(var(--spacing) * 10);
      }

      .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-2xl {
          font-size: var(--text-2xl);
          line-height: var(--tw-leading, var(--text-2xl--line-height));
      }

      .text-base {
          font-size: var(--text-base);
          line-height: var(--tw-leading, var(--text-base--line-height));
      }

      .text-lg {
          font-size: var(--text-lg);
          line-height: var(--tw-leading, var(--text-lg--line-height));
      }

      .text-sm {
          font-size: var(--text-sm);
          line-height: var(--tw-leading, var(--text-sm--line-height));
      }

      .text-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-\[8px\] {
          font-size: 8px;
      }

      .text-\[9px\] {
          font-size: 9px;
      }

      .text-\[10px\] {
          font-size: 10px;
      }

      .text-\[11px\] {
          font-size: 11px;
      }

      .leading-relaxed {
          --tw-leading: var(--leading-relaxed);
          line-height: var(--leading-relaxed);
      }

      .font-black {
          --tw-font-weight: var(--font-weight-black);
          font-weight: var(--font-weight-black);
      }

      .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);
      }

      .tracking-tight {
          --tw-tracking: var(--tracking-tight);
          letter-spacing: var(--tracking-tight);
      }

      .tracking-tighter {
          --tw-tracking: var(--tracking-tighter);
          letter-spacing: var(--tracking-tighter);
      }

      .tracking-wider {
          --tw-tracking: var(--tracking-wider);
          letter-spacing: var(--tracking-wider);
      }

      .tracking-widest {
          --tw-tracking: var(--tracking-widest);
          letter-spacing: var(--tracking-widest);
      }

      .whitespace-nowrap {
          white-space: nowrap;
      }

      .text-blue-500 {
          color: var(--color-blue-500);
      }

      .text-blue-600 {
          color: var(--color-blue-600);
      }

      .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-green-500 {
          color: var(--color-green-500);
      }

      .text-green-600 {
          color: var(--color-green-600);
      }

      .text-green-700 {
          color: var(--color-green-700);
      }

      .text-nro-border {
          color: var(--color-nro-border);
      }

      .text-nro-border\/40 {
          color: color-mix(in srgb, #ffcb05 40%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-border) 40%, transparent);
          }
      }

      .text-nro-border\/60 {
          color: color-mix(in srgb, #ffcb05 60%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-border) 60%, transparent);
          }
      }

      .text-nro-brown {
          color: var(--color-nro-brown);
      }

      .text-nro-brown\/40 {
          color: color-mix(in srgb, #f5efff 40%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-brown) 40%, transparent);
          }
      }

      .text-nro-brown\/50 {
          color: color-mix(in srgb, #f5efff 50%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-brown) 50%, transparent);
          }
      }

      .text-nro-brown\/60 {
          color: color-mix(in srgb, #f5efff 60%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-brown) 60%, transparent);
          }
      }

      .text-nro-brown\/70 {
          color: color-mix(in srgb, #f5efff 70%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-brown) 70%, transparent);
          }
      }

      .text-nro-brown\/80 {
          color: color-mix(in srgb, #f5efff 80%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-brown) 80%, transparent);
          }
      }

      .text-nro-light-orange {
          color: var(--color-nro-light-orange);
      }

      .text-nro-light-orange\/40 {
          color: color-mix(in srgb, #20102f 40%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-light-orange) 40%, transparent);
          }
      }

      .text-nro-light-orange\/60 {
          color: color-mix(in srgb, #20102f 60%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-light-orange) 60%, transparent);
          }
      }

      .text-nro-light-orange\/70 {
          color: color-mix(in srgb, #20102f 70%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-light-orange) 70%, transparent);
          }
      }

      .text-nro-light-orange\/80 {
          color: color-mix(in srgb, #20102f 80%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-light-orange) 80%, transparent);
          }
      }

      .text-nro-red {
          color: var(--color-nro-red);
      }

      .text-nro-red\/60 {
          color: color-mix(in srgb, #ffcb05 60%, transparent);

          @supports (color: color-mix(in lab, red, red)) {
              color: color-mix(in oklab, var(--color-nro-red) 60%, transparent);
          }
      }

      .text-orange-500 {
          color: var(--color-orange-500);
      }

      .text-orange-600 {
          color: var(--color-orange-600);
      }

      .text-purple-500 {
          color: var(--color-purple-500);
      }

      .text-red-700 {
          color: var(--color-red-700);
      }

      .text-white {
          color: var(--color-white);
      }

      .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\/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);
          }
      }

      .uppercase {
          text-transform: uppercase;
      }

      .italic {
          font-style: italic;
      }

      .accent-green-600 {
          accent-color: var(--color-green-600);
      }

      .accent-nro-red {
          accent-color: var(--color-nro-red);
      }

      .opacity-0 {
          opacity: 0%;
      }

      .opacity-40 {
          opacity: 40%;
      }

      .opacity-50 {
          opacity: 50%;
      }

      .opacity-60 {
          opacity: 60%;
      }

      .opacity-80 {
          opacity: 80%;
      }

      .opacity-90 {
          opacity: 90%;
      }

      .opacity-100 {
          opacity: 100%;
      }

      .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-md {
          --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
          box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }

      .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);
      }

      .drop-shadow-lg {
          --tw-drop-shadow-size: drop-shadow(0 4px 4px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.15)));
          --tw-drop-shadow: drop-shadow(var(--drop-shadow-lg));
          filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
      }

      .drop-shadow-md {
          --tw-drop-shadow-size: drop-shadow(0 3px 3px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.12)));
          --tw-drop-shadow: drop-shadow(var(--drop-shadow-md));
          filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
      }

      .backdrop-blur-md {
          --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 {
          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-300 {
          --tw-duration: 300ms;
          transition-duration: 300ms;
      }

      .duration-500 {
          --tw-duration: 500ms;
          transition-duration: 500ms;
      }

      .select-none {
          -webkit-user-select: none;
          user-select: none;
      }

      .\[icon\:1\] {
          icon: 1;
      }

      .\[icon\:2\] {
          icon: 2;
      }

      .\[icon\:cool\] {
          icon: cool;
      }

      .\[icon\:dragon\] {
          icon: dragon;
      }

      .\[icon\:fire\] {
          icon: fire;
      }

      .\[icon\:heart\] {
          icon: heart;
      }

      .\[icon\:home\] {
          icon: home;
      }

      .\[icon\:question\] {
          icon: question;
      }

      .\[icon\:shield\] {
          icon: shield;
      }

      .\[icon\:smile\] {
          icon: smile;
      }

      .\[icon\:star\] {
          icon: star;
      }

      .\[icon\:thumb\] {
          icon: thumb;
      }

      .group-hover\:bg-gray-100 {
          &:is(:where(.group):hover *) {
              @media (hover: hover) {
                  background-color: var(--color-gray-100);
              }
          }
      }

      .group-hover\:text-nro-brown {
          &:is(:where(.group):hover *) {
              @media (hover: hover) {
                  color: var(--color-nro-brown);
              }
          }
      }

      .group-hover\:opacity-100 {
          &:is(:where(.group):hover *) {
              @media (hover: hover) {
                  opacity: 100%;
              }
          }
      }

      .group-hover\/cimg\:scale-105 {
          &:is(:where(.group\/cimg):hover *) {
              @media (hover: hover) {
                  --tw-scale-x: 105%;
                  --tw-scale-y: 105%;
                  --tw-scale-z: 105%;
                  scale: var(--tw-scale-x) var(--tw-scale-y);
              }
          }
      }

      .group-hover\/cimg\:bg-black\/10 {
          &:is(:where(.group\/cimg):hover *) {
              @media (hover: hover) {
                  background-color: color-mix(in srgb, #000 10%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      background-color: color-mix(in oklab, var(--color-black) 10%, transparent);
                  }
              }
          }
      }

      .group-hover\/cimg\:opacity-100 {
          &:is(:where(.group\/cimg):hover *) {
              @media (hover: hover) {
                  opacity: 100%;
              }
          }
      }

      .group-hover\/img\:scale-105 {
          &:is(:where(.group\/img):hover *) {
              @media (hover: hover) {
                  --tw-scale-x: 105%;
                  --tw-scale-y: 105%;
                  --tw-scale-z: 105%;
                  scale: var(--tw-scale-x) var(--tw-scale-y);
              }
          }
      }

      .group-hover\/img\:scale-110 {
          &:is(:where(.group\/img):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);
              }
          }
      }

      .group-hover\/img\:bg-black\/10 {
          &:is(:where(.group\/img):hover *) {
              @media (hover: hover) {
                  background-color: color-mix(in srgb, #000 10%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      background-color: color-mix(in oklab, var(--color-black) 10%, transparent);
                  }
              }
          }
      }

      .group-hover\/img\:opacity-100 {
          &:is(:where(.group\/img):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-green-600\/30 {
          &:hover {
              @media (hover: hover) {
                  border-color: color-mix(in srgb, oklch(62.7% 0.194 149.214) 30%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      border-color: color-mix(in oklab, var(--color-green-600) 30%, transparent);
                  }
              }
          }
      }

      .hover\:border-nro-red\/30 {
          &:hover {
              @media (hover: hover) {
                  border-color: color-mix(in srgb, #ffcb05 30%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      border-color: color-mix(in oklab, var(--color-nro-red) 30%, transparent);
                  }
              }
          }
      }

      .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-800 {
          &:hover {
              @media (hover: hover) {
                  background-color: var(--color-gray-800);
              }
          }
      }

      .hover\:bg-green-700 {
          &:hover {
              @media (hover: hover) {
                  background-color: var(--color-green-700);
              }
          }
      }

      .hover\:bg-indigo-700 {
          &:hover {
              @media (hover: hover) {
                  background-color: var(--color-indigo-700);
              }
          }
      }

      .hover\:bg-nro-light-orange {
          &:hover {
              @media (hover: hover) {
                  background-color: var(--color-nro-light-orange);
              }
          }
      }

      .hover\:bg-nro-orange {
          &:hover {
              @media (hover: hover) {
                  background-color: var(--color-nro-orange);
              }
          }
      }

      .hover\:bg-nro-orange\/5 {
          &:hover {
              @media (hover: hover) {
                  background-color: color-mix(in srgb, #281033 5%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      background-color: color-mix(in oklab, var(--color-nro-orange) 5%, transparent);
                  }
              }
          }
      }

      .hover\:bg-nro-orange\/10 {
          &:hover {
              @media (hover: hover) {
                  background-color: color-mix(in srgb, #281033 10%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      background-color: color-mix(in oklab, var(--color-nro-orange) 10%, transparent);
                  }
              }
          }
      }

      .hover\:bg-nro-orange\/30 {
          &:hover {
              @media (hover: hover) {
                  background-color: color-mix(in srgb, #281033 30%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      background-color: color-mix(in oklab, var(--color-nro-orange) 30%, transparent);
                  }
              }
          }
      }

      .hover\:bg-nro-red {
          &:hover {
              @media (hover: hover) {
                  background-color: var(--color-nro-red);
              }
          }
      }

      .hover\:bg-nro-red\/90 {
          &:hover {
              @media (hover: hover) {
                  background-color: color-mix(in srgb, #ffcb05 90%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      background-color: color-mix(in oklab, var(--color-nro-red) 90%, transparent);
                  }
              }
          }
      }

      .hover\:bg-white\/10 {
          &:hover {
              @media (hover: hover) {
                  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);
                  }
              }
          }
      }

      .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\:bg-white\/30 {
          &: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);
                  }
              }
          }
      }

      .hover\:bg-white\/50 {
          &:hover {
              @media (hover: hover) {
                  background-color: color-mix(in srgb, #fff 50%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      background-color: color-mix(in oklab, var(--color-white) 50%, transparent);
                  }
              }
          }
      }

      .hover\:bg-white\/80 {
          &:hover {
              @media (hover: hover) {
                  background-color: color-mix(in srgb, #fff 80%, transparent);

                  @supports (color: color-mix(in lab, red, red)) {
                      background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
                  }
              }
          }
      }

      .hover\:text-blue-500 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-blue-500);
              }
          }
      }

      .hover\:text-blue-600 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-blue-600);
              }
          }
      }

      .hover\:text-gray-600 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-gray-600);
              }
          }
      }

      .hover\:text-green-500 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-green-500);
              }
          }
      }

      .hover\:text-green-600 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-green-600);
              }
          }
      }

      .hover\:text-nro-brown {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-nro-brown);
              }
          }
      }

      .hover\:text-nro-orange {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-nro-orange);
              }
          }
      }

      .hover\:text-nro-red {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-nro-red);
              }
          }
      }

      .hover\:text-orange-500 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-orange-500);
              }
          }
      }

      .hover\:text-purple-500 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-purple-500);
              }
          }
      }

      .hover\:text-purple-600 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-purple-600);
              }
          }
      }

      .hover\:text-red-500 {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-red-500);
              }
          }
      }

      .hover\:text-white {
          &:hover {
              @media (hover: hover) {
                  color: var(--color-white);
              }
          }
      }

      .hover\:underline {
          &:hover {
              @media (hover: hover) {
                  text-decoration-line: underline;
              }
          }
      }

      .hover\:opacity-70 {
          &:hover {
              @media (hover: hover) {
                  opacity: 70%;
              }
          }
      }

      .hover\:opacity-90 {
          &:hover {
              @media (hover: hover) {
                  opacity: 90%;
              }
          }
      }

      .hover\:shadow-lg {
          &:hover {
              @media (hover: hover) {
                  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
                  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
              }
          }
      }

      .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\:border-blue-400 {
          &:focus {
              border-color: var(--color-blue-400);
          }
      }

      .focus\:border-nro-brown {
          &:focus {
              border-color: var(--color-nro-brown);
          }
      }

      .focus\:border-nro-dark-orange {
          &:focus {
              border-color: var(--color-nro-dark-orange);
          }
      }

      .focus\:border-nro-red {
          &:focus {
              border-color: var(--color-nro-red);
          }
      }

      .focus\:bg-white {
          &:focus {
              background-color: var(--color-white);
          }
      }

      .focus\:ring-nro-red {
          &:focus {
              --tw-ring-color: var(--color-nro-red);
          }
      }

      .focus\:outline-none {
          &:focus {
              --tw-outline-style: none;
              outline-style: none;
          }
      }

      .disabled\:opacity-30 {
          &:disabled {
              opacity: 30%;
          }
      }

      .disabled\:opacity-50 {
          &:disabled {
              opacity: 50%;
          }
      }

      .sm\:grid-cols-4 {
          @media (width >=40rem) {
              grid-template-columns: repeat(4, minmax(0, 1fr));
          }
      }

      .md\:order-1 {
          @media (width >=48rem) {
              order: 1;
          }
      }

      .md\:order-2 {
          @media (width >=48rem) {
              order: 2;
          }
      }

      .md\:block {
          @media (width >=48rem) {
              display: block;
          }
      }

      .md\:h-10 {
          @media (width >=48rem) {
              height: calc(var(--spacing) * 10);
          }
      }

      .md\:h-12 {
          @media (width >=48rem) {
              height: calc(var(--spacing) * 12);
          }
      }

      .md\:h-\[calc\(100vh-56px\)\] {
          @media (width >=48rem) {
              height: calc(100vh - 56px);
          }
      }

      .md\:h-full {
          @media (width >=48rem) {
              height: 100%;
          }
      }

      .md\:w-32 {
          @media (width >=48rem) {
              width: calc(var(--spacing) * 32);
          }
      }

      .md\:w-\[300px\] {
          @media (width >=48rem) {
              width: 300px;
          }
      }

      .md\:grid-cols-2 {
          @media (width >=48rem) {
              grid-template-columns: repeat(2, minmax(0, 1fr));
          }
      }

      .md\:grid-cols-\[1fr_300px\] {
          @media (width >=48rem) {
              grid-template-columns: 1fr 300px;
          }
      }

      .md\:flex-row {
          @media (width >=48rem) {
              flex-direction: row;
          }
      }

      .md\:items-center {
          @media (width >=48rem) {
              align-items: center;
          }
      }

      .md\:gap-1 {
          @media (width >=48rem) {
              gap: calc(var(--spacing) * 1);
          }
      }

      .md\:gap-8 {
          @media (width >=48rem) {
              gap: calc(var(--spacing) * 8);
          }
      }

      .md\:overflow-hidden {
          @media (width >=48rem) {
              overflow: hidden;
          }
      }

      .md\:overflow-y-auto {
          @media (width >=48rem) {
              overflow-y: auto;
          }
      }

      .md\:p-10 {
          @media (width >=48rem) {
              padding: calc(var(--spacing) * 10);
          }
      }

      .md\:px-3 {
          @media (width >=48rem) {
              padding-inline: calc(var(--spacing) * 3);
          }
      }

      .md\:pr-2 {
          @media (width >=48rem) {
              padding-right: calc(var(--spacing) * 2);
          }
      }

      .md\:pb-0 {
          @media (width >=48rem) {
              padding-bottom: calc(var(--spacing) * 0);
          }
      }

      .md\:text-3xl {
          @media (width >=48rem) {
              font-size: var(--text-3xl);
              line-height: var(--tw-leading, var(--text-3xl--line-height));
          }
      }

      .md\:text-xs {
          @media (width >=48rem) {
              font-size: var(--text-xs);
              line-height: var(--tw-leading, var(--text-xs--line-height));
          }
      }

      .lg\:col-span-1 {
          @media (width >=64rem) {
              grid-column: span 1 / span 1;
          }
      }

      .lg\:col-span-2 {
          @media (width >=64rem) {
              grid-column: span 2 / span 2;
          }
      }

      .lg\:max-h-\[600px\] {
          @media (width >=64rem) {
              max-height: 600px;
          }
      }

      .lg\:max-h-\[600px\] {
          @media (width >=64rem) {
              max-height: 600px;
          }
      }

      .lg\:grid-cols-3 {
          @media (width >=64rem) {
              grid-template-columns: repeat(3, minmax(0, 1fr));
          }
      }

      .lg\:grid-cols-1 {
          @media (width >=64rem) {
              grid-template-columns: repeat(1, minmax(0, 1fr));
          }
      }

      .lg\:grid-cols-\[200px_1fr\] {
          @media (width >=64rem) {
              grid-template-columns: 200px 1fr;
          }
      }

      .lg\:text-left {
          @media (width >=64rem) {
              text-align: left;
          }
      }
  }

  @layer base {
      body {
          background-color: var(--color-nro-orange);
          font-family: var(--font-sans);
          color: #f5efff;
      }
  }

  .zing-card {
      border-radius: var(--radius-sm);
      border-style: solid;
      border-width: 1px;
      border-color: var(--color-nro-border);
      background-color: var(--color-nro-light-orange);
      --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);
  }

  .zing-tab-active {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 2px;
      border-color: var(--color-nro-brown);
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      color: var(--color-nro-brown);
  }

  .zing-btn-primary {
      border-radius: var(--radius-sm);
      background-color: var(--color-nro-red);
      padding-inline: calc(var(--spacing) * 4);
      padding-block: 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-medium);
      font-weight: var(--font-weight-medium);
      color: var(--color-white);
      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) {
              opacity: 90%;
          }
      }
  }

  .custom-scrollbar {
      scrollbar-width: thin;
      scrollbar-color: #f5efff rgba(59, 7, 100, 0.1);
  }

  .custom-scrollbar::-webkit-scrollbar {
      width: 8px;
      display: block !important;
  }

  .custom-scrollbar::-webkit-scrollbar-track {
      background: rgba(59, 7, 100, 0.1);
      border-radius: 4px;
  }

  .custom-scrollbar::-webkit-scrollbar-thumb {
      background: #f5efff;
      border-radius: 4px;
      border: 2px solid rgba(59, 7, 100, 0.1);
  }

  .custom-scrollbar::-webkit-scrollbar-thumb:hover {
      background: #581c87;
  }

  .no-scrollbar::-webkit-scrollbar {
      display: none;
  }

  .no-scrollbar {
      -ms-overflow-style: none;
      scrollbar-width: none;
  }

  @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-blur {
      syntax: "*";
      inherits: false;
  }

  @property --tw-brightness {
      syntax: "*";
      inherits: false;
  }

  @property --tw-contrast {
      syntax: "*";
      inherits: false;
  }

  @property --tw-grayscale {
      syntax: "*";
      inherits: false;
  }

  @property --tw-hue-rotate {
      syntax: "*";
      inherits: false;
  }

  @property --tw-invert {
      syntax: "*";
      inherits: false;
  }

  @property --tw-opacity {
      syntax: "*";
      inherits: false;
  }

  @property --tw-saturate {
      syntax: "*";
      inherits: false;
  }

  @property --tw-sepia {
      syntax: "*";
      inherits: false;
  }

  @property --tw-drop-shadow {
      syntax: "*";
      inherits: false;
  }

  @property --tw-drop-shadow-color {
      syntax: "*";
      inherits: false;
  }

  @property --tw-drop-shadow-alpha {
      syntax: "<percentage>";
      inherits: false;
      initial-value: 100%;
  }

  @property --tw-drop-shadow-size {
      syntax: "*";
      inherits: false;
  }

  @property --tw-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-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;
  }

  @keyframes spin {
      to {
          transform: rotate(360deg);
      }
  }

  @keyframes pulse {
      50% {
          opacity: 0.5;
      }
  }

  @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-blur: initial;
              --tw-brightness: initial;
              --tw-contrast: initial;
              --tw-grayscale: initial;
              --tw-hue-rotate: initial;
              --tw-invert: initial;
              --tw-opacity: initial;
              --tw-saturate: initial;
              --tw-sepia: initial;
              --tw-drop-shadow: initial;
              --tw-drop-shadow-color: initial;
              --tw-drop-shadow-alpha: 100%;
              --tw-drop-shadow-size: initial;
              --tw-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-scale-x: 1;
              --tw-scale-y: 1;
              --tw-scale-z: 1;
          }
      }
  }
  /* ---------- Banner tự động chuyển ảnh ---------- */
  .banner-slide {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      opacity: 0;
      transition: opacity 600ms ease-in-out;
  }

  .banner-slide.is-active {
      opacity: 1;
  }

  @media (prefers-reduced-motion: reduce) {
      .banner-slide {
          transition: none;
      }
  }

  /* ---------- Tài khoản: đăng nhập / đăng ký / đổi mật khẩu ---------- */
  .banner-login-layer { z-index: 10; pointer-events: none; }
  .login-orb {
      pointer-events: auto;
      position: relative;
      display: block;
      width: 96px;
      height: 96px;
      border-radius: 50%;
      isolation: isolate;
      box-shadow: 0 0 22px rgb(178 66 255 / .65), 0 0 40px rgb(255 203 5 / .22);
      animation: login-orb-float 4s ease-in-out infinite;
      transition: box-shadow .3s ease;
  }
  .login-orb::before {
      content: '';
      position: absolute;
      inset: -6px;
      border-radius: inherit;
      background: conic-gradient(from 0deg, #ffcb05, #ff8b28, #c04cff, #713cff, #ffe89a, #ffcb05);
      animation: login-orb-spin 7s linear infinite;
      pointer-events: none;
      z-index: -1;
  }
  .login-orb-ring {
      position: absolute;
      inset: -10px;
      border: 1px solid #d399ff;
      border-radius: inherit;
      animation: login-orb-pulse 3s ease-out infinite;
      pointer-events: none;
      z-index: -2;
  }
  .login-orb-image {
      position: relative;
      display: block;
      width: 100%;
      height: 100%;
      overflow: hidden;
      border: 3px solid #251032;
      border-radius: inherit;
      background: #20102f;
  }
  .login-orb-image img { display: block; transition: transform .35s ease; }
  .login-orb-image::after {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(115deg, transparent 32%, rgb(255 255 255 / .4) 50%, transparent 68%);
      transform: translateX(-140%);
      transition: transform .65s ease;
      pointer-events: none;
  }
  .login-orb:hover, .login-orb:focus-visible { box-shadow: 0 0 30px rgb(178 66 255 / .85), 0 0 48px rgb(255 203 5 / .4); }
  .login-orb:hover img, .login-orb:focus-visible img { transform: scale(1.1); }
  .login-orb:hover .login-orb-image::after, .login-orb:focus-visible .login-orb-image::after { transform: translateX(140%); }
  .login-orb:focus-visible { outline: 2px solid #ffcb05; outline-offset: 12px; }
  .login-orb:active img { transform: scale(.97); }
  @keyframes login-orb-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
  @keyframes login-orb-spin { to { transform: rotate(360deg); } }
  @keyframes login-orb-pulse { 0% { transform: scale(.96); opacity: .65; } 100% { transform: scale(1.2); opacity: 0; } }
  @media (prefers-reduced-motion: reduce) {
      .login-orb, .login-orb::before, .login-orb-ring { animation: none; }
      .login-orb, .login-orb-image img, .login-orb-image::after { transition: none; }
      .login-orb-image::after { display: none; }
      .login-orb:hover img, .login-orb:focus-visible img { transform: none; }
      .login-orb-ring { opacity: .4; }
  }

  .forum-search-form { min-width: 0; }
  .forum-search-bar { display: flex; align-items: center; overflow: hidden; min-height: 46px; background: var(--event-surface); border: 1px solid #ffcb05; border-radius: 11px; box-shadow: 0 8px 24px rgb(0 0 0 / .2); }
  .forum-search-bar:focus-within { border-color: #ffcb05; box-shadow: 0 0 0 3px rgb(255 203 5 / .18); }
  .forum-search-icon { display: flex; padding-left: 14px; color: #ffcb05; }
  .forum-search-bar input { flex: 1; min-width: 0; width: 100%; padding: 12px 10px; background: transparent; border: 0; outline: none; color: #fff; caret-color: #ffcb05; font-size: 13px; }
  .forum-search-bar input::placeholder { color: var(--event-muted); font-style: italic; }
  .forum-search-bar button { align-self: stretch; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 10px 18px; border: 0; border-left: 1px solid #ec9d24; background: var(--event-action); color: #fff; font-size: 13px; font-weight: 700; cursor: pointer; }
  .forum-search-bar button:hover { filter: brightness(1.12); }
  .forum-search-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; margin-top: 14px; }
  .forum-search-filters label { display: flex; flex: 1; min-width: 145px; flex-direction: column; gap: 6px; font-size: 12px; color: #e5d5ef; }
  .forum-search-filters select { width: 100%; min-height: 38px; padding: 8px 10px; border: 1px solid #685377; border-radius: 6px; background: #180e25; color: #f3eaf8; font-size: 12px; }
  .forum-filter-apply { min-height: 38px; padding: 8px 13px; border: 1px solid #e8a44c; border-radius: 6px; color: #ffcb76; background: #2b193c; cursor: pointer; font-size: 12px; }
  .forum-filter-apply:hover { background: #493052; }
  .forum-search-filters a { padding: 10px 0; color: #ffcb05; font-size: 12px; }
  .forum-search-count { margin-top: 10px; color: #cdb8df; font-size: 12px; overflow-wrap: anywhere; }
  .forum-search-filters select:focus-visible, .forum-search-filters button:focus-visible, .forum-search-bar button:focus-visible { outline: 2px solid #ffcb05; outline-offset: 2px; }
  @media (max-width: 480px) {
      .forum-search-bar button { padding-inline: 12px; }
      .forum-search-bar button svg { display: none; }
      .forum-search-bar input { font-size: 12px; }
  }

  .account-identity { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; min-width: 0; }
  .account-avatar { width: 50px; height: 50px; object-fit: cover; border-radius: 50%; border: 2px solid #ffcb05; padding: 2px; flex-shrink: 0; }
  .account-identity > div { min-width: 0; }
  .account-identity strong { display: block; color: #ffdb60; font-size: 14px; overflow-wrap: anywhere; }
  .account-identity p { margin-top: 4px; font-size: 11px; color: var(--event-muted); }
  .account-balance { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 12px 14px; margin-bottom: 10px; border: 1px solid #70527b; border-radius: 7px; background: rgb(255 203 5 / .06); font-size: 12px; }
  .account-balance strong { color: #ffcb05; font-size: 17px; overflow-wrap: anywhere; }
  .account-balance small { font-size: 12px; }
  .account-email { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 10px; margin-bottom: 14px; border: 1px dashed #b85b82; border-radius: 6px; color: #ffb6ce; font-size: 11px; }
  .account-email.is-linked { border-color: #739b8c; color: #a5e6c6; }
  .account-email a { padding: 5px 10px; background: #4a254e; border-radius: 4px; color: #ffdb60; font-size: 11px; font-weight: 700; white-space: nowrap; }
  .account-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .account-recover { grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; min-height: 36px; padding: 8px; border: 1px solid #70527b; border-radius: 4px; color: #ffdb60; background: rgb(255 203 5 / .05); font-size: 12px; font-weight: 600; }
  .account-recover:hover, .account-email a:hover { background: #4a254e; }
  .account-security { max-width: 450px; margin-inline: auto; padding: 28px 24px; }
  .account-security-logo { display: block; width: 210px; max-width: 100%; height: auto; margin: 0 auto 22px; }
  .account-security h1 { text-align: center; color: #ffcb05; font-size: 20px; font-weight: 700; text-transform: uppercase; }
  .account-security-user { text-align: center; margin: 7px 0 24px; color: var(--event-muted); font-size: 13px; }
  .account-security-user strong { color: #fff; overflow-wrap: anywhere; }
  .account-security-notice { padding: 14px; margin-bottom: 20px; border: 1px solid #b28b32; border-radius: 8px; background: rgb(255 203 5 / .07); color: #f5df9e; font-size: 13px; line-height: 1.7; overflow-wrap: anywhere; }
  .account-security-warning { border-color: #e56d93; background: rgb(201 0 37 / .1); color: #ffb6ce; text-align: center; }
  .account-security-form { display: flex; flex-direction: column; gap: 15px; }
  .account-security-hint { color: var(--event-muted); font-size: 12px; line-height: 1.6; }
  .account-security-submit { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 46px; padding: 12px; border-radius: 6px; text-align: center; font-weight: 700; font-size: 14px; }
  .account-security-submit:disabled { opacity: .65; cursor: not-allowed; }
  .account-security-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 24px; }
  .account-security-links a { padding: 5px 10px; border: 1px solid #70527b; border-radius: 4px; color: #ffdb60; font-size: 12px; }
  .account-security a:focus-visible { outline: 2px solid #ffcb05; outline-offset: 3px; }

  .post-back-button {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      min-height: 38px;
      padding: 8px 14px;
      margin-bottom: 12px;
      border: 1px solid #8e7132;
      border-radius: 9px;
      background: linear-gradient(115deg, #301638, #1b203e);
      color: #ffdb60;
      font-size: 13px;
      font-weight: 600;
      box-shadow: 0 3px 10px rgb(0 0 0 / .15);
      transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
  }
  .post-back-button svg { transition: transform .2s ease; }
  .post-back-button:hover { border-color: #ffcb05; background: #3a2147; box-shadow: 0 0 14px rgb(255 203 5 / .12); }
  .post-back-button:hover svg { transform: translateX(-3px); }
  .post-back-button:focus-visible { outline: 2px solid #ffcb05; outline-offset: 3px; }
  .post-back-button:active { background: #20102f; }
  .account-security-links .post-back-button { padding: 8px 14px; border-color: #8e7132; border-radius: 9px; font-size: 13px; margin-bottom: 0; }
  .admin-panel-heading .post-back-button, .report-section-heading .post-back-button { margin-bottom: 0; flex-shrink: 0; }
  .account-security-links .post-back-button:hover { border-color: #ffcb05; }
  .account-security-action:hover svg { transform: none; }
  @media (prefers-reduced-motion: reduce) {
      .post-back-button, .post-back-button svg { transition: none; }
      .post-back-button:hover svg { transform: none; }
  }

  .auth-wrap {
      max-width: 420px;
      margin-inline: auto;
  }

  .auth-label {
      display: flex;
      flex-direction: column;
      gap: 4px;
      font-size: 12px;
      font-weight: 700;
      color: var(--color-nro-brown);
  }

  .auth-input {
      width: 100%;
      padding: 8px 10px;
      font-size: 14px;
      font-weight: 400;
      color: #222;
      background: #fff;
      border: 1px solid color-mix(in oklab, var(--color-nro-border) 60%, transparent);
      border-radius: 2px;
  }

  .auth-input:focus {
      outline: none;
      border-color: var(--color-nro-dark-orange);
      box-shadow: 0 0 0 2px color-mix(in oklab, var(--color-nro-orange) 35%, transparent);
  }

  .auth-password { position: relative; }
  .auth-password .auth-input { padding-right: 46px; }
  .auth-password-toggle {
      position: absolute;
      inset: 0 0 0 auto;
      width: 42px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #cdb8df;
      background: transparent;
      border: 0;
      border-radius: 2px;
      cursor: pointer;
  }
  .auth-password-toggle[hidden] { display: none; }
  .auth-password-toggle:hover { color: #ffcb05; }
  .auth-password-toggle:focus-visible { outline: 2px solid #ffcb05; outline-offset: -3px; }
  .auth-password-slash { display: none; }
  .auth-password-toggle[aria-pressed="true"] .auth-password-slash { display: block; }

  .auth-hint {
      font-size: 11px;
      font-weight: 400;
      color: color-mix(in oklab, var(--color-nro-brown) 70%, transparent);
  }

  .auth-alert {
      margin-bottom: 12px;
      padding: 8px 10px;
      font-size: 13px;
      border-radius: 2px;
      border: 1px solid;
  }

  .auth-alert-error {
      color: #9b1c1c;
      background: #fde8e8;
      border-color: #f8b4b4;
  }

  .auth-alert-info {
      color: var(--color-nro-brown);
      background: #faf5ff;
      border-color: color-mix(in oklab, var(--color-nro-border) 50%, transparent);
  }

  .auth-links {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 8px;
      margin-top: 16px;
      font-size: 13px;
      color: var(--color-nro-brown);
  }

  .auth-flash {
      max-width: 1000px;
      margin: 12px auto 0;
      width: calc(100% - 32px);
      padding: 8px 12px;
      font-size: 13px;
      color: #03543f;
      background: #def7ec;
      border: 1px solid #84e1bc;
      border-radius: 2px;
  }

/* Event theme: midnight purple surfaces, gold outlines and warm action buttons. */
:root {
    color-scheme: dark;
    --event-muted: #cdb8df;
    --event-surface: #20102f;
    --event-action: linear-gradient(100deg, #c90025, #e66b00);
}

body {
    min-height: 100vh;
    background-color: #170d29;
    background-image: linear-gradient(rgb(14 7 28 / .18), rgb(14 7 28 / .18)), url('../images/dragon-purple-background.png');
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    color: #fff;
}

@media (max-width: 767px) {
    body {
        background-image: linear-gradient(rgb(14 7 28 / .6), rgb(14 7 28 / .6)), url('../images/dragon-purple-background.png');
        background-attachment: scroll;
    }
}

header.bg-nro-brown,
footer.bg-nro-brown {
    background: #160b25;
    border-color: #ffcb05;
}

header.bg-nro-brown {
    border-bottom: 1px solid #ffcb05;
}

.zing-card {
    background: linear-gradient(115deg, #290c30, #151c3b);
    border: 1px solid #ffcb05;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgb(0 0 0 / 0.2);
}

.zing-tab-active {
    color: #ffcb05;
    border-color: #ffcb05;
}

.zing-btn-primary,
a.bg-nro-red,
a.bg-nro-dark-orange,
header nav a.bg-nro-orange {
    background: var(--event-action);
    color: #fff;
    border: 1px solid #ec9d24;
}

.zing-btn-primary:hover {
    filter: brightness(1.12);
}

.zing-card .bg-nro-brown {
    background-color: #351747;
}

.zing-card .text-gray-400,
.zing-card .text-gray-500,
.zing-card .text-gray-600,
.auth-hint {
    color: var(--event-muted);
}

.zing-card .text-gray-800 {
    color: #f5efff;
}

.zing-card .text-orange-600 {
    color: #ffcb05;
}

.zing-card .border-gray-50,
.zing-card .border-gray-100 {
    border-color: rgb(205 184 223 / 0.18);
}

.zing-card a.hover\:bg-gray-50:hover {
    background-color: #39204c;
}

.auth-input {
    color: #fff;
    background: #10091e;
    border-color: #695078;
}

.auth-input:focus {
    border-color: #ffcb05;
    box-shadow: 0 0 0 2px rgb(255 203 5 / 0.2);
}

.auth-alert-info {
    background: #351747;
    color: #f5efff;
}

main a.bg-white,
main a.bg-white\/50 {
    background: #261337;
    color: #f5efff;
    border-color: #8b6e9e;
}

main a.bg-white:hover,
main a.bg-white\/50:hover {
    background: #402052;
}

main span.bg-nro-red {
    background: var(--event-action);
    color: #fff;
}

.zing-card img[src$="user.svg"],
.zing-card img[src$="key-skeleton.svg"] {
    filter: invert(1);
}

.forum-toolbar,
.forum-toolbar-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.forum-toolbar {
    justify-content: space-between;
    padding: 0 4px;
}

.forum-toolbar-links { font-size: 13px; }
.forum-toolbar-links a { white-space: nowrap; }

.forum-toolbar-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 10px;
    border: 1px solid transparent;
    border-radius: 6px;
    color: #fff;
    transition: background-color 150ms, border-color 150ms;
}

.forum-toolbar-link:hover { background-color: #351747; }
.forum-toolbar-link.is-active {
    background: var(--event-action);
    border-color: #ec9d24;
    font-weight: 700;
}
.forum-toolbar-link:focus-visible {
    outline: 2px solid var(--color-nro-red);
    outline-offset: 3px;
}
.forum-compose-toolbar { margin-bottom: 16px; }

.forum-create-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 12px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.forum-create-button:focus-visible,
.forum-compose a:focus-visible {
    outline: 2px solid var(--color-nro-red);
    outline-offset: 3px;
}

.forum-compose-wrap { max-width: 680px; margin: 0 auto; }
.forum-compose-back {
    display: inline-block;
    margin-bottom: 14px;
    color: var(--event-muted);
    font-size: 13px;
}

.forum-compose { padding: 24px; }
.forum-compose-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
}

.forum-compose-heading h1,
.forum-compose-heading h2 {
    color: var(--color-nro-red);
    font-size: 18px;
    font-weight: 700;
}

.forum-compose-heading span,
.forum-compose-rules,
.forum-compose-hint {
    color: var(--event-muted);
    font-size: 13px;
    overflow-wrap: anywhere;
}

.forum-compose-rules {
    margin: 12px 0 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgb(205 184 223 / 0.18);
    line-height: 1.6;
}

.forum-compose-form { display: flex; flex-direction: column; gap: 16px; }
.forum-compose-form textarea { min-height: 170px; }
.forum-compose-notice {
    padding: 12px;
    background: #351747;
    border: 1px solid #8b6e9e;
    border-radius: 6px;
    font-size: 13px;
    line-height: 1.6;
}

.forum-compose-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 18px; font-size: 13px; }

.forum-toolbar button { cursor: pointer; font: inherit; }
.forum-compose-dialog {
    position: fixed;
    inset: 0;
    margin: auto;
    width: min(680px, calc(100% - 24px));
    max-height: calc(100dvh - 32px);
    overflow-y: auto;
    color: #fff;
}
.forum-compose-dialog::backdrop { background: rgb(8 4 18 / .72); }
.forum-compose-close { font-size: 26px; line-height: 1; color: var(--event-muted); cursor: pointer; }
.forum-compose-files { font-size: 12px; }
.forum-compose-files::file-selector-button { padding: 5px 8px; margin-right: 10px; background: #351747; border-radius: 4px; cursor: pointer; }
.forum-compose-previews { display: flex; gap: 10px; flex-wrap: wrap; }
.forum-compose-preview { position: relative; }
.forum-compose-preview img { width: 90px; height: 80px; object-fit: cover; border: 1px solid #695078; border-radius: 6px; }
.forum-compose-preview button { position: absolute; top: 3px; right: 3px; width: 22px; height: 22px; border-radius: 50%; background: #160b25; color: #fff; cursor: pointer; }
.forum-compose-dialog button:disabled { opacity: .6; cursor: wait; }

/* Shared footer and public terms page, using the existing event theme. */
.site-footer { padding: 24px 0; }
.site-footer-inner {
    max-width: 1000px;
    margin-inline: auto;
    padding-inline: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px 32px;
    font-size: 12px;
    line-height: 1.6;
}
.site-footer-brand { color: var(--event-muted); }
.site-footer-brand span { margin-inline: 8px; }
.site-footer-terms { font-weight: 600; white-space: nowrap; }
.site-footer a:hover,
.site-footer a[aria-current="page"] { color: #ffcb05; }
.site-footer a:focus-visible,
.terms-back:focus-visible {
    outline: 2px solid #ffcb05;
    outline-offset: 5px;
    border-radius: 2px;
}
.terms-page { padding-block: 32px 48px; }
.terms-back {
    display: inline-block;
    margin-bottom: 20px;
    color: var(--event-muted);
    font-size: 13px;
}
.terms-back:hover { color: #ffcb05; }
.terms-document { padding: clamp(20px, 4vw, 40px); }
.terms-heading {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid rgb(205 184 223 / .2);
}
.terms-eyebrow {
    margin-bottom: 8px;
    color: var(--event-muted);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .08em;
}
.terms-heading h1 {
    color: #ffcb05;
    font-size: clamp(24px, 4vw, 32px);
    font-weight: 700;
    line-height: 1.3;
}
.terms-content {
    color: #f5efff;
    font-size: 15px;
    line-height: 1.85;
    overflow-wrap: anywhere;
}
.terms-content p + p { margin-top: 12px; }
.terms-section {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid rgb(205 184 223 / .18);
}
.terms-section h2 {
    margin-bottom: 16px;
    color: #ffcb05;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.6;
}
.terms-section h3 {
    margin: 18px 0 8px;
    font-size: 15px;
    font-weight: 700;
}
.terms-section ul { list-style: disc; padding-left: 22px; margin-block: 12px; }
.terms-section li + li { margin-top: 10px; }
.terms-section li::marker { color: #ffcb05; }
.account-otp-input { text-align: center; font-size: 26px; font-weight: 700; letter-spacing: .35em; font-family: Consolas, monospace; }
.account-email-resend { margin-top: 22px; padding-top: 16px; border-top: 1px solid #70527b; }
.account-email-resend summary { color: #ffdb60; cursor: pointer; font-size: 13px; }
.account-email-resend[open] summary { margin-bottom: 16px; }
.account-email-cancel { display: flex; justify-content: center; margin-top: 18px; }
.account-email-cancel button { color: #ffdb60; font-size: 12px; cursor: pointer; }
.account-security-submit:focus-visible, .account-email-resend summary:focus-visible { outline: 2px solid #ffcb05; outline-offset: 3px; }
@media (max-width: 600px) {
    .site-footer-inner { flex-direction: column; text-align: center; gap: 10px; }
    .terms-page { padding-top: 24px; }
    .terms-content { font-size: 14px; }
    .terms-section h2 { font-size: 16px; }
}

@media (max-width: 480px) {
    .forum-compose { padding: 18px; }
    .forum-toolbar-links { gap: 10px; font-size: 12px; }
}
