@charset "UTF-8";
/*!
Theme Name: samisamou
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: samisamou
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/
/*!
 * Bootstrap  v5.3.8 (https://getbootstrap.com/)
 * Copyright 2011-2025 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root,
[data-bs-theme=light] {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #FF4655;
  --bs-secondary: #5A6672;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #ECE8E1;
  --bs-dark: #0F1923;
  --bs-primary-rgb: 255, 70, 85;
  --bs-secondary-rgb: 90, 102, 114;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 236, 232, 225;
  --bs-dark-rgb: 15, 25, 35;
  --bs-primary-text-emphasis: #661c22;
  --bs-secondary-text-emphasis: rgb(14.1176470588%, 16%, 17.8823529412%);
  --bs-success-text-emphasis: rgb(3.9215686275%, 21.1764705882%, 13.1764705882%);
  --bs-info-text-emphasis: rgb(2.0392156863%, 31.6862745098%, 37.6470588235%);
  --bs-warning-text-emphasis: rgb(40%, 30.2745098039%, 1.0980392157%);
  --bs-danger-text-emphasis: rgb(34.5098039216%, 8.3137254902%, 10.8235294118%);
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #ffdadd;
  --bs-secondary-bg-subtle: rgb(87.0588235294%, 88%, 88.9411764706%);
  --bs-success-bg-subtle: rgb(81.9607843137%, 90.5882352941%, 86.5882352941%);
  --bs-info-bg-subtle: rgb(81.0196078431%, 95.8431372549%, 98.8235294118%);
  --bs-warning-bg-subtle: rgb(100%, 95.137254902%, 80.5490196078%);
  --bs-danger-bg-subtle: rgb(97.2549019608%, 84.1568627451%, 85.4117647059%);
  --bs-light-bg-subtle: rgb(98.6274509804%, 98.8235294118%, 99.0196078431%);
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #ffb5bb;
  --bs-secondary-border-subtle: rgb(74.1176470588%, 76%, 77.8823529412%);
  --bs-success-border-subtle: rgb(63.9215686275%, 81.1764705882%, 73.1764705882%);
  --bs-info-border-subtle: rgb(62.0392156863%, 91.6862745098%, 97.6470588235%);
  --bs-warning-border-subtle: rgb(100%, 90.2745098039%, 61.0980392157%);
  --bs-danger-border-subtle: rgb(94.5098039216%, 68.3137254902%, 70.8235294118%);
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: "Barlow", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: "Barlow", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #0F1923;
  --bs-body-color-rgb: 15, 25, 35;
  --bs-body-bg: #ECE8E1;
  --bs-body-bg-rgb: 236, 232, 225;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(15, 25, 35, 0.75);
  --bs-secondary-color-rgb: 15, 25, 35;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(15, 25, 35, 0.5);
  --bs-tertiary-color-rgb: 15, 25, 35;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #FF4655;
  --bs-link-color-rgb: 255, 70, 85;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #cc3844;
  --bs-link-hover-color-rgb: 204, 56, 68;
  --bs-code-color: #d63384;
  --bs-highlight-color: #0F1923;
  --bs-highlight-bg: rgb(100%, 95.137254902%, 80.5490196078%);
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0;
  --bs-border-radius-sm: 0;
  --bs-border-radius-lg: 0;
  --bs-border-radius-xl: 0;
  --bs-border-radius-xxl: 0;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(255, 70, 85, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;
}

[data-bs-theme=dark] {
  color-scheme: dark;
  --bs-body-color: #dee2e6;
  --bs-body-color-rgb: 222, 226, 230;
  --bs-body-bg: #212529;
  --bs-body-bg-rgb: 33, 37, 41;
  --bs-emphasis-color: #fff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: rgba(222, 226, 230, 0.75);
  --bs-secondary-color-rgb: 222, 226, 230;
  --bs-secondary-bg: #343a40;
  --bs-secondary-bg-rgb: 52, 58, 64;
  --bs-tertiary-color: rgba(222, 226, 230, 0.5);
  --bs-tertiary-color-rgb: 222, 226, 230;
  --bs-tertiary-bg: rgb(16.6666666667%, 18.6274509804%, 20.5882352941%);
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: #ff9099;
  --bs-secondary-text-emphasis: rgb(61.1764705882%, 64%, 66.8235294118%);
  --bs-success-text-emphasis: rgb(45.8823529412%, 71.7647058824%, 59.7647058824%);
  --bs-info-text-emphasis: rgb(43.0588235294%, 87.5294117647%, 96.4705882353%);
  --bs-warning-text-emphasis: rgb(100%, 85.4117647059%, 41.6470588235%);
  --bs-danger-text-emphasis: rgb(91.7647058824%, 52.4705882353%, 56.2352941176%);
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: #330e11;
  --bs-secondary-bg-subtle: rgb(7.0588235294%, 8%, 8.9411764706%);
  --bs-success-bg-subtle: rgb(1.9607843137%, 10.5882352941%, 6.5882352941%);
  --bs-info-bg-subtle: rgb(1.0196078431%, 15.8431372549%, 18.8235294118%);
  --bs-warning-bg-subtle: rgb(20%, 15.137254902%, 0.5490196078%);
  --bs-danger-bg-subtle: rgb(17.2549019608%, 4.1568627451%, 5.4117647059%);
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: #992a33;
  --bs-secondary-border-subtle: rgb(21.1764705882%, 24%, 26.8235294118%);
  --bs-success-border-subtle: rgb(5.8823529412%, 31.7647058824%, 19.7647058824%);
  --bs-info-border-subtle: rgb(3.0588235294%, 47.5294117647%, 56.4705882353%);
  --bs-warning-border-subtle: rgb(60%, 45.4117647059%, 1.6470588235%);
  --bs-danger-border-subtle: rgb(51.7647058824%, 12.4705882353%, 16.2352941176%);
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: #ff9099;
  --bs-link-hover-color: rgb(100%, 65.1764705882%, 68%);
  --bs-link-color-rgb: 255, 144, 153;
  --bs-link-hover-color-rgb: 255, 166, 173;
  --bs-code-color: rgb(90.3529411765%, 52%, 71.0588235294%);
  --bs-highlight-color: #dee2e6;
  --bs-highlight-bg: rgb(40%, 30.2745098039%, 1.0980392157%);
  --bs-border-color: #495057;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: rgb(45.8823529412%, 71.7647058824%, 59.7647058824%);
  --bs-form-valid-border-color: rgb(45.8823529412%, 71.7647058824%, 59.7647058824%);
  --bs-form-invalid-color: rgb(91.7647058824%, 52.4705882353%, 56.2352941176%);
  --bs-form-invalid-border-color: rgb(91.7647058824%, 52.4705882353%, 56.2352941176%);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}

body {
  margin: 0;
  font-family: var(--bs-body-font-family);
  font-size: var(--bs-body-font-size);
  font-weight: var(--bs-body-font-weight);
  line-height: var(--bs-body-line-height);
  color: var(--bs-body-color);
  text-align: var(--bs-body-text-align);
  background-color: var(--bs-body-bg);
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
  margin: 1rem 0;
  color: inherit;
  border: 0;
  border-top: var(--bs-border-width) solid;
  opacity: 0.25;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--bs-heading-color);
}

h1, .h1 {
  font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 2.5rem;
  }
}

h2, .h2 {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  h2, .h2 {
    font-size: 2rem;
  }
}

h3, .h3 {
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  h3, .h3 {
    font-size: 1.75rem;
  }
}

h4, .h4 {
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  h4, .h4 {
    font-size: 1.5rem;
  }
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title] {
  text-decoration: underline dotted;
  cursor: help;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul {
  padding-left: 2rem;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small, .small {
  font-size: 0.875em;
}

mark, .mark {
  padding: 0.1875em;
  color: var(--bs-highlight-color);
  background-color: var(--bs-highlight-bg);
}

sub,
sup {
  position: relative;
  font-size: 0.75em;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
  text-decoration: underline;
}
a:hover {
  --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}

a:not([href]):not([class]), a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  font-size: 0.875em;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

code {
  font-size: 0.875em;
  color: var(--bs-code-color);
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.1875rem 0.375rem;
  font-size: 0.875em;
  color: var(--bs-body-bg);
  background-color: var(--bs-body-color);
  border-radius: 0;
}
kbd kbd {
  padding: 0;
  font-size: 1em;
}

figure {
  margin: 0 0 1rem;
}

img,
svg {
  vertical-align: middle;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-secondary-color);
  text-align: left;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}

label {
  display: inline-block;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}
select:disabled {
  opacity: 1;
}

[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
  display: none !important;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}
button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

textarea {
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  line-height: inherit;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  legend {
    font-size: 1.5rem;
  }
}
legend + * {
  clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
  padding: 0;
}

::-webkit-inner-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-cancel-button {
  cursor: pointer;
  filter: grayscale(1);
}

/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
  padding: 0;
}

::file-selector-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

iframe {
  border: 0;
}

summary {
  display: list-item;
  cursor: pointer;
}

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.625rem + 4.5vw);
}
@media (min-width: 1200px) {
  .display-1 {
    font-size: 5rem;
  }
}

.display-2 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.575rem + 3.9vw);
}
@media (min-width: 1200px) {
  .display-2 {
    font-size: 4.5rem;
  }
}

.display-3 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.525rem + 3.3vw);
}
@media (min-width: 1200px) {
  .display-3 {
    font-size: 4rem;
  }
}

.display-4 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.475rem + 2.7vw);
}
@media (min-width: 1200px) {
  .display-4 {
    font-size: 3.5rem;
  }
}

.display-5 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .display-5 {
    font-size: 3rem;
  }
}

.display-6 {
  font-weight: 300;
  line-height: 1.2;
  font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .display-6 {
    font-size: 2.5rem;
  }
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 0.875em;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}
.blockquote > :last-child {
  margin-bottom: 0;
}

.blockquote-footer {
  margin-top: -1rem;
  margin-bottom: 1rem;
  font-size: 0.875em;
  color: #6c757d;
}
.blockquote-footer::before {
  content: "— ";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: var(--bs-body-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1400px;
}

.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0;
  }
  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333333%;
  }
  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
  .g-sm-0,
  .gx-sm-0 {
    --bs-gutter-x: 0;
  }
  .g-sm-0,
  .gy-sm-0 {
    --bs-gutter-y: 0;
  }
  .g-sm-1,
  .gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-sm-1,
  .gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-sm-2,
  .gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-sm-2,
  .gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-sm-3,
  .gx-sm-3 {
    --bs-gutter-x: 1rem;
  }
  .g-sm-3,
  .gy-sm-3 {
    --bs-gutter-y: 1rem;
  }
  .g-sm-4,
  .gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-sm-4,
  .gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-sm-5,
  .gx-sm-5 {
    --bs-gutter-x: 3rem;
  }
  .g-sm-5,
  .gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0;
  }
  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
  .g-md-0,
  .gx-md-0 {
    --bs-gutter-x: 0;
  }
  .g-md-0,
  .gy-md-0 {
    --bs-gutter-y: 0;
  }
  .g-md-1,
  .gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 1rem;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 1rem;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 3rem;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0;
  }
  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
  .g-lg-0,
  .gx-lg-0 {
    --bs-gutter-x: 0;
  }
  .g-lg-0,
  .gy-lg-0 {
    --bs-gutter-y: 0;
  }
  .g-lg-1,
  .gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 1rem;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 1rem;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 3rem;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0;
  }
  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
  .g-xl-0,
  .gx-xl-0 {
    --bs-gutter-x: 0;
  }
  .g-xl-0,
  .gy-xl-0 {
    --bs-gutter-y: 0;
  }
  .g-xl-1,
  .gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xl-1,
  .gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xl-2,
  .gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xl-2,
  .gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xl-3,
  .gx-xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xl-3,
  .gy-xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xl-4,
  .gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xl-4,
  .gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xl-5,
  .gx-xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xl-5,
  .gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0;
  }
  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xxl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xxl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xxl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xxl-11 {
    margin-left: 91.66666667%;
  }
  .g-xxl-0,
  .gx-xxl-0 {
    --bs-gutter-x: 0;
  }
  .g-xxl-0,
  .gy-xxl-0 {
    --bs-gutter-y: 0;
  }
  .g-xxl-1,
  .gx-xxl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xxl-1,
  .gy-xxl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xxl-2,
  .gx-xxl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xxl-2,
  .gy-xxl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xxl-3,
  .gx-xxl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xxl-3,
  .gy-xxl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xxl-4,
  .gx-xxl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xxl-4,
  .gy-xxl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xxl-5,
  .gx-xxl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xxl-5,
  .gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}
.table {
  --bs-table-color-type: initial;
  --bs-table-bg-type: initial;
  --bs-table-color-state: initial;
  --bs-table-bg-state: initial;
  --bs-table-color: var(--bs-emphasis-color);
  --bs-table-bg: var(--bs-body-bg);
  --bs-table-border-color: var(--bs-border-color);
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: var(--bs-emphasis-color);
  --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);
  --bs-table-active-color: var(--bs-emphasis-color);
  --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
  --bs-table-hover-color: var(--bs-emphasis-color);
  --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
  width: 100%;
  margin-bottom: 1rem;
  vertical-align: top;
  border-color: var(--bs-table-border-color);
}
.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
  background-color: var(--bs-table-bg);
  border-bottom-width: var(--bs-border-width);
  box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
}
.table > tbody {
  vertical-align: inherit;
}
.table > thead {
  vertical-align: bottom;
}

.table-group-divider {
  border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
}

.caption-top {
  caption-side: top;
}

.table-sm > :not(caption) > * > * {
  padding: 0.25rem 0.25rem;
}

.table-bordered > :not(caption) > * {
  border-width: var(--bs-border-width) 0;
}
.table-bordered > :not(caption) > * > * {
  border-width: 0 var(--bs-border-width);
}

.table-borderless > :not(caption) > * > * {
  border-bottom-width: 0;
}
.table-borderless > :not(:first-child) {
  border-top-width: 0;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.table-striped-columns > :not(caption) > tr > :nth-child(even) {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.table-active {
  --bs-table-color-state: var(--bs-table-active-color);
  --bs-table-bg-state: var(--bs-table-active-bg);
}

.table-hover > tbody > tr:hover > * {
  --bs-table-color-state: var(--bs-table-hover-color);
  --bs-table-bg-state: var(--bs-table-hover-bg);
}

.table-primary {
  --bs-table-color: #000;
  --bs-table-bg: #ffdadd;
  --bs-table-border-color: rgb(80%, 68.3921568627%, 69.3333333333%);
  --bs-table-striped-bg: rgb(95%, 81.2156862745%, 82.3333333333%);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(90%, 76.9411764706%, 78%);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(92.5%, 79.0784313725%, 80.1666666667%);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #000;
  --bs-table-bg: rgb(87.0588235294%, 88%, 88.9411764706%);
  --bs-table-border-color: rgb(69.6470588235%, 70.4%, 71.1529411765%);
  --bs-table-striped-bg: rgb(82.7058823529%, 83.6%, 84.4941176471%);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(78.3529411765%, 79.2%, 80.0470588235%);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(80.5294117647%, 81.4%, 82.2705882353%);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-success {
  --bs-table-color: #000;
  --bs-table-bg: rgb(81.9607843137%, 90.5882352941%, 86.5882352941%);
  --bs-table-border-color: rgb(65.568627451%, 72.4705882353%, 69.2705882353%);
  --bs-table-striped-bg: rgb(77.862745098%, 86.0588235294%, 82.2588235294%);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(73.7647058824%, 81.5294117647%, 77.9294117647%);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(75.8137254902%, 83.7941176471%, 80.0941176471%);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-info {
  --bs-table-color: #000;
  --bs-table-bg: rgb(81.0196078431%, 95.8431372549%, 98.8235294118%);
  --bs-table-border-color: rgb(64.8156862745%, 76.6745098039%, 79.0588235294%);
  --bs-table-striped-bg: rgb(76.968627451%, 91.0509803922%, 93.8823529412%);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(72.9176470588%, 86.2588235294%, 88.9411764706%);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(74.9431372549%, 88.6549019608%, 91.4117647059%);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-warning {
  --bs-table-color: #000;
  --bs-table-bg: rgb(100%, 95.137254902%, 80.5490196078%);
  --bs-table-border-color: rgb(80%, 76.1098039216%, 64.4392156863%);
  --bs-table-striped-bg: rgb(95%, 90.3803921569%, 76.5215686275%);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(90%, 85.6235294118%, 72.4941176471%);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(92.5%, 88.0019607843%, 74.5078431373%);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-danger {
  --bs-table-color: #000;
  --bs-table-bg: rgb(97.2549019608%, 84.1568627451%, 85.4117647059%);
  --bs-table-border-color: rgb(77.8039215686%, 67.3254901961%, 68.3294117647%);
  --bs-table-striped-bg: rgb(92.3921568627%, 79.9490196078%, 81.1411764706%);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(87.5294117647%, 75.7411764706%, 76.8705882353%);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(89.9607843137%, 77.8450980392%, 79.0058823529%);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-light {
  --bs-table-color: #000;
  --bs-table-bg: #ECE8E1;
  --bs-table-border-color: rgb(74.0392156863%, 72.7843137255%, 70.5882352941%);
  --bs-table-striped-bg: rgb(87.9215686275%, 86.431372549%, 83.8235294118%);
  --bs-table-striped-color: #000;
  --bs-table-active-bg: rgb(83.2941176471%, 81.8823529412%, 79.4117647059%);
  --bs-table-active-color: #000;
  --bs-table-hover-bg: rgb(85.6078431373%, 84.1568627451%, 81.6176470588%);
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-dark {
  --bs-table-color: #fff;
  --bs-table-bg: #0F1923;
  --bs-table-border-color: #3f474f;
  --bs-table-striped-bg: rgb(10.5882352941%, 14.3137254902%, 18.0392156863%);
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: #273039;
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: rgb(12.9411764706%, 16.568627451%, 20.1960784314%);
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1399.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.form-label {
  margin-bottom: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #5A6672;
}

.col-form-label {
  padding-top: calc(0.375rem + var(--bs-border-width));
  padding-bottom: calc(0.375rem + var(--bs-border-width));
  margin-bottom: 0;
  font-size: inherit;
  font-weight: 500;
  line-height: 1.5;
  color: #5A6672;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + var(--bs-border-width));
  padding-bottom: calc(0.5rem + var(--bs-border-width));
  font-size: 1.25rem;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + var(--bs-border-width));
  padding-bottom: calc(0.25rem + var(--bs-border-width));
  font-size: 0.875rem;
}

.form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  appearance: none;
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  transition: border-color 0.1s ease-out, box-shadow 0.1s ease-out, background-color 0.1s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  border-color: rgb(100%, 63.7254901961%, 66.6666666667%);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
}
.form-control::-webkit-date-and-time-value {
  min-width: 85px;
  height: 1.5em;
  margin: 0;
}
.form-control::-webkit-datetime-edit {
  display: block;
  padding: 0;
}
.form-control::placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control:disabled {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  margin-inline-end: 0.75rem;
  color: var(--bs-body-color);
  background-color: var(--bs-tertiary-bg);
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: var(--bs-border-width);
  border-radius: 0;
  transition: color 0.1s ease-out, background-color 0.1s ease-out, border-color 0.1s ease-out, box-shadow 0.1s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::file-selector-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: var(--bs-secondary-bg);
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  line-height: 1.5;
  color: var(--bs-body-color);
  background-color: transparent;
  border: solid transparent;
  border-width: var(--bs-border-width) 0;
}
.form-control-plaintext:focus {
  outline: 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}
.form-control-sm::file-selector-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  margin-inline-end: 0.5rem;
}

.form-control-lg {
  min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: var(--bs-border-radius-lg);
}
.form-control-lg::file-selector-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  margin-inline-end: 1rem;
}

textarea.form-control {
  min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-sm {
  min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-lg {
  min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-control-color {
  width: 3rem;
  height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
  padding: 0.375rem;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  border: 0 !important;
  border-radius: var(--bs-border-radius);
}
.form-control-color::-webkit-color-swatch {
  border: 0 !important;
  border-radius: var(--bs-border-radius);
}
.form-control-color.form-control-sm {
  height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}
.form-control-color.form-control-lg {
  height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  display: block;
  width: 100%;
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  appearance: none;
  background-color: var(--bs-body-bg);
  background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  transition: border-color 0.1s ease-out, box-shadow 0.1s ease-out, background-color 0.1s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-select {
    transition: none;
  }
}
.form-select:focus {
  border-color: rgb(100%, 63.7254901961%, 66.6666666667%);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
}
.form-select[multiple], .form-select[size]:not([size="1"]) {
  padding-right: 0.75rem;
  background-image: none;
}
.form-select:disabled {
  background-color: var(--bs-secondary-bg);
}
.form-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 var(--bs-body-color);
}

.form-select-sm {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}

.form-select-lg {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
  border-radius: var(--bs-border-radius-lg);
}

[data-bs-theme=dark] .form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.form-check {
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5em;
  margin-bottom: 0.125rem;
}
.form-check .form-check-input {
  float: left;
  margin-left: -1.5em;
}

.form-check-reverse {
  padding-right: 1.5em;
  padding-left: 0;
  text-align: right;
}
.form-check-reverse .form-check-input {
  float: right;
  margin-right: -1.5em;
  margin-left: 0;
}

.form-check-input {
  --bs-form-check-bg: var(--bs-body-bg);
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  appearance: none;
  background-color: var(--bs-form-check-bg);
  background-image: var(--bs-form-check-bg-image);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: var(--bs-border-width) solid var(--bs-border-color);
  print-color-adjust: exact;
}
.form-check-input[type=checkbox] {
  border-radius: 0;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: rgb(100%, 63.7254901961%, 66.6666666667%);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
}
.form-check-input:checked {
  background-color: #FF4655;
  border-color: #FF4655;
}
.form-check-input:checked[type=checkbox] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #FF4655;
  border-color: #FF4655;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  cursor: default;
  opacity: 0.5;
}

.form-check-label {
  cursor: pointer;
}

.form-switch {
  padding-left: 2.5em;
}
.form-switch .form-check-input {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
  width: 2em;
  margin-left: -2.5em;
  background-image: var(--bs-form-switch-bg);
  background-position: left center;
  border-radius: 2em;
  transition: background-position 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-switch .form-check-input {
    transition: none;
  }
}
.form-switch .form-check-input:focus {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgb%28100%, 63.7254901961%, 66.6666666667%%29'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-position: right center;
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.form-switch.form-check-reverse {
  padding-right: 2.5em;
  padding-left: 0;
}
.form-switch.form-check-reverse .form-check-input {
  margin-right: -2.5em;
  margin-left: 0;
}

.form-check-inline {
  display: inline-block;
  margin-right: 1rem;
}

.btn-check {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.btn-check[disabled] + .btn, .btn-check:disabled + .btn {
  pointer-events: none;
  filter: none;
  opacity: 0.65;
}

[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e");
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  appearance: none;
  background-color: transparent;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #ECE8E1, 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #ECE8E1, 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
}
.form-range::-moz-focus-outer {
  border: 0;
}
.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  appearance: none;
  background-color: #FF4655;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: rgb(100%, 78.2352941176%, 80%);
}
.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  appearance: none;
  background-color: #FF4655;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: rgb(100%, 78.2352941176%, 80%);
}
.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range:disabled {
  pointer-events: none;
}
.form-range:disabled::-webkit-slider-thumb {
  background-color: var(--bs-secondary-color);
}
.form-range:disabled::-moz-range-thumb {
  background-color: var(--bs-secondary-color);
}

.form-floating {
  position: relative;
}
.form-floating > .form-control,
.form-floating > .form-control-plaintext,
.form-floating > .form-select {
  height: calc(3.5rem + calc(var(--bs-border-width) * 2));
  min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
  line-height: 1.25;
}
.form-floating > label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  max-width: 100%;
  height: 100%;
  padding: 1rem 0.75rem;
  overflow: hidden;
  color: rgba(var(--bs-body-color-rgb), 0.65);
  text-align: start;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
  border: var(--bs-border-width) solid transparent;
  transform-origin: 0 0;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-floating > label {
    transition: none;
  }
}
.form-floating > .form-control,
.form-floating > .form-control-plaintext {
  padding: 1rem 0.75rem;
}
.form-floating > .form-control::placeholder,
.form-floating > .form-control-plaintext::placeholder {
  color: transparent;
}
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:-webkit-autofill,
.form-floating > .form-control-plaintext:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
  padding-left: 0.75rem;
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-control-plaintext ~ label,
.form-floating > .form-select ~ label {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:-webkit-autofill ~ label {
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > textarea:focus ~ label::after,
.form-floating > textarea:not(:placeholder-shown) ~ label::after {
  position: absolute;
  inset: 1rem 0.375rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: var(--bs-border-radius);
}
.form-floating > textarea:disabled ~ label::after {
  background-color: var(--bs-secondary-bg);
}
.form-floating > .form-control-plaintext ~ label {
  border-width: var(--bs-border-width) 0;
}
.form-floating > :disabled ~ label,
.form-floating > .form-control:disabled ~ label {
  color: #6c757d;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-select,
.input-group > .form-floating {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}
.input-group > .form-control:focus,
.input-group > .form-select:focus,
.input-group > .form-floating:focus-within {
  z-index: 5;
}
.input-group .btn {
  position: relative;
  z-index: 2;
}
.input-group .btn:focus {
  z-index: 5;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-tertiary-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
}

.input-group-lg > .form-control,
.input-group-lg > .form-select,
.input-group-lg > .input-group-text,
.input-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  border-radius: var(--bs-border-radius-lg);
}

.input-group-sm > .form-control,
.input-group-sm > .form-select,
.input-group-sm > .input-group-text,
.input-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  border-radius: var(--bs-border-radius-sm);
}

.input-group-lg > .form-select,
.input-group-sm > .form-select {
  padding-right: 3rem;
}

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-left: calc(-1 * var(--bs-border-width));
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .form-floating:not(:first-child) > .form-control,
.input-group > .form-floating:not(:first-child) > .form-select {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-valid-color);
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: var(--bs-success);
  border-radius: var(--bs-border-radius);
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: var(--bs-form-valid-border-color);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .form-select:valid, .form-select.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated .form-control-color:valid, .form-control-color.is-valid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
  background-color: var(--bs-form-valid-color);
}
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: var(--bs-form-valid-color);
}

.form-check-inline .form-check-input ~ .valid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
.was-validated .input-group > .form-select:not(:focus):valid,
.input-group > .form-select:not(:focus).is-valid,
.was-validated .input-group > .form-floating:not(:focus-within):valid,
.input-group > .form-floating:not(:focus-within).is-valid {
  z-index: 3;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-invalid-color);
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  color: #fff;
  background-color: var(--bs-danger);
  border-radius: var(--bs-border-radius);
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .form-select:invalid, .form-select.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated .form-control-color:invalid, .form-control-color.is-invalid {
  width: calc(3rem + calc(1.5em + 0.75rem));
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  background-color: var(--bs-form-invalid-color);
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: var(--bs-form-invalid-color);
}

.form-check-inline .form-check-input ~ .invalid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
.was-validated .input-group > .form-select:not(:focus):invalid,
.input-group > .form-select:not(:focus).is-invalid,
.was-validated .input-group > .form-floating:not(:focus-within):invalid,
.input-group > .form-floating:not(:focus-within).is-invalid {
  z-index: 4;
}

.btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 1rem;
  --bs-btn-font-weight: 600;
  --bs-btn-line-height: 1.5;
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  transition: color 0.1s ease-out, background-color 0.1s ease-out, border-color 0.1s ease-out, box-shadow 0.1s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}
.btn-check + .btn:hover {
  color: var(--bs-btn-color);
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}
.btn:focus-visible {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:focus-visible + .btn {
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
  color: var(--bs-btn-active-color);
  background-color: var(--bs-btn-active-bg);
  border-color: var(--bs-btn-active-border-color);
}
.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:checked:focus-visible + .btn {
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  color: var(--bs-btn-disabled-color);
  pointer-events: none;
  background-color: var(--bs-btn-disabled-bg);
  border-color: var(--bs-btn-disabled-border-color);
  opacity: var(--bs-btn-disabled-opacity);
}

.btn-primary {
  --bs-btn-color: #000;
  --bs-btn-bg: #FF4655;
  --bs-btn-border-color: #FF4655;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(100%, 38.3333333333%, 43.3333333333%);
  --bs-btn-hover-border-color: rgb(100%, 34.7058823529%, 40%);
  --bs-btn-focus-shadow-rgb: 217, 60, 72;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ff6b77;
  --bs-btn-active-border-color: rgb(100%, 34.7058823529%, 40%);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #FF4655;
  --bs-btn-disabled-border-color: #FF4655;
}

.btn-secondary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #5A6672;
  --bs-btn-border-color: #5A6672;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(30%, 34%, 38%);
  --bs-btn-hover-border-color: rgb(28.2352941176%, 32%, 35.7647058824%);
  --bs-btn-focus-shadow-rgb: 115, 125, 135;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(28.2352941176%, 32%, 35.7647058824%);
  --bs-btn-active-border-color: rgb(26.4705882353%, 30%, 33.5294117647%);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #5A6672;
  --bs-btn-disabled-border-color: #5A6672;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(8.3333333333%, 45%, 28%);
  --bs-btn-hover-border-color: rgb(7.8431372549%, 42.3529411765%, 26.3529411765%);
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(7.8431372549%, 42.3529411765%, 26.3529411765%);
  --bs-btn-active-border-color: rgb(7.3529411765%, 39.7058823529%, 24.7058823529%);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #198754;
  --bs-btn-disabled-border-color: #198754;
}

.btn-info {
  --bs-btn-color: #000;
  --bs-btn-bg: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(19.3333333333%, 82.3333333333%, 95%);
  --bs-btn-hover-border-color: rgb(14.5882352941%, 81.2941176471%, 94.7058823529%);
  --bs-btn-focus-shadow-rgb: 11, 172, 204;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(24.0784313725%, 83.3725490196%, 95.2941176471%);
  --bs-btn-active-border-color: rgb(14.5882352941%, 81.2941176471%, 94.7058823529%);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #0dcaf0;
  --bs-btn-disabled-border-color: #0dcaf0;
}

.btn-warning {
  --bs-btn-color: #000;
  --bs-btn-bg: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(100%, 79.3333333333%, 17.3333333333%);
  --bs-btn-hover-border-color: rgb(100%, 78.1176470588%, 12.4705882353%);
  --bs-btn-focus-shadow-rgb: 217, 164, 6;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(100%, 80.5490196078%, 22.1960784314%);
  --bs-btn-active-border-color: rgb(100%, 78.1176470588%, 12.4705882353%);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #ffc107;
  --bs-btn-disabled-border-color: #ffc107;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(73.3333333333%, 17.6666666667%, 23%);
  --bs-btn-hover-border-color: rgb(69.0196078431%, 16.6274509804%, 21.6470588235%);
  --bs-btn-focus-shadow-rgb: 225, 83, 97;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(69.0196078431%, 16.6274509804%, 21.6470588235%);
  --bs-btn-active-border-color: rgb(64.7058823529%, 15.5882352941%, 20.2941176471%);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #dc3545;
  --bs-btn-disabled-border-color: #dc3545;
}

.btn-light {
  --bs-btn-color: #000;
  --bs-btn-bg: #ECE8E1;
  --bs-btn-border-color: #ECE8E1;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: rgb(78.6666666667%, 77.3333333333%, 75%);
  --bs-btn-hover-border-color: rgb(74.0392156863%, 72.7843137255%, 70.5882352941%);
  --bs-btn-focus-shadow-rgb: 201, 197, 191;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: rgb(74.0392156863%, 72.7843137255%, 70.5882352941%);
  --bs-btn-active-border-color: rgb(69.4117647059%, 68.2352941176%, 66.1764705882%);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #ECE8E1;
  --bs-btn-disabled-border-color: #ECE8E1;
}

.btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: #0F1923;
  --bs-btn-border-color: #0F1923;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(20%, 23.3333333333%, 26.6666666667%);
  --bs-btn-hover-border-color: #273039;
  --bs-btn-focus-shadow-rgb: 51, 60, 68;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #3f474f;
  --bs-btn-active-border-color: #273039;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #0F1923;
  --bs-btn-disabled-border-color: #0F1923;
}

.btn-outline-primary {
  --bs-btn-color: #FF4655;
  --bs-btn-border-color: #FF4655;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #FF4655;
  --bs-btn-hover-border-color: #FF4655;
  --bs-btn-focus-shadow-rgb: 255, 70, 85;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #FF4655;
  --bs-btn-active-border-color: #FF4655;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #FF4655;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #FF4655;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #5A6672;
  --bs-btn-border-color: #5A6672;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #5A6672;
  --bs-btn-hover-border-color: #5A6672;
  --bs-btn-focus-shadow-rgb: 90, 102, 114;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #5A6672;
  --bs-btn-active-border-color: #5A6672;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #5A6672;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #5A6672;
  --bs-gradient: none;
}

.btn-outline-success {
  --bs-btn-color: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #198754;
  --bs-btn-hover-border-color: #198754;
  --bs-btn-focus-shadow-rgb: 25, 135, 84;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #198754;
  --bs-btn-active-border-color: #198754;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #198754;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #198754;
  --bs-gradient: none;
}

.btn-outline-info {
  --bs-btn-color: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #0dcaf0;
  --bs-btn-hover-border-color: #0dcaf0;
  --bs-btn-focus-shadow-rgb: 13, 202, 240;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #0dcaf0;
  --bs-btn-active-border-color: #0dcaf0;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0dcaf0;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0dcaf0;
  --bs-gradient: none;
}

.btn-outline-warning {
  --bs-btn-color: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ffc107;
  --bs-btn-hover-border-color: #ffc107;
  --bs-btn-focus-shadow-rgb: 255, 193, 7;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ffc107;
  --bs-btn-active-border-color: #ffc107;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #ffc107;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #ffc107;
  --bs-gradient: none;
}

.btn-outline-danger {
  --bs-btn-color: #dc3545;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #dc3545;
  --bs-btn-hover-border-color: #dc3545;
  --bs-btn-focus-shadow-rgb: 220, 53, 69;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #dc3545;
  --bs-btn-active-border-color: #dc3545;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #dc3545;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #dc3545;
  --bs-gradient: none;
}

.btn-outline-light {
  --bs-btn-color: #ECE8E1;
  --bs-btn-border-color: #ECE8E1;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ECE8E1;
  --bs-btn-hover-border-color: #ECE8E1;
  --bs-btn-focus-shadow-rgb: 236, 232, 225;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ECE8E1;
  --bs-btn-active-border-color: #ECE8E1;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #ECE8E1;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #ECE8E1;
  --bs-gradient: none;
}

.btn-outline-dark {
  --bs-btn-color: #0F1923;
  --bs-btn-border-color: #0F1923;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0F1923;
  --bs-btn-hover-border-color: #0F1923;
  --bs-btn-focus-shadow-rgb: 15, 25, 35;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0F1923;
  --bs-btn-active-border-color: #0F1923;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0F1923;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0F1923;
  --bs-gradient: none;
}

.btn-link {
  --bs-btn-font-weight: 400;
  --bs-btn-color: var(--bs-link-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: transparent;
  --bs-btn-hover-color: var(--bs-link-hover-color);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-color: var(--bs-link-hover-color);
  --bs-btn-active-border-color: transparent;
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: 0 0 0 #000;
  --bs-btn-focus-shadow-rgb: 217, 60, 72;
  text-decoration: underline;
}
.btn-link:focus-visible {
  color: var(--bs-btn-color);
}
.btn-link:hover {
  color: var(--bs-btn-hover-color);
}

.btn-lg, .btn-group-lg > .btn {
  --bs-btn-padding-y: 0.5rem;
  --bs-btn-padding-x: 1rem;
  --bs-btn-font-size: 1.25rem;
  --bs-btn-border-radius: var(--bs-border-radius-lg);
}

.btn-sm, .btn-group-sm > .btn {
  --bs-btn-padding-y: 0.25rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 0.875rem;
  --bs-btn-border-radius: var(--bs-border-radius-sm);
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
.collapsing.collapse-horizontal {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing.collapse-horizontal {
    transition: none;
  }
}

.dropup,
.dropend,
.dropdown,
.dropstart,
.dropup-center,
.dropdown-center {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  --bs-dropdown-zindex: 1000;
  --bs-dropdown-min-width: 10rem;
  --bs-dropdown-padding-x: 0;
  --bs-dropdown-padding-y: 0.5rem;
  --bs-dropdown-spacer: 0.125rem;
  --bs-dropdown-font-size: 1rem;
  --bs-dropdown-color: var(--bs-body-color);
  --bs-dropdown-bg: var(--bs-body-bg);
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-border-radius: var(--bs-border-radius);
  --bs-dropdown-border-width: var(--bs-border-width);
  --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-divider-margin-y: 0.5rem;
  --bs-dropdown-box-shadow: var(--bs-box-shadow);
  --bs-dropdown-link-color: var(--bs-body-color);
  --bs-dropdown-link-hover-color: var(--bs-body-color);
  --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #FF4655;
  --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
  --bs-dropdown-item-padding-x: 1rem;
  --bs-dropdown-item-padding-y: 0.25rem;
  --bs-dropdown-header-color: #6c757d;
  --bs-dropdown-header-padding-x: 1rem;
  --bs-dropdown-header-padding-y: 0.5rem;
  position: absolute;
  z-index: var(--bs-dropdown-zindex);
  display: none;
  min-width: var(--bs-dropdown-min-width);
  padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
  margin: 0;
  font-size: var(--bs-dropdown-font-size);
  color: var(--bs-dropdown-color);
  text-align: left;
  list-style: none;
  background-color: var(--bs-dropdown-bg);
  background-clip: padding-box;
  border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
  border-radius: var(--bs-dropdown-border-radius);
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: var(--bs-dropdown-spacer);
}

.dropdown-menu-start {
  --bs-position: start;
}
.dropdown-menu-start[data-bs-popper] {
  right: auto;
  left: 0;
}

.dropdown-menu-end {
  --bs-position: end;
}
.dropdown-menu-end[data-bs-popper] {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start;
  }
  .dropdown-menu-sm-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-end {
    --bs-position: end;
  }
  .dropdown-menu-sm-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start;
  }
  .dropdown-menu-md-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-end {
    --bs-position: end;
  }
  .dropdown-menu-md-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start;
  }
  .dropdown-menu-lg-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-end {
    --bs-position: end;
  }
  .dropdown-menu-lg-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start;
  }
  .dropdown-menu-xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-end {
    --bs-position: end;
  }
  .dropdown-menu-xl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1400px) {
  .dropdown-menu-xxl-start {
    --bs-position: start;
  }
  .dropdown-menu-xxl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu[data-bs-popper] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: var(--bs-dropdown-spacer);
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropend .dropdown-menu[data-bs-popper] {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: var(--bs-dropdown-spacer);
}
.dropend .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropend .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropend .dropdown-toggle::after {
  vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: var(--bs-dropdown-spacer);
}
.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropstart .dropdown-toggle::after {
  display: none;
}
.dropstart .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropstart .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-divider {
  height: 0;
  margin: var(--bs-dropdown-divider-margin-y) 0;
  overflow: hidden;
  border-top: 1px solid var(--bs-dropdown-divider-bg);
  opacity: 1;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  clear: both;
  font-weight: 400;
  color: var(--bs-dropdown-link-color);
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  border-radius: var(--bs-dropdown-item-border-radius, 0);
}
.dropdown-item:hover, .dropdown-item:focus {
  color: var(--bs-dropdown-link-hover-color);
  background-color: var(--bs-dropdown-link-hover-bg);
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--bs-dropdown-link-active-color);
  text-decoration: none;
  background-color: var(--bs-dropdown-link-active-bg);
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: var(--bs-dropdown-link-disabled-color);
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
  margin-bottom: 0;
  font-size: 0.875rem;
  color: var(--bs-dropdown-header-color);
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
  --bs-dropdown-color: #dee2e6;
  --bs-dropdown-bg: #343a40;
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-box-shadow: ;
  --bs-dropdown-link-color: #dee2e6;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #FF4655;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn-check:checked + .btn,
.btn-group > .btn-check:focus + .btn,
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn-check:checked + .btn,
.btn-group-vertical > .btn-check:focus + .btn,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

.btn-group {
  border-radius: var(--bs-border-radius);
}
.btn-group > :not(.btn-check:first-child) + .btn,
.btn-group > .btn-group:not(:first-child) {
  margin-left: calc(-1 * var(--bs-border-width));
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn.dropdown-toggle-split:first-child,
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: calc(-1 * var(--bs-border-width));
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:nth-child(n+3),
.btn-group-vertical > :not(.btn-check) + .btn,
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav {
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-link-color);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--bs-nav-link-font-weight);
  color: var(--bs-nav-link-color);
  text-decoration: none;
  background: none;
  border: 0;
  transition: color 0.1s ease-out, background-color 0.1s ease-out, border-color 0.1s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}
.nav-link:hover, .nav-link:focus {
  color: var(--bs-nav-link-hover-color);
}
.nav-link:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
}
.nav-link.disabled, .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  --bs-nav-tabs-border-width: var(--bs-border-width);
  --bs-nav-tabs-border-color: var(--bs-border-color);
  --bs-nav-tabs-border-radius: var(--bs-border-radius);
  --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
  --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
  --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
  --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
  border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}
.nav-tabs .nav-link {
  margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
  border: var(--bs-nav-tabs-border-width) solid transparent;
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: var(--bs-nav-tabs-link-hover-border-color);
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--bs-nav-tabs-link-active-color);
  background-color: var(--bs-nav-tabs-link-active-bg);
  border-color: var(--bs-nav-tabs-link-active-border-color);
}
.nav-tabs .dropdown-menu {
  margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: #FF4655;
}
.nav-pills .nav-link {
  border-radius: var(--bs-nav-pills-border-radius);
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: var(--bs-nav-pills-link-active-color);
  background-color: var(--bs-nav-pills-link-active-bg);
}

.nav-underline {
  --bs-nav-underline-gap: 1rem;
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
  gap: var(--bs-nav-underline-gap);
}
.nav-underline .nav-link {
  padding-right: 0;
  padding-left: 0;
  border-bottom: var(--bs-nav-underline-border-width) solid transparent;
}
.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {
  border-bottom-color: currentcolor;
}
.nav-underline .nav-link.active,
.nav-underline .show > .nav-link {
  font-weight: 700;
  color: var(--bs-nav-underline-link-active-color);
  border-bottom-color: currentcolor;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-grow: 1;
  flex-basis: 0;
  text-align: center;
}

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
  width: 100%;
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.navbar {
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 0.5rem;
  --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
  --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
  --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
  --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-padding-y: 0.3125rem;
  --bs-navbar-brand-margin-end: 1rem;
  --bs-navbar-brand-font-size: 1.25rem;
  --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-nav-link-padding-x: 0.5rem;
  --bs-navbar-toggler-padding-y: 0.25rem;
  --bs-navbar-toggler-padding-x: 0.75rem;
  --bs-navbar-toggler-font-size: 1.25rem;
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2815, 25, 35, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
  --bs-navbar-toggler-border-radius: var(--bs-border-radius);
  --bs-navbar-toggler-focus-width: 0.25rem;
  --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-right: var(--bs-navbar-brand-margin-end);
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  text-decoration: none;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  color: var(--bs-navbar-brand-hover-color);
}

.navbar-nav {
  --bs-nav-link-padding-x: 0;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-navbar-color);
  --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
  --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
  color: var(--bs-navbar-active-color);
}
.navbar-nav .dropdown-menu {
  position: static;
}

.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-navbar-color);
}
.navbar-text a,
.navbar-text a:hover,
.navbar-text a:focus {
  color: var(--bs-navbar-active-color);
}

.navbar-collapse {
  flex-grow: 1;
  flex-basis: 100%;
  align-items: center;
}

.navbar-toggler {
  padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
  font-size: var(--bs-navbar-toggler-font-size);
  line-height: 1;
  color: var(--bs-navbar-color);
  background-color: transparent;
  border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
  border-radius: var(--bs-navbar-toggler-border-radius);
  transition: var(--bs-navbar-toggler-transition);
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background-image: var(--bs-navbar-toggler-icon-bg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

.navbar-nav-scroll {
  max-height: var(--bs-scroll-height, 75vh);
  overflow-y: auto;
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
  .navbar-expand-sm .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-sm .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-sm .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
  .navbar-expand-md .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-md .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-md .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
  .navbar-expand-lg .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-lg .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-lg .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-xl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xxl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xxl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-xxl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xxl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: var(--bs-navbar-nav-link-padding-x);
  padding-left: var(--bs-navbar-nav-link-padding-x);
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar-expand .offcanvas {
  position: static;
  z-index: auto;
  flex-grow: 1;
  width: auto !important;
  height: auto !important;
  visibility: visible !important;
  background-color: transparent !important;
  border: 0 !important;
  transform: none !important;
  transition: none;
}
.navbar-expand .offcanvas .offcanvas-header {
  display: none;
}
.navbar-expand .offcanvas .offcanvas-body {
  display: flex;
  flex-grow: 0;
  padding: 0;
  overflow-y: visible;
}

.navbar-dark,
.navbar[data-bs-theme=dark] {
  --bs-navbar-color: rgba(255, 255, 255, 0.55);
  --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
  --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
  --bs-navbar-active-color: #fff;
  --bs-navbar-brand-color: #fff;
  --bs-navbar-brand-hover-color: #fff;
  --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

[data-bs-theme=dark] .navbar-toggler-icon {
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.card {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1rem;
  --bs-card-title-spacer-y: 0.5rem;
  --bs-card-title-color: ;
  --bs-card-subtitle-color: ;
  --bs-card-border-width: var(--bs-border-width);
  --bs-card-border-color: var(--bs-border-color-translucent);
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-box-shadow: ;
  --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-card-cap-padding-y: 0.5rem;
  --bs-card-cap-padding-x: 1rem;
  --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
  --bs-card-cap-color: ;
  --bs-card-height: ;
  --bs-card-color: ;
  --bs-card-bg: var(--bs-body-bg);
  --bs-card-img-overlay-padding: 1rem;
  --bs-card-group-margin: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: var(--bs-card-height);
  color: var(--bs-body-color);
  word-wrap: break-word;
  background-color: var(--bs-card-bg);
  background-clip: border-box;
  border: var(--bs-card-border-width) solid var(--bs-card-border-color);
  border-radius: var(--bs-card-border-radius);
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
  color: var(--bs-card-color);
}

.card-title {
  margin-bottom: var(--bs-card-title-spacer-y);
  color: var(--bs-card-title-color);
}

.card-subtitle {
  margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));
  margin-bottom: 0;
  color: var(--bs-card-subtitle-color);
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link + .card-link {
  margin-left: var(--bs-card-spacer-x);
}

.card-header {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  margin-bottom: 0;
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.card-header:first-child {
  border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}

.card-footer {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.card-footer:last-child {
  border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
}

.card-header-tabs {
  margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
  margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
  margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
  border-bottom: 0;
}
.card-header-tabs .nav-link.active {
  background-color: var(--bs-card-bg);
  border-bottom-color: var(--bs-card-bg);
}

.card-header-pills {
  margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
  margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: var(--bs-card-img-overlay-padding);
  border-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-top,
.card-img-bottom {
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

.card-group > .card {
  margin-bottom: var(--bs-card-group-margin);
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) > .card-img-top,
  .card-group > .card:not(:last-child) > .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) > .card-img-bottom,
  .card-group > .card:not(:last-child) > .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) > .card-img-top,
  .card-group > .card:not(:first-child) > .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) > .card-img-bottom,
  .card-group > .card:not(:first-child) > .card-footer {
    border-bottom-left-radius: 0;
  }
}

.accordion {
  --bs-accordion-color: var(--bs-body-color);
  --bs-accordion-bg: var(--bs-body-bg);
  --bs-accordion-transition: color 0.1s ease-out, background-color 0.1s ease-out, border-color 0.1s ease-out, box-shadow 0.1s ease-out, border-radius 0.15s ease;
  --bs-accordion-border-color: var(--bs-border-color);
  --bs-accordion-border-width: var(--bs-border-width);
  --bs-accordion-border-radius: var(--bs-border-radius);
  --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 1rem;
  --bs-accordion-btn-color: var(--bs-body-color);
  --bs-accordion-btn-bg: var(--bs-accordion-bg);
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%230F1923' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23661c22' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: var(--bs-primary-text-emphasis);
  --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
  font-size: 1rem;
  color: var(--bs-accordion-btn-color);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: var(--bs-accordion-active-color);
  background-color: var(--bs-accordion-active-bg);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-active-icon);
  transform: var(--bs-accordion-btn-icon-transform);
}
.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  content: "";
  background-image: var(--bs-accordion-btn-icon);
  background-repeat: no-repeat;
  background-size: var(--bs-accordion-btn-icon-width);
  transition: var(--bs-accordion-btn-icon-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  outline: 0;
  box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

.accordion-header {
  margin-bottom: 0;
}

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}
.accordion-item:first-of-type > .accordion-header .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}
.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:last-of-type > .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
  padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

.accordion-flush > .accordion-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}
.accordion-flush > .accordion-item:first-child {
  border-top: 0;
}
.accordion-flush > .accordion-item:last-child {
  border-bottom: 0;
}
.accordion-flush > .accordion-item > .accordion-collapse,
.accordion-flush > .accordion-item > .accordion-header .accordion-button,
.accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {
  border-radius: 0;
}

[data-bs-theme=dark] .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ff9099'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ff9099'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e");
}

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: 0;
  --bs-breadcrumb-margin-bottom: 1rem;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: ;
  --bs-breadcrumb-divider-color: var(--bs-secondary-color);
  --bs-breadcrumb-item-padding-x: 0.5rem;
  --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
  margin-bottom: var(--bs-breadcrumb-margin-bottom);
  font-size: var(--bs-breadcrumb-font-size);
  list-style: none;
  background-color: var(--bs-breadcrumb-bg);
  border-radius: var(--bs-breadcrumb-border-radius);
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: var(--bs-breadcrumb-item-padding-x);
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: var(--bs-breadcrumb-item-padding-x);
  color: var(--bs-breadcrumb-divider-color);
  content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */;
}
.breadcrumb-item.active {
  color: var(--bs-breadcrumb-item-active-color);
}

.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.375rem;
  --bs-pagination-font-size: 1rem;
  --bs-pagination-color: var(--bs-link-color);
  --bs-pagination-bg: var(--bs-body-bg);
  --bs-pagination-border-width: var(--bs-border-width);
  --bs-pagination-border-color: var(--bs-border-color);
  --bs-pagination-border-radius: var(--bs-border-radius);
  --bs-pagination-hover-color: var(--bs-link-hover-color);
  --bs-pagination-hover-bg: var(--bs-tertiary-bg);
  --bs-pagination-hover-border-color: var(--bs-border-color);
  --bs-pagination-focus-color: var(--bs-link-hover-color);
  --bs-pagination-focus-bg: var(--bs-secondary-bg);
  --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: #FF4655;
  --bs-pagination-active-border-color: #FF4655;
  --bs-pagination-disabled-color: var(--bs-secondary-color);
  --bs-pagination-disabled-bg: var(--bs-secondary-bg);
  --bs-pagination-disabled-border-color: var(--bs-border-color);
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
  font-size: var(--bs-pagination-font-size);
  color: var(--bs-pagination-color);
  text-decoration: none;
  background-color: var(--bs-pagination-bg);
  border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}
.page-link:hover {
  z-index: 2;
  color: var(--bs-pagination-hover-color);
  background-color: var(--bs-pagination-hover-bg);
  border-color: var(--bs-pagination-hover-border-color);
}
.page-link:focus {
  z-index: 3;
  color: var(--bs-pagination-focus-color);
  background-color: var(--bs-pagination-focus-bg);
  outline: 0;
  box-shadow: var(--bs-pagination-focus-box-shadow);
}
.page-link.active, .active > .page-link {
  z-index: 3;
  color: var(--bs-pagination-active-color);
  background-color: var(--bs-pagination-active-bg);
  border-color: var(--bs-pagination-active-border-color);
}
.page-link.disabled, .disabled > .page-link {
  color: var(--bs-pagination-disabled-color);
  pointer-events: none;
  background-color: var(--bs-pagination-disabled-bg);
  border-color: var(--bs-pagination-disabled-border-color);
}

.page-item:not(:first-child) .page-link {
  margin-left: calc(-1 * var(--bs-border-width));
}
.page-item:first-child .page-link {
  border-top-left-radius: var(--bs-pagination-border-radius);
  border-bottom-left-radius: var(--bs-pagination-border-radius);
}
.page-item:last-child .page-link {
  border-top-right-radius: var(--bs-pagination-border-radius);
  border-bottom-right-radius: var(--bs-pagination-border-radius);
}

.pagination-lg {
  --bs-pagination-padding-x: 1.5rem;
  --bs-pagination-padding-y: 0.75rem;
  --bs-pagination-font-size: 1.25rem;
  --bs-pagination-border-radius: var(--bs-border-radius-lg);
}

.pagination-sm {
  --bs-pagination-padding-x: 0.5rem;
  --bs-pagination-padding-y: 0.25rem;
  --bs-pagination-font-size: 0.875rem;
  --bs-pagination-border-radius: var(--bs-border-radius-sm);
}

.badge {
  --bs-badge-padding-x: 0.65em;
  --bs-badge-padding-y: 0.35em;
  --bs-badge-font-size: 0.75em;
  --bs-badge-font-weight: 700;
  --bs-badge-color: #fff;
  --bs-badge-border-radius: var(--bs-border-radius);
  display: inline-block;
  padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
  font-size: var(--bs-badge-font-size);
  font-weight: var(--bs-badge-font-weight);
  line-height: 1;
  color: var(--bs-badge-color);
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: var(--bs-badge-border-radius);
}
.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.alert {
  --bs-alert-bg: transparent;
  --bs-alert-padding-x: 1rem;
  --bs-alert-padding-y: 1rem;
  --bs-alert-margin-bottom: 1rem;
  --bs-alert-color: inherit;
  --bs-alert-border-color: transparent;
  --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
  --bs-alert-border-radius: var(--bs-border-radius);
  --bs-alert-link-color: inherit;
  position: relative;
  padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
  margin-bottom: var(--bs-alert-margin-bottom);
  color: var(--bs-alert-color);
  background-color: var(--bs-alert-bg);
  border: var(--bs-alert-border);
  border-radius: var(--bs-alert-border-radius);
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
  color: var(--bs-alert-link-color);
}

.alert-dismissible {
  padding-right: 3rem;
}
.alert-dismissible .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 11;
  padding: 1.25rem 1rem;
}

.alert-primary {
  --bs-alert-color: var(--bs-primary-text-emphasis);
  --bs-alert-bg: var(--bs-primary-bg-subtle);
  --bs-alert-border-color: var(--bs-primary-border-subtle);
  --bs-alert-link-color: var(--bs-primary-text-emphasis);
}

.alert-secondary {
  --bs-alert-color: var(--bs-secondary-text-emphasis);
  --bs-alert-bg: var(--bs-secondary-bg-subtle);
  --bs-alert-border-color: var(--bs-secondary-border-subtle);
  --bs-alert-link-color: var(--bs-secondary-text-emphasis);
}

.alert-success {
  --bs-alert-color: var(--bs-success-text-emphasis);
  --bs-alert-bg: var(--bs-success-bg-subtle);
  --bs-alert-border-color: var(--bs-success-border-subtle);
  --bs-alert-link-color: var(--bs-success-text-emphasis);
}

.alert-info {
  --bs-alert-color: var(--bs-info-text-emphasis);
  --bs-alert-bg: var(--bs-info-bg-subtle);
  --bs-alert-border-color: var(--bs-info-border-subtle);
  --bs-alert-link-color: var(--bs-info-text-emphasis);
}

.alert-warning {
  --bs-alert-color: var(--bs-warning-text-emphasis);
  --bs-alert-bg: var(--bs-warning-bg-subtle);
  --bs-alert-border-color: var(--bs-warning-border-subtle);
  --bs-alert-link-color: var(--bs-warning-text-emphasis);
}

.alert-danger {
  --bs-alert-color: var(--bs-danger-text-emphasis);
  --bs-alert-bg: var(--bs-danger-bg-subtle);
  --bs-alert-border-color: var(--bs-danger-border-subtle);
  --bs-alert-link-color: var(--bs-danger-text-emphasis);
}

.alert-light {
  --bs-alert-color: var(--bs-light-text-emphasis);
  --bs-alert-bg: var(--bs-light-bg-subtle);
  --bs-alert-border-color: var(--bs-light-border-subtle);
  --bs-alert-link-color: var(--bs-light-text-emphasis);
}

.alert-dark {
  --bs-alert-color: var(--bs-dark-text-emphasis);
  --bs-alert-bg: var(--bs-dark-bg-subtle);
  --bs-alert-border-color: var(--bs-dark-border-subtle);
  --bs-alert-link-color: var(--bs-dark-text-emphasis);
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: var(--bs-progress-height);
  }
}
.progress,
.progress-stacked {
  --bs-progress-height: 1rem;
  --bs-progress-font-size: 0.75rem;
  --bs-progress-bg: var(--bs-secondary-bg);
  --bs-progress-border-radius: var(--bs-border-radius);
  --bs-progress-box-shadow: var(--bs-box-shadow-inset);
  --bs-progress-bar-color: #fff;
  --bs-progress-bar-bg: #FF4655;
  --bs-progress-bar-transition: width 0.6s ease;
  display: flex;
  height: var(--bs-progress-height);
  overflow: hidden;
  font-size: var(--bs-progress-font-size);
  background-color: var(--bs-progress-bg);
  border-radius: var(--bs-progress-border-radius);
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: var(--bs-progress-bar-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-progress-bar-bg);
  transition: var(--bs-progress-bar-transition);
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: var(--bs-progress-height) var(--bs-progress-height);
}

.progress-stacked > .progress {
  overflow: visible;
}

.progress-stacked > .progress > .progress-bar {
  width: 100%;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.list-group {
  --bs-list-group-color: var(--bs-body-color);
  --bs-list-group-bg: var(--bs-body-bg);
  --bs-list-group-border-color: var(--bs-border-color);
  --bs-list-group-border-width: var(--bs-border-width);
  --bs-list-group-border-radius: var(--bs-border-radius);
  --bs-list-group-item-padding-x: 1rem;
  --bs-list-group-item-padding-y: 0.5rem;
  --bs-list-group-action-color: var(--bs-secondary-color);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
  --bs-list-group-action-active-color: var(--bs-body-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-bg);
  --bs-list-group-disabled-color: var(--bs-secondary-color);
  --bs-list-group-disabled-bg: var(--bs-body-bg);
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: #FF4655;
  --bs-list-group-active-border-color: #FF4655;
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: var(--bs-list-group-border-radius);
}

.list-group-numbered {
  list-style-type: none;
  counter-reset: section;
}
.list-group-numbered > .list-group-item::before {
  content: counters(section, ".") ". ";
  counter-increment: section;
}

.list-group-item {
  position: relative;
  display: block;
  padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
  color: var(--bs-list-group-color);
  text-decoration: none;
  background-color: var(--bs-list-group-bg);
  border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: var(--bs-list-group-disabled-color);
  pointer-events: none;
  background-color: var(--bs-list-group-disabled-bg);
}
.list-group-item.active {
  z-index: 2;
  color: var(--bs-list-group-active-color);
  background-color: var(--bs-list-group-active-bg);
  border-color: var(--bs-list-group-active-border-color);
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: calc(-1 * var(--bs-list-group-border-width));
  border-top-width: var(--bs-list-group-border-width);
}

.list-group-item-action {
  width: 100%;
  color: var(--bs-list-group-action-color);
  text-align: inherit;
}
.list-group-item-action:not(.active):hover, .list-group-item-action:not(.active):focus {
  z-index: 1;
  color: var(--bs-list-group-action-hover-color);
  text-decoration: none;
  background-color: var(--bs-list-group-action-hover-bg);
}
.list-group-item-action:not(.active):active {
  color: var(--bs-list-group-action-active-color);
  background-color: var(--bs-list-group-action-active-bg);
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child:not(:last-child) {
  border-bottom-left-radius: var(--bs-list-group-border-radius);
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child:not(:first-child) {
  border-top-right-radius: var(--bs-list-group-border-radius);
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: var(--bs-list-group-border-width);
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: calc(-1 * var(--bs-list-group-border-width));
  border-left-width: var(--bs-list-group-border-width);
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 var(--bs-list-group-border-width);
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  --bs-list-group-color: var(--bs-primary-text-emphasis);
  --bs-list-group-bg: var(--bs-primary-bg-subtle);
  --bs-list-group-border-color: var(--bs-primary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
  --bs-list-group-active-color: var(--bs-primary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);
}

.list-group-item-secondary {
  --bs-list-group-color: var(--bs-secondary-text-emphasis);
  --bs-list-group-bg: var(--bs-secondary-bg-subtle);
  --bs-list-group-border-color: var(--bs-secondary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);
}

.list-group-item-success {
  --bs-list-group-color: var(--bs-success-text-emphasis);
  --bs-list-group-bg: var(--bs-success-bg-subtle);
  --bs-list-group-border-color: var(--bs-success-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
  --bs-list-group-active-color: var(--bs-success-bg-subtle);
  --bs-list-group-active-bg: var(--bs-success-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-success-text-emphasis);
}

.list-group-item-info {
  --bs-list-group-color: var(--bs-info-text-emphasis);
  --bs-list-group-bg: var(--bs-info-bg-subtle);
  --bs-list-group-border-color: var(--bs-info-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
  --bs-list-group-active-color: var(--bs-info-bg-subtle);
  --bs-list-group-active-bg: var(--bs-info-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-info-text-emphasis);
}

.list-group-item-warning {
  --bs-list-group-color: var(--bs-warning-text-emphasis);
  --bs-list-group-bg: var(--bs-warning-bg-subtle);
  --bs-list-group-border-color: var(--bs-warning-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
  --bs-list-group-active-color: var(--bs-warning-bg-subtle);
  --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);
}

.list-group-item-danger {
  --bs-list-group-color: var(--bs-danger-text-emphasis);
  --bs-list-group-bg: var(--bs-danger-bg-subtle);
  --bs-list-group-border-color: var(--bs-danger-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
  --bs-list-group-active-color: var(--bs-danger-bg-subtle);
  --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);
}

.list-group-item-light {
  --bs-list-group-color: var(--bs-light-text-emphasis);
  --bs-list-group-bg: var(--bs-light-bg-subtle);
  --bs-list-group-border-color: var(--bs-light-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
  --bs-list-group-active-color: var(--bs-light-bg-subtle);
  --bs-list-group-active-bg: var(--bs-light-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-light-text-emphasis);
}

.list-group-item-dark {
  --bs-list-group-color: var(--bs-dark-text-emphasis);
  --bs-list-group-bg: var(--bs-dark-bg-subtle);
  --bs-list-group-border-color: var(--bs-dark-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
  --bs-list-group-active-color: var(--bs-dark-bg-subtle);
  --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);
}

.btn-close {
  --bs-btn-close-color: #000;
  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e");
  --bs-btn-close-opacity: 0.5;
  --bs-btn-close-hover-opacity: 0.75;
  --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(255, 70, 85, 0.25);
  --bs-btn-close-focus-opacity: 1;
  --bs-btn-close-disabled-opacity: 0.25;
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: var(--bs-btn-close-color);
  background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
  filter: var(--bs-btn-close-filter);
  border: 0;
  border-radius: 0;
  opacity: var(--bs-btn-close-opacity);
}
.btn-close:hover {
  color: var(--bs-btn-close-color);
  text-decoration: none;
  opacity: var(--bs-btn-close-hover-opacity);
}
.btn-close:focus {
  outline: 0;
  box-shadow: var(--bs-btn-close-focus-shadow);
  opacity: var(--bs-btn-close-focus-opacity);
}
.btn-close:disabled, .btn-close.disabled {
  pointer-events: none;
  user-select: none;
  opacity: var(--bs-btn-close-disabled-opacity);
}

.btn-close-white {
  --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);
}

:root,
[data-bs-theme=light] {
  --bs-btn-close-filter: ;
}

[data-bs-theme=dark] {
  --bs-btn-close-filter: invert(1) grayscale(100%) brightness(200%);
}

.toast {
  --bs-toast-zindex: 1090;
  --bs-toast-padding-x: 0.75rem;
  --bs-toast-padding-y: 0.5rem;
  --bs-toast-spacing: 1.5rem;
  --bs-toast-max-width: 350px;
  --bs-toast-font-size: 0.875rem;
  --bs-toast-color: ;
  --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-border-width: var(--bs-border-width);
  --bs-toast-border-color: var(--bs-border-color-translucent);
  --bs-toast-border-radius: var(--bs-border-radius);
  --bs-toast-box-shadow: var(--bs-box-shadow);
  --bs-toast-header-color: var(--bs-secondary-color);
  --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-header-border-color: var(--bs-border-color-translucent);
  width: var(--bs-toast-max-width);
  max-width: 100%;
  font-size: var(--bs-toast-font-size);
  color: var(--bs-toast-color);
  pointer-events: auto;
  background-color: var(--bs-toast-bg);
  background-clip: padding-box;
  border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
  box-shadow: var(--bs-toast-box-shadow);
  border-radius: var(--bs-toast-border-radius);
}
.toast.showing {
  opacity: 0;
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  --bs-toast-zindex: 1090;
  position: absolute;
  z-index: var(--bs-toast-zindex);
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: var(--bs-toast-spacing);
}

.toast-header {
  display: flex;
  align-items: center;
  padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
  color: var(--bs-toast-header-color);
  background-color: var(--bs-toast-header-bg);
  background-clip: padding-box;
  border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
  border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
  border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
}
.toast-header .btn-close {
  margin-right: calc(-0.5 * var(--bs-toast-padding-x));
  margin-left: var(--bs-toast-padding-x);
}

.toast-body {
  padding: var(--bs-toast-padding-x);
  word-wrap: break-word;
}

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: var(--bs-body-color);
  --bs-modal-bg: var(--bs-body-bg);
  --bs-modal-border-color: var(--bs-border-color-translucent);
  --bs-modal-border-width: var(--bs-border-width);
  --bs-modal-border-radius: var(--bs-border-radius-lg);
  --bs-modal-box-shadow: var(--bs-box-shadow-sm);
  --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
  --bs-modal-header-padding-x: 1rem;
  --bs-modal-header-padding-y: 1rem;
  --bs-modal-header-padding: 1rem 1rem;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: var(--bs-border-width);
  --bs-modal-title-line-height: 1.5;
  --bs-modal-footer-gap: 0.5rem;
  --bs-modal-footer-bg: ;
  --bs-modal-footer-border-color: var(--bs-border-color);
  --bs-modal-footer-border-width: var(--bs-border-width);
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-modal-zindex);
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: var(--bs-modal-margin);
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transform: translate(0, -50px);
  transition: transform 0.3s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  height: calc(100% - var(--bs-modal-margin) * 2);
}
.modal-dialog-scrollable .modal-content {
  max-height: 100%;
  overflow: hidden;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - var(--bs-modal-margin) * 2);
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--bs-modal-color);
  pointer-events: auto;
  background-color: var(--bs-modal-bg);
  background-clip: padding-box;
  border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
  border-radius: var(--bs-modal-border-radius);
  outline: 0;
}

.modal-backdrop {
  --bs-backdrop-zindex: 1050;
  --bs-backdrop-bg: #000;
  --bs-backdrop-opacity: 0.5;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-backdrop-zindex);
  width: 100vw;
  height: 100vh;
  background-color: var(--bs-backdrop-bg);
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: var(--bs-backdrop-opacity);
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  padding: var(--bs-modal-header-padding);
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
  border-top-left-radius: var(--bs-modal-inner-border-radius);
  border-top-right-radius: var(--bs-modal-inner-border-radius);
}
.modal-header .btn-close {
  padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
  margin-top: calc(-0.5 * var(--bs-modal-header-padding-y));
  margin-right: calc(-0.5 * var(--bs-modal-header-padding-x));
  margin-bottom: calc(-0.5 * var(--bs-modal-header-padding-y));
  margin-left: auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: var(--bs-modal-title-line-height);
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: var(--bs-modal-padding);
}

.modal-footer {
  display: flex;
  flex-shrink: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
  background-color: var(--bs-modal-footer-bg);
  border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
  border-bottom-right-radius: var(--bs-modal-inner-border-radius);
  border-bottom-left-radius: var(--bs-modal-inner-border-radius);
}
.modal-footer > * {
  margin: calc(var(--bs-modal-footer-gap) * 0.5);
}

@media (min-width: 576px) {
  .modal {
    --bs-modal-margin: 1.75rem;
    --bs-modal-box-shadow: var(--bs-box-shadow);
  }
  .modal-dialog {
    max-width: var(--bs-modal-width);
    margin-right: auto;
    margin-left: auto;
  }
  .modal-sm {
    --bs-modal-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    --bs-modal-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    --bs-modal-width: 1140px;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal-fullscreen .modal-header,
.modal-fullscreen .modal-footer {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .modal-fullscreen-sm-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-sm-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-header,
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 767.98px) {
  .modal-fullscreen-md-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-md-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-header,
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-header,
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1199.98px) {
  .modal-fullscreen-xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-header,
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1399.98px) {
  .modal-fullscreen-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-header,
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
}
.tooltip {
  --bs-tooltip-zindex: 1080;
  --bs-tooltip-max-width: 200px;
  --bs-tooltip-padding-x: 0.5rem;
  --bs-tooltip-padding-y: 0.25rem;
  --bs-tooltip-margin: ;
  --bs-tooltip-font-size: 0.875rem;
  --bs-tooltip-color: var(--bs-body-bg);
  --bs-tooltip-bg: var(--bs-emphasis-color);
  --bs-tooltip-border-radius: var(--bs-border-radius);
  --bs-tooltip-opacity: 0.9;
  --bs-tooltip-arrow-width: 0.8rem;
  --bs-tooltip-arrow-height: 0.4rem;
  z-index: var(--bs-tooltip-zindex);
  display: block;
  margin: var(--bs-tooltip-margin);
  font-family: "Barlow", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-tooltip-font-size);
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: var(--bs-tooltip-opacity);
}
.tooltip .tooltip-arrow {
  display: block;
  width: var(--bs-tooltip-arrow-width);
  height: var(--bs-tooltip-arrow-height);
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  top: -1px;
  border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-top-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  left: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  right: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-right-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: -1px;
  border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-bottom-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  right: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  left: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-left-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.tooltip-inner {
  max-width: var(--bs-tooltip-max-width);
  padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
  color: var(--bs-tooltip-color);
  text-align: center;
  background-color: var(--bs-tooltip-bg);
  border-radius: var(--bs-tooltip-border-radius);
}

.popover {
  --bs-popover-zindex: 1070;
  --bs-popover-max-width: 276px;
  --bs-popover-font-size: 0.875rem;
  --bs-popover-bg: var(--bs-body-bg);
  --bs-popover-border-width: var(--bs-border-width);
  --bs-popover-border-color: var(--bs-border-color-translucent);
  --bs-popover-border-radius: var(--bs-border-radius-lg);
  --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
  --bs-popover-box-shadow: var(--bs-box-shadow);
  --bs-popover-header-padding-x: 1rem;
  --bs-popover-header-padding-y: 0.5rem;
  --bs-popover-header-font-size: 1rem;
  --bs-popover-header-color: inherit;
  --bs-popover-header-bg: var(--bs-secondary-bg);
  --bs-popover-body-padding-x: 1rem;
  --bs-popover-body-padding-y: 1rem;
  --bs-popover-body-color: var(--bs-body-color);
  --bs-popover-arrow-width: 1rem;
  --bs-popover-arrow-height: 0.5rem;
  --bs-popover-arrow-border: var(--bs-popover-border-color);
  z-index: var(--bs-popover-zindex);
  display: block;
  max-width: var(--bs-popover-max-width);
  font-family: "Barlow", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-popover-font-size);
  word-wrap: break-word;
  background-color: var(--bs-popover-bg);
  background-clip: padding-box;
  border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-radius: var(--bs-popover-border-radius);
}
.popover .popover-arrow {
  display: block;
  width: var(--bs-popover-arrow-width);
  height: var(--bs-popover-arrow-height);
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 0;
}

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-top-color: var(--bs-popover-arrow-border);
}
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  bottom: var(--bs-popover-border-width);
  border-top-color: var(--bs-popover-bg);
}

/* rtl:begin:ignore */
.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-right-color: var(--bs-popover-arrow-border);
}
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  left: var(--bs-popover-border-width);
  border-right-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-bottom-color: var(--bs-popover-arrow-border);
}
.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  top: var(--bs-popover-border-width);
  border-bottom-color: var(--bs-popover-bg);
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: var(--bs-popover-arrow-width);
  margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
  content: "";
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
}

/* rtl:begin:ignore */
.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-left-color: var(--bs-popover-arrow-border);
}
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  right: var(--bs-popover-border-width);
  border-left-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.popover-header {
  padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
  margin-bottom: 0;
  font-size: var(--bs-popover-header-font-size);
  color: var(--bs-popover-header-color);
  background-color: var(--bs-popover-header-bg);
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-top-left-radius: var(--bs-popover-inner-border-radius);
  border-top-right-radius: var(--bs-popover-inner-border-radius);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
  color: var(--bs-popover-body-color);
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-end),
.active.carousel-item-start {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-start,
  .carousel-fade .active.carousel-item-end {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  filter: var(--bs-carousel-control-icon-filter);
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e")*/;
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e")*/;
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  padding: 0;
  margin-right: 15%;
  margin-bottom: 1rem;
  margin-left: 15%;
}
.carousel-indicators [data-bs-target] {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  padding: 0;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: var(--bs-carousel-indicator-active-bg);
  background-clip: padding-box;
  border: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators [data-bs-target] {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 1.25rem;
  left: 15%;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  color: var(--bs-carousel-caption-color);
  text-align: center;
}

.carousel-dark {
  --bs-carousel-indicator-active-bg: #000;
  --bs-carousel-caption-color: #000;
  --bs-carousel-control-icon-filter: invert(1) grayscale(100);
}

:root,
[data-bs-theme=light] {
  --bs-carousel-indicator-active-bg: #fff;
  --bs-carousel-caption-color: #fff;
  --bs-carousel-control-icon-filter: ;
}

[data-bs-theme=dark] {
  --bs-carousel-indicator-active-bg: #000;
  --bs-carousel-caption-color: #000;
  --bs-carousel-control-icon-filter: invert(1) grayscale(100);
}

.spinner-grow,
.spinner-border {
  display: inline-block;
  flex-shrink: 0;
  width: var(--bs-spinner-width);
  height: var(--bs-spinner-height);
  vertical-align: var(--bs-spinner-vertical-align);
  border-radius: 50%;
  animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-border-width: 0.25em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-border;
  border: var(--bs-spinner-border-width) solid currentcolor;
  border-right-color: transparent;
}

.spinner-border-sm {
  --bs-spinner-width: 1rem;
  --bs-spinner-height: 1rem;
  --bs-spinner-border-width: 0.2em;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-grow;
  background-color: currentcolor;
  opacity: 0;
}

.spinner-grow-sm {
  --bs-spinner-width: 1rem;
  --bs-spinner-height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    --bs-spinner-animation-speed: 1.5s;
  }
}
.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
  --bs-offcanvas-zindex: 1045;
  --bs-offcanvas-width: 400px;
  --bs-offcanvas-height: 30vh;
  --bs-offcanvas-padding-x: 1rem;
  --bs-offcanvas-padding-y: 1rem;
  --bs-offcanvas-color: var(--bs-body-color);
  --bs-offcanvas-bg: var(--bs-body-bg);
  --bs-offcanvas-border-width: var(--bs-border-width);
  --bs-offcanvas-border-color: var(--bs-border-color-translucent);
  --bs-offcanvas-box-shadow: var(--bs-box-shadow-sm);
  --bs-offcanvas-transition: transform 0.3s ease-in-out;
  --bs-offcanvas-title-line-height: 1.5;
}

@media (max-width: 575.98px) {
  .offcanvas-sm {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-sm {
    transition: none;
  }
}
@media (max-width: 575.98px) {
  .offcanvas-sm.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-sm.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-sm.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-sm.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
    visibility: visible;
  }
}
@media (min-width: 576px) {
  .offcanvas-sm {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-sm .offcanvas-header {
    display: none;
  }
  .offcanvas-sm .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 767.98px) {
  .offcanvas-md {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-md {
    transition: none;
  }
}
@media (max-width: 767.98px) {
  .offcanvas-md.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-md.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-md.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-md.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
    visibility: visible;
  }
}
@media (min-width: 768px) {
  .offcanvas-md {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-md .offcanvas-header {
    display: none;
  }
  .offcanvas-md .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 991.98px) {
  .offcanvas-lg {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-lg {
    transition: none;
  }
}
@media (max-width: 991.98px) {
  .offcanvas-lg.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-lg.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-lg.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-lg.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
    visibility: visible;
  }
}
@media (min-width: 992px) {
  .offcanvas-lg {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-lg .offcanvas-header {
    display: none;
  }
  .offcanvas-lg .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1199.98px) {
  .offcanvas-xl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xl {
    transition: none;
  }
}
@media (max-width: 1199.98px) {
  .offcanvas-xl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
    visibility: visible;
  }
}
@media (min-width: 1200px) {
  .offcanvas-xl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xl .offcanvas-header {
    display: none;
  }
  .offcanvas-xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1399.98px) {
  .offcanvas-xxl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xxl {
    transition: none;
  }
}
@media (max-width: 1399.98px) {
  .offcanvas-xxl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xxl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xxl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xxl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
    visibility: visible;
  }
}
@media (min-width: 1400px) {
  .offcanvas-xxl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xxl .offcanvas-header {
    display: none;
  }
  .offcanvas-xxl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: var(--bs-offcanvas-zindex);
  display: flex;
  flex-direction: column;
  max-width: 100%;
  color: var(--bs-offcanvas-color);
  visibility: hidden;
  background-color: var(--bs-offcanvas-bg);
  background-clip: padding-box;
  outline: 0;
  transition: var(--bs-offcanvas-transition);
}
@media (prefers-reduced-motion: reduce) {
  .offcanvas {
    transition: none;
  }
}
.offcanvas.offcanvas-start {
  top: 0;
  left: 0;
  width: var(--bs-offcanvas-width);
  border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(-100%);
}
.offcanvas.offcanvas-end {
  top: 0;
  right: 0;
  width: var(--bs-offcanvas-width);
  border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(100%);
}
.offcanvas.offcanvas-top {
  top: 0;
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(-100%);
}
.offcanvas.offcanvas-bottom {
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(100%);
}
.offcanvas.showing, .offcanvas.show:not(.hiding) {
  transform: none;
}
.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {
  visibility: visible;
}

.offcanvas-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.offcanvas-backdrop.fade {
  opacity: 0;
}
.offcanvas-backdrop.show {
  opacity: 0.5;
}

.offcanvas-header {
  display: flex;
  align-items: center;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}
.offcanvas-header .btn-close {
  padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
  margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
  margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
  margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
  margin-left: auto;
}

.offcanvas-title {
  margin-bottom: 0;
  line-height: var(--bs-offcanvas-title-line-height);
}

.offcanvas-body {
  flex-grow: 1;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
  overflow-y: auto;
}

.placeholder {
  display: inline-block;
  min-height: 1em;
  vertical-align: middle;
  cursor: wait;
  background-color: currentcolor;
  opacity: 0.5;
}
.placeholder.btn::before {
  display: inline-block;
  content: "";
}

.placeholder-xs {
  min-height: 0.6em;
}

.placeholder-sm {
  min-height: 0.8em;
}

.placeholder-lg {
  min-height: 1.2em;
}

.placeholder-glow .placeholder {
  animation: placeholder-glow 2s ease-in-out infinite;
}

@keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}
.placeholder-wave {
  mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
  mask-size: 200% 100%;
  animation: placeholder-wave 2s linear infinite;
}

@keyframes placeholder-wave {
  100% {
    mask-position: -200% 0%;
  }
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.text-bg-primary {
  color: #000 !important;
  background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-secondary {
  color: #fff !important;
  background-color: RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
  color: #fff !important;
  background-color: RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-info {
  color: #000 !important;
  background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
  color: #000 !important;
  background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
  color: #fff !important;
  background-color: RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-light {
  color: #000 !important;
  background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

.text-bg-dark {
  color: #fff !important;
  background-color: RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

.link-primary {
  color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-primary:hover, .link-primary:focus {
  color: RGBA(255, 107, 119, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(255, 107, 119, var(--bs-link-underline-opacity, 1)) !important;
}

.link-secondary {
  color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-secondary:hover, .link-secondary:focus {
  color: RGBA(72, 82, 91, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(72, 82, 91, var(--bs-link-underline-opacity, 1)) !important;
}

.link-success {
  color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-success:hover, .link-success:focus {
  color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
}

.link-info {
  color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-info:hover, .link-info:focus {
  color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
}

.link-warning {
  color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-warning:hover, .link-warning:focus {
  color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
}

.link-danger {
  color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-danger:hover, .link-danger:focus {
  color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
}

.link-light {
  color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-light:hover, .link-light:focus {
  color: RGBA(240, 237, 231, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(240, 237, 231, var(--bs-link-underline-opacity, 1)) !important;
}

.link-dark {
  color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-dark:hover, .link-dark:focus {
  color: RGBA(12, 20, 28, var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(12, 20, 28, var(--bs-link-underline-opacity, 1)) !important;
}

.link-body-emphasis {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
  text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-body-emphasis:hover, .link-body-emphasis:focus {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;
  text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
}

.focus-ring:focus {
  outline: 0;
  box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);
}

.icon-link {
  display: inline-flex;
  gap: 0.375rem;
  align-items: center;
  text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
  text-underline-offset: 0.25em;
  backface-visibility: hidden;
}
.icon-link > .bi {
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  fill: currentcolor;
  transition: 0.2s ease-in-out transform;
}
@media (prefers-reduced-motion: reduce) {
  .icon-link > .bi {
    transition: none;
  }
}

.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {
  transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));
}

.ratio {
  position: relative;
  width: 100%;
}
.ratio::before {
  display: block;
  padding-top: var(--bs-aspect-ratio);
  content: "";
}
.ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.ratio-1x1 {
  --bs-aspect-ratio: 100%;
}

.ratio-4x3 {
  --bs-aspect-ratio: 75%;
}

.ratio-16x9 {
  --bs-aspect-ratio: 56.25%;
}

.ratio-21x9 {
  --bs-aspect-ratio: 42.8571428571%;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

.sticky-top {
  position: sticky;
  top: 0;
  z-index: 1020;
}

.sticky-bottom {
  position: sticky;
  bottom: 0;
  z-index: 1020;
}

@media (min-width: 576px) {
  .sticky-sm-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-sm-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 768px) {
  .sticky-md-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-md-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 992px) {
  .sticky-lg-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-lg-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 1200px) {
  .sticky-xl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 1400px) {
  .sticky-xxl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xxl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

.vstack {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-self: stretch;
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.visually-hidden:not(caption),
.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
  position: absolute !important;
}
.visually-hidden *,
.visually-hidden-focusable:not(:focus):not(:focus-within) * {
  overflow: hidden !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  content: "";
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.vr {
  display: inline-block;
  align-self: stretch;
  width: var(--bs-border-width);
  min-height: 1em;
  background-color: currentcolor;
  opacity: 0.25;
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.float-start {
  float: left !important;
}

.float-end {
  float: right !important;
}

.float-none {
  float: none !important;
}

.object-fit-contain {
  object-fit: contain !important;
}

.object-fit-cover {
  object-fit: cover !important;
}

.object-fit-fill {
  object-fit: fill !important;
}

.object-fit-scale {
  object-fit: scale-down !important;
}

.object-fit-none {
  object-fit: none !important;
}

.opacity-0 {
  opacity: 0 !important;
}

.opacity-25 {
  opacity: 0.25 !important;
}

.opacity-50 {
  opacity: 0.5 !important;
}

.opacity-75 {
  opacity: 0.75 !important;
}

.opacity-100 {
  opacity: 1 !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-visible {
  overflow: visible !important;
}

.overflow-scroll {
  overflow: scroll !important;
}

.overflow-x-auto {
  overflow-x: auto !important;
}

.overflow-x-hidden {
  overflow-x: hidden !important;
}

.overflow-x-visible {
  overflow-x: visible !important;
}

.overflow-x-scroll {
  overflow-x: scroll !important;
}

.overflow-y-auto {
  overflow-y: auto !important;
}

.overflow-y-hidden {
  overflow-y: hidden !important;
}

.overflow-y-visible {
  overflow-y: visible !important;
}

.overflow-y-scroll {
  overflow-y: scroll !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-grid {
  display: grid !important;
}

.d-inline-grid {
  display: inline-grid !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

.d-none {
  display: none !important;
}

.shadow {
  box-shadow: var(--bs-box-shadow) !important;
}

.shadow-sm {
  box-shadow: var(--bs-box-shadow-sm) !important;
}

.shadow-lg {
  box-shadow: var(--bs-box-shadow-lg) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.focus-ring-primary {
  --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-secondary {
  --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-success {
  --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-info {
  --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-warning {
  --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-danger {
  --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-light {
  --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-dark {
  --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.top-0 {
  top: 0 !important;
}

.top-50 {
  top: 50% !important;
}

.top-100 {
  top: 100% !important;
}

.bottom-0 {
  bottom: 0 !important;
}

.bottom-50 {
  bottom: 50% !important;
}

.bottom-100 {
  bottom: 100% !important;
}

.start-0 {
  left: 0 !important;
}

.start-50 {
  left: 50% !important;
}

.start-100 {
  left: 100% !important;
}

.end-0 {
  right: 0 !important;
}

.end-50 {
  right: 50% !important;
}

.end-100 {
  right: 100% !important;
}

.translate-middle {
  transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
  transform: translateX(-50%) !important;
}

.translate-middle-y {
  transform: translateY(-50%) !important;
}

.border {
  border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-0 {
  border: 0 !important;
}

.border-top {
  border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-end {
  border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-end-0 {
  border-right: 0 !important;
}

.border-bottom {
  border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-start {
  border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-start-0 {
  border-left: 0 !important;
}

.border-primary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
}

.border-secondary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}

.border-success {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
}

.border-info {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
}

.border-warning {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
}

.border-danger {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
}

.border-light {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
}

.border-dark {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}

.border-black {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;
}

.border-white {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;
}

.border-primary-subtle {
  border-color: var(--bs-primary-border-subtle) !important;
}

.border-secondary-subtle {
  border-color: var(--bs-secondary-border-subtle) !important;
}

.border-success-subtle {
  border-color: var(--bs-success-border-subtle) !important;
}

.border-info-subtle {
  border-color: var(--bs-info-border-subtle) !important;
}

.border-warning-subtle {
  border-color: var(--bs-warning-border-subtle) !important;
}

.border-danger-subtle {
  border-color: var(--bs-danger-border-subtle) !important;
}

.border-light-subtle {
  border-color: var(--bs-light-border-subtle) !important;
}

.border-dark-subtle {
  border-color: var(--bs-dark-border-subtle) !important;
}

.border-1 {
  border-width: 1px !important;
}

.border-2 {
  border-width: 2px !important;
}

.border-3 {
  border-width: 3px !important;
}

.border-4 {
  border-width: 4px !important;
}

.border-5 {
  border-width: 5px !important;
}

.border-opacity-10 {
  --bs-border-opacity: 0.1;
}

.border-opacity-25 {
  --bs-border-opacity: 0.25;
}

.border-opacity-50 {
  --bs-border-opacity: 0.5;
}

.border-opacity-75 {
  --bs-border-opacity: 0.75;
}

.border-opacity-100 {
  --bs-border-opacity: 1;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.vw-100 {
  width: 100vw !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mh-100 {
  max-height: 100% !important;
}

.vh-100 {
  height: 100vh !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.justify-content-evenly {
  justify-content: space-evenly !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

.order-first {
  order: -1 !important;
}

.order-0 {
  order: 0 !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.m-0 {
  margin: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.mx-1 {
  margin-right: 0.25rem !important;
  margin-left: 0.25rem !important;
}

.mx-2 {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mt-3 {
  margin-top: 1rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mt-auto {
  margin-top: auto !important;
}

.me-0 {
  margin-right: 0 !important;
}

.me-1 {
  margin-right: 0.25rem !important;
}

.me-2 {
  margin-right: 0.5rem !important;
}

.me-3 {
  margin-right: 1rem !important;
}

.me-4 {
  margin-right: 1.5rem !important;
}

.me-5 {
  margin-right: 3rem !important;
}

.me-auto {
  margin-right: auto !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ms-0 {
  margin-left: 0 !important;
}

.ms-1 {
  margin-left: 0.25rem !important;
}

.ms-2 {
  margin-left: 0.5rem !important;
}

.ms-3 {
  margin-left: 1rem !important;
}

.ms-4 {
  margin-left: 1.5rem !important;
}

.ms-5 {
  margin-left: 3rem !important;
}

.ms-auto {
  margin-left: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

.px-2 {
  padding-right: 0.5rem !important;
  padding-left: 0.5rem !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pe-0 {
  padding-right: 0 !important;
}

.pe-1 {
  padding-right: 0.25rem !important;
}

.pe-2 {
  padding-right: 0.5rem !important;
}

.pe-3 {
  padding-right: 1rem !important;
}

.pe-4 {
  padding-right: 1.5rem !important;
}

.pe-5 {
  padding-right: 3rem !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-left: 0 !important;
}

.ps-1 {
  padding-left: 0.25rem !important;
}

.ps-2 {
  padding-left: 0.5rem !important;
}

.ps-3 {
  padding-left: 1rem !important;
}

.ps-4 {
  padding-left: 1.5rem !important;
}

.ps-5 {
  padding-left: 3rem !important;
}

.gap-0 {
  gap: 0 !important;
}

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

.row-gap-0 {
  row-gap: 0 !important;
}

.row-gap-1 {
  row-gap: 0.25rem !important;
}

.row-gap-2 {
  row-gap: 0.5rem !important;
}

.row-gap-3 {
  row-gap: 1rem !important;
}

.row-gap-4 {
  row-gap: 1.5rem !important;
}

.row-gap-5 {
  row-gap: 3rem !important;
}

.column-gap-0 {
  column-gap: 0 !important;
}

.column-gap-1 {
  column-gap: 0.25rem !important;
}

.column-gap-2 {
  column-gap: 0.5rem !important;
}

.column-gap-3 {
  column-gap: 1rem !important;
}

.column-gap-4 {
  column-gap: 1.5rem !important;
}

.column-gap-5 {
  column-gap: 3rem !important;
}

.font-monospace {
  font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
  font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
  font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
  font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
  font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
  font-size: 1.25rem !important;
}

.fs-6 {
  font-size: 1rem !important;
}

.fst-italic {
  font-style: italic !important;
}

.fst-normal {
  font-style: normal !important;
}

.fw-lighter {
  font-weight: lighter !important;
}

.fw-light {
  font-weight: 300 !important;
}

.fw-normal {
  font-weight: 400 !important;
}

.fw-medium {
  font-weight: 500 !important;
}

.fw-semibold {
  font-weight: 600 !important;
}

.fw-bold {
  font-weight: 700 !important;
}

.fw-bolder {
  font-weight: bolder !important;
}

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.5 !important;
}

.lh-lg {
  line-height: 2 !important;
}

.text-start {
  text-align: left !important;
}

.text-end {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-decoration-underline {
  text-decoration: underline !important;
}

.text-decoration-line-through {
  text-decoration: line-through !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

/* rtl:begin:remove */
.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* rtl:end:remove */
.text-primary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-secondary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
}

.text-success {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
}

.text-info {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
}

.text-warning {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
}

.text-danger {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
}

.text-light {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
}

.text-dark {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}

.text-black {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-body {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;
}

.text-muted {
  --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
}

.text-black-50 {
  --bs-text-opacity: 1;
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  --bs-text-opacity: 1;
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-body-secondary {
  --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
}

.text-body-tertiary {
  --bs-text-opacity: 1;
  color: var(--bs-tertiary-color) !important;
}

.text-body-emphasis {
  --bs-text-opacity: 1;
  color: var(--bs-emphasis-color) !important;
}

.text-reset {
  --bs-text-opacity: 1;
  color: inherit !important;
}

.text-opacity-25 {
  --bs-text-opacity: 0.25;
}

.text-opacity-50 {
  --bs-text-opacity: 0.5;
}

.text-opacity-75 {
  --bs-text-opacity: 0.75;
}

.text-opacity-100 {
  --bs-text-opacity: 1;
}

.text-primary-emphasis {
  color: var(--bs-primary-text-emphasis) !important;
}

.text-secondary-emphasis {
  color: var(--bs-secondary-text-emphasis) !important;
}

.text-success-emphasis {
  color: var(--bs-success-text-emphasis) !important;
}

.text-info-emphasis {
  color: var(--bs-info-text-emphasis) !important;
}

.text-warning-emphasis {
  color: var(--bs-warning-text-emphasis) !important;
}

.text-danger-emphasis {
  color: var(--bs-danger-text-emphasis) !important;
}

.text-light-emphasis {
  color: var(--bs-light-text-emphasis) !important;
}

.text-dark-emphasis {
  color: var(--bs-dark-text-emphasis) !important;
}

.link-opacity-10 {
  --bs-link-opacity: 0.1;
}

.link-opacity-10-hover:hover {
  --bs-link-opacity: 0.1;
}

.link-opacity-25 {
  --bs-link-opacity: 0.25;
}

.link-opacity-25-hover:hover {
  --bs-link-opacity: 0.25;
}

.link-opacity-50 {
  --bs-link-opacity: 0.5;
}

.link-opacity-50-hover:hover {
  --bs-link-opacity: 0.5;
}

.link-opacity-75 {
  --bs-link-opacity: 0.75;
}

.link-opacity-75-hover:hover {
  --bs-link-opacity: 0.75;
}

.link-opacity-100 {
  --bs-link-opacity: 1;
}

.link-opacity-100-hover:hover {
  --bs-link-opacity: 1;
}

.link-offset-1 {
  text-underline-offset: 0.125em !important;
}

.link-offset-1-hover:hover {
  text-underline-offset: 0.125em !important;
}

.link-offset-2 {
  text-underline-offset: 0.25em !important;
}

.link-offset-2-hover:hover {
  text-underline-offset: 0.25em !important;
}

.link-offset-3 {
  text-underline-offset: 0.375em !important;
}

.link-offset-3-hover:hover {
  text-underline-offset: 0.375em !important;
}

.link-underline-primary {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-secondary {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-success {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-info {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-warning {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-danger {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-light {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-dark {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline {
  --bs-link-underline-opacity: 1;
  text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-underline-opacity-0 {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-0-hover:hover {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-10 {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-10-hover:hover {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-25 {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-25-hover:hover {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-50 {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-50-hover:hover {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-75 {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-75-hover:hover {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-100 {
  --bs-link-underline-opacity: 1;
}

.link-underline-opacity-100-hover:hover {
  --bs-link-underline-opacity: 1;
}

.bg-primary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-success {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}

.bg-info {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
}

.bg-warning {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
}

.bg-danger {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

.bg-light {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
}

.bg-dark {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
}

.bg-black {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
}

.bg-white {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-transparent {
  --bs-bg-opacity: 1;
  background-color: transparent !important;
}

.bg-body-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body-tertiary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-opacity-10 {
  --bs-bg-opacity: 0.1;
}

.bg-opacity-25 {
  --bs-bg-opacity: 0.25;
}

.bg-opacity-50 {
  --bs-bg-opacity: 0.5;
}

.bg-opacity-75 {
  --bs-bg-opacity: 0.75;
}

.bg-opacity-100 {
  --bs-bg-opacity: 1;
}

.bg-primary-subtle {
  background-color: var(--bs-primary-bg-subtle) !important;
}

.bg-secondary-subtle {
  background-color: var(--bs-secondary-bg-subtle) !important;
}

.bg-success-subtle {
  background-color: var(--bs-success-bg-subtle) !important;
}

.bg-info-subtle {
  background-color: var(--bs-info-bg-subtle) !important;
}

.bg-warning-subtle {
  background-color: var(--bs-warning-bg-subtle) !important;
}

.bg-danger-subtle {
  background-color: var(--bs-danger-bg-subtle) !important;
}

.bg-light-subtle {
  background-color: var(--bs-light-bg-subtle) !important;
}

.bg-dark-subtle {
  background-color: var(--bs-dark-bg-subtle) !important;
}

.bg-gradient {
  background-image: var(--bs-gradient) !important;
}

.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

.pe-none {
  pointer-events: none !important;
}

.pe-auto {
  pointer-events: auto !important;
}

.rounded {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.rounded-1 {
  border-radius: var(--bs-border-radius-sm) !important;
}

.rounded-2 {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-3 {
  border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 {
  border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 {
  border-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: var(--bs-border-radius-pill) !important;
}

.rounded-top {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-0 {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.rounded-top-1 {
  border-top-left-radius: var(--bs-border-radius-sm) !important;
  border-top-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-top-2 {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-3 {
  border-top-left-radius: var(--bs-border-radius-lg) !important;
  border-top-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-top-4 {
  border-top-left-radius: var(--bs-border-radius-xl) !important;
  border-top-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-top-5 {
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-top-circle {
  border-top-left-radius: 50% !important;
  border-top-right-radius: 50% !important;
}

.rounded-top-pill {
  border-top-left-radius: var(--bs-border-radius-pill) !important;
  border-top-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-end {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-0 {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.rounded-end-1 {
  border-top-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-end-2 {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-3 {
  border-top-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-end-4 {
  border-top-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-end-5 {
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-end-circle {
  border-top-right-radius: 50% !important;
  border-bottom-right-radius: 50% !important;
}

.rounded-end-pill {
  border-top-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-bottom {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-0 {
  border-bottom-right-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.rounded-bottom-1 {
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-bottom-2 {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-3 {
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-bottom-4 {
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-bottom-5 {
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-bottom-circle {
  border-bottom-right-radius: 50% !important;
  border-bottom-left-radius: 50% !important;
}

.rounded-bottom-pill {
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
}

.rounded-start {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-0 {
  border-bottom-left-radius: 0 !important;
  border-top-left-radius: 0 !important;
}

.rounded-start-1 {
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
  border-top-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-start-2 {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-3 {
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
  border-top-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-start-4 {
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
  border-top-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-start-5 {
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-start-circle {
  border-bottom-left-radius: 50% !important;
  border-top-left-radius: 50% !important;
}

.rounded-start-pill {
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
  border-top-left-radius: var(--bs-border-radius-pill) !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.z-n1 {
  z-index: -1 !important;
}

.z-0 {
  z-index: 0 !important;
}

.z-1 {
  z-index: 1 !important;
}

.z-2 {
  z-index: 2 !important;
}

.z-3 {
  z-index: 3 !important;
}

@media (min-width: 576px) {
  .float-sm-start {
    float: left !important;
  }
  .float-sm-end {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
  .object-fit-sm-contain {
    object-fit: contain !important;
  }
  .object-fit-sm-cover {
    object-fit: cover !important;
  }
  .object-fit-sm-fill {
    object-fit: fill !important;
  }
  .object-fit-sm-scale {
    object-fit: scale-down !important;
  }
  .object-fit-sm-none {
    object-fit: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-grid {
    display: grid !important;
  }
  .d-sm-inline-grid {
    display: inline-grid !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .d-sm-none {
    display: none !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
  .order-sm-first {
    order: -1 !important;
  }
  .order-sm-0 {
    order: 0 !important;
  }
  .order-sm-1 {
    order: 1 !important;
  }
  .order-sm-2 {
    order: 2 !important;
  }
  .order-sm-3 {
    order: 3 !important;
  }
  .order-sm-4 {
    order: 4 !important;
  }
  .order-sm-5 {
    order: 5 !important;
  }
  .order-sm-last {
    order: 6 !important;
  }
  .m-sm-0 {
    margin: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mt-sm-3 {
    margin-top: 1rem !important;
  }
  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mt-sm-5 {
    margin-top: 3rem !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 0.25rem !important;
  }
  .me-sm-2 {
    margin-right: 0.5rem !important;
  }
  .me-sm-3 {
    margin-right: 1rem !important;
  }
  .me-sm-4 {
    margin-right: 1.5rem !important;
  }
  .me-sm-5 {
    margin-right: 3rem !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }
  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 0.25rem !important;
  }
  .ms-sm-2 {
    margin-left: 0.5rem !important;
  }
  .ms-sm-3 {
    margin-left: 1rem !important;
  }
  .ms-sm-4 {
    margin-left: 1.5rem !important;
  }
  .ms-sm-5 {
    margin-left: 3rem !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pt-sm-3 {
    padding-top: 1rem !important;
  }
  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pt-sm-5 {
    padding-top: 3rem !important;
  }
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pe-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pe-sm-3 {
    padding-right: 1rem !important;
  }
  .pe-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pe-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 0.25rem !important;
  }
  .ps-sm-2 {
    padding-left: 0.5rem !important;
  }
  .ps-sm-3 {
    padding-left: 1rem !important;
  }
  .ps-sm-4 {
    padding-left: 1.5rem !important;
  }
  .ps-sm-5 {
    padding-left: 3rem !important;
  }
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-1 {
    gap: 0.25rem !important;
  }
  .gap-sm-2 {
    gap: 0.5rem !important;
  }
  .gap-sm-3 {
    gap: 1rem !important;
  }
  .gap-sm-4 {
    gap: 1.5rem !important;
  }
  .gap-sm-5 {
    gap: 3rem !important;
  }
  .row-gap-sm-0 {
    row-gap: 0 !important;
  }
  .row-gap-sm-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-sm-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-sm-3 {
    row-gap: 1rem !important;
  }
  .row-gap-sm-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-sm-5 {
    row-gap: 3rem !important;
  }
  .column-gap-sm-0 {
    column-gap: 0 !important;
  }
  .column-gap-sm-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-sm-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-sm-3 {
    column-gap: 1rem !important;
  }
  .column-gap-sm-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-sm-5 {
    column-gap: 3rem !important;
  }
  .text-sm-start {
    text-align: left !important;
  }
  .text-sm-end {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .float-md-start {
    float: left !important;
  }
  .float-md-end {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
  .object-fit-md-contain {
    object-fit: contain !important;
  }
  .object-fit-md-cover {
    object-fit: cover !important;
  }
  .object-fit-md-fill {
    object-fit: fill !important;
  }
  .object-fit-md-scale {
    object-fit: scale-down !important;
  }
  .object-fit-md-none {
    object-fit: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-grid {
    display: grid !important;
  }
  .d-md-inline-grid {
    display: inline-grid !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .d-md-none {
    display: none !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .justify-content-md-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
  .order-md-first {
    order: -1 !important;
  }
  .order-md-0 {
    order: 0 !important;
  }
  .order-md-1 {
    order: 1 !important;
  }
  .order-md-2 {
    order: 2 !important;
  }
  .order-md-3 {
    order: 3 !important;
  }
  .order-md-4 {
    order: 4 !important;
  }
  .order-md-5 {
    order: 5 !important;
  }
  .order-md-last {
    order: 6 !important;
  }
  .m-md-0 {
    margin: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 0.25rem !important;
  }
  .mt-md-2 {
    margin-top: 0.5rem !important;
  }
  .mt-md-3 {
    margin-top: 1rem !important;
  }
  .mt-md-4 {
    margin-top: 1.5rem !important;
  }
  .mt-md-5 {
    margin-top: 3rem !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 0.25rem !important;
  }
  .me-md-2 {
    margin-right: 0.5rem !important;
  }
  .me-md-3 {
    margin-right: 1rem !important;
  }
  .me-md-4 {
    margin-right: 1.5rem !important;
  }
  .me-md-5 {
    margin-right: 3rem !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-md-3 {
    margin-bottom: 1rem !important;
  }
  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-md-5 {
    margin-bottom: 3rem !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 0.25rem !important;
  }
  .ms-md-2 {
    margin-left: 0.5rem !important;
  }
  .ms-md-3 {
    margin-left: 1rem !important;
  }
  .ms-md-4 {
    margin-left: 1.5rem !important;
  }
  .ms-md-5 {
    margin-left: 3rem !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 0.25rem !important;
  }
  .pt-md-2 {
    padding-top: 0.5rem !important;
  }
  .pt-md-3 {
    padding-top: 1rem !important;
  }
  .pt-md-4 {
    padding-top: 1.5rem !important;
  }
  .pt-md-5 {
    padding-top: 3rem !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 0.25rem !important;
  }
  .pe-md-2 {
    padding-right: 0.5rem !important;
  }
  .pe-md-3 {
    padding-right: 1rem !important;
  }
  .pe-md-4 {
    padding-right: 1.5rem !important;
  }
  .pe-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-md-3 {
    padding-bottom: 1rem !important;
  }
  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-md-5 {
    padding-bottom: 3rem !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 0.25rem !important;
  }
  .ps-md-2 {
    padding-left: 0.5rem !important;
  }
  .ps-md-3 {
    padding-left: 1rem !important;
  }
  .ps-md-4 {
    padding-left: 1.5rem !important;
  }
  .ps-md-5 {
    padding-left: 3rem !important;
  }
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-1 {
    gap: 0.25rem !important;
  }
  .gap-md-2 {
    gap: 0.5rem !important;
  }
  .gap-md-3 {
    gap: 1rem !important;
  }
  .gap-md-4 {
    gap: 1.5rem !important;
  }
  .gap-md-5 {
    gap: 3rem !important;
  }
  .row-gap-md-0 {
    row-gap: 0 !important;
  }
  .row-gap-md-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-md-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-md-3 {
    row-gap: 1rem !important;
  }
  .row-gap-md-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-md-5 {
    row-gap: 3rem !important;
  }
  .column-gap-md-0 {
    column-gap: 0 !important;
  }
  .column-gap-md-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-md-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-md-3 {
    column-gap: 1rem !important;
  }
  .column-gap-md-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-md-5 {
    column-gap: 3rem !important;
  }
  .text-md-start {
    text-align: left !important;
  }
  .text-md-end {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .float-lg-start {
    float: left !important;
  }
  .float-lg-end {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
  .object-fit-lg-contain {
    object-fit: contain !important;
  }
  .object-fit-lg-cover {
    object-fit: cover !important;
  }
  .object-fit-lg-fill {
    object-fit: fill !important;
  }
  .object-fit-lg-scale {
    object-fit: scale-down !important;
  }
  .object-fit-lg-none {
    object-fit: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-grid {
    display: grid !important;
  }
  .d-lg-inline-grid {
    display: inline-grid !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .d-lg-none {
    display: none !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
  .order-lg-first {
    order: -1 !important;
  }
  .order-lg-0 {
    order: 0 !important;
  }
  .order-lg-1 {
    order: 1 !important;
  }
  .order-lg-2 {
    order: 2 !important;
  }
  .order-lg-3 {
    order: 3 !important;
  }
  .order-lg-4 {
    order: 4 !important;
  }
  .order-lg-5 {
    order: 5 !important;
  }
  .order-lg-last {
    order: 6 !important;
  }
  .m-lg-0 {
    margin: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mt-lg-3 {
    margin-top: 1rem !important;
  }
  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mt-lg-5 {
    margin-top: 3rem !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 0.25rem !important;
  }
  .me-lg-2 {
    margin-right: 0.5rem !important;
  }
  .me-lg-3 {
    margin-right: 1rem !important;
  }
  .me-lg-4 {
    margin-right: 1.5rem !important;
  }
  .me-lg-5 {
    margin-right: 3rem !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }
  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }
  .ms-lg-3 {
    margin-left: 1rem !important;
  }
  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }
  .ms-lg-5 {
    margin-left: 3rem !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pt-lg-3 {
    padding-top: 1rem !important;
  }
  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pt-lg-5 {
    padding-top: 3rem !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pe-lg-3 {
    padding-right: 1rem !important;
  }
  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pe-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }
  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }
  .ps-lg-3 {
    padding-left: 1rem !important;
  }
  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }
  .ps-lg-5 {
    padding-left: 3rem !important;
  }
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-1 {
    gap: 0.25rem !important;
  }
  .gap-lg-2 {
    gap: 0.5rem !important;
  }
  .gap-lg-3 {
    gap: 1rem !important;
  }
  .gap-lg-4 {
    gap: 1.5rem !important;
  }
  .gap-lg-5 {
    gap: 3rem !important;
  }
  .row-gap-lg-0 {
    row-gap: 0 !important;
  }
  .row-gap-lg-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-lg-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-lg-3 {
    row-gap: 1rem !important;
  }
  .row-gap-lg-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-lg-5 {
    row-gap: 3rem !important;
  }
  .column-gap-lg-0 {
    column-gap: 0 !important;
  }
  .column-gap-lg-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-lg-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-lg-3 {
    column-gap: 1rem !important;
  }
  .column-gap-lg-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-lg-5 {
    column-gap: 3rem !important;
  }
  .text-lg-start {
    text-align: left !important;
  }
  .text-lg-end {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-start {
    float: left !important;
  }
  .float-xl-end {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
  .object-fit-xl-contain {
    object-fit: contain !important;
  }
  .object-fit-xl-cover {
    object-fit: cover !important;
  }
  .object-fit-xl-fill {
    object-fit: fill !important;
  }
  .object-fit-xl-scale {
    object-fit: scale-down !important;
  }
  .object-fit-xl-none {
    object-fit: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-grid {
    display: grid !important;
  }
  .d-xl-inline-grid {
    display: inline-grid !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .d-xl-none {
    display: none !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
  .order-xl-first {
    order: -1 !important;
  }
  .order-xl-0 {
    order: 0 !important;
  }
  .order-xl-1 {
    order: 1 !important;
  }
  .order-xl-2 {
    order: 2 !important;
  }
  .order-xl-3 {
    order: 3 !important;
  }
  .order-xl-4 {
    order: 4 !important;
  }
  .order-xl-5 {
    order: 5 !important;
  }
  .order-xl-last {
    order: 6 !important;
  }
  .m-xl-0 {
    margin: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xl-3 {
    margin-top: 1rem !important;
  }
  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xl-5 {
    margin-top: 3rem !important;
  }
  .mt-xl-auto {
    margin-top: auto !important;
  }
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xl-3 {
    margin-right: 1rem !important;
  }
  .me-xl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xl-5 {
    margin-right: 3rem !important;
  }
  .me-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xl-auto {
    margin-bottom: auto !important;
  }
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xl-3 {
    margin-left: 1rem !important;
  }
  .ms-xl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xl-5 {
    margin-left: 3rem !important;
  }
  .ms-xl-auto {
    margin-left: auto !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xl-3 {
    padding-top: 1rem !important;
  }
  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xl-5 {
    padding-top: 3rem !important;
  }
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xl-3 {
    padding-right: 1rem !important;
  }
  .pe-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xl-3 {
    padding-left: 1rem !important;
  }
  .ps-xl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xl-5 {
    padding-left: 3rem !important;
  }
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-1 {
    gap: 0.25rem !important;
  }
  .gap-xl-2 {
    gap: 0.5rem !important;
  }
  .gap-xl-3 {
    gap: 1rem !important;
  }
  .gap-xl-4 {
    gap: 1.5rem !important;
  }
  .gap-xl-5 {
    gap: 3rem !important;
  }
  .row-gap-xl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xl-0 {
    column-gap: 0 !important;
  }
  .column-gap-xl-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-xl-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-xl-3 {
    column-gap: 1rem !important;
  }
  .column-gap-xl-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-xl-5 {
    column-gap: 3rem !important;
  }
  .text-xl-start {
    text-align: left !important;
  }
  .text-xl-end {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .float-xxl-start {
    float: left !important;
  }
  .float-xxl-end {
    float: right !important;
  }
  .float-xxl-none {
    float: none !important;
  }
  .object-fit-xxl-contain {
    object-fit: contain !important;
  }
  .object-fit-xxl-cover {
    object-fit: cover !important;
  }
  .object-fit-xxl-fill {
    object-fit: fill !important;
  }
  .object-fit-xxl-scale {
    object-fit: scale-down !important;
  }
  .object-fit-xxl-none {
    object-fit: none !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-grid {
    display: grid !important;
  }
  .d-xxl-inline-grid {
    display: inline-grid !important;
  }
  .d-xxl-table {
    display: table !important;
  }
  .d-xxl-table-row {
    display: table-row !important;
  }
  .d-xxl-table-cell {
    display: table-cell !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .d-xxl-none {
    display: none !important;
  }
  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xxl-row {
    flex-direction: row !important;
  }
  .flex-xxl-column {
    flex-direction: column !important;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxl-center {
    justify-content: center !important;
  }
  .justify-content-xxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxl-around {
    justify-content: space-around !important;
  }
  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxl-center {
    align-items: center !important;
  }
  .align-items-xxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxl-center {
    align-content: center !important;
  }
  .align-content-xxl-between {
    align-content: space-between !important;
  }
  .align-content-xxl-around {
    align-content: space-around !important;
  }
  .align-content-xxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxl-auto {
    align-self: auto !important;
  }
  .align-self-xxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxl-center {
    align-self: center !important;
  }
  .align-self-xxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
  .order-xxl-first {
    order: -1 !important;
  }
  .order-xxl-0 {
    order: 0 !important;
  }
  .order-xxl-1 {
    order: 1 !important;
  }
  .order-xxl-2 {
    order: 2 !important;
  }
  .order-xxl-3 {
    order: 3 !important;
  }
  .order-xxl-4 {
    order: 4 !important;
  }
  .order-xxl-5 {
    order: 5 !important;
  }
  .order-xxl-last {
    order: 6 !important;
  }
  .m-xxl-0 {
    margin: 0 !important;
  }
  .m-xxl-1 {
    margin: 0.25rem !important;
  }
  .m-xxl-2 {
    margin: 0.5rem !important;
  }
  .m-xxl-3 {
    margin: 1rem !important;
  }
  .m-xxl-4 {
    margin: 1.5rem !important;
  }
  .m-xxl-5 {
    margin: 3rem !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xxl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xxl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xxl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xxl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xxl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xxl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xxl-3 {
    margin-top: 1rem !important;
  }
  .mt-xxl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xxl-5 {
    margin-top: 3rem !important;
  }
  .mt-xxl-auto {
    margin-top: auto !important;
  }
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xxl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xxl-3 {
    margin-right: 1rem !important;
  }
  .me-xxl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xxl-5 {
    margin-right: 3rem !important;
  }
  .me-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xxl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xxl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xxl-auto {
    margin-bottom: auto !important;
  }
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xxl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xxl-3 {
    margin-left: 1rem !important;
  }
  .ms-xxl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xxl-5 {
    margin-left: 3rem !important;
  }
  .ms-xxl-auto {
    margin-left: auto !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 0.25rem !important;
  }
  .p-xxl-2 {
    padding: 0.5rem !important;
  }
  .p-xxl-3 {
    padding: 1rem !important;
  }
  .p-xxl-4 {
    padding: 1.5rem !important;
  }
  .p-xxl-5 {
    padding: 3rem !important;
  }
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xxl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xxl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xxl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xxl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xxl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xxl-3 {
    padding-top: 1rem !important;
  }
  .pt-xxl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xxl-5 {
    padding-top: 3rem !important;
  }
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xxl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xxl-3 {
    padding-right: 1rem !important;
  }
  .pe-xxl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xxl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xxl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xxl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xxl-3 {
    padding-left: 1rem !important;
  }
  .ps-xxl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xxl-5 {
    padding-left: 3rem !important;
  }
  .gap-xxl-0 {
    gap: 0 !important;
  }
  .gap-xxl-1 {
    gap: 0.25rem !important;
  }
  .gap-xxl-2 {
    gap: 0.5rem !important;
  }
  .gap-xxl-3 {
    gap: 1rem !important;
  }
  .gap-xxl-4 {
    gap: 1.5rem !important;
  }
  .gap-xxl-5 {
    gap: 3rem !important;
  }
  .row-gap-xxl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xxl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xxl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xxl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xxl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xxl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xxl-0 {
    column-gap: 0 !important;
  }
  .column-gap-xxl-1 {
    column-gap: 0.25rem !important;
  }
  .column-gap-xxl-2 {
    column-gap: 0.5rem !important;
  }
  .column-gap-xxl-3 {
    column-gap: 1rem !important;
  }
  .column-gap-xxl-4 {
    column-gap: 1.5rem !important;
  }
  .column-gap-xxl-5 {
    column-gap: 3rem !important;
  }
  .text-xxl-start {
    text-align: left !important;
  }
  .text-xxl-end {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .fs-1 {
    font-size: 2.5rem !important;
  }
  .fs-2 {
    font-size: 2rem !important;
  }
  .fs-3 {
    font-size: 1.75rem !important;
  }
  .fs-4 {
    font-size: 1.5rem !important;
  }
}
@media print {
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-grid {
    display: grid !important;
  }
  .d-print-inline-grid {
    display: inline-grid !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
  .d-print-none {
    display: none !important;
  }
}
@font-face {
  font-family: "Barlow";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/barlow-latin-400-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Barlow";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/barlow-latin-500-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Barlow";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/barlow-latin-600-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Barlow";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/barlow-latin-700-normal.woff2") format("woff2");
}
@font-face {
  font-family: "League Gothic";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/league-gothic-latin-400-normal.woff2") format("woff2");
}
h1, .h1,
h2,
.h2,
.catch-title {
  font-family: "League Gothic", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.catch-eyebrow {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #FF4655;
}
.catch-eyebrow::before {
  content: "";
  display: inline-block;
  width: 1.5em;
  height: 2px;
  margin-right: 0.5em;
  vertical-align: middle;
  background-color: currentColor;
}

.btn {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
}

.card,
.modal-content {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
}

.btn:active {
  transform: translateY(1px);
}

[data-reveal] {
  opacity: 0;
  transform: translateY(1.5rem);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

[data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

.stagger-reveal > *:nth-child(1)[data-reveal],
.stagger-reveal > *:nth-child(1) [data-reveal] {
  transition-delay: 0ms;
}
.stagger-reveal > *:nth-child(2)[data-reveal],
.stagger-reveal > *:nth-child(2) [data-reveal] {
  transition-delay: 80ms;
}
.stagger-reveal > *:nth-child(3)[data-reveal],
.stagger-reveal > *:nth-child(3) [data-reveal] {
  transition-delay: 160ms;
}
.stagger-reveal > *:nth-child(4)[data-reveal],
.stagger-reveal > *:nth-child(4) [data-reveal] {
  transition-delay: 240ms;
}
.stagger-reveal > *:nth-child(5)[data-reveal],
.stagger-reveal > *:nth-child(5) [data-reveal] {
  transition-delay: 320ms;
}
.stagger-reveal > *:nth-child(6)[data-reveal],
.stagger-reveal > *:nth-child(6) [data-reveal] {
  transition-delay: 400ms;
}
.stagger-reveal > *:nth-child(7)[data-reveal],
.stagger-reveal > *:nth-child(7) [data-reveal] {
  transition-delay: 480ms;
}
.stagger-reveal > *:nth-child(8)[data-reveal],
.stagger-reveal > *:nth-child(8) [data-reveal] {
  transition-delay: 560ms;
}

.text-scramble__char {
  color: #FF4655;
}

@media (prefers-reduced-motion: reduce) {
  [data-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .stagger-reveal > * [data-reveal],
  .stagger-reveal > [data-reveal] {
    transition-delay: 0ms;
  }
}
label {
  font-weight: 500;
}

.form-label {
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.form-control {
  border-left: 3px solid transparent;
}

.form-control:focus {
  border-left-color: #FF4655;
}

.listings-card {
  --bs-gutter-x: 1rem;
  --bs-gutter-y: 1.75rem;
}

.c-card-slot {
  display: flex;
  justify-content: center;
}

.c-card-slot--grid {
  padding: 48px;
  margin: -48px;
  pointer-events: none;
  content-visibility: auto;
  contain-intrinsic-size: auto 260px auto 390px;
}
.c-card-slot--grid .c-card-shell {
  pointer-events: auto;
}

@media (max-width: 575.98px) {
  .catch-collection,
  .home-latest,
  .catch-shop,
  .catch-account,
  .agent-cards {
    overflow-x: clip;
  }
}
.c-card-shell {
  --halo: transparent;
  --halo-size: 0px;
  position: relative;
  width: 100%;
  max-width: 260px;
  box-shadow: 0 14px 20px rgba(0, 0, 0, 0.5), 0 0 var(--halo-size) var(--halo);
  transition: transform 240ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.c-card-slot.is-clipped .c-card-shell {
  box-shadow: none;
  filter: drop-shadow(0 14px 20px rgba(0, 0, 0, 0.5)) drop-shadow(0 0 var(--halo-size) var(--halo));
}

.c-card {
  container-type: inline-size;
  --win-x: 3%;
  --win-y: 2%;
  position: relative;
  width: 100%;
  aspect-ratio: 2/3;
  overflow: hidden;
  background: linear-gradient(158deg, #39434e, #10171f);
  color: #efece5;
  font-family: "Barlow", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.c-card__chassis {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.c-card__window {
  position: absolute;
  z-index: 2;
  overflow: hidden;
  left: var(--win-x);
  right: var(--win-x);
  top: var(--win-y);
  bottom: var(--win-y);
  background: #050a0f;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.75), inset 0 3px 10px rgba(0, 0, 0, 0.55);
}

.c-card__fx {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.c-card__fx--bloom {
  z-index: 1;
}

.c-card__fx--aura {
  z-index: 1;
}

.c-card__fx--rays {
  z-index: 1;
}

.c-card__fx--shine {
  z-index: 2;
}

.c-card__fx--spark {
  z-index: 2;
}

.c-card__fx--spark2 {
  z-index: 2;
}

.c-card__fx.is-blurred {
  inset: -16%;
}

.c-card__seal {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: grid;
  place-items: center;
  color: rgba(255, 255, 255, 0.07);
}

.c-card__glyph {
  width: 92%;
  height: 92%;
  fill: currentColor;
  transform: translateY(-6%);
}

.c-card__floor {
  position: absolute;
  left: 50%;
  bottom: 6%;
  z-index: 2;
  width: 74%;
  height: 16%;
  transform: translateX(-50%);
  background: radial-gradient(ellipse at center, var(--ag-a, #243447) 0%, transparent 68%);
  filter: blur(7px);
  opacity: 0.85;
}

.c-card__image {
  position: relative;
  z-index: 3;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.c-card__vignette {
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
  background: radial-gradient(ellipse 78% 62% at 50% 46%, transparent 40%, rgba(4, 7, 11, 0.7) 100%);
}

.c-card__rim {
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
  box-shadow: inset 0 0 var(--rim-size, 0px) var(--rim-spread, 0px) var(--rim, transparent);
}

.c-card__band {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(4, 7, 11, 0.9) 0%, rgba(4, 7, 11, 0.6) 12%, transparent 24%), linear-gradient(to top, rgba(4, 7, 11, 0.94) 0%, rgba(4, 7, 11, 0.66) 18%, transparent 38%);
}

.c-card__frame {
  position: absolute;
  inset: 0;
  z-index: 4;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.c-card__frame path,
.c-card__frame circle {
  fill: none;
  stroke-linecap: square;
}

.fr-outer {
  stroke: var(--fr-line, #7c8894);
  stroke-width: 2;
}

.fr-inner {
  stroke: var(--fr-line, #7c8894);
  stroke-width: 1;
  opacity: 0.45;
}

.fr-win {
  stroke: var(--fr-win, #8c98a4);
  stroke-width: 1.6;
}

.fr-rule {
  stroke: var(--fr-line, #7c8894);
  stroke-width: 1;
  opacity: 0.7;
}

.fr-tick {
  stroke: var(--fr-line, #7c8894);
  stroke-width: 1;
  opacity: 0.55;
}

.fr-spoke {
  stroke: var(--fr-line, #7c8894);
  stroke-width: 1.2;
  opacity: 0.8;
}

.fr-orn {
  stroke: var(--fr-orn, #99a5b1);
  stroke-width: 2;
}

.fr-trace {
  stroke: none;
  stroke-width: 2.5;
}

.fr-etch {
  stroke: var(--fr-etch, rgba(255, 255, 255, 0.5));
  stroke-width: 0.8;
}

.fr-fil {
  stroke: var(--fr-med, #fff3c8);
  stroke-width: 1.1;
}

.fr-med {
  stroke: var(--fr-med, #fff3c8);
  stroke-width: 1.6;
  fill: var(--fr-medfill, none);
}

.c-card__name {
  position: absolute;
  z-index: 7;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  white-space: nowrap;
  line-height: 1;
  text-transform: uppercase;
  font-size: 6.2cqw;
  font-weight: 800;
  letter-spacing: 0.05em;
  color: var(--tx-name, #f2efe8);
  background: var(--plate, rgba(6, 10, 15, 0.94));
  border: 1px solid var(--plate-line, rgba(239, 236, 229, 0.22));
  clip-path: polygon(0 0, 100% 0, 100% 58%, 95% 100%, 5% 100%, 0 58%);
  text-shadow: 0 0 14px var(--nameglow, transparent), 0 2px 3px rgba(0, 0, 0, 0.7);
}
.c-card__name span {
  display: block;
  max-width: 92%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.c-card__type,
.c-card__finish {
  position: absolute;
  z-index: 7;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  white-space: nowrap;
  line-height: 1;
  text-transform: uppercase;
}

.c-card__type {
  font-size: 3.8cqw;
  letter-spacing: 0.18em;
  color: var(--tx-type, #93a1af);
}

.c-card__finish {
  left: 8%;
  right: 8%;
  top: 87.5%;
  height: 7%;
  font-size: 4.2cqw;
  font-weight: 700;
  letter-spacing: 0.2em;
  color: var(--tx-fin, #93a1af);
  text-shadow: 0 0 10px var(--nameglow, transparent);
}

.c-card__pip {
  position: absolute;
  z-index: 7;
  width: 3.4cqw;
  height: 3.4cqw;
  background: var(--pip, #8c98a4);
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
  box-shadow: 0 0 8px var(--pip, #8c98a4);
}

.c-card__dup {
  position: absolute;
  z-index: 8;
  top: 3%;
  right: 5%;
  padding: 0.3em 0.55em;
  background: rgba(4, 7, 11, 0.92);
  border: 1px solid rgba(239, 236, 229, 0.55);
  font-size: 4.6cqw;
  font-weight: 700;
  line-height: 1.15;
  font-variant-numeric: tabular-nums;
  color: #efece5;
}

.c-card__quality {
  position: absolute;
  z-index: 20;
  top: 5%;
  left: 5%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: 88%;
  min-height: 1.75rem;
  padding: 0.3rem 0.45rem;
  border: 1px solid rgba(239, 236, 229, 0.22);
  border-radius: 2px;
  background: rgba(5, 10, 15, 0.84);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.34);
  color: #efece5;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-4px);
  transition: opacity 150ms ease-out, transform 180ms ease-out, visibility 0s linear 180ms;
}

.c-card__quality-unrated {
  font-size: clamp(0.5625rem, 3.6cqw, 0.6875rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(239, 236, 229, 0.76);
}

.c-card__quality-stars {
  display: inline-flex;
  justify-content: center;
  gap: clamp(0.0625rem, 0.8cqw, 0.125rem);
  color: rgba(240, 194, 75, 0.92);
}

.c-card__quality-breakdown {
  display: grid;
  gap: clamp(0.125rem, 1.2cqw, 0.25rem);
  width: 100%;
}

.c-card__quality-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(0.375rem, 2.8cqw, 0.625rem);
}

.c-card__quality-row--unrated {
  color: rgba(239, 236, 229, 0.76);
  font-size: clamp(0.5625rem, 3.6cqw, 0.6875rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.c-card__quality-count {
  min-width: 1.5rem;
  color: #efece5;
  font-size: clamp(0.625rem, 4.2cqw, 0.75rem);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  text-align: right;
}

.c-card__quality-star {
  display: block;
  width: clamp(0.7rem, 6.2cqw, 1rem);
  height: clamp(0.7rem, 6.2cqw, 1rem);
  fill: currentColor;
}

.c-card__grain {
  position: absolute;
  inset: 0;
  z-index: 6;
  pointer-events: none;
  opacity: 0.34;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
}

@media (hover: hover) and (pointer: fine) {
  .c-card-slot[data-card-quality-root]:hover .c-card__quality,
  .c-card-slot[data-card-quality-root]:focus-within .c-card__quality {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s;
  }
}
.c-card-slot.is-quality-open .c-card__quality {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
}

.c-card-shell[tabindex="0"]:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: 3px;
}

.c-card-slot:hover .c-card-shell {
  transform: translateY(-4px);
}

@media (hover: none) {
  .c-card-slot--grid .c-card-shell,
  .c-card-slot--grid .c-card__chassis,
  .c-card-slot--grid .c-card__fx,
  .c-card-slot--grid .c-card__finish,
  .c-card-slot--grid .fr-trace {
    animation: none;
  }
}
.c-card .stretched-link:focus-visible::after {
  outline: 2px solid #FF4655;
  outline-offset: 3px;
}

.c-card--agent .c-card__window {
  background: radial-gradient(ellipse 62% 34% at 50% 96%, var(--ag-a) 0%, transparent 64%), radial-gradient(ellipse 96% 46% at 50% 6%, var(--ag-b) 0%, transparent 62%), linear-gradient(168deg, var(--ag-a) 0%, #0f1923 46%, var(--ag-b) 100%);
}
.c-card--agent .c-card__image {
  object-position: bottom center;
  transform: scale(1.44);
  transform-origin: bottom center;
}

.c-card--skin .c-card__window {
  background: radial-gradient(ellipse 58% 40% at 50% 52%, #2a4356 0%, transparent 66%), linear-gradient(160deg, #132430 0%, #0b141c 52%, #2a4356 100%);
}
.c-card--skin .c-card__image {
  transform: rotate(-17deg) scale(0.8);
  filter: drop-shadow(0 14px 22px rgba(0, 0, 0, 0.6));
}

.c-card--map .c-card__image {
  object-fit: cover;
}

.c-card--ability .c-card__window {
  background: radial-gradient(circle at 50% 44%, #33406b 0%, #0a1018 70%);
}
.c-card--ability .c-card__image {
  transform: scale(0.6);
  filter: drop-shadow(0 0 26px rgba(180, 200, 255, 0.55));
}

.c-card--tactique .c-card__name {
  left: 9%;
  right: 9%;
  top: 4.4%;
  height: 10.5%;
}
.c-card--tactique .c-card__type {
  left: 9%;
  right: 9%;
  top: 78%;
  height: 5.5%;
}
.c-card--tactique .c-card__pip {
  left: 4.4%;
  top: 79.2%;
}
.c-card--tactique.c-card--map .c-card__type {
  left: 8%;
  right: 8%;
  top: 71%;
  height: 5%;
}
.c-card--tactique.c-card--map .c-card__name {
  left: 8%;
  right: 8%;
  top: 76.5%;
  height: 9%;
}
.c-card--tactique.c-card--map .c-card__pip {
  left: 3.6%;
  top: 72.2%;
}

.c-card--relique {
  --win-x: 6%;
  --win-y: 4%;
}
.c-card--relique .c-card__name {
  font-family: Georgia, "Times New Roman", serif;
  left: 13%;
  right: 13%;
  top: 7.5%;
  height: 9.5%;
  clip-path: polygon(4% 0, 96% 0, 100% 50%, 96% 100%, 4% 100%, 0 50%);
}
.c-card--relique .c-card__type {
  left: 14%;
  right: 14%;
  top: 76.833%;
  height: 5%;
}
.c-card--relique .c-card__pip {
  left: 8.4%;
  top: 78%;
}
.c-card--relique.c-card--map .c-card__name {
  top: 74.5%;
  height: 9%;
}

.c-card--prisme .c-card__name {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-weight: 600;
  font-size: 4.6cqw;
  letter-spacing: 0.12em;
  left: 7%;
  right: 7%;
  top: 74.5%;
  height: 8%;
  justify-content: flex-start;
  clip-path: none;
  background: rgba(4, 7, 11, 0.78);
  border: 0;
  border-left: 2px solid var(--pip, #8c98a4);
  padding-left: 0.6em;
  color: #f4f1ea;
}
.c-card--prisme .c-card__type {
  left: 9.5%;
  right: 40%;
  top: 84%;
  height: 4.5%;
  justify-content: flex-start;
  font-size: 3.4cqw;
  color: #c3cdd7;
}
.c-card--prisme .c-card__finish {
  left: 7%;
  right: 7%;
  top: 89.5%;
  height: 5%;
  justify-content: flex-start;
  font-size: 3.6cqw;
  color: #f4f1ea;
}
.c-card--prisme .c-card__pip {
  left: 7%;
  top: 85%;
}

.c-card--standard .c-card {
  --fr-line: #7c8894;
  --fr-win: #9aa6b2;
  --fr-orn: #66727e;
  --plate: rgba(6, 10, 15, 0.94);
  --plate-line: rgba(239, 236, 229, 0.2);
  --pip: #8c98a4;
  background: linear-gradient(158deg, #3b4551, #11181f);
}

.c-card--charged .c-card-shell {
  --halo: rgba(79, 227, 216, 0.55);
  --halo-size: 20px;
}
.c-card--charged .c-card {
  --fr-line: #4fe3d8;
  --fr-win: #7fefe6;
  --fr-orn: #4fe3d8;
  --plate: rgba(4, 26, 30, 0.94);
  --plate-line: rgba(79, 227, 216, 0.5);
  --tx-type: #7fefe6;
  --tx-fin: #7fefe6;
  --pip: #4fe3d8;
  --nameglow: rgba(79, 227, 216, 0.6);
  --rim: rgba(79, 227, 216, 0.55);
  --rim-size: 26px;
  --rim-spread: -8px;
  background: linear-gradient(158deg, #1e525a, #071519);
}
.c-card--charged .fr-trace {
  stroke: #c9fffa;
  stroke-dasharray: 54 920;
  filter: drop-shadow(0 0 5px rgb(79, 227, 216));
  animation: catch-card-trace 5.5s linear infinite;
}
.c-card--charged .fr-orn {
  filter: drop-shadow(0 0 4px rgba(79, 227, 216, 0.9));
}
.c-card--charged .c-card__fx--bloom {
  background: radial-gradient(ellipse 60% 42% at 50% 62%, rgba(79, 227, 216, 0.4) 0%, transparent 70%);
  animation: catch-card-breathe 4s ease-in-out infinite;
}

.c-card--overcharged .c-card-shell {
  --halo: rgba(255, 70, 85, 0.55);
  --halo-size: 26px;
}
.c-card--overcharged .c-card {
  --fr-line: #ff6b78;
  --fr-win: #ffa3ac;
  --fr-orn: #ffd2a0;
  --plate: rgba(26, 5, 9, 0.94);
  --plate-line: rgba(255, 107, 120, 0.55);
  --tx-type: #ff9aa5;
  --tx-fin: #ffb3bc;
  --pip: #ff4655;
  --nameglow: rgba(255, 70, 85, 0.75);
  --rim: rgba(255, 70, 85, 0.65);
  --rim-size: 34px;
  --rim-spread: -10px;
  background: linear-gradient(158deg, #7a2233, #180810);
}
.c-card--overcharged .fr-outer {
  stroke-width: 3.5;
}
.c-card--overcharged .fr-trace {
  stroke: #ffe3b0;
  stroke-width: 3;
  stroke-dasharray: 26 118;
  filter: drop-shadow(0 0 6px rgb(255, 150, 90));
  animation: catch-card-trace 1.9s linear infinite;
}
.c-card--overcharged .c-card__fx--bloom {
  background: radial-gradient(ellipse 66% 48% at 50% 58%, rgba(255, 70, 85, 0.55) 0%, transparent 72%);
  animation: catch-card-breathe 2.6s ease-in-out infinite;
}
.c-card--overcharged .c-card__fx--rays {
  background: repeating-conic-gradient(from 0deg at 50% 58%, rgba(255, 120, 110, 0.22) 0deg 2deg, transparent 2deg 16deg);
  opacity: 0.85;
  animation: catch-card-spin 26s linear infinite;
}

.c-card--sublimated .c-card-shell {
  --halo: rgba(240, 194, 75, 0.7);
  --halo-size: 34px;
}
.c-card--sublimated .c-card {
  --win-x: 7%;
  --win-y: 4.7%;
  --fr-line: #5a3f08;
  --fr-win: #fff8df;
  --fr-orn: #fff3c8;
  --fr-etch: rgba(90, 63, 8, 0.55);
  --fr-med: #fffbe8;
  --fr-medfill: rgba(120, 84, 12, 0.5);
  --plate: #f9edc6;
  --plate-line: #7a5a10;
  --tx-name: #1f1602;
  --tx-type: #f0c24b;
  --tx-fin: #ffe9b0;
  --pip: #7a5a10;
  --nameglow: rgba(255, 246, 214, 0.5);
  --rim: rgba(255, 228, 158, 0.75);
  --rim-size: 44px;
  --rim-spread: -12px;
  background: repeating-linear-gradient(45deg, rgba(255, 252, 232, 0.22) 0 1px, transparent 1px 5px), repeating-linear-gradient(-45deg, rgba(84, 58, 8, 0.28) 0 1px, transparent 1px 5px), conic-gradient(from 212deg at 36% 24%, #fff8dc 0deg, #e7be59 48deg, #8e6410 96deg, #fbebb4 148deg, #c99a2e 200deg, #7a5406 252deg, #fdf3d2 308deg, #fff8dc 360deg);
}
.c-card--sublimated .fr-outer {
  stroke-width: 3.4;
  stroke: #4a3306;
}
.c-card--sublimated .fr-inner {
  stroke: #fff8df;
  opacity: 0.95;
  stroke-width: 1.6;
}
.c-card--sublimated .fr-win {
  stroke-width: 2.6;
}
.c-card--sublimated .fr-orn {
  stroke-width: 2.8;
  filter: drop-shadow(0 0 5px rgb(255, 244, 200));
}
.c-card--sublimated .c-card__chassis {
  background: linear-gradient(104deg, transparent 36%, rgba(255, 255, 255, 0.62) 49%, rgba(255, 255, 255, 0.85) 51%, rgba(255, 255, 255, 0.62) 53%, transparent 66%);
  background-size: 250% 100%;
  mix-blend-mode: overlay;
  animation: catch-card-sweep 5.5s cubic-bezier(0.55, 0, 0.45, 1) infinite;
}
.c-card--sublimated .c-card__window {
  background: radial-gradient(ellipse 46% 26% at 50% 76%, #ffd070 0%, #c25e06 34%, transparent 70%), radial-gradient(ellipse 92% 54% at 50% 104%, #4a2405 0%, transparent 72%), linear-gradient(170deg, #1c1004 0%, #050301 56%, #140b02 100%);
}
.c-card--sublimated .c-card__fx--bloom {
  background: radial-gradient(ellipse 62% 40% at 50% 76%, rgba(255, 178, 50, 0.85) 0%, transparent 68%), radial-gradient(ellipse 46% 30% at 50% 44%, rgba(255, 236, 170, 0.5) 0%, transparent 70%);
  filter: saturate(1.5);
  mix-blend-mode: screen;
  animation: catch-card-breathe 2.8s ease-in-out infinite;
}
.c-card--sublimated .c-card__fx--rays {
  background: repeating-conic-gradient(from 0deg at 50% 100%, transparent 0deg, rgba(255, 204, 90, 0.62) 1.4deg, transparent 3deg, transparent 11deg);
  filter: blur(2px) saturate(1.4);
  mix-blend-mode: screen;
  -webkit-mask-image: radial-gradient(ellipse 92% 88% at 50% 100%, #000 14%, transparent 76%);
  mask-image: radial-gradient(ellipse 92% 88% at 50% 100%, #000 14%, transparent 76%);
  animation: catch-card-rayturn 22s linear infinite;
}
.c-card--sublimated .c-card__fx--aura {
  background: conic-gradient(from 0deg at 50% 58%, rgba(255, 120, 10, 0), rgba(255, 168, 30, 0.85), rgba(255, 236, 170, 0), rgba(255, 140, 20, 0.8), rgba(255, 120, 10, 0));
  filter: blur(20px) saturate(1.6);
  mix-blend-mode: screen;
  animation: catch-card-spin 11s linear infinite;
}

.c-card--radiant .c-card-shell {
  --halo: rgba(190, 150, 255, 0.8);
  --halo-size: 44px;
  animation: catch-card-halopulse 4.4s ease-in-out infinite;
}
.c-card--radiant .c-card {
  --win-x: 8.5%;
  --win-y: 5.7%;
  --fr-line: #f2ecff;
  --fr-win: #ffffff;
  --fr-orn: #ffffff;
  --fr-etch: rgba(255, 255, 255, 0.42);
  --fr-med: #ffffff;
  --fr-medfill: rgba(160, 120, 255, 0.42);
  --plate: rgba(14, 8, 34, 0.94);
  --plate-line: rgba(235, 225, 255, 0.8);
  --tx-name: #ffffff;
  --tx-type: #dcceff;
  --tx-fin: #ffffff;
  --pip: #c9aaff;
  --nameglow: rgba(190, 150, 255, 0.95);
  --rim: rgba(210, 180, 255, 0.85);
  --rim-size: 56px;
  --rim-spread: -14px;
  background: repeating-linear-gradient(60deg, rgba(255, 255, 255, 0.16) 0 1px, transparent 1px 6px), repeating-linear-gradient(-60deg, rgba(255, 255, 255, 0.12) 0 1px, transparent 1px 6px), conic-gradient(from 200deg at 40% 26%, #4a1e86 0deg, #1b2a6e 52deg, #0f3e5e 104deg, #6b2e8e 156deg, #23286e 208deg, #0e4a62 260deg, #5a2394 312deg, #4a1e86 360deg);
}
.c-card--radiant .fr-outer {
  stroke-width: 3;
}
.c-card--radiant .fr-inner {
  opacity: 0.85;
  stroke-width: 1.6;
}
.c-card--radiant .fr-orn {
  filter: drop-shadow(0 0 9px rgb(200, 160, 255));
}
.c-card--radiant .fr-win {
  stroke-width: 2.6;
  filter: drop-shadow(0 0 6px rgba(200, 160, 255, 0.9));
}
.c-card--radiant .fr-trace {
  stroke: #fff;
  stroke-width: 3.4;
  stroke-dasharray: 110 864;
  filter: drop-shadow(0 0 10px rgb(210, 175, 255));
  animation: catch-card-trace 6s linear infinite;
}
.c-card--radiant .c-card__chassis {
  inset: -30%;
  background: conic-gradient(from 0deg at 50% 50%, rgba(255, 120, 190, 0.9), rgba(255, 236, 130, 0.9), rgba(110, 255, 200, 0.9), rgba(100, 205, 255, 0.9), rgba(175, 120, 255, 0.9), rgba(255, 120, 190, 0.9));
  mix-blend-mode: overlay;
  filter: blur(9px) saturate(1.8);
  animation: catch-card-spin 9s linear infinite;
}
.c-card--radiant .c-card__window {
  background: radial-gradient(ellipse 44% 26% at 50% 54%, #ffffff 0%, #c77bff 24%, #4a1290 56%, transparent 76%), linear-gradient(168deg, #150430 0%, #03050c 54%, #052635 100%);
}
.c-card--radiant .c-card__fx--bloom {
  background: conic-gradient(from 0deg at var(--gx, 50%) var(--gy, 52%), #ff4e8e, #ffd84e, #3bffb0, #37c6ff, #9b5cff, #ff4e8e);
  opacity: 0.9;
  mix-blend-mode: screen;
  filter: blur(11px) saturate(2);
  animation: catch-card-spin 10s linear infinite;
}
.c-card--radiant .c-card__fx--shine {
  background: conic-gradient(from 140deg at 46% 60%, transparent, rgba(120, 255, 240, 0.7), transparent, rgba(255, 120, 220, 0.7), transparent);
  opacity: 0.7;
  mix-blend-mode: screen;
  filter: blur(16px) saturate(1.8);
  animation: catch-card-spinrev 16s linear infinite;
}
.c-card--radiant .c-card__fx--rays {
  background: repeating-conic-gradient(from 0deg at 50% 104%, transparent 0deg, rgba(255, 255, 255, 0.55) 1.2deg, transparent 2.6deg, transparent 9deg);
  filter: blur(2px);
  -webkit-mask-image: radial-gradient(ellipse 96% 92% at 50% 104%, #000 12%, transparent 74%);
  mask-image: radial-gradient(ellipse 96% 92% at 50% 104%, #000 12%, transparent 74%);
  animation: catch-card-rayturn 18s linear infinite;
}
.c-card--radiant .c-card__fx--aura {
  background: radial-gradient(ellipse 62% 38% at 22% 10%, rgba(90, 220, 255, 0.85), transparent 70%), radial-gradient(ellipse 58% 36% at 80% 90%, rgba(255, 110, 200, 0.85), transparent 70%), radial-gradient(ellipse 40% 26% at 50% 48%, rgba(255, 255, 255, 0.6), transparent 72%);
  filter: blur(14px) saturate(1.7);
  mix-blend-mode: screen;
  animation: catch-card-sway 3.6s ease-in-out infinite;
}
.c-card--radiant .c-card__finish {
  background: linear-gradient(96deg, #ffe7a8, #ff9fc0, #c9aaff, #7fefe6, #ffe7a8);
  background-size: 300% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: catch-card-slide 7s linear infinite;
}

.c-card--sublimated .c-card__fx--spark,
.c-card--radiant .c-card__fx--spark {
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E");
  background-size: 18px 18px, 11px 11px, 24px 24px, 13px 13px, 9px 9px;
  background-position: 16% 20%, 76% 14%, 38% 62%, 86% 48%, 24% 78%;
  filter: drop-shadow(0 0 6px rgb(255, 255, 255));
  animation: catch-card-twinkle 2.2s ease-in-out infinite;
}
.c-card--sublimated .c-card__fx--spark2,
.c-card--radiant .c-card__fx--spark2 {
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10,0 L11.6,8.4 L20,10 L11.6,11.6 L10,20 L8.4,11.6 L0,10 L8.4,8.4 Z' fill='white'/%3E%3C/svg%3E");
  background-size: 12px 12px, 20px 20px, 8px 8px, 15px 15px, 10px 10px, 26px 26px;
  background-position: 8% 42%, 62% 30%, 44% 12%, 92% 70%, 30% 90%, 70% 82%;
  filter: drop-shadow(0 0 7px rgb(255, 255, 255));
  animation: catch-card-twinkle 3.3s ease-in-out 0.9s infinite;
}

.c-card--radiant .c-card__fx--spark {
  animation-duration: 1.4s;
}
.c-card--radiant .c-card__fx--spark2 {
  animation-duration: 2s;
}

.c-card--radiant .c-card-shell {
  transform: perspective(1150px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) scale(var(--sc, 1));
  transition: transform 320ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.c-card--radiant .c-card__glare {
  position: absolute;
  inset: 0;
  z-index: 6;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(circle 38% at var(--gx, 50%) var(--gy, 50%), rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.14) 42%, transparent 68%), linear-gradient(calc(var(--gang, 110) * 1deg), transparent 38%, rgba(255, 190, 255, 0.28) 47%, rgba(190, 255, 255, 0.34) 50%, rgba(255, 230, 170, 0.28) 53%, transparent 62%);
  mix-blend-mode: screen;
  transition: opacity 300ms ease;
}
.c-card--radiant:hover .c-card__glare {
  opacity: 1;
}
.c-card--radiant .c-card__image {
  transition: transform 320ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.c-card--radiant.c-card--agent .c-card__image {
  transform: translate3d(var(--pxs, 0px), var(--pys, 0px), 0) scale(1.44);
}
.c-card--radiant.c-card--skin .c-card__image {
  transform: translate3d(var(--pxs, 0px), var(--pys, 0px), 0) rotate(-17deg) scale(0.8);
}
.c-card--radiant.c-card--ability .c-card__image {
  transform: translate3d(var(--pxs, 0px), var(--pys, 0px), 0) scale(0.6);
}
.c-card--radiant .c-card__seal {
  transform: translate3d(calc(var(--pxs, 0px) * -0.7), calc(var(--pys, 0px) * -0.7), 0);
  transition: transform 320ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.c-card-slot.is-locked .c-card-shell {
  --halo: transparent;
  --halo-size: 0px;
  animation: none;
  transform: none;
}
.c-card-slot.is-locked .c-card {
  --win-x: 3%;
  --win-y: 2%;
  --fr-line: #34404c;
  --fr-win: #3e4a56;
  --fr-orn: #2c3844;
  --plate: rgba(8, 12, 17, 0.92);
  --plate-line: rgba(239, 236, 229, 0.14);
  --tx-fin: rgba(239, 236, 229, 0.24);
  background: linear-gradient(158deg, #242c35 0%, #0c1218 100%);
}
.c-card-slot.is-locked .c-card__chassis,
.c-card-slot.is-locked .c-card__fx,
.c-card-slot.is-locked .c-card__glare,
.c-card-slot.is-locked .fr-trace {
  display: none;
}
.c-card-slot.is-locked .fr-outer {
  stroke-dasharray: 6 5;
}
.c-card-slot.is-locked .c-card__window {
  background: repeating-linear-gradient(-45deg, transparent 0 10px, rgba(255, 255, 255, 0.03) 10px 11px), #0a1017;
}
.c-card-slot.is-locked:hover .c-card-shell {
  transform: none;
}

.c-card__lock {
  position: absolute;
  z-index: 9;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  padding: 0.4em 0.7em;
  background: rgba(4, 7, 11, 0.88);
  border: 1px solid rgba(239, 236, 229, 0.2);
  font-size: 3.6cqw;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  white-space: nowrap;
  color: rgba(239, 236, 229, 0.68);
}

@keyframes catch-card-trace {
  to {
    stroke-dashoffset: -974;
  }
}
@keyframes catch-card-spin {
  to {
    transform: rotate(1turn);
  }
}
@keyframes catch-card-spinrev {
  to {
    transform: rotate(-1turn);
  }
}
@keyframes catch-card-rayturn {
  to {
    transform: rotate(1turn);
  }
}
@keyframes catch-card-sweep {
  0% {
    background-position: 150% 0;
  }
  62%, 100% {
    background-position: -150% 0;
  }
}
@keyframes catch-card-breathe {
  0%, 100% {
    opacity: 0.55;
  }
  50% {
    opacity: 1;
  }
}
@keyframes catch-card-sway {
  0%, 100% {
    opacity: 0.6;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.06);
  }
}
@keyframes catch-card-twinkle {
  0%, 100% {
    opacity: 0.3;
  }
  40% {
    opacity: 1;
  }
  72% {
    opacity: 0.45;
  }
}
@keyframes catch-card-slide {
  to {
    background-position: 300% 0;
  }
}
@keyframes catch-card-halopulse {
  0%, 100% {
    filter: drop-shadow(0 14px 20px rgba(0, 0, 0, 0.55)) drop-shadow(0 0 22px var(--halo));
  }
  50% {
    filter: drop-shadow(0 14px 20px rgba(0, 0, 0, 0.55)) drop-shadow(0 0 var(--halo-size) var(--halo));
  }
}
@media (prefers-reduced-motion: reduce) {
  .c-card-shell,
  .c-card,
  .c-card__chassis,
  .c-card__fx,
  .fr-trace {
    animation: none !important;
  }
  .c-card-shell,
  .c-card__image,
  .c-card__seal,
  .c-card__quality {
    transition: none;
  }
}
.c-card-sell {
  cursor: pointer;
  user-select: none;
}

.c-card-sell.selected {
  outline: 2px solid #007bff;
  outline-offset: 2px;
  box-shadow: 0 0 10px #007bff;
  animation: catch-card-pulse 1.5s infinite;
}

@keyframes catch-card-pulse {
  0% {
    outline-color: #007bff;
    box-shadow: 0 0 0 0 rgba(0, 123, 255, 0.7);
  }
  70% {
    outline-color: #007bff;
    box-shadow: 0 0 10px 10px rgba(0, 123, 255, 0);
  }
  100% {
    outline-color: #007bff;
    box-shadow: 0 0 0 0 rgba(0, 123, 255, 0);
  }
}
.catch-divider {
  display: flex;
  align-items: center;
  height: 1px;
  margin: 2rem 0;
  border: 0;
  background-color: rgba(90, 102, 114, 0.35);
}
.catch-divider::before {
  content: "";
  display: block;
  width: 3rem;
  height: 2px;
  background-color: #FF4655;
}

.catch-divider--diagonal::before {
  transform: skewX(-20deg);
}

.catch-bullet--chevron::before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  margin-right: 0.5em;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
}

.catch-bullet--diamond::before {
  content: "";
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  margin-right: 0.5em;
  background-color: currentColor;
  transform: rotate(45deg);
}

.catch-media {
  position: relative;
  overflow: hidden;
}
.catch-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.catch-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15, 25, 35, 0) 40%, rgba(15, 25, 35, 0.85) 100%);
  pointer-events: none;
}

.catch-media--full::after {
  background: linear-gradient(180deg, rgba(15, 25, 35, 0.35) 0%, rgba(15, 25, 35, 0.75) 100%);
}

.catch-bg-grid {
  background-image: linear-gradient(rgba(236, 232, 225, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(236, 232, 225, 0.05) 1px, transparent 1px);
  background-size: 40px 40px;
}

.catch-tabs {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
  margin-bottom: 2.5rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.15);
}
.catch-tabs .nav-link {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  position: relative;
  padding: 0.75rem 1.75rem;
  background: transparent;
  border: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: rgba(236, 232, 225, 0.6);
  transition: color 150ms ease-out, background-color 150ms ease-out;
}
.catch-tabs .nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  background-color: #FF4655;
  transform: scaleX(0);
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-tabs .nav-link:hover, .catch-tabs .nav-link:focus-visible {
  color: #ECE8E1;
}
.catch-tabs .nav-link.active {
  color: #ECE8E1;
  background-color: rgba(236, 232, 225, 0.05);
}
.catch-tabs .nav-link.active::after {
  transform: scaleX(1);
}

.catch-tabs--sliding .nav-link::after {
  display: none;
}

.catch-tabs__indicator {
  position: absolute;
  bottom: -1px;
  left: 0;
  height: 2px;
  width: var(--indicator-width, 0px);
  background-color: #FF4655;
  transform: translateX(var(--indicator-x, 0px));
  transition: transform 300ms cubic-bezier(0.2, 0.6, 0.2, 1), width 300ms cubic-bezier(0.2, 0.6, 0.2, 1);
  pointer-events: none;
}

.catch-tab-content .tab-pane {
  transition: opacity 200ms ease-out, transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-tab-content .tab-pane.fade:not(.show) {
  transform: translateX(-12px);
}
.catch-tab-content .tab-pane.fade:not(.show).is-from-right {
  transform: translateX(12px);
}

.catch-tabs--light {
  border-bottom-color: rgba(15, 25, 35, 0.15);
}
.catch-tabs--light .nav-link {
  color: rgba(15, 25, 35, 0.6);
}
.catch-tabs--light .nav-link:hover, .catch-tabs--light .nav-link:focus-visible {
  color: #0F1923;
}
.catch-tabs--light .nav-link.active {
  color: #0F1923;
  background-color: rgba(15, 25, 35, 0.05);
}

@media (prefers-reduced-motion: reduce) {
  .catch-tabs .nav-link::after,
  .catch-tabs__indicator,
  .catch-tab-content .tab-pane {
    transition: none;
  }
  .catch-tab-content .tab-pane.fade:not(.show),
  .catch-tab-content .tab-pane.fade:not(.show).is-from-right {
    transform: none;
  }
}
.catch-activity-toasts {
  position: fixed;
  top: calc(var(--header-height, 64px) + 1rem);
  right: 1rem;
  z-index: 1090;
  display: grid;
  width: min(24rem, 100vw - 2rem);
  gap: 0.75rem;
  pointer-events: none;
}

.admin-bar .catch-activity-toasts {
  top: calc(var(--header-height, 64px) + 32px + 1rem);
}
@media (max-width: 782px) {
  .admin-bar .catch-activity-toasts {
    top: calc(var(--header-height, 64px) + 46px + 1rem);
  }
}
@media (max-width: 600px) {
  .admin-bar .catch-activity-toasts {
    top: calc(var(--header-height, 64px) + 1rem);
  }
}

.catch-activity-toast {
  --bs-toast-max-width: none;
  --bs-toast-bg: rgba(15, 25, 35, 0.97);
  --bs-toast-border-color: color-mix(in srgb, var(--catch-item-color, #f5a623) 62%, transparent);
  width: 100%;
  color: #ECE8E1;
  border-width: 1px;
  border-radius: 0;
  box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.38), 0 0 1.5rem color-mix(in srgb, var(--catch-item-color, #f5a623) 16%, transparent);
  pointer-events: auto;
}

.catch-activity-toast__content {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.9rem;
  padding: 0.9rem 1rem;
  background: radial-gradient(circle at 12% 50%, color-mix(in srgb, var(--catch-item-color, #f5a623) 24%, transparent), transparent 42%), linear-gradient(110deg, rgba(236, 232, 225, 0.035), transparent 62%);
}

.catch-activity-toast__icon {
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--catch-item-color, #f5a623) 70%, #ECE8E1 12%);
  border-radius: 50%;
  background: color-mix(in srgb, var(--catch-item-color, #f5a623) 14%, #0F1923);
  box-shadow: 0 0 1rem color-mix(in srgb, var(--catch-item-color, #f5a623) 28%, transparent);
}

.catch-activity-toast__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.catch-activity-toast__copy {
  display: grid;
  min-width: 0;
  gap: 0.15rem;
}

.catch-activity-toast__eyebrow {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--catch-item-color, #f5a623) 76%, #ECE8E1);
}

.catch-activity-toast__amount {
  overflow: hidden;
  font-size: 1.45rem;
  font-weight: 400;
  line-height: 1.05;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
  color: #ECE8E1;
}

.catch-activity-toast__close {
  align-self: start;
  margin: 0;
  opacity: 0.62;
}
.catch-activity-toast__close:hover, .catch-activity-toast__close:focus-visible {
  opacity: 1;
}

@media (max-width: 575.98px) {
  .catch-activity-toasts {
    top: calc(var(--header-height, 64px) + 0.75rem);
    right: 0.75rem;
    width: calc(100vw - 1.5rem);
  }
  .catch-activity-toast__content {
    gap: 0.7rem;
    padding: 0.75rem;
  }
  .catch-activity-toast__icon {
    width: 2.6rem;
    height: 2.6rem;
  }
  .catch-activity-toast__amount {
    font-size: 1.25rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .catch-activity-toast {
    transition: none;
  }
}
.catch-radianite {
  display: inline-flex;
  align-items: center;
  gap: 0.45em;
  white-space: nowrap;
}

.catch-radianite__icon {
  display: inline-block;
  width: 0.62em;
  height: 0.62em;
  flex: 0 0 auto;
  background: #FF4655;
  transform: rotate(45deg);
}

.catch-radianite__value {
  color: #ECE8E1;
  font-variant-numeric: tabular-nums;
}

.catch-toasts {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  max-width: min(25rem, 100vw - 2rem);
}

.catch-toast {
  --catch-toast-accent: #FF4655;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.8rem 1.05rem;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-left: 3px solid var(--catch-toast-accent);
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.05), transparent 60%), rgba(13, 21, 30, 0.97);
  color: #f5f8fb;
  box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, 0.5);
  opacity: 0;
  transform: translateY(0.5rem);
  transition: opacity 200ms ease, transform 200ms ease;
}

.catch-toast.is-visible {
  opacity: 1;
  transform: none;
}

.catch-toast.is-leaving {
  opacity: 0;
  transform: translateY(0.5rem);
}

.catch-toast--mission {
  --catch-toast-accent: #65d6ad;
}

.catch-toast--trophy {
  --catch-toast-accent: #f0c24b;
}

.catch-toast__text {
  display: grid;
  gap: 0.1rem;
  min-width: 0;
}

.catch-toast__kicker {
  color: var(--catch-toast-accent);
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.catch-toast__name {
  font-size: 0.87rem;
  font-weight: 700;
  line-height: 1.2;
}

.catch-toast__reward {
  color: rgba(228, 236, 244, 0.72);
  font-size: 0.72rem;
}

.catch-toast__link {
  color: #FF4655;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
}
.catch-toast__link:hover, .catch-toast__link:focus-visible {
  text-decoration: underline;
}

.catch-toast__close {
  margin-left: auto;
  align-self: flex-start;
  padding: 0.35rem;
  border: 0;
  background: none;
  color: rgba(228, 236, 244, 0.5);
  font-size: 1.05rem;
  line-height: 1;
  cursor: pointer;
}
.catch-toast__close:hover, .catch-toast__close:focus-visible {
  color: #f5f8fb;
}

@media (prefers-reduced-motion: reduce) {
  .catch-toast {
    transition: none;
  }
}
.catch-tooltip {
  --bs-tooltip-max-width: 15rem;
  --bs-tooltip-padding-x: 0.7rem;
  --bs-tooltip-padding-y: 0.42rem;
  --bs-tooltip-font-size: 0.6875rem;
  --bs-tooltip-color: #ECE8E1;
  --bs-tooltip-bg: rgba(15, 25, 35, 0.98);
  --bs-tooltip-border-radius: 0;
  --bs-tooltip-opacity: 1;
  --bs-tooltip-arrow-width: 0.7rem;
  --bs-tooltip-arrow-height: 0.35rem;
}
.catch-tooltip .tooltip-inner {
  border: 1px solid rgba(255, 70, 85, 0.58);
  border-left-width: 0.2rem;
  box-shadow: 0 0.4rem 1.1rem rgba(15, 25, 35, 0.42), 0 0 0.75rem rgba(255, 70, 85, 0.16);
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.catch-hero {
  position: relative;
  overflow-x: clip;
  border-bottom: 1px solid var(--catch-hero-border, rgba(255, 255, 255, 0.11));
  background: linear-gradient(112deg, rgba(255, 255, 255, 0.03), transparent 46%), repeating-linear-gradient(135deg, transparent 0 5.9rem, rgba(255, 255, 255, 0.014) 6rem 6.06rem);
}
.catch-hero::after {
  position: absolute;
  right: 0;
  bottom: -1px;
  width: min(44vw, 36rem);
  height: 2px;
  content: "";
  background: linear-gradient(90deg, transparent, #FF4655);
}

.catch-hero__scan {
  position: absolute;
  top: 0;
  left: -30%;
  width: 30%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(255, 70, 85, 0.08), transparent);
  animation: catch-hero-scan 6s linear infinite;
}

@keyframes catch-hero-scan {
  to {
    transform: translateX(440%);
  }
}
.catch-hero__inner {
  position: relative;
  display: grid;
  align-items: end;
  grid-template-columns: minmax(0, 1.4fr) minmax(19rem, 0.6fr);
  gap: clamp(2rem, 5vw, 4rem);
  padding-block: clamp(2.5rem, 5vw, 4.5rem);
}

.catch-hero--solo .catch-hero__inner {
  grid-template-columns: minmax(0, 1fr);
}

.catch-hero__copy h1, .catch-hero__copy .h1 {
  max-width: none;
  margin: 0.3rem 0 1rem;
  color: var(--catch-hero-title, #f5f8fb);
  font-size: clamp(3.5rem, 7vw, 6.5rem);
  line-height: 0.88;
}

.catch-hero__lead {
  max-width: 40rem;
  margin: 0;
  color: var(--catch-hero-muted, rgba(235, 241, 247, 0.66));
  font-size: clamp(0.95rem, 1.5vw, 1.1rem);
  line-height: 1.7;
}

.catch-hero__back {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  min-height: 2.75rem;
  margin-top: 1.25rem;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.catch-hero__back span {
  color: #FF4655;
  font-size: 1rem;
  transition: transform 180ms ease;
}
.catch-hero__back:hover, .catch-hero__back:focus-visible {
  color: #FF4655;
}
.catch-hero__back:hover span, .catch-hero__back:focus-visible span {
  transform: translateX(-0.2rem);
}

@media (max-width: 991.98px) {
  .catch-hero__inner {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .catch-hero__scan {
    display: none;
  }
}
.showcase {
  margin-top: clamp(1rem, 2vw, 1.25rem);
  padding-top: clamp(1rem, 2vw, 1.25rem);
  border-top: 1px solid rgba(236, 232, 225, 0.1);
}

.showcase__title {
  display: block;
  margin: 0 0 clamp(0.75rem, 1.5vw, 1.1rem);
  overflow-wrap: anywhere;
  text-align: center;
  white-space: normal;
}

.showcase__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
  gap: clamp(0.75rem, 1.6vw, 1.4rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.showcase__item {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  width: clamp(5.5rem, 9.5vw, 8rem);
}

.showcase__rank {
  display: none;
}

.showcase__legend {
  display: block;
  min-height: 2.2rem;
  margin: 0;
  padding-top: 0.55rem;
  overflow: hidden;
  border-top: 1px solid rgba(236, 232, 225, 0.14);
  color: rgba(236, 232, 225, 0.6);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: help;
}
.showcase__legend:focus-visible {
  outline: 2px solid rgba(236, 232, 225, 0.72);
  outline-offset: 0.16rem;
}

.showcase:not(.showcase--solo) .showcase__item:nth-child(1) {
  order: 3;
}
.showcase:not(.showcase--solo) .showcase__item:nth-child(2) {
  order: 2;
}
.showcase:not(.showcase--solo) .showcase__item:nth-child(3) {
  order: 4;
}
.showcase:not(.showcase--solo) .showcase__item:nth-child(4) {
  order: 1;
}
.showcase:not(.showcase--solo) .showcase__item:nth-child(5) {
  order: 5;
}
.showcase:not(.showcase--solo) .showcase__item:nth-child(1) {
  width: clamp(7.5rem, 13vw, 11.5rem);
}
.showcase:not(.showcase--solo) .showcase__item:nth-child(1) .showcase__legend {
  border-top-color: #FF4655;
  color: #ECE8E1;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(1.05rem, 1.6vw, 1.35rem);
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.showcase:not(.showcase--solo) .showcase__item:nth-child(2),
.showcase:not(.showcase--solo) .showcase__item:nth-child(3) {
  width: clamp(6.5rem, 11vw, 9.5rem);
}

.showcase--solo .showcase__list {
  align-items: center;
}
.showcase--solo .showcase__item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: clamp(1rem, 3vw, 2rem);
  width: auto;
}
.showcase--solo .c-card-slot {
  flex: 0 0 auto;
  width: clamp(9rem, 16vw, 13rem);
}
.showcase--solo .showcase__legend {
  display: block;
  min-height: 0;
  margin: 0;
  padding-top: 0;
  overflow: visible;
  border-top: 0;
  color: #ECE8E1;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  letter-spacing: 0.03em;
  line-height: 1;
  text-align: left;
  text-transform: uppercase;
  white-space: normal;
}

.showcase-heart {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 3.9rem;
  margin-top: 1rem;
}

.showcase-heart__button,
.showcase-heart__summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  min-height: 2.75rem;
  margin: 0;
  padding: 0.6rem 0.85rem;
  border: 1px solid rgba(236, 232, 225, 0.2);
  background: rgba(15, 25, 35, 0.38);
  color: rgba(236, 232, 225, 0.78);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
}

.showcase-heart__button {
  cursor: pointer;
  transition: border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), transform 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.showcase-heart__button:hover:not(:disabled), .showcase-heart__button:focus-visible:not(:disabled) {
  border-color: #FF4655;
  color: #ECE8E1;
  transform: translateY(-2px);
}
.showcase-heart__button:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: 3px;
}
.showcase-heart__button[aria-pressed=true] {
  border-color: rgba(255, 70, 85, 0.82);
  background: rgba(255, 70, 85, 0.13);
  color: #ECE8E1;
}
.showcase-heart__button[aria-pressed=true] .showcase-heart__icon svg {
  fill: #FF4655;
  stroke: #FF4655;
}
.showcase-heart__button[aria-busy=true] {
  cursor: wait;
  opacity: 0.65;
}

.showcase-heart__icon {
  display: inline-flex;
  width: 1.25rem;
  height: 1.25rem;
}
.showcase-heart__icon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: transparent;
  stroke: currentColor;
  stroke-linejoin: round;
  stroke-width: 1.8;
  transition: fill 150ms cubic-bezier(0.2, 0.6, 0.2, 1), stroke 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.showcase-heart__summary .showcase-heart__icon svg {
  fill: rgba(255, 70, 85, 0.55);
  stroke: #FF4655;
}

.showcase-heart__count {
  min-width: 1.3rem;
  padding-left: 0.55rem;
  border-left: 1px solid rgba(236, 232, 225, 0.2);
  text-align: center;
}

.showcase-heart__status {
  min-height: 1.15rem;
  margin: 0.3rem 0 0;
  color: rgba(236, 232, 225, 0.68);
  font-size: 0.75rem;
  text-align: center;
}
.showcase-heart__status--error {
  color: #FF4655;
}

@media (max-width: 767.98px) {
  .showcase__list {
    align-items: flex-start;
    gap: 0.8rem 0.5rem;
  }
  .showcase:not(.showcase--solo) .showcase__item:nth-child(1),
  .showcase:not(.showcase--solo) .showcase__item:nth-child(2),
  .showcase:not(.showcase--solo) .showcase__item:nth-child(3),
  .showcase:not(.showcase--solo) .showcase__item:nth-child(4),
  .showcase:not(.showcase--solo) .showcase__item:nth-child(5) {
    order: 0;
    width: calc((100% - 1rem) / 3);
    min-width: 0;
    max-width: 7.25rem;
  }
  .showcase:not(.showcase--solo) .showcase__item:nth-child(1) .showcase__legend {
    border-top-color: rgba(236, 232, 225, 0.14);
    color: rgba(236, 232, 225, 0.6);
    font-family: inherit;
    font-size: 0.72rem;
    letter-spacing: normal;
    text-transform: none;
  }
  .showcase--solo .showcase__item {
    flex-direction: column;
    align-items: center;
    gap: 0.85rem;
    width: min(100%, 9rem);
  }
  .showcase--solo .c-card-slot {
    width: 100%;
  }
  .showcase--solo .showcase__legend {
    font-size: 1.35rem;
    text-align: center;
  }
  .showcase__rank {
    position: absolute;
    z-index: 10;
    top: 0.35rem;
    left: 0.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border: 1px solid #FF4655;
    background: rgba(15, 25, 35, 0.94);
    box-shadow: 0 2px 7px rgba(0, 0, 0, 0.42);
    color: #ECE8E1;
    font-family: "League Gothic", sans-serif;
    font-size: 1rem;
    line-height: 1;
    pointer-events: none;
  }
}
.showcase-modal .modal-content {
  border: 1px solid rgba(236, 232, 225, 0.12);
  background: #0F1923;
  color: #ECE8E1;
}
.showcase-modal .modal-header,
.showcase-modal .modal-footer {
  border-color: rgba(236, 232, 225, 0.1);
}
.showcase-modal .modal-header {
  align-items: flex-start;
  gap: 1rem;
}
.showcase-modal .modal-title {
  margin: 0.25rem 0 0;
  font-size: 1.35rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.showcase-modal .modal-body {
  max-height: min(82vh, 50rem);
  overflow-y: auto;
  padding-top: 0;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 70, 85, 0.55) rgba(255, 255, 255, 0.06);
}
.showcase-modal .modal-body::-webkit-scrollbar {
  width: 8px;
}
.showcase-modal .modal-body::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.06);
}
.showcase-modal .modal-body::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(255, 70, 85, 0.8), rgba(255, 70, 85, 0.45));
}
.showcase-modal .modal-body::-webkit-scrollbar-thumb:hover {
  background: #FF4655;
}
.showcase-modal .form-control,
.showcase-modal .form-select {
  border-color: rgba(236, 232, 225, 0.16);
  background-color: rgba(236, 232, 225, 0.05);
  color: #ECE8E1;
}
.showcase-modal .form-control::placeholder,
.showcase-modal .form-select::placeholder {
  color: rgba(236, 232, 225, 0.45);
}
.showcase-modal .form-control:focus,
.showcase-modal .form-select:focus {
  border-color: rgba(236, 232, 225, 0.3);
  background-color: rgba(236, 232, 225, 0.08);
  box-shadow: none;
  color: #ECE8E1;
}
.showcase-modal .form-select {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ece8e1' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}
.showcase-modal .form-select option {
  background: #0F1923;
  color: #ECE8E1;
}

.showcase-modal__dialog {
  max-width: min(94vw, 76rem);
}

.admin-bar .showcase-modal {
  top: 32px;
  height: calc(100% - 32px);
}

@media screen and (max-width: 782px) {
  .admin-bar .showcase-modal {
    top: 46px;
    height: calc(100% - 46px);
  }
  .admin-bar .showcase-modal .modal-content {
    max-height: calc(100dvh - 62px);
  }
}
.showcase-modal__intro {
  margin: 0.4rem 0 0;
  color: rgba(236, 232, 225, 0.7);
  font-size: 0.9rem;
}

.showcase-modal__section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.9rem;
}

.showcase-modal__current > .showcase-modal__section-head .showcase-modal__tally {
  margin-left: auto;
}

.showcase-modal__tally,
.showcase-modal__count {
  color: rgba(236, 232, 225, 0.55);
  font-size: 0.8rem;
  letter-spacing: 0.06em;
}

.showcase-modal__tally.is-full {
  color: #FF4655;
}

.showcase-modal__current {
  margin-bottom: 2rem;
}

.showcase-modal__current {
  position: sticky;
  z-index: 3;
  top: 0;
  margin: 0 calc(var(--bs-modal-padding) * -1) 1.5rem;
  padding: var(--bs-modal-padding) var(--bs-modal-padding) 1.25rem;
  background: #0F1923;
  border-bottom: 1px solid rgba(236, 232, 225, 0.1);
}

.showcase-modal__current > .showcase-modal__section-head {
  cursor: pointer;
  list-style: none;
}
.showcase-modal__current > .showcase-modal__section-head::-webkit-details-marker {
  display: none;
}
.showcase-modal__current > .showcase-modal__section-head:hover .catch-eyebrow {
  color: #ECE8E1;
}

.showcase-modal__current > .showcase-modal__section-head::after {
  content: "▾";
  order: 3;
  color: rgba(236, 232, 225, 0.5);
  transition: transform 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.showcase-modal__current[open] > .showcase-modal__section-head::after {
  transform: rotate(180deg);
}

.showcase-modal__current:not([open]) {
  margin-bottom: 1rem;
  padding-bottom: 0.75rem;
}

.showcase-modal__slots {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: center;
  gap: 0.75rem;
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
}
.showcase-modal__slots li:nth-child(1) {
  order: 3;
}
.showcase-modal__slots li:nth-child(2) {
  order: 2;
}
.showcase-modal__slots li:nth-child(3) {
  order: 4;
}
.showcase-modal__slots li:nth-child(4) {
  order: 1;
}
.showcase-modal__slots li:nth-child(5) {
  order: 5;
}

.showcase-slot {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  flex: 0 0 auto;
  width: 15%;
  min-width: 3.75rem;
  max-width: 7.5rem;
  padding: 0.5rem;
  border: 1px solid rgba(236, 232, 225, 0.14);
  background: rgba(236, 232, 225, 0.04);
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
}

.showcase-modal__slots li:nth-child(1) {
  width: 21%;
  min-width: 5.25rem;
  max-width: 11rem;
}
.showcase-modal__slots li:nth-child(1) .showcase-slot__rank {
  color: #FF4655;
}

.showcase-modal__slots li:nth-child(2),
.showcase-modal__slots li:nth-child(3) {
  width: 18%;
  min-width: 4.5rem;
  max-width: 9.25rem;
}

.showcase-slot.is-empty {
  border-style: dashed;
  border-color: rgba(236, 232, 225, 0.2);
  background: rgba(236, 232, 225, 0.02);
}
.showcase-slot.is-empty .showcase-slot__name {
  color: rgba(236, 232, 225, 0.35);
  font-style: italic;
}

.showcase-slot__card {
  pointer-events: none;
}

.showcase-slot.is-empty .showcase-slot__card {
  aspect-ratio: 2/3;
  background: repeating-linear-gradient(135deg, rgba(236, 232, 225, 0.045) 0 6px, transparent 6px 12px);
}

.showcase-slot__rank {
  align-self: flex-start;
  color: rgba(236, 232, 225, 0.45);
  font-family: "League Gothic", sans-serif;
  font-size: 1rem;
  line-height: 1;
}

.showcase-slot__name {
  overflow: hidden;
  color: rgba(236, 232, 225, 0.85);
  font-size: 0.7rem;
  line-height: 1.25;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.showcase-slot__moves {
  display: flex;
  gap: 0.25rem;
}

.showcase-slot__move,
.showcase-slot__remove {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0.2rem 0;
  border: 1px solid rgba(236, 232, 225, 0.16);
  background: transparent;
  color: rgba(236, 232, 225, 0.75);
  font-size: 0.7rem;
  line-height: 1;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.showcase-slot__move:hover:not(:disabled), .showcase-slot__move:focus-visible:not(:disabled),
.showcase-slot__remove:hover:not(:disabled),
.showcase-slot__remove:focus-visible:not(:disabled) {
  border-color: #FF4655;
  color: #FF4655;
}
.showcase-slot__move:disabled,
.showcase-slot__remove:disabled {
  opacity: 0.3;
}

@media (max-width: 767.98px) {
  .showcase-modal__slots {
    align-items: stretch;
    justify-content: center;
    gap: 0.5rem;
  }
  .showcase-modal__slots li:nth-child(1),
  .showcase-modal__slots li:nth-child(2),
  .showcase-modal__slots li:nth-child(3),
  .showcase-modal__slots li:nth-child(4),
  .showcase-modal__slots li:nth-child(5) {
    order: 0;
    width: calc((100% - 1rem) / 3);
    min-width: 0;
    max-width: 7rem;
  }
  .showcase-slot {
    padding: 0.4rem;
  }
  .showcase-slot__move,
  .showcase-slot__remove {
    min-height: 2.75rem;
  }
}
.showcase-modal__empty {
  margin: 0.75rem 0 0;
  text-align: center;
}

.showcase-modal__hint {
  margin: 0.75rem 0 0;
  color: rgba(236, 232, 225, 0.6);
  font-size: 0.85rem;
}

.showcase-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0.75rem;
  margin: 0.85rem 0 1.25rem;
}

.showcase-filters__field {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  min-width: 0;
  flex: 0 1 12rem;
}

.showcase-filters__field--search {
  flex: 1 1 16rem;
}

.showcase-filters__label {
  color: rgba(236, 232, 225, 0.5);
  font-size: 0.68rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.showcase-filters__finishes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.showcase-filters__finish {
  padding: 0.45rem 0.7rem;
  border: 1px solid rgba(236, 232, 225, 0.16);
  background: transparent;
  color: rgba(236, 232, 225, 0.7);
  font-size: 0.72rem;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
  transition: border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.showcase-filters__finish:hover, .showcase-filters__finish:focus-visible {
  border-color: rgba(236, 232, 225, 0.4);
  color: #ECE8E1;
}
.showcase-filters__finish.is-active {
  border-color: #FF4655;
  color: #ECE8E1;
}

.showcase-filters__reset {
  padding: 0.45rem 0.7rem;
  border: 0;
  background: transparent;
  color: rgba(236, 232, 225, 0.55);
  font-size: 0.75rem;
  text-decoration: underline;
}
.showcase-filters__reset:hover, .showcase-filters__reset:focus-visible {
  color: #FF4655;
}

.showcase-modal__results {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(8rem, 1fr));
  gap: 2rem 1.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.showcase-pick__button {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.45rem;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(236, 232, 225, 0.75);
  text-align: left;
  transition: transform 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.showcase-pick__button:hover:not(:disabled), .showcase-pick__button:focus-visible:not(:disabled) {
  color: #ECE8E1;
  transform: translateY(-3px);
}
.showcase-pick__button:disabled {
  cursor: not-allowed;
  opacity: 0.4;
}

.showcase-pick__card {
  position: relative;
  display: block;
  isolation: isolate;
}

.showcase-pick__label {
  overflow: hidden;
  font-size: 0.72rem;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.showcase-pick__state {
  position: absolute;
  z-index: 2;
  top: -0.45rem;
  right: -0.45rem;
  display: none;
  width: 1.6rem;
  height: 1.6rem;
  border: 2px solid #0F1923;
  background: #FF4655;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.55);
  color: #ECE8E1;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.25rem;
  text-align: center;
}

.showcase-pick.is-picked .showcase-pick__state {
  display: block;
}
.showcase-pick.is-picked .showcase-pick__state::before {
  content: "✓";
}
.showcase-pick.is-picked .showcase-pick__label {
  color: #FF4655;
}

.showcase-pick .showcase-pick__button {
  position: relative;
}

.showcase-modal__pager {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 1.5rem;
}

.showcase-modal__page {
  padding: 0.45rem 0.9rem;
  border: 1px solid rgba(236, 232, 225, 0.16);
  background: transparent;
  color: rgba(236, 232, 225, 0.75);
  font-size: 0.78rem;
}
.showcase-modal__page:hover:not(:disabled), .showcase-modal__page:focus-visible:not(:disabled) {
  border-color: #FF4655;
  color: #FF4655;
}
.showcase-modal__page:disabled {
  opacity: 0.3;
}

.showcase-modal__page-state {
  color: rgba(236, 232, 225, 0.6);
  font-size: 0.8rem;
}

.showcase-modal__status {
  flex: 1 1 auto;
  margin: 0;
  color: rgba(236, 232, 225, 0.7);
  font-size: 0.85rem;
}
.showcase-modal__status--success {
  color: #7ee2a8;
}
.showcase-modal__status--error {
  color: #FF4655;
}

@media (max-width: 767.98px) {
  .showcase-modal__dialog {
    min-height: calc(100% - 1rem);
    max-width: calc(100% - 1rem);
    margin: 0.5rem auto;
  }
  .showcase-modal .modal-content {
    max-height: calc(100dvh - 1rem);
  }
  .showcase-modal .modal-header,
  .showcase-modal .modal-footer {
    padding: 0.9rem;
  }
  .showcase-modal .modal-header .btn-close {
    flex: 0 0 auto;
    min-width: 2.75rem;
    min-height: 2.75rem;
    margin: -0.35rem -0.35rem 0 0;
    background-position: center;
  }
  .showcase-modal .modal-body {
    flex: 1 1 auto;
    max-height: none;
    overflow-x: hidden;
    padding-right: 0.9rem;
    padding-left: 0.9rem;
  }
  .showcase-modal .modal-footer {
    align-items: stretch;
  }
  .showcase-modal .modal-footer .btn {
    min-height: 2.75rem;
  }
  .showcase-modal__intro {
    font-size: 0.82rem;
  }
  .showcase-modal__current {
    position: static;
    margin-right: -0.9rem;
    margin-bottom: 1.15rem;
    margin-left: -0.9rem;
    padding-bottom: 1rem;
  }
  .showcase-filters__field,
  .showcase-filters__field--search {
    flex: 1 1 100%;
  }
  .showcase-filters__finish,
  .showcase-filters__reset,
  .showcase-modal__page {
    min-height: 2.75rem;
  }
  .showcase-modal__results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem 1rem;
  }
  .showcase-modal__status {
    flex-basis: 100%;
    min-height: 1.1rem;
  }
}
.collection-background-modal .modal-content {
  border: 1px solid rgba(236, 232, 225, 0.12);
  background: #0F1923;
  color: #ECE8E1;
  clip-path: polygon(0 0, calc(100% - 1rem) 0, 100% 1rem, 100% 100%, 0 100%);
}
.collection-background-modal .modal-header,
.collection-background-modal .modal-footer {
  border-color: rgba(236, 232, 225, 0.1);
}
.collection-background-modal .modal-header {
  align-items: flex-start;
  gap: 1rem;
}
.collection-background-modal .modal-title {
  margin: 0.25rem 0 0;
  font-size: 1.35rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.collection-background-modal__intro {
  margin: 0.35rem 0 0;
  color: rgba(236, 232, 225, 0.65);
  font-size: 0.85rem;
}
.collection-background-modal__status {
  margin: 1.25rem 0 0;
  font-size: 0.85rem;
}
.collection-background-modal__status--success {
  color: #7ee0a8;
}
.collection-background-modal__status--error {
  color: #FF4655;
}
.collection-background-modal__button {
  min-height: 2.6rem;
  padding: 0.6rem 1.1rem;
  border: 1px solid rgba(236, 232, 225, 0.35);
  background: transparent;
  color: #ECE8E1;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  cursor: pointer;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), opacity 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.collection-background-modal__button:hover:not(:disabled) {
  border-color: #ECE8E1;
  background: rgba(236, 232, 225, 0.1);
}
.collection-background-modal__button--primary {
  border-color: #FF4655;
  background: #FF4655;
}
.collection-background-modal__button--primary:hover:not(:disabled) {
  border-color: #ECE8E1;
  background: #ECE8E1;
  color: #0F1923;
}
.collection-background-modal__button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.collection-background-modal__button:focus-visible {
  outline: 2px solid #ECE8E1;
  outline-offset: 3px;
}

.collection-background-choices {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
  gap: 0.9rem;
}

.collection-background-choice {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  cursor: pointer;
}
.collection-background-choice__input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}
.collection-background-choice__preview {
  display: block;
  aspect-ratio: 16/7;
  border: 2px solid rgba(236, 232, 225, 0.15);
  background-color: rgba(236, 232, 225, 0.05);
  background-position: center;
  background-size: cover;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  transition: border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), transform 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.collection-background-choice__label {
  color: rgba(236, 232, 225, 0.7);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.collection-background-choice:hover .collection-background-choice__preview {
  border-color: rgba(236, 232, 225, 0.45);
}
.collection-background-choice__input:checked ~ .collection-background-choice__preview {
  border-color: #FF4655;
  transform: translateY(-2px);
}
.collection-background-choice__input:checked ~ .collection-background-choice__label {
  color: #ECE8E1;
}
.collection-background-choice__input:focus-visible ~ .collection-background-choice__preview {
  outline: 2px solid #ECE8E1;
  outline-offset: 3px;
}

.collection-background-upload {
  margin-top: 1.75rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(236, 232, 225, 0.12);
}
.collection-background-upload__title {
  margin: 0 0 0.5rem;
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.collection-background-upload__help {
  margin: 0 0 1rem;
  color: rgba(236, 232, 225, 0.6);
  font-size: 0.82rem;
}
.collection-background-upload__state {
  margin: 0 0 1rem;
  padding: 0.65rem 0.85rem;
  border-left: 3px solid rgba(236, 232, 225, 0.3);
  background: rgba(236, 232, 225, 0.05);
  font-size: 0.82rem;
}
.collection-background-upload__state--pending {
  border-left-color: #e0c37e;
}
.collection-background-upload__state--rejected {
  border-left-color: #FF4655;
}
.collection-background-upload__controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}
.collection-background-upload__file {
  flex: 1 1 14rem;
  min-width: 0;
  color: rgba(236, 232, 225, 0.75);
  font-size: 0.82rem;
}
.collection-background-upload__file::file-selector-button {
  margin-right: 0.75rem;
  padding: 0.45rem 0.8rem;
  border: 1px solid rgba(236, 232, 225, 0.35);
  background: transparent;
  color: #ECE8E1;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  cursor: pointer;
}
.collection-background-upload__file:disabled {
  opacity: 0.5;
}

.account-collection-background {
  display: grid;
  align-items: center;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 1rem 1.5rem;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--account-border);
}
.account-collection-background__copy {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.account-collection-background__copy strong {
  color: #fff;
  font-size: 0.9rem;
}
.account-collection-background__copy span {
  color: var(--account-muted);
  font-size: 0.82rem;
}
.account-collection-background__preview {
  display: block;
  width: 7.5rem;
  aspect-ratio: 16/7;
  border: 1px solid var(--account-border-strong);
  background-position: center;
  background-size: cover;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
}

@media (max-width: 767.98px) {
  .account-collection-background {
    align-items: flex-start;
    grid-template-columns: 1fr;
  }
  .account-collection-background__preview {
    width: 100%;
  }
}
.catch-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
  background-color: rgba(15, 25, 35, 0.92);
  border-bottom: 1px solid transparent;
  transition: background-color 300ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 300ms cubic-bezier(0.2, 0.6, 0.2, 1), backdrop-filter 300ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.catch-header.is-scrolled {
  border-bottom-color: rgba(236, 232, 225, 0.12);
}
@supports (backdrop-filter: blur(1px)) {
  .catch-header.is-scrolled {
    backdrop-filter: blur(10px);
  }
}

.admin-bar .catch-header {
  top: 32px;
}
@media (max-width: 782px) {
  .admin-bar .catch-header {
    top: 46px;
  }
}
@media (max-width: 600px) {
  .admin-bar .catch-header {
    top: 0;
  }
}

@media screen and (hover: none) and (pointer: coarse) and (max-device-width: 575.98px), screen and (hover: none) and (pointer: coarse) and (max-device-height: 575.98px) {
  .admin-bar .catch-header {
    top: var(--catch-admin-bar-offset, var(--wp-admin--admin-bar--height, 46px));
  }
}
body.has-catch-header {
  padding-top: var(--header-height, 64px);
}

body.has-catch-header.catch-header-overlay {
  padding-top: 0;
}

html {
  scroll-padding-top: calc(var(--header-height, 0px) + 1rem);
}

.catch-header__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  min-height: 64px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.catch-header__brand {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: #ECE8E1;
}
.catch-header__brand:hover, .catch-header__brand:focus-visible {
  color: #ECE8E1;
}

.catch-header__brand-text {
  font-size: 1.75rem;
  line-height: 1;
}

.site-logo img {
  display: block;
  max-height: 36px;
  width: auto;
}

.catch-nav {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin: 0;
  padding: 0.5rem 0;
  list-style: none;
}

.catch-nav__link {
  position: relative;
  display: flex;
  min-height: 2.75rem;
  align-items: center;
  padding: 0.5rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-decoration: none;
  color: rgba(236, 232, 225, 0.7);
  transition: color 150ms ease-out;
}
.catch-nav__link::after {
  content: "";
  position: absolute;
  right: 0.75rem;
  bottom: 0.25rem;
  left: 0.75rem;
  height: 2px;
  background-color: #FF4655;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-nav__link:hover, .catch-nav__link:focus-visible {
  color: #ECE8E1;
}
.catch-nav__link:hover::after, .catch-nav__link:focus-visible::after {
  transform: scaleX(1);
}
.catch-nav__link.is-active {
  color: #ECE8E1;
}
.catch-nav__link.is-active::after {
  transform: scaleX(1);
}

.catch-nav__pending {
  position: absolute;
  top: 0.35rem;
  right: 0.35rem;
  width: 0.42rem;
  height: 0.42rem;
  border: 1px solid rgba(236, 232, 225, 0.82);
  border-radius: 50%;
  background: #FF4655;
  box-shadow: 0 0 0.65rem rgba(255, 70, 85, 0.72);
}

.catch-header__actions {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.75rem;
  margin-left: auto;
}

.catch-header__wallet {
  display: inline-flex;
  max-width: min(42vw, 42rem);
  min-width: 0;
  align-items: center;
  gap: 0.35rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}
.catch-header__wallet::-webkit-scrollbar {
  display: none;
}

.catch-balance {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.4em;
  padding: 0.25rem 0.5rem;
  background-color: rgba(236, 232, 225, 0.06);
  border: 1px solid rgba(236, 232, 225, 0.15);
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(236, 232, 225, 0.75);
  text-decoration: none;
}

.catch-balance--radianite {
  min-height: 2.75rem;
}
.catch-balance--radianite[href] {
  transition: border-color 150ms ease-out, background-color 150ms ease-out, color 150ms ease-out;
}
.catch-balance--radianite[href]:hover, .catch-balance--radianite[href]:focus-visible {
  border-color: rgba(255, 70, 85, 0.72);
  background-color: rgba(255, 70, 85, 0.11);
  color: #ECE8E1;
}
.catch-balance--radianite[href]:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 2px rgba(236, 232, 225, 0.3);
}

.catch-balance__pending {
  position: absolute;
  top: 0.2rem;
  right: 0.2rem;
  width: 0.42rem;
  height: 0.42rem;
  border: 1px solid rgba(236, 232, 225, 0.9);
  border-radius: 50%;
  background: #FF4655;
  box-shadow: 0 0 0.65rem rgba(255, 70, 85, 0.72);
}

.catch-balance--item {
  border-color: color-mix(in srgb, var(--catch-item-color, #8b5cf6) 44%, rgba(255, 255, 255, 0.15));
  background: radial-gradient(circle at 20% 50%, color-mix(in srgb, var(--catch-item-color, #8b5cf6) 20%, transparent), transparent 70%), rgba(236, 232, 225, 0.06);
}
.catch-balance--item:hover, .catch-balance--item:focus-visible {
  color: #ECE8E1;
  border-color: var(--catch-item-color, #8b5cf6);
}

.catch-balance--radianite + .catch-balance--item {
  margin-left: 0.5rem;
}
.catch-balance--radianite + .catch-balance--item::before {
  content: "";
  position: absolute;
  top: 0.35rem;
  bottom: 0.35rem;
  left: -0.5rem;
  width: 1px;
  background: rgba(236, 232, 225, 0.18);
}

.catch-balance__icon {
  flex: 0 0 auto;
  width: 0.6em;
  height: 0.6em;
  background-color: #FF4655;
  transform: rotate(45deg);
}

.catch-balance__item-icon {
  display: grid;
  width: 1.15rem;
  height: 1.15rem;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: color-mix(in srgb, var(--catch-item-color, #8b5cf6) 20%, transparent);
  box-shadow: 0 0 0.55rem color-mix(in srgb, var(--catch-item-color, #8b5cf6) 28%, transparent);
}

.catch-balance__item-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.catch-balance__value {
  color: #ECE8E1;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.catch-balance--item .catch-balance__value {
  max-width: 4rem;
  overflow: hidden;
  text-overflow: ellipsis;
}

.catch-balance__label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
@media (min-width: 1200px) {
  .catch-balance__label {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip-path: none;
    color: rgba(236, 232, 225, 0.6);
    font-weight: 500;
  }
}

.catch-header__wallet > .catch-balance--item .catch-balance__label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.catch-header__wallet > .catch-balance--item[data-catch-item-tooltip] {
  cursor: help;
  transition: color 150ms ease-out, text-shadow 150ms ease-out;
}
.catch-header__wallet > .catch-balance--item[data-catch-item-tooltip]:hover, .catch-header__wallet > .catch-balance--item[data-catch-item-tooltip]:focus-visible {
  color: #ECE8E1;
  text-shadow: 0 0 0.55rem color-mix(in srgb, var(--catch-item-color, #8b5cf6) 70%, transparent);
}
.catch-header__wallet > .catch-balance--item[data-catch-item-tooltip]:focus-visible {
  outline: 2px solid rgba(236, 232, 225, 0.72);
  outline-offset: 0.16rem;
}

.catch-user__toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0.5rem 0.25rem 0.25rem;
  background: transparent;
  border: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  color: rgba(236, 232, 225, 0.85);
  transition: background-color 150ms ease-out, color 150ms ease-out;
}
.catch-user__toggle:hover, .catch-user__toggle[aria-expanded=true] {
  background-color: rgba(236, 232, 225, 0.08);
  color: #ECE8E1;
}
.catch-user__toggle:focus-visible {
  outline: 0;
  background-color: rgba(236, 232, 225, 0.08);
  box-shadow: 0 0 0 2px rgba(236, 232, 225, 0.32);
  color: #ECE8E1;
}

.catch-user__avatar img {
  display: block;
  width: 28px;
  height: 28px;
  object-fit: cover;
}

.catch-user__name {
  display: none;
  max-width: 10rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .catch-user__name {
    display: inline;
  }
}

.catch-user__chevron {
  width: 0.45rem;
  height: 0.45rem;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  opacity: 0.7;
  transform: translateY(-0.1rem) rotate(45deg);
  transition: transform 150ms ease-out;
}

.catch-user__toggle[aria-expanded=true] .catch-user__chevron {
  transform: translateY(0.1rem) rotate(225deg);
}

.catch-user__toggle--no-avatar .catch-user__name {
  display: inline;
  max-width: 7rem;
}

@media (max-width: 575.98px) {
  .catch-header__inner {
    gap: 0.5rem;
  }
  .catch-header__actions {
    gap: 0.4rem;
  }
  .catch-user__toggle {
    gap: 0.35rem;
    padding: 0.2rem 0.3rem 0.2rem 0.2rem;
  }
  .catch-header__wallet {
    max-width: 45vw;
    gap: 0.25rem;
  }
  .catch-balance {
    gap: 0.3em;
    padding: 0.2rem 0.35rem;
    font-size: 0.6875rem;
  }
  .catch-balance__item-icon {
    width: 1rem;
    height: 1rem;
  }
  .catch-user__avatar img {
    width: 26px;
    height: 26px;
  }
}
@media (max-width: 399.98px) {
  .site-logo img {
    max-width: 5.75rem;
  }
  .catch-user__toggle--no-avatar .catch-user__name {
    display: none;
  }
  .catch-user__avatar {
    display: none;
  }
  .catch-balance {
    padding-inline: 0.3rem;
  }
  .catch-balance__value {
    max-width: 2.4rem;
  }
}
.catch-user__menu {
  --bs-dropdown-bg: #0F1923;
  --bs-dropdown-border-color: rgba(236, 232, 225, 0.15);
  --bs-dropdown-link-color: rgba(236, 232, 225, 0.8);
  --bs-dropdown-link-hover-color: #ECE8E1;
  --bs-dropdown-link-hover-bg: rgba(236, 232, 225, 0.08);
  --bs-dropdown-link-active-color: #ECE8E1;
  --bs-dropdown-link-active-bg: rgba(255, 70, 85, 0.9);
  --bs-dropdown-divider-bg: rgba(236, 232, 225, 0.15);
  --bs-dropdown-font-size: 0.875rem;
}
.catch-user__menu .dropdown-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.catch-wallet-more {
  flex: 0 0 auto;
}
.catch-wallet-more[hidden] {
  display: none;
}

@keyframes catch-wallet-receive {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(255, 70, 85, 0.55);
  }
  45% {
    transform: scale(1.12);
    box-shadow: 0 0 0 0.35rem rgba(255, 70, 85, 0);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(255, 70, 85, 0);
  }
}
.catch-balance.is-receiving,
.catch-wallet-more.is-receiving .catch-wallet-more__toggle {
  animation: catch-wallet-receive 900ms ease-out;
  border-color: rgba(255, 70, 85, 0.75);
}

@media (prefers-reduced-motion: reduce) {
  .catch-balance.is-receiving,
  .catch-wallet-more.is-receiving .catch-wallet-more__toggle {
    animation: none;
  }
}
.catch-wallet-more__toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
  padding: 0.25rem 0.5rem;
  border: 1px solid rgba(236, 232, 225, 0.15);
  background-color: rgba(236, 232, 225, 0.06);
  color: rgba(236, 232, 225, 0.75);
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.45;
  transition: border-color 150ms ease, color 150ms ease;
}
.catch-wallet-more__toggle:hover, .catch-wallet-more__toggle:focus-visible, .catch-wallet-more__toggle[aria-expanded=true] {
  border-color: rgba(255, 70, 85, 0.7);
  color: #ECE8E1;
}

.catch-wallet-more__grid {
  width: 9px;
  height: 9px;
  flex: 0 0 auto;
  background-image: linear-gradient(currentColor 0 0), linear-gradient(currentColor 0 0), linear-gradient(currentColor 0 0), linear-gradient(currentColor 0 0);
  background-size: 3px 3px;
  background-position: 0 0, 6px 0, 0 6px, 6px 6px;
  background-repeat: no-repeat;
}

.catch-wallet-more__count {
  color: #ECE8E1;
  font-variant-numeric: tabular-nums;
}

.catch-wallet-more__menu {
  --bs-dropdown-bg: #0F1923;
  --bs-dropdown-border-color: rgba(236, 232, 225, 0.15);
  --bs-dropdown-padding-y: 0.5rem;
  display: none;
  min-width: 13rem;
}
.catch-wallet-more__menu.show {
  display: grid;
  gap: 0.35rem;
  padding-inline: 0.5rem;
}
.catch-wallet-more__menu .catch-balance {
  justify-content: flex-start;
  gap: 0.5rem;
}
.catch-wallet-more__menu .catch-balance__label {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip-path: none;
  color: rgba(236, 232, 225, 0.6);
  font-weight: 500;
}

.catch-notification-center {
  flex: 0 0 auto;
}
.catch-notification-center[hidden] {
  display: none;
}

.catch-notification-center__toggle {
  position: relative;
  display: inline-grid;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  place-items: center;
  border: 1px solid rgba(236, 232, 225, 0.15);
  background: rgba(236, 232, 225, 0.06);
  color: rgba(236, 232, 225, 0.78);
  transition: border-color 150ms ease-out, background-color 150ms ease-out, color 150ms ease-out;
}
.catch-notification-center__toggle svg {
  width: 1.15rem;
  height: 1.15rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: square;
  stroke-linejoin: miter;
}
.catch-notification-center__toggle:hover, .catch-notification-center__toggle:focus-visible, .catch-notification-center__toggle[aria-expanded=true] {
  border-color: rgba(255, 70, 85, 0.72);
  background: rgba(255, 70, 85, 0.11);
  color: #ECE8E1;
}
.catch-notification-center__toggle:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 2px rgba(236, 232, 225, 0.3);
}

.catch-notification-center__badge {
  position: absolute;
  top: -0.3rem;
  right: -0.35rem;
  display: grid;
  min-width: 1.25rem;
  height: 1.25rem;
  padding-inline: 0.25rem;
  place-items: center;
  border: 1px solid rgba(236, 232, 225, 0.9);
  background: #FF4655;
  color: #ECE8E1;
  font-size: 0.625rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}
.catch-notification-center__badge[hidden] {
  display: none;
}

.catch-notification-center__menu {
  --bs-dropdown-bg: #0F1923;
  --bs-dropdown-border-color: rgba(236, 232, 225, 0.17);
  --bs-dropdown-padding-x: 0;
  --bs-dropdown-padding-y: 0;
  display: none;
  width: min(24rem, 100vw - 2rem);
  overflow: hidden;
  box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.34);
}
.catch-notification-center__menu.show {
  display: block;
}

.catch-notification-center__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.13);
  background: linear-gradient(105deg, rgba(255, 70, 85, 0.12), transparent 55%), rgba(0, 0, 0, 0.09);
}
.catch-notification-center__header div {
  display: grid;
  gap: 0.1rem;
}
.catch-notification-center__header span {
  color: #FF4655;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.catch-notification-center__header strong {
  color: #ECE8E1;
  font-size: 1rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.catch-notification-center__read-all {
  min-height: 2.25rem;
  padding: 0.35rem 0;
  border: 0;
  background: transparent;
  color: rgba(236, 232, 225, 0.7);
  font-size: 0.6875rem;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.catch-notification-center__read-all:hover, .catch-notification-center__read-all:focus-visible {
  color: #ECE8E1;
}
.catch-notification-center__read-all:focus-visible {
  outline: 2px solid rgba(236, 232, 225, 0.45);
  outline-offset: 0.2rem;
}
.catch-notification-center__read-all:disabled {
  opacity: 0.38;
  cursor: default;
}

.catch-notification-center__list {
  display: grid;
  max-height: min(28rem, 100vh - var(--header-height, 64px) - 8rem);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.catch-notification-center__item {
  position: relative;
  display: grid;
  gap: 0.35rem;
  min-height: 4.75rem;
  padding: 0.85rem 1rem 0.85rem 1.15rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.1);
  background: rgba(236, 232, 225, 0.015);
  color: rgba(236, 232, 225, 0.76);
  text-decoration: none;
  transition: background-color 150ms ease-out;
}
.catch-notification-center__item::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 0.22rem;
  background: transparent;
}
.catch-notification-center__item.is-unread {
  background: rgba(236, 232, 225, 0.065);
}
.catch-notification-center__item.is-unread::before {
  background: #FF4655;
}
.catch-notification-center__item.is-unread .catch-notification-center__title {
  color: #ECE8E1;
  font-weight: 700;
}
.catch-notification-center__item[href]:hover, .catch-notification-center__item[href]:focus-visible {
  background: rgba(236, 232, 225, 0.1);
  color: #ECE8E1;
}
.catch-notification-center__item[href]:focus-visible {
  outline: 2px solid rgba(255, 70, 85, 0.8);
  outline-offset: -2px;
}

.catch-notification-center__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.catch-notification-center__kicker {
  overflow: hidden;
  color: #FF4655;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.catch-notification-center__time {
  flex: 0 0 auto;
  color: rgba(236, 232, 225, 0.48);
  font-size: 0.6875rem;
}

.catch-notification-center__title {
  color: rgba(236, 232, 225, 0.82);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.3;
}

.catch-notification-center__reward {
  color: rgba(236, 232, 225, 0.63);
  font-size: 0.75rem;
  font-weight: 600;
}

.catch-notification-center__empty,
.catch-notification-center__status {
  margin: 0;
  padding: 1.4rem 1rem;
  color: rgba(236, 232, 225, 0.6);
  font-size: 0.8125rem;
  text-align: center;
}
.catch-notification-center__empty[hidden],
.catch-notification-center__status[hidden] {
  display: none;
}

@media (max-width: 575.98px) {
  .catch-notification-center__menu {
    position: fixed !important;
    inset: calc(var(--header-height, 64px) + var(--catch-admin-bar-offset, 0px) + 0.5rem) 0.5rem auto !important;
    width: auto;
    max-height: calc(100vh - var(--header-height, 64px) - var(--catch-admin-bar-offset, 0px) - 1rem);
    transform: none !important;
  }
  .catch-notification-center__list {
    max-height: calc(100vh - var(--header-height, 64px) - var(--catch-admin-bar-offset, 0px) - 7.5rem);
  }
}
.catch-user__badge {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  padding: 0.08rem 0.42rem;
  border: 0;
  border-radius: 0;
  background: #FF4655;
  box-shadow: inset 0 0 0 1px rgba(236, 232, 225, 0.35);
  clip-path: polygon(0.24rem 0, 100% 0, 100% calc(100% - 0.24rem), calc(100% - 0.24rem) 100%, 0 100%, 0 0.24rem);
  filter: drop-shadow(0 0 0.4rem rgba(255, 70, 85, 0.38));
  color: #ECE8E1;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.5;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.catch-user__badge[hidden] {
  display: none;
}

.catch-header__login {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  white-space: nowrap;
}

.catch-header__login-icon {
  width: 1.15em;
  height: auto;
}

.catch-header__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  background: transparent;
  border: 1px solid rgba(236, 232, 225, 0.2);
  color: #ECE8E1;
  transition: border-color 150ms ease-out;
}
.catch-header__toggle:hover, .catch-header__toggle:focus-visible {
  border-color: rgba(255, 70, 85, 0.7);
}
@media (min-width: 992px) {
  .catch-header__toggle {
    display: none;
  }
}

.catch-header__toggle-bars {
  position: relative;
  display: block;
  width: 18px;
  height: 2px;
  background-color: currentColor;
}
.catch-header__toggle-bars::before, .catch-header__toggle-bars::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: currentColor;
}
.catch-header__toggle-bars::before {
  top: -6px;
}
.catch-header__toggle-bars::after {
  top: 6px;
}

.catch-header__nav {
  flex-basis: 100%;
  order: 3;
}
@media (min-width: 992px) {
  .catch-header__nav {
    display: flex !important;
    flex-basis: auto;
    order: 0;
  }
}

@media (min-width: 992px) {
  .catch-nav {
    flex-direction: row;
    gap: 0.25rem;
    padding: 0;
  }
  .catch-header__toggle {
    display: none;
  }
}
.catch-header__sentinel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120px;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .catch-header,
  .catch-nav__link,
  .catch-nav__link::after,
  .catch-header__wallet > .catch-balance--item[data-catch-item-tooltip],
  .catch-user__toggle,
  .catch-header__toggle {
    transition: none;
  }
}
.catch-footer {
  position: relative;
  padding: 3.5rem 0 1.75rem;
  background-color: #080E13;
  border-top: 1px solid rgba(236, 232, 225, 0.1);
  color: rgba(236, 232, 225, 0.7);
  font-size: 0.875rem;
}

.catch-footer::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 8rem;
  height: 2px;
  background-color: #FF4655;
}

.catch-footer__top {
  display: grid;
  gap: 2.5rem;
}
@media (min-width: 768px) {
  .catch-footer__top {
    grid-template-columns: minmax(14rem, 1fr) 2fr;
    gap: 3rem;
  }
}

.catch-footer__logo {
  margin-bottom: 0.5rem;
  font-size: 2rem;
  line-height: 1;
  color: #ECE8E1;
}

.catch-footer__tagline {
  max-width: 22rem;
  margin: 0;
  color: rgba(236, 232, 225, 0.6);
}

.catch-footer__columns {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
}

.catch-footer__column-title {
  margin-bottom: 1rem;
}

.catch-footer__links {
  margin: 0;
  padding: 0;
  list-style: none;
}
.catch-footer__links li + li {
  margin-top: 0.5rem;
}
.catch-footer__links a {
  text-decoration: none;
  color: rgba(236, 232, 225, 0.7);
  transition: color 150ms ease-out;
}
.catch-footer__links a:hover, .catch-footer__links a:focus-visible {
  color: #ECE8E1;
}

.catch-footer__online {
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(236, 232, 225, 0.1);
}

.catch-footer__online-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin-bottom: 1rem;
}
.catch-footer__online-heading .catch-footer__column-title {
  margin-bottom: 0;
}
.catch-footer__online-heading strong {
  color: rgba(236, 232, 225, 0.72);
  font-size: 0.78rem;
  font-weight: 600;
}

.catch-footer__online-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.catch-footer__online-list[hidden] {
  display: none;
}
.catch-footer__online-list a {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 2.5rem;
  padding: 0.3rem 0.75rem 0.3rem 0.3rem;
  border: 1px solid rgba(236, 232, 225, 0.13);
  background: rgba(236, 232, 225, 0.035);
  color: rgba(236, 232, 225, 0.78);
  text-decoration: none;
  transition: border-color 150ms ease-out, background-color 150ms ease-out, color 150ms ease-out;
}
.catch-footer__online-list a:hover, .catch-footer__online-list a:focus-visible {
  border-color: rgba(101, 214, 173, 0.58);
  background: rgba(101, 214, 173, 0.08);
  color: #ECE8E1;
}
.catch-footer__online-list img {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  object-fit: cover;
}

.catch-footer__online-dot {
  width: 0.45rem;
  height: 0.45rem;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #65d6ad;
  box-shadow: 0 0 0.65rem rgba(101, 214, 173, 0.52);
}

.catch-footer__online-list img + .catch-footer__online-dot {
  margin-left: -0.85rem;
  align-self: flex-end;
  box-shadow: 0 0 0 2px #080E13, 0 0 0.65rem rgba(101, 214, 173, 0.52);
}

.catch-footer__online-empty {
  margin: 0;
  color: rgba(236, 232, 225, 0.52);
}
.catch-footer__online-empty[hidden] {
  display: none;
}

.catch-footer__divider {
  margin: 2.5rem 0 1.5rem;
  background-color: rgba(236, 232, 225, 0.15);
}

.catch-footer__bottom {
  display: grid;
  align-items: center;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .catch-footer__bottom {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}

.catch-footer__copyright {
  margin: 0;
  font-size: 0.8125rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgba(236, 232, 225, 0.5);
}

.catch-footer__meta {
  display: grid;
  gap: 0.65rem;
}

.catch-footer__legal {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 1rem;
}
.catch-footer__legal a {
  color: rgba(236, 232, 225, 0.62);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color 150ms ease-out;
}
.catch-footer__legal a:hover, .catch-footer__legal a:focus-visible {
  color: #ECE8E1;
}

.catch-footer__disclaimer {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.9rem;
  max-width: 36rem;
  padding: 0.8rem 1rem 0.8rem 1.15rem;
  overflow: hidden;
  border: 1px solid rgba(236, 232, 225, 0.12);
  background: linear-gradient(110deg, rgba(255, 70, 85, 0.12), transparent 60%), rgba(236, 232, 225, 0.025);
}
.catch-footer__disclaimer::after {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  width: 1.35rem;
  height: 1.35rem;
  background: #080E13;
  border-left: 1px solid rgba(236, 232, 225, 0.12);
  transform: translate(50%, -50%) rotate(45deg);
}
.catch-footer__disclaimer p {
  display: grid;
  gap: 0.15rem;
  margin: 0;
  line-height: 1.35;
}
.catch-footer__disclaimer strong {
  color: #ECE8E1;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
.catch-footer__disclaimer p span {
  color: rgba(236, 232, 225, 0.58);
  font-size: 0.78rem;
}
.catch-footer__disclaimer a {
  color: rgba(236, 232, 225, 0.78);
  text-underline-offset: 0.15em;
}
.catch-footer__disclaimer a:hover, .catch-footer__disclaimer a:focus-visible {
  color: #ECE8E1;
}

.catch-footer__disclaimer-mark {
  width: 0.28rem;
  height: 2.35rem;
  flex: 0 0 auto;
  background: #FF4655;
  transform: skew(-12deg);
  box-shadow: 0 0 1rem rgba(255, 70, 85, 0.2);
}

@media (prefers-reduced-motion: reduce) {
  .catch-footer__links a,
  .catch-footer__online-list a,
  .catch-footer__legal a {
    transition: none;
  }
}
.hero-home {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  min-height: 100vh;
  min-height: 100svh;
}

.hero-home__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.hero-home__content {
  position: relative;
  z-index: 1;
  max-width: 46rem;
  padding: calc(2rem + var(--header-height, 64px)) 1.25rem 2rem;
  text-align: center;
  color: #ECE8E1;
}

.hero-home__eyebrow {
  color: #ECE8E1;
}

.hero-home__title {
  margin: 0.5rem 0 1rem;
  font-size: clamp(2.5rem, 6vw, 5rem);
  color: #ECE8E1;
}

.hero-home__lead {
  max-width: 42rem;
  margin: 0 auto;
  color: rgba(236, 232, 225, 0.78);
  font-size: clamp(1rem, 1.8vw, 1.2rem);
  line-height: 1.6;
}

.home-drop-status {
  --drop-status-accent: #FF4655;
  position: relative;
  display: inline-grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 0.85rem;
  width: min(100%, 31rem);
  margin: 1.5rem auto 0;
  padding: 0.9rem 1.15rem;
  overflow: hidden;
  border: 1px solid rgba(236, 232, 225, 0.2);
  background: linear-gradient(105deg, rgba(255, 70, 85, 0.15), transparent 58%), rgba(15, 25, 35, 0.78);
  box-shadow: 0 0.75rem 2rem rgba(15, 25, 35, 0.28);
  clip-path: polygon(0.65rem 0, 100% 0, 100% calc(100% - 0.65rem), calc(100% - 0.65rem) 100%, 0 100%, 0 0.65rem);
  text-align: left;
  backdrop-filter: blur(10px);
}
.home-drop-status[data-state=active] {
  --drop-status-accent: #57d9a3;
}
.home-drop-status[data-state=checking], .home-drop-status[data-state=loading] {
  --drop-status-accent: #f5c451;
}
.home-drop-status[data-state=unavailable] {
  --drop-status-accent: rgba(236, 232, 225, 0.48);
}

.home-drop-status__signal {
  position: relative;
  width: 0.65rem;
  height: 0.65rem;
  background: var(--drop-status-accent);
  box-shadow: 0 0 0.9rem var(--drop-status-accent);
  transform: rotate(45deg);
}
.home-drop-status__signal::after {
  position: absolute;
  inset: -0.3rem;
  border: 1px solid var(--drop-status-accent);
  content: "";
  opacity: 0;
  animation: home-drop-signal 1.8s ease-out infinite;
}

.home-drop-status__content {
  display: grid;
  min-width: 0;
  gap: 0.05rem;
}

.home-drop-status__label {
  color: var(--drop-status-accent);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.25;
  text-transform: uppercase;
}

.home-drop-status__value {
  color: #ECE8E1;
  font-size: clamp(1rem, 2.4vw, 1.2rem);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1.25;
}

.home-drop-status__note {
  color: rgba(236, 232, 225, 0.62);
  font-size: 0.78rem;
  line-height: 1.35;
}

@keyframes home-drop-signal {
  0% {
    opacity: 0.65;
    transform: scale(0.55);
  }
  75%, 100% {
    opacity: 0;
    transform: scale(1.45);
  }
}
.hero-home__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  margin-top: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .home-drop-status__signal::after {
    animation: none;
  }
}
.home-section {
  padding: clamp(4.5rem, 8vw, 7.5rem) 0;
}

.home-section__head {
  max-width: 44rem;
  margin: 0 auto clamp(2.5rem, 5vw, 4rem);
  text-align: center;
}
.home-section__head h2, .home-section__head .h2 {
  margin-bottom: 0;
}
.home-section__head .catch-eyebrow {
  justify-content: center;
}

.home-section__head--wide {
  max-width: none;
}

.home-section__lead {
  max-width: 32rem;
  margin: 1rem auto 0;
  font-size: clamp(1rem, 1.5vw, 1.125rem);
  color: #5A6672;
}

.home-section__head--light h2, .home-section__head--light .h2 {
  color: #ECE8E1;
}
.home-section__head--light .home-section__lead {
  color: rgba(236, 232, 225, 0.7);
}

.home-section__action {
  margin-top: 2.5rem;
  text-align: center;
}

.home-anchor-target {
  position: absolute;
  top: 0;
  scroll-margin-top: calc(var(--header-height, 64px) + 1rem);
}

@media (min-width: 992px) {
  .home-section__head--wide {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr);
    align-items: end;
    gap: 4rem;
    text-align: left;
  }
  .home-section__head--wide .catch-eyebrow {
    justify-content: flex-start;
  }
  .home-section__head--wide .home-section__lead {
    margin: 0 0 0.35rem;
  }
}
.home-latest {
  position: relative;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(15, 25, 35, 0.035) 1px, transparent 1px), #ECE8E1;
  background-size: 25% 100%;
  border-bottom: 1px solid rgba(15, 25, 35, 0.1);
}

.home-drop-card {
  --accent: #FF4655;
  height: 100%;
}

@media screen and (hover: none) and (pointer: coarse) and (max-device-width: 575.98px), screen and (hover: none) and (pointer: coarse) and (max-device-height: 575.98px) {
  .home-latest .c-card-slot--grid {
    content-visibility: visible;
    contain-intrinsic-size: none;
  }
}
.home-drop-card__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.15rem 0.35rem;
  margin: 0.9rem 0 0;
  font-size: 0.75rem;
  line-height: 1.45;
  text-align: center;
  color: #5A6672;
}

.home-drop-card__winner {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(90, 102, 114, 0.4);
  text-underline-offset: 0.15em;
  transition: color 150ms ease, text-decoration-color 150ms ease;
}
.home-drop-card__winner:hover, .home-drop-card__winner:focus-visible {
  color: #FF4655;
  text-decoration-color: currentColor;
}

.home-drop-card__winners-more {
  padding: 0;
  background: none;
  border: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  cursor: pointer;
}

.home-drop-card__winners-mobile {
  display: none;
}

@media screen and (hover: none) and (pointer: coarse) and (max-device-width: 575.98px), screen and (hover: none) and (pointer: coarse) and (max-device-height: 575.98px) {
  .home-drop-card__meta {
    align-items: center;
  }
  .home-drop-card__winners-more {
    display: none;
  }
  .home-drop-card__winners-mobile {
    display: block;
    min-width: 0;
    max-width: 100%;
  }
  .home-drop-card__winners-mobile[open] {
    flex-basis: 100%;
  }
  .home-drop-card__winners-mobile > summary {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 0.5rem;
    cursor: pointer;
    list-style: none;
  }
  .home-drop-card__winners-mobile > summary::-webkit-details-marker {
    display: none;
  }
  .home-drop-card__winners-list {
    padding: 0.5rem;
    border: 1px solid rgba(15, 25, 35, 0.18);
    background: #ECE8E1;
    overflow-wrap: anywhere;
  }
  .home-drop-card__winners-list ul {
    padding: 0;
    margin: 0.25rem 0 0;
    list-style: none;
  }
  .home-drop-card__winners-list a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
  }
}
.home-latest__empty {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  margin: 0;
  padding: 3rem 1.5rem;
  background: rgba(15, 25, 35, 0.035);
  border: 1px solid rgba(15, 25, 35, 0.12);
  text-align: center;
  color: #5A6672;
}

.home-steps-section {
  position: relative;
  overflow: hidden;
  background-color: #0F1923;
  color: #ECE8E1;
}
.home-steps-section::after {
  content: "";
  position: absolute;
  right: -12rem;
  bottom: -16rem;
  width: 30rem;
  height: 30rem;
  border: 1px solid rgba(255, 70, 85, 0.35);
  transform: rotate(45deg);
  pointer-events: none;
}
.home-steps-section .container {
  position: relative;
  z-index: 1;
}

.home-steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  margin: 0;
  padding: 1px;
  background: rgba(236, 232, 225, 0.14);
  list-style: none;
}

.home-step {
  position: relative;
  min-width: 0;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  background: rgba(15, 25, 35, 0.96);
}
.home-step h3, .home-step .h3 {
  margin: 1.75rem 0 0.6rem;
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  color: #ECE8E1;
}
.home-step > p {
  max-width: 22rem;
  margin: 0;
  color: rgba(236, 232, 225, 0.65);
}

.home-step__topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.home-step__label {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #FF4655;
}

.home-step__icon {
  flex: 0 0 auto;
  width: 3rem;
  height: 3rem;
  color: #FF4655;
}
.home-step__icon svg {
  width: 100%;
  height: 100%;
}

@media (min-width: 768px) {
  .home-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.home-chapters {
  background: #fff;
}

.home-chapters__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.25rem;
}

.home-chapter {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  min-width: 0;
  background: #ECE8E1;
  border: 1px solid rgba(15, 25, 35, 0.14);
}

.home-chapter__rail {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 1.5rem;
  background: #0F1923;
  color: #ECE8E1;
}
.home-chapter__rail span {
  font-family: "League Gothic", sans-serif;
  font-size: 1.65rem;
  letter-spacing: 0.08em;
}

.home-chapter__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(1.5rem, 4vw, 3rem);
}

.home-chapter__body {
  display: flex;
  width: 100%;
  min-width: 0;
  height: 100%;
  flex-direction: column;
  align-items: flex-start;
}

.home-chapter__heading {
  display: flex;
  width: 100%;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.25rem;
}
.home-chapter__heading h3, .home-chapter__heading .h3 {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2rem, 4vw, 3.25rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.home-chapter__icon {
  flex: 0 0 auto;
  width: clamp(3.5rem, 7vw, 5rem);
  height: clamp(3.5rem, 7vw, 5rem);
  color: #FF4655;
}
.home-chapter__icon svg {
  width: 100%;
  height: 100%;
}

.home-chapter__text {
  max-width: 43rem;
  margin: 1.5rem 0;
  color: #5A6672;
}

.home-chapter__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
}
.home-chapter__tags li {
  padding: 0.4rem 0.7rem;
  border: 1px solid rgba(15, 25, 35, 0.18);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0F1923;
}

.home-chapter--fusion {
  background: linear-gradient(110deg, rgba(255, 70, 85, 0.08), transparent 55%), #ECE8E1;
}

.home-text-link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  gap: 0.75rem;
  margin-top: auto;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0F1923;
  text-decoration: none;
}
.home-text-link span {
  color: #FF4655;
  transition: transform 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.home-text-link:hover, .home-text-link:focus-visible {
  color: #FF4655;
}
.home-text-link:hover span, .home-text-link:focus-visible span {
  transform: translateX(0.25rem);
}

.home-card-stack {
  --deck-rx: 0deg;
  --deck-ry: 0deg;
  position: relative;
  display: grid;
  width: 100%;
  min-height: clamp(16rem, 32vw, 22rem);
  place-items: center;
  isolation: isolate;
}
.home-card-stack::before {
  content: "";
  position: absolute;
  width: min(92%, 26rem);
  height: 42%;
  background: radial-gradient(ellipse, rgba(255, 70, 85, 0.22), transparent 68%);
  filter: blur(1.5rem);
  opacity: 0;
  transform: translateY(34%) scale(0.75);
  transition: opacity 360ms ease-out, transform 420ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.home-card-stack__stage {
  position: relative;
  width: min(78%, 19rem);
  aspect-ratio: 1.15/1;
  transform: perspective(900px) rotateX(var(--deck-rx)) rotateY(var(--deck-ry));
  transform-style: preserve-3d;
  transition: transform 260ms cubic-bezier(0.2, 0.6, 0.2, 1);
  will-change: transform;
}

.home-card-stack__card {
  clip-path: polygon(0.7rem 0, 100% 0, 100% calc(100% - 0.7rem), calc(100% - 0.7rem) 100%, 0 100%, 0 0.7rem);
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 46%;
  aspect-ratio: 2/3;
  overflow: hidden;
  border: 1px solid rgba(236, 232, 225, 0.32);
  box-shadow: 0 1.25rem 2rem rgba(15, 25, 35, 0.3);
  transform-origin: 50% 92%;
  transition: opacity 260ms ease-out, transform 440ms cubic-bezier(0.2, 0.6, 0.2, 1), box-shadow 240ms ease-out;
}
.home-card-stack__card::before {
  content: "";
  position: absolute;
  inset: 0.55rem;
  border: 1px solid rgba(236, 232, 225, 0.38);
  clip-path: polygon(0.7rem 0, 100% 0, 100% calc(100% - 0.7rem), calc(100% - 0.7rem) 100%, 0 100%, 0 0.7rem);
}
.home-card-stack__card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(118deg, transparent 0 1.15rem, rgba(236, 232, 225, 0.07) 1.15rem 1.25rem);
}
.home-card-stack__card i {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 32%;
  aspect-ratio: 1;
  border: 1px solid currentColor;
  transform: translate(-50%, -50%) rotate(45deg);
}
.home-card-stack__card i::before, .home-card-stack__card i::after {
  content: "";
  position: absolute;
  inset: 26%;
  border: 1px solid currentColor;
}
.home-card-stack__card i::after {
  inset: 44%;
  background: currentColor;
}

.home-card-stack__card--left {
  z-index: 1;
  background: #FF4655;
  color: #0F1923;
  opacity: 0.35;
  transform: translate3d(-50%, 1.5rem, -2rem) rotate(0deg) scale(0.88);
}

.home-card-stack__card--right {
  z-index: 2;
  background: #65727f;
  color: #ECE8E1;
  opacity: 0.45;
  transform: translate3d(-50%, 1rem, -1rem) rotate(0deg) scale(0.94);
}

.home-card-stack__card--front {
  z-index: 3;
  background: radial-gradient(circle at 50% 44%, rgba(255, 70, 85, 0.2), transparent 28%), #0F1923;
  color: #FF4655;
  opacity: 0.8;
  transform: translate3d(-50%, 0.75rem, 0) rotate(0deg);
}

.home-card-stack.is-active::before {
  opacity: 1;
  transform: translateY(18%) scale(1);
}
.home-card-stack.is-active .home-card-stack__card--left {
  opacity: 1;
  transform: translate3d(-96%, 1.35rem, -1rem) rotate(-13deg) scale(0.93);
}
.home-card-stack.is-active .home-card-stack__card--right {
  opacity: 1;
  transform: translate3d(-4%, 1.1rem, -0.5rem) rotate(12deg) scale(0.96);
  transition-delay: 45ms;
}
.home-card-stack.is-active .home-card-stack__card--front {
  opacity: 1;
  transform: translate3d(-50%, -0.65rem, 1rem) rotate(-1deg);
  transition-delay: 90ms;
}

@media (min-width: 992px) {
  .home-chapters__grid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .home-chapter {
    grid-column: span 6;
    min-height: 24rem;
  }
  .home-chapter--fusion {
    grid-column: 1/-1;
    min-height: 20rem;
  }
  .home-chapter--fusion .home-chapter__content {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(18rem, 0.95fr);
    align-items: center;
    gap: clamp(2rem, 6vw, 6rem);
  }
}
@media (max-width: 575.98px) {
  .home-chapter {
    grid-template-columns: 2.75rem minmax(0, 1fr);
  }
  .home-chapter__rail {
    padding-top: 1.1rem;
  }
  .home-chapter__heading {
    display: block;
  }
  .home-chapter__icon {
    width: 3rem;
    height: 3rem;
    margin-top: 1.25rem;
  }
  .home-card-stack {
    margin-top: 1.5rem;
    min-height: 15rem;
  }
}
.home-progression {
  position: relative;
  overflow: hidden;
  background: linear-gradient(120deg, rgba(255, 70, 85, 0.11), transparent 35rem), #0F1923;
  color: #ECE8E1;
}

.home-progression__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

.home-progression-card {
  clip-path: polygon(0.5rem 0, 100% 0, 100% calc(100% - 0.5rem), calc(100% - 0.5rem) 100%, 0 100%, 0 0.5rem);
  display: flex;
  min-width: 0;
  min-height: 18rem;
  flex-direction: column;
  padding: clamp(1.5rem, 3vw, 2.25rem);
  background: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.14);
}
.home-progression-card h3, .home-progression-card .h3 {
  margin: 2.5rem 0 0.75rem;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  font-weight: 400;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #ECE8E1;
}
.home-progression-card > p {
  margin: 0 0 1.5rem;
  color: rgba(236, 232, 225, 0.65);
}

.home-progression-card__topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.home-progression-card__index {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #FF4655;
}

.home-progression-card__icon {
  width: 3rem;
  height: 3rem;
  color: #FF4655;
}
.home-progression-card__icon svg {
  width: 100%;
  height: 100%;
}

.home-text-link--light {
  color: #ECE8E1;
}

@media (min-width: 768px) {
  .home-progression__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
html.has-home-easter-egg {
  overflow: hidden;
}

.home-easter-egg {
  position: fixed;
  inset: 0;
  z-index: 1100;
  display: grid;
  overflow: hidden;
  place-items: center;
  padding: clamp(1rem, 4vw, 2.5rem);
  background: radial-gradient(circle at 50% 48%, rgba(255, 70, 85, 0.18), transparent 34rem), rgba(15, 25, 35, 0.94);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 180ms ease-out, visibility 180ms step-end;
}
.home-easter-egg[hidden] {
  display: none;
}
.home-easter-egg.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 180ms ease-out, visibility 0ms step-start;
}

.home-easter-egg__close {
  position: absolute;
  top: max(1rem, env(safe-area-inset-top));
  right: max(1rem, env(safe-area-inset-right));
  z-index: 4;
  display: grid;
  width: 48px;
  height: 48px;
  padding: 0;
  place-items: center;
  background: rgba(15, 25, 35, 0.72);
  border: 1px solid rgba(236, 232, 225, 0.45);
  border-radius: 0;
  color: #ECE8E1;
  cursor: pointer;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}
.home-easter-egg__close svg {
  width: 1.4rem;
  height: 1.4rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
}
.home-easter-egg__close:hover, .home-easter-egg__close:focus-visible {
  background: #FF4655;
  border-color: #FF4655;
  color: #0F1923;
  outline: 2px solid #ECE8E1;
  outline-offset: 3px;
}

.home-easter-egg__fragments {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}
.home-easter-egg__fragments span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(1.9rem, 4vw, 3.25rem);
  aspect-ratio: 2/3;
  background: #FF4655;
  border: 1px solid rgba(236, 232, 225, 0.65);
  opacity: 0;
  transform: translate(-50%, -50%) rotate(0deg) scale(0.2);
  transition: opacity 180ms ease-out var(--egg-delay), transform 400ms cubic-bezier(0.2, 0.6, 0.2, 1) var(--egg-delay);
}
.home-easter-egg__fragments span::before {
  content: "";
  position: absolute;
  inset: 0.3rem;
  border: 1px solid rgba(15, 25, 35, 0.62);
}
.home-easter-egg__fragments span:nth-child(3n+2) {
  background: #ECE8E1;
}
.home-easter-egg__fragments span:nth-child(3n) {
  background: #65727f;
}

.home-easter-egg.is-active .home-easter-egg__fragments span {
  opacity: 0.72;
  transform: translate(calc(-50% + var(--egg-x)), calc(-50% + var(--egg-y))) rotate(var(--egg-r)) scale(1);
}

.home-easter-egg__card {
  clip-path: polygon(clamp(1rem, 3vw, 1.6rem) 0, 100% 0, 100% calc(100% - clamp(1rem, 3vw, 1.6rem)), calc(100% - clamp(1rem, 3vw, 1.6rem)) 100%, 0 100%, 0 clamp(1rem, 3vw, 1.6rem));
  position: relative;
  z-index: 2;
  display: flex;
  width: min(82vw, 23rem);
  aspect-ratio: 2/3;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  padding: clamp(1.5rem, 5vw, 2.5rem);
  background: linear-gradient(135deg, rgba(255, 70, 85, 0.08), transparent 38%), #ECE8E1;
  border: 1px solid rgba(236, 232, 225, 0.7);
  box-shadow: 0 0 0 0.45rem rgba(255, 70, 85, 0.14), 0 2rem 5rem rgba(0, 0, 0, 0.55);
  color: #0F1923;
  opacity: 0;
  transform: translate3d(0, 2.5rem, 0) rotate(-3deg) scale(0.82);
  transition: opacity 180ms ease-out, transform 380ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.home-easter-egg__card::before {
  content: "";
  position: absolute;
  inset: 0.7rem;
  border: 1px solid rgba(15, 25, 35, 0.25);
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  pointer-events: none;
}
.home-easter-egg__card::after {
  content: "";
  position: absolute;
  inset: auto 0 29% 0;
  height: 1px;
  background: rgba(15, 25, 35, 0.2);
}
.home-easter-egg__card h2, .home-easter-egg__card .h2 {
  max-width: 7ch;
  margin: 0 0 0.6rem;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(3.5rem, 12vw, 5.8rem);
  font-weight: 400;
  line-height: 0.82;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #0F1923;
}
.home-easter-egg__card p:last-child {
  max-width: 15rem;
  margin: 0;
  font-weight: 600;
}

.home-easter-egg.is-active .home-easter-egg__card {
  opacity: 1;
  transform: translate3d(0, 0, 0) rotate(1deg) scale(1);
}

.home-easter-egg__eyebrow {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #FF4655;
}

.home-easter-egg__mark {
  position: absolute;
  top: 43%;
  left: 50%;
  width: clamp(4.5rem, 18vw, 7rem);
  aspect-ratio: 1;
  border: 2px solid #FF4655;
  transform: translate(-50%, -50%) rotate(45deg);
}
.home-easter-egg__mark::before, .home-easter-egg__mark::after,
.home-easter-egg__mark i {
  content: "";
  position: absolute;
  border: 1px solid #FF4655;
}
.home-easter-egg__mark::before {
  inset: 18%;
}
.home-easter-egg__mark::after {
  inset: 36%;
}
.home-easter-egg__mark i {
  inset: 47%;
  background: #FF4655;
}

.home-easter-egg__shine {
  position: absolute;
  inset: -35% auto -35% -45%;
  width: 28%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.72), transparent);
  opacity: 0;
  transform: translate3d(0, 0, 0) skewX(-14deg);
  pointer-events: none;
}

.home-easter-egg.is-active .home-easter-egg__shine {
  animation: home-easter-egg-shine 400ms ease-out 260ms 1 both;
}

.home-easter-egg__hint {
  position: absolute;
  right: 1rem;
  bottom: max(1rem, env(safe-area-inset-bottom));
  left: 1rem;
  z-index: 3;
  margin: 0;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-align: center;
  text-transform: uppercase;
  color: rgba(236, 232, 225, 0.72);
}

@keyframes home-easter-egg-shine {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0) skewX(-14deg);
  }
  35% {
    opacity: 0.75;
  }
  100% {
    opacity: 0;
    transform: translate3d(650%, 0, 0) skewX(-14deg);
  }
}
.home-community {
  position: relative;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(15, 25, 35, 0.045) 1px, transparent 1px), #ECE8E1;
  background-size: 12.5% 100%;
  border-top: 1px solid rgba(15, 25, 35, 0.1);
}
.home-community::after {
  position: absolute;
  right: -7rem;
  bottom: -9rem;
  width: 20rem;
  height: 20rem;
  content: "";
  border: 1px solid rgba(255, 70, 85, 0.28);
  transform: rotate(45deg);
  pointer-events: none;
}

.home-community__inner {
  position: relative;
  z-index: 1;
  display: grid;
  align-items: center;
  gap: 2rem;
}

.home-community__signal {
  position: relative;
  display: grid;
  width: 7.5rem;
  aspect-ratio: 1;
  place-items: center;
  border: 1px solid rgba(15, 25, 35, 0.2);
  color: #FF4655;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  transform: rotate(45deg);
}
.home-community__signal span {
  transform: rotate(-45deg);
}
.home-community__signal i {
  position: absolute;
  width: 0.6rem;
  height: 0.6rem;
  background: currentColor;
  border-radius: 50%;
}
.home-community__signal i:nth-of-type(1) {
  top: 1.2rem;
  left: 1.2rem;
}
.home-community__signal i:nth-of-type(2) {
  right: 1.2rem;
  bottom: 1.2rem;
}
.home-community__signal i:nth-of-type(3) {
  right: 1.2rem;
  top: 1.2rem;
  opacity: 0.35;
}

.home-community__copy h2, .home-community__copy .h2 {
  margin: 0.25rem 0 1rem;
}
.home-community__copy > p:last-child {
  max-width: 46rem;
  margin: 0;
  color: #5A6672;
  line-height: 1.7;
}

.home-community__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

@media (min-width: 992px) {
  .home-community__inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: clamp(2rem, 4vw, 4rem);
  }
  .home-community__actions {
    max-width: 16rem;
    justify-content: flex-start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .home-text-link span,
  .home-card-stack::before,
  .home-card-stack__stage,
  .home-card-stack__card,
  .home-easter-egg,
  .home-easter-egg__card,
  .home-easter-egg__fragments span {
    transition: none;
  }
  .home-easter-egg__fragments {
    display: none;
  }
  .home-easter-egg__card,
  .home-easter-egg.is-active .home-easter-egg__card {
    opacity: 1;
    transform: none;
  }
  .home-easter-egg.is-active .home-easter-egg__shine {
    animation: none;
  }
}
.player-banner {
  position: relative;
  overflow: clip;
  background-size: cover;
  background-position: center;
  background-color: #0F1923;
  padding: clamp(1.25rem, 2.5vw, 2rem) 0;
}
.player-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15, 25, 35, 0.96) 0%, rgba(15, 25, 35, 0.88) 30%, rgba(15, 25, 35, 0.6) 62%, rgba(15, 25, 35, 0.5) 100%), linear-gradient(90deg, rgba(15, 25, 35, 0.55) 0%, rgba(15, 25, 35, 0.2) 45%, rgba(15, 25, 35, 0.3) 100%), linear-gradient(180deg, rgba(255, 70, 85, 0.06), transparent);
}
.player-banner .container {
  position: relative;
}
.player-banner__inner {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 2vw, 1.5rem);
  color: #ECE8E1;
}
.player-banner__overview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 32rem);
  align-items: start;
  gap: clamp(2rem, 5vw, 4.5rem);
}
.player-banner__aside {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: clamp(1.25rem, 2.5vw, 1.75rem);
}
.player-banner__overview--single {
  grid-template-columns: minmax(0, 1fr);
}
.player-banner__profile {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 1rem;
}
.player-banner__identity {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.player-banner__avatar {
  flex: 0 0 auto;
  width: 4.5rem;
  height: 4.5rem;
  object-fit: cover;
  border: 2px solid rgba(236, 232, 225, 0.25);
  clip-path: polygon(0 0, calc(100% - 0.75rem) 0, 100% 0.75rem, 100% 100%, 0 100%);
}
.player-banner__avatar--initial {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "League Gothic", sans-serif;
  font-size: 2.1rem;
  line-height: 1;
  text-transform: uppercase;
  color: #ECE8E1;
  background: hsl(var(--player-hue, 210), 42%, 38%);
  user-select: none;
}
.player-banner__naming {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-width: 0;
}
.player-banner__name {
  margin: 0;
  font-size: clamp(1.6rem, 3.2vw, 2.25rem);
  line-height: 1;
  color: #ECE8E1;
  overflow-wrap: anywhere;
}
.player-banner__intro {
  margin: 0;
  font-size: 0.82rem;
  color: rgba(236, 232, 225, 0.7);
}
.player-banner__bio {
  margin: 0;
  max-width: 42rem;
  font-size: 0.88rem;
  line-height: 1.55;
  color: rgba(236, 232, 225, 0.92);
}
.player-banner__bio-wrap.is-collapsible:not(.is-expanded) .player-banner__bio {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.player-banner__bio-toggle {
  min-height: 2.75rem;
  margin-top: 0.2rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #FF4655;
  font: inherit;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  cursor: pointer;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.player-banner__bio-toggle:hover {
  color: #ECE8E1;
}
.player-banner__bio-toggle:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: 0.25rem;
}
.player-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.player-banner__gift-button {
  min-height: 2.3rem;
  padding: 0.5rem 0.9rem;
  border: 1px solid #FF4655;
  background: #FF4655;
  color: #ECE8E1;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  cursor: pointer;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.player-banner__gift-button:hover {
  border-color: #ECE8E1;
  background: #ECE8E1;
  color: #0F1923;
}
.player-banner__gift-button:focus-visible {
  outline: 2px solid #ECE8E1;
  outline-offset: 3px;
}
.player-banner__background-button {
  min-height: 2.3rem;
  padding: 0.5rem 0.9rem;
  border: 1px solid rgba(236, 232, 225, 0.28);
  background: transparent;
  color: rgba(236, 232, 225, 0.85);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  cursor: pointer;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.player-banner__background-button:hover {
  border-color: #ECE8E1;
  background: rgba(236, 232, 225, 0.1);
}
.player-banner__background-button:focus-visible {
  outline: 2px solid #ECE8E1;
  outline-offset: 3px;
}
.player-banner__hierarchy {
  width: 100%;
  padding: 0.15rem 0 0.15rem 1rem;
  border-left: 2px solid #FF4655;
}
.player-banner__hierarchy-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}
.player-banner__hierarchy-current {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.15rem;
}
.player-banner__hierarchy-label {
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #FF4655;
}
.player-banner__hierarchy-title {
  font-size: clamp(1rem, 2vw, 1.2rem);
  line-height: 1.15;
  color: #ECE8E1;
  overflow-wrap: anywhere;
}
.player-banner__hierarchy-rank {
  flex: 0 0 auto;
  padding-top: 0.15rem;
  font-size: 0.72rem;
  color: rgba(236, 232, 225, 0.72);
  font-variant-numeric: tabular-nums;
}
.player-banner__hierarchy-progress {
  height: 0.35rem;
  margin-top: 0.35rem;
  border-radius: 0;
  background: rgba(236, 232, 225, 0.16);
}
.player-banner__hierarchy-progress .progress-bar {
  background-color: #FF4655;
}
.player-banner__hierarchy-progress-label {
  display: block;
  margin-top: 0.7rem;
  font-size: 0.72rem;
  color: rgba(236, 232, 225, 0.68);
}
.player-banner__hierarchy-progress-label strong {
  color: #ECE8E1;
}
.player-banner__hierarchy-meta {
  margin: 0.4rem 0 0;
  font-size: 0.68rem;
  color: rgba(236, 232, 225, 0.55);
}
.player-banner__hierarchy-path {
  margin-top: 0.75rem;
  padding-top: 0.65rem;
  border-top: 1px solid rgba(236, 232, 225, 0.08);
}
.player-banner__hierarchy-path-label {
  display: block;
  cursor: pointer;
  list-style: none;
}
.player-banner__hierarchy-path-label::-webkit-details-marker {
  display: none;
}
.player-banner__hierarchy-path-label::after {
  content: "▾";
  display: inline-block;
  margin-left: 0.35rem;
  transition: transform 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.player-banner__hierarchy-path-label:hover {
  color: rgba(236, 232, 225, 0.75);
}
.player-banner__hierarchy-path-label {
  margin-bottom: 0.4rem;
  font-size: 0.64rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: rgba(236, 232, 225, 0.45);
}
.player-banner__hierarchy-path[open] .player-banner__hierarchy-path-label::after {
  transform: rotate(180deg);
}
.player-banner__milestones {
  margin: 0.5rem 0 0;
  row-gap: 0.4rem;
}
.player-banner__milestone-item + .player-banner__milestone-item {
  position: relative;
  padding-left: 1.1rem;
}
.player-banner__milestone-item + .player-banner__milestone-item::before {
  content: "›";
  position: absolute;
  top: 50%;
  left: 0.35rem;
  transform: translateY(-50%);
  font-size: 0.8rem;
  line-height: 1;
  color: rgba(236, 232, 225, 0.3);
}
.player-banner__milestone {
  clip-path: polygon(0 0, calc(100% - 0.35rem) 0, 100% 0.35rem, 100% 100%, 0 100%);
  display: inline-block;
  padding: 0.2rem 0.5rem;
  background: rgba(236, 232, 225, 0.06);
  border: 1px solid rgba(236, 232, 225, 0.12);
  font-family: inherit;
  font-size: 0.7rem;
  line-height: 1.3;
  color: rgba(236, 232, 225, 0.72);
}
.player-banner__milestone--current {
  background: rgba(255, 70, 85, 0.14);
  border-color: rgba(255, 70, 85, 0.5);
  color: #ECE8E1;
}
.player-banner__milestone--older {
  background: none;
  border-style: dashed;
  color: rgba(236, 232, 225, 0.5);
  font-variant-numeric: tabular-nums;
  cursor: pointer;
  transition: color 150ms ease, border-color 150ms ease;
}
.player-banner__milestone--older:hover, .player-banner__milestone--older:focus-visible {
  border-color: rgba(255, 70, 85, 0.6);
  color: #ECE8E1;
}
.player-banner__milestone--older[aria-expanded=true] {
  border-style: solid;
  border-color: rgba(255, 70, 85, 0.5);
  color: #ECE8E1;
}
.player-banner__stats {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.55rem 1.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.player-banner__stat {
  display: flex;
  align-items: baseline;
  gap: 0.45rem;
  min-width: 0;
}
.player-banner__stat + .player-banner__stat {
  padding-left: 1.75rem;
  border-left: 1px solid rgba(236, 232, 225, 0.14);
}
.player-banner__stat-value {
  font-family: "League Gothic", sans-serif;
  font-size: 1.45rem;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #ECE8E1;
  font-variant-numeric: tabular-nums;
}
.player-banner__stat-label {
  font-size: 0.76rem;
  font-weight: 500;
  color: rgba(236, 232, 225, 0.62);
}

@media (max-width: 767.98px) {
  .player-banner__overview {
    grid-template-columns: minmax(0, 1fr);
  }
}
.radianite-gift-modal .modal-dialog {
  max-width: min(32rem, 100% - 2rem);
}
.radianite-gift-modal .modal-content {
  overflow: hidden;
  color: #ECE8E1;
  border: 1px solid rgba(236, 232, 225, 0.13);
  border-radius: 0;
  background: #111924;
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.42);
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
}
.radianite-gift-modal .modal-header,
.radianite-gift-modal .modal-body,
.radianite-gift-modal .modal-footer {
  padding: clamp(1.15rem, 3vw, 1.75rem);
}
.radianite-gift-modal .modal-header {
  align-items: flex-start;
  border-color: rgba(236, 232, 225, 0.09);
}
.radianite-gift-modal .modal-title {
  margin-top: 0.25rem;
  font-size: clamp(2rem, 7vw, 3rem);
  line-height: 1;
  text-transform: uppercase;
}
.radianite-gift-modal .modal-footer {
  gap: 0.65rem;
  border-color: rgba(236, 232, 225, 0.09);
}
.radianite-gift-modal__recipient {
  margin: 0.4rem 0 0;
  color: rgba(236, 232, 225, 0.68);
}
.radianite-gift-modal__balance {
  margin: 0 0 1.25rem;
  color: rgba(236, 232, 225, 0.72);
}
.radianite-gift-modal__balance strong {
  color: #ECE8E1;
  font-variant-numeric: tabular-nums;
}
.radianite-gift-modal__label {
  display: block;
  margin-bottom: 0.45rem;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.radianite-gift-modal__input {
  min-height: 3.25rem;
  border: 1px solid rgba(236, 232, 225, 0.2);
  border-radius: 0;
  background: rgba(236, 232, 225, 0.06);
  color: #ECE8E1;
  font-size: 1.2rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.radianite-gift-modal__input:focus {
  border-color: #FF4655;
  background: rgba(236, 232, 225, 0.09);
  color: #ECE8E1;
  box-shadow: 0 0 0 0.2rem rgba(255, 70, 85, 0.18);
}
.radianite-gift-modal__input:disabled {
  opacity: 0.55;
}
.radianite-gift-modal__notice {
  margin-top: 1.15rem;
  padding: 0.9rem 1rem;
  border-left: 3px solid #e3ad43;
  background: rgba(227, 173, 67, 0.08);
  color: rgba(236, 232, 225, 0.78);
  font-size: 0.86rem;
  line-height: 1.5;
}
.radianite-gift-modal__notice strong {
  display: block;
  color: #ECE8E1;
}
.radianite-gift-modal__status {
  margin: 1rem 0 0;
  padding: 0.8rem 0.9rem;
  border: 1px solid rgba(236, 232, 225, 0.15);
  color: rgba(236, 232, 225, 0.86);
  font-size: 0.88rem;
}
.radianite-gift-modal__status.is-error {
  border-color: rgba(255, 70, 85, 0.65);
  background: rgba(255, 70, 85, 0.1);
}
.radianite-gift-modal__status.is-success {
  border-color: rgba(85, 214, 168, 0.5);
  background: rgba(85, 214, 168, 0.08);
}
.radianite-gift-modal__cancel, .radianite-gift-modal__submit {
  min-height: 2.85rem;
  padding: 0.65rem 1rem;
  border: 1px solid rgba(236, 232, 225, 0.22);
  border-radius: 0;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.radianite-gift-modal__cancel {
  background: transparent;
  color: rgba(236, 232, 225, 0.78);
}
.radianite-gift-modal__submit {
  border-color: #FF4655;
  background: #FF4655;
  color: #ECE8E1;
}
.radianite-gift-modal__submit:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.player-path-modal .modal-dialog {
  max-width: min(34rem, 100% - 2rem);
}
.player-path-modal .modal-content {
  color: #ECE8E1;
  border: 1px solid rgba(236, 232, 225, 0.13);
  background: #111924;
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.42);
}
.player-path-modal .modal-header,
.player-path-modal .modal-body {
  padding: clamp(1.15rem, 3vw, 1.8rem);
}
.player-path-modal .modal-body {
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 70, 85, 0.55) rgba(255, 255, 255, 0.06);
}
.player-path-modal .modal-body::-webkit-scrollbar {
  width: 8px;
}
.player-path-modal .modal-body::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.06);
}
.player-path-modal .modal-body::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(255, 70, 85, 0.8), rgba(255, 70, 85, 0.45));
}
.player-path-modal .modal-body::-webkit-scrollbar-thumb:hover {
  background: #FF4655;
}
.player-path-modal .modal-header {
  align-items: flex-start;
  border-color: rgba(236, 232, 225, 0.09);
}
.player-path-modal .modal-title {
  margin-top: 0.2rem;
  font-size: clamp(1.8rem, 6vw, 2.6rem);
  line-height: 1;
  text-transform: uppercase;
}

.player-path-modal__list {
  margin: 0;
}

.player-path-modal__step {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 0.75rem;
  padding: 0.55rem 0;
  font-size: 0.9rem;
}
.player-path-modal__step + .player-path-modal__step {
  border-top: 1px solid rgba(236, 232, 225, 0.07);
}

.player-path-modal__rank {
  color: rgba(236, 232, 225, 0.35);
  font-variant-numeric: tabular-nums;
}

.player-path-modal__title {
  color: rgba(236, 232, 225, 0.85);
  overflow-wrap: anywhere;
}

.player-path-modal__threshold {
  font-size: 0.75rem;
  color: rgba(236, 232, 225, 0.4);
  white-space: nowrap;
}

.player-path-modal__step--current .player-path-modal__rank,
.player-path-modal__step--current .player-path-modal__title {
  color: #FF4655;
  font-weight: 600;
}

@media (max-width: 991.98px) {
  .player-banner__overview {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.75rem;
  }
  .player-banner__hierarchy {
    width: min(100%, 44rem);
    justify-self: start;
  }
}
@media (max-width: 575.98px) {
  .player-banner {
    padding: 2rem 0;
  }
  .player-banner__identity {
    align-items: flex-start;
    gap: 1rem;
  }
  .player-banner__avatar {
    width: 4.5rem;
    height: 4.5rem;
  }
  .player-banner__avatar--initial {
    font-size: 2.25rem;
  }
  .player-banner__stats {
    gap: 0.35rem 1.1rem;
  }
  .player-banner__hierarchy {
    padding: 1rem;
  }
  .player-banner__hierarchy-heading {
    gap: 0.75rem;
  }
  .player-banner__stat-value {
    font-size: 1.7rem;
  }
  .player-banner__stat + .player-banner__stat {
    padding-left: 0;
    border-left: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .player-banner__bio-toggle {
    transition: none;
  }
}
.player-sections-nav {
  position: sticky;
  top: var(--header-height, 64px);
  z-index: 1020;
  background: #0F1923;
  border-top: 1px solid rgba(236, 232, 225, 0.08);
  border-bottom: 1px solid rgba(236, 232, 225, 0.16);
}
.player-sections-nav__inner {
  display: flex;
  align-items: stretch;
  min-height: 3.5rem;
}
.player-sections-nav__link {
  position: relative;
  display: inline-flex;
  min-height: 3.5rem;
  align-items: center;
  justify-content: center;
  padding: 0 1.25rem;
  color: rgba(236, 232, 225, 0.68);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-decoration: none;
  text-transform: uppercase;
  touch-action: manipulation;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.player-sections-nav__link::after {
  content: "";
  position: absolute;
  right: 1.25rem;
  bottom: -1px;
  left: 1.25rem;
  height: 3px;
  background: #FF4655;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.player-sections-nav__link:hover {
  color: #ECE8E1;
  background: rgba(236, 232, 225, 0.05);
}
.player-sections-nav__link:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: -4px;
  color: #ECE8E1;
}
.player-sections-nav__link.is-active, .player-sections-nav__link[aria-selected=true], .player-sections-nav__link[aria-current=location] {
  color: #ECE8E1;
  background: rgba(236, 232, 225, 0.04);
}
.player-sections-nav__link.is-active::after, .player-sections-nav__link[aria-selected=true]::after, .player-sections-nav__link[aria-current=location]::after {
  transform: scaleX(1);
}
.player-sections-nav__link--disabled {
  color: rgba(236, 232, 225, 0.35);
  cursor: default;
  user-select: none;
}
.player-sections-nav__link--disabled::after {
  display: none;
}
.player-sections-nav__link--disabled:hover {
  color: rgba(236, 232, 225, 0.35);
  background: transparent;
}

.admin-bar .player-sections-nav {
  top: calc(var(--header-height, 64px) + 32px);
}

#trophees,
#collection,
#statistiques {
  scroll-margin-top: calc(var(--header-height, 64px) + 4.5rem);
}

.player-tab-panel[hidden] {
  display: none !important;
}

.player-tab-panel:not([hidden]) {
  animation: player-tab-panel-in 200ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
}

.player-sections-nav.is-tabs-ready ~ .player-statistics {
  min-height: clamp(18rem, 42vh, 32rem);
}
.player-sections-nav.is-tabs-ready ~ .player-statistics:focus-visible {
  outline: 0;
  box-shadow: inset 3px 0 0 rgba(255, 70, 85, 0.75);
}

@keyframes player-tab-panel-in {
  from {
    opacity: 0;
    transform: translateY(0.35rem);
  }
}
@media (max-width: 782px) {
  .admin-bar .player-sections-nav {
    top: calc(var(--header-height, 64px) + 46px);
  }
}
@media (max-width: 600px) {
  .admin-bar .player-sections-nav {
    top: var(--header-height, 64px);
  }
}
@media (max-width: 575.98px) {
  .player-sections-nav__link {
    flex: 1 1 0;
    min-width: 0;
    padding-inline: 0.5rem;
    font-size: 0.7rem;
    letter-spacing: 0.08em;
  }
  .player-sections-nav__link::after {
    right: 0.5rem;
    left: 0.5rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .player-sections-nav__link,
  .player-sections-nav__link::after,
  .player-tab-panel:not([hidden]) {
    animation: none;
    transition: none;
  }
}
.player-statistics {
  padding-block: clamp(2.75rem, 6vw, 4.75rem);
  color: #ECE8E1;
  background: linear-gradient(115deg, rgba(255, 70, 85, 0.07), transparent 30rem), repeating-linear-gradient(135deg, transparent 0 6rem, rgba(236, 232, 225, 0.012) 6rem 6.05rem), #0F1923;
  border-bottom: 1px solid rgba(236, 232, 225, 0.08);
  overflow: clip;
}

.catch-stats {
  --stats-ink: #ECE8E1;
  --stats-muted: rgba(236, 232, 225, 0.66);
  --stats-dim: rgba(236, 232, 225, 0.58);
  --stats-line: rgba(236, 232, 225, 0.13);
  --stats-panel: rgba(236, 232, 225, 0.045);
  --stats-panel-strong: rgba(236, 232, 225, 0.075);
  --stats-accent: #FF4655;
  position: relative;
  isolation: isolate;
  padding: clamp(1.5rem, 4vw, 3.5rem);
  overflow: hidden;
  color: var(--stats-ink);
  background: linear-gradient(115deg, rgba(255, 70, 85, 0.09), transparent 32rem), linear-gradient(rgba(236, 232, 225, 0.018) 1px, transparent 1px), linear-gradient(90deg, rgba(236, 232, 225, 0.018) 1px, transparent 1px), #0F1923;
  background-size: auto, 4rem 4rem, 4rem 4rem, auto;
  clip-path: polygon(0 0, calc(100% - 2rem) 0, 100% 2rem, 100% 100%, 0 100%);
}
.catch-stats::before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  width: clamp(8rem, 20vw, 18rem);
  height: 3px;
  background: #FF4655;
  content: "";
}
.catch-stats::after {
  position: absolute;
  z-index: -1;
  right: clamp(1.25rem, 4vw, 3.5rem);
  bottom: 0;
  width: 5rem;
  height: 5rem;
  border-right: 1px solid rgba(255, 70, 85, 0.3);
  border-bottom: 1px solid rgba(255, 70, 85, 0.3);
  content: "";
}
.catch-stats__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 25rem);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: end;
  padding-bottom: clamp(2rem, 4vw, 3.25rem);
  border-bottom: 1px solid var(--stats-line);
}
.catch-stats__heading {
  padding-left: clamp(1rem, 2vw, 1.5rem);
  border-left: 3px solid var(--stats-accent);
}
.catch-stats__heading h2, .catch-stats__heading .h2 {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(3.5rem, 8vw, 7rem);
  font-weight: 400;
  line-height: 0.86;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.catch-stats__eyebrow, .catch-stats__empty-kicker {
  margin: 0 0 0.65rem;
  color: var(--stats-accent);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.catch-stats__intro {
  max-width: 38rem;
  margin: 1rem 0 0;
  color: var(--stats-muted);
  font-size: clamp(1rem, 1.6vw, 1.15rem);
  line-height: 1.55;
}
.catch-stats__scope {
  max-width: 24rem;
  margin: 0;
  color: var(--stats-dim);
  font-size: 0.8rem;
  line-height: 1.5;
}
.catch-stats__scope span {
  display: block;
  margin-bottom: 0.4rem;
  color: var(--stats-ink);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.catch-stats__empty {
  min-height: clamp(16rem, 35vh, 25rem);
  display: grid;
  align-content: center;
  padding: clamp(2rem, 6vw, 5rem) 0;
}
.catch-stats__empty h3, .catch-stats__empty .h3 {
  max-width: 38rem;
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2.25rem, 5vw, 4.5rem);
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
}
.catch-stats__empty > p:last-child {
  max-width: 38rem;
  margin: 1rem 0 0;
  color: var(--stats-muted);
}
.catch-stats__section {
  padding-top: clamp(2.75rem, 6vw, 5rem);
}
.catch-stats__section + .catch-stats__section {
  margin-top: clamp(2.75rem, 6vw, 5rem);
  border-top: 1px solid var(--stats-line);
}
.catch-stats__section-heading {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
  margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
}
.catch-stats__section-heading h3, .catch-stats__section-heading .h3 {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2rem, 4vw, 3.25rem);
  font-weight: 400;
  line-height: 0.95;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}
.catch-stats__section-heading div > p {
  margin: 0.45rem 0 0;
  color: var(--stats-muted);
  font-size: 0.9rem;
}
.catch-stats__index {
  min-width: 2rem;
  margin: 0.1rem 0 0;
  color: var(--stats-accent);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.catch-stats__overview-grid {
  display: grid;
  grid-template-columns: minmax(18rem, 0.85fr) minmax(0, 1.5fr);
  gap: 1px;
  background: var(--stats-line);
  border: 1px solid var(--stats-line);
}
.catch-stats__diversity {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: clamp(1.25rem, 3vw, 2.25rem);
  align-items: center;
  padding: clamp(1.5rem, 4vw, 2.75rem);
  background: var(--stats-panel-strong);
}
.catch-stats__ring {
  position: relative;
  display: grid;
  width: clamp(7rem, 12vw, 9.5rem);
  aspect-ratio: 1;
  place-items: center;
  background: conic-gradient(var(--stats-accent) var(--stat-progress), rgba(236, 232, 225, 0.09) 0);
  border-radius: 50%;
}
.catch-stats__ring::before {
  position: absolute;
  width: calc(100% - 0.8rem);
  aspect-ratio: 1;
  border: 1px solid var(--stats-line);
  border-radius: inherit;
  background: #0F1923;
  content: "";
}
.catch-stats__ring > span {
  position: relative;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2.25rem, 5vw, 4rem);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.catch-stats__ring > span small, .catch-stats__ring > span .small {
  color: var(--stats-accent);
  font-family: "Barlow", sans-serif;
  font-size: 0.3em;
  font-weight: 700;
}
.catch-stats__metric-label {
  margin: 0;
  color: var(--stats-ink);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.catch-stats__metric-copy {
  max-width: 19rem;
  margin: 0.6rem 0 0;
  color: var(--stats-muted);
  font-size: 0.85rem;
  line-height: 1.5;
}
.catch-stats__quick-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: var(--stats-line);
}
.catch-stats__quick-stat {
  min-height: 8rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(1.25rem, 3vw, 2rem);
  background: #0F1923;
}
.catch-stats__metric-value {
  margin: 0 0 0.35rem;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2.25rem, 5vw, 4rem);
  line-height: 0.9;
  font-variant-numeric: tabular-nums;
}
.catch-stats__metric-value small, .catch-stats__metric-value .small {
  margin-left: 0.15em;
  color: var(--stats-accent);
  font-family: "Barlow", sans-serif;
  font-size: 0.28em;
  font-weight: 700;
}
.catch-stats__split-grid, .catch-stats__activity-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
}
.catch-stats__activity-grid {
  grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr);
}
.catch-stats__panel {
  min-width: 0;
  padding: clamp(1.25rem, 3vw, 2rem);
  background: linear-gradient(135deg, rgba(236, 232, 225, 0.035), transparent 52%), var(--stats-panel);
  border: 1px solid var(--stats-line);
}
.catch-stats__panel-heading {
  display: flex;
  gap: 1rem;
  align-items: baseline;
  justify-content: space-between;
  padding-bottom: 1rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid var(--stats-line);
}
.catch-stats__panel-heading h4, .catch-stats__panel-heading .h4 {
  margin: 0;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}
.catch-stats__panel-heading p {
  margin: 0;
  color: var(--stats-dim);
  font-size: 0.72rem;
  text-align: right;
}
.catch-stats__bars, .catch-stats__sources {
  display: grid;
  gap: 1.25rem;
}
.catch-stats__bar-row {
  --bar-color: #FF4655;
}
.catch-stats__bar-row--standard {
  --bar-color: rgba(236, 232, 225, 0.72);
}
.catch-stats__bar-row--charged {
  --bar-color: rgb(97.3921568627%, 49.6862745098%, 52.5490196078%);
}
.catch-stats__bar-row--overcharged {
  --bar-color: #FF4655;
}
.catch-stats__bar-row--sublimated {
  --bar-color: rgb(73.6470588235%, 22.5098039216%, 27.8431372549%);
}
.catch-stats__bar-row--radiant {
  --bar-color: #ECE8E1;
}
.catch-stats__bar-meta, .catch-stats__source-line {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.55rem;
  font-size: 0.8rem;
}
.catch-stats__bar-meta > span:first-child, .catch-stats__source-line > span:first-child {
  color: var(--stats-ink);
  font-weight: 600;
}
.catch-stats__bar-meta > span:last-child,
.catch-stats__bar-meta small,
.catch-stats__bar-meta .small, .catch-stats__source-line > span:last-child,
.catch-stats__source-line small,
.catch-stats__source-line .small {
  color: var(--stats-muted);
  font-size: 0.72rem;
  font-weight: 400;
  text-align: right;
}
.catch-stats__bar-meta strong, .catch-stats__source-line strong {
  color: var(--stats-ink);
  font-variant-numeric: tabular-nums;
}
.catch-stats__bar, .catch-stats__capture-meter {
  height: 0.35rem;
  overflow: hidden;
  background: rgba(236, 232, 225, 0.09);
}
.catch-stats__bar > span, .catch-stats__capture-meter > span {
  display: block;
  width: var(--stat-size);
  height: 100%;
  background: var(--bar-color, var(--stats-accent));
  transform-origin: left;
}
.catch-stats__quality-chart, .catch-stats__timeline {
  min-height: 14rem;
  display: grid;
  grid-template-columns: repeat(5, minmax(2rem, 1fr));
  gap: clamp(0.55rem, 2vw, 1.25rem);
  align-items: end;
  padding-top: 1rem;
  border-bottom: 1px solid var(--stats-line);
}
.catch-stats__quality-column, .catch-stats__timeline-month {
  height: 12rem;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 0.55rem;
  min-width: 0;
  text-align: center;
}
.catch-stats__quality-count, .catch-stats__timeline-count {
  color: var(--stats-muted);
  font-size: 0.75rem;
  font-variant-numeric: tabular-nums;
}
.catch-stats__quality-track, .catch-stats__timeline-track {
  position: relative;
  display: block;
  background: rgba(236, 232, 225, 0.045);
}
.catch-stats__quality-track > span, .catch-stats__timeline-track > span {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: max(2px, var(--stat-size));
  background: linear-gradient(180deg, #FF4655, rgba(255, 70, 85, 0.45));
  transform-origin: bottom;
}
.catch-stats__quality-stars, .catch-stats__timeline-label {
  color: var(--stats-ink);
  font-size: 0.72rem;
  font-weight: 700;
  white-space: nowrap;
}
.catch-stats__mini-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: 1.5rem;
  background: var(--stats-line);
}
.catch-stats__mini-grid > div {
  display: grid;
  gap: 0.35rem;
  padding: 1rem;
  background: #0F1923;
}
.catch-stats__mini-grid strong {
  font-family: "League Gothic", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.catch-stats__mini-grid strong small, .catch-stats__mini-grid strong .small {
  color: var(--stats-accent);
  font-family: "Barlow", sans-serif;
  font-size: 0.35em;
  font-weight: 700;
}
.catch-stats__mini-grid span {
  color: var(--stats-muted);
  font-size: 0.67rem;
  line-height: 1.35;
}
.catch-stats__capture-score {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin: clamp(2rem, 5vw, 4rem) 0 1rem;
}
.catch-stats__capture-score p {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(4rem, 9vw, 7rem);
  line-height: 0.75;
  font-variant-numeric: tabular-nums;
}
.catch-stats__capture-score small, .catch-stats__capture-score .small {
  color: var(--stats-accent);
  font-family: "Barlow", sans-serif;
  font-size: 0.25em;
  font-weight: 700;
}
.catch-stats__capture-score > span {
  color: var(--stats-muted);
  font-size: 0.75rem;
}
.catch-stats__capture-meter {
  --bar-color: #FF4655;
  height: 0.5rem;
}
.catch-stats__capture-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 1.5rem 0 0;
  background: var(--stats-line);
}
.catch-stats__capture-list > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 0.9rem 1rem;
  background: #0F1923;
}
.catch-stats__capture-list dt {
  color: var(--stats-muted);
  font-size: 0.72rem;
  font-weight: 400;
}
.catch-stats__capture-list dd {
  margin: 0;
  color: var(--stats-ink);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.catch-stats__panel-empty {
  min-height: 13rem;
  display: grid;
  place-items: center;
  margin: 0;
  color: var(--stats-muted);
  font-size: 0.85rem;
  line-height: 1.5;
  text-align: center;
}
.catch-stats__timeline {
  grid-template-columns: repeat(6, minmax(2rem, 1fr));
}
.catch-stats__timeline-track > span {
  background: linear-gradient(180deg, #ECE8E1, rgba(255, 70, 85, 0.75));
}
.catch-stats__sources {
  align-content: start;
}
.catch-stats__source-line {
  margin-bottom: 0.5rem;
}
.catch-stats__records {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--stats-line);
  border: 1px solid var(--stats-line);
}
.catch-stats__record {
  position: relative;
  min-height: 12rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(1.25rem, 3vw, 2rem);
  overflow: hidden;
  background: #0F1923;
}
.catch-stats__record::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 2.75rem;
  height: 2.75rem;
  border-top: 1px solid rgba(236, 232, 225, 0.12);
  border-right: 1px solid rgba(236, 232, 225, 0.12);
  content: "";
}
.catch-stats__record--accent {
  background: linear-gradient(145deg, rgba(255, 70, 85, 0.18), #0F1923 70%);
}
.catch-stats__record--accent::after {
  border-color: #FF4655;
}
.catch-stats__record--wide {
  grid-column: span 3;
  min-height: 9rem;
}
.catch-stats__record h4, .catch-stats__record .h4 {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2rem, 4vw, 3.25rem);
  font-weight: 400;
  line-height: 1;
  overflow-wrap: anywhere;
  text-transform: uppercase;
}
.catch-stats__record > p:last-child {
  margin: 0.75rem 0 0;
  color: var(--stats-muted);
  font-size: 0.78rem;
  line-height: 1.45;
}
.catch-stats__record-code {
  margin: 0 0 auto;
  color: var(--stats-accent);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

@media (max-width: 991.98px) {
  .catch-stats__header, .catch-stats__overview-grid, .catch-stats__activity-grid {
    grid-template-columns: 1fr;
  }
  .catch-stats__scope {
    max-width: 38rem;
  }
  .catch-stats__records {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .catch-stats__record--wide {
    grid-column: span 2;
  }
}
@media (max-width: 767.98px) {
  .catch-stats {
    clip-path: polygon(0 0, calc(100% - 1.25rem) 0, 100% 1.25rem, 100% 100%, 0 100%);
  }
  .catch-stats__split-grid {
    grid-template-columns: 1fr;
  }
  .catch-stats__diversity {
    grid-template-columns: 1fr;
  }
  .catch-stats__records {
    grid-template-columns: 1fr;
  }
  .catch-stats__record--wide {
    grid-column: auto;
  }
}
@media (max-width: 575.98px) {
  .catch-stats__quick-grid, .catch-stats__capture-list {
    grid-template-columns: 1fr;
  }
  .catch-stats__quick-stat {
    min-height: 6.5rem;
  }
  .catch-stats__panel-heading, .catch-stats__bar-meta, .catch-stats__source-line {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.35rem;
  }
  .catch-stats__panel-heading > span:last-child,
  .catch-stats__panel-heading > p,
  .catch-stats__panel-heading small,
  .catch-stats__panel-heading .small, .catch-stats__bar-meta > span:last-child,
  .catch-stats__bar-meta > p,
  .catch-stats__bar-meta small,
  .catch-stats__bar-meta .small, .catch-stats__source-line > span:last-child,
  .catch-stats__source-line > p,
  .catch-stats__source-line small,
  .catch-stats__source-line .small {
    text-align: left;
  }
  .catch-stats__quality-chart, .catch-stats__timeline {
    gap: 0.35rem;
  }
  .catch-stats__mini-grid {
    grid-template-columns: 1fr;
  }
  .catch-stats__capture-score {
    align-items: flex-start;
    flex-direction: column;
    gap: 1rem;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .player-statistics:not([hidden]) .catch-stats__ring {
    animation: catch-stats-ring-in 700ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
  }
  .player-statistics:not([hidden]) .catch-stats__bar > span,
  .player-statistics:not([hidden]) .catch-stats__capture-meter > span {
    animation: catch-stats-bar-in 700ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
  }
  .player-statistics:not([hidden]) .catch-stats__quality-track > span,
  .player-statistics:not([hidden]) .catch-stats__timeline-track > span {
    animation: catch-stats-column-in 700ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
  }
}
@keyframes catch-stats-ring-in {
  from {
    opacity: 0.35;
    transform: scale(0.96);
  }
}
@keyframes catch-stats-bar-in {
  from {
    opacity: 0;
    transform: scaleX(0);
  }
}
@keyframes catch-stats-column-in {
  from {
    opacity: 0;
    transform: scaleY(0);
  }
}
@media screen and (hover: none) and (pointer: coarse) and (max-device-width: 575.98px), screen and (hover: none) and (pointer: coarse) and (max-device-height: 575.98px) {
  .catch-collection [data-collection-results] .c-card-slot--grid {
    content-visibility: visible;
    contain-intrinsic-size: none;
  }
}
.catch-collection {
  --collection-dark: #0F1923;
  --collection-dark-soft: #0F1923;
  --collection-red: #FF4655;
  --collection-bg: #ECE8E1;
  --collection-border: rgba(15, 25, 35, 0.16);
  --collection-muted: #5A6672;
  --collection-surface: #ECE8E1;
  position: relative;
  padding-top: clamp(2.75rem, 6vw, 4.75rem);
  padding-bottom: clamp(3.5rem, 7vw, 6rem);
}
.catch-collection__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(12rem, 18rem);
  align-items: end;
  gap: 1.5rem clamp(2rem, 6vw, 5rem);
  padding: 0 0 clamp(1.25rem, 3vw, 1.75rem) 1rem;
  margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
  border-bottom: 1px solid var(--collection-border);
  border-left: 3px solid var(--collection-red);
}
.catch-collection__header h2, .catch-collection__header .h2 {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2.5rem, 5vw, 3.75rem);
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 0.9;
  text-transform: uppercase;
}
.catch-collection__heading {
  min-width: 0;
}
.catch-collection__eyebrow {
  margin: 0 0 0.25rem;
  color: var(--collection-red);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.catch-collection__summary {
  display: grid;
  gap: 0.55rem;
  min-width: 0;
}
.catch-collection__header-side {
  display: grid;
  gap: 0.9rem;
  min-width: 0;
}
.catch-collection__manage-toggle {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  width: 100%;
  padding: 0.65rem 0.85rem;
  border: 1px solid var(--collection-dark);
  border-radius: 0;
  background: transparent;
  color: var(--collection-dark);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.catch-collection__manage-toggle:hover:not(:disabled), .catch-collection__manage-toggle:focus-visible, .catch-collection__manage-toggle.is-active {
  border-color: var(--collection-red);
  color: var(--collection-red);
}
.catch-collection__manage-toggle:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection__manage-toggle:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.catch-collection__manage-toggle-icon {
  width: 0.65rem;
  height: 0.65rem;
  flex: 0 0 0.65rem;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-0.15rem) rotate(45deg);
  transition: transform 180ms ease;
}
.catch-collection__manage-toggle.is-active .catch-collection__manage-toggle-icon {
  transform: translateY(0.15rem) rotate(225deg);
}
.catch-collection__progress-info {
  display: grid;
  gap: 0.55rem;
  color: var(--collection-muted);
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
}
.catch-collection__count {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 0.4rem;
  margin: 0;
}
.catch-collection__count strong {
  font-family: "League Gothic", sans-serif;
  color: var(--collection-dark);
  font-size: 2rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.03em;
}
.catch-collection__percent {
  margin-left: 0.3rem;
  color: var(--collection-dark);
  font-weight: 800;
}
.catch-collection__progress {
  width: 100%;
  height: 0.35rem;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: rgba(15, 25, 35, 0.13);
  appearance: none;
}
.catch-collection__progress::-webkit-progress-bar {
  background: rgba(15, 25, 35, 0.13);
}
.catch-collection__progress::-webkit-progress-value {
  background: var(--collection-red);
}
.catch-collection__progress::-moz-progress-bar {
  background: var(--collection-red);
}
.catch-collection__controls {
  position: relative;
  margin-bottom: clamp(2.5rem, 5vw, 4rem);
  padding: 1.25rem;
  border: 1px solid var(--collection-border);
  background: linear-gradient(115deg, rgba(255, 70, 85, 0.035), transparent 24rem), rgba(15, 25, 35, 0.025);
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
}
.catch-collection__controls::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 4rem;
  height: 3px;
  background: var(--collection-red);
}
.catch-collection__filter-shell {
  margin-bottom: 0;
}
.catch-collection__filter-toolbar {
  display: flex;
  align-items: flex-end;
  gap: 1rem;
}
.catch-collection__filters-toggle {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  min-width: 135px;
  min-height: 48px;
  padding: 0.7rem 1.1rem;
  border: 1px solid var(--collection-dark);
  border-radius: 0;
  background: var(--collection-dark);
  color: #ECE8E1;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-collection__filters-toggle::after {
  content: "+";
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1;
}
.catch-collection__filters-toggle:hover {
  border-color: var(--collection-red);
  background: var(--collection-red);
  color: #ECE8E1;
}
.catch-collection__filters-toggle[aria-expanded=true] {
  border-color: var(--collection-red);
}
.catch-collection__filters-toggle[aria-expanded=true]::after {
  content: "−";
}
.catch-collection__filters-toggle.is-active {
  border-color: var(--collection-red);
}
.catch-collection__filters-toggle:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 3px;
}
.catch-collection__filters-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 0.4rem;
  border-radius: 999px;
  background: var(--collection-red);
  color: #ECE8E1;
  font-size: 0.7rem;
  font-weight: 800;
}
.catch-collection__filters-count[hidden] {
  display: none !important;
}
.catch-collection__active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1rem;
}
.catch-collection__active-filters[hidden] {
  display: none !important;
}
.catch-collection__active-filter {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  padding: 0.45rem 0.75rem;
  border: 1px solid var(--collection-border);
  border-radius: 0;
  background: var(--collection-surface);
  color: var(--collection-dark);
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-collection__active-filter:hover {
  border-color: var(--collection-red);
  background: rgba(255, 70, 85, 0.06);
  color: var(--collection-red);
}
.catch-collection__active-filter:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection__active-filter-close {
  color: var(--collection-red);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}
.catch-collection__filters {
  position: relative;
  margin: 1.25rem 0 0;
  padding: 1.5rem;
  border: 1px solid var(--collection-border);
  background: var(--collection-surface);
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
}
.catch-collection__filters[hidden] {
  display: none !important;
}
.catch-collection__filter-group {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
}
.catch-collection__filter-group[hidden] {
  display: none !important;
}
.catch-collection__filter-group + .catch-collection__filter-group {
  margin-top: 1.25rem !important;
  padding-top: 1.25rem;
  border-top: 1px solid var(--collection-border);
}
.catch-collection__filter-label {
  color: var(--collection-dark);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.catch-collection__quality-options {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.catch-collection__quality-option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.75rem;
  touch-action: manipulation;
}
.catch-collection__quality-stars {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.1rem;
  color: #c69727;
}
.catch-collection__quality-stars svg {
  display: block;
  flex: 0 0 auto;
  width: 0.72rem;
  height: 0.72rem;
  fill: currentColor;
}
.catch-collection__quality-option.active .catch-collection__quality-stars, .catch-collection__quality-option[aria-pressed=true] .catch-collection__quality-stars {
  color: #ECE8E1;
}
.catch-collection [data-filter-key] {
  position: relative;
  min-height: 2.75rem;
  padding: 0.55rem 0.9rem;
  border: 1px solid transparent;
  border-radius: 0;
  background: rgba(15, 25, 35, 0.055);
  color: var(--collection-dark);
  font-size: 0.85rem;
  font-weight: 600;
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-collection [data-filter-key]:hover {
  border-color: rgba(15, 25, 35, 0.24);
  background: rgba(15, 25, 35, 0.1);
  color: var(--collection-dark);
}
.catch-collection [data-filter-key].active, .catch-collection [data-filter-key][aria-pressed=true] {
  border-color: var(--collection-red);
  background: var(--collection-red);
  color: #ECE8E1;
}
.catch-collection [data-filter-key].active::after, .catch-collection [data-filter-key][aria-pressed=true]::after {
  content: "";
  position: absolute;
  right: 8px;
  bottom: -5px;
  width: 8px;
  height: 8px;
  background: var(--collection-red);
  transform: rotate(45deg);
}
.catch-collection [data-filter-key]:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection [data-per-page] {
  width: auto;
  min-width: 150px;
  max-width: 200px;
  border-radius: 0;
  border-color: var(--collection-border);
  min-height: 2.75rem;
}
.catch-collection [data-per-page]:focus {
  border-color: var(--collection-red);
  box-shadow: 0 0 0 0.15rem rgba(255, 70, 85, 0.15);
}
.catch-collection [data-collection-results] {
  min-height: 300px;
  padding-top: 0.5rem;
  transition: opacity 200ms cubic-bezier(0.2, 0.6, 0.2, 1), filter 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-collection [data-collection-results] > .col-12.mt-4.mb-3 {
  margin-top: 2.5rem !important;
  margin-bottom: 1.25rem !important;
}
.catch-collection [data-collection-results] > .col-12.mt-4.mb-3 h3, .catch-collection [data-collection-results] > .col-12.mt-4.mb-3 .h3 {
  font-family: "League Gothic", sans-serif;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.catch-collection [data-collection-results] > .col-12.mt-4.mb-3 .border-top {
  border-color: var(--collection-border) !important;
}
.catch-collection__empty {
  margin: 3rem 0;
  padding: 3rem 1rem;
  border: 1px dashed var(--collection-border);
  color: var(--collection-muted);
  text-align: center;
}
.catch-collection__pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
}
.catch-collection__pagination .btn {
  min-width: 44px;
  min-height: 44px;
  border-radius: 0;
  border-color: var(--collection-border);
  background: var(--collection-surface);
  color: var(--collection-dark);
}
.catch-collection__pagination .btn:hover:not(:disabled) {
  border-color: var(--collection-dark);
  background: var(--collection-dark);
  color: #ECE8E1;
}
.catch-collection__pagination .btn.active {
  border-color: var(--collection-red);
  background: var(--collection-red);
  color: #ECE8E1;
}
.catch-collection__pagination .btn:disabled {
  opacity: 0.35;
}
.catch-collection__pagination-dots {
  padding: 0 0.3rem;
  color: var(--collection-muted);
}
.catch-collection__search {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  max-width: none;
  flex-direction: column;
  gap: 0.4rem;
}
.catch-collection__search [data-collection-search] {
  width: 100%;
  min-height: 48px;
  border-radius: 0;
  border-color: var(--collection-border);
  background: var(--collection-surface);
  color: var(--collection-dark);
}
.catch-collection__search [data-collection-search]:focus {
  border-color: var(--collection-red);
  box-shadow: 0 0 0 0.15rem rgba(255, 70, 85, 0.15);
}
.catch-collection__search [data-collection-search]::placeholder {
  color: var(--collection-muted);
}
.catch-collection__search-label {
  color: var(--collection-muted);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.catch-collection__filters-actions {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 1rem;
}
.catch-collection__reset {
  min-height: 2.75rem;
  padding: 0.25rem 0;
  border: 0;
  background: transparent;
  color: var(--collection-muted);
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.catch-collection__reset:hover {
  color: var(--collection-red);
}
.catch-collection__reset:disabled {
  opacity: 0.35;
  cursor: default;
  text-decoration: none;
}
.catch-collection__reset:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection.is-loading [data-collection-results] {
  opacity: 0.3;
  filter: grayscale(0.4);
  pointer-events: none;
}
.catch-collection.is-loading::after {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 100;
  width: 38px;
  height: 38px;
  margin-top: -19px;
  margin-left: -19px;
  border: 3px solid rgba(15, 25, 35, 0.15);
  border-top-color: var(--collection-red);
  border-radius: 50%;
  animation: catch-collection-spin 700ms linear infinite;
}

.catch-collection-bulk {
  margin: 0 0 1.5rem;
  border: 1px solid var(--collection-border);
  background: var(--collection-surface);
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
}
.catch-collection-bulk[hidden] {
  display: none !important;
}
.catch-collection-bulk__header {
  padding: 1rem 1.25rem;
}
.catch-collection-bulk__eyebrow, .catch-collection-bulk-dialog__eyebrow {
  margin: 0 0 0.2rem;
  color: var(--collection-red);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.catch-collection-bulk__copy {
  margin: 0;
  color: var(--collection-muted);
  font-size: 0.9rem;
}
.catch-collection-bulk__copy strong {
  color: var(--collection-dark);
}
.catch-collection-bulk__title {
  margin: 0 0 0.2rem;
  color: var(--collection-dark);
  font-family: "League Gothic", sans-serif;
  font-size: clamp(1.65rem, 3vw, 2.15rem);
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1;
  text-transform: uppercase;
}
.catch-collection-bulk__safety-note {
  margin: 0.7rem 0 0;
  padding: 0.55rem 0.7rem;
  border-left: 3px solid var(--collection-dark);
  background: rgba(15, 25, 35, 0.06);
  color: var(--collection-dark);
  font-size: 0.8rem;
  line-height: 1.4;
}
.catch-collection-bulk__selection-shortcuts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
  margin-top: 1rem;
}
.catch-collection-bulk__selection-shortcut {
  display: flex;
  min-height: 68px;
  flex-direction: column;
  justify-content: center;
  gap: 0.2rem;
  padding: 0.7rem 0.85rem;
  border: 1px solid var(--collection-border);
  border-radius: 0;
  background: var(--collection-surface);
  color: var(--collection-dark);
  text-align: left;
}
.catch-collection-bulk__selection-shortcut strong {
  font-size: 0.82rem;
  text-transform: uppercase;
}
.catch-collection-bulk__selection-shortcut span {
  color: var(--collection-muted);
  font-size: 0.74rem;
  line-height: 1.35;
}
.catch-collection-bulk__selection-shortcut:hover:not(:disabled), .catch-collection-bulk__selection-shortcut:focus-visible {
  border-color: var(--collection-red);
}
.catch-collection-bulk__selection-shortcut:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection-bulk__selection-shortcut--duplicates {
  border-color: var(--collection-dark);
  background: var(--collection-dark);
  color: #ECE8E1;
}
.catch-collection-bulk__selection-shortcut--duplicates span {
  color: rgba(236, 232, 225, 0.75);
}
.catch-collection-bulk__selection-shortcut--duplicates:hover:not(:disabled), .catch-collection-bulk__selection-shortcut--duplicates:focus-visible {
  background: var(--collection-red);
}
.catch-collection-bulk__selection-shortcut:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.catch-collection-bulk__next-action {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.75rem;
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--collection-border);
  color: var(--collection-muted);
  font-size: 0.78rem;
  line-height: 1.45;
}
.catch-collection-bulk__next-action strong {
  color: var(--collection-dark);
  text-transform: uppercase;
}
.catch-collection-bulk__status {
  min-height: 1.3rem;
  margin: 0;
  padding: 0 1.25rem 1rem;
  color: var(--collection-muted);
  font-size: 0.8rem;
}
.catch-collection-bulk__status:empty {
  display: none;
}
.catch-collection-bulk__status.is-error {
  color: #b42332;
  font-weight: 700;
}

.catch-collection-card {
  position: relative;
}
.catch-collection-card__management {
  position: relative;
  z-index: 5;
  display: none;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.5rem;
  width: min(100%, 260px);
  margin: 0.75rem auto 0;
}
.catch-collection-card__select, .catch-collection-card__details {
  min-height: 44px;
  border-radius: 0;
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
}
.catch-collection-card__select:focus-visible, .catch-collection-card__details:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection-card__select {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.6rem;
  padding: 0.55rem 0.7rem;
  border: 1px solid var(--collection-border);
  background: var(--collection-surface);
  color: var(--collection-dark);
  text-align: left;
}
.catch-collection-card__select:hover:not(:disabled), .catch-collection-card__select:focus-visible {
  border-color: var(--collection-red);
}
.catch-collection-card__select:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.catch-collection-card__check {
  display: grid;
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  place-items: center;
  border: 2px solid currentColor;
}
.catch-collection-card__check::after {
  content: "";
  width: 8px;
  height: 5px;
  border-bottom: 2px solid #ECE8E1;
  border-left: 2px solid #ECE8E1;
  opacity: 0;
  transform: translateY(-1px) rotate(-45deg);
}
.catch-collection-card__select-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.catch-collection-card__details {
  padding: 0.55rem 0.8rem;
  border: 1px solid var(--collection-dark);
  background: var(--collection-dark);
  color: #ECE8E1;
}
.catch-collection-card__details:hover, .catch-collection-card__details:focus-visible {
  border-color: var(--collection-red);
  background: var(--collection-red);
}
.catch-collection-card.is-selected .catch-collection-card__select, .catch-collection-card.is-partial .catch-collection-card__select {
  border-color: var(--collection-red);
  background: rgba(255, 70, 85, 0.09);
  color: var(--collection-red);
}
.catch-collection-card.is-selected .catch-collection-card__check, .catch-collection-card.is-partial .catch-collection-card__check {
  background: var(--collection-red);
  color: var(--collection-red);
}
.catch-collection-card.is-selected .catch-collection-card__check::after, .catch-collection-card.is-partial .catch-collection-card__check::after {
  opacity: 1;
}
.catch-collection-card.is-partial .catch-collection-card__check::after {
  width: 10px;
  height: 0;
  border: 0;
  border-top: 2px solid #ECE8E1;
  transform: none;
}

.catch-collection.is-collection-managing .catch-collection-card__management {
  display: grid;
}

.catch-collection [data-collection-results] {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 2.5rem;
}

.catch-collection-bulk-dock {
  position: fixed;
  right: max(1rem, env(safe-area-inset-right));
  bottom: max(1rem, env(safe-area-inset-bottom));
  left: max(1rem, env(safe-area-inset-left));
  z-index: 1030;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: min(1040px, 100% - 2rem);
  margin-inline: auto;
  padding: 0.9rem 1rem;
  border: 1px solid rgba(236, 232, 225, 0.2);
  background: rgba(15, 25, 35, 0.97);
  color: #ECE8E1;
  box-shadow: 0 18px 50px rgba(15, 25, 35, 0.35);
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
}
.catch-collection-bulk-dock[hidden] {
  display: none !important;
}
.catch-collection-bulk-dock__summary {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.1rem;
}
.catch-collection-bulk-dock__summary strong {
  font-size: 0.95rem;
}
.catch-collection-bulk-dock__summary span {
  color: rgba(236, 232, 225, 0.72);
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
}
.catch-collection-bulk-dock__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.5rem;
}
.catch-collection-bulk-dock__actions button {
  min-height: 44px;
  padding: 0.55rem 0.85rem;
  border-radius: 0;
  font-size: 0.8rem;
  font-weight: 800;
}
.catch-collection-bulk-dock__actions button:focus-visible {
  outline: 2px solid #ECE8E1;
  outline-offset: 2px;
}
.catch-collection-bulk-dock__actions button:disabled {
  opacity: 0.42;
  cursor: not-allowed;
}
.catch-collection-bulk-dock__clear {
  border: 1px solid rgba(236, 232, 225, 0.38);
  background: transparent;
  color: #ECE8E1;
}
.catch-collection-bulk-dock__sell {
  border: 1px solid #ECE8E1;
  background: #ECE8E1;
  color: #0F1923;
}
.catch-collection-bulk-dock__disassemble {
  border: 1px solid var(--collection-red);
  background: var(--collection-red);
  color: #ECE8E1;
}

body.has-collection-bulk-dock {
  padding-bottom: 7rem;
}

.catch-collection-bulk-dialog {
  width: min(680px, 100% - 2rem);
  max-height: min(82dvh, 760px);
  padding: 0;
  border: 1px solid var(--collection-border);
  border-radius: 0;
  background: var(--collection-surface);
  color: var(--collection-dark);
  box-shadow: 0 24px 80px rgba(15, 25, 35, 0.42);
}
.catch-collection-bulk-dialog::backdrop {
  background: rgba(15, 25, 35, 0.7);
  backdrop-filter: blur(3px);
}
.catch-collection-bulk-dialog__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 1.25rem 1rem;
  border-bottom: 1px solid var(--collection-border);
}
.catch-collection-bulk-dialog__head h3, .catch-collection-bulk-dialog__head .h3 {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(1.8rem, 5vw, 2.6rem);
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1;
  text-transform: uppercase;
}
.catch-collection-bulk-dialog__close {
  display: grid;
  min-width: 44px;
  min-height: 44px;
  place-items: center;
  border: 1px solid var(--collection-border);
  border-radius: 0;
  background: transparent;
  color: var(--collection-dark);
  font-size: 1.5rem;
  line-height: 1;
}
.catch-collection-bulk-dialog__close:hover, .catch-collection-bulk-dialog__close:focus-visible {
  border-color: var(--collection-red);
  color: var(--collection-red);
}
.catch-collection-bulk-dialog__close:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection-bulk-dialog__body {
  max-height: calc(82dvh - 190px);
  overflow-y: auto;
  padding: 1.25rem;
  overscroll-behavior: contain;
}
.catch-collection-bulk-dialog__intro, .catch-collection-bulk-dialog__destructive-note {
  margin: 0 0 1rem;
  color: var(--collection-muted);
  font-size: 0.9rem;
}
.catch-collection-bulk-dialog__shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.catch-collection-bulk-dialog__shortcuts button {
  min-height: 44px;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--collection-border);
  border-radius: 0;
  background: transparent;
  color: var(--collection-dark);
  font-size: 0.78rem;
  font-weight: 700;
}
.catch-collection-bulk-dialog__shortcuts button:hover, .catch-collection-bulk-dialog__shortcuts button:focus-visible {
  border-color: var(--collection-red);
  color: var(--collection-red);
}
.catch-collection-bulk-dialog__inventory {
  display: grid;
  gap: 0.55rem;
}
.catch-collection-bulk-dialog__reward {
  margin: 0 0 1rem;
  padding: 1rem;
  border-left: 4px solid var(--collection-red);
  background: rgba(255, 70, 85, 0.07);
  font-size: 1rem;
}
.catch-collection-bulk-dialog__reward strong {
  font-size: 1.2rem;
  font-variant-numeric: tabular-nums;
}
.catch-collection-bulk-dialog__summary-list {
  display: grid;
  gap: 0.35rem;
  margin: 0 0 1rem;
  padding-left: 1.25rem;
  color: var(--collection-muted);
  font-size: 0.85rem;
}
.catch-collection-bulk-dialog__warning {
  margin-bottom: 1rem;
  padding: 0.9rem 1rem;
  border: 1px solid rgba(255, 70, 85, 0.5);
  background: rgba(255, 70, 85, 0.09);
  color: #8d1f2d;
}
.catch-collection-bulk-dialog__warning p {
  margin: 0.25rem 0 0;
  font-size: 0.82rem;
}
.catch-collection-bulk-dialog__destructive-note {
  margin-bottom: 0;
  font-weight: 700;
}
.catch-collection-bulk-dialog__status {
  min-height: 1.2rem;
  margin: 0;
  padding: 0 1.25rem;
  color: var(--collection-muted);
  font-size: 0.82rem;
}
.catch-collection-bulk-dialog__status.is-error {
  color: #b42332;
  font-weight: 700;
}
.catch-collection-bulk-dialog__actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.65rem;
  padding: 1rem 1.25rem 1.25rem;
}
.catch-collection-bulk-dialog__actions button {
  min-height: 46px;
  padding: 0.65rem 1rem;
  border-radius: 0;
  font-weight: 800;
}
.catch-collection-bulk-dialog__actions button:disabled {
  opacity: 0.45;
  cursor: wait;
}
.catch-collection-bulk-dialog__actions button:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection-bulk-dialog__secondary {
  border: 1px solid var(--collection-border);
  background: transparent;
  color: var(--collection-dark);
}
.catch-collection-bulk-dialog__primary {
  border: 1px solid var(--collection-dark);
  background: var(--collection-dark);
  color: #ECE8E1;
}
.catch-collection-bulk-dialog__danger {
  border: 1px solid var(--collection-red);
  background: var(--collection-red);
  color: #ECE8E1;
}

.catch-collection-bulk-copy {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 0.7rem;
  min-height: 58px;
  padding: 0.75rem;
  border: 1px solid var(--collection-border);
  cursor: pointer;
}
.catch-collection-bulk-copy:has(input:checked) {
  border-color: var(--collection-red);
  background: rgba(255, 70, 85, 0.06);
}
.catch-collection-bulk-copy input {
  width: 20px;
  height: 20px;
  margin: 0.1rem 0 0;
  accent-color: var(--collection-red);
}
.catch-collection-bulk-copy input:focus-visible {
  outline: 2px solid var(--collection-red);
  outline-offset: 2px;
}
.catch-collection-bulk-copy__main {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.15rem;
}
.catch-collection-bulk-copy__meta {
  color: var(--collection-muted);
  font-size: 0.8rem;
  font-variant-numeric: tabular-nums;
}
.catch-collection-bulk-copy__keeper {
  width: fit-content;
  margin-top: 0.25rem;
  padding: 0.2rem 0.4rem;
  background: rgba(15, 25, 35, 0.08);
  color: var(--collection-muted);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

@keyframes catch-collection-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (max-width: 991.98px) {
  .catch-collection__filter-group {
    grid-template-columns: 1fr;
    gap: 0.65rem;
  }
}
@media (max-width: 640px) {
  .catch-collection__header {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .catch-collection__summary {
    width: 100%;
  }
  .catch-collection__header-side {
    width: 100%;
  }
  .catch-collection__count {
    justify-content: flex-start;
  }
}
@media (max-width: 575.98px) {
  .catch-collection__controls {
    padding: 1rem;
  }
  .catch-collection__filters {
    padding: 1.25rem 1rem;
  }
  .catch-collection [data-filter-key] {
    flex: 1 1 auto;
  }
  .catch-collection [data-per-page] {
    width: 100%;
    max-width: none;
  }
  .catch-collection__pagination {
    gap: 0.25rem;
  }
  .catch-collection__pagination .btn {
    min-width: 44px;
    min-height: 44px;
    padding: 0.35rem 0.6rem;
  }
  .catch-collection__filter-toolbar {
    flex-direction: column;
  }
  .catch-collection__filters-toggle {
    width: 100%;
  }
  .catch-collection__active-filter {
    max-width: 100%;
  }
  .catch-collection-bulk__header {
    padding: 1rem;
  }
  .catch-collection-bulk__selection-shortcuts {
    grid-template-columns: 1fr;
  }
  .catch-collection-bulk__selection-shortcut {
    width: 100%;
  }
  .catch-collection-bulk__next-action {
    grid-template-columns: 1fr;
    gap: 0.2rem;
  }
  .catch-collection [data-collection-results] {
    --bs-gutter-x: 1rem;
    --bs-gutter-y: 2rem;
  }
  .catch-collection-bulk-dock {
    align-items: stretch;
    flex-direction: column;
    gap: 0.7rem;
    padding: 0.8rem;
  }
  .catch-collection-bulk-dock__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .catch-collection-bulk-dock__actions .catch-collection-bulk-dock__clear {
    grid-column: 1/-1;
  }
  body.has-collection-bulk-dock {
    padding-bottom: 12rem;
  }
  .catch-collection-bulk-dialog {
    width: calc(100% - 1rem);
    max-height: 90dvh;
  }
  .catch-collection-bulk-dialog__body {
    max-height: calc(90dvh - 205px);
    padding: 1rem;
  }
  .catch-collection-bulk-dialog__actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .catch-collection-bulk-dialog__actions button {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .catch-collection [data-collection-results],
  .catch-collection [data-filter-key],
  .catch-collection .catch-collection-card__select,
  .catch-collection .catch-collection__manage-toggle-icon {
    transition: none;
  }
  .catch-collection.is-loading::after {
    animation-duration: 1.5s;
  }
}
.catch-stats-summary {
  padding-top: clamp(1.5rem, 3vw, 2.25rem);
}
.catch-stats-summary .catch-stats__section-heading {
  align-items: center;
  margin-bottom: 1.25rem;
}
.catch-stats-summary .catch-stats__section-heading h3, .catch-stats-summary .catch-stats__section-heading .h3 {
  font-size: clamp(1.75rem, 3vw, 2.4rem);
}
.catch-stats-summary__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--stats-line);
  background: var(--stats-panel);
}
.catch-stats-summary__card {
  position: relative;
  min-width: 0;
  padding: clamp(1rem, 2.5vw, 1.75rem);
  border-top: 2px solid var(--stats-line);
}
.catch-stats-summary__card + .catch-stats-summary__card {
  border-left: 1px solid var(--stats-line);
}
.catch-stats-summary__card--collection {
  border-top-color: var(--stats-accent);
  background: linear-gradient(135deg, rgba(255, 70, 85, 0.14), transparent);
}
.catch-stats-summary__card--activity {
  border-top-color: #81e8cc;
}
.catch-stats-summary__card h4, .catch-stats-summary__card .h4 {
  margin: 0.5rem 0 0;
  font: 600 0.95rem/1.4 "Barlow", sans-serif;
}
.catch-stats-summary__category {
  margin: 0 0 0.75rem;
  color: var(--stats-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.catch-stats-summary__value {
  margin: 0;
  color: var(--stats-ink);
  font: 400 clamp(2.75rem, 4.5vw, 4.5rem)/1 "League Gothic", sans-serif;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.catch-stats-summary__detail {
  margin: 0.4rem 0 0;
  color: var(--stats-muted);
  font-size: 0.8rem;
  line-height: 1.5;
}
.catch-stats-summary__collection {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  margin: 0;
  padding: 0.85rem 1rem;
  border: 1px solid var(--stats-line);
  border-top: 0;
}
.catch-stats-summary__collection > div {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.45rem;
  font-size: 0.8rem;
}
.catch-stats-summary__collection dt {
  color: var(--stats-muted);
  font-weight: 400;
}
.catch-stats-summary__collection dd {
  margin: 0;
  color: var(--stats-ink);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

@media (max-width: 991.98px) {
  .catch-stats-summary__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .catch-stats-summary__card:nth-child(3) {
    border-left: 0;
  }
  .catch-stats-summary__category {
    min-height: 3em;
    line-height: 1.5;
  }
  .catch-stats-summary__card h4, .catch-stats-summary__card .h4 {
    min-height: 2.8em;
    font-size: 0.85rem;
  }
}
.catch-intel {
  --intel-mint: #81e8cc;
  --intel-red-soft: #ff8c96;
}
.catch-intel [hidden] {
  display: none !important;
}
.catch-intel__kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--stats-line);
  background: var(--stats-panel);
}
.catch-intel__kpi {
  position: relative;
  min-width: 0;
  padding: clamp(1.25rem, 2.5vw, 2rem);
  overflow: hidden;
}
.catch-intel__kpi + .catch-intel__kpi {
  border-left: 1px solid var(--stats-line);
}
.catch-intel__kpi h4, .catch-intel__kpi .h4 {
  margin: 0.75rem 0 0;
  font: 600 0.95rem/1.4 "Barlow", sans-serif;
}
.catch-intel__kpi--hero {
  background: linear-gradient(135deg, rgba(255, 70, 85, 0.22), rgba(255, 70, 85, 0.04));
  border-top: 3px solid var(--stats-accent);
}
.catch-intel__kpi--hero .catch-intel__value {
  color: var(--stats-ink);
}
.catch-intel__kpi--mint .catch-intel__value {
  color: var(--intel-mint);
}
.catch-intel__pack-art {
  position: absolute;
  width: 7rem;
  right: -0.5rem;
  top: 2rem;
  stroke: var(--stats-accent);
  stroke-width: 1.2;
  opacity: 0.28;
  transform: rotate(14deg);
  pointer-events: none;
}
.catch-intel__kicker {
  position: relative;
  margin: 0 0 1rem;
  color: var(--stats-muted);
  font: 700 0.75rem/1.5 "Barlow", sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.catch-intel__value {
  position: relative;
  margin: 0;
  font: 400 clamp(3rem, 4.8vw, 5rem)/0.95 "League Gothic", sans-serif;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.015em;
  overflow-wrap: anywhere;
}
.catch-intel__value small, .catch-intel__value .small {
  margin-left: 0.35rem;
  color: var(--stats-muted);
  font-size: 0.35em;
  letter-spacing: 0;
}
.catch-intel__sub, .catch-intel__note {
  margin: 0.45rem 0 0;
  color: var(--stats-muted);
  font-size: 0.8rem;
  line-height: 1.6;
}
.catch-intel__note {
  margin-top: 1.25rem;
}
.catch-intel__booster-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1.25rem;
  margin-top: 1.25rem;
}
.catch-intel .catch-stats__panel-heading {
  align-items: start;
  flex-direction: column;
  gap: 0.4rem;
}
.catch-intel .catch-stats__panel-heading p {
  font-size: 0.8rem;
  text-align: left;
}
.catch-intel__quality {
  min-height: 12rem;
}
.catch-intel__quality .catch-stats__quality-column {
  height: 11rem;
}
.catch-intel__quality .catch-stats__quality-count {
  color: var(--stats-ink);
  font-size: 0.9rem;
}
.catch-intel__quality .catch-stats__quality-track > span {
  height: var(--stat-size);
}
.catch-intel__quality .catch-stats__quality-column:last-child .catch-stats__quality-track > span {
  background: linear-gradient(180deg, var(--intel-mint), rgba(129, 232, 204, 0.35));
}
.catch-intel__pack-records {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.catch-intel__record {
  min-width: 0;
  padding: 1.25rem;
  background: var(--stats-panel);
  border: 1px solid var(--stats-line);
  border-top: 2px solid var(--stats-accent);
}
.catch-intel__record .catch-intel__kicker {
  color: var(--intel-red-soft);
  margin-bottom: 0.7rem;
}
.catch-intel__record h4, .catch-intel__record .h4 {
  margin: 0;
  color: var(--stats-ink);
  font: 400 clamp(2.5rem, 3.5vw, 3.75rem)/1 "League Gothic", sans-serif;
  overflow-wrap: anywhere;
}
.catch-intel__record h4 small, .catch-intel__record .h4 small, .catch-intel__record h4 .small, .catch-intel__record .h4 .small {
  display: inline-block;
  margin-left: 0.4rem;
  font: 500 0.8rem/1.5 "Barlow", sans-serif;
  color: var(--stats-muted);
}
.catch-intel__record > p:not(.catch-intel__kicker), .catch-intel__record time {
  margin: 0.55rem 0 0;
  color: var(--stats-muted);
  font-size: 0.8rem;
  line-height: 1.5;
}
.catch-intel__record time {
  display: block;
}
.catch-intel__record--mint {
  border-top-color: var(--intel-mint);
}
.catch-intel__record--mint .catch-intel__kicker {
  color: var(--intel-mint);
}
.catch-intel__record--favorite {
  grid-column: 1/-1;
  border-top: 1px solid var(--stats-line);
  border-left: 2px solid var(--stats-accent);
}
.catch-intel__record--favorite h4, .catch-intel__record--favorite .h4 {
  font-size: 1.9rem;
}
.catch-intel__chart-panel {
  border-top: 2px solid var(--stats-accent);
}
.catch-intel__chart-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.catch-intel__chart-header h4, .catch-intel__chart-header .h4 {
  margin: 0;
  font: 400 2rem/1.1 "League Gothic", sans-serif;
  text-transform: uppercase;
}
.catch-intel__chart-header p {
  margin: 0.4rem 0 0;
  font-size: 0.8rem;
  color: var(--stats-muted);
}
.catch-intel__periods {
  display: flex;
  flex-shrink: 0;
  padding: 4px;
  border: 1px solid var(--stats-line);
  gap: 4px;
}
.catch-intel__periods button {
  min-height: 44px;
  padding: 0.5rem 1rem;
  color: var(--stats-muted);
  background: transparent;
  border: 0;
  font: 700 0.8rem "Barlow", sans-serif;
  cursor: pointer;
  transition: background 180ms, color 180ms;
}
.catch-intel__periods button[aria-pressed=true] {
  background: var(--stats-accent);
  color: #0F1923;
}
.catch-intel__periods button:hover:not([aria-pressed=true]) {
  background: var(--stats-panel-strong);
  color: var(--stats-ink);
}
.catch-intel button:focus-visible, .catch-intel input:focus-visible, .catch-intel summary:focus-visible {
  outline: 2px solid var(--intel-mint);
  outline-offset: 4px;
}
.catch-intel__legend {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.6rem 1.5rem;
  font-size: 0.85rem;
  color: var(--stats-muted);
}
.catch-intel__legend strong {
  color: var(--stats-ink);
  font-size: 1.2rem;
  font-variant-numeric: tabular-nums;
}
.catch-intel__legend-pack::before, .catch-intel__legend-catch::before {
  content: "";
  display: inline-block;
  width: 1rem;
  margin-right: 0.5rem;
  vertical-align: middle;
  border-top: 3px solid var(--stats-accent);
}
.catch-intel__legend-catch::before {
  border-color: var(--intel-mint);
  border-top-style: dashed;
}
.catch-intel__date-range {
  margin-left: auto;
  font-size: 0.75rem;
}
.catch-intel__plot {
  position: relative;
  margin-top: 1rem;
  padding-left: 1.5rem;
}
.catch-intel__y-axis {
  position: absolute;
  left: 0;
  top: 12%;
  bottom: 4.5%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--stats-muted);
  font-size: 0.75rem;
  line-height: 1;
  transform: translateY(-0.35rem);
}
.catch-intel__x-axis {
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
  padding-left: calc(1.5rem + 5%);
  padding-right: 2.5%;
  color: var(--stats-muted);
  font-size: 0.75rem;
}
.catch-intel__line-chart {
  display: block;
  width: 100%;
  height: clamp(11rem, 22vw, 17rem);
  overflow: visible;
}
.catch-intel__line-chart text {
  fill: var(--stats-muted);
  font: 12px "Barlow", sans-serif;
}
.catch-intel__gridline {
  stroke: var(--stats-line);
  stroke-dasharray: 3 5;
}
.catch-intel__area {
  fill: rgba(255, 70, 85, 0.1);
}
.catch-intel__line {
  fill: none;
  stroke-width: 2.5;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.catch-intel__line--pack {
  stroke: var(--stats-accent);
}
.catch-intel__line--catch {
  stroke: var(--intel-mint);
  stroke-dasharray: 6 4;
}
.catch-intel__cursor {
  stroke: var(--stats-ink);
  opacity: 0.35;
  stroke-dasharray: 3 4;
}
.catch-intel__chart-readout {
  min-height: 2.75rem;
  display: flex;
  align-items: center;
  margin-top: 1rem;
  padding: 0.65rem 0.85rem;
  background: var(--stats-panel);
  border-left: 2px solid var(--intel-mint);
  color: var(--stats-ink);
  font-size: 0.85rem;
  font-variant-numeric: tabular-nums;
}
.catch-intel__explorer {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: var(--stats-muted);
  font-size: 0.8rem;
}
.catch-intel__explorer input {
  flex: 1;
  min-width: 0;
  min-height: 44px;
  accent-color: var(--intel-mint);
  cursor: ew-resize;
}
.catch-intel__data-table {
  margin-top: 0.5rem;
  font-size: 0.8rem;
}
.catch-intel__data-table summary {
  width: fit-content;
  min-height: 44px;
  padding-block: 0.75rem;
  cursor: pointer;
  color: var(--stats-muted);
}
.catch-intel__data-table > div {
  max-height: 20rem;
  overflow: auto;
}
.catch-intel__data-table table {
  width: 100%;
  margin: 0;
  border-collapse: collapse;
}
.catch-intel__data-table th, .catch-intel__data-table td {
  padding: 0.65rem;
  border-bottom: 1px solid var(--stats-line);
  text-align: right;
}
.catch-intel__data-table th:first-child {
  text-align: left;
}
.catch-intel__data-table caption {
  color: var(--stats-muted);
}
.catch-intel__consistency {
  display: grid;
  grid-template-columns: minmax(10rem, 0.65fr) minmax(0, 2fr);
  margin-top: 1.25rem;
  border: 1px solid var(--stats-line);
  background: var(--stats-panel);
}
.catch-intel__activity-summary {
  padding: 1.5rem;
  background: linear-gradient(145deg, rgba(129, 232, 204, 0.07), transparent);
  border-right: 1px solid var(--stats-line);
}
.catch-intel__activity-summary .catch-intel__value {
  color: var(--intel-mint);
}
.catch-intel__activity-summary h4, .catch-intel__activity-summary .h4 {
  margin: 0.75rem 0 0;
  font: 600 1rem "Barlow", sans-serif;
}
.catch-intel__activity-summary > p:last-child {
  margin: 0.6rem 0 0;
  color: var(--stats-muted);
  font-size: 0.8rem;
  line-height: 1.5;
}
.catch-intel__calendar-panel {
  min-width: 0;
  padding: 1.5rem;
}
.catch-intel__calendar-title {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.catch-intel__calendar-title h4, .catch-intel__calendar-title .h4 {
  margin: 0;
  font: 600 0.95rem "Barlow", sans-serif;
}
.catch-intel__calendar-title > span {
  color: var(--stats-muted);
  font-size: 0.75rem;
}
.catch-intel__calendar-grid {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: 0.5rem;
}
.catch-intel__calendar-labels {
  display: grid;
  grid-template-rows: repeat(7, 0.75rem);
  gap: 4px;
  color: var(--stats-muted);
  font-size: 0.65rem;
  line-height: 1;
}
.catch-intel__calendar-labels span:nth-child(2) {
  grid-row: 3;
}
.catch-intel__calendar-labels span:nth-child(3) {
  grid-row: 5;
}
.catch-intel__calendar {
  display: grid;
  grid-template-rows: repeat(7, 0.75rem);
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: 4px;
}
.catch-intel__day, .catch-intel__calendar-key i {
  background: rgba(236, 232, 225, 0.07);
  border: 1px solid rgba(236, 232, 225, 0.05);
}
.catch-intel__day[data-level="1"], .catch-intel__calendar-key i[data-level="1"] {
  background: rgba(129, 232, 204, 0.2);
}
.catch-intel__day[data-level="2"], .catch-intel__calendar-key i[data-level="2"] {
  background: rgba(129, 232, 204, 0.4);
}
.catch-intel__day[data-level="3"], .catch-intel__calendar-key i[data-level="3"] {
  background: rgba(129, 232, 204, 0.65);
}
.catch-intel__day[data-level="4"], .catch-intel__calendar-key i[data-level="4"] {
  background: var(--intel-mint);
}
.catch-intel__calendar-key {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.5rem;
  margin-top: 0.6rem;
  color: var(--stats-muted);
  font-size: 0.75rem;
}
.catch-intel__calendar-key > span {
  display: flex;
  align-items: center;
  gap: 4px;
}
.catch-intel__calendar-key i {
  display: inline-block;
  width: 10px;
  height: 10px;
}
.catch-intel__streaks {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 2rem;
  margin-top: 1.25rem;
  padding-top: 1rem;
  border-top: 1px solid var(--stats-line);
}
.catch-intel__streaks p {
  margin: 0;
  color: var(--stats-muted);
  font-size: 0.8rem;
}
.catch-intel__streaks strong {
  color: var(--stats-ink);
  margin-right: 0.4rem;
  font-size: 1.2rem;
}
.catch-intel__signature {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  margin: 0 0 1.5rem;
}
.catch-intel__signature span {
  color: var(--stats-muted);
  font-size: 0.8rem;
}
.catch-intel__signature strong {
  font: 400 2rem/1.1 "League Gothic", sans-serif;
  color: var(--intel-mint);
}
.catch-intel__weekdays {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: clamp(0.35rem, 1vw, 1rem);
}
.catch-intel__weekdays > div {
  display: grid;
  grid-template-rows: auto 8rem auto;
  gap: 0.5rem;
  text-align: center;
  font-size: 0.75rem;
}
.catch-intel__weekdays strong {
  font-size: 0.85rem;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
.catch-intel__weekday-track {
  position: relative;
  background: var(--stats-panel);
}
.catch-intel__weekday-track i {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: var(--stat-size);
  background: linear-gradient(0deg, rgba(129, 232, 204, 0.3), var(--intel-mint));
}

@media (max-width: 1199.98px) {
  .catch-intel__kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .catch-intel__kpi:nth-child(3) {
    border-left: 0;
  }
  .catch-intel__kpi:nth-child(n+3) {
    border-top: 1px solid var(--stats-line);
  }
}
@media (max-width: 991.98px) {
  .catch-intel__booster-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 575.98px) {
  .catch-intel__kpi {
    padding: 1rem;
  }
  .catch-intel__kpi h4, .catch-intel__kpi .h4 {
    font-size: 0.85rem;
  }
  .catch-intel__kicker {
    font-size: 0.75rem;
    letter-spacing: 0.06em;
  }
  .catch-intel__pack-art {
    width: 5rem;
  }
  .catch-intel__chart-header {
    align-items: flex-start;
    flex-direction: column;
  }
  .catch-intel__date-range {
    width: 100%;
    margin-left: 0;
  }
  .catch-intel__line-chart {
    min-height: 10rem;
  }
  .catch-intel__record {
    padding: 1rem;
  }
  .catch-intel__record h4 small, .catch-intel__record .h4 small, .catch-intel__record h4 .small, .catch-intel__record .h4 .small {
    display: block;
    margin: 0.3rem 0 0;
  }
  .catch-intel__consistency {
    grid-template-columns: minmax(0, 1fr);
  }
  .catch-intel__activity-summary {
    border-right: 0;
    border-bottom: 1px solid var(--stats-line);
  }
  .catch-intel__calendar-panel {
    padding: 1rem;
  }
  .catch-intel__calendar, .catch-intel__calendar-labels {
    gap: 3px;
  }
  .catch-intel__calendar-key > span:nth-child(2) {
    order: 1;
    width: 100%;
    justify-content: flex-end;
  }
  .catch-intel__explorer {
    gap: 0.5rem;
  }
  .catch-intel__data-table th, .catch-intel__data-table td {
    padding-inline: 0.3rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .catch-intel *, .catch-intel *::before {
    animation: none !important;
    transition: none !important;
  }
}
/* =========================================================
   BOUTIQUE
========================================================= */
.catch-shop {
  --catch-dark: #0f1923;
  --catch-dark-light: #18232f;
  --catch-panel: #141f2a;
  --catch-border: rgba(255, 255, 255, .09);
  --catch-text: #ece8e1;
  --catch-muted: #8e9aa7;
  --catch-red: #ff4655;
  background: radial-gradient(circle at 70% 0%, rgba(255, 70, 85, 0.08), transparent 35%), var(--catch-dark);
  color: var(--catch-text);
  min-height: 100vh;
  padding-bottom: 100px;
}

.shop-price__icon {
  display: inline-block;
  width: 13px;
  height: 13px;
  background: var(--catch-red);
  transform: rotate(45deg);
}

/* SECTIONS
--------------------------------------------------------- */
.shop-section {
  padding: 55px 0;
}

.shop-section-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 30px;
}

.shop-section-header h2, .shop-section-header .h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 2.7rem);
  font-weight: 700;
  text-transform: uppercase;
}

.shop-refresh {
  text-align: right;
}

.shop-refresh__label {
  display: block;
  margin-bottom: 3px;
  color: var(--catch-muted);
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.shop-refresh strong {
  color: #fff;
  font-size: 1.15rem;
  letter-spacing: 0.08em;
}

/* =========================================================
   CARTES DU JOUR
========================================================= */
.shop-card {
  --shop-finish: #8a939b;
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--catch-panel);
  border: 1px solid var(--catch-border);
  border-top: 2px solid var(--shop-finish);
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.shop-card:hover {
  transform: translateY(-7px);
  border-color: rgba(255, 70, 85, 0.45);
}

.shop-card.is-purchased {
  border-color: rgba(79, 227, 216, 0.4);
}

.shop-card.is-purchasing {
  transform: none;
}

.shop-card--charged {
  --shop-finish: #4fe3d8;
}

.shop-card--overcharged {
  --shop-finish: #ff6b78;
}

.shop-card--sublimated {
  --shop-finish: #f0c24b;
}

.shop-card--radiant {
  --shop-finish: #be96ff;
}

/* VISUEL DE CARTE */
.shop-card__visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 440px;
  padding: 30px 24px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.08), transparent 35%), #202b37;
}

.shop-card__visual .c-card-slot--grid {
  width: 100%;
  margin: 0;
  padding: 0;
  pointer-events: auto;
  content-visibility: visible;
  contain-intrinsic-size: none;
}

/* CONTENU CARTE */
.shop-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 20px;
}

.shop-card__meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 5px;
  color: var(--catch-red);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.shop-card__meta span:last-child {
  color: var(--shop-finish);
  text-align: right;
}

.shop-card h3, .shop-card .h3 {
  margin: 0 0 20px;
  color: #fff;
  font-size: 1.25rem;
  font-weight: 700;
}

.shop-card__ownership {
  align-self: flex-start;
  margin: -8px 0 18px;
  padding: 5px 8px;
  border: 1px solid rgba(79, 227, 216, 0.28);
  background: rgba(79, 227, 216, 0.08);
  color: #8eece5;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.shop-card__footer {
  display: grid;
  gap: 14px;
  margin-top: auto;
}

/* PRIX
--------------------------------------------------------- */
.shop-price {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--catch-muted);
}

.shop-price strong {
  color: #fff;
  font-size: 1.15rem;
}

.shop-price--large strong {
  font-size: 1.8rem;
}

.shop-price--unset strong {
  color: var(--catch-muted);
  font-size: 0.85rem;
}

/* BUTTON
--------------------------------------------------------- */
.shop-btn {
  position: relative;
  padding: 10px 18px;
  background: var(--catch-red);
  border: 0;
  border-radius: 0;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  transition: background 0.2s ease, transform 0.2s ease;
}

.shop-btn:hover {
  background: #ff5e6a;
  color: #fff;
  transform: translateY(-2px);
}

.shop-btn:disabled,
.shop-btn:disabled:hover {
  background: #303b46;
  color: #9ca6b0;
  cursor: not-allowed;
  opacity: 1;
  transform: none;
}

.shop-card__footer .shop-btn {
  width: 100%;
}

.shop-card__feedback {
  margin: 0;
  color: var(--catch-muted);
  font-size: 0.78rem;
  line-height: 1.4;
}

.shop-card__feedback--success {
  color: #8eece5;
}

.shop-card__feedback--error {
  color: #ff9ca4;
}

/* MODAL D'ACHAT ET RÉVÉLATION
--------------------------------------------------------- */
.shop-purchase-modal {
  --shop-reveal-accent: #ff4655;
  --catch-border: #2d3945;
  --catch-muted: #9ca6b0;
}

.shop-purchase-modal .modal-dialog {
  max-width: 570px;
}

.shop-purchase-modal .modal-content {
  position: relative;
  overflow: hidden;
  background-color: #111c27 !important;
  background-image: radial-gradient(circle at 85% 5%, rgba(255, 70, 85, 0.18), transparent 38%), linear-gradient(145deg, rgba(255, 255, 255, 0.035), transparent 45%);
  color: #fff;
  border: 1px solid rgba(255, 70, 85, 0.55);
  border-radius: 0;
  box-shadow: 0 35px 100px rgba(0, 0, 0, 0.85), 0 0 0 1px rgba(255, 255, 255, 0.04) inset;
}

.shop-purchase-modal .modal-content::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: var(--shop-reveal-accent);
  content: "";
}

.shop-purchase-modal .modal-header,
.shop-purchase-modal .modal-footer {
  position: relative;
  z-index: 1;
  border-color: rgba(255, 255, 255, 0.1);
}

.shop-purchase-modal .modal-header {
  align-items: flex-start;
  padding: 25px 28px 20px;
}

.shop-purchase-modal .modal-body {
  position: relative;
  z-index: 1;
  padding: 28px;
}

.shop-purchase-modal .modal-footer {
  gap: 10px;
  padding: 18px 28px 24px;
}

.shop-purchase-modal .modal-title {
  color: #fff;
  font-size: clamp(1.65rem, 5vw, 2.35rem);
  line-height: 1;
  text-transform: uppercase;
}

.shop-purchase-modal__eyebrow {
  display: block;
  margin-bottom: 7px;
  color: var(--shop-reveal-accent);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.shop-purchase-modal .btn-close {
  margin-top: 2px;
  opacity: 0.7;
}

.shop-purchase-modal__description,
.shop-purchase-modal__hint,
.shop-purchase-reveal p {
  color: var(--catch-muted);
}

.shop-purchase-modal__description {
  margin: 0 0 22px;
}

.shop-purchase-modal__summary {
  display: grid;
  grid-template-columns: minmax(80px, 0.35fr) 1fr;
  gap: 18px;
  padding: 13px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.shop-purchase-modal__summary span {
  color: var(--catch-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.shop-purchase-modal__summary strong {
  text-align: right;
}

.shop-purchase-modal__hint {
  margin: 18px 0 0;
  font-size: 0.8rem;
}

.shop-purchase-modal__alert {
  margin: 20px 0 0;
  border: 1px solid rgba(255, 70, 85, 0.45);
  border-radius: 0;
  background: rgba(255, 70, 85, 0.1);
  color: #ffb1b7;
}

.shop-purchase-modal__cancel {
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 0;
  color: var(--catch-muted);
}

.shop-purchase-modal__cancel:hover {
  border-color: rgba(255, 255, 255, 0.35);
  color: #fff;
}

.shop-purchase-reveal {
  padding: 12px 0;
  text-align: center;
}

.shop-purchase-reveal__badge {
  display: inline-block;
  margin-bottom: 18px;
  padding: 6px 10px;
  border: 1px solid color-mix(in srgb, var(--shop-reveal-accent) 55%, transparent);
  color: var(--shop-reveal-accent);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.shop-purchase-reveal__badge:empty {
  display: none;
}

.shop-purchase-reveal__stars {
  min-height: 1em;
  margin-bottom: 18px;
  color: var(--shop-reveal-accent);
  font-size: clamp(2rem, 8vw, 3.5rem);
  letter-spacing: 0.08em;
  line-height: 1;
  text-shadow: 0 0 28px color-mix(in srgb, var(--shop-reveal-accent) 65%, transparent);
}

.shop-purchase-reveal h3, .shop-purchase-reveal .h3 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(1.5rem, 5vw, 2.2rem);
  text-transform: uppercase;
}

.shop-purchase-reveal p {
  margin: 0;
}

.shop-purchase-modal.is-rare {
  --shop-reveal-accent: #be96ff;
}

.shop-purchase-modal.is-rare .modal-content {
  background-color: #111827 !important;
  background-image: radial-gradient(circle at 50% 15%, rgba(190, 150, 255, 0.22), transparent 45%), linear-gradient(145deg, rgba(255, 255, 255, 0.04), transparent 45%);
  border-color: rgba(190, 150, 255, 0.65);
}

.shop-purchase-modal.is-legendary {
  --shop-reveal-accent: #f9d65c;
}

.shop-purchase-modal.is-rare .modal-content,
.shop-purchase-modal.is-legendary .modal-content {
  animation: shop-reveal-pulse 1.1s ease-out;
}

.shop-purchase-modal.is-legendary .modal-content {
  background-color: #151921 !important;
  background-image: radial-gradient(circle at 50% 15%, rgba(249, 214, 92, 0.22), transparent 45%), radial-gradient(circle at 85% 5%, rgba(190, 150, 255, 0.2), transparent 35%);
  border-color: rgba(249, 214, 92, 0.72);
}

.shop-confetti-layer {
  position: fixed;
  z-index: 1080;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.shop-confetti {
  position: absolute;
  top: -8vh;
  left: var(--confetti-left);
  width: 9px;
  height: 17px;
  background: var(--confetti-color);
  box-shadow: 0 0 8px color-mix(in srgb, var(--confetti-color) 65%, transparent);
  animation: shop-confetti-fall var(--confetti-duration) linear var(--confetti-delay) forwards;
}

.shop-confetti--round {
  width: 11px;
  height: 11px;
  border-radius: 50%;
}

@keyframes shop-confetti-fall {
  from {
    transform: translate3d(0, -8vh, 0) rotate(0deg);
  }
  to {
    transform: translate3d(var(--confetti-drift), 118vh, 0) rotate(var(--confetti-rotation));
  }
}
@keyframes shop-reveal-pulse {
  0% {
    filter: brightness(0.7);
    transform: scale(0.94);
  }
  45% {
    filter: brightness(1.3);
    transform: scale(1.025);
  }
  100% {
    filter: brightness(1);
    transform: scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .shop-purchase-modal.is-rare .modal-content,
  .shop-purchase-modal.is-legendary .modal-content,
  .shop-confetti {
    animation: none;
  }
}
.shop-btn--large {
  padding: 15px 24px;
}

/* ÉTATS DE PAGE
--------------------------------------------------------- */
.shop-notice {
  padding: 35px;
  border: 1px solid var(--catch-border);
  background: #111c27;
  color: var(--catch-muted);
}

.shop-notice p {
  margin: 0 0 20px;
}

.shop-notice .shop-btn {
  display: inline-block;
}

.shop-notice--error {
  border-color: rgba(255, 70, 85, 0.35);
}

.shop-notice__details {
  color: #ff9ca4;
  font-size: 0.85rem;
}

/* =========================================================
   BOOSTERS
========================================================= */
.shop-boosters {
  padding-top: 80px;
}

.booster-carousel {
  position: relative;
  border: 1px solid var(--catch-border);
  background: linear-gradient(115deg, #111c27, #182632);
  overflow: hidden;
}

.booster-slide {
  min-height: 570px;
  padding: 70px 100px;
}

.booster-slide--agent {
  background: radial-gradient(circle at 25% 50%, rgba(75, 150, 255, 0.12), transparent 35%);
}

.booster-slide--charged {
  background: radial-gradient(circle at 25% 50%, rgba(160, 70, 255, 0.14), transparent 35%);
}

/* PACK */
.booster-pack {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(310px, 80%);
  aspect-ratio: 0.68;
  margin: 0 auto;
  transform: rotate(-5deg);
  background: linear-gradient(145deg, #283644, #101923 75%);
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 40px 60px rgba(0, 0, 0, 0.4);
  transition: transform 0.3s ease;
}

.booster-pack:hover {
  transform: rotate(-2deg) translateY(-8px);
}

.booster-pack__glow {
  position: absolute;
  inset: 25%;
  background: var(--catch-red);
  filter: blur(80px);
  opacity: 0.25;
}

.booster-pack__body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.booster-pack__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.booster-pack__fallback {
  padding: 30px;
  text-align: center;
}

.booster-pack__brand {
  margin-bottom: 40px;
  color: var(--catch-red);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.25em;
}

.booster-pack__body strong {
  color: #fff;
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: -0.03em;
}

.booster-pack__count {
  margin-top: 8px;
  color: var(--catch-muted);
  font-size: 0.65rem;
  letter-spacing: 0.15em;
}

.booster-pack--agent .booster-pack__glow {
  background: #559cff;
}

.booster-pack--charged .booster-pack__glow {
  background: #a847ff;
}

/* BOOSTER CONTENT */
.booster-content {
  max-width: 520px;
}

.booster-content__tag {
  display: inline-block;
  margin-bottom: 15px;
  color: var(--catch-red);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.booster-content h3, .booster-content .h3 {
  margin-bottom: 20px;
  color: #fff;
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 800;
  line-height: 0.95;
  letter-spacing: -0.04em;
  text-transform: uppercase;
}

.booster-content > p {
  max-width: 430px;
  margin-bottom: 35px;
  color: var(--catch-muted);
  font-size: 1rem;
  line-height: 1.7;
}

.booster-content__description {
  max-width: 430px;
  margin-bottom: 35px;
  color: var(--catch-muted);
  font-size: 1rem;
  line-height: 1.7;
}

.booster-content__description > :last-child {
  margin-bottom: 0;
}

.shop-boosters__empty {
  margin: 0;
  padding: 35px;
  border: 1px solid var(--catch-border);
  background: #111c27;
  color: var(--catch-muted);
}

/* INFOS BOOSTER */
.booster-content__infos {
  display: flex;
  gap: 50px;
  margin-bottom: 40px;
}

.booster-content__infos div {
  display: flex;
  flex-direction: column;
}

.booster-content__infos span {
  margin-bottom: 3px;
  color: var(--catch-muted);
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.booster-content__infos strong {
  color: #fff;
}

/* ACHAT BOOSTER */
.booster-buy {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px 24px;
}

.booster-quantity {
  display: grid;
  gap: 6px;
}

.booster-quantity > label,
.booster-quantity__hint {
  color: var(--catch-muted);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.booster-quantity__stepper {
  display: grid;
  grid-template-columns: 46px 58px 46px;
}

.booster-quantity__stepper button,
.booster-quantity__stepper input {
  min-height: 46px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0;
  background: rgba(8, 17, 27, 0.78);
  color: #fff;
}

.booster-quantity__stepper button {
  display: inline-grid;
  place-items: center;
  padding: 0;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  touch-action: manipulation;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.booster-quantity__stepper button:hover:not(:disabled) {
  border-color: var(--catch-red);
  background: rgba(255, 70, 85, 0.16);
}

.booster-quantity__stepper button:focus-visible,
.booster-quantity__stepper input:focus-visible {
  position: relative;
  z-index: 1;
  border-color: var(--catch-red);
  outline: 3px solid rgba(255, 70, 85, 0.28);
  outline-offset: 2px;
}

.booster-quantity__stepper button:disabled,
.booster-quantity__stepper input:disabled {
  color: #6f7b86;
  cursor: not-allowed;
  opacity: 0.55;
}

.booster-quantity__stepper input {
  width: 58px;
  margin: 0 -1px;
  padding: 0 6px;
  font-size: 1rem;
  font-variant-numeric: tabular-nums;
  font-weight: 800;
  text-align: center;
  appearance: textfield;
}

.booster-quantity__stepper input::-webkit-inner-spin-button,
.booster-quantity__stepper input::-webkit-outer-spin-button {
  margin: 0;
  appearance: none;
}

/* FILTRES BOOSTERS
--------------------------------------------------------- */
.booster-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.booster-filter {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 18px;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 0;
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.booster-filter:hover {
  border-color: rgba(255, 255, 255, 0.45);
  color: #fff;
}

.booster-filter.is-active {
  background: var(--catch-red);
  border-color: var(--catch-red);
  color: #fff;
}

.booster-filter__count {
  padding: 2px 7px;
  background: rgba(255, 255, 255, 0.12);
  font-size: 0.7rem;
  line-height: 1.5;
}

.booster-filter.is-active .booster-filter__count {
  background: rgba(0, 0, 0, 0.22);
}

.booster-carousel__pool,
.booster-carousel .carousel-indicators[hidden],
.booster-carousel .booster-control[hidden] {
  display: none;
}

/* Permutation d'un groupe à l'autre : la durée doit rester alignée sur
   SWAP_DURATION dans js/src/pages/shop.js. */
.booster-carousel .carousel-inner {
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.booster-carousel.is-swapping .carousel-inner {
  opacity: 0;
  transform: translateY(12px);
}

.booster-carousel.is-swapping .carousel-indicators,
.booster-carousel.is-swapping .booster-control {
  opacity: 0;
  pointer-events: none;
}

.booster-carousel .carousel-indicators,
.booster-carousel .booster-control {
  transition: opacity 0.18s ease;
}

@media (prefers-reduced-motion: reduce) {
  .booster-carousel .carousel-inner,
  .booster-carousel .carousel-indicators,
  .booster-carousel .booster-control {
    transition: none;
  }
}
/* CAROUSEL CONTROLS
--------------------------------------------------------- */
.booster-carousel .carousel-indicators {
  bottom: 20px;
}

.booster-carousel .carousel-indicators button {
  width: 25px;
  height: 3px;
  border: 0;
  background: rgba(255, 255, 255, 0.35);
}

.booster-carousel .carousel-indicators .active {
  background: var(--catch-red);
}

.booster-control {
  top: 50%;
  width: 46px;
  height: 46px;
  background: #fff;
  color: var(--catch-dark);
  opacity: 1;
  transform: translateY(-50%);
}

.booster-control:hover {
  background: var(--catch-red);
  color: #fff;
}

.booster-control span {
  font-size: 1.3rem;
}

.booster-control--prev {
  left: 20px;
}

.booster-control--next {
  right: 20px;
}

/* GRILLE DE BOOSTERS
--------------------------------------------------------- */
.shop-section-header__intro {
  max-width: 620px;
  margin: 14px 0 0;
  color: #9aa7b4;
  font-size: 0.95rem;
  line-height: 1.6;
}

.shop-section-header__easter-egg {
  max-width: 620px;
  margin: 8px 0 0;
  color: rgba(154, 167, 180, 0.55);
  font-size: 0.6rem;
  line-height: 1.45;
}

.booster-showcase {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 24px;
}

.booster-card {
  --booster-accent: #a847ff;
  --booster-accent-rgb: 168, 71, 255;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-top: 2px solid var(--booster-accent);
  background: linear-gradient(180deg, rgba(20, 31, 43, 0.98), rgba(12, 22, 32, 0.98));
  box-shadow: 0 24px 55px rgba(0, 0, 0, 0.24);
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.booster-card--size-5 {
  --booster-accent: #a847ff;
  --booster-accent-rgb: 168, 71, 255;
}

.booster-card--size-10 {
  --booster-accent: #ff4655;
  --booster-accent-rgb: 255, 70, 85;
}

.booster-card--size-20 {
  --booster-accent: #e9a93f;
  --booster-accent-rgb: 233, 169, 63;
}

.booster-card:hover {
  border-color: rgba(var(--booster-accent-rgb), 0.58);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.36), 0 0 32px rgba(var(--booster-accent-rgb), 0.1);
  transform: translateY(-6px);
}

.booster-card__visual {
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  min-height: 350px;
  padding: 52px 28px 32px;
  background: radial-gradient(circle at 50% 45%, rgba(var(--booster-accent-rgb), 0.24), transparent 48%), linear-gradient(145deg, #172431, #0a141e 72%);
  overflow: hidden;
}

.booster-card__visual::before {
  position: absolute;
  z-index: -1;
  inset: -30% 45% -30% -20%;
  border-right: 1px solid rgba(var(--booster-accent-rgb), 0.18);
  background: rgba(var(--booster-accent-rgb), 0.035);
  content: "";
  transform: skewX(-16deg);
}

.booster-card__featured,
.booster-card__size {
  position: absolute;
  z-index: 4;
  top: 18px;
}

.booster-card__featured {
  left: 18px;
  padding: 7px 10px;
  background: var(--booster-accent);
  color: #fff;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
}

.booster-card__size {
  right: 18px;
  display: grid;
  min-width: 58px;
  padding: 7px 8px 6px;
  border: 1px solid rgba(var(--booster-accent-rgb), 0.62);
  background: rgba(7, 15, 23, 0.84);
  color: #fff;
  text-align: center;
  backdrop-filter: blur(8px);
}

.booster-card__size strong {
  font-size: 1.55rem;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}

.booster-card__size span {
  margin-top: 3px;
  color: var(--booster-accent);
  font-size: 0.56rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.booster-card .booster-pack {
  width: min(190px, 68%);
  margin: 0 auto;
  border: 0;
  background: transparent;
  transform: rotate(-4deg);
  box-shadow: none;
}

.booster-card:hover .booster-pack {
  transform: rotate(-2deg) translateY(-6px);
}

.booster-card .booster-pack__glow {
  display: none;
}

.booster-card .booster-pack::before,
.booster-card .booster-pack::after {
  display: none;
}

.booster-card .booster-pack__image {
  object-fit: contain;
}

.booster-card .booster-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  max-width: none;
  padding: 28px;
}

.booster-card .booster-content__tag {
  margin-bottom: 10px;
  color: var(--booster-accent);
}

.booster-card .booster-content h3, .booster-card .booster-content .h3 {
  margin-bottom: 14px;
  font-size: clamp(1.8rem, 2.2vw, 2.65rem);
  line-height: 1;
}

.booster-card .booster-content__description {
  max-width: none;
  min-height: 4.8em;
  margin-bottom: 24px;
  color: #aeb8c3;
  font-size: 0.92rem;
  line-height: 1.6;
}

.booster-card .booster-content__infos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  min-height: 70px;
  margin-bottom: 24px;
}

.booster-card .booster-content__infos div {
  min-width: 0;
  padding-left: 12px;
  border-left: 2px solid rgba(var(--booster-accent-rgb), 0.58);
}

.booster-card .booster-content__infos strong {
  font-size: 0.78rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.booster-pricing {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: auto;
  margin-bottom: 20px;
  border-block: 1px solid rgba(255, 255, 255, 0.1);
}

.booster-price {
  min-width: 0;
  padding: 16px 14px 16px 0;
}

.booster-price + .booster-price {
  padding-right: 0;
  padding-left: 14px;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.booster-price__label,
.booster-price__currency {
  display: block;
  color: #7f8c99;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.booster-price__value {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin: 7px 0 4px;
  color: #fff;
}

.booster-card .booster-price__value .shop-price__icon {
  flex: 0 0 13px;
  background: var(--booster-accent);
}

.booster-price__value strong {
  min-width: 0;
  font-size: clamp(1.15rem, 1.7vw, 1.55rem);
  font-variant-numeric: tabular-nums;
  line-height: 1;
}

.booster-price--total .booster-price__value strong,
.booster-price--total .booster-price__currency {
  color: var(--booster-accent);
}

.booster-card .booster-buy {
  display: grid;
  align-items: stretch;
  gap: 16px;
}

.booster-card .booster-quantity {
  gap: 7px;
}

.booster-card .booster-quantity__stepper {
  grid-template-columns: 48px minmax(58px, 1fr) 48px;
}

.booster-card .booster-quantity__stepper button,
.booster-card .booster-quantity__stepper input {
  min-height: 48px;
}

.booster-card .booster-quantity__stepper input {
  width: auto;
}

.booster-card .booster-quantity__stepper button:hover:not(:disabled),
.booster-card .booster-quantity__stepper button:focus-visible,
.booster-card .booster-quantity__stepper input:focus-visible {
  border-color: var(--booster-accent);
}

.booster-card .booster-quantity__stepper button:hover:not(:disabled) {
  background: rgba(var(--booster-accent-rgb), 0.14);
}

.booster-card .booster-buy .shop-btn {
  width: 100%;
  min-height: 52px;
}

.booster-card .booster-content__ownership {
  max-width: none;
  margin: 18px 0 0;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  color: #9ba8b5;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.4;
  text-align: center;
  text-transform: uppercase;
}

.booster-card .shop-card__feedback {
  max-width: none;
  margin: 14px 0 0;
}

@media (min-width: 1200px) {
  .booster-card--featured {
    box-shadow: 0 32px 75px rgba(0, 0, 0, 0.35), 0 0 36px rgba(var(--booster-accent-rgb), 0.1);
    transform: translateY(-12px);
  }
  .booster-card--featured:hover {
    transform: translateY(-18px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .booster-card,
  .booster-card .booster-pack {
    transition: none;
  }
  .booster-card:hover,
  .booster-card--featured,
  .booster-card--featured:hover,
  .booster-card:hover .booster-pack {
    transform: none;
  }
}
/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width: 1199.98px) {
  .booster-showcase {
    grid-template-columns: minmax(0, 760px);
    justify-content: center;
  }
  .booster-card {
    display: grid;
    grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
  }
  .booster-card__visual {
    min-height: 100%;
  }
  .booster-card .booster-content__description,
  .booster-card .booster-content__infos {
    min-height: 0;
  }
}
@media (max-width: 991.98px) {
  .shop-section-header {
    align-items: flex-start;
  }
}
@media (max-width: 767.98px) {
  .shop-section-header {
    flex-direction: column;
  }
  .shop-refresh {
    text-align: left;
  }
  .booster-card {
    display: flex;
  }
  .booster-card__visual {
    min-height: 320px;
    padding: 54px 24px 30px;
  }
  .booster-card .booster-content {
    padding: 24px;
  }
  .booster-card .booster-content__infos {
    gap: 14px;
  }
  .booster-card .booster-pack {
    width: min(180px, 62%);
  }
}
@media (max-width: 420px) {
  .booster-pricing,
  .booster-card .booster-content__infos {
    grid-template-columns: 1fr;
  }
  .booster-price + .booster-price {
    padding-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-left: 0;
  }
  .booster-card .booster-content__infos div {
    min-height: 42px;
  }
}
.catch-boosters {
  --catch-red: #ff4655;
  min-height: 70vh;
  padding-bottom: 5rem;
  overflow: clip;
  color: #f8fafc;
  background: radial-gradient(circle at 85% 0%, rgba(255, 70, 85, 0.16), transparent 34rem), #0d1118;
}
.catch-boosters [hidden] {
  display: none !important;
}

.boosters-layout {
  padding-top: 3rem;
}

.catch-boosters--opening .boosters-layout {
  padding-top: 1.5rem;
}

.boosters-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: clamp(1.75rem, 4vw, 3rem);
}
.boosters-section-heading h2, .boosters-section-heading .h2 {
  margin: 0.25rem 0 0;
}
.boosters-section-heading--inventory h2, .boosters-section-heading--inventory .h2 {
  max-width: 46rem;
  font-size: clamp(2.35rem, 5.2vw, 4.75rem);
  line-height: 0.94;
  text-transform: uppercase;
}

.boosters-store-link {
  display: inline-flex;
  min-height: 2.9rem;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  padding-inline: 1.15rem;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transition: color 180ms ease, border-color 180ms ease, background 180ms ease, transform 180ms ease;
}
.boosters-store-link span:last-child {
  color: #ff4655;
  font-size: 1rem;
  transition: transform 180ms ease;
}
.boosters-store-link:hover, .boosters-store-link:focus-visible {
  color: #fff;
  border-color: rgba(255, 70, 85, 0.8);
  background: rgba(255, 70, 85, 0.08);
  transform: translateY(-0.15rem);
}
.boosters-store-link:hover span:last-child, .boosters-store-link:focus-visible span:last-child {
  transform: translate(0.12rem, -0.12rem);
}

.boosters-grid {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 2vw, 1.5rem);
}

.boosters-notice,
.boosters-empty,
.booster-presenter__stage {
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(19, 26, 36, 0.92);
  box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.18);
}

.owned-booster {
  position: relative;
  display: grid;
  grid-template-columns: clamp(3rem, 5vw, 4.75rem) minmax(16rem, 0.8fr) minmax(20rem, 1.2fr);
  min-height: clamp(24rem, 34vw, 30rem);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.11);
  background: linear-gradient(105deg, rgba(255, 255, 255, 0.035), transparent 42%), #111822;
  box-shadow: 0 1.75rem 5rem rgba(0, 0, 0, 0.24);
  isolation: isolate;
  transition: border-color 260ms ease, box-shadow 260ms ease, transform 260ms ease;
}
.owned-booster::before, .owned-booster::after {
  position: absolute;
  z-index: -1;
  content: "";
  pointer-events: none;
}
.owned-booster::before {
  inset: 0;
  opacity: 0.7;
  background: radial-gradient(circle at 27% 50%, rgba(255, 70, 85, 0.17), transparent 25rem), repeating-linear-gradient(135deg, transparent 0 4.9rem, rgba(255, 255, 255, 0.018) 5rem 5.08rem);
  transition: opacity 260ms ease;
}
.owned-booster::after {
  top: -34%;
  left: 47%;
  width: 1px;
  height: 170%;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.13), transparent);
  transform: rotate(17deg);
}
.owned-booster:nth-child(even) {
  grid-template-columns: clamp(3rem, 5vw, 4.75rem) minmax(20rem, 1.2fr) minmax(16rem, 0.8fr);
  background: linear-gradient(255deg, rgba(255, 255, 255, 0.035), transparent 42%), #111822;
}
.owned-booster:nth-child(even)::before {
  background: radial-gradient(circle at 76% 50%, rgba(255, 70, 85, 0.17), transparent 25rem), repeating-linear-gradient(45deg, transparent 0 4.9rem, rgba(255, 255, 255, 0.018) 5rem 5.08rem);
}
.owned-booster:nth-child(even)::after {
  left: 54%;
  transform: rotate(-17deg);
}
.owned-booster:nth-child(even) .owned-booster__visual {
  grid-column: 3;
}
.owned-booster:nth-child(even) .owned-booster__body {
  grid-column: 2;
  grid-row: 1;
  border-right: 1px solid rgba(255, 255, 255, 0.07);
  border-left: 0;
}
.owned-booster:nth-child(even) .owned-booster__pack {
  transform: perspective(60rem) rotateY(-7deg) rotateZ(3deg);
}
.owned-booster:nth-child(even):hover .owned-booster__pack {
  transform: perspective(60rem) rotateY(-3deg) rotateZ(1deg) translateY(-0.5rem) scale(1.025);
}
.owned-booster:hover {
  border-color: rgba(255, 70, 85, 0.45);
  box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.34), 0 0 0 1px rgba(255, 70, 85, 0.06);
  transform: translateY(-0.18rem);
}
.owned-booster:hover::before {
  opacity: 1;
}
.owned-booster:hover .owned-booster__pack {
  transform: perspective(60rem) rotateY(3deg) rotateZ(-1deg) translateY(-0.5rem) scale(1.025);
}
.owned-booster:hover .owned-booster__halo {
  opacity: 0.9;
  transform: translate(-50%, -50%) scale(1.08);
}
.owned-booster:hover .owned-booster__signal span {
  background: rgba(255, 70, 85, 0.85);
}
.owned-booster:focus-within {
  border-color: rgba(255, 70, 85, 0.72);
  box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.34), 0 0 0 1px rgba(255, 70, 85, 0.14);
}
.owned-booster__rail {
  position: relative;
  z-index: 3;
  display: flex;
  grid-column: 1;
  grid-row: 1;
  flex-direction: column;
  align-items: center;
  padding: 1.25rem 0.5rem;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(5, 9, 14, 0.42);
}
.owned-booster__rail > span {
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2rem, 3.5vw, 3.25rem);
  line-height: 1;
}
.owned-booster__rail i {
  width: 1px;
  flex: 1;
  margin: 1rem 0;
  background: linear-gradient(to bottom, #ff4655, rgba(255, 255, 255, 0.08));
}
.owned-booster__rail small, .owned-booster__rail .small {
  color: rgba(248, 250, 252, 0.42);
  font-size: 0.57rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.owned-booster__visual {
  position: relative;
  display: grid;
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  place-items: center;
  overflow: hidden;
  padding: clamp(2.5rem, 5vw, 4.5rem);
}
.owned-booster__halo {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(30rem, 92%);
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 50%;
  opacity: 0.65;
  background: radial-gradient(circle, rgba(255, 70, 85, 0.24), rgba(255, 70, 85, 0.05) 42%, transparent 68%);
  transform: translate(-50%, -50%);
  transition: opacity 320ms ease, transform 320ms ease;
}
.owned-booster__halo::before, .owned-booster__halo::after {
  position: absolute;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: inherit;
  content: "";
}
.owned-booster__halo::before {
  inset: 10%;
}
.owned-booster__halo::after {
  inset: 24%;
}
.owned-booster__pack {
  position: relative;
  z-index: 1;
  display: grid;
  width: min(100%, 15rem);
  aspect-ratio: 0.68;
  place-items: center;
  overflow: hidden;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.25);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.08), transparent 45%), #192330;
  box-shadow: 0 2.5rem 4rem rgba(0, 0, 0, 0.46), 0 0 3rem rgba(255, 70, 85, 0.12);
  clip-path: polygon(0 0, 91% 0, 100% 6%, 100% 100%, 9% 100%, 0 94%);
  transform: perspective(60rem) rotateY(7deg) rotateZ(-3deg);
  transition: transform 380ms cubic-bezier(0.2, 0.75, 0.18, 1), box-shadow 380ms ease;
}
.owned-booster__pack::after {
  position: absolute;
  inset: 0.55rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  content: "";
  pointer-events: none;
  clip-path: inherit;
}
.owned-booster__pack img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.owned-booster__pack > span {
  max-width: 12rem;
  padding: 1.5rem;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 0.9;
  text-align: center;
  text-transform: uppercase;
}
.owned-booster__seal {
  position: absolute;
  z-index: 2;
  right: clamp(1rem, 3vw, 2.5rem);
  bottom: clamp(1.5rem, 4vw, 3rem);
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 0.7rem;
  color: rgba(248, 250, 252, 0.74);
  border: 1px solid rgba(255, 255, 255, 0.13);
  background: rgba(7, 12, 18, 0.78);
  backdrop-filter: blur(0.45rem);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.owned-booster__seal i {
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 50%;
  background: #7fe8c1;
  box-shadow: 0 0 0.75rem rgba(127, 232, 193, 0.7);
}
.owned-booster__body {
  position: relative;
  z-index: 2;
  display: flex;
  grid-column: 3;
  grid-row: 1;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: clamp(2.25rem, 6vw, 5.5rem);
  border-left: 1px solid rgba(255, 255, 255, 0.07);
}
.owned-booster__body h3, .owned-booster__body .h3 {
  max-width: 35rem;
  margin: clamp(1rem, 2vw, 1.5rem) 0;
  font-size: clamp(2.75rem, 5vw, 5rem);
  line-height: 0.88;
  text-wrap: balance;
  text-transform: uppercase;
}
.owned-booster__status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  max-width: 38rem;
}
.owned-booster__serial {
  color: rgba(248, 250, 252, 0.3);
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  white-space: nowrap;
}
.owned-booster__details {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  max-width: 38rem;
  margin-top: 0.35rem;
  padding: 1rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.owned-booster__details > span {
  display: flex;
  min-width: min(100%, 11rem);
  flex: 1;
  flex-direction: column;
  gap: 0.1rem;
  padding-right: 1.25rem;
}
.owned-booster__details > span + span {
  padding-left: 1.25rem;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}
.owned-booster__details small, .owned-booster__details .small {
  color: rgba(248, 250, 252, 0.42);
  font-size: 0.61rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
.owned-booster__details strong {
  color: rgba(248, 250, 252, 0.86);
  font-size: 0.9rem;
  font-weight: 600;
}
.owned-booster__count {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: #7fe8c1;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}
.owned-booster__count i {
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0.75rem rgba(127, 232, 193, 0.65);
}
.owned-booster__action {
  margin-top: clamp(1.5rem, 3vw, 2.25rem);
}
.owned-booster__open {
  display: inline-flex;
  min-width: min(100%, 15rem);
  min-height: 3.15rem;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 0.85rem 1.1rem;
  clip-path: polygon(0 0, calc(100% - 0.75rem) 0, 100% 0.75rem, 100% 100%, 0 100%);
}
.owned-booster__open span:last-child {
  font-size: 1rem;
  transition: transform 180ms ease;
}
.owned-booster__open:hover span:last-child, .owned-booster__open:focus-visible span:last-child {
  transform: translateX(0.25rem);
}
.owned-booster__feedback {
  margin: 0.8rem 0 0;
  color: rgba(248, 250, 252, 0.68);
  font-size: 0.9rem;
}
.owned-booster__feedback.is-error {
  color: #ff8892;
}
.owned-booster__signal {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  display: flex;
  align-items: flex-end;
  gap: 0.22rem;
}
.owned-booster__signal span {
  width: 0.18rem;
  height: 0.45rem;
  background: rgba(255, 255, 255, 0.17);
  transition: background 240ms ease;
}
.owned-booster__signal span:nth-child(2) {
  height: 0.7rem;
}
.owned-booster__signal span:nth-child(3) {
  height: 1rem;
}

.boosters-notice,
.boosters-empty {
  padding: clamp(1.5rem, 4vw, 3rem);
}
.boosters-notice--error,
.boosters-empty--error {
  border-color: rgba(255, 70, 85, 0.55);
}

.boosters-history {
  width: 100%;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  padding-top: clamp(1.4rem, 3vw, 2rem);
  border-top: 1px solid rgba(255, 255, 255, 0.09);
}
.boosters-history__heading {
  align-items: flex-end;
  margin-bottom: 0.35rem;
}
.boosters-history__heading .catch-eyebrow {
  color: rgba(255, 70, 85, 0.58);
}
.boosters-history__heading h2, .boosters-history__heading .h2 {
  margin-top: 0.15rem;
  color: rgba(248, 250, 252, 0.78);
  font-size: clamp(1.75rem, 3vw, 2.45rem);
  line-height: 1;
  text-transform: uppercase;
}
.boosters-history__heading p {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  margin: 0 0 0.2rem;
  color: rgba(248, 250, 252, 0.38);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.boosters-history__heading p span:last-child {
  color: rgba(255, 70, 85, 0.58);
  font-size: 0.9rem;
}
.boosters-history__timeline {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 18rem;
  margin: 0;
  padding: 0 0 0.8rem;
  overflow-x: auto;
  overflow-y: hidden;
  list-style: none;
  background: linear-gradient(to bottom, transparent calc(50% - 0.5px), rgba(255, 255, 255, 0.12) calc(50% - 0.5px), rgba(255, 255, 255, 0.12) calc(50% + 0.5px), transparent calc(50% + 0.5px));
  overscroll-behavior-inline: contain;
  scrollbar-color: rgba(255, 70, 85, 0.32) rgba(255, 255, 255, 0.045);
  scrollbar-width: thin;
  scroll-snap-type: x proximity;
}
.boosters-history__timeline::-webkit-scrollbar {
  height: 0.25rem;
}
.boosters-history__timeline::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.045);
}
.boosters-history__timeline::-webkit-scrollbar-thumb {
  background: rgba(255, 70, 85, 0.32);
}
.boosters-history__event {
  min-width: 0;
  flex: 1 0 clamp(15rem, 25%, 19rem);
  scroll-snap-align: start;
}
.boosters-history__item {
  display: grid;
  grid-template-rows: minmax(0, 1fr) 2.75rem minmax(0, 1fr);
  width: 100%;
  height: 100%;
  padding-inline: clamp(0.75rem, 2vw, 1.5rem);
  color: rgba(248, 250, 252, 0.66);
  text-align: left;
  text-decoration: none;
  transition: color 180ms ease;
}
.boosters-history__item strong {
  display: block;
  max-width: 16rem;
  color: rgba(248, 250, 252, 0.68);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.15;
  text-wrap: balance;
  transition: color 180ms ease;
}
.boosters-history__item small, .boosters-history__item .small {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.75rem;
  margin-top: 0.35rem;
  color: rgba(248, 250, 252, 0.36);
  font-size: 0.64rem;
}
.boosters-history__item small > span, .boosters-history__item .small > span {
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.boosters-history__item:hover {
  color: rgba(248, 250, 252, 0.9);
}
.boosters-history__item:hover strong {
  color: #fff;
}
.boosters-history__item:hover .boosters-history__marker i {
  border-color: rgba(255, 70, 85, 0.95);
  background: #ff4655;
  box-shadow: 0 0 0.9rem rgba(255, 70, 85, 0.45);
}
.boosters-history__item:hover .boosters-history__action {
  color: rgba(248, 250, 252, 0.72);
}
.boosters-history__item:hover .boosters-history__action span {
  transform: translate(0.1rem, -0.1rem);
}
.boosters-history__item:focus-visible {
  color: rgba(248, 250, 252, 0.9);
  outline: 1px solid rgba(255, 70, 85, 0.55);
  outline-offset: 3px;
}
.boosters-history__marker {
  position: relative;
  display: grid;
  grid-row: 2;
  place-items: center;
}
.boosters-history__marker::after {
  position: absolute;
  bottom: 50%;
  width: 1px;
  height: 1.35rem;
  content: "";
  background: linear-gradient(to top, rgba(255, 255, 255, 0.18), transparent);
}
.boosters-history__marker i {
  position: relative;
  z-index: 1;
  width: 0.7rem;
  height: 0.7rem;
  border: 2px solid rgba(248, 250, 252, 0.3);
  border-radius: 50%;
  background: #0d1118;
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}
.boosters-history__content {
  display: block;
  grid-row: 1;
  min-width: 0;
  align-self: end;
  padding-bottom: 1.3rem;
}
.boosters-history__index {
  display: block;
  margin-bottom: 0.3rem;
  color: rgba(248, 250, 252, 0.16);
  font-family: "League Gothic", sans-serif;
  font-size: 2.15rem;
  line-height: 0.8;
}
.boosters-history__action {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  margin-top: 0.75rem;
  color: rgba(248, 250, 252, 0.28);
  font-size: 0.61rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  transition: color 180ms ease;
}
.boosters-history__action span {
  color: rgba(255, 70, 85, 0.5);
  font-size: 0.8rem;
  transition: transform 180ms ease;
}
.boosters-history__event:nth-child(even) .boosters-history__content {
  grid-row: 3;
  align-self: start;
  padding: 1.3rem 0 0;
}
.boosters-history__event:nth-child(even) .boosters-history__marker::after {
  top: 50%;
  bottom: auto;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.18), transparent);
}

.booster-mode-modal .modal-dialog {
  max-width: min(42rem, 100% - 2rem);
}
.booster-mode-modal .modal-content {
  color: #f8fafc;
  border: 1px solid rgba(255, 255, 255, 0.13);
  background: #111924;
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.42);
}
.booster-mode-modal .modal-header,
.booster-mode-modal .modal-body {
  padding: clamp(1.15rem, 3vw, 1.8rem);
}
.booster-mode-modal .modal-header {
  align-items: flex-start;
  border-color: rgba(255, 255, 255, 0.09);
}
.booster-mode-modal .modal-title {
  margin-top: 0.2rem;
  font-size: clamp(1.8rem, 6vw, 2.8rem);
  line-height: 1;
  text-transform: uppercase;
}
.booster-mode-modal .modal-body > section > p:first-child {
  max-width: 35rem;
  margin: 0;
  color: rgba(248, 250, 252, 0.68);
}

.booster-instance-options {
  display: grid;
  gap: 0.7rem;
  max-height: min(42vh, 24rem);
  margin-top: 1.25rem;
  padding-right: 0.25rem;
  overflow-y: auto;
  scrollbar-color: rgba(255, 70, 85, 0.65) rgba(255, 255, 255, 0.06);
}

.booster-instance-option {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.45rem 1rem;
  min-height: 4.75rem;
  padding: 1rem 3.25rem 1rem 1rem;
  color: #f8fafc;
  text-align: left;
  border: 1px solid rgba(255, 255, 255, 0.13);
  background: linear-gradient(110deg, rgba(255, 255, 255, 0.045), transparent 68%), #0d151f;
  transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}
.booster-instance-option:hover:not(:disabled), .booster-instance-option:focus-visible {
  border-color: rgba(255, 70, 85, 0.72);
  outline: 0;
  transform: translateY(-1px);
}
.booster-instance-option.is-selected {
  border-color: #ff4655;
  background: linear-gradient(110deg, rgba(255, 70, 85, 0.16), transparent 72%), #101823;
  box-shadow: inset 0.2rem 0 #ff4655;
}
.booster-instance-option:disabled {
  cursor: wait;
  opacity: 0.62;
}
.booster-instance-option__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  grid-column: 1/-1;
}
.booster-instance-option__heading strong {
  font-size: 0.82rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.booster-instance-option__heading small, .booster-instance-option__heading .small {
  color: #57e2be;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.booster-instance-option__date {
  grid-column: 1/-1;
  color: rgba(248, 250, 252, 0.67);
  font-size: 0.86rem;
  font-variant-numeric: tabular-nums;
}
.booster-instance-option__marker {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.15rem;
  height: 1.15rem;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 50%;
  transform: translateY(-50%);
}
.booster-instance-option__marker::after {
  position: absolute;
  inset: 0.22rem;
  border-radius: inherit;
  background: #ff4655;
  transform: scale(0);
  transition: transform 160ms ease;
  content: "";
}
.booster-instance-option.is-selected .booster-instance-option__marker::after {
  transform: scale(1);
}

.booster-instance-continue {
  display: flex;
  justify-content: space-between;
  width: 100%;
  min-height: 3rem;
  margin-top: 1rem;
}

.booster-selected-instance {
  margin: 0.85rem 0 0 !important;
  padding: 0.7rem 0.85rem;
  color: rgba(248, 250, 252, 0.78) !important;
  font-size: 0.82rem;
  font-variant-numeric: tabular-nums;
  border-left: 0.18rem solid #57e2be;
  background: rgba(87, 226, 190, 0.07);
}

.booster-mode-back {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  margin-top: 0.65rem;
  padding: 0;
  color: rgba(248, 250, 252, 0.7);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border: 0;
  background: transparent;
}
.booster-mode-back:hover, .booster-mode-back:focus-visible {
  color: #fff;
}
.booster-mode-back:focus-visible {
  outline: 2px solid #ff4655;
  outline-offset: 0.25rem;
}

.booster-modal-status {
  margin: 1rem 0 0;
  color: #57e2be;
  font-size: 0.82rem;
  font-weight: 700;
}

.booster-mode-options {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

.booster-mode-option {
  padding: 1.15rem;
  color: #f8fafc;
  text-align: left;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.045);
}
.booster-mode-option span {
  display: block;
  margin-top: 0.2rem;
  color: rgba(248, 250, 252, 0.62);
}
.booster-mode-option:hover:not(:disabled), .booster-mode-option:focus-visible {
  border-color: #ff4655;
  background: rgba(255, 70, 85, 0.12);
}
.booster-mode-option:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.booster-presenter {
  min-height: 62vh;
}
.booster-presenter__stage {
  position: relative;
  min-width: 0;
  min-height: 38rem;
  padding: clamp(1.5rem, 5vw, 4rem);
  overflow: hidden;
  text-align: center;
  isolation: isolate;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.025), transparent 42%), #0b111a;
}
.booster-presenter__stage::before, .booster-presenter__stage::after {
  position: absolute;
  z-index: -1;
  content: "";
  pointer-events: none;
}
.booster-presenter__stage::before {
  inset: 0;
  opacity: 0.23;
  background-image: linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
  background-size: 4rem 4rem;
  mask-image: linear-gradient(to bottom, #000, transparent 80%);
}
.booster-presenter__stage::after {
  top: -5rem;
  right: -8rem;
  width: 23rem;
  height: 23rem;
  border: 1px solid rgba(255, 70, 85, 0.22);
  transform: rotate(35deg);
}
.booster-presenter__stage > h2, .booster-presenter__stage > .h2 {
  max-width: 100%;
  margin: 0.3rem auto 0.4rem;
  font-size: clamp(2rem, 5vw, 4.25rem);
  line-height: 1;
  overflow-wrap: anywhere;
  text-wrap: balance;
  text-transform: uppercase;
}
.booster-presenter__stage > p {
  max-width: 42rem;
  margin: 0 auto;
  color: rgba(248, 250, 252, 0.66);
}
.booster-presenter__ambient {
  position: absolute;
  z-index: -1;
  top: 48%;
  left: 50%;
  width: min(75vw, 52rem);
  aspect-ratio: 1;
  border-radius: 50%;
  opacity: 0.9;
  pointer-events: none;
  background: radial-gradient(circle, rgba(255, 70, 85, 0.18), rgba(87, 226, 190, 0.04) 42%, transparent 68%);
  transform: translate(-50%, -50%);
  filter: blur(1px);
}
.booster-presenter__pulse {
  width: 5rem;
  height: 5rem;
  margin: 6rem auto 3rem;
  border: 0.35rem solid rgba(255, 255, 255, 0.1);
  border-top-color: #ff4655;
  border-radius: 50%;
  animation: booster-spin 0.9s linear infinite;
}
.booster-presenter__actions {
  margin-top: 2rem;
}

.booster-classic-atmosphere {
  position: absolute;
  z-index: 4;
  inset: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}
.booster-classic-atmosphere::before, .booster-classic-atmosphere::after {
  position: absolute;
  inset: 0;
  opacity: 0;
  content: "";
}
.booster-classic-atmosphere::before {
  background: linear-gradient(118deg, rgba(255, 70, 85, 0.16) 0 17%, transparent 17% 72%, rgba(79, 227, 216, 0.08) 72%), radial-gradient(circle at 50% 56%, transparent 0 19%, rgba(7, 11, 18, 0.42) 58%, rgba(2, 5, 9, 0.84) 100%);
}
.booster-classic-atmosphere::after {
  background: #fff;
  mix-blend-mode: screen;
}
.booster-classic-atmosphere__grid {
  position: absolute;
  inset: -12%;
  opacity: 0;
  background-image: linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(118deg, transparent 0 48.8%, rgba(255, 70, 85, 0.24) 49% 49.2%, transparent 49.4%);
  background-size: 3rem 3rem, 3rem 3rem, 100% 100%;
  transform: perspective(50rem) rotateX(58deg) translateY(34%) scale(1.35);
  transform-origin: 50% 70%;
}
.booster-classic-atmosphere__sweep {
  position: absolute;
  top: -24%;
  bottom: -24%;
  left: -38%;
  width: 42%;
  opacity: 0;
  transform: translateX(-145%) skewX(-17deg);
}
.booster-classic-atmosphere__sweep--red {
  background: linear-gradient(90deg, transparent, rgba(255, 70, 85, 0.92) 18%, #ff4655 76%, rgba(255, 255, 255, 0.92));
  box-shadow: 1.5rem 0 4rem rgba(255, 70, 85, 0.38);
}
.booster-classic-atmosphere__sweep--white {
  width: 18%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.96));
  filter: blur(0.08rem);
}
.booster-classic-atmosphere__scan {
  display: none;
}
.booster-classic-atmosphere__ring {
  position: absolute;
  top: 56%;
  left: 50%;
  width: min(62vw, 31rem);
  aspect-ratio: 1;
  opacity: 0;
  border: 0.12rem solid rgba(255, 70, 85, 0.72);
  box-shadow: inset 0 0 1.4rem rgba(255, 70, 85, 0.08), 0 0 1.4rem rgba(255, 70, 85, 0.12);
  transform: translate(-50%, -50%) rotate(45deg) scale(0.45);
}
.booster-classic-atmosphere__ring--inner {
  width: min(42vw, 20rem);
  border-color: rgba(255, 255, 255, 0.82);
  clip-path: polygon(0 0, 42% 0, 48% 6%, 100% 6%, 100% 58%, 94% 64%, 94% 100%, 36% 100%, 30% 94%, 0 94%);
  transform: translate(-50%, -50%) scale(0.55);
}
.booster-classic-atmosphere__crosshair {
  position: absolute;
  top: 56%;
  left: 50%;
  width: min(72vw, 37rem);
  height: min(54vw, 27rem);
  opacity: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.34);
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  transform: translate(-50%, -50%) scaleX(0.35);
}
.booster-classic-atmosphere__crosshair::before, .booster-classic-atmosphere__crosshair::after {
  position: absolute;
  top: -0.35rem;
  bottom: -0.35rem;
  width: 0.7rem;
  border-top: 0.18rem solid #ff4655;
  border-bottom: 0.18rem solid #ff4655;
  content: "";
}
.booster-classic-atmosphere__crosshair::before {
  left: 0;
  border-left: 0.18rem solid #ff4655;
}
.booster-classic-atmosphere__crosshair::after {
  right: 0;
  border-right: 0.18rem solid #ff4655;
}
.booster-classic-atmosphere__corner {
  position: absolute;
  width: clamp(3.5rem, 8vw, 6.5rem);
  height: clamp(3.5rem, 8vw, 6.5rem);
  opacity: 0;
  border-color: rgba(255, 255, 255, 0.7);
  border-style: solid;
  filter: drop-shadow(0 0 0.65rem rgba(255, 70, 85, 0.22));
}
.booster-classic-atmosphere__corner--tl {
  --classic-corner-x: 1.5rem;
  --classic-corner-y: 1.5rem;
  top: 16%;
  left: 10%;
  border-width: 0.15rem 0 0 0.15rem;
}
.booster-classic-atmosphere__corner--tr {
  --classic-corner-x: -1.5rem;
  --classic-corner-y: 1.5rem;
  top: 16%;
  right: 10%;
  border-width: 0.15rem 0.15rem 0 0;
}
.booster-classic-atmosphere__corner--bl {
  --classic-corner-x: 1.5rem;
  --classic-corner-y: -1.5rem;
  bottom: 12%;
  left: 10%;
  border-width: 0 0 0.15rem 0.15rem;
}
.booster-classic-atmosphere__corner--br {
  --classic-corner-x: -1.5rem;
  --classic-corner-y: -1.5rem;
  right: 10%;
  bottom: 12%;
  border-width: 0 0.15rem 0.15rem 0;
}
.booster-classic-atmosphere__telemetry {
  position: absolute;
  top: 28%;
  opacity: 0;
  color: rgba(255, 255, 255, 0.76);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: clamp(0.48rem, 1vw, 0.65rem);
  font-weight: 800;
  letter-spacing: 0.17em;
  line-height: 1;
  text-transform: uppercase;
}
.booster-classic-atmosphere__telemetry::before {
  display: inline-block;
  width: 0.45rem;
  height: 0.45rem;
  margin-right: 0.45rem;
  background: #ff4655;
  content: "";
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
}
.booster-classic-atmosphere__telemetry--left {
  --classic-telemetry-x: -1.2rem;
  left: 12%;
}
.booster-classic-atmosphere__telemetry--right {
  --classic-telemetry-x: 1.2rem;
  right: 12%;
}
.booster-classic-atmosphere__energy {
  position: absolute;
  bottom: 12%;
  left: 50%;
  display: flex;
  width: min(54vw, 25rem);
  height: 0.38rem;
  gap: 0.22rem;
  opacity: 0;
  transform: translateX(-50%);
}
.booster-classic-atmosphere__energy i {
  flex: 1;
  opacity: 0.2;
  background: rgba(255, 255, 255, 0.2);
  clip-path: polygon(0.25rem 0, 100% 0, calc(100% - 0.25rem) 100%, 0 100%);
}
.booster-classic-atmosphere__horizon {
  position: absolute;
  top: 70%;
  left: 50%;
  width: min(96vw, 62rem);
  height: 0.1rem;
  opacity: 0;
  background: linear-gradient(90deg, transparent, rgba(255, 70, 85, 0.5) 22%, rgba(255, 255, 255, 0.72) 50%, rgba(255, 70, 85, 0.5) 78%, transparent);
  box-shadow: 0 0 1.6rem rgba(255, 70, 85, 0.4);
  transform: translate(-50%, -50%);
}
.booster-classic-atmosphere__depth {
  position: absolute;
  inset: -20%;
  opacity: 0;
  background-image: linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: 7rem 100%;
  mask-image: radial-gradient(circle at 50% 52%, #000 0 18%, transparent 62%);
  transform: perspective(60rem) rotateX(64deg) scale(1.6);
  transform-origin: 50% 78%;
}
.booster-classic-atmosphere__ticks {
  position: absolute;
  top: 50%;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  height: min(64vh, 26rem);
  opacity: 0;
  transform: translateY(-50%);
}
.booster-classic-atmosphere__ticks i {
  width: 0.85rem;
  height: 0.06rem;
  background: rgba(255, 255, 255, 0.34);
}
.booster-classic-atmosphere__ticks i:nth-child(5n+1) {
  width: 1.7rem;
  background: var(--classic-reveal-accent, rgba(255, 70, 85, 0.8));
}
.booster-classic-atmosphere__ticks--left {
  left: 4%;
  align-items: flex-start;
}
.booster-classic-atmosphere__ticks--right {
  right: 4%;
  align-items: flex-end;
}
.booster-classic-atmosphere__motes {
  position: absolute;
  inset: 0;
  opacity: 0;
}
.booster-classic-atmosphere__motes i {
  position: absolute;
  bottom: -2rem;
  left: var(--mote-x, 50%);
  width: var(--mote-size, 0.16rem);
  height: var(--mote-size, 0.16rem);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 0 0.5rem rgba(255, 255, 255, 0.42);
}
.booster-classic-atmosphere__motes i:nth-child(1) {
  --mote-x: 7%;
  --mote-size: 0.17rem;
  --mote-delay: -1.4s;
  --mote-duration: 10.7s;
}
.booster-classic-atmosphere__motes i:nth-child(2) {
  --mote-x: 14.6%;
  --mote-size: 0.22rem;
  --mote-delay: -2.8s;
  --mote-duration: 12.4s;
}
.booster-classic-atmosphere__motes i:nth-child(3) {
  --mote-x: 22.2%;
  --mote-size: 0.27rem;
  --mote-delay: -4.2s;
  --mote-duration: 14.1s;
}
.booster-classic-atmosphere__motes i:nth-child(4) {
  --mote-x: 29.8%;
  --mote-size: 0.12rem;
  --mote-delay: -5.6s;
  --mote-duration: 15.8s;
}
.booster-classic-atmosphere__motes i:nth-child(5) {
  --mote-x: 37.4%;
  --mote-size: 0.17rem;
  --mote-delay: -7s;
  --mote-duration: 9s;
}
.booster-classic-atmosphere__motes i:nth-child(6) {
  --mote-x: 45%;
  --mote-size: 0.22rem;
  --mote-delay: -8.4s;
  --mote-duration: 10.7s;
}
.booster-classic-atmosphere__motes i:nth-child(7) {
  --mote-x: 52.6%;
  --mote-size: 0.27rem;
  --mote-delay: -9.8s;
  --mote-duration: 12.4s;
}
.booster-classic-atmosphere__motes i:nth-child(8) {
  --mote-x: 60.2%;
  --mote-size: 0.12rem;
  --mote-delay: -11.2s;
  --mote-duration: 14.1s;
}
.booster-classic-atmosphere__motes i:nth-child(9) {
  --mote-x: 67.8%;
  --mote-size: 0.17rem;
  --mote-delay: -12.6s;
  --mote-duration: 15.8s;
}
.booster-classic-atmosphere__motes i:nth-child(10) {
  --mote-x: 75.4%;
  --mote-size: 0.22rem;
  --mote-delay: -14s;
  --mote-duration: 9s;
}
.booster-classic-atmosphere__motes i:nth-child(11) {
  --mote-x: 83%;
  --mote-size: 0.27rem;
  --mote-delay: -15.4s;
  --mote-duration: 10.7s;
}
.booster-classic-atmosphere__motes i:nth-child(12) {
  --mote-x: 90.6%;
  --mote-size: 0.12rem;
  --mote-delay: -16.8s;
  --mote-duration: 12.4s;
}
.booster-classic-atmosphere__charge {
  position: absolute;
  top: 54%;
  left: 50%;
  width: min(52vw, 21rem);
  aspect-ratio: 1;
  opacity: 0;
  border: 0.14rem solid var(--classic-reveal-accent, #ff4655);
  border-radius: 50%;
  box-shadow: inset 0 0 2.4rem var(--classic-reveal-glow, rgba(255, 70, 85, 0.25)), 0 0 2rem var(--classic-reveal-glow, rgba(255, 70, 85, 0.25));
  transform: translate(-50%, -50%) scale(1.7);
}
.booster-classic-atmosphere__shockwave {
  position: absolute;
  top: 54%;
  left: 50%;
  width: min(40vw, 17rem);
  aspect-ratio: 1;
  opacity: 0;
  border: 0.16rem solid var(--classic-reveal-accent, #ff4655);
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(0.25);
}
.booster-classic-atmosphere__flare {
  position: absolute;
  top: 56%;
  left: 50%;
  width: min(82vw, 50rem);
  aspect-ratio: 1;
  opacity: 0;
  border-radius: 50%;
  background: radial-gradient(circle, #fff 0 4%, rgba(255, 70, 85, 0.78) 8%, rgba(255, 70, 85, 0.3) 18%, rgba(79, 227, 216, 0.12) 35%, transparent 66%);
  transform: translate(-50%, -50%) scale(0.2);
  filter: blur(0.12rem);
}
.booster-classic-atmosphere__shard {
  position: absolute;
  top: 54%;
  left: 50%;
  width: 0.22rem;
  height: 3.4rem;
  opacity: 0;
  background: linear-gradient(to bottom, #fff, #ff4655, transparent);
  clip-path: polygon(50% 0, 100% 84%, 50% 100%, 0 84%);
  transform-origin: 50% 100%;
}
.booster-classic-atmosphere__shard--one {
  --classic-shard-x: -9rem;
  --classic-shard-y: -7rem;
  --classic-shard-angle: -48deg;
}
.booster-classic-atmosphere__shard--two {
  --classic-shard-x: 10rem;
  --classic-shard-y: -6rem;
  --classic-shard-angle: 52deg;
}
.booster-classic-atmosphere__shard--three {
  --classic-shard-x: -11rem;
  --classic-shard-y: 5rem;
  --classic-shard-angle: -126deg;
}
.booster-classic-atmosphere__shard--four {
  --classic-shard-x: 11rem;
  --classic-shard-y: 6rem;
  --classic-shard-angle: 128deg;
}
.booster-classic-atmosphere__shard--five {
  --classic-shard-x: -4rem;
  --classic-shard-y: -11rem;
  --classic-shard-angle: -18deg;
}
.booster-classic-atmosphere__shard--six {
  --classic-shard-x: 4rem;
  --classic-shard-y: 11rem;
  --classic-shard-angle: 164deg;
}

.booster-audio-controls {
  position: absolute;
  z-index: 6;
  top: 1.25rem;
  right: 1.25rem;
  display: flex;
  align-items: stretch;
  gap: 0.55rem;
  --booster-volume-accent: #ff4655;
}
.booster-audio-controls[hidden] {
  display: none;
}

.booster-opening-volume {
  display: grid;
  grid-template-columns: auto minmax(5.5rem, 7.5rem) 2.5rem;
  min-height: 2.75rem;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 0.7rem;
  color: rgba(248, 250, 252, 0.78);
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border: 1px solid rgba(248, 250, 252, 0.2);
  background: rgba(9, 15, 24, 0.9);
  box-shadow: 0 0.8rem 1.8rem rgba(0, 0, 0, 0.3);
}
.booster-opening-volume__range {
  width: 7.5rem;
  height: 2rem;
  margin: 0;
  accent-color: var(--booster-volume-accent);
  cursor: pointer;
}
.booster-opening-volume__range:focus-visible {
  outline: 0.18rem solid #fff;
  outline-offset: 0.12rem;
}
.booster-opening-volume__value {
  min-width: 2.5rem;
  color: #fff;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.booster-opening-music {
  position: relative;
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  gap: 0.55rem;
  padding: 0.65rem 0.85rem;
  border: 1px solid rgba(255, 70, 85, 0.58);
  background: rgba(9, 15, 24, 0.9);
  box-shadow: inset 0.2rem 0 #ff4655, 0 0.8rem 1.8rem rgba(0, 0, 0, 0.3);
  color: #fff;
  font: inherit;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
  clip-path: polygon(0.55rem 0, 100% 0, calc(100% - 0.55rem) 100%, 0 100%);
  transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}
.booster-opening-music:hover, .booster-opening-music:focus-visible {
  border-color: #ff6b77;
  background: rgba(255, 70, 85, 0.13);
  transform: translateY(-0.12rem);
}
.booster-opening-music:focus-visible {
  outline: 0.18rem solid #fff;
  outline-offset: 0.18rem;
}
.booster-opening-music svg {
  width: 1.2rem;
  height: 1.2rem;
  overflow: visible;
}
.booster-opening-music svg > path:first-child {
  fill: currentColor;
  stroke: none;
}
.booster-opening-music__waves, .booster-opening-music__mute {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-width: 1.8;
}
.booster-opening-music__mute {
  opacity: 0;
}
.booster-opening-music.is-muted {
  color: rgba(248, 250, 252, 0.68);
  border-color: rgba(248, 250, 252, 0.22);
  box-shadow: none;
}
.booster-opening-music.is-muted .booster-opening-music__waves {
  opacity: 0;
}
.booster-opening-music.is-muted .booster-opening-music__mute {
  opacity: 1;
}

.booster-uwu-preview {
  display: inline-flex;
  margin: 0.8rem auto 0;
  padding: 0.4rem 0.7rem;
  color: #07151c;
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: #67f5e7;
  clip-path: polygon(0.45rem 0, 100% 0, calc(100% - 0.45rem) 100%, 0 100%);
}

.booster-uwu-sound {
  position: relative;
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  gap: 0.55rem;
  padding: 0.65rem 0.85rem;
  color: #07151c;
  font: inherit;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
  border: 1px solid rgba(255, 255, 255, 0.72);
  background: linear-gradient(110deg, #67f5e7, #fff 52%, #ffb7e6);
  box-shadow: 0 0.8rem 1.8rem rgba(0, 0, 0, 0.3), 0 0 1.4rem rgba(103, 245, 231, 0.18);
  clip-path: polygon(0.55rem 0, 100% 0, calc(100% - 0.55rem) 100%, 0 100%);
  transition: filter 180ms ease, transform 180ms ease;
}
.booster-uwu-sound[hidden] {
  display: none;
}
.booster-uwu-sound:hover, .booster-uwu-sound:focus-visible {
  filter: brightness(1.08);
  transform: translateY(-0.12rem);
}
.booster-uwu-sound:focus-visible {
  outline: 0.18rem solid #fff;
  outline-offset: 0.18rem;
}
.booster-uwu-sound svg {
  width: 1.2rem;
  height: 1.2rem;
  overflow: visible;
}
.booster-uwu-sound svg > path:first-child {
  fill: currentColor;
  stroke: none;
}
.booster-uwu-sound__waves, .booster-uwu-sound__mute {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-width: 1.8;
}
.booster-uwu-sound__mute {
  opacity: 0;
}
.booster-uwu-sound.is-muted {
  color: rgba(255, 255, 255, 0.9);
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(9, 18, 31, 0.82);
}
.booster-uwu-sound.is-muted .booster-uwu-sound__waves {
  opacity: 0;
}
.booster-uwu-sound.is-muted .booster-uwu-sound__mute {
  opacity: 1;
}

.booster-uwu-celebration {
  position: absolute;
  z-index: 4;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.booster-uwu-particle-wave {
  position: absolute;
  inset: 0;
  display: block;
}

.booster-uwu-particle {
  position: absolute;
  top: 54%;
  left: 50%;
  display: block;
  width: 0.85rem;
  aspect-ratio: 1;
  opacity: 0;
  background: #ffe477;
  filter: drop-shadow(0 0 0.55rem currentColor);
  animation: booster-uwu-particle-flight var(--uwu-particle-duration) cubic-bezier(0.12, 0.72, 0.25, 1) var(--uwu-particle-delay) both;
}
.booster-uwu-particle--star {
  color: #ffe477;
  clip-path: polygon(50% 0, 61% 38%, 100% 50%, 61% 62%, 50% 100%, 39% 62%, 0 50%, 39% 38%);
}
.booster-uwu-particle--heart {
  width: 1rem;
  color: #ff7dcc;
  background: #ff7dcc;
  clip-path: polygon(50% 88%, 10% 50%, 7% 27%, 19% 12%, 37% 12%, 50% 28%, 63% 12%, 81% 12%, 93% 27%, 90% 50%);
}
.booster-uwu-particle--petal {
  width: 0.75rem;
  color: #ffb7e6;
  background: linear-gradient(145deg, #fff, #ff9ed6);
  border-radius: 85% 12% 85% 12%;
}
.booster-uwu-particle--bubble {
  width: 1.15rem;
  color: #67f5e7;
  border: 0.12rem solid #67f5e7;
  border-radius: 50%;
  background: rgba(103, 245, 231, 0.1);
}
.booster-uwu-particle--note {
  color: #bca7ff;
  background: transparent;
}
.booster-uwu-particle--note::before {
  content: "♪";
  font-size: 1.2rem;
  font-weight: 900;
  line-height: 1;
}

.booster-uwu-onomatopoeia__glyph {
  display: block;
  font-size: 1.55em;
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 0.95;
  -webkit-text-stroke: 0.055em #fff;
  paint-order: stroke fill;
}

.booster-uwu-onomatopoeia__romaji {
  display: block;
  margin-top: 0.12em;
  opacity: 0.72;
  font-size: 0.62em;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: lowercase;
}

.booster-uwu-onomatopoeia {
  position: absolute;
  z-index: 2;
  top: var(--uwu-pop-top);
  left: var(--uwu-pop-left);
  display: block;
  max-width: min(13rem, 72vw);
  padding: 0.48rem 0.82rem 0.56rem;
  overflow-wrap: anywhere;
  color: #08131c;
  font-size: clamp(0.78rem, 1.8vw, 1.05rem);
  font-weight: 900;
  letter-spacing: 0.055em;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  border: 1px solid rgba(255, 255, 255, 0.78);
  background: linear-gradient(110deg, #67f5e7, #fff 52%, #ffb7e6);
  box-shadow: 0 0.7rem 1.6rem rgba(0, 0, 0, 0.3), 0 0 1rem rgba(255, 125, 204, 0.25);
  clip-path: polygon(0.5rem 0, 100% 0, calc(100% - 0.5rem) calc(100% - 0.35rem), 58% calc(100% - 0.35rem), 50% 100%, 43% calc(100% - 0.35rem), 0 calc(100% - 0.35rem));
  opacity: 0;
  animation: booster-uwu-onomatopoeia-pop 1.85s cubic-bezier(0.16, 0.84, 0.24, 1) both;
}
.booster-uwu-onomatopoeia--2 {
  color: #fff;
  background: linear-gradient(110deg, #d950a5, #9b6ee9);
}
.booster-uwu-onomatopoeia--3 {
  background: linear-gradient(110deg, #ffe477, #fff3b5 54%, #ff9ed6);
}
.booster-uwu-onomatopoeia--4 {
  color: #fff;
  background: linear-gradient(110deg, #15233a, #263a5b);
  box-shadow: 0 0.7rem 1.6rem rgba(0, 0, 0, 0.34), 0 0 1rem rgba(103, 245, 231, 0.32);
}

.booster-uwu-atmosphere {
  position: absolute;
  z-index: -1;
  inset: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 280ms ease-out;
}
.booster-uwu-atmosphere::after {
  position: absolute;
  inset: -20%;
  opacity: 0;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.88) 0 4%, rgba(103, 245, 231, 0.38) 13%, rgba(255, 125, 204, 0.18) 28%, transparent 52%);
  content: "";
  transform: scale(0.3);
}
.booster-uwu-atmosphere__burst {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(104vw, 76rem);
  aspect-ratio: 1;
  opacity: 0.13;
  background: repeating-conic-gradient(from 0deg, rgba(255, 125, 204, 0.5) 0 4deg, transparent 4deg 12deg, rgba(103, 245, 231, 0.32) 12deg 16deg, transparent 16deg 26deg);
  transform: translate(-50%, -50%) rotate(0deg);
  mask-image: radial-gradient(circle, #000 0 26%, transparent 68%);
  animation: booster-uwu-burst-spin 28s linear infinite;
}
.booster-uwu-atmosphere__joy-frame {
  position: absolute;
  z-index: 3;
  inset: 0.55rem;
  padding: 0.15rem;
  opacity: 0.38;
  background: conic-gradient(from 0deg, #67f5e7, #ffe477, #ff7dcc, #bca7ff, #67f5e7);
  filter: drop-shadow(0 0 0.65rem rgba(255, 125, 204, 0.45));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask-composite: exclude;
  pointer-events: none;
  animation: booster-uwu-joy-frame 3.4s ease-in-out infinite;
}
.booster-uwu-atmosphere__confetti {
  position: absolute;
  inset: -22% -8%;
  opacity: 0.28;
  background-image: radial-gradient(circle, #ffe477 0 0.16rem, transparent 0.18rem), radial-gradient(circle, #67f5e7 0 0.13rem, transparent 0.15rem), radial-gradient(circle, #ff7dcc 0 0.18rem, transparent 0.2rem);
  background-position: 0 0, 3.2rem 3.8rem, 6.1rem 1.8rem;
  background-size: 9.6rem 10.4rem, 11.2rem 9.8rem, 12.4rem 11.6rem;
  transform: translate3d(0, -7%, 0) rotate(-2deg);
  animation: booster-uwu-confetti-rain 10.5s linear infinite;
}
.booster-uwu-atmosphere__ring {
  position: absolute;
  width: clamp(10rem, 24vw, 20rem);
  aspect-ratio: 1;
  border: 1px solid rgba(103, 245, 231, 0.48);
  transform: rotate(35deg);
  animation: booster-uwu-ring-dance 4.8s ease-in-out infinite;
}
.booster-uwu-atmosphere__ring--one {
  top: -5rem;
  left: -4rem;
}
.booster-uwu-atmosphere__ring--two {
  right: -3rem;
  bottom: -7rem;
  border-color: rgba(255, 125, 204, 0.48);
  animation-delay: -2.1s;
}
.booster-uwu-atmosphere__ribbon {
  position: absolute;
  width: clamp(16rem, 38vw, 32rem);
  height: clamp(5rem, 12vw, 9rem);
  opacity: 0.36;
  border-top: 0.2rem solid #ff7dcc;
  border-radius: 50%;
  filter: drop-shadow(0 0 0.65rem rgba(255, 125, 204, 0.64));
  animation: booster-uwu-ribbon-wave 3.2s ease-in-out infinite;
}
.booster-uwu-atmosphere__ribbon--one {
  --uwu-ribbon-angle: 12deg;
  top: 13%;
  left: -8%;
  transform: rotate(var(--uwu-ribbon-angle));
}
.booster-uwu-atmosphere__ribbon--two {
  --uwu-ribbon-angle: -18deg;
  right: -6%;
  bottom: 18%;
  border-color: #67f5e7;
  filter: drop-shadow(0 0 0.65rem rgba(103, 245, 231, 0.64));
  transform: rotate(var(--uwu-ribbon-angle));
  animation-delay: -1.6s;
}
.booster-uwu-atmosphere__spark {
  position: absolute;
  width: 1.1rem;
  aspect-ratio: 1;
  background: #ffe477;
  clip-path: polygon(50% 0, 61% 38%, 100% 50%, 61% 62%, 50% 100%, 39% 62%, 0 50%, 39% 38%);
  filter: drop-shadow(0 0 0.8rem rgba(255, 228, 119, 0.78));
  animation: booster-uwu-spark-pop 1.45s ease-in-out infinite;
}
.booster-uwu-atmosphere__spark--one {
  top: 22%;
  left: 13%;
}
.booster-uwu-atmosphere__spark--two {
  top: 18%;
  right: 17%;
  width: 1.6rem;
  background: #67f5e7;
  animation-delay: -0.55s;
}
.booster-uwu-atmosphere__spark--three {
  right: 27%;
  bottom: 16%;
  width: 0.85rem;
  background: #ff9ed6;
  animation-delay: -0.95s;
}
.booster-uwu-atmosphere__bubble {
  position: absolute;
  width: 2.5rem;
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, 0.52);
  border-radius: 50%;
  background: radial-gradient(circle at 32% 28%, rgba(255, 255, 255, 0.9) 0 6%, transparent 7%), linear-gradient(145deg, rgba(255, 125, 204, 0.28), rgba(103, 245, 231, 0.15));
  box-shadow: inset 0 0 1rem rgba(255, 255, 255, 0.12), 0 0 1.2rem rgba(103, 245, 231, 0.2);
  animation: booster-uwu-bubble-float 4.6s ease-in-out infinite;
}
.booster-uwu-atmosphere__bubble--one {
  top: 12%;
  left: 29%;
}
.booster-uwu-atmosphere__bubble--two {
  top: 32%;
  right: 12%;
  width: 1.7rem;
  animation-delay: -1.4s;
}
.booster-uwu-atmosphere__bubble--three {
  bottom: 13%;
  left: 8%;
  width: 3.1rem;
  animation-delay: -2.8s;
}
.booster-uwu-atmosphere__cheer {
  position: absolute;
  padding: 0.4rem 0.75rem;
  color: #fff;
  font-size: clamp(0.72rem, 1.8vw, 1rem);
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.82;
  border: 1px solid rgba(255, 255, 255, 0.5);
  background: rgba(11, 17, 26, 0.76);
  clip-path: polygon(0.55rem 0, 100% 0, calc(100% - 0.55rem) 100%, 0 100%);
  animation: booster-uwu-cheer-bounce 2.2s ease-in-out infinite;
}
.booster-uwu-atmosphere__cheer--one {
  --uwu-cheer-angle: -9deg;
  top: 36%;
  left: 5%;
  color: #ffb7e6;
}
.booster-uwu-atmosphere__cheer--two {
  --uwu-cheer-angle: 8deg;
  top: 45%;
  right: 4%;
  color: #67f5e7;
  animation-delay: -0.7s;
}
.booster-uwu-atmosphere__cheer--three {
  --uwu-cheer-angle: 5deg;
  bottom: 8%;
  left: 18%;
  color: #ffe477;
  animation-delay: -1.25s;
}
.booster-uwu-atmosphere__cheer--four {
  --uwu-cheer-angle: -7deg;
  top: 12%;
  right: 28%;
  color: #ffb7e6;
  animation-delay: -1.65s;
}
.booster-uwu-atmosphere__cheer--five {
  --uwu-cheer-angle: 4deg;
  right: 12%;
  bottom: 9%;
  max-width: min(16rem, 42vw);
  overflow: hidden;
  color: #d9ceff;
  border-color: rgba(188, 167, 255, 0.72);
  box-shadow: 0 0 1rem rgba(188, 167, 255, 0.2);
  text-overflow: ellipsis;
  white-space: nowrap;
  animation-delay: -0.35s;
}
.booster-uwu-atmosphere__mascot {
  position: absolute;
  z-index: 2;
  width: clamp(3.2rem, 5vw, 4.5rem);
  opacity: 0.86;
  aspect-ratio: 1;
  border: 0.12rem solid rgba(255, 255, 255, 0.78);
  border-radius: 48% 52% 44% 56%/55% 45% 55% 45%;
  background: radial-gradient(circle at 34% 42%, #101827 0 0.16rem, transparent 0.2rem), radial-gradient(circle at 66% 42%, #101827 0 0.16rem, transparent 0.2rem), radial-gradient(ellipse at 50% 68%, #101827 0 0.26rem, transparent 0.29rem), radial-gradient(circle at 28% 62%, rgba(255, 125, 204, 0.72) 0 0.34rem, transparent 0.37rem), radial-gradient(circle at 72% 62%, rgba(255, 125, 204, 0.72) 0 0.34rem, transparent 0.37rem), linear-gradient(145deg, #fff7fd, #ffb7e6 48%, #bca7ff);
  box-shadow: inset 0 0 1.2rem rgba(255, 255, 255, 0.48), 0 0 1.35rem rgba(255, 125, 204, 0.52);
  animation: booster-uwu-mascot-giggle 1.55s cubic-bezier(0.45, 0, 0.22, 1) infinite;
}
.booster-uwu-atmosphere__mascot::before, .booster-uwu-atmosphere__mascot::after {
  position: absolute;
  top: -0.62rem;
  width: 1.45rem;
  height: 1.8rem;
  border: 0.1rem solid rgba(255, 255, 255, 0.74);
  background: linear-gradient(145deg, #ffb7e6, #bca7ff);
  content: "";
  clip-path: polygon(50% 0, 100% 100%, 0 78%);
}
.booster-uwu-atmosphere__mascot::before {
  left: 0.2rem;
  transform: rotate(-22deg);
}
.booster-uwu-atmosphere__mascot::after {
  right: 0.2rem;
  transform: rotate(22deg) scaleX(-1);
}
.booster-uwu-atmosphere__mascot--one {
  bottom: 13%;
  left: 3%;
}
.booster-uwu-atmosphere__mascot--two {
  top: 20%;
  right: 3%;
  background: radial-gradient(circle at 34% 42%, #101827 0 0.16rem, transparent 0.2rem), radial-gradient(circle at 66% 42%, #101827 0 0.16rem, transparent 0.2rem), radial-gradient(ellipse at 50% 68%, #101827 0 0.26rem, transparent 0.29rem), radial-gradient(circle at 28% 62%, rgba(255, 125, 204, 0.72) 0 0.34rem, transparent 0.37rem), radial-gradient(circle at 72% 62%, rgba(255, 125, 204, 0.72) 0 0.34rem, transparent 0.37rem), linear-gradient(145deg, #f5ffff, #67f5e7 48%, #ffe477);
  box-shadow: inset 0 0 1.2rem rgba(255, 255, 255, 0.48), 0 0 1.35rem rgba(103, 245, 231, 0.48);
  animation-delay: -0.78s;
}
.booster-uwu-atmosphere__focus {
  position: absolute;
  z-index: 4;
  inset: -30%;
  opacity: 0;
  background: repeating-conic-gradient(from 0deg at 50% 50%, rgba(255, 255, 255, 0.9) 0deg 0.7deg, transparent 0.7deg 3.4deg);
  mask-image: radial-gradient(circle at 50% 50%, transparent 0 16%, #000 42%, #000 100%);
  transform: scale(1);
}
.booster-uwu-atmosphere__petals {
  position: absolute;
  z-index: 1;
  inset: 0;
  opacity: 0;
}
.booster-uwu-atmosphere__petals i {
  position: absolute;
  top: -3rem;
  left: var(--petal-x, 50%);
  width: var(--petal-size, 0.7rem);
  height: calc(var(--petal-size, 0.7rem) * 0.78);
  background: linear-gradient(135deg, #ffd9f2, #ff9ed8 62%, #ffc2e8);
  border-radius: 74% 26% 68% 32%/62% 58% 42% 38%;
  box-shadow: 0 0 0.5rem rgba(255, 158, 216, 0.5);
}
.booster-uwu-atmosphere__petals i:nth-child(1) {
  --petal-x: 2%;
  --petal-size: 0.66rem;
  --petal-delay: -1.9s;
  --petal-duration: 13.4s;
  --petal-drift: -3rem;
  --petal-spin: 460deg;
}
.booster-uwu-atmosphere__petals i:nth-child(2) {
  --petal-x: 9.1%;
  --petal-size: 0.82rem;
  --petal-delay: -3.8s;
  --petal-duration: 15.8s;
  --petal-drift: 0rem;
  --petal-spin: 680deg;
}
.booster-uwu-atmosphere__petals i:nth-child(3) {
  --petal-x: 16.2%;
  --petal-size: 0.98rem;
  --petal-delay: -5.7s;
  --petal-duration: 18.2s;
  --petal-drift: 3rem;
  --petal-spin: 240deg;
}
.booster-uwu-atmosphere__petals i:nth-child(4) {
  --petal-x: 23.3%;
  --petal-size: 0.5rem;
  --petal-delay: -7.6s;
  --petal-duration: 20.6s;
  --petal-drift: 6rem;
  --petal-spin: 460deg;
}
.booster-uwu-atmosphere__petals i:nth-child(5) {
  --petal-x: 30.4%;
  --petal-size: 0.66rem;
  --petal-delay: -9.5s;
  --petal-duration: 23s;
  --petal-drift: -6rem;
  --petal-spin: 680deg;
}
.booster-uwu-atmosphere__petals i:nth-child(6) {
  --petal-x: 37.5%;
  --petal-size: 0.82rem;
  --petal-delay: -11.4s;
  --petal-duration: 11s;
  --petal-drift: -3rem;
  --petal-spin: 240deg;
}
.booster-uwu-atmosphere__petals i:nth-child(7) {
  --petal-x: 44.6%;
  --petal-size: 0.98rem;
  --petal-delay: -13.3s;
  --petal-duration: 13.4s;
  --petal-drift: 0rem;
  --petal-spin: 460deg;
}
.booster-uwu-atmosphere__petals i:nth-child(8) {
  --petal-x: 51.7%;
  --petal-size: 0.5rem;
  --petal-delay: -15.2s;
  --petal-duration: 15.8s;
  --petal-drift: 3rem;
  --petal-spin: 680deg;
}
.booster-uwu-atmosphere__petals i:nth-child(9) {
  --petal-x: 58.8%;
  --petal-size: 0.66rem;
  --petal-delay: -17.1s;
  --petal-duration: 18.2s;
  --petal-drift: 6rem;
  --petal-spin: 240deg;
}
.booster-uwu-atmosphere__petals i:nth-child(10) {
  --petal-x: 65.9%;
  --petal-size: 0.82rem;
  --petal-delay: -19s;
  --petal-duration: 20.6s;
  --petal-drift: -6rem;
  --petal-spin: 460deg;
}
.booster-uwu-atmosphere__petals i:nth-child(11) {
  --petal-x: 73%;
  --petal-size: 0.98rem;
  --petal-delay: -20.9s;
  --petal-duration: 23s;
  --petal-drift: -3rem;
  --petal-spin: 680deg;
}
.booster-uwu-atmosphere__petals i:nth-child(12) {
  --petal-x: 80.1%;
  --petal-size: 0.5rem;
  --petal-delay: -22.8s;
  --petal-duration: 11s;
  --petal-drift: 0rem;
  --petal-spin: 240deg;
}
.booster-uwu-atmosphere__petals i:nth-child(13) {
  --petal-x: 87.2%;
  --petal-size: 0.66rem;
  --petal-delay: -24.7s;
  --petal-duration: 13.4s;
  --petal-drift: 3rem;
  --petal-spin: 460deg;
}
.booster-uwu-atmosphere__petals i:nth-child(14) {
  --petal-x: 94.3%;
  --petal-size: 0.82rem;
  --petal-delay: -26.6s;
  --petal-duration: 15.8s;
  --petal-drift: 6rem;
  --petal-spin: 680deg;
}
.booster-uwu-atmosphere__speed {
  position: absolute;
  z-index: 4;
  inset: 0;
  opacity: 0;
  background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.85) 0 2px, transparent 2px 16px);
  mask-image: linear-gradient(90deg, #000 0 14%, transparent 34% 66%, #000 86% 100%);
}
.booster-uwu-atmosphere__cinema {
  position: absolute;
  z-index: 5;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}
.booster-uwu-atmosphere__cinema::before, .booster-uwu-atmosphere__cinema::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 14%;
  background: #05060c;
  content: "";
}
.booster-uwu-atmosphere__cinema::before {
  top: 0;
  transform: translateY(-100%);
}
.booster-uwu-atmosphere__cinema::after {
  bottom: 0;
  transform: translateY(100%);
}
.booster-uwu-atmosphere__menace {
  position: absolute;
  z-index: 4;
  inset: 0;
  opacity: 0;
  background: radial-gradient(circle at 50% 46%, transparent 0 22%, rgba(24, 6, 38, 0.78) 62%, #0b0212 100%), linear-gradient(180deg, rgba(96, 22, 138, 0.42), rgba(12, 2, 20, 0.9));
}
.booster-uwu-atmosphere__gogogo {
  position: absolute;
  z-index: 5;
  inset: 0;
  opacity: 0;
  font-family: "League Gothic", "Barlow", system-ui, sans-serif;
}
.booster-uwu-atmosphere__gogogo i {
  position: absolute;
  bottom: var(--go-bottom, 10%);
  left: var(--go-x, 50%);
  color: #f2e3ff;
  font-size: var(--go-size, 3rem);
  font-style: normal;
  line-height: 1;
  text-shadow: 0 0 0.6rem rgba(186, 108, 255, 0.9), 0.14rem 0.14rem 0 #3d0a5c, -0.14rem 0.14rem 0 #3d0a5c;
}
.booster-uwu-atmosphere__gogogo i:nth-child(1) {
  --go-x: 6%;
  --go-bottom: 17%;
  --go-size: 3.25rem;
  --go-delay: 0.06s;
}
.booster-uwu-atmosphere__gogogo i:nth-child(2) {
  --go-x: 22.5%;
  --go-bottom: 30%;
  --go-size: 4.1rem;
  --go-delay: 0.12s;
}
.booster-uwu-atmosphere__gogogo i:nth-child(3) {
  --go-x: 39%;
  --go-bottom: 4%;
  --go-size: 4.95rem;
  --go-delay: 0.18s;
}
.booster-uwu-atmosphere__gogogo i:nth-child(4) {
  --go-x: 55.5%;
  --go-bottom: 17%;
  --go-size: 2.4rem;
  --go-delay: 0.24s;
}
.booster-uwu-atmosphere__gogogo i:nth-child(5) {
  --go-x: 72%;
  --go-bottom: 30%;
  --go-size: 3.25rem;
  --go-delay: 0.3s;
}
.booster-uwu-atmosphere__gogogo i:nth-child(6) {
  --go-x: 88.5%;
  --go-bottom: 4%;
  --go-size: 4.1rem;
  --go-delay: 0.36s;
}

.booster-uwu-eyecatch {
  position: absolute;
  z-index: 6;
  inset: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
}
.booster-uwu-eyecatch__veil {
  position: absolute;
  inset: -10% -60%;
  background: linear-gradient(100deg, transparent 0 12%, #ffb7e6 12% 46%, #fff4fb 46% 58%, #bca7ff 58% 88%, transparent 88%);
  transform: translateX(-120%) skewX(-12deg);
}
.booster-uwu-eyecatch__cat {
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(5rem, 15vw, 9.5rem);
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.4);
}
.booster-uwu-eyecatch__cat svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
  filter: drop-shadow(0 0.35rem 0.9rem rgba(94, 42, 120, 0.45));
}
.booster-uwu-eyecatch__cat-body {
  fill: url(#catchUwuEyecatchFur);
  stroke: #fff;
  stroke-width: 2.5;
  stroke-linejoin: round;
}
.booster-uwu-eyecatch__cat-ears path {
  fill: url(#catchUwuEyecatchEar);
}
.booster-uwu-eyecatch__cat-ears {
  transform-box: view-box;
  transform-origin: 50% 24%;
}
.booster-uwu-eyecatch__cat-eye {
  fill: none;
  stroke: #6b4b8a;
  stroke-width: 4.6;
  stroke-linecap: round;
  transform-box: fill-box;
  transform-origin: center;
}
.booster-uwu-eyecatch__cat-cheek {
  fill: #ff9ed8;
  opacity: 0.72;
}
.booster-uwu-eyecatch__cat-mouth {
  fill: none;
  stroke: #6b4b8a;
  stroke-width: 3.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.booster-uwu-eyecatch__cat-whisker {
  fill: none;
  stroke: rgba(255, 255, 255, 0.72);
  stroke-width: 2.2;
  stroke-linecap: round;
}
.booster-uwu-eyecatch__cat-sparks path {
  fill: #ffe477;
  transform-box: fill-box;
  transform-origin: center;
}
.booster-uwu-eyecatch__cat-tail {
  transform-box: view-box;
  transform-origin: 74% 66%;
}

.booster-uwu-cat {
  --uwu-cat-x: 1rem;
  --uwu-cat-y: 1rem;
  --uwu-cat-facing: 1;
  --uwu-cat-duration: 1ms;
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  display: block;
  width: clamp(4.7rem, 7vw, 6.4rem);
  aspect-ratio: 1.08;
  padding: 0;
  border: 0;
  appearance: none;
  background: none;
  color: inherit;
  cursor: pointer;
  font: inherit;
  opacity: 0;
  pointer-events: none;
  touch-action: manipulation;
  transform: translate3d(var(--uwu-cat-x), var(--uwu-cat-y), 0);
  transition: opacity 260ms ease-out, transform var(--uwu-cat-duration) cubic-bezier(0.42, 0.02, 0.28, 1);
  will-change: transform;
}
.booster-uwu-cat.is-visible {
  opacity: 0.94;
  pointer-events: auto;
}
.booster-uwu-cat[hidden] {
  display: none;
}
.booster-uwu-cat:focus-visible {
  border-radius: 48% 48% 44% 44%;
  outline: 0.18rem solid #67f5e7;
  outline-offset: 0.3rem;
}
.booster-uwu-cat.is-visible:hover .booster-uwu-cat__sprite {
  filter: brightness(1.08) drop-shadow(0 0.45rem 0.3rem rgba(0, 0, 0, 0.28)) drop-shadow(0 0 0.9rem rgba(255, 125, 204, 0.48));
}
.booster-uwu-cat__sprite {
  display: block;
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 0.45rem 0.3rem rgba(0, 0, 0, 0.28)) drop-shadow(0 0 0.65rem rgba(255, 125, 204, 0.24));
  transform: scaleX(var(--uwu-cat-facing));
  transform-origin: center bottom;
  animation: booster-uwu-cat-trot 0.72s ease-in-out infinite;
}
.booster-uwu-cat__sprite svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.booster-uwu-cat__shadow {
  fill: rgba(4, 10, 20, 0.34);
}
.booster-uwu-cat__tail-outline, .booster-uwu-cat__tail {
  fill: none;
  stroke-linecap: round;
}
.booster-uwu-cat__tail-outline {
  stroke: #1a2438;
  stroke-width: 17;
}
.booster-uwu-cat__tail {
  stroke: #ffb27e;
  stroke-width: 11;
  animation: booster-uwu-cat-tail 1.05s ease-in-out infinite;
  transform-box: fill-box;
  transform-origin: left center;
}
.booster-uwu-cat__body {
  fill: #fff9ee;
  stroke: #1a2438;
  stroke-linejoin: round;
  stroke-width: 4;
}
.booster-uwu-cat__ear, .booster-uwu-cat__cheek {
  fill: #ff9fcf;
}
.booster-uwu-cat__patch {
  fill: #ffb27e;
  opacity: 0.92;
}
.booster-uwu-cat__eye {
  fill: #14203a;
  stroke: #67f5e7;
  stroke-width: 1.5;
}
.booster-uwu-cat__eye-shine {
  fill: #fff;
}
.booster-uwu-cat__eye, .booster-uwu-cat__eye-shine, .booster-uwu-cat__cheek, .booster-uwu-cat__mouth, .booster-uwu-cat__eyes-expression, .booster-uwu-cat__mouth-expression {
  transform-box: fill-box;
  transform-origin: center;
  transition: opacity 140ms ease-out, transform 190ms cubic-bezier(0.16, 0.84, 0.24, 1);
}
.booster-uwu-cat__eyes-expression {
  fill: none;
  stroke: #14203a;
  stroke-linecap: round;
  stroke-width: 3.2;
  opacity: 0;
}
.booster-uwu-cat__cheek {
  opacity: 0.58;
}
.booster-uwu-cat__nose {
  fill: #ff6db8;
}
.booster-uwu-cat__mouth, .booster-uwu-cat__paw, .booster-uwu-cat__collar {
  fill: none;
  stroke: #1a2438;
  stroke-linecap: round;
  stroke-width: 2.6;
}
.booster-uwu-cat__mouth-expression {
  stroke: #1a2438;
  stroke-linejoin: round;
  stroke-width: 2;
  opacity: 0;
}
.booster-uwu-cat__mouth-expression--puff {
  fill: #ffb7df;
}
.booster-uwu-cat__mouth-expression--laugh {
  fill: #ff7dcc;
}
.booster-uwu-cat__collar {
  stroke: #67f5e7;
  stroke-width: 3;
}
.booster-uwu-cat__bell {
  fill: #ffe477;
  stroke: #1a2438;
  stroke-linejoin: round;
  stroke-width: 2;
}
.booster-uwu-cat__sleep-mark {
  position: absolute;
  z-index: 3;
  top: -0.15rem;
  right: 0;
  color: #ffe477;
  font-size: 0.78rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  opacity: 0;
  pointer-events: none;
  text-shadow: 0 0 0.65rem rgba(255, 228, 119, 0.78);
  transform: translate3d(-0.2rem, 0.55rem, 0) rotate(-8deg) scale(0.7);
}
.booster-uwu-cat__speech {
  position: absolute;
  z-index: 2;
  top: -0.4rem;
  left: 50%;
  min-width: 3.25rem;
  padding: 0.28rem 0.48rem;
  color: #111a2c;
  font-size: 0.66rem;
  font-weight: 950;
  letter-spacing: 0.025em;
  text-align: center;
  white-space: nowrap;
  border: 0.1rem solid #ff7dcc;
  border-radius: 999px;
  background: #fff9fe;
  box-shadow: 0 0.35rem 0.85rem rgba(0, 0, 0, 0.24);
  opacity: 0;
  transform: translate(-50%, 0.45rem) scale(0.72) rotate(-5deg);
  transition: opacity 150ms ease-out, transform 220ms cubic-bezier(0.16, 0.84, 0.24, 1);
}
.booster-uwu-cat__speech::after {
  position: absolute;
  top: 100%;
  left: 56%;
  width: 0.6rem;
  height: 0.6rem;
  border-right: 0.1rem solid #ff7dcc;
  border-bottom: 0.1rem solid #ff7dcc;
  background: #fff9fe;
  content: "";
  transform: translate(-50%, -0.28rem) rotate(45deg);
}
.booster-uwu-cat.is-sitting .booster-uwu-cat__sprite {
  animation: booster-uwu-cat-sit 1.4s ease-in-out infinite;
}
.booster-uwu-cat.is-curious .booster-uwu-cat__sprite {
  animation: booster-uwu-cat-curious 0.9s ease-in-out 2;
}
.booster-uwu-cat.is-hopping .booster-uwu-cat__sprite, .booster-uwu-cat.is-click-jump .booster-uwu-cat__sprite {
  animation: booster-uwu-cat-hop 0.52s cubic-bezier(0.2, 0.78, 0.24, 1) 2;
}
.booster-uwu-cat.is-card-happy .booster-uwu-cat__sprite {
  animation: booster-uwu-cat-card-happy 0.42s ease-in-out 2;
}
.booster-uwu-cat.is-click-wave .booster-uwu-cat__sprite {
  animation: booster-uwu-cat-wave 0.48s ease-in-out 2;
}
.booster-uwu-cat.is-click-shy .booster-uwu-cat__sprite {
  animation: booster-uwu-cat-shy 0.9s ease-in-out both;
}
.booster-uwu-cat.is-sleeping .booster-uwu-cat__sprite {
  animation: none;
}
.booster-uwu-cat.is-click-shy .booster-uwu-cat__cheek {
  opacity: 1;
  filter: drop-shadow(0 0 0.25rem rgba(255, 109, 184, 0.72));
}
.booster-uwu-cat.is-chasing .booster-uwu-cat__sprite {
  animation-duration: 0.42s;
}
.booster-uwu-cat.is-face-blink .booster-uwu-cat__eye,
.booster-uwu-cat.is-face-blink .booster-uwu-cat__eye-shine {
  transform: scaleY(0.08);
}
.booster-uwu-cat.is-face-blink .booster-uwu-cat__eye-shine {
  opacity: 0;
}
.booster-uwu-cat.is-face-puff .booster-uwu-cat__cheek {
  opacity: 0.96;
  transform: scale(1.28, 1.18);
}
.booster-uwu-cat.is-face-puff .booster-uwu-cat__mouth {
  opacity: 0;
}
.booster-uwu-cat.is-face-puff .booster-uwu-cat__mouth-expression--puff {
  opacity: 1;
  transform: scale(1.08);
}
.booster-uwu-cat.is-face-laugh .booster-uwu-cat__eye,
.booster-uwu-cat.is-face-laugh .booster-uwu-cat__eye-shine,
.booster-uwu-cat.is-face-laugh .booster-uwu-cat__mouth {
  opacity: 0;
}
.booster-uwu-cat.is-face-laugh .booster-uwu-cat__eyes-expression--happy,
.booster-uwu-cat.is-face-laugh .booster-uwu-cat__mouth-expression--laugh {
  opacity: 1;
}
.booster-uwu-cat.is-face-laugh .booster-uwu-cat__cheek {
  opacity: 1;
  transform: scale(1.18);
}
.booster-uwu-cat.is-face-wow .booster-uwu-cat__eye,
.booster-uwu-cat.is-face-wow .booster-uwu-cat__eye-shine {
  transform: scale(1.16);
}
.booster-uwu-cat.is-face-wow .booster-uwu-cat__mouth {
  opacity: 0;
}
.booster-uwu-cat.is-face-wow .booster-uwu-cat__mouth-expression--puff {
  opacity: 1;
  transform: scale(0.82);
}
.booster-uwu-cat.is-face-sleepy .booster-uwu-cat__eye,
.booster-uwu-cat.is-face-sleepy .booster-uwu-cat__eye-shine {
  opacity: 0;
}
.booster-uwu-cat.is-face-sleepy .booster-uwu-cat__eyes-expression--sleepy {
  opacity: 1;
}
.booster-uwu-cat.is-face-sleepy .booster-uwu-cat__sleep-mark {
  opacity: 1;
  animation: booster-uwu-cat-sleep-mark 1.15s ease-in-out infinite;
}
.booster-uwu-cat.is-meowing .booster-uwu-cat__speech {
  opacity: 1;
  transform: translate(-50%, 0) scale(1) rotate(-3deg);
}
.booster-uwu-cat.is-meowing .booster-uwu-cat__sprite {
  animation: booster-uwu-cat-meow 0.34s ease-in-out 3;
}
.booster-uwu-cat.is-fourth-wall {
  z-index: 7;
}
.booster-uwu-cat.is-fourth-wall .booster-uwu-cat__speech {
  opacity: 1;
  transform: translate(-50%, 0) scale(1.18) rotate(0deg);
}
.booster-uwu-cat.is-fourth-wall .booster-uwu-cat__sprite {
  animation: booster-uwu-cat-fourth-wall 1.6s cubic-bezier(0.2, 0.76, 0.24, 1) both;
}

.booster-uwu-paw-print {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: block;
  width: 0.58rem;
  height: 0.52rem;
  color: #ff9fd6;
  opacity: 0;
  pointer-events: none;
  filter: drop-shadow(0 0 0.34rem currentColor);
  transform: translate3d(var(--uwu-paw-x), var(--uwu-paw-y), 0) rotate(var(--uwu-paw-angle)) scale(0.58);
  animation: booster-uwu-paw-fade 1.55s ease-out var(--uwu-paw-delay) both;
}
.booster-uwu-paw-print::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0.38rem;
  height: 0.31rem;
  border-radius: 55% 55% 48% 48%;
  background: currentColor;
  content: "";
  transform: translateX(-50%);
}
.booster-uwu-paw-print::after {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0.16rem;
  height: 0.18rem;
  border-radius: 50%;
  background: currentColor;
  box-shadow: -0.2rem 0.08rem 0 currentColor, 0.2rem 0.08rem 0 currentColor;
  content: "";
  transform: translateX(-50%);
}
.booster-uwu-paw-print.is-alt {
  color: #79f4e8;
}

.booster-uwu-chase-object {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  display: block;
  width: clamp(1.35rem, 2.5vw, 2rem);
  aspect-ratio: 1;
  opacity: 0;
  pointer-events: none;
  filter: drop-shadow(0 0 0.72rem rgba(255, 228, 119, 0.88));
  transform: translate3d(var(--uwu-chase-start-x), var(--uwu-chase-start-y), 0) rotate(0deg) scale(0.72);
  transition: opacity 180ms ease-out, transform var(--uwu-chase-duration) cubic-bezier(0.3, 0.08, 0.36, 1);
  will-change: transform;
}
.booster-uwu-chase-object::after {
  position: absolute;
  inset: 18%;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 0 0.5rem rgba(255, 255, 255, 0.9);
  content: "";
}
.booster-uwu-chase-object--star {
  background: linear-gradient(145deg, #fff6ad, #ffe477 48%, #ff9fd6);
  clip-path: polygon(50% 0, 61% 36%, 98% 38%, 68% 59%, 79% 96%, 50% 74%, 21% 96%, 32% 59%, 2% 38%, 39% 36%);
}
.booster-uwu-chase-object--orb {
  border: 0.12rem solid rgba(255, 255, 255, 0.86);
  border-radius: 50%;
  background: radial-gradient(circle at 34% 28%, #fff 0 9%, #67f5e7 28%, #bca7ff 64%, #ff7dcc 100%);
  box-shadow: inset -0.28rem -0.32rem 0.55rem rgba(52, 24, 104, 0.32);
}
.booster-uwu-chase-object.is-flying {
  opacity: 0.96;
  transform: translate3d(var(--uwu-chase-end-x), var(--uwu-chase-end-y), 0) rotate(620deg) scale(1);
}
.booster-uwu-chase-object.is-caught {
  opacity: 0;
  transform: translate3d(var(--uwu-chase-end-x), var(--uwu-chase-end-y), 0) rotate(690deg) scale(1.8);
  transition-duration: 240ms;
}

.booster-uwu-cat-hearts {
  position: absolute;
  z-index: 4;
  inset: 0;
  overflow: visible;
  pointer-events: none;
}

.booster-uwu-heart {
  position: absolute;
  top: 36%;
  left: 50%;
  display: block;
  width: 0.72rem;
  height: 0.72rem;
  border-radius: 0.08rem;
  background: #ff7dcc;
  box-shadow: 0 0 0.55rem rgba(255, 125, 204, 0.72);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 0) rotate(45deg) scale(0.2);
  animation: booster-uwu-heart-float 1.25s cubic-bezier(0.16, 0.84, 0.24, 1) var(--uwu-heart-delay, 0ms) both;
}
.booster-uwu-heart::before, .booster-uwu-heart::after {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: inherit;
  content: "";
}
.booster-uwu-heart::before {
  top: -50%;
  left: 0;
}
.booster-uwu-heart::after {
  top: 0;
  left: -50%;
}

.booster-result-card__uwu-heart {
  z-index: 5;
  top: 18%;
  left: 78%;
  width: 1.15rem;
  height: 1.15rem;
  animation: booster-uwu-card-heart 1.35s cubic-bezier(0.16, 0.84, 0.24, 1) both;
}

.booster-result-card.is-loved .booster-result-card__visual {
  animation: booster-uwu-card-loved 0.62s cubic-bezier(0.16, 0.84, 0.24, 1) both;
}

.booster-presenter--uwu {
  --booster-uwu-pink: #ff7dcc;
  --booster-uwu-cyan: #67f5e7;
  --booster-uwu-violet: #bca7ff;
  --booster-uwu-yellow: #ffe477;
}
.booster-presenter--uwu .booster-audio-controls {
  --booster-volume-accent: var(--booster-uwu-cyan);
}
.booster-presenter--uwu .booster-opening-volume {
  color: #07151c;
  border-color: rgba(255, 255, 255, 0.72);
  background: linear-gradient(110deg, rgba(103, 245, 231, 0.92), #fff 52%, rgba(255, 183, 230, 0.92));
  box-shadow: 0 0.8rem 1.8rem rgba(0, 0, 0, 0.3), 0 0 1.4rem rgba(103, 245, 231, 0.18);
}
.booster-presenter--uwu .booster-opening-volume__value {
  color: #07151c;
}
.booster-presenter--uwu .booster-presenter__stage {
  background: radial-gradient(circle at 12% 18%, rgba(255, 125, 204, 0.24), transparent 25rem), radial-gradient(circle at 88% 24%, rgba(103, 245, 231, 0.2), transparent 24rem), radial-gradient(circle at 50% 105%, rgba(188, 167, 255, 0.24), transparent 32rem), linear-gradient(145deg, #172037, #09121f 62%, #171226);
  box-shadow: inset 0.24rem 0 var(--booster-uwu-pink), inset -0.24rem 0 var(--booster-uwu-cyan), inset 0 0 5rem rgba(255, 125, 204, 0.08);
}
.booster-presenter--uwu .booster-presenter__stage::before {
  opacity: 0.34;
  background-image: linear-gradient(rgba(255, 183, 230, 0.13) 1px, transparent 1px), linear-gradient(90deg, rgba(103, 245, 231, 0.12) 1px, transparent 1px);
  background-size: 3rem 3rem;
}
.booster-presenter--uwu .booster-presenter__stage::after {
  border-color: rgba(255, 125, 204, 0.58);
  box-shadow: 0 0 3rem rgba(255, 125, 204, 0.2);
}
.booster-presenter--uwu .booster-presenter__stage > :not(.booster-presenter__ambient, .booster-classic-atmosphere, .booster-energy, .booster-uwu-atmosphere, .booster-uwu-cat, .booster-uwu-paw-print, .booster-uwu-chase-object, .booster-uwu-celebration, .booster-uwu-eyecatch, .booster-audio-controls, .booster-uwu-sound, .booster-opening-music) {
  position: relative;
  z-index: 1;
}
.booster-presenter--uwu .booster-presenter__stage > h2, .booster-presenter--uwu .booster-presenter__stage > .h2 {
  color: #fff;
  text-shadow: 0.08em 0 var(--booster-uwu-pink), -0.05em 0 var(--booster-uwu-cyan), 0 0 1.8rem rgba(255, 125, 204, 0.34);
}
.booster-presenter--uwu .booster-presenter__stage > p {
  color: rgba(255, 255, 255, 0.82);
}
.booster-presenter--uwu .booster-presenter__ambient {
  opacity: 1;
  background: radial-gradient(circle, rgba(255, 125, 204, 0.28), rgba(103, 245, 231, 0.12) 34%, rgba(188, 167, 255, 0.08) 52%, transparent 70%);
  animation: booster-uwu-ambient-breathe 2.4s ease-in-out infinite;
}
.booster-presenter--uwu .booster-uwu-atmosphere {
  opacity: 1;
}
.booster-presenter--uwu .booster-uwu-atmosphere__petals {
  opacity: 1;
}
.booster-presenter--uwu .booster-uwu-atmosphere__petals i {
  animation: booster-uwu-petal-fall var(--petal-duration, 13s) linear var(--petal-delay, 0s) infinite;
}
.booster-presenter--uwu .booster-pack--uwu {
  animation: booster-uwu-pack-squash 1.65s cubic-bezier(0.3, 0.72, 0.28, 1) infinite;
}
.booster-presenter--uwu .booster-uwu-sound:not([hidden]) {
  animation: booster-uwu-control-enter 0.38s cubic-bezier(0.16, 0.84, 0.24, 1) both;
}
.booster-presenter--uwu .catch-eyebrow {
  color: var(--booster-uwu-cyan);
}
.booster-presenter--uwu .booster-reveal-modes input:checked + span {
  border-color: var(--booster-uwu-pink);
  background: linear-gradient(90deg, rgba(255, 125, 204, 0.24), rgba(103, 245, 231, 0.08));
  box-shadow: inset 0.2rem 0 var(--booster-uwu-cyan);
}
.booster-presenter--uwu .booster-opening-start,
.booster-presenter--uwu .booster-reveal__actions .shop-btn {
  color: #07151c;
  border-color: var(--booster-uwu-cyan);
  background: linear-gradient(110deg, var(--booster-uwu-cyan), #b9fff6 48%, var(--booster-uwu-yellow));
  box-shadow: 0 0.9rem 2rem rgba(103, 245, 231, 0.2);
}
.booster-presenter--uwu .booster-reveal__pips span.is-seen {
  background: rgba(255, 125, 204, 0.68);
}
.booster-presenter--uwu .booster-reveal__pips span.is-current {
  background: var(--booster-uwu-cyan);
  box-shadow: 0 0 0.7rem rgba(103, 245, 231, 0.72);
}
.booster-presenter--uwu .booster-reveal__pips span.is-bonus {
  background: linear-gradient(90deg, var(--booster-uwu-pink), var(--booster-uwu-cyan));
  box-shadow: 0 0 0.7rem rgba(103, 245, 231, 0.45);
}
.booster-presenter--uwu .booster-bonus-surprise {
  border-color: rgba(103, 245, 231, 0.48);
  background: radial-gradient(circle at 18% 22%, rgba(255, 125, 204, 0.2), transparent 38%), radial-gradient(circle at 82% 78%, rgba(103, 245, 231, 0.18), transparent 38%), rgba(10, 15, 23, 0.92);
  box-shadow: 0 1.4rem 3.5rem rgba(0, 0, 0, 0.42), 0 0 2rem rgba(103, 245, 231, 0.12);
}
.booster-presenter--uwu .booster-bonus-surprise::before, .booster-presenter--uwu .booster-bonus-surprise::after {
  background: var(--booster-uwu-cyan);
  filter: drop-shadow(0 0 0.8rem rgba(103, 245, 231, 0.55));
}
.booster-presenter--uwu .booster-bonus-surprise::after {
  background: var(--booster-uwu-pink);
}
.booster-presenter--uwu .booster-bonus-surprise__eyebrow {
  color: var(--booster-uwu-cyan);
}
.booster-presenter--uwu .booster-bonus-surprise strong {
  text-shadow: 0.12rem 0 var(--booster-uwu-pink), -0.12rem 0 var(--booster-uwu-cyan);
}
.booster-presenter--uwu .booster-result-card--bonus .booster-result-card__visual {
  filter: drop-shadow(0 0 1.15rem rgba(103, 245, 231, 0.3));
}
.booster-presenter--uwu .booster-result-card--bonus .booster-result-card__bonus-label {
  border-color: rgba(103, 245, 231, 0.64);
  background: linear-gradient(100deg, var(--booster-uwu-pink), var(--booster-uwu-cyan));
  color: #071018;
}

.booster-opening-intro {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(14rem, 0.85fr) minmax(17rem, 1.15fr);
  align-items: center;
  gap: clamp(2rem, 7vw, 6rem);
  max-width: 58rem;
  margin: clamp(2.75rem, 7vw, 5rem) auto 0;
  text-align: left;
}
.booster-opening-intro.is-opening {
  grid-template-columns: minmax(0, 1fr);
  max-width: 30rem;
}
.booster-opening-intro.is-opening .booster-opening-intro__controls {
  display: none;
}
.booster-opening-intro__controls {
  display: grid;
  gap: 1.3rem;
}

.booster-pack {
  position: relative;
  width: min(100%, 15rem);
  aspect-ratio: 0.67;
  margin: 0 auto;
  overflow: hidden;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.28);
  background: linear-gradient(148deg, transparent 0 56%, rgba(255, 70, 85, 0.92) 56% 66%, transparent 66%), linear-gradient(32deg, transparent 0 34%, rgba(99, 242, 204, 0.13) 34% 62%, transparent 62%), linear-gradient(155deg, #202c39, #080c12 64%);
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.55), 0 0 3rem rgba(255, 70, 85, 0.18);
  transform: perspective(50rem) rotateY(8deg) rotateZ(-2deg);
  animation: booster-pack-float 3.6s ease-in-out infinite;
}
.booster-pack::before, .booster-pack::after {
  position: absolute;
  z-index: 2;
  right: -38%;
  width: 100%;
  height: 1px;
  content: "";
  background: rgba(255, 255, 255, 0.3);
  transform: rotate(-42deg);
}
.booster-pack::before {
  top: 26%;
}
.booster-pack::after {
  bottom: 23%;
}
.booster-pack__edge {
  position: absolute;
  z-index: 3;
  inset: 0.45rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.booster-pack__image {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.booster-pack__split {
  position: absolute;
  z-index: 7;
  inset: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(148deg, transparent 0 56%, rgba(255, 70, 85, 0.92) 56% 66%, transparent 66%), linear-gradient(32deg, transparent 0 34%, rgba(99, 242, 204, 0.13) 34% 62%, transparent 62%), linear-gradient(155deg, #202c39, #080c12 64%);
}
.booster-pack__split img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.booster-pack__split--left {
  clip-path: polygon(0 0, 71% 0, 57% 17%, 68% 31%, 50% 48%, 62% 64%, 43% 81%, 52% 100%, 0 100%);
  transform-origin: 22% 52%;
}
.booster-pack__split--right {
  clip-path: polygon(71% 0, 100% 0, 100% 100%, 52% 100%, 43% 81%, 62% 64%, 50% 48%, 68% 31%, 57% 17%);
  transform-origin: 80% 48%;
}
.booster-pack__mark {
  position: absolute;
  z-index: 1;
  top: 16%;
  left: 14%;
  font-size: 5.5rem;
  font-weight: 900;
  line-height: 1;
  opacity: 0.94;
}
.booster-pack__label {
  position: absolute;
  z-index: 1;
  right: 12%;
  bottom: 11%;
  font-size: 1rem;
  font-weight: 800;
  line-height: 0.9;
  letter-spacing: 0.13em;
  text-align: right;
  text-transform: uppercase;
}
.booster-pack__uwu-badge, .booster-pack__face, .booster-pack__shine, .booster-pack__ear {
  position: absolute;
  z-index: 4;
  opacity: 0;
  pointer-events: none;
}
.booster-pack__shine {
  z-index: 3;
  inset: -20%;
  background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, 0.52) 48%, transparent 61%);
  transform: translateX(-105%) skewX(-12deg);
}
.booster-pack__rupture {
  position: absolute;
  z-index: 5;
  top: 50%;
  left: 50%;
  width: 0.16rem;
  height: 72%;
  opacity: 0;
  background: linear-gradient(to bottom, transparent, #fff 16%, #ff4655 54%, #fff 84%, transparent);
  box-shadow: 0 0 0.8rem rgba(255, 70, 85, 0.85), 0 0 1.8rem rgba(255, 255, 255, 0.55);
  transform: translate(-50%, -50%) rotate(24deg) scaleY(0);
  transform-origin: 50% 0;
  pointer-events: none;
}
.booster-pack__ear {
  top: 35%;
  width: 2.15rem;
  height: 1.8rem;
  background: linear-gradient(145deg, #67f5e7, #ff9ed6);
  filter: drop-shadow(0 0 0.55rem rgba(255, 125, 204, 0.7));
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}
.booster-pack__ear--left {
  --uwu-ear-angle: -14deg;
  left: 15%;
  transform: rotate(var(--uwu-ear-angle)) scale(0.4);
}
.booster-pack__ear--right {
  --uwu-ear-angle: 14deg;
  right: 15%;
  transform: rotate(var(--uwu-ear-angle)) scale(0.4);
}
.booster-pack__uwu-badge {
  top: 7%;
  left: 50%;
  min-width: 72%;
  padding: 0.55rem 0.8rem;
  color: #08131c;
  font-size: 1rem;
  font-weight: 900;
  letter-spacing: 0.09em;
  line-height: 1;
  text-align: center;
  text-transform: none;
  background: linear-gradient(100deg, #67f5e7, #fff 48%, #ff9ed6);
  box-shadow: 0 0.7rem 1.5rem rgba(0, 0, 0, 0.25);
  clip-path: polygon(0.7rem 0, 100% 0, calc(100% - 0.7rem) 100%, 0 100%);
  transform: translateX(-50%);
}
.booster-pack__face {
  top: 41%;
  left: 50%;
  width: 72%;
  height: 4.5rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(7, 18, 31, 0.68);
  box-shadow: 0 0 2.2rem rgba(255, 125, 204, 0.3), inset 0 0 1.7rem rgba(103, 245, 231, 0.1);
  clip-path: polygon(0.7rem 0, 100% 0, calc(100% - 0.7rem) 100%, 0 100%);
  transform: translate(-50%, -50%);
}
.booster-pack__eye, .booster-pack__mouth, .booster-pack__cheek {
  position: absolute;
  display: block;
}
.booster-pack__eye {
  top: 1.15rem;
  width: 1.45rem;
  height: 0.7rem;
  border-top: 0.24rem solid #fff;
  border-radius: 50%;
  filter: drop-shadow(0 0 0.45rem rgba(103, 245, 231, 0.8));
  animation: booster-uwu-eye-laugh 2.1s ease-in-out infinite;
}
.booster-pack__eye--left {
  left: 18%;
}
.booster-pack__eye--right {
  right: 18%;
  animation-delay: -0.08s;
}
.booster-pack__mouth {
  top: 1.55rem;
  left: 50%;
  width: 1.8rem;
  height: 1.15rem;
  border-bottom: 0.3rem solid #ffb7e6;
  border-radius: 50%;
  filter: drop-shadow(0 0 0.45rem rgba(255, 125, 204, 0.7));
  transform: translateX(-50%);
  animation: booster-uwu-mouth-laugh 0.7s ease-in-out infinite;
}
.booster-pack__cheek {
  top: 2.55rem;
  width: 1.05rem;
  height: 0.3rem;
  border-radius: 50%;
  background: #ff7dcc;
  box-shadow: 0 0 0.8rem rgba(255, 125, 204, 0.85);
  animation: booster-uwu-cheek-glow 1.2s ease-in-out infinite;
}
.booster-pack__cheek--left {
  left: 8%;
}
.booster-pack__cheek--right {
  right: 8%;
  animation-delay: -0.6s;
}
.booster-pack.has-image .booster-pack__mark,
.booster-pack.has-image .booster-pack__label {
  opacity: 0;
}
.booster-pack--uwu {
  border-color: rgba(103, 245, 231, 0.88);
  background: linear-gradient(145deg, rgba(255, 125, 204, 0.82), transparent 42%), linear-gradient(25deg, rgba(103, 245, 231, 0.56), transparent 58%), #121a2b;
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.58), 0 0 1.2rem rgba(103, 245, 231, 0.48), 0 0 4.5rem rgba(255, 125, 204, 0.38);
  animation: booster-uwu-pack-party 1.8s cubic-bezier(0.45, 0, 0.22, 1) infinite;
}
.booster-pack--uwu::before, .booster-pack--uwu::after {
  height: 0.15rem;
  background: linear-gradient(90deg, transparent, #fff, #67f5e7, transparent);
  box-shadow: 0 0 0.8rem rgba(103, 245, 231, 0.78);
  animation: booster-uwu-pack-scan 1.4s ease-in-out infinite alternate;
}
.booster-pack--uwu::after {
  animation-delay: -0.7s;
}
.booster-pack--uwu .booster-pack__image {
  filter: saturate(1.16) contrast(1.05) brightness(1.06);
}
.booster-pack--uwu .booster-pack__edge {
  border-color: rgba(255, 255, 255, 0.42);
  box-shadow: inset 0 0 1rem rgba(255, 125, 204, 0.18), 0 0 0.8rem rgba(103, 245, 231, 0.22);
}
.booster-pack--uwu .booster-pack__uwu-badge,
.booster-pack--uwu .booster-pack__face {
  opacity: 1;
}
.booster-pack--uwu .booster-pack__shine {
  opacity: 1;
  animation: booster-uwu-pack-shine 2.8s ease-in-out 0.25s infinite;
}
.booster-pack--uwu .booster-pack__ear {
  opacity: 1;
  animation: booster-uwu-ear-wiggle 1.15s ease-in-out infinite;
}
.booster-pack--uwu .booster-pack__ear--right {
  animation-delay: -0.42s;
}

.booster-reveal-modes {
  display: grid;
  gap: 0.7rem;
  padding: 0;
  border: 0;
}
.booster-reveal-modes legend {
  margin-bottom: 0.75rem;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.booster-reveal-modes label {
  position: relative;
  display: block;
  cursor: pointer;
}
.booster-reveal-modes input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.booster-reveal-modes label > span {
  display: block;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.035);
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease;
}
.booster-reveal-modes small, .booster-reveal-modes .small {
  display: block;
  margin-top: 0.15rem;
  color: rgba(248, 250, 252, 0.58);
}
.booster-reveal-modes input:checked + span {
  border-color: #ff4655;
  background: linear-gradient(90deg, rgba(255, 70, 85, 0.2), rgba(255, 70, 85, 0.04));
  transform: translateX(0.25rem);
}
.booster-reveal-modes input:focus-visible + span {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

.booster-opening-start {
  justify-self: start;
  min-width: 13rem;
}

.booster-reveal {
  position: relative;
  z-index: 1;
  max-width: 46rem;
  margin: 2.5rem auto 0;
}
.booster-reveal__progress {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-bottom: 1.25rem;
  color: rgba(248, 250, 252, 0.66);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.booster-reveal__progress > [data-booster-progress-label] {
  flex: 0 0 auto;
  white-space: nowrap;
}
.booster-reveal__pips {
  display: flex;
  min-width: 0;
  gap: 0.35rem;
}
.booster-reveal__pips span {
  width: 1.65rem;
  min-width: 0;
  flex-shrink: 1;
  height: 0.2rem;
  background: rgba(255, 255, 255, 0.12);
  transition: background 220ms ease, transform 220ms ease;
}
.booster-reveal__pips span.is-seen {
  background: rgba(255, 70, 85, 0.6);
}
.booster-reveal__pips span.is-current {
  background: #ff4655;
  transform: scaleY(2);
}
.booster-reveal__pips span.is-bonus {
  background: linear-gradient(90deg, #a92f3a, #ff4655);
  box-shadow: 0 0 0.7rem rgba(255, 70, 85, 0.42);
}
.booster-reveal__card-slot {
  position: relative;
  display: grid;
  min-height: 28rem;
  place-items: center;
}
.booster-reveal__card-slot::before, .booster-reveal__card-slot::after {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  width: min(68vw, 25rem);
  aspect-ratio: 1;
  opacity: 0;
  pointer-events: none;
  border: 0.12rem solid rgba(103, 245, 231, 0.62);
  content: "";
  transform: translate(-50%, -50%) scale(0.4) rotate(45deg);
}
.booster-reveal__card-slot::after {
  width: min(54vw, 19rem);
  border-color: rgba(255, 125, 204, 0.62);
  border-radius: 50%;
}
.booster-reveal__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  min-height: 3rem;
  margin-top: 1rem;
}
.booster-reveal__skip {
  min-height: 3rem;
  padding: 0.65rem 1.2rem;
  border: 1px solid rgba(248, 250, 252, 0.34);
  border-radius: 0;
  background: rgba(10, 15, 23, 0.78);
  color: rgba(248, 250, 252, 0.84);
  clip-path: polygon(0 0, calc(100% - 0.45rem) 0, 100% 0.45rem, 100% 100%, 0.45rem 100%, 0 calc(100% - 0.45rem));
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
  transition: border-color 140ms ease, background-color 140ms ease, color 140ms ease, transform 140ms ease;
}
.booster-reveal__skip:hover, .booster-reveal__skip:focus-visible {
  border-color: #ff4655;
  background: rgba(255, 70, 85, 0.12);
  color: #fff;
  transform: translateY(-1px);
}
.booster-reveal__skip:focus-visible {
  outline: 2px solid rgba(255, 70, 85, 0.52);
  outline-offset: 0.2rem;
}
.booster-reveal__skip:disabled {
  opacity: 0.48;
  pointer-events: none;
}
.booster-reveal__skip[hidden] {
  display: none;
}
.booster-reveal.is-fast-forwarding .booster-reveal__pips span {
  transition-duration: 45ms;
}
.booster-reveal.is-fast-forwarding .booster-reveal__card-slot {
  overflow: hidden;
}
.booster-reveal.is-fast-forwarding .booster-result-card--feature {
  animation: booster-card-fast-forward 115ms linear both;
  animation-delay: 0ms;
}

.booster-card-stack {
  position: relative;
  display: grid;
  width: min(100%, 20rem);
  place-items: start stretch;
  isolation: isolate;
}
.booster-card-stack__layers {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  width: 100%;
  aspect-ratio: 2/3;
  pointer-events: none;
  transform: translateX(-50%);
}
.booster-card-stack__edge {
  --stack-edge-color: #7c8894;
  position: absolute;
  inset: 0;
  opacity: 0;
  border: 2px solid var(--stack-edge-color);
  background: transparent;
  box-shadow: 0 0 0 1px rgba(4, 7, 11, 0.92), 0 0 0.8rem color-mix(in srgb, var(--stack-edge-color) 46%, transparent);
  clip-path: polygon(0.35rem 0, 100% 0, 100% calc(100% - 0.35rem), calc(100% - 0.35rem) 100%, 0 100%, 0 0.35rem);
  transition: opacity 90ms linear, filter 140ms ease, transform 90ms linear;
}
.booster-card-stack__edge[data-quality="2"] {
  --stack-edge-color: #6fa8dc;
}
.booster-card-stack__edge[data-quality="3"] {
  --stack-edge-color: #4fe3d8;
}
.booster-card-stack__edge[data-quality="4"] {
  --stack-edge-color: #ff6b78;
}
.booster-card-stack__edge[data-quality="5"] {
  --stack-edge-color: #d7b8ff;
}
.booster-card-stack__edge[data-finish=standard] {
  --stack-edge-color: #8c98a4;
}
.booster-card-stack__edge[data-finish=charged] {
  --stack-edge-color: #4fe3d8;
}
.booster-card-stack__edge[data-finish=overcharged] {
  --stack-edge-color: #ff6b78;
}
.booster-card-stack__edge[data-finish=sublimated] {
  --stack-edge-color: #f0c24b;
}
.booster-card-stack__edge[data-finish=radiant] {
  --stack-edge-color: #d7b8ff;
}
.booster-card-stack__active {
  position: relative;
  z-index: 50;
  width: 100%;
  cursor: grab;
  touch-action: pan-y;
  user-select: none;
  will-change: transform;
  transition: transform 260ms cubic-bezier(0.2, 0.72, 0.22, 1), opacity 180ms ease, filter 180ms ease;
}
.booster-card-stack__active .booster-result-card--feature {
  width: 100%;
}
.booster-card-stack__active:focus-visible {
  outline: 2px solid rgba(255, 70, 85, 0.82);
  outline-offset: 0.45rem;
}
.booster-card-stack__active.is-dragging {
  cursor: grabbing;
  transition: none;
}
.booster-card-stack__active.is-committing {
  opacity: 0;
  filter: blur(0.2rem);
  transition: transform 190ms cubic-bezier(0.4, 0, 1, 1), opacity 150ms ease, filter 150ms ease;
}
.booster-card-stack.is-peeking .booster-card-stack__layers {
  filter: drop-shadow(0 1rem 1.5rem rgba(0, 0, 0, 0.38));
}
.booster-card-stack.is-committing .booster-card-stack__edge {
  transition: transform 300ms cubic-bezier(0.2, 0.72, 0.22, 1), opacity 300ms ease-out;
}
.booster-card-stack.is-commit-ready .booster-card-stack__edge {
  filter: brightness(1.28) saturate(1.16);
}

.booster-card-stack--uwu .booster-card-stack__edge {
  --stack-edge-color: #ffb7e6;
  border-width: 0.16rem;
  border-radius: 1.1rem;
  background: linear-gradient(155deg, rgba(255, 244, 251, 0.22), rgba(188, 167, 255, 0.16));
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.34), 0 0 1.1rem color-mix(in srgb, var(--stack-edge-color) 56%, transparent);
  clip-path: none;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-quality="2"] {
  --stack-edge-color: #a8d8ff;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-quality="3"] {
  --stack-edge-color: #67f5e7;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-quality="4"] {
  --stack-edge-color: #ff9ed8;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-quality="5"] {
  --stack-edge-color: #ffe477;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-finish=standard] {
  --stack-edge-color: #dfe7f2;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-finish=charged] {
  --stack-edge-color: #7ff5ea;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-finish=overcharged] {
  --stack-edge-color: #ff8f9d;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-finish=sublimated] {
  --stack-edge-color: #ffdf8a;
}
.booster-card-stack--uwu .booster-card-stack__edge[data-finish=radiant] {
  --stack-edge-color: #cfb4ff;
}
.booster-card-stack--uwu .booster-card-stack__edge::before, .booster-card-stack--uwu .booster-card-stack__edge::after {
  position: absolute;
  top: -0.55rem;
  width: 1.1rem;
  height: 1.35rem;
  background: var(--stack-edge-color);
  content: "";
  clip-path: polygon(50% 0, 100% 100%, 0 82%);
}
.booster-card-stack--uwu .booster-card-stack__edge::before {
  left: 1.1rem;
  transform: rotate(-18deg);
}
.booster-card-stack--uwu .booster-card-stack__edge::after {
  right: 1.1rem;
  transform: rotate(18deg) scaleX(-1);
}
.booster-card-stack--uwu .booster-card-stack__active {
  cursor: grab;
}
.booster-card-stack--uwu.is-returning .booster-card-stack__active {
  animation: booster-uwu-card-squash 0.6s cubic-bezier(0.22, 0.78, 0.24, 1) both;
}
.booster-card-stack--uwu.is-commit-ready .booster-card-stack__edge {
  filter: brightness(1.1) saturate(1.3);
}

.booster-bonus-surprise {
  position: relative;
  display: grid;
  width: min(100%, 28rem);
  min-height: 14rem;
  place-content: center;
  gap: 0.65rem;
  overflow: hidden;
  border: 1px solid rgba(255, 70, 85, 0.56);
  background: radial-gradient(circle at 18% 22%, rgba(255, 70, 85, 0.2), transparent 38%), radial-gradient(circle at 82% 78%, rgba(180, 191, 204, 0.12), transparent 38%), rgba(10, 15, 23, 0.92);
  box-shadow: 0 1.4rem 3.5rem rgba(0, 0, 0, 0.42), 0 0 2rem rgba(255, 70, 85, 0.14);
  text-align: center;
  animation: booster-bonus-arrival 0.82s cubic-bezier(0.16, 0.8, 0.2, 1) both;
}
.booster-bonus-surprise::before, .booster-bonus-surprise::after {
  position: absolute;
  width: 2.4rem;
  aspect-ratio: 1;
  background: #ff4655;
  content: "";
  clip-path: polygon(50% 0, 61% 38%, 100% 50%, 61% 62%, 50% 100%, 39% 62%, 0 50%, 39% 38%);
  filter: drop-shadow(0 0 0.8rem rgba(255, 70, 85, 0.5));
  animation: booster-bonus-spark 0.9s ease-in-out infinite alternate;
}
.booster-bonus-surprise::before {
  top: 1.2rem;
  left: 1.4rem;
}
.booster-bonus-surprise::after {
  right: 1.4rem;
  bottom: 1.2rem;
  background: #b4bfcc;
  animation-delay: -0.42s;
}
.booster-bonus-surprise__eyebrow {
  color: #ff6b77;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.booster-bonus-surprise strong {
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(3.6rem, 10vw, 6.6rem);
  font-weight: 400;
  letter-spacing: 0.025em;
  line-height: 0.9;
  text-transform: uppercase;
  text-shadow: 0.12rem 0 #ff4655, -0.12rem 0 #6f7b88;
}

@keyframes booster-bonus-arrival {
  0% {
    opacity: 0;
    transform: scale(0.72) rotate(-2deg);
  }
  65% {
    opacity: 1;
    transform: scale(1.04) rotate(0.8deg);
  }
  100% {
    opacity: 1;
    transform: scale(1) rotate(0);
  }
}
@keyframes booster-bonus-spark {
  from {
    opacity: 0.4;
    transform: scale(0.7) rotate(0);
  }
  to {
    opacity: 1;
    transform: scale(1.12) rotate(55deg);
  }
}
.booster-reveal__drag-hint {
  min-height: 1.2rem;
  margin: 0.55rem 0 -0.2rem;
  visibility: hidden;
  opacity: 0;
  color: rgba(248, 250, 252, 0.58);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.4;
  text-transform: uppercase;
  transition: opacity 140ms ease, color 140ms ease, text-shadow 140ms ease;
}
.booster-reveal__drag-hint.is-visible {
  visibility: visible;
  opacity: 1;
}
.booster-reveal__drag-hint.is-commit-ready {
  color: #ff7a86;
  text-shadow: 0 0 0.8rem rgba(255, 70, 85, 0.42);
}
.booster-reveal__drag-hint[hidden] {
  display: none;
}

.booster-presenter__stage.is-uwu-card-pop .booster-uwu-atmosphere__focus {
  animation: booster-uwu-focus-burst 0.62s cubic-bezier(0.12, 0.72, 0.25, 1) both;
}

.booster-presenter__stage.is-uwu-glitch .booster-result-card--uwu .booster-result-card__visual {
  animation: booster-uwu-glitch 0.16s steps(2, end) 2 both;
}

.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch {
  animation: booster-uwu-eyecatch-hold 0.62s linear both;
}
.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch__veil {
  animation: booster-uwu-eyecatch-sweep 0.62s cubic-bezier(0.4, 0, 0.3, 1) both;
}
.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch__cat {
  animation: booster-uwu-eyecatch-pop 0.62s cubic-bezier(0.16, 0.8, 0.24, 1) both;
}
.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch__cat-ears {
  animation: booster-uwu-eyecatch-ears 0.62s ease-in-out both;
}
.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch__cat-tail {
  animation: booster-uwu-eyecatch-tail 0.62s ease-in-out both;
}
.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch__cat-eye {
  animation: booster-uwu-eyecatch-blink 0.62s steps(1, end) both;
}
.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch__cat-sparks path {
  animation: booster-uwu-eyecatch-spark 0.62s ease-out both;
}
.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch__cat-sparks path:nth-child(2) {
  animation-delay: 80ms;
}
.booster-presenter__stage.is-uwu-eyecatch .booster-uwu-eyecatch__cat-sparks path:nth-child(3) {
  animation-delay: 150ms;
}

.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__menace {
  animation: booster-uwu-menace-in 1.35s ease-out both;
}
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__gogogo {
  opacity: 1;
}
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__gogogo i {
  animation: booster-uwu-gogogo-rise 1.3s cubic-bezier(0.3, 0.7, 0.3, 1) var(--go-delay, 0s) both;
}
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__speed {
  animation: booster-uwu-speed-rush 1.2s cubic-bezier(0.2, 0.75, 0.25, 1) both;
}
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__cinema {
  animation: booster-uwu-cinema-close 1.35s linear both;
}
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__cinema::before {
  animation: booster-uwu-cinema-bar-top 1.35s cubic-bezier(0.2, 0.75, 0.25, 1) both;
}
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__cinema::after {
  animation: booster-uwu-cinema-bar-bottom 1.35s cubic-bezier(0.2, 0.75, 0.25, 1) both;
}
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__petals,
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__mascot,
.booster-presenter__stage.is-uwu-drama .booster-uwu-atmosphere__ribbon {
  opacity: 0.06;
}

.booster-presenter__stage.is-uwu-card-pop .booster-reveal__card-slot::before {
  animation: booster-uwu-card-ring 0.62s cubic-bezier(0.12, 0.72, 0.25, 1) both;
}
.booster-presenter__stage.is-uwu-card-pop .booster-reveal__card-slot::after {
  animation: booster-uwu-card-ring 0.62s cubic-bezier(0.12, 0.72, 0.25, 1) 70ms both;
}

.booster-results {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
  gap: 2rem 1.25rem;
  justify-items: center;
  margin-top: 2.5rem;
  text-align: left;
}

.booster-result-card {
  position: relative;
  display: block;
  width: min(100%, 17rem);
  overflow: visible;
  color: inherit;
  text-decoration: none;
  animation: booster-card-reveal 0.52s cubic-bezier(0.2, 0.75, 0.18, 1) both;
  animation-delay: calc(var(--reveal-order) * 80ms);
}
.booster-result-card--feature {
  width: min(100%, 20rem);
}
.booster-result-card--bonus .booster-result-card__visual {
  filter: drop-shadow(0 0 1.15rem rgba(255, 70, 85, 0.28));
}
.booster-result-card__bonus-label {
  position: absolute;
  z-index: 4;
  top: -0.75rem;
  left: 50%;
  padding: 0.38rem 0.75rem;
  border: 1px solid rgba(255, 132, 142, 0.72);
  background: linear-gradient(100deg, #a92f3a, #ff4655);
  color: #fff;
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.11em;
  line-height: 1;
  text-transform: uppercase;
  transform: translateX(-50%);
  white-space: nowrap;
}
.booster-result-card--uwu {
  isolation: isolate;
}
.booster-result-card--uwu::before {
  position: absolute;
  z-index: -1;
  inset: -0.8rem;
  border: 1px solid rgba(103, 245, 231, 0.42);
  background: radial-gradient(circle at 20% 15%, rgba(255, 125, 204, 0.36), transparent 34%), radial-gradient(circle at 82% 84%, rgba(103, 245, 231, 0.28), transparent 32%);
  box-shadow: 0 0 1.2rem rgba(103, 245, 231, 0.2), 0 0 2.8rem rgba(255, 125, 204, 0.2);
  content: "";
  clip-path: polygon(0.8rem 0, 100% 0, calc(100% - 0.8rem) 100%, 0 100%);
  animation: booster-uwu-card-glow 1.55s ease-in-out infinite;
}
.booster-result-card--uwu::after {
  position: absolute;
  z-index: 2;
  top: -1.1rem;
  right: -1rem;
  width: 1.45rem;
  aspect-ratio: 1;
  background: #ffe477;
  content: "";
  clip-path: polygon(50% 0, 61% 38%, 100% 50%, 61% 62%, 50% 100%, 39% 62%, 0 50%, 39% 38%);
  filter: drop-shadow(0 0 0.7rem rgba(255, 228, 119, 0.8));
  animation: booster-uwu-spark-pop 1.2s ease-in-out infinite;
}
.booster-result-card--uwu .booster-result-card__quality .booster-result-card__stars {
  border-color: rgba(103, 245, 231, 0.45);
  background: linear-gradient(100deg, rgba(255, 125, 204, 0.18), rgba(10, 15, 23, 0.9), rgba(103, 245, 231, 0.16));
  box-shadow: 0 0.6rem 1.5rem rgba(0, 0, 0, 0.28), 0 0 1.1rem rgba(255, 125, 204, 0.18);
}
.booster-result-card__link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.booster-result-card__link:hover {
  color: inherit;
}
.booster-result-card__link:focus-visible {
  border-radius: 0.75rem;
  outline: 2px solid #ff4655;
  outline-offset: 0.5rem;
}
.booster-result-card__visual {
  display: grid;
  width: 100%;
  place-items: center;
  overflow: visible;
}
.booster-result-card__visual .c-card-slot,
.booster-result-card__visual .c-card-shell {
  width: 100%;
}
.booster-result-card__visual .c-card-shell {
  max-width: none;
}
.booster-result-card__unavailable {
  display: grid;
  width: 100%;
  aspect-ratio: 2/3;
  place-items: center;
  padding: 1.5rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: #151e29;
  color: rgba(255, 255, 255, 0.82);
  font-weight: 700;
  text-align: center;
}
.booster-result-card__quality {
  display: flex;
  min-height: 2.2rem;
  align-items: center;
  justify-content: center;
  margin-top: 0.8rem;
}
.booster-result-card__quality .booster-result-card__stars {
  padding: 0.45rem 0.65rem;
  border: 1px solid rgba(255, 209, 102, 0.28);
  border-radius: 999px;
  background: rgba(10, 15, 23, 0.82);
  box-shadow: 0 0.6rem 1.5rem rgba(0, 0, 0, 0.28);
}
.booster-result-card__stars {
  display: inline-flex;
  align-items: center;
  gap: 0.15rem;
  color: #ffd166;
}
.booster-result-card__stars svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
  filter: drop-shadow(0 0 0.35rem rgba(255, 209, 102, 0.25));
}
.booster-result-card__share {
  display: grid;
  justify-items: center;
  gap: 0.5rem;
  margin-top: 0.35rem;
}
.booster-result-card__share-button {
  display: inline-flex;
  min-height: 2.65rem;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 1rem;
  border: 1px solid rgba(88, 101, 242, 0.72);
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(88, 101, 242, 0.24), rgba(88, 101, 242, 0.1));
  color: #eef0ff;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.025em;
  line-height: 1.2;
  text-align: center;
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease;
}
.booster-result-card__share-button:hover:not(:disabled) {
  border-color: #8d99ff;
  background: linear-gradient(135deg, rgba(88, 101, 242, 0.42), rgba(88, 101, 242, 0.18));
  transform: translateY(-1px);
}
.booster-result-card__share-button:focus-visible {
  outline: 2px solid #ff4655;
  outline-offset: 0.25rem;
}
.booster-result-card__share-button:disabled {
  cursor: default;
  opacity: 0.78;
}
.booster-result-card__share-button.is-pending {
  border-color: rgba(255, 209, 102, 0.5);
  background: rgba(255, 209, 102, 0.08);
  color: #ffe39a;
}
.booster-result-card__share-button.is-completed {
  border-color: rgba(79, 227, 216, 0.55);
  background: rgba(79, 227, 216, 0.1);
  color: #8ff5ed;
}
.booster-result-card__share-button.is-error {
  border-color: rgba(255, 107, 120, 0.64);
  background: rgba(255, 107, 120, 0.1);
  color: #ffadb5;
}
.booster-result-card__share-feedback {
  max-width: 16rem;
  color: #ffadb5;
  font-size: 0.78rem;
  line-height: 1.35;
  text-align: center;
}
.booster-result-card:focus-visible {
  outline: 2px solid #ff4655;
  outline-offset: 0.5rem;
}
.booster-result-card:hover {
  color: inherit;
}

.booster-results .booster-result-card:has(.booster-card-actions details[open]) {
  z-index: 12;
}

.booster-results .booster-result-card__visual {
  isolation: isolate;
}

.booster-card-actions {
  position: relative;
  z-index: 20;
  margin-top: 0.6rem;
  font-size: 0.9rem;
  line-height: 1.4;
}
.booster-card-actions__count, .booster-card-actions__status {
  margin: 0.45rem 0;
  text-align: center;
  overflow-wrap: anywhere;
}
.booster-card-actions__count {
  color: #c1ccd8;
}
.booster-card-actions__status {
  color: #8ff5ed;
}
.booster-card-actions__status.is-error {
  color: #ffadb5;
}
.booster-card-actions__status:empty {
  display: none;
}
.booster-card-actions details {
  position: relative;
}
.booster-card-actions summary {
  display: flex;
  width: fit-content;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin: 0.35rem auto 0;
  padding: 0.45rem 0.75rem;
  border: 1px solid rgba(184, 201, 217, 0.16);
  border-radius: 0.35rem;
  background: rgba(184, 201, 217, 0.035);
  color: #d8e3ee;
  font-size: 0.82rem;
  font-weight: 500;
  transition: background 140ms ease, border-color 140ms ease, color 140ms ease;
  cursor: pointer;
  list-style: none;
}
.booster-card-actions summary::-webkit-details-marker {
  display: none;
}
.booster-card-actions summary svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.booster-card-actions summary svg:last-child {
  width: 0.8rem;
  color: #9badbf;
}
.booster-card-actions summary:hover {
  background: #1b2937;
  border-color: #61798e;
  color: #fff;
}
.booster-card-actions details[open] > summary {
  background: #1b2937;
  border-color: #61798e;
  color: #fff;
}
.booster-card-actions details[open] > summary svg:last-child {
  transform: rotate(180deg);
}
.booster-card-actions__menu {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: calc(100% + 0.4rem);
  left: 0;
  padding: 0.4rem;
  border: 1px solid #5b7186;
  border-radius: 0.55rem;
  background: #152231;
  box-shadow: 0 0.75rem 2rem rgba(0, 0, 0, 0.65);
  color: #f2f6fa;
  overflow-wrap: anywhere;
}
.booster-card-actions button,
.booster-card-actions .booster-result-card__share-button {
  display: block;
  width: 100%;
  min-height: 2.75rem;
  padding: 0.65rem 0.75rem;
  border: 0;
  border-radius: 0.3rem;
  background: transparent;
  color: inherit;
  font: inherit;
  letter-spacing: normal;
  text-align: left;
  transform: none;
}
.booster-card-actions button:hover:not(:disabled),
.booster-card-actions .booster-result-card__share-button:hover:not(:disabled) {
  background: #263748;
  transform: none;
}
.booster-card-actions button:disabled,
.booster-card-actions .booster-result-card__share-button:disabled {
  opacity: 0.5;
  cursor: default;
}
.booster-card-actions__menu .booster-card-actions__option {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.75rem;
}
.booster-card-actions__menu .booster-card-actions__option > svg {
  width: 1.15rem;
  height: 1.15rem;
  flex-shrink: 0;
  color: #b3c6d8;
}
.booster-card-actions__option-copy {
  display: grid;
  gap: 0.12rem;
  line-height: 1.3;
}
.booster-card-actions__option-copy small, .booster-card-actions__option-copy .small {
  color: #b3c6d8;
  font-size: 0.76rem;
}
.booster-card-actions__option-copy small:empty, .booster-card-actions__option-copy .small:empty {
  display: none;
}
.booster-card-actions :is(summary, button, input):focus-visible {
  outline: 2px solid #b3c6d8;
  outline-offset: 2px;
}
.booster-card-actions .booster-result-card__share {
  margin: 0;
}
.booster-card-actions .booster-result-card__share-feedback {
  padding: 0 0.7rem;
}
.booster-card-actions__panel {
  padding: 0.5rem;
}
.booster-card-actions__panel strong {
  display: block;
  margin-bottom: 0.75rem;
}
.booster-card-actions__panel p {
  margin: 0.65rem 0;
}
.booster-card-actions__panel dl {
  margin: 0.75rem 0;
}
.booster-card-actions__panel dt {
  color: #acbdce;
  font-weight: 400;
}
.booster-card-actions__panel dd {
  margin: 0 0 0.6rem;
}
.booster-card-actions__panel label {
  display: block;
}
.booster-card-actions__panel input {
  display: block;
  width: 100%;
  margin: 0.5rem 0;
  padding: 0.7rem;
  border: 1px solid #708396;
  border-radius: 0.3rem;
  background: #0b1420;
  color: #fff;
}
.booster-card-actions__note {
  color: #c1ccd8;
  font-size: 0.8rem;
}
.booster-card-actions__recipients {
  position: relative;
  max-height: 10rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #526c83 #0b1420;
  border: 1px solid #526c83;
  border-radius: 0.3rem;
  background: #0b1420;
}
.booster-card-actions__recipients button {
  display: grid;
  gap: 0.15rem;
  line-height: 1.3;
  scroll-margin: 0;
}
.booster-card-actions__recipients button[aria-selected=true] {
  background: #263748;
}
.booster-card-actions__recipients button small, .booster-card-actions__recipients button .small {
  color: #b3c6d8;
  font-size: 0.76rem;
}
.booster-card-actions__panel .booster-card-actions__search-status {
  margin: 0.4rem 0 0.65rem;
  color: #b3c6d8;
  font-size: 0.76rem;
  line-height: 1.35;
}
.booster-card-actions [hidden] {
  display: none !important;
}

.booster-result-card--feature:not(.booster-result-card--uwu) {
  --classic-rarity-color: var(--classic-reveal-accent, #8c98a4);
  --classic-rarity-glow: var(--classic-reveal-glow, rgba(140, 152, 164, 0.16));
  isolation: isolate;
  animation: none;
}
.booster-result-card--feature:not(.booster-result-card--uwu)::before, .booster-result-card--feature:not(.booster-result-card--uwu)::after {
  position: absolute;
  z-index: -1;
  content: "";
  pointer-events: none;
}
.booster-result-card--feature:not(.booster-result-card--uwu)::before {
  inset: -0.85rem;
  opacity: 0.72;
  border: 1px solid color-mix(in srgb, var(--classic-rarity-color) 52%, transparent);
  background: radial-gradient(circle at 50% 40%, var(--classic-rarity-glow), transparent 68%);
  box-shadow: 0 0 2.2rem var(--classic-rarity-glow);
  clip-path: polygon(0.8rem 0, 100% 0, calc(100% - 0.8rem) 100%, 0 100%);
  animation: booster-classic-card-aura 0.72s cubic-bezier(0.12, 0.76, 0.18, 1) both, booster-classic-card-energy 1.8s ease-in-out 0.72s infinite;
}
.booster-result-card--feature:not(.booster-result-card--uwu)::after {
  top: 45%;
  left: 50%;
  width: 118%;
  aspect-ratio: 1;
  opacity: 0.22;
  background: repeating-conic-gradient(from 0deg, transparent 0 15deg, var(--classic-rarity-glow) 16deg 18deg, transparent 19deg 45deg);
  transform: translate(-50%, -50%) rotate(0deg);
  animation: booster-classic-rarity-rays 12s linear infinite;
}
.booster-result-card--feature:not(.booster-result-card--uwu) .booster-result-card__visual {
  animation: none;
}
.booster-result-card--feature:not(.booster-result-card--uwu)[data-quality="4"]::before {
  opacity: 0.92;
  border-color: color-mix(in srgb, var(--classic-rarity-color) 65%, #d9f6ff);
  box-shadow: 0 0 1.4rem var(--classic-rarity-glow), 0 0 3.6rem rgba(183, 227, 255, 0.14);
}
.booster-result-card--feature:not(.booster-result-card--uwu)[data-quality="5"]::before {
  opacity: 1;
  border-width: 2px;
  border-color: color-mix(in srgb, var(--classic-rarity-color) 45%, #e9fbff);
  box-shadow: 0 0 1.8rem var(--classic-rarity-glow), 0 0 4.5rem rgba(218, 246, 255, 0.2);
}
.booster-result-card--feature:not(.booster-result-card--uwu)[data-quality="5"]::after {
  opacity: 0.5;
}

.booster-result-card__visual:has(.booster-card-spotlight-trace) {
  position: relative;
}

.booster-card-spotlight-trace {
  position: absolute;
  z-index: 3;
  top: 0;
  left: 50%;
  width: min(100%, 260px);
  height: auto;
  aspect-ratio: 2/3;
  overflow: visible;
  pointer-events: none;
  transform: translateX(-50%);
  opacity: var(--opening-light-power, 0);
  filter: drop-shadow(0 0 0.3rem var(--classic-rarity-color));
}
.booster-card-spotlight-trace path {
  fill: none;
  stroke: #fff9e9;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-dasharray: 85 415;
  stroke-dashoffset: calc(var(--opening-light-travel, 0) * -1);
}
.booster-card-spotlight-trace path + path {
  stroke: var(--classic-rarity-color);
  stroke-width: 3;
  stroke-dasharray: 30 470;
  stroke-dashoffset: calc(var(--opening-light-travel, 0) * -1 + 110);
  opacity: 0.7;
}

.booster-results .booster-result-card .c-card-slot {
  pointer-events: none;
}

.booster-item-rewards {
  display: grid;
  width: min(100%, 38rem);
  gap: 0.85rem;
  margin: 2.5rem auto 0;
}

.booster-item-reward {
  --item-color: #8b5cf6;
  position: relative;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  overflow: hidden;
  padding: 1.15rem 1.4rem;
  border: 1px solid color-mix(in srgb, var(--item-color) 46%, rgba(255, 255, 255, 0.18));
  border-radius: 1rem;
  background: radial-gradient(circle at 12% 50%, color-mix(in srgb, var(--item-color) 24%, transparent), transparent 38%), linear-gradient(115deg, rgba(12, 18, 29, 0.97), rgba(19, 25, 39, 0.92));
  box-shadow: 0 1rem 2.8rem rgba(0, 0, 0, 0.34), inset 0 0 1.8rem color-mix(in srgb, var(--item-color) 10%, transparent);
  text-align: left;
  animation: booster-item-reward-reveal 0.68s cubic-bezier(0.16, 0.84, 0.24, 1) both;
  animation-delay: calc(var(--reward-order) * 90ms + 140ms);
}
.booster-item-reward::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 15%, rgba(255, 255, 255, 0.14) 48%, transparent 75%);
  content: "";
  pointer-events: none;
  transform: translateX(-120%);
  animation: booster-item-reward-shine 1.1s 0.35s ease-out both;
}
.booster-item-reward__visual {
  position: relative;
  display: grid;
  width: 5.25rem;
  height: 5.25rem;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--item-color) 65%, white);
  border-radius: 50%;
  background: radial-gradient(circle, color-mix(in srgb, var(--item-color) 24%, #111827), #080c14 72%);
  box-shadow: 0 0 1.5rem color-mix(in srgb, var(--item-color) 35%, transparent), inset 0 0 1rem rgba(255, 255, 255, 0.08);
}
.booster-item-reward__visual img {
  width: 88%;
  height: 88%;
  object-fit: contain;
  filter: drop-shadow(0 0 0.65rem color-mix(in srgb, var(--item-color) 55%, transparent));
}
.booster-item-reward__copy {
  display: grid;
  gap: 0.18rem;
}
.booster-item-reward__copy strong {
  color: #fff;
  font-size: clamp(1.25rem, 3vw, 1.75rem);
  line-height: 1.15;
}
.booster-item-reward__eyebrow {
  color: color-mix(in srgb, var(--item-color) 72%, white);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

@media (max-width: 991.98px) {
  .owned-booster {
    grid-template-columns: 3.5rem minmax(13rem, 0.72fr) minmax(18rem, 1.28fr);
  }
  .owned-booster:nth-child(even) {
    grid-template-columns: 3.5rem minmax(18rem, 1.28fr) minmax(13rem, 0.72fr);
  }
  .owned-booster__visual {
    padding-inline: 2rem;
  }
  .owned-booster__body {
    padding-inline: clamp(2rem, 5vw, 3.5rem);
  }
  .owned-booster__serial {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .boosters-section-heading {
    align-items: flex-start;
  }
  .boosters-section-heading--inventory {
    flex-direction: column;
  }
  .boosters-store-link {
    align-self: stretch;
  }
  .owned-booster,
  .owned-booster:nth-child(even) {
    grid-template-columns: 2.75rem minmax(0, 1fr);
    min-height: 0;
    transform: none;
  }
  .owned-booster::after,
  .owned-booster:nth-child(even)::after {
    top: 27%;
    left: 38%;
    height: 105%;
  }
  .owned-booster .owned-booster__rail,
  .owned-booster:nth-child(even) .owned-booster__rail {
    grid-column: 1;
    grid-row: 1/span 2;
  }
  .owned-booster .owned-booster__visual,
  .owned-booster:nth-child(even) .owned-booster__visual {
    grid-column: 2;
    grid-row: 1;
    min-height: 21rem;
    padding: 2.4rem 2rem;
  }
  .owned-booster .owned-booster__body,
  .owned-booster:nth-child(even) .owned-booster__body {
    grid-column: 2;
    grid-row: 2;
    padding: 2.1rem clamp(1.35rem, 6vw, 2.5rem) 2.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    border-right: 0;
    border-left: 0;
  }
  .owned-booster .owned-booster__pack,
  .owned-booster:nth-child(even) .owned-booster__pack {
    width: min(100%, 12.5rem);
    transform: perspective(60rem) rotateY(5deg) rotateZ(-2.5deg);
  }
  .owned-booster:hover .owned-booster__pack,
  .owned-booster:nth-child(even):hover .owned-booster__pack {
    transform: perspective(60rem) rotateY(2deg) rotateZ(-1deg) translateY(-0.35rem) scale(1.015);
  }
  .owned-booster .owned-booster__seal,
  .owned-booster:nth-child(even) .owned-booster__seal {
    right: 1rem;
    bottom: 1rem;
  }
}
@media (max-width: 575.98px) {
  .boosters-layout {
    padding-top: 2rem;
  }
  .boosters-history {
    margin-top: 4rem;
  }
  .boosters-history__heading {
    flex-direction: column;
    gap: 0.35rem;
    margin-bottom: 0.85rem;
  }
  .boosters-history__heading p {
    margin: 0;
  }
  .boosters-history__timeline {
    min-height: 17rem;
  }
  .boosters-history__event {
    flex-basis: min(78vw, 17rem);
  }
  .boosters-history__item {
    padding-inline: 0.65rem;
  }
  .boosters-section-heading--inventory h2, .boosters-section-heading--inventory .h2 {
    font-size: clamp(2.25rem, 13vw, 3.5rem);
  }
  .owned-booster__body h3, .owned-booster__body .h3 {
    font-size: clamp(2.6rem, 14vw, 4rem);
  }
  .owned-booster__details {
    display: grid;
  }
  .owned-booster__details > span {
    padding: 0;
  }
  .owned-booster__details > span + span {
    margin-top: 0.85rem;
    padding: 0.85rem 0 0;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    border-left: 0;
  }
  .owned-booster__open {
    width: 100%;
  }
  .booster-result-card {
    width: min(100%, 16rem);
  }
  .booster-result-card--feature {
    width: min(100%, 18rem);
  }
}
@keyframes booster-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes booster-pack-float {
  0%, 100% {
    transform: perspective(50rem) rotateY(8deg) rotateZ(-2deg) translateY(0);
  }
  50% {
    transform: perspective(50rem) rotateY(5deg) rotateZ(-1deg) translateY(-0.6rem);
  }
}
@keyframes booster-pack-opening-prelude {
  0% {
    opacity: 1;
    transform: perspective(50rem) rotateY(8deg) rotateZ(-2deg) translate3d(0, 0, 0) scale(1);
    filter: brightness(1) saturate(1);
  }
  20% {
    transform: perspective(50rem) rotateY(-12deg) rotateZ(1deg) translate3d(0, -0.2rem, 0) scale(1.025);
  }
  38% {
    transform: perspective(50rem) rotateY(0deg) rotateZ(0deg) translate3d(0, -0.42rem, 0) scale(1.055);
    filter: brightness(1.12) saturate(1.08);
  }
  52% {
    transform: perspective(50rem) rotateY(5deg) rotateZ(-1.8deg) translate3d(-0.18rem, -0.35rem, 0) scale(1.045);
  }
  58% {
    transform: perspective(50rem) rotateY(-4deg) rotateZ(2deg) translate3d(0.2rem, -0.42rem, 0) scale(1.07);
  }
  64% {
    transform: perspective(50rem) rotateY(3deg) rotateZ(-1.4deg) translate3d(-0.12rem, -0.45rem, 0) scale(1.085);
    filter: brightness(1.65) saturate(1.2);
  }
  76% {
    opacity: 1;
    transform: perspective(50rem) rotateY(0deg) rotateZ(0deg) translate3d(0, -0.6rem, 0) scale(1.14);
    filter: brightness(2.2) saturate(0.8);
  }
  88% {
    opacity: 0.9;
    transform: perspective(50rem) rotateY(0deg) rotateZ(0deg) translate3d(0, -0.75rem, 0) scale(1.22);
    filter: brightness(3.4) saturate(0.4) blur(0.06rem);
  }
  100% {
    opacity: 0;
    transform: perspective(50rem) rotateY(0deg) rotateZ(0deg) translate3d(0, -0.85rem, 0) scale(1.36);
    filter: brightness(4) saturate(0) blur(0.28rem);
  }
}
@keyframes booster-classic-vignette {
  0% {
    opacity: 0;
  }
  16%, 72% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes booster-classic-grid-lock {
  0% {
    opacity: 0;
    transform: perspective(50rem) rotateX(58deg) translateY(42%) scale(1.48);
  }
  32%, 72% {
    opacity: 0.48;
  }
  100% {
    opacity: 0;
    transform: perspective(50rem) rotateX(58deg) translateY(24%) scale(1.18);
  }
}
@keyframes booster-classic-target-lock {
  0% {
    opacity: 0;
    transform: translate(var(--classic-corner-x), var(--classic-corner-y)) scale(0.78);
  }
  42% {
    opacity: 0.86;
  }
  58% {
    opacity: 0.34;
  }
  68%, 88% {
    opacity: 1;
    transform: translate(0, 0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translate(0, 0) scale(1.02);
  }
}
@keyframes booster-classic-crosshair-lock {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scaleX(0.3);
  }
  36%, 82% {
    opacity: 0.72;
    transform: translate(-50%, -50%) scaleX(1);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scaleX(1.04);
  }
}
@keyframes booster-classic-telemetry {
  0% {
    opacity: 0;
    transform: translateX(var(--classic-telemetry-x));
  }
  22%, 76% {
    opacity: 0.9;
    transform: translateX(0);
  }
  80% {
    opacity: 0.25;
  }
  86% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translateX(0);
  }
}
@keyframes booster-classic-energy-fill {
  0% {
    opacity: 0.18;
    background: rgba(255, 255, 255, 0.18);
    transform: scaleX(0.45);
  }
  62% {
    opacity: 1;
    background: #ff4655;
    transform: scaleX(1);
  }
  100% {
    opacity: 1;
    background: #fff;
    box-shadow: 0 0 0.75rem rgba(255, 70, 85, 0.88);
    transform: scaleX(1);
  }
}
@keyframes booster-classic-scan {
  0% {
    opacity: 0;
    transform: translate(-50%, 5rem);
  }
  12%, 78% {
    opacity: 0.94;
  }
  100% {
    opacity: 0;
    transform: translate(-50%, 34rem);
  }
}
@keyframes booster-classic-ring-charge {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(45deg) scale(0.35);
  }
  38% {
    opacity: 0.78;
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(135deg) scale(1.2);
  }
}
@keyframes booster-classic-ring-charge-round {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.45);
  }
  42% {
    opacity: 0.68;
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(-45deg) scale(1.48);
  }
}
@keyframes booster-classic-flare {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.15);
  }
  42% {
    opacity: 0.92;
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.08);
  }
}
@keyframes booster-classic-shard-burst {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(var(--classic-shard-angle)) scaleY(0.2);
  }
  18% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translate(calc(-50% + var(--classic-shard-x)), calc(-50% + var(--classic-shard-y))) rotate(var(--classic-shard-angle)) scaleY(1);
  }
}
@keyframes booster-classic-pack-rupture {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(24deg) scaleY(0);
  }
  35%, 72% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(24deg) scaleY(1.15);
  }
}
@keyframes booster-classic-pack-split-left {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0) rotate(0);
    filter: brightness(1);
  }
  16% {
    opacity: 1;
  }
  58% {
    opacity: 1;
    transform: translate3d(-1.8rem, -0.3rem, 0) rotate(-5deg);
    filter: brightness(1.8);
  }
  100% {
    opacity: 0;
    transform: translate3d(-7rem, 1rem, 0) rotate(-14deg);
    filter: brightness(3) blur(0.12rem);
  }
}
@keyframes booster-classic-pack-split-right {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0) rotate(0);
    filter: brightness(1);
  }
  16% {
    opacity: 1;
  }
  58% {
    opacity: 1;
    transform: translate3d(1.8rem, 0.3rem, 0) rotate(5deg);
    filter: brightness(1.8);
  }
  100% {
    opacity: 0;
    transform: translate3d(7rem, -1rem, 0) rotate(14deg);
    filter: brightness(3) blur(0.12rem);
  }
}
@keyframes booster-classic-opening-flash {
  0%, 36% {
    opacity: 0;
  }
  48% {
    opacity: 0.94;
  }
  57% {
    opacity: 0.08;
  }
  66% {
    opacity: 0.5;
  }
  100% {
    opacity: 0;
  }
}
@keyframes booster-classic-transition-sweep {
  0% {
    opacity: 0;
    transform: translateX(-145%) skewX(-17deg);
  }
  18% {
    opacity: 1;
  }
  72% {
    opacity: 0.94;
  }
  100% {
    opacity: 0;
    transform: translateX(410%) skewX(-17deg);
  }
}
@keyframes booster-classic-card-change-scan {
  0% {
    opacity: 0;
    transform: translateX(-125%) skewX(-14deg);
  }
  28% {
    opacity: 0.24;
  }
  58% {
    opacity: 0.34;
  }
  100% {
    opacity: 0;
    transform: translateX(680%) skewX(-14deg);
  }
}
@keyframes booster-classic-card-strike {
  0% {
    opacity: 0;
    transform: perspective(55rem) translate3d(1.6rem, 0.35rem, 0) rotateY(-10deg) rotateZ(0.8deg) scale(0.94);
    filter: brightness(2.35) blur(0.22rem);
  }
  42% {
    opacity: 1;
    transform: perspective(55rem) translate3d(-0.28rem, -0.12rem, 0) rotateY(2deg) rotateZ(-0.25deg) scale(1.025);
    filter: brightness(1.42) blur(0);
  }
  68% {
    transform: perspective(55rem) translate3d(0.1rem, 0, 0) rotateY(-0.7deg) rotateZ(0.08deg) scale(0.995);
    filter: brightness(1.07);
  }
  100% {
    opacity: 1;
    transform: perspective(55rem) translate3d(0, 0, 0) rotateY(0) rotateZ(0) scale(1);
    filter: brightness(1);
  }
}
@keyframes booster-classic-card-impact-ring {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.28) rotate(45deg);
  }
  36% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.6) rotate(90deg);
  }
}
@keyframes booster-classic-card-aura {
  0% {
    opacity: 0;
    transform: scale(0.68);
  }
  48% {
    opacity: 1;
    transform: scale(1.075);
  }
  100% {
    opacity: 0.72;
    transform: scale(0.985);
  }
}
@keyframes booster-classic-card-visual-settle {
  0% {
    transform: scale(1.09);
    filter: contrast(1.28) brightness(1.45);
  }
  55% {
    transform: scale(0.985);
    filter: contrast(1.08) brightness(1.08);
  }
  100% {
    transform: scale(1);
    filter: none;
  }
}
@keyframes booster-classic-rare-impact {
  0% {
    filter: brightness(1.7) saturate(1.15);
  }
  38% {
    filter: brightness(1.22) saturate(1.08);
  }
  100% {
    filter: none;
  }
}
@keyframes booster-classic-radiant-arrival {
  0% {
    transform: scale(0.78) rotateY(-24deg);
    filter: brightness(3) saturate(0);
  }
  38% {
    transform: scale(1.075) rotateY(3deg);
    filter: brightness(1.65) saturate(1.45);
  }
  68% {
    transform: scale(0.99) rotateY(-1deg);
    filter: brightness(1.12) saturate(1.1);
  }
  100% {
    transform: scale(1) rotateY(0);
    filter: none;
  }
}
@keyframes booster-classic-reveal-vignette {
  0%, 100% {
    opacity: 0.52;
    filter: saturate(0.9);
  }
  50% {
    opacity: 0.9;
    filter: saturate(1.18);
  }
}
@keyframes booster-classic-reveal-grid {
  0% {
    opacity: 0.16;
    transform: perspective(50rem) rotateX(58deg) translateY(38%) scale(1.4);
  }
  50% {
    opacity: 0.32;
  }
  100% {
    opacity: 0.16;
    transform: perspective(50rem) rotateX(58deg) translateY(22%) scale(1.18);
  }
}
@keyframes booster-classic-reveal-orbit {
  0% {
    opacity: 0.14;
    transform: translate(-50%, -50%) rotate(45deg) scale(0.84);
  }
  42% {
    opacity: 0.42;
  }
  100% {
    opacity: 0.14;
    transform: translate(-50%, -50%) rotate(405deg) scale(1.08);
  }
}
@keyframes booster-classic-reveal-orbit-reverse {
  0% {
    opacity: 0.36;
    transform: translate(-50%, -50%) rotate(0) scale(0.82);
  }
  50% {
    opacity: 0.16;
  }
  100% {
    opacity: 0.36;
    transform: translate(-50%, -50%) rotate(-360deg) scale(1.06);
  }
}
@keyframes booster-classic-reveal-scan {
  0%, 8% {
    opacity: 0;
    transform: translate(-50%, 7rem);
  }
  18%, 68% {
    opacity: 0.48;
  }
  78%, 100% {
    opacity: 0;
    transform: translate(-50%, 35rem);
  }
}
@keyframes booster-classic-reveal-crosshair {
  0%, 100% {
    opacity: 0.16;
    transform: translate(-50%, -50%) scaleX(0.92);
  }
  50% {
    opacity: 0.42;
    transform: translate(-50%, -50%) scaleX(1);
  }
}
@keyframes booster-classic-reveal-hud {
  0%, 8%, 12%, 100% {
    opacity: 0.28;
  }
  10% {
    opacity: 0.72;
  }
  46% {
    opacity: 0.44;
  }
  48% {
    opacity: 0.82;
  }
}
@keyframes booster-classic-reveal-energy {
  0%, 100% {
    opacity: 0.16;
    transform: scaleX(0.72);
    filter: brightness(0.8);
  }
  48% {
    opacity: 0.82;
    transform: scaleX(1);
    filter: brightness(1.42);
  }
}
@keyframes booster-classic-horizon-open {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scaleX(0.12);
  }
  100% {
    opacity: 0.75;
    transform: translate(-50%, -50%) scaleX(1);
  }
}
@keyframes booster-classic-horizon-idle {
  0%, 100% {
    opacity: 0.3;
  }
  50% {
    opacity: 0.62;
  }
}
@keyframes booster-classic-depth-drift {
  0% {
    opacity: 0.5;
    background-position: 0 0;
  }
  100% {
    opacity: 0.5;
    background-position: 7rem 0;
  }
}
@keyframes booster-classic-ticks-in {
  0% {
    opacity: 0;
    transform: translateY(-50%) scaleY(0.3);
  }
  100% {
    opacity: 0.72;
    transform: translateY(-50%) scaleY(1);
  }
}
@keyframes booster-classic-ticks-idle {
  0%, 100% {
    opacity: 0.34;
  }
  50% {
    opacity: 0.66;
  }
}
@keyframes booster-classic-mote-rise {
  0% {
    opacity: 0;
    transform: translateY(0) translateX(0);
  }
  12%, 76% {
    opacity: 0.7;
  }
  100% {
    opacity: 0;
    transform: translateY(-96vh) translateX(var(--mote-drift, 1.5rem));
  }
}
@keyframes booster-classic-charge-lock {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.7);
  }
  38% {
    opacity: 0.85;
  }
  82% {
    opacity: 0.7;
    transform: translate(-50%, -50%) scale(1.02);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.94);
  }
}
@keyframes booster-classic-shock-out {
  0% {
    opacity: 0.9;
    border-width: 0.2rem;
    transform: translate(-50%, -50%) scale(0.25);
  }
  100% {
    opacity: 0;
    border-width: 0.02rem;
    transform: translate(-50%, -50%) scale(2.6);
  }
}
@keyframes booster-classic-reveal-flare {
  0%, 100% {
    opacity: 0.08;
    transform: translate(-50%, -50%) scale(0.58);
  }
  50% {
    opacity: 0.26;
    transform: translate(-50%, -50%) scale(0.94);
  }
}
@keyframes booster-classic-reveal-streak {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(var(--classic-shard-angle)) scaleY(0.12);
  }
  16%, 38% {
    opacity: 0.42;
  }
  72%, 100% {
    opacity: 0;
    transform: translate(calc(-50% + var(--classic-shard-x)), calc(-50% + var(--classic-shard-y))) rotate(var(--classic-shard-angle)) scaleY(0.82);
  }
}
@keyframes booster-classic-card-hover {
  0%, 100% {
    transform: perspective(55rem) translate3d(0, 0, 0) rotateY(-0.8deg) rotateX(0.35deg);
    filter: drop-shadow(0 1.2rem 1.5rem rgba(0, 0, 0, 0.2));
  }
  50% {
    transform: perspective(55rem) translate3d(0, -0.48rem, 0) rotateY(0.8deg) rotateX(-0.35deg);
    filter: drop-shadow(0 1.7rem 2rem rgba(0, 0, 0, 0.34));
  }
}
@keyframes booster-classic-reveal-title {
  0% {
    opacity: 0;
    transform: translateX(-1.8rem);
    clip-path: inset(0 100% 0 0);
  }
  58% {
    opacity: 1;
    transform: translateX(0.18rem);
    clip-path: inset(0);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
    clip-path: inset(0);
  }
}
@keyframes booster-classic-reveal-copy {
  0% {
    opacity: 0;
    transform: translateY(0.45rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes booster-classic-current-pip {
  0%, 100% {
    box-shadow: 0 0 0 rgba(255, 70, 85, 0);
    filter: brightness(1);
  }
  50% {
    box-shadow: 0 0 1rem var(--classic-reveal-accent);
    filter: brightness(1.55);
  }
}
@keyframes booster-classic-card-energy {
  0%, 100% {
    transform: scale(0.985);
    filter: brightness(0.9);
  }
  50% {
    transform: scale(1.012);
    filter: brightness(1.16);
  }
}
@keyframes booster-classic-rarity-rays {
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes booster-uwu-control-enter {
  from {
    opacity: 0;
    transform: translateY(-0.55rem) scale(0.9);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes booster-uwu-particle-flight {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(0deg) scale(0.2);
  }
  12% {
    opacity: 1;
  }
  72% {
    opacity: 0.95;
  }
  100% {
    opacity: 0;
    transform: translate(calc(-50% + var(--uwu-particle-x)), calc(-50% + var(--uwu-particle-y))) rotate(var(--uwu-particle-turn)) scale(var(--uwu-particle-scale));
  }
}
@keyframes booster-uwu-onomatopoeia-pop {
  0% {
    opacity: 0;
    transform: translate(-50%, 0.7rem) rotate(var(--uwu-pop-angle)) scale(0.55);
  }
  18% {
    opacity: 1;
    transform: translate(-50%, -0.2rem) rotate(var(--uwu-pop-angle)) scale(1.12);
  }
  34%, 68% {
    opacity: 1;
    transform: translate(-50%, 0) rotate(var(--uwu-pop-angle)) scale(1);
  }
  100% {
    opacity: 0;
    transform: translate(calc(-50% + var(--uwu-pop-drift)), -2.2rem) rotate(var(--uwu-pop-angle)) scale(0.88);
  }
}
@keyframes booster-uwu-ribbon-wave {
  0%, 100% {
    transform: rotate(var(--uwu-ribbon-angle)) translate3d(0, 0, 0) scaleX(0.96);
  }
  50% {
    transform: rotate(calc(var(--uwu-ribbon-angle) + 5deg)) translate3d(0.8rem, -0.7rem, 0) scaleX(1.06);
  }
}
@keyframes booster-uwu-bubble-float {
  0%, 100% {
    opacity: 0.52;
    transform: translate3d(0, 0, 0) scale(0.94);
  }
  45% {
    opacity: 0.9;
    transform: translate3d(0.55rem, -1.2rem, 0) scale(1.08);
  }
  70% {
    transform: translate3d(-0.25rem, -0.8rem, 0) scale(1);
  }
}
@keyframes booster-uwu-awakening-flash {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  32% {
    opacity: 0.86;
  }
  100% {
    opacity: 0;
    transform: scale(1.45);
  }
}
@keyframes booster-uwu-pack-shine {
  0%, 58% {
    opacity: 0;
    transform: translateX(-105%) skewX(-12deg);
  }
  68% {
    opacity: 0.72;
  }
  84%, 100% {
    opacity: 0;
    transform: translateX(105%) skewX(-12deg);
  }
}
@keyframes booster-uwu-ear-wiggle {
  0%, 100% {
    transform: rotate(var(--uwu-ear-angle)) scale(0.92);
  }
  34% {
    transform: rotate(calc(var(--uwu-ear-angle) - 7deg)) scale(1.06);
  }
  68% {
    transform: rotate(calc(var(--uwu-ear-angle) + 5deg)) scale(0.98);
  }
}
@keyframes booster-uwu-card-ring {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.35) rotate(25deg);
  }
  28% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1.16) rotate(52deg);
  }
}
@keyframes booster-uwu-burst-spin {
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes booster-uwu-joy-frame {
  0%, 100% {
    opacity: 0.28;
    transform: scale(0.997);
    filter: hue-rotate(0deg) drop-shadow(0 0 0.35rem rgba(255, 125, 204, 0.3));
  }
  50% {
    opacity: 0.52;
    transform: scale(1.001);
    filter: hue-rotate(26deg) drop-shadow(0 0 0.58rem rgba(103, 245, 231, 0.4));
  }
}
@keyframes booster-uwu-confetti-rain {
  0% {
    opacity: 0.08;
    transform: translate3d(0, -7%, 0) rotate(-1deg);
  }
  18%, 82% {
    opacity: 0.3;
  }
  100% {
    opacity: 0.08;
    transform: translate3d(0.7rem, 17%, 0) rotate(1deg);
  }
}
@keyframes booster-uwu-mascot-giggle {
  0%, 100% {
    transform: translate3d(0, 0, 0) rotate(-4deg) scale(0.96, 1.04);
  }
  18% {
    transform: translate3d(0.18rem, -0.42rem, 0) rotate(5deg) scale(1.06, 0.94);
  }
  36% {
    transform: translate3d(-0.14rem, -0.12rem, 0) rotate(-6deg) scale(0.98, 1.02);
  }
  58% {
    transform: translate3d(0.2rem, -0.5rem, 0) rotate(6deg) scale(1.07, 0.93);
  }
  76% {
    transform: translate3d(-0.08rem, -0.18rem, 0) rotate(-3deg) scale(1);
  }
}
@keyframes booster-uwu-cat-trot {
  0%, 100% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0) rotate(-1deg);
  }
  50% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(-0.28rem) rotate(1deg);
  }
}
@keyframes booster-uwu-cat-meow {
  0%, 100% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0) scale(1);
  }
  50% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(-0.34rem) scale(1.06, 0.94);
  }
}
@keyframes booster-uwu-cat-tail {
  0%, 100% {
    transform: rotate(-5deg);
  }
  50% {
    transform: rotate(9deg);
  }
}
@keyframes booster-uwu-cat-sleep-mark {
  0%, 100% {
    opacity: 0.42;
    transform: translate3d(-0.2rem, 0.55rem, 0) rotate(-8deg) scale(0.72);
  }
  50% {
    opacity: 1;
    transform: translate3d(0.18rem, -0.18rem, 0) rotate(5deg) scale(1.06);
  }
}
@keyframes booster-uwu-cat-sit {
  0%, 100% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0) scale(1, 0.98);
  }
  50% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0.08rem) scale(1.02, 0.94);
  }
}
@keyframes booster-uwu-cat-curious {
  0%, 100% {
    transform: scaleX(var(--uwu-cat-facing)) rotate(0deg) translateY(0);
  }
  35% {
    transform: scaleX(var(--uwu-cat-facing)) rotate(-7deg) translateY(-0.12rem);
  }
  70% {
    transform: scaleX(var(--uwu-cat-facing)) rotate(5deg) translateY(-0.06rem);
  }
}
@keyframes booster-uwu-cat-hop {
  0%, 100% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0) scale(1);
  }
  35% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(-0.85rem) scale(0.92, 1.08);
  }
  70% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0.08rem) scale(1.08, 0.9);
  }
}
@keyframes booster-uwu-cat-card-happy {
  0%, 100% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0) rotate(0deg);
  }
  30% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(-0.42rem) rotate(-5deg) scale(1.05);
  }
  68% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(-0.22rem) rotate(6deg) scale(1.03);
  }
}
@keyframes booster-uwu-cat-wave {
  0%, 100% {
    transform: scaleX(var(--uwu-cat-facing)) rotate(0deg) translateY(0);
  }
  24% {
    transform: scaleX(var(--uwu-cat-facing)) rotate(-8deg) translateY(-0.25rem);
  }
  50% {
    transform: scaleX(var(--uwu-cat-facing)) rotate(8deg) translateY(-0.38rem);
  }
  76% {
    transform: scaleX(var(--uwu-cat-facing)) rotate(-5deg) translateY(-0.2rem);
  }
}
@keyframes booster-uwu-cat-shy {
  0% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0) scale(1);
  }
  35% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0.18rem) scale(1.08, 0.9) rotate(-3deg);
  }
  70% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0.12rem) scale(1.04, 0.94) rotate(3deg);
  }
  100% {
    transform: scaleX(var(--uwu-cat-facing)) translateY(0) scale(1);
  }
}
@keyframes booster-uwu-paw-fade {
  0% {
    opacity: 0;
    transform: translate3d(var(--uwu-paw-x), var(--uwu-paw-y), 0) rotate(var(--uwu-paw-angle)) scale(0.58);
  }
  18% {
    opacity: 0.74;
    transform: translate3d(var(--uwu-paw-x), var(--uwu-paw-y), 0) rotate(var(--uwu-paw-angle)) scale(1);
  }
  62% {
    opacity: 0.5;
  }
  100% {
    opacity: 0;
    transform: translate3d(var(--uwu-paw-x), var(--uwu-paw-y), 0) rotate(var(--uwu-paw-angle)) scale(0.82);
  }
}
@keyframes booster-uwu-heart-float {
  0% {
    opacity: 0;
    transform: translate(-50%, 0) rotate(45deg) scale(0.2);
  }
  18% {
    opacity: 1;
  }
  72% {
    opacity: 0.92;
  }
  100% {
    opacity: 0;
    transform: translate(calc(-50% + var(--uwu-heart-x, 0px)), var(--uwu-heart-y, -4rem)) rotate(calc(45deg + var(--uwu-heart-turn, 0deg))) scale(1.05);
  }
}
@keyframes booster-uwu-card-heart {
  0% {
    opacity: 0;
    transform: translate(-50%, 0.7rem) rotate(45deg) scale(0.2);
  }
  24% {
    opacity: 1;
    transform: translate(-50%, -0.2rem) rotate(39deg) scale(1.15);
  }
  68% {
    opacity: 1;
    transform: translate(-50%, -1rem) rotate(51deg) scale(0.92);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -2.2rem) rotate(45deg) scale(0.68);
  }
}
@keyframes booster-uwu-card-loved {
  0%, 100% {
    transform: translateY(0) scale(1);
    filter: brightness(1);
  }
  42% {
    transform: translateY(-0.28rem) scale(1.025);
    filter: brightness(1.12);
  }
  68% {
    transform: translateY(0.05rem) scale(0.995);
    filter: brightness(1.05);
  }
}
@keyframes booster-uwu-ring-dance {
  0%, 100% {
    transform: rotate(35deg) translate3d(0, 0, 0) scale(1);
  }
  50% {
    transform: rotate(48deg) translate3d(0.8rem, -0.7rem, 0) scale(1.08);
  }
}
@keyframes booster-uwu-spark-pop {
  0%, 100% {
    opacity: 0.45;
    transform: rotate(0deg) scale(0.68);
  }
  50% {
    opacity: 1;
    transform: rotate(45deg) scale(1.18);
  }
}
@keyframes booster-uwu-cheer-bounce {
  0%, 100% {
    transform: translate3d(0, 0, 0) rotate(var(--uwu-cheer-angle, 0deg));
  }
  45% {
    transform: translate3d(0.3rem, -0.8rem, 0) rotate(var(--uwu-cheer-angle, 0deg)) scale(1.06);
  }
  62% {
    transform: translate3d(-0.15rem, -0.55rem, 0) rotate(var(--uwu-cheer-angle, 0deg)) scale(0.98);
  }
}
@keyframes booster-uwu-focus-burst {
  0% {
    opacity: 0;
    transform: scale(1.55);
  }
  18% {
    opacity: 0.85;
  }
  62% {
    opacity: 0.5;
  }
  100% {
    opacity: 0;
    transform: scale(0.94);
  }
}
@keyframes booster-uwu-petal-fall {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0) rotate(0deg);
  }
  9%, 82% {
    opacity: 0.85;
  }
  100% {
    opacity: 0;
    transform: translate3d(var(--petal-drift, 3rem), 112vh, 0) rotate(var(--petal-spin, 360deg));
  }
}
@keyframes booster-uwu-speed-rush {
  0% {
    opacity: 0;
    transform: scaleX(1.6);
  }
  22%, 64% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    transform: scaleX(1);
  }
}
@keyframes booster-uwu-cinema-close {
  0% {
    opacity: 0;
  }
  12%, 76% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes booster-uwu-cinema-bar-top {
  0% {
    transform: translateY(-100%);
  }
  16%, 78% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
@keyframes booster-uwu-cinema-bar-bottom {
  0% {
    transform: translateY(100%);
  }
  16%, 78% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(100%);
  }
}
@keyframes booster-uwu-menace-in {
  0% {
    opacity: 0;
  }
  14%, 72% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes booster-uwu-gogogo-rise {
  0% {
    opacity: 0;
    transform: translateY(2.4rem) rotate(-4deg) scale(0.7);
  }
  22% {
    opacity: 1;
  }
  30% {
    transform: translateY(-0.3rem) rotate(3deg) scale(1.08);
  }
  40% {
    transform: translateY(0.2rem) rotate(-3deg) scale(1);
  }
  50% {
    transform: translateY(-0.35rem) rotate(3deg) scale(1.06);
  }
  60% {
    transform: translateY(0.15rem) rotate(-2deg) scale(1);
  }
  72% {
    opacity: 1;
    transform: translateY(-0.3rem) rotate(2deg) scale(1.04);
  }
  100% {
    opacity: 0;
    transform: translateY(-2.6rem) rotate(0deg) scale(0.86);
  }
}
@keyframes booster-uwu-eyecatch-sweep {
  0% {
    transform: translateX(-120%) skewX(-12deg);
  }
  100% {
    transform: translateX(120%) skewX(-12deg);
  }
}
@keyframes booster-uwu-eyecatch-ears {
  0%, 100% {
    transform: rotate(0deg);
  }
  24% {
    transform: rotate(-9deg);
  }
  48% {
    transform: rotate(7deg);
  }
  72% {
    transform: rotate(-4deg);
  }
}
@keyframes booster-uwu-eyecatch-tail {
  0%, 100% {
    transform: rotate(0deg);
  }
  30% {
    transform: rotate(-16deg);
  }
  62% {
    transform: rotate(12deg);
  }
}
@keyframes booster-uwu-eyecatch-blink {
  0%, 44% {
    transform: scaleY(1);
  }
  46%, 58% {
    transform: scaleY(0.15);
  }
  60%, 100% {
    transform: scaleY(1);
  }
}
@keyframes booster-uwu-eyecatch-spark {
  0% {
    opacity: 0;
    transform: scale(0.2) rotate(-40deg);
  }
  36% {
    opacity: 1;
    transform: scale(1.15) rotate(10deg);
  }
  100% {
    opacity: 0;
    transform: scale(0.7) rotate(45deg);
  }
}
@keyframes booster-uwu-eyecatch-pop {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.35) rotate(-16deg);
  }
  28%, 62% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.05) rotate(6deg);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.6) rotate(18deg);
  }
}
@keyframes booster-uwu-eyecatch-hold {
  0%, 100% {
    opacity: 0;
  }
  10%, 84% {
    opacity: 1;
  }
}
.booster-result-card--feature.booster-result-card--uwu {
  animation: booster-uwu-card-enter 0.68s cubic-bezier(0.22, 0.78, 0.24, 1) both;
  animation-delay: 0s;
}

@keyframes booster-uwu-card-enter {
  0% {
    opacity: 0;
    transform: scale3d(0.9, 0.9, 1) translateY(0.75rem);
  }
  22% {
    opacity: 1;
    transform: scale3d(1.12, 0.88, 1) translateY(0.1rem);
  }
  42% {
    transform: scale3d(0.9, 1.16, 1) translateY(-0.6rem);
  }
  60% {
    transform: scale3d(1.07, 0.95, 1) translateY(0.14rem);
  }
  78% {
    transform: scale3d(0.97, 1.05, 1) translateY(-0.14rem);
  }
  92% {
    transform: scale3d(1.02, 0.99, 1) translateY(0.04rem);
  }
  100% {
    opacity: 1;
    transform: scale3d(1, 1, 1) translateY(0);
  }
}
@keyframes booster-uwu-card-squash {
  0% {
    transform: scale3d(1.24, 0.7, 1) translateY(0.7rem);
  }
  26% {
    transform: scale3d(0.84, 1.26, 1) translateY(-0.9rem);
  }
  46% {
    transform: scale3d(1.12, 0.9, 1) translateY(0.2rem);
  }
  64% {
    transform: scale3d(0.95, 1.08, 1) translateY(-0.25rem);
  }
  82% {
    transform: scale3d(1.04, 0.97, 1) translateY(0.06rem);
  }
  100% {
    transform: scale3d(1, 1, 1) translateY(0);
  }
}
@keyframes booster-uwu-pack-squash {
  0%, 100% {
    transform: scale3d(1, 1, 1) translateY(0);
  }
  18% {
    transform: scale3d(1.14, 0.86, 1) translateY(0.5rem);
  }
  38% {
    transform: scale3d(0.88, 1.18, 1) translateY(-1.1rem);
  }
  58% {
    transform: scale3d(1.08, 0.93, 1) translateY(0.2rem);
  }
  78% {
    transform: scale3d(0.97, 1.04, 1) translateY(-0.2rem);
  }
}
@keyframes booster-uwu-glitch {
  0% {
    filter: none;
    transform: translate3d(0, 0, 0);
  }
  18% {
    filter: drop-shadow(0.28rem 0 0 rgba(255, 125, 204, 0.9)) drop-shadow(-0.28rem 0 0 rgba(103, 245, 231, 0.9));
    transform: translate3d(-0.2rem, 0.1rem, 0);
  }
  38% {
    filter: drop-shadow(-0.32rem 0 0 rgba(255, 125, 204, 0.9)) drop-shadow(0.32rem 0 0 rgba(103, 245, 231, 0.9));
    transform: translate3d(0.24rem, -0.14rem, 0);
  }
  58% {
    filter: drop-shadow(0.18rem 0 0 rgba(255, 125, 204, 0.7)) drop-shadow(-0.18rem 0 0 rgba(103, 245, 231, 0.7));
    transform: translate3d(-0.12rem, 0.06rem, 0);
  }
  100% {
    filter: none;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes booster-uwu-cat-fourth-wall {
  0% {
    transform: scale(1) rotate(0deg);
  }
  16% {
    transform: scale(1.34) rotate(-6deg);
  }
  32% {
    transform: scale(1.3) rotate(6deg);
  }
  48% {
    transform: scale(1.36) rotate(-4deg);
  }
  68% {
    transform: scale(1.32) rotate(3deg);
  }
  100% {
    transform: scale(1) rotate(0deg);
  }
}
@keyframes booster-uwu-ambient-breathe {
  0%, 100% {
    transform: translate(-50%, -50%) scale(0.94);
  }
  50% {
    transform: translate(-50%, -50%) scale(1.08);
  }
}
@keyframes booster-uwu-pack-awaken {
  0% {
    opacity: 0;
    transform: perspective(50rem) rotateY(-22deg) rotateZ(-9deg) scale(0.7);
  }
  58% {
    opacity: 1;
    transform: perspective(50rem) rotateY(8deg) rotateZ(5deg) scale(1.1);
  }
  78% {
    transform: perspective(50rem) rotateY(-4deg) rotateZ(-3deg) scale(0.97);
  }
  100% {
    transform: perspective(50rem) rotateY(5deg) rotateZ(1deg) scale(1);
  }
}
@keyframes booster-uwu-pack-party {
  0%, 100% {
    transform: perspective(50rem) rotateY(7deg) rotateZ(-2.5deg) translate3d(0, 0, 0) scale(1);
  }
  24% {
    transform: perspective(50rem) rotateY(-2deg) rotateZ(2.5deg) translate3d(0.28rem, -0.7rem, 0) scale(1.025);
  }
  48% {
    transform: perspective(50rem) rotateY(5deg) rotateZ(-1deg) translate3d(-0.2rem, -0.25rem, 0) scale(0.99);
  }
  72% {
    transform: perspective(50rem) rotateY(-4deg) rotateZ(1.8deg) translate3d(0.18rem, -0.8rem, 0) scale(1.02);
  }
}
@keyframes booster-uwu-pack-scan {
  from {
    opacity: 0.45;
    transform: rotate(-42deg) translateX(-8%);
  }
  to {
    opacity: 1;
    transform: rotate(-42deg) translateX(16%);
  }
}
@keyframes booster-uwu-eye-laugh {
  0%, 100% {
    transform: scaleY(1);
  }
  45%, 60% {
    transform: scaleY(0.35);
  }
}
@keyframes booster-uwu-mouth-laugh {
  0%, 100% {
    transform: translateX(-50%) scaleY(0.72);
  }
  50% {
    transform: translateX(-50%) scaleY(1.14);
  }
}
@keyframes booster-uwu-cheek-glow {
  0%, 100% {
    opacity: 0.55;
    transform: scaleX(0.8);
  }
  50% {
    opacity: 1;
    transform: scaleX(1.18);
  }
}
@keyframes booster-uwu-card-glow {
  0%, 100% {
    opacity: 0.58;
    transform: scale(0.97) rotate(-0.6deg);
  }
  50% {
    opacity: 1;
    transform: scale(1.025) rotate(0.6deg);
  }
}
.booster-presenter__stage.is-uwu-awakening .booster-pack--uwu {
  animation: booster-uwu-pack-awaken 0.95s cubic-bezier(0.16, 0.84, 0.24, 1) both, booster-uwu-pack-party 1.8s cubic-bezier(0.45, 0, 0.22, 1) 0.95s infinite;
}

.booster-presenter__stage.is-uwu-awakening .booster-uwu-atmosphere::after {
  animation: booster-uwu-awakening-flash 1.05s cubic-bezier(0.12, 0.72, 0.25, 1) both;
}

.booster-presenter__stage.is-classic-opening > h2, .booster-presenter__stage.is-classic-opening > .h2,
.booster-presenter__stage.is-classic-opening > p,
.booster-presenter__stage.is-classic-opening .booster-pack {
  position: relative;
  z-index: 1;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere {
  z-index: 0;
  opacity: 1;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere::before {
  animation: booster-classic-vignette 2.25s cubic-bezier(0.2, 0.72, 0.2, 1) both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere::after {
  animation: booster-classic-opening-flash 0.92s cubic-bezier(0.14, 0.72, 0.2, 1) 1.28s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__grid {
  animation: booster-classic-grid-lock 2.1s cubic-bezier(0.18, 0.72, 0.2, 1) 0.05s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__depth {
  animation: booster-classic-depth-drift 7s linear both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__horizon {
  animation: booster-classic-horizon-open 1.5s cubic-bezier(0.18, 0.75, 0.2, 1) 0.3s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__ticks {
  animation: booster-classic-ticks-in 1.2s cubic-bezier(0.18, 0.75, 0.2, 1) 0.35s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__motes {
  opacity: 1;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__motes i {
  animation: booster-classic-mote-rise var(--mote-duration, 11s) linear var(--mote-delay, 0s) infinite;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__corner {
  animation: booster-classic-target-lock 1.78s cubic-bezier(0.16, 0.82, 0.22, 1) 0.12s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__crosshair {
  animation: booster-classic-crosshair-lock 1.68s cubic-bezier(0.16, 0.82, 0.22, 1) 0.2s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__telemetry {
  animation: booster-classic-telemetry 1.55s steps(1, end) 0.22s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy {
  opacity: 1;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i {
  animation: booster-classic-energy-fill 0.28s ease-out both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i:nth-child(1) {
  animation-delay: 0.455s;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i:nth-child(2) {
  animation-delay: 0.55s;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i:nth-child(3) {
  animation-delay: 0.645s;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i:nth-child(4) {
  animation-delay: 0.74s;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i:nth-child(5) {
  animation-delay: 0.835s;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i:nth-child(6) {
  animation-delay: 0.93s;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i:nth-child(7) {
  animation-delay: 1.025s;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__energy i:nth-child(8) {
  animation-delay: 1.12s;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__ring--outer {
  animation: booster-classic-ring-charge 1.34s cubic-bezier(0.18, 0.75, 0.2, 1) 0.48s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__ring--inner {
  animation: booster-classic-ring-charge-round 1.18s cubic-bezier(0.18, 0.75, 0.2, 1) 0.62s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__shockwave {
  border-color: rgba(255, 70, 85, 0.8);
  box-shadow: 0 0 2.2rem rgba(255, 70, 85, 0.32);
  animation: booster-classic-shock-out 0.86s cubic-bezier(0.15, 0.75, 0.25, 1) 1.24s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__flare {
  animation: booster-classic-flare 0.88s cubic-bezier(0.12, 0.78, 0.2, 1) 1.32s both;
}
.booster-presenter__stage.is-classic-opening .booster-classic-atmosphere__shard {
  animation: booster-classic-shard-burst 0.78s cubic-bezier(0.14, 0.76, 0.2, 1) 1.4s both;
}
.booster-presenter__stage.is-classic-opening .booster-pack:not(.booster-pack--uwu) {
  overflow: visible;
  animation: booster-pack-opening-prelude 2.25s cubic-bezier(0.2, 0.75, 0.25, 1) both;
}
.booster-presenter__stage.is-classic-opening .booster-pack:not(.booster-pack--uwu) .booster-pack__rupture {
  animation: booster-classic-pack-rupture 0.78s cubic-bezier(0.16, 0.78, 0.22, 1) 1.25s both;
}
.booster-presenter__stage.is-classic-opening .booster-pack:not(.booster-pack--uwu) .booster-pack__split--left {
  animation: booster-classic-pack-split-left 0.82s cubic-bezier(0.14, 0.78, 0.2, 1) 1.4s both;
}
.booster-presenter__stage.is-classic-opening .booster-pack:not(.booster-pack--uwu) .booster-pack__split--right {
  animation: booster-classic-pack-split-right 0.82s cubic-bezier(0.14, 0.78, 0.2, 1) 1.4s both;
}

.booster-presenter__stage.is-classic-revealing {
  --classic-reveal-accent: #8c98a4;
  --classic-reveal-glow: rgba(140, 152, 164, 0.18);
}
.booster-presenter__stage.is-classic-revealing::after {
  border-color: color-mix(in srgb, var(--classic-reveal-accent) 22%, transparent);
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere {
  z-index: 0;
  opacity: 1;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere::before {
  opacity: 0.65;
  background: linear-gradient(118deg, var(--classic-reveal-glow) 0 13%, transparent 13% 76%, color-mix(in srgb, var(--classic-reveal-accent) 8%, transparent) 76%), radial-gradient(circle at 50% 56%, var(--classic-reveal-glow) 0, transparent 27%, rgba(3, 7, 12, 0.5) 72%, rgba(2, 5, 9, 0.82) 100%);
  animation: booster-classic-reveal-vignette 4.6s ease-in-out infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__grid {
  background-image: linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(118deg, transparent 0 48.8%, var(--classic-reveal-glow) 49% 49.2%, transparent 49.4%);
  animation: booster-classic-reveal-grid 9s linear infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__depth {
  animation: booster-classic-depth-drift 12s linear infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__horizon {
  opacity: 0.42;
  animation: booster-classic-horizon-idle 5.6s ease-in-out infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__ticks {
  opacity: 0.46;
  animation: booster-classic-ticks-idle 4.4s ease-in-out infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__ticks--right {
  animation-delay: -2.2s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__motes {
  opacity: 1;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__motes i {
  animation: booster-classic-mote-rise var(--mote-duration, 11s) linear var(--mote-delay, 0s) infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__ring {
  border-color: color-mix(in srgb, var(--classic-reveal-accent) 72%, transparent);
  box-shadow: inset 0 0 1.8rem var(--classic-reveal-glow), 0 0 2rem var(--classic-reveal-glow);
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__ring--outer {
  animation: booster-classic-reveal-orbit 11s linear infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__ring--inner {
  animation: booster-classic-reveal-orbit-reverse 8s linear infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__crosshair {
  border-color: color-mix(in srgb, var(--classic-reveal-accent) 32%, transparent);
  animation: booster-classic-reveal-crosshair 3.4s ease-in-out infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__crosshair::before, .booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__crosshair::after {
  border-color: var(--classic-reveal-accent);
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__corner,
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__telemetry {
  border-color: color-mix(in srgb, var(--classic-reveal-accent) 60%, transparent);
  color: color-mix(in srgb, var(--classic-reveal-accent) 76%, #fff);
  animation: booster-classic-reveal-hud 4s steps(1, end) infinite;
  filter: none;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__telemetry::before {
  background: var(--classic-reveal-accent);
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy {
  opacity: calc(0.38 + var(--opening-energy, 0.2) * 0.55);
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i {
  background: var(--classic-reveal-accent);
  box-shadow: 0 0 0.65rem var(--classic-reveal-glow);
  animation: booster-classic-reveal-energy 1.8s ease-in-out infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i:nth-child(1) {
  animation-delay: -0.14s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i:nth-child(2) {
  animation-delay: -0.28s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i:nth-child(3) {
  animation-delay: -0.42s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i:nth-child(4) {
  animation-delay: -0.56s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i:nth-child(5) {
  animation-delay: -0.7s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i:nth-child(6) {
  animation-delay: -0.84s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i:nth-child(7) {
  animation-delay: -0.98s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__energy i:nth-child(8) {
  animation-delay: -1.12s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__flare {
  background: radial-gradient(circle, rgba(255, 255, 255, 0.28), var(--classic-reveal-glow) 14%, transparent 65%);
  animation: booster-classic-reveal-flare 3.8s ease-in-out infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__shard {
  background: linear-gradient(to bottom, #fff, var(--classic-reveal-accent), transparent);
  animation: booster-classic-reveal-streak 4.1s ease-out infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__shard--one {
  animation-delay: -0.55s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__shard--two {
  animation-delay: -1.1s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__shard--three {
  animation-delay: -1.65s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__shard--four {
  animation-delay: -2.2s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__shard--five {
  animation-delay: -2.75s;
}
.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__shard--six {
  animation-delay: -3.3s;
}
.booster-presenter__stage.is-classic-revealing .booster-reveal__pips .is-current {
  animation: booster-classic-current-pip 1.1s ease-in-out infinite;
}
.booster-presenter__stage.is-classic-revealing .booster-card-stack__active:not(.is-dragging):not(.is-committing):not(.is-returning) {
  animation: booster-classic-card-hover 3.2s ease-in-out infinite;
}

.booster-presenter__stage.is-classic-card-entry .booster-classic-atmosphere {
  z-index: 4;
  opacity: 1;
}
.booster-presenter__stage.is-classic-card-entry .booster-classic-atmosphere::after {
  background: transparent;
  animation: none;
}
.booster-presenter__stage.is-classic-card-entry .booster-classic-atmosphere__sweep--red {
  left: 0;
  width: 18%;
  background: linear-gradient(90deg, transparent 0 38%, color-mix(in srgb, var(--classic-reveal-accent, #ff4655) 24%, transparent) 54%, color-mix(in srgb, var(--classic-reveal-accent, #ff4655) 52%, transparent) 75%, rgba(255, 255, 255, 0.34) 84%, transparent 100%);
  box-shadow: 0.7rem 0 1.8rem var(--classic-reveal-glow, rgba(255, 70, 85, 0.18));
  animation: booster-classic-card-change-scan 0.58s cubic-bezier(0.2, 0.72, 0.2, 1) both;
}
.booster-presenter__stage.is-classic-card-entry .booster-classic-atmosphere__sweep--white {
  animation: none;
}
.booster-presenter__stage.is-classic-card-entry .booster-reveal__card-slot {
  isolation: isolate;
}
.booster-presenter__stage.is-classic-card-entry .booster-reveal__card-slot::before, .booster-presenter__stage.is-classic-card-entry .booster-reveal__card-slot::after {
  border-color: var(--classic-reveal-accent, rgba(255, 70, 85, 0.74));
  box-shadow: 0 0 2rem var(--classic-reveal-glow, rgba(255, 70, 85, 0.25));
  animation: booster-classic-card-impact-ring 0.9s cubic-bezier(0.12, 0.76, 0.18, 1) 0.12s both;
}
.booster-presenter__stage.is-classic-card-entry .booster-reveal__card-slot::after {
  border-color: rgba(255, 255, 255, 0.64);
  border-radius: 0;
  animation-delay: 0.2s;
}
.booster-presenter__stage.is-classic-card-entry > h2, .booster-presenter__stage.is-classic-card-entry > .h2 {
  animation: booster-classic-reveal-title 0.62s cubic-bezier(0.14, 0.78, 0.2, 1) both;
}
.booster-presenter__stage.is-classic-card-entry > p,
.booster-presenter__stage.is-classic-card-entry .booster-reveal__progress {
  animation: booster-classic-reveal-copy 0.48s ease-out 0.18s both;
}
.booster-presenter__stage.is-classic-card-entry .booster-card-arrival:not(.is-dragging):not(.is-committing):not(.is-returning) {
  animation: booster-classic-card-strike 0.86s cubic-bezier(0.13, 0.82, 0.18, 1) 0.12s both;
}
.booster-presenter__stage.is-classic-card-entry .booster-result-card--feature:not(.booster-result-card--uwu) .booster-result-card__visual {
  animation: booster-classic-card-visual-settle 0.66s cubic-bezier(0.13, 0.8, 0.2, 1) 0.12s both;
}
.booster-presenter__stage.is-classic-card-entry .booster-result-card--feature[data-quality="4"] .booster-result-card__visual {
  animation-name: booster-classic-rare-impact;
}
.booster-presenter__stage.is-classic-card-entry .booster-result-card--feature[data-quality="5"] .booster-result-card__visual {
  animation: booster-classic-radiant-arrival 0.92s cubic-bezier(0.12, 0.82, 0.18, 1) 0.04s both;
}

.booster-presenter__stage.is-classic-charging .booster-classic-atmosphere__charge {
  animation: booster-classic-charge-lock var(--classic-charge-duration, 420ms) cubic-bezier(0.2, 0.7, 0.25, 1) both;
}
.booster-presenter__stage.is-classic-charging .booster-classic-atmosphere__ticks {
  opacity: 0.82;
  animation: none;
}
.booster-presenter__stage.is-classic-charging .booster-classic-atmosphere__horizon {
  opacity: 0.7;
  animation: none;
}
.booster-presenter__stage.is-classic-charging .booster-reveal__card-slot {
  opacity: 0;
}

.booster-presenter__stage.is-classic-shock .booster-classic-atmosphere__shockwave {
  animation: booster-classic-shock-out 0.72s cubic-bezier(0.15, 0.75, 0.25, 1) both;
}

.booster-presenter__stage.is-classic-opening[data-classic-intro=high] .booster-classic-atmosphere__telemetry {
  animation-duration: 1.05s;
}
.booster-presenter__stage.is-classic-opening[data-classic-intro=high] .booster-classic-atmosphere__ring--outer {
  animation-duration: 0.98s;
}
.booster-presenter__stage.is-classic-opening[data-classic-intro=high] .booster-classic-atmosphere__ring--inner {
  animation-duration: 0.86s;
}
.booster-presenter__stage.is-classic-opening[data-classic-intro=high] .booster-classic-atmosphere__horizon {
  animation-duration: 1.05s;
}
.booster-presenter__stage.is-classic-opening[data-classic-intro=high] .booster-classic-atmosphere__ticks i:nth-child(5n+1) {
  background: #ff4655;
}

.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere::before {
  animation: none;
  opacity: calc(0.42 + var(--opening-energy, 0) * 0.25);
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__grid {
  animation: none;
  opacity: calc(0.08 + var(--opening-bass, 0) * 0.22);
  transform: perspective(50rem) rotateX(58deg) translateY(30%) scale(1.3);
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__depth {
  animation: none;
  opacity: calc(0.08 + var(--opening-energy, 0) * 0.35);
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__ring {
  animation: none;
  opacity: calc(0.1 + var(--opening-bass, 0) * 0.35 + var(--opening-beat, 0) * 0.2);
  transform: translate(-50%, -50%) rotate(var(--opening-orbit, 0rad)) scale(calc(0.9 + var(--opening-bass, 0) * 0.12 + var(--opening-beat, 0) * 0.06));
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__ring--inner {
  transform: translate(-50%, -50%) rotate(calc(0rad - var(--opening-orbit, 0rad))) scale(calc(0.85 + var(--opening-bass, 0) * 0.18));
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__energy i {
  animation: none;
  opacity: calc(0.12 + var(--opening-energy, 0) * 0.8);
  transform: scaleY(calc(0.5 + var(--opening-bass, 0) * 2.5));
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__horizon,
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__ticks,
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__corner,
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__telemetry {
  animation: none;
  opacity: calc(0.18 + var(--opening-energy, 0) * 0.4);
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__crosshair {
  animation: none;
  opacity: calc(0.15 + var(--opening-bass, 0) * 0.32);
  transform: translate(-50%, -50%) scaleX(calc(0.95 + var(--opening-beat, 0) * 0.05));
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__flare {
  animation: none;
  opacity: calc(var(--opening-beat, 0) * 0.22);
  transform: translate(-50%, -50%) scale(calc(0.6 + var(--opening-bass, 0) * 0.3));
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__shard,
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-classic-atmosphere__motes {
  display: none;
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive .booster-reveal__pips .is-current {
  animation: none;
  filter: brightness(calc(1 + var(--opening-beat, 0) * 0.65));
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive:not(.is-classic-card-entry):not(.is-classic-charging) .booster-card-stack__active:not(.is-dragging):not(.is-committing):not(.is-returning) {
  animation: none;
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive:not(.is-classic-card-entry):not(.is-classic-charging) .booster-result-card--feature::before {
  animation: none;
  opacity: calc(0.3 + var(--opening-energy, 0) * 0.7);
  box-shadow: 0 0 calc(0.5rem + var(--opening-bass, 0) * 2rem + var(--opening-beat, 0) * 1rem) var(--classic-reveal-glow);
  transform: scale(calc(0.985 + var(--opening-bass, 0) * 0.035));
}
.booster-presenter__stage.is-classic-revealing.is-music-reactive:not(.is-classic-card-entry):not(.is-classic-charging) .booster-result-card--feature::after {
  animation: none;
  opacity: calc(0.05 + var(--opening-treble, 0) * 0.45);
  transform: translate(-50%, -50%) rotate(var(--opening-orbit, 0rad));
}

.booster-presenter__stage.is-classic-revealing[data-classic-finish=standard] {
  background: radial-gradient(ellipse at 50% 55%, rgba(137, 157, 176, 0.12), #070d15 66%);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=standard] .booster-classic-atmosphere__crosshair {
  border-style: dashed;
  border-radius: 0;
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=standard] .booster-result-card--feature::after {
  background: repeating-conic-gradient(from 0deg, transparent 0 28deg, rgba(220, 235, 247, 0.16) 29deg 30deg, transparent 31deg 60deg);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=standard].is-classic-card-entry .booster-result-card--feature:is([data-quality="4"], [data-quality="5"]) .booster-result-card__visual {
  animation: booster-finish-standard-lock 0.78s cubic-bezier(0.16, 0.82, 0.22, 1) 0.08s both;
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=standard].is-classic-card-entry .booster-result-card--feature[data-quality="5"] .booster-result-card__visual {
  animation-duration: 1.04s;
}

.booster-presenter__stage.is-classic-revealing[data-classic-finish=charged] {
  background: radial-gradient(ellipse at 50% 55%, rgba(79, 227, 216, 0.16), #061017 66%);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=charged] .booster-classic-atmosphere__energy i:nth-child(odd) {
  box-shadow: 0 0 calc(0.4rem + var(--opening-beat, 0) * 1.1rem) rgba(137, 255, 247, 0.72);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=charged] .booster-result-card--feature::after {
  background: repeating-conic-gradient(from 8deg, transparent 0 18deg, rgba(79, 227, 216, 0.18) 19deg 20deg, transparent 21deg 45deg);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=charged].is-classic-card-entry .booster-result-card--feature:is([data-quality="4"], [data-quality="5"]) .booster-result-card__visual {
  animation: booster-finish-charged-surge 0.86s cubic-bezier(0.14, 0.8, 0.2, 1) 0.06s both;
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=charged].is-classic-card-entry .booster-result-card--feature[data-quality="5"] .booster-result-card__visual {
  animation-duration: 1.12s;
}

.booster-presenter__stage.is-classic-revealing[data-classic-finish=overcharged] {
  background: radial-gradient(ellipse at 50% 55%, rgba(255, 70, 85, 0.18), #12080d 64%, #060a11 100%);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=overcharged] .booster-classic-atmosphere__ring {
  border-style: dashed;
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=overcharged] .booster-result-card--feature::before {
  clip-path: polygon(4% 0, 78% 0, 82% 3%, 100% 3%, 100% 72%, 96% 78%, 96% 100%, 23% 100%, 19% 97%, 0 97%, 0 28%, 4% 22%);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=overcharged] .booster-result-card--feature::after {
  background: repeating-conic-gradient(from -7deg, transparent 0 12deg, rgba(255, 83, 100, 0.24) 13deg 15deg, transparent 16deg 37deg);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=overcharged][data-classic-quality="5"].is-classic-charging .booster-classic-atmosphere::before {
  animation: booster-finish-overcharged-blackout var(--classic-charge-duration, 620ms) steps(2, end) both;
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=overcharged].is-classic-card-entry .booster-result-card--feature:is([data-quality="4"], [data-quality="5"]) .booster-result-card__visual {
  animation: booster-finish-overcharged-break 0.86s cubic-bezier(0.12, 0.8, 0.18, 1) 0.04s both;
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=overcharged].is-classic-card-entry .booster-result-card--feature[data-quality="5"] .booster-result-card__visual {
  animation-duration: 1.14s;
}

.booster-presenter__stage.is-classic-revealing[data-classic-finish=sublimated] {
  background: radial-gradient(ellipse at 50% 55%, rgba(240, 194, 75, 0.17), #100e08 64%, #070b12 100%);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=sublimated] .booster-result-card--feature::before {
  border-color: color-mix(in srgb, var(--classic-rarity-color) 74%, #fff2bf);
  background: radial-gradient(circle at 50% 38%, rgba(255, 224, 139, 0.2), transparent 64%);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=sublimated] .booster-result-card--feature::after {
  background: repeating-conic-gradient(from 20deg, transparent 0 24deg, rgba(255, 225, 142, 0.22) 25deg 27deg, transparent 28deg 54deg);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=sublimated] .booster-result-card__stars {
  border-color: rgba(240, 194, 75, 0.55);
  box-shadow: 0 0 calc(0.45rem + var(--opening-beat, 0) * 0.85rem) rgba(240, 194, 75, 0.24);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=sublimated].is-classic-card-entry .booster-result-card--feature:is([data-quality="4"], [data-quality="5"]) .booster-result-card__visual {
  animation: booster-finish-sublimated-forge 0.94s cubic-bezier(0.14, 0.8, 0.2, 1) 0.05s both;
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=sublimated].is-classic-card-entry .booster-result-card--feature[data-quality="5"] .booster-result-card__visual {
  animation-duration: 1.18s;
}

.booster-presenter__stage.is-classic-revealing[data-classic-finish=radiant]:not(.is-radiant-apex) {
  background: radial-gradient(ellipse at 50% 55%, rgba(199, 178, 255, 0.2), #0e0c1b 64%, #070b13 100%);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=radiant]:not(.is-radiant-apex) .booster-result-card--feature::before {
  border-color: rgba(228, 215, 255, 0.76);
  box-shadow: 0 0 2rem rgba(198, 174, 255, 0.28), 0 0 4rem rgba(155, 229, 255, 0.16);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=radiant]:not(.is-radiant-apex) .booster-result-card--feature::after {
  background: repeating-conic-gradient(from 12deg, transparent 0 19deg, rgba(218, 192, 255, 0.24) 20deg 22deg, transparent 23deg 44deg);
}
.booster-presenter__stage.is-classic-revealing[data-classic-finish=radiant]:not(.is-radiant-apex).is-classic-card-entry .booster-result-card--feature[data-quality="4"] .booster-result-card__visual {
  animation: booster-finish-radiant-refraction 1.02s cubic-bezier(0.14, 0.82, 0.2, 1) 0.04s both;
}

.booster-presenter__stage.is-classic-revealing[data-booster-size="10"] .booster-result-card--feature::before {
  box-shadow: 0 0 2.8rem var(--classic-rarity-glow), 0 0 4.8rem color-mix(in srgb, var(--classic-rarity-color) 9%, transparent);
}

.booster-presenter__stage.is-classic-revealing[data-booster-size="20"] .booster-result-card--feature::before {
  box-shadow: 0 0 3.4rem var(--classic-rarity-glow), 0 0 6.2rem color-mix(in srgb, var(--classic-rarity-color) 14%, transparent);
}

@keyframes booster-finish-standard-lock {
  0% {
    filter: grayscale(0.8) brightness(1.7) contrast(1.35);
  }
  42% {
    filter: grayscale(0.2) brightness(1.2) contrast(1.12);
  }
  100% {
    filter: none;
  }
}
@keyframes booster-finish-charged-surge {
  0% {
    transform: scale(1.045);
    filter: brightness(2.05) saturate(0.45);
  }
  34% {
    transform: scale(0.992);
    filter: brightness(1.08) saturate(1.4);
  }
  56% {
    transform: scale(1.018);
    filter: brightness(1.42) saturate(1.22);
  }
  100% {
    transform: scale(1);
    filter: none;
  }
}
@keyframes booster-finish-overcharged-blackout {
  0%, 55% {
    opacity: 0.62;
    filter: brightness(0.72) saturate(0.7);
  }
  72% {
    opacity: 0.18;
    filter: brightness(0.35) saturate(0.45);
  }
  82% {
    opacity: 0.74;
    filter: brightness(1.35) saturate(1.3);
  }
  100% {
    opacity: 0.08;
    filter: brightness(2) saturate(1.4);
  }
}
@keyframes booster-finish-overcharged-break {
  0% {
    transform: translateX(-0.22rem) scale(1.055);
    filter: brightness(2.25) saturate(1.35);
  }
  26% {
    transform: translateX(0.16rem) scale(0.985);
    filter: brightness(1.08) saturate(1.5);
  }
  48% {
    transform: translateX(-0.08rem) scale(1.025);
    filter: brightness(1.55) saturate(1.25);
  }
  72% {
    transform: translateX(0.03rem) scale(0.997);
    filter: brightness(1.06) saturate(1.08);
  }
  100% {
    transform: none;
    filter: none;
  }
}
@keyframes booster-finish-sublimated-forge {
  0% {
    transform: scale(1.055);
    filter: sepia(0.55) saturate(1.8) brightness(2.1);
  }
  42% {
    transform: scale(0.99);
    filter: sepia(0.18) saturate(1.3) brightness(1.18);
  }
  70% {
    transform: scale(1.012);
    filter: sepia(0.12) saturate(1.18) brightness(1.28);
  }
  100% {
    transform: scale(1);
    filter: none;
  }
}
@keyframes booster-finish-radiant-refraction {
  0% {
    transform: perspective(55rem) rotateY(-13deg) scale(0.92);
    filter: brightness(2.4) saturate(0.3) hue-rotate(-12deg);
  }
  42% {
    transform: perspective(55rem) rotateY(2deg) scale(1.04);
    filter: brightness(1.36) saturate(1.35) hue-rotate(8deg);
  }
  72% {
    transform: perspective(55rem) rotateY(-0.5deg) scale(0.995);
    filter: brightness(1.1) saturate(1.12);
  }
  100% {
    transform: none;
    filter: none;
  }
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex {
  background: radial-gradient(ellipse at 50% 54%, #19182b, #070b13 68%);
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-classic-atmosphere__grid,
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-classic-atmosphere__depth,
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-classic-atmosphere__crosshair,
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-classic-atmosphere__ring,
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-classic-atmosphere__telemetry {
  opacity: 0.12;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-classic-atmosphere__shard,
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-classic-atmosphere__motes {
  display: none;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex > h2, .booster-presenter__stage.is-classic-revealing.is-radiant-apex > .h2 {
  color: #faf3ff;
  text-shadow: 0 0 1.5rem rgba(214, 190, 255, 0.38);
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-result-card--feature::before {
  border-color: rgba(232, 220, 255, 0.72);
  box-shadow: 0 0 2.6rem rgba(197, 170, 255, 0.32), 0 0 5rem rgba(158, 220, 255, 0.2);
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-result-card--feature::after {
  display: none;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-card-spotlight-trace {
  filter: drop-shadow(0 0 0.2rem #fff) drop-shadow(0 0 0.8rem #b69aff);
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-card-spotlight-trace path {
  stroke-width: 2;
  stroke: #fffaff;
  stroke-dasharray: 125 125;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-card-spotlight-trace path + path {
  stroke: #9cf2ff;
  stroke-width: 3.5;
  stroke-dasharray: 55 195;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-result-card__stars {
  padding: 0.65rem 1rem;
  gap: 0.38rem;
  border-color: rgba(222, 200, 255, 0.7);
  background: linear-gradient(105deg, #191326, #25223c, #101b26);
  box-shadow: 0 0 calc(0.5rem + var(--opening-beat, 0) * 1rem) rgba(203, 177, 255, 0.38);
  color: #fff3d2;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex .booster-result-card__stars svg {
  filter: drop-shadow(0 0 0.25rem rgba(231, 206, 255, 0.6));
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex.is-classic-charging .booster-classic-atmosphere {
  opacity: 0.18;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex.is-classic-charging > h2, .booster-presenter__stage.is-classic-revealing.is-radiant-apex.is-classic-charging > .h2, .booster-presenter__stage.is-classic-revealing.is-radiant-apex.is-classic-charging > p {
  opacity: 0.5;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex.is-classic-card-entry .booster-card-arrival:not(.is-dragging):not(.is-committing):not(.is-returning) {
  animation: booster-radiant-apex-arrival 1.22s cubic-bezier(0.16, 0.85, 0.22, 1) 0.08s both;
}
.booster-presenter__stage.is-classic-revealing.is-radiant-apex.is-classic-card-entry .booster-result-card--feature[data-quality="5"] .booster-result-card__visual {
  animation: booster-radiant-apex-materialize 1.35s ease-out both;
}

@keyframes booster-radiant-apex-arrival {
  0% {
    opacity: 0;
    transform: translateY(2rem) scale(0.84);
  }
  45% {
    opacity: 1;
    transform: translateY(-0.5rem) scale(1.045);
  }
  76% {
    transform: translateY(0.15rem) scale(0.995);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
@keyframes booster-radiant-apex-materialize {
  0% {
    filter: brightness(1.65) saturate(0.45);
  }
  50% {
    filter: brightness(1.2) saturate(1.15);
  }
  100% {
    filter: none;
  }
}
.booster-presenter__stage > .booster-energy {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  contain: strict;
}
.booster-presenter__stage > .booster-energy[hidden] {
  display: none;
}

.booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) {
  overflow: clip;
}
.booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) > h2, .booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) > .h2,
.booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) > p,
.booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) > [data-booster-presenter-eyebrow],
.booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) > .booster-reveal {
  position: relative;
  z-index: 1;
}

.booster-presenter__stage.is-classic-revealing .booster-classic-atmosphere__horizon {
  background: linear-gradient(90deg, transparent, var(--classic-reveal-accent), transparent);
  box-shadow: 0 0 2rem var(--classic-reveal-glow);
}
.booster-presenter__stage.is-classic-revealing .booster-reveal__pips .is-seen {
  background: color-mix(in srgb, var(--classic-reveal-accent) 50%, transparent);
}
.booster-presenter__stage.is-classic-revealing .booster-reveal__pips .is-current {
  background: var(--classic-reveal-accent);
}
.booster-presenter__stage.is-classic-revealing[data-booster-size="20"] .booster-classic-atmosphere__depth {
  animation-duration: 6s;
}
.booster-presenter__stage.is-classic-revealing[data-booster-size="10"] .booster-classic-atmosphere__depth {
  animation-duration: 9s;
}
.booster-presenter__stage.is-classic-revealing[data-classic-quality="4"] .booster-classic-atmosphere__ring--inner, .booster-presenter__stage.is-classic-revealing[data-classic-quality="5"] .booster-classic-atmosphere__ring--inner {
  border-color: color-mix(in srgb, var(--classic-reveal-accent) 50%, #dcf8ff);
}

@media (prefers-reduced-motion: reduce) {
  .booster-presenter__stage > .booster-energy {
    display: none;
  }
  .booster-card-spotlight-trace {
    display: none;
  }
  .booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) *,
  .booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) *::before,
  .booster-presenter__stage:is(.is-classic-opening, .is-classic-revealing) *::after {
    animation: none !important;
    transition: none !important;
  }
}
@keyframes booster-card-reveal {
  from {
    opacity: 0;
    transform: perspective(50rem) rotateY(-18deg) translateY(1.5rem) scale(0.9);
    filter: blur(0.35rem);
  }
}
@keyframes booster-card-fast-forward {
  from {
    opacity: 0.18;
    transform: translateY(-1.6rem) scale(0.96);
    filter: blur(0.22rem);
  }
  55% {
    opacity: 0.72;
    transform: translateY(0.35rem) scale(0.99);
    filter: blur(0.08rem);
  }
}
@keyframes booster-item-reward-reveal {
  from {
    opacity: 0;
    transform: translateY(1.2rem) scale(0.94);
    filter: blur(0.3rem);
  }
}
@keyframes booster-item-reward-shine {
  to {
    transform: translateX(120%);
  }
}
@media (max-width: 680px) {
  .booster-presenter,
  .booster-opening-intro,
  .booster-opening-intro__controls,
  .booster-reveal-modes {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .booster-presenter__stage {
    width: 100%;
    max-width: 100%;
    min-height: 34rem;
    padding-top: 5rem;
    padding-inline: 1rem;
  }
  .booster-presenter__stage > h2, .booster-presenter__stage > .h2,
  .booster-presenter__stage > p {
    width: 100%;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
  }
  .booster-presenter__stage > h2, .booster-presenter__stage > .h2 {
    font-size: clamp(1.8rem, 10vw, 2.75rem);
  }
  .booster-opening-intro {
    grid-template-columns: 1fr;
    gap: 2.2rem;
    margin-top: 2.5rem;
  }
  .booster-pack {
    width: 10.5rem;
  }
  .booster-classic-atmosphere__telemetry {
    display: none;
  }
  .booster-classic-atmosphere__crosshair {
    width: 88vw;
    height: 24rem;
  }
  .booster-classic-atmosphere__energy {
    bottom: 8%;
    width: 72vw;
  }
  .booster-classic-atmosphere__corner--tl, .booster-classic-atmosphere__corner--bl {
    left: 4%;
  }
  .booster-classic-atmosphere__corner--tr, .booster-classic-atmosphere__corner--br {
    right: 4%;
  }
  .booster-pack--uwu {
    width: 11.5rem;
  }
  .booster-audio-controls {
    top: 0.75rem;
    right: 0.75rem;
    gap: 0.35rem;
  }
  .booster-uwu-sound,
  .booster-opening-music {
    width: 2.75rem;
    justify-content: center;
    padding: 0.65rem;
  }
  .booster-uwu-sound > span,
  .booster-opening-music > span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .booster-opening-volume {
    grid-template-columns: minmax(4.5rem, 5.5rem) 2.25rem;
    gap: 0.4rem;
    padding: 0.35rem 0.6rem;
  }
  .booster-opening-volume__label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .booster-opening-volume__range {
    width: 5.5rem;
  }
  .booster-uwu-atmosphere__cheer--one {
    top: 42%;
    left: 1%;
  }
  .booster-uwu-atmosphere__cheer--two {
    top: 50%;
    right: 1%;
  }
  .booster-uwu-atmosphere__cheer--three {
    display: none;
  }
  .booster-uwu-atmosphere__cheer--four {
    top: 18%;
    right: auto;
    left: 2%;
  }
  .booster-uwu-atmosphere__cheer--five {
    right: 2%;
    bottom: 12%;
    max-width: min(13rem, 58vw);
  }
  .booster-uwu-atmosphere__bubble--three,
  .booster-uwu-atmosphere__ribbon--two {
    display: none;
  }
  .booster-uwu-atmosphere__mascot {
    width: 3.15rem;
  }
  .booster-uwu-atmosphere__mascot--one {
    bottom: 22%;
    left: 1%;
  }
  .booster-uwu-atmosphere__mascot--two {
    top: 28%;
    right: 1%;
  }
  .booster-uwu-atmosphere__joy-frame {
    inset: 0.3rem;
  }
  .booster-uwu-cat {
    width: 4.6rem;
  }
  .booster-opening-intro__controls {
    text-align: left;
  }
  .booster-opening-start {
    justify-self: stretch;
  }
  .booster-reveal__actions {
    align-items: stretch;
  }
  .booster-reveal__actions .shop-btn,
  .booster-reveal__actions .booster-reveal__skip {
    flex: 1 1 10rem;
  }
  .booster-reveal__card-slot {
    min-height: 23rem;
  }
  .booster-card-stack {
    width: min(100%, 17rem);
  }
  .booster-reveal__progress {
    flex-direction: column;
    align-items: stretch;
  }
  .booster-reveal__pips {
    width: 100%;
    gap: 0.2rem;
  }
  .booster-reveal__pips span {
    width: auto;
    min-width: 0;
    flex: 1 1 0;
  }
  .booster-result-card--feature {
    width: min(100%, 17rem);
  }
  .booster-item-reward {
    gap: 0.9rem;
    padding: 1rem;
  }
  .booster-item-reward__visual {
    width: 4.25rem;
    height: 4.25rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .owned-booster,
  .owned-booster::before,
  .owned-booster__halo,
  .owned-booster__pack,
  .owned-booster__open span,
  .booster-presenter__pulse,
  .booster-pack,
  .booster-result-card,
  .booster-result-card::after,
  .booster-item-reward,
  .booster-item-reward::after,
  .booster-card-stack__active,
  .booster-card-stack__edge,
  .booster-bonus-surprise,
  .booster-bonus-surprise::before,
  .booster-bonus-surprise::after {
    animation-duration: 1ms;
    animation-iteration-count: 1;
    transition-duration: 1ms;
  }
  .booster-presenter--uwu .booster-presenter__ambient,
  .booster-classic-atmosphere::before,
  .booster-classic-atmosphere::after,
  .booster-classic-atmosphere *,
  .booster-opening-music,
  .booster-uwu-atmosphere *,
  .booster-uwu-atmosphere::after,
  .booster-uwu-cat,
  .booster-uwu-cat *,
  .booster-uwu-heart,
  .booster-uwu-sound,
  .booster-uwu-particle,
  .booster-uwu-onomatopoeia,
  .booster-pack--uwu,
  .booster-pack--uwu::before,
  .booster-pack--uwu::after,
  .booster-pack--uwu .booster-pack__shine,
  .booster-pack--uwu .booster-pack__ear,
  .booster-pack--uwu .booster-pack__eye,
  .booster-pack--uwu .booster-pack__mouth,
  .booster-pack--uwu .booster-pack__cheek,
  .booster-result-card--uwu::before,
  .booster-result-card--uwu::after,
  .booster-result-card--feature:not(.booster-result-card--uwu)::before,
  .booster-result-card--feature:not(.booster-result-card--uwu)::after,
  .booster-result-card--feature:not(.booster-result-card--uwu) .booster-result-card__visual,
  .booster-result-card.is-loved .booster-result-card__visual,
  .booster-presenter__stage.is-uwu-card-pop .booster-reveal__card-slot::before,
  .booster-presenter__stage.is-uwu-card-pop .booster-reveal__card-slot::after,
  .booster-presenter__stage.is-uwu-awakening .booster-uwu-atmosphere::after,
  .booster-presenter__stage.is-uwu-awakening .booster-pack--uwu,
  .booster-presenter__stage.is-pack-opening .booster-pack:not(.booster-pack--uwu),
  .booster-presenter__stage.is-classic-opening .booster-pack:not(.booster-pack--uwu),
  .booster-presenter__stage.is-classic-opening .booster-pack__rupture,
  .booster-presenter__stage.is-classic-opening .booster-pack__split,
  .booster-presenter__stage.is-classic-card-entry .booster-card-stack__active,
  .booster-presenter__stage.is-classic-card-entry .booster-reveal__card-slot::before,
  .booster-presenter__stage.is-classic-card-entry .booster-reveal__card-slot::after,
  .booster-presenter__stage.is-classic-card-entry > h2,
  .booster-presenter__stage.is-classic-card-entry > .h2,
  .booster-presenter__stage.is-classic-card-entry > p,
  .booster-presenter__stage.is-classic-card-entry .booster-reveal__progress,
  .booster-presenter__stage.is-classic-revealing .booster-reveal__pips .is-current {
    animation: none;
    transition: none;
  }
  .booster-uwu-heart {
    opacity: 0.9;
    transform: translate(-50%, -0.5rem) rotate(45deg) scale(1);
  }
  .booster-uwu-paw-print,
  .booster-uwu-chase-object {
    display: none;
  }
  .booster-uwu-onomatopoeia {
    opacity: 1;
    transform: translateX(-50%) rotate(var(--uwu-pop-angle));
  }
  .booster-pack--uwu {
    transform: perspective(50rem) rotateY(5deg) rotateZ(-1deg);
  }
}
/* =========================================================
   MON COMPTE
========================================================= */
.catch-account {
  --account-dark: #0f1923;
  --account-dark-soft: #18232f;
  --account-panel: #141f2a;
  --account-panel-hover: #192632;
  --account-border: rgba(255, 255, 255, 0.1);
  --account-border-strong: rgba(255, 255, 255, 0.18);
  --account-text: #ece8e1;
  --account-muted: #a2acb6;
  --account-red: #ff4655;
  --account-green: #65d6ad;
  min-height: 100vh;
  padding-bottom: 6rem;
  background: radial-gradient(circle at 84% 0%, rgba(255, 70, 85, 0.12), transparent 30rem), linear-gradient(180deg, #101b26 0, var(--account-dark) 34rem);
  color: var(--account-text);
}
.catch-account svg {
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
}

.catch-account--logged-out {
  display: flex;
  align-items: center;
  padding: 5rem 0;
}

.account-empty-state {
  max-width: 46rem;
  margin: 0 auto;
  padding: clamp(2rem, 5vw, 4rem);
  border: 1px solid var(--account-border);
  background: var(--account-panel);
  text-align: center;
}
.account-empty-state h1, .account-empty-state .h1 {
  margin: 0 0 1rem;
  color: #fff;
  font-size: clamp(3rem, 7vw, 5rem);
  line-height: 0.95;
  text-transform: uppercase;
}
.account-empty-state p {
  max-width: 36rem;
  margin: 0 auto 2rem;
  color: var(--account-muted);
}

.account-identity {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 1rem;
  min-width: 18rem;
  padding: 1rem 1.25rem;
  border: 1px solid var(--account-border-strong);
  background: rgba(20, 31, 42, 0.75);
}
.account-identity > div:last-child {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}
.account-identity strong {
  color: #fff;
  font-size: 1.05rem;
}
.account-identity span:not(.account-identity__presence, .account-identity__label) {
  color: var(--account-muted);
  font-size: 0.8rem;
}

.account-identity__avatar {
  position: relative;
  flex: 0 0 auto;
}
.account-identity__avatar img {
  display: block;
  width: 3.5rem;
  height: 3.5rem;
  border: 1px solid rgba(255, 255, 255, 0.25);
  object-fit: cover;
}

.account-identity__presence {
  position: absolute;
  right: -0.2rem;
  bottom: -0.2rem;
  width: 0.9rem;
  height: 0.9rem;
  border: 3px solid var(--account-panel);
  border-radius: 50%;
  background: var(--account-green);
}

.account-identity__label {
  color: var(--account-green);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.account-shell {
  padding-top: 2rem;
}

.account-stats {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1rem;
  margin-bottom: 2rem;
}

.account-stat {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-height: 8.5rem;
  padding: 1.35rem;
  border: 1px solid var(--account-border);
  border-top: 2px solid rgba(255, 255, 255, 0.28);
  background: var(--account-panel);
}
.account-stat > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
}
.account-stat span:not(.account-stat__icon) {
  color: var(--account-muted);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.account-stat strong {
  margin: 0.15rem 0;
  color: #fff;
  font-size: 1.35rem;
  font-variant-numeric: tabular-nums;
}
.account-stat small, .account-stat .small {
  overflow: hidden;
  color: var(--account-muted);
  font-size: 0.78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-stat--balance {
  border-top-color: var(--account-red);
}

.account-stat__icon,
.account-action__icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 1px solid rgba(255, 70, 85, 0.38);
  background: rgba(255, 70, 85, 0.09);
  color: var(--account-red);
}
.account-stat__icon svg,
.account-action__icon svg {
  width: 1.3rem;
  height: 1.3rem;
}

.account-layout {
  display: grid;
  grid-template-columns: minmax(14rem, 17rem) minmax(0, 1fr);
  align-items: start;
  gap: 1.5rem;
}

.account-sidebar {
  position: sticky;
  top: calc(var(--header-height, 4.5rem) + 1.5rem);
  display: grid;
  gap: 1rem;
}

.account-content {
  display: grid;
  min-width: 0;
  gap: 1.5rem;
  scroll-margin-top: calc(var(--header-height, 4.5rem) + 1.5rem);
}

.account-panel {
  border: 1px solid var(--account-border);
  background: var(--account-panel);
}

.account-nav {
  padding: 1.25rem 0;
}
.account-nav .catch-eyebrow {
  padding: 0 1.25rem;
}
.account-nav a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  min-height: 3rem;
  padding: 0.65rem 1.25rem;
  color: var(--account-muted);
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  transition: background-color 150ms ease, color 150ms ease;
}
.account-nav a::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 2px;
  background: transparent;
  content: "";
}
.account-nav a svg {
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
}
.account-nav a:hover, .account-nav a:focus-visible, .account-nav a.is-active {
  background: rgba(255, 255, 255, 0.05);
  color: #fff;
}
.account-nav a.is-active::before {
  background: var(--account-red);
}

.account-help {
  padding: 1.4rem;
  background: linear-gradient(145deg, rgba(255, 70, 85, 0.09), transparent 68%), var(--account-panel);
}
.account-help h2, .account-help .h2 {
  margin: 0 0 0.75rem;
  color: #fff;
  font-family: "Barlow", sans-serif;
  font-size: 1.05rem;
  letter-spacing: 0;
  line-height: 1.35;
}
.account-help p {
  margin-bottom: 1rem;
  color: var(--account-muted);
  font-size: 0.85rem;
  line-height: 1.55;
}
.account-help a {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  color: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  text-underline-offset: 0.3rem;
}
.account-help a:hover {
  color: var(--account-red);
}

.account-actions,
.account-history,
.account-information {
  padding: clamp(1.25rem, 3vw, 2rem);
  scroll-margin-top: calc(var(--header-height, 4.5rem) + 1.5rem);
}

.account-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 1.5rem;
}
.account-section-heading h2, .account-section-heading .h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.65rem, 3vw, 2.3rem);
  line-height: 1;
  text-transform: uppercase;
}
.account-section-heading p {
  margin: 0.6rem 0 0;
  color: var(--account-muted);
  font-size: 0.9rem;
}

.account-section-heading__count {
  flex: 0 0 auto;
  padding: 0.45rem 0.75rem;
  border: 1px solid var(--account-border-strong);
  color: var(--account-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.account-section-heading__aside {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
}

.account-history-more:disabled {
  border-color: var(--account-border-strong);
  background: transparent;
  color: var(--account-muted);
  cursor: default;
  opacity: 0.72;
}

.account-history.is-loading .account-table-wrap {
  opacity: 0.58;
  pointer-events: none;
}

.account-history-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--account-border);
}
.account-history-pagination[hidden] {
  display: none;
}

.account-history-pagination__controls {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.account-history-pagination__controls .account-button {
  min-width: 3rem;
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
}

.account-history-pagination__page {
  min-width: 7rem;
  color: var(--account-muted);
  font-size: 0.86rem;
  font-weight: 700;
  text-align: center;
}

.account-history-status {
  min-height: 1.25rem;
  margin: 0.75rem 0 0;
  color: var(--account-muted);
  font-size: 0.82rem;
  text-align: center;
}
.account-history-status:empty {
  min-height: 0;
  margin-top: 0;
}

.account-history-status--error {
  color: #ff8b8b;
}

.account-actions__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.account-actions__grid > a {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-height: 5rem;
  padding: 1rem;
  border: 1px solid var(--account-border);
  background: var(--account-dark-soft);
  color: var(--account-text);
  text-decoration: none;
  transition: background-color 180ms ease, border-color 180ms ease;
}
.account-actions__grid > a > span:nth-child(2) {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
}
.account-actions__grid > a strong {
  color: #fff;
  font-size: 0.95rem;
}
.account-actions__grid > a small, .account-actions__grid > a .small {
  margin-top: 0.15rem;
  color: var(--account-muted);
  font-size: 0.8rem;
}
.account-actions__grid > a:hover, .account-actions__grid > a:focus-visible {
  border-color: rgba(255, 70, 85, 0.5);
  background: var(--account-panel-hover);
}
.account-actions__grid > a:hover .account-action__arrow, .account-actions__grid > a:focus-visible .account-action__arrow {
  color: var(--account-red);
  transform: translateX(0.2rem);
}

.account-action__arrow {
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  color: var(--account-muted);
  transition: color 180ms ease, transform 180ms ease;
}

.account-table-wrap {
  width: 100%;
}

.account-table {
  width: 100%;
  border-collapse: collapse;
  color: var(--account-text);
  font-size: 0.86rem;
}
.account-table th {
  padding: 0 0.85rem 0.75rem;
  border-bottom: 1px solid var(--account-border-strong);
  color: var(--account-muted);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: left;
  text-transform: uppercase;
}
.account-table td {
  padding: 1rem 0.85rem;
  border-bottom: 1px solid var(--account-border);
  color: var(--account-muted);
  vertical-align: middle;
}
.account-table tr:last-child td {
  border-bottom: 0;
}
.account-table th:first-child,
.account-table td:first-child {
  padding-left: 0;
}
.account-table th:last-child,
.account-table td:last-child {
  padding-right: 0;
}

.account-table--cards th:first-child {
  width: 42%;
}

.account-card-summary {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  min-width: 16rem;
}
.account-card-summary > span:last-child {
  display: flex;
  min-width: 0;
  flex-direction: column;
}
.account-card-summary strong {
  color: #fff;
  font-size: 0.9rem;
  line-height: 1.3;
}
.account-card-summary small, .account-card-summary .small {
  margin-top: 0.2rem;
  color: var(--account-muted);
  font-size: 0.75rem;
}

.account-card-preview {
  position: relative;
  display: block;
  width: 4.5rem;
  flex: 0 0 4.5rem;
}
.account-card-preview .c-card-slot {
  display: block;
  width: 100%;
}
.account-card-preview .c-card-slot--grid {
  margin: 0;
  padding: 0;
  contain: none;
  content-visibility: visible;
  pointer-events: none;
}
.account-card-preview .c-card-shell {
  width: 100%;
  max-width: none;
  pointer-events: none;
  transform: none !important;
  transition: none;
}
.account-card-preview .c-card-shell,
.account-card-preview .c-card__chassis,
.account-card-preview .c-card__fx,
.account-card-preview .c-card__finish,
.account-card-preview .fr-trace {
  animation: none !important;
}

.account-card-preview--missing {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 6.75rem;
  border: 1px solid var(--account-border-strong);
  background: var(--account-dark-soft);
  color: var(--account-muted);
}
.account-card-preview--missing svg {
  width: 1.5rem;
  height: 1.5rem;
}

.account-quality {
  display: inline-flex;
  align-items: center;
  gap: 0.15em;
  color: #f0c24b;
  white-space: nowrap;
}
.account-quality.is-unrated {
  color: var(--account-muted);
}

.account-quality__star {
  width: 0.95rem;
  height: 0.95rem;
  fill: currentColor;
  stroke: none;
}

.account-quality__unrated {
  line-height: 1;
}

.account-balance-after {
  color: #fff;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.account-history-muted {
  color: var(--account-muted);
}

.account-history-date {
  display: inline-flex;
  flex-direction: column;
  gap: 0.25rem;
}
.account-history-date time {
  color: var(--account-text);
}
.account-history-date small, .account-history-date .small {
  color: var(--account-muted);
  font-size: 0.68rem;
  line-height: 1.45;
}

.account-item-amount {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  color: color-mix(in srgb, var(--account-item-color, #00e6a8) 78%, #fff);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.account-item-amount__icon {
  display: inline-grid;
  width: 1.65rem;
  height: 1.65rem;
  flex: 0 0 1.65rem;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--account-item-color, #00e6a8) 48%, transparent);
  border-radius: 50%;
  background: color-mix(in srgb, var(--account-item-color, #00e6a8) 14%, transparent);
  box-shadow: 0 0 0.65rem color-mix(in srgb, var(--account-item-color, #00e6a8) 18%, transparent);
}
.account-item-amount__icon:empty::before {
  width: 0.5rem;
  height: 0.5rem;
  border: 1px solid currentColor;
  content: "";
  transform: rotate(45deg);
}

.account-item-amount__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.account-history-empty {
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border: 1px dashed var(--account-border-strong);
  background: rgba(15, 25, 35, 0.38);
  text-align: center;
}
.account-history-empty strong {
  display: block;
  color: #fff;
  font-size: 1rem;
}
.account-history-empty p {
  max-width: 34rem;
  margin: 0.45rem auto 0;
  color: var(--account-muted);
  font-size: 0.85rem;
  line-height: 1.55;
}

.account-transaction-summary {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  min-width: 15rem;
}
.account-transaction-summary > span:last-child {
  display: flex;
  min-width: 0;
  flex-direction: column;
}
.account-transaction-summary strong {
  color: #fff;
  font-size: 0.9rem;
  line-height: 1.3;
}
.account-transaction-summary small, .account-transaction-summary .small {
  margin-top: 0.2rem;
  color: var(--account-muted);
  font-size: 0.72rem;
  font-variant-numeric: tabular-nums;
}

.account-transaction-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 1px solid rgba(255, 70, 85, 0.35);
  background: rgba(255, 70, 85, 0.09);
  color: var(--account-red);
}
.account-transaction-icon svg {
  width: 1.2rem;
  height: 1.2rem;
}

.account-transaction-icon--income {
  border-color: rgba(101, 214, 173, 0.35);
  background: rgba(101, 214, 173, 0.08);
  color: var(--account-green);
}

.account-transaction-icon--reward {
  border-color: rgba(240, 194, 75, 0.42);
  background: rgba(240, 194, 75, 0.08);
  color: #f0c24b;
}

.account-transaction-link {
  color: inherit;
  text-decoration-color: rgba(240, 194, 75, 0.65);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}
.account-transaction-link:hover, .account-transaction-link:focus-visible {
  color: #f0c24b;
}

.account-transaction-type {
  display: inline-flex;
  padding: 0.35rem 0.55rem;
  border: 1px solid var(--account-border);
  color: var(--account-muted);
  font-size: 0.72rem;
  font-weight: 600;
  white-space: nowrap;
}

.account-currency {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: #fff;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.account-currency > span:first-child {
  width: 0.6rem;
  height: 0.6rem;
  background: var(--account-red);
  transform: rotate(45deg);
}

.account-currency--income {
  color: var(--account-green);
}
.account-currency--income > span:first-child {
  background: var(--account-green);
}

.account-currency--expense {
  color: #ff7b86;
}

.account-status {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.76rem;
  font-weight: 600;
  white-space: nowrap;
}
.account-status::before {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 50%;
  background: currentColor;
  content: "";
}

.account-status--success {
  color: var(--account-green);
}

.account-information__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  border-top: 1px solid var(--account-border);
  border-left: 1px solid var(--account-border);
}
.account-information__grid > div {
  padding: 1.25rem;
  border-right: 1px solid var(--account-border);
  border-bottom: 1px solid var(--account-border);
}
.account-information__grid dt {
  margin-bottom: 0.4rem;
  color: var(--account-muted);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.account-information__grid dt label {
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
}
.account-information__grid dd {
  margin: 0;
  color: #fff;
  font-size: 0.95rem;
  overflow-wrap: anywhere;
}

.account-information__item--wide {
  grid-column: 1/-1;
}

.account-profile-form [hidden] {
  display: none !important;
}
.account-profile-form[aria-busy=true] {
  cursor: progress;
}

.account-profile-actions {
  display: flex;
  flex: 0 0 auto;
  gap: 0.75rem;
}

.account-profile-field {
  width: 100%;
}

.account-profile-control {
  display: block;
  width: 100%;
  min-height: 2.75rem;
  padding: 0.65rem 0.75rem;
  border: 1px solid var(--account-border-strong);
  border-radius: 0;
  outline: 0;
  background: var(--account-dark);
  color: #fff;
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.45;
  transition: border-color 150ms ease, box-shadow 150ms ease;
}
.account-profile-control:hover {
  border-color: rgba(255, 255, 255, 0.32);
}
.account-profile-control:focus {
  border-color: var(--account-red);
  box-shadow: 0 0 0 3px rgba(255, 70, 85, 0.2);
}
.account-profile-control[aria-invalid=true] {
  border-color: #ff7b86;
}
.account-profile-control:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.account-profile-control--textarea {
  min-height: 8rem;
  resize: vertical;
}

.account-profile-meta {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 0.55rem;
}
.account-profile-meta [data-account-biography-count] {
  flex: 0 0 auto;
  color: var(--account-muted);
  font-size: 0.72rem;
  font-variant-numeric: tabular-nums;
}

.account-profile-help,
.account-profile-error {
  margin: 0.5rem 0 0;
  font-size: 0.76rem;
  line-height: 1.45;
}

.account-profile-help {
  color: var(--account-muted);
}

.account-profile-error {
  color: #ff9ba3;
}

.account-profile-biography {
  max-width: 45rem;
  margin: 0;
  color: var(--account-text);
  line-height: 1.6;
  white-space: pre-line;
}

.account-discord-identity {
  display: flex;
  align-items: center;
  gap: 0.55rem;
}
.account-discord-identity > span:last-child {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}
.account-discord-identity strong {
  color: #fff;
  font-size: 0.9rem;
}
.account-discord-identity small, .account-discord-identity .small {
  color: var(--account-muted);
  font-size: 0.75rem;
}

.account-profile-status {
  margin: 1rem 0 0;
  padding: 0.8rem 1rem;
  border: 1px solid var(--account-border-strong);
  font-size: 0.82rem;
  line-height: 1.45;
}

.account-profile-status--success {
  border-color: rgba(101, 214, 173, 0.45);
  background: rgba(101, 214, 173, 0.08);
  color: var(--account-green);
}

.account-profile-status--error {
  border-color: rgba(255, 123, 134, 0.5);
  background: rgba(255, 70, 85, 0.08);
  color: #ff9ba3;
}

.account-online-visibility,
.account-opening-music {
  display: grid;
  align-items: center;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem 2rem;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--account-border);
}
.account-online-visibility[aria-busy=true],
.account-opening-music[aria-busy=true] {
  cursor: progress;
}

.account-online-visibility__copy,
.account-opening-music__copy {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.account-online-visibility__copy strong,
.account-opening-music__copy strong {
  color: #fff;
  font-size: 0.9rem;
}
.account-online-visibility__copy span,
.account-opening-music__copy span {
  color: var(--account-muted);
  font-size: 0.82rem;
}

.account-online-visibility__control,
.account-opening-music__control {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0;
  color: #fff;
  cursor: pointer;
  font-size: 0.84rem;
  font-weight: 600;
}
.account-online-visibility__control input,
.account-opening-music__control input {
  width: 1.1rem;
  height: 1.1rem;
  margin: 0;
  accent-color: var(--account-red);
  cursor: pointer;
}
.account-online-visibility__control input:disabled,
.account-opening-music__control input:disabled {
  cursor: progress;
  opacity: 0.55;
}

.account-online-visibility__status,
.account-opening-music__status {
  grid-column: 1/-1;
  margin: 0;
  padding: 0.7rem 0.85rem;
  border: 1px solid var(--account-border-strong);
  font-size: 0.78rem;
}
.account-online-visibility__status[hidden],
.account-opening-music__status[hidden] {
  display: none;
}

.account-online-visibility__status--success,
.account-opening-music__status--success {
  border-color: rgba(101, 214, 173, 0.45);
  background: rgba(101, 214, 173, 0.08);
  color: var(--account-green);
}

.account-online-visibility__status--error,
.account-opening-music__status--error {
  border-color: rgba(255, 123, 134, 0.5);
  background: rgba(255, 70, 85, 0.08);
  color: #ff9ba3;
}

.account-opening-music__help {
  grid-column: 1/-1;
  margin: -0.45rem 0 0;
  color: var(--account-muted);
  font-size: 0.78rem;
}

.account-connected-dot {
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  margin-right: 0.4rem;
  border-radius: 50%;
  background: var(--account-green);
}

.account-danger-zone {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--account-border);
}
.account-danger-zone > div {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.account-danger-zone strong {
  color: #fff;
  font-size: 0.9rem;
}
.account-danger-zone span {
  color: var(--account-muted);
  font-size: 0.82rem;
}

.account-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.65rem 1.15rem;
  border: 1px solid transparent;
  font-size: 0.82rem;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 150ms ease, border-color 150ms ease, color 150ms ease;
}
.account-button:not(:disabled) {
  cursor: pointer;
}
.account-button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.account-button--primary {
  border-color: var(--account-red);
  background: var(--account-red);
  color: var(--account-dark);
}
.account-button--primary:not(:disabled):hover, .account-button--primary:focus-visible {
  border-color: #fff;
  background: #fff;
  color: var(--account-dark);
}

.account-button--secondary {
  border-color: var(--account-border-strong);
  background: transparent;
  color: #fff;
}
.account-button--secondary:not(:disabled):hover, .account-button--secondary:focus-visible {
  border-color: var(--account-red);
  background: var(--account-red);
  color: var(--account-dark);
}

.catch-account a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

@media (max-width: 1199.98px) {
  .account-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .account-table th,
  .account-table td {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}
@media (max-width: 991.98px) {
  .account-identity {
    width: 100%;
    min-width: 0;
  }
  .account-layout {
    grid-template-columns: 1fr;
  }
  .account-sidebar {
    position: static;
  }
  .account-nav {
    display: flex;
    flex-wrap: wrap;
    padding: 0.75rem;
  }
  .account-nav .catch-eyebrow {
    width: 100%;
    padding: 0.25rem 0.5rem 0;
  }
  .account-nav a {
    flex: 1 1 11rem;
    padding: 0.65rem 0.75rem;
  }
  .account-nav a::before {
    top: auto;
    right: 0;
    width: auto;
    height: 2px;
  }
  .account-help {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .catch-account {
    padding-bottom: 4rem;
  }
  .account-stats,
  .account-actions__grid,
  .account-information__grid {
    grid-template-columns: 1fr;
  }
  .account-stat {
    min-height: 7.5rem;
  }
  .account-section-heading,
  .account-danger-zone {
    align-items: flex-start;
    flex-direction: column;
    gap: 1rem;
  }
  .account-section-heading__aside {
    align-items: stretch;
    flex-direction: column;
    width: 100%;
  }
  .account-section-heading .account-button,
  .account-danger-zone .account-button {
    width: 100%;
  }
  .account-profile-actions {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr;
  }
  .account-profile-meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.25rem;
  }
  .account-online-visibility,
  .account-opening-music {
    align-items: flex-start;
    grid-template-columns: 1fr;
  }
  .account-online-visibility__status,
  .account-opening-music__status,
  .account-opening-music__help {
    grid-column: auto;
  }
  .account-table {
    display: block;
  }
  .account-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .account-table tbody,
  .account-table tr,
  .account-table td {
    display: block;
    width: 100%;
  }
  .account-table tr {
    padding: 1rem 0;
    border-bottom: 1px solid var(--account-border);
  }
  .account-table tr:first-child {
    padding-top: 0;
  }
  .account-table tr:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }
  .account-table td,
  .account-table td:first-child,
  .account-table td:last-child {
    display: grid;
    grid-template-columns: minmax(6.5rem, 38%) minmax(0, 1fr);
    gap: 1rem;
    padding: 0.35rem 0;
    border: 0;
    text-align: right;
  }
  .account-table td::before {
    color: var(--account-muted);
    content: attr(data-label);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-align: left;
    text-transform: uppercase;
  }
  .account-table td:first-child {
    display: block;
    margin-bottom: 0.75rem;
  }
  .account-table td:first-child::before {
    display: none;
  }
  .account-table td > * {
    justify-self: end;
  }
  .account-card-summary,
  .account-transaction-summary {
    justify-self: stretch !important;
    text-align: left;
  }
  .account-history-date {
    align-items: flex-end;
    text-align: right;
  }
  .account-card-preview {
    width: 4rem;
    flex-basis: 4rem;
  }
  .account-card-preview--missing {
    height: 6rem;
  }
}
@media (max-width: 479.98px) {
  .account-stats {
    gap: 0.75rem;
  }
  .account-nav a {
    flex-basis: 100%;
  }
  .account-actions,
  .account-history,
  .account-information {
    padding: 1rem;
  }
  .account-stat,
  .account-actions__grid > a {
    padding: 1rem;
  }
  .account-section-heading__count {
    align-self: flex-start;
  }
  .account-table td,
  .account-table td:first-child,
  .account-table td:last-child {
    grid-template-columns: 1fr;
    gap: 0.15rem;
    text-align: left;
  }
  .account-table td > * {
    justify-self: start;
  }
  .account-history-date {
    align-items: flex-start;
    text-align: left;
  }
}
@media (prefers-reduced-motion: reduce) {
  .catch-account *,
  .catch-account *::before,
  .catch-account *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
.catch-missions {
  --missions-bg: #080d13;
  --missions-panel: #111923;
  --missions-panel-soft: #151f2b;
  --missions-border: rgba(255, 255, 255, 0.11);
  --missions-muted: rgba(235, 241, 247, 0.66);
  --missions-red: #ff4655;
  --missions-green: #65d6ad;
  --missions-gold: #f0c24b;
  --missions-blue: #58c7f3;
  --missions-purple: #9c87ff;
  min-height: 75vh;
  padding-bottom: clamp(3.5rem, 6vw, 6rem);
  overflow: clip;
  color: #f5f8fb;
  background: radial-gradient(circle at 86% 5%, rgba(88, 199, 243, 0.12), transparent 28rem), radial-gradient(circle at 9% 24%, rgba(255, 70, 85, 0.1), transparent 30rem), var(--missions-bg);
}

.missions-command {
  position: relative;
  padding: clamp(1.25rem, 3vw, 1.8rem);
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: linear-gradient(145deg, rgba(88, 199, 243, 0.1), transparent 50%), rgba(13, 21, 30, 0.9);
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.3);
}
.missions-command::before {
  position: absolute;
  top: -1px;
  left: -1px;
  width: 5rem;
  height: 2px;
  content: "";
  background: var(--missions-blue);
}
.missions-command dl {
  display: grid;
  margin: 1.15rem 0 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.missions-command dl div {
  min-width: 0;
  padding-inline: 1rem;
  border-left: 1px solid var(--missions-border);
}
.missions-command dl div:first-child {
  padding-left: 0;
  border-left: 0;
}
.missions-command dt {
  color: var(--missions-muted);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.missions-command dd {
  margin: 0.3rem 0 0;
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2.25rem, 5vw, 3.7rem);
  line-height: 1;
}
.missions-command dd small, .missions-command dd .small {
  color: var(--missions-gold);
  font-family: "Barlow", sans-serif;
  font-size: 0.7rem;
  font-weight: 800;
}

.missions-command__signal {
  display: flex;
  gap: 0.3rem;
  margin-bottom: 1.25rem;
}
.missions-command__signal span {
  width: 1.5rem;
  height: 0.22rem;
  background: rgba(255, 255, 255, 0.14);
}
.missions-command__signal span:first-child {
  background: var(--missions-blue);
}

.missions-command__label {
  color: #fff;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.missions-content {
  padding-top: clamp(1.5rem, 3vw, 2.5rem);
}

.missions-view-nav {
  display: grid;
  max-width: 46rem;
  margin: 0 auto clamp(2rem, 4vw, 3.5rem);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--missions-border);
  background: rgba(8, 13, 19, 0.86);
}
.missions-view-nav a {
  display: flex;
  min-height: 3.25rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 1rem;
  color: var(--missions-muted);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.missions-view-nav a + a {
  border-left: 1px solid var(--missions-border);
}
.missions-view-nav a strong {
  min-width: 1.75rem;
  padding: 0.22rem 0.4rem;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.14);
  font-size: 0.7rem;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.missions-view-nav a:hover, .missions-view-nav a:focus-visible {
  color: #fff;
  background: rgba(145, 104, 255, 0.1);
}
.missions-view-nav a:focus-visible {
  position: relative;
  z-index: 1;
  outline: 2px solid #fff;
  outline-offset: 2px;
}
.missions-view-nav a[aria-current=page] {
  color: #fff;
  background: rgba(145, 104, 255, 0.16);
  box-shadow: inset 0 -3px 0 var(--missions-purple);
}
.missions-view-nav a[aria-current=page] strong {
  border-color: rgba(145, 104, 255, 0.55);
  background: rgba(145, 104, 255, 0.18);
}

.missions-rotation-notice {
  display: grid;
  margin-bottom: 1.5rem;
  padding: 1rem 1.25rem;
  grid-template-columns: minmax(13rem, 0.4fr) minmax(0, 1fr);
  gap: 1rem 2rem;
  color: var(--missions-muted);
  border: 1px solid rgba(240, 194, 75, 0.34);
  border-left: 3px solid var(--missions-gold);
  background: rgba(240, 194, 75, 0.06);
  font-size: 0.82rem;
  line-height: 1.55;
}
.missions-rotation-notice strong {
  align-self: center;
  color: #fff;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.missions-rotation-notice p {
  margin: 0;
}

.missions-period-nav {
  position: sticky;
  z-index: 5;
  top: var(--header-height, 4.5rem);
  display: grid;
  margin-bottom: clamp(2rem, 4vw, 3.5rem);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--missions-border);
  background: rgba(8, 13, 19, 0.94);
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(1rem);
}
.missions-period-nav a {
  position: relative;
  display: flex;
  min-height: 4rem;
  flex-direction: column;
  justify-content: center;
  padding: 0.9rem 1.25rem;
  color: #fff;
  border-left: 1px solid var(--missions-border);
  font-family: "Barlow", sans-serif;
  font-size: 0.88rem;
  font-weight: 800;
  text-transform: uppercase;
  transition: color 180ms ease, background 180ms ease;
}
.missions-period-nav a:first-child {
  border-left: 0;
}
.missions-period-nav a::after {
  position: absolute;
  right: 1.25rem;
  bottom: 1rem;
  width: 1.4rem;
  height: 1px;
  content: "";
  background: var(--missions-red);
  transition: width 180ms ease;
}
.missions-period-nav a span {
  margin-bottom: 0.2rem;
  color: var(--missions-muted);
  font-size: 0.58rem;
  letter-spacing: 0.1em;
}
.missions-period-nav a:hover, .missions-period-nav a:focus-visible {
  color: var(--missions-red);
  background: rgba(255, 70, 85, 0.06);
}
.missions-period-nav a:hover::after, .missions-period-nav a:focus-visible::after {
  width: 2.3rem;
}

.missions-section {
  scroll-margin-top: calc(var(--header-height, 4.5rem) + 7rem);
}
.missions-section + .missions-section {
  margin-top: clamp(2.75rem, 6vw, 4.5rem);
}

.missions-section__heading {
  display: grid;
  align-items: end;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: clamp(1rem, 3vw, 2rem);
  margin-bottom: clamp(1.25rem, 3vw, 2rem);
}
.missions-section__heading h2, .missions-section__heading .h2 {
  margin: 0.15rem 0 0;
  font-size: clamp(2.25rem, 5vw, 4rem);
  line-height: 0.92;
  text-transform: uppercase;
}

.missions-section__index {
  color: rgba(255, 255, 255, 0.12);
  font-family: "League Gothic", sans-serif;
  font-size: clamp(3rem, 6vw, 5rem);
  line-height: 0.75;
}

.missions-section__count {
  padding: 0.5rem 0.75rem;
  color: var(--missions-muted);
  border: 1px solid var(--missions-border);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.missions-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.2rem;
}

.missions-period-empty {
  display: flex;
  min-height: 7rem;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  gap: 0.35rem;
  padding: 1.25rem 1.5rem;
  color: var(--missions-muted);
  border: 1px dashed rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.018);
  font-size: 0.82rem;
  line-height: 1.55;
}
.missions-period-empty strong {
  color: #fff;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.mission-card {
  --mission-accent: var(--missions-red);
  position: relative;
  display: flex;
  min-height: 18.5rem;
  min-width: 0;
  flex-direction: column;
  padding: clamp(1.25rem, 3vw, 1.75rem);
  overflow: hidden;
  border: 1px solid var(--missions-border);
  background: linear-gradient(145deg, color-mix(in srgb, var(--mission-accent) 10%, transparent), transparent 45%), var(--missions-panel);
  box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.16);
  isolation: isolate;
  transition: border-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}
.mission-card::before {
  position: absolute;
  z-index: -1;
  inset: 0 auto 0 0;
  width: 3px;
  content: "";
  background: var(--mission-accent);
}
.mission-card::after {
  position: absolute;
  z-index: -1;
  right: -3.5rem;
  bottom: -5.5rem;
  width: 12rem;
  height: 12rem;
  content: "";
  border: 1px solid color-mix(in srgb, var(--mission-accent) 26%, transparent);
  transform: rotate(35deg);
}
.mission-card:hover {
  border-color: color-mix(in srgb, var(--mission-accent) 48%, transparent);
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.28);
  transform: translateY(-0.2rem);
}
.mission-card--weekly {
  --mission-accent: var(--missions-gold);
}
.mission-card--monthly {
  --mission-accent: var(--missions-blue);
}
.mission-card--status-paid, .mission-card--status-reward_pending {
  --mission-accent: var(--missions-green);
}

.mission-card__topline,
.mission-card__progress-copy,
.mission-card__footer,
.community-mission__topline,
.community-progress__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.mission-card__status,
.community-mission__status {
  color: var(--mission-accent, var(--missions-purple));
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.mission-card__reward {
  font-size: 0.78rem;
  font-weight: 800;
}

.mission-card__body {
  margin: clamp(1.5rem, 3vw, 2.5rem) 0 1.5rem;
}
.mission-card__body h3, .mission-card__body .h3 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.6rem, 4vw, 2.35rem);
  line-height: 1.02;
  text-transform: uppercase;
}
.mission-card__body p {
  max-width: 40rem;
  margin: 0.8rem 0 0;
  color: var(--missions-muted);
  font-size: 0.82rem;
  line-height: 1.6;
}

.mission-card__progress-copy,
.community-progress__heading {
  margin-top: auto;
  color: var(--missions-muted);
  font-size: 0.7rem;
}
.mission-card__progress-copy strong,
.community-progress__heading strong {
  color: #fff;
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
}

.mission-progress {
  height: 0.55rem;
  margin-top: 0.65rem;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.08);
}
.mission-progress span {
  display: block;
  height: 100%;
  background: var(--mission-accent, var(--missions-red));
}
.mission-progress--community span {
  background: var(--missions-purple);
}
.mission-progress--personal span {
  background: var(--missions-green);
}

.mission-card__footer {
  align-items: flex-start;
  margin-top: 1.15rem;
  padding-top: 1rem;
  color: var(--missions-muted);
  border-top: 1px solid var(--missions-border);
  font-size: 0.65rem;
}
.mission-card__footer time {
  text-align: right;
}

.missions-community {
  padding-top: clamp(3rem, 7vw, 5rem);
  border-top: 1px solid var(--missions-border);
}
.missions-community .catch-eyebrow {
  color: var(--missions-purple);
}

.missions-community__list {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.community-mission {
  position: relative;
  display: grid;
  grid-template-columns: minmax(16rem, 0.8fr) minmax(22rem, 1.2fr);
  overflow: hidden;
  border: 1px solid rgba(156, 135, 255, 0.3);
  background: radial-gradient(circle at 8% 100%, rgba(156, 135, 255, 0.14), transparent 24rem), var(--missions-panel);
  box-shadow: 0 1.75rem 5rem rgba(0, 0, 0, 0.22);
}
.community-mission::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 8rem;
  height: 3px;
  content: "";
  background: linear-gradient(90deg, var(--missions-purple), var(--missions-blue));
}

.community-mission__intro,
.community-mission__progress {
  min-width: 0;
  padding: clamp(1.5rem, 4vw, 2.5rem);
}

.community-mission__intro {
  border-right: 1px solid var(--missions-border);
}
.community-mission__intro h3, .community-mission__intro .h3 {
  margin: clamp(2rem, 5vw, 3.5rem) 0 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 0.98;
  text-transform: uppercase;
}
.community-mission__intro p {
  margin: 0.85rem 0 0;
  color: var(--missions-muted);
  font-size: 0.84rem;
  line-height: 1.65;
}
.community-mission__intro time {
  display: block;
  margin-top: 0.7rem;
  color: var(--missions-muted);
  font-size: 0.66rem;
}

.community-mission__badge {
  color: var(--missions-purple);
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.community-mission__status {
  max-width: 55%;
  text-align: right;
}

.community-mission__reward {
  margin-top: 1.5rem;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.8rem;
  font-weight: 800;
}

.community-mission__progress {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.75rem;
  background: rgba(4, 8, 13, 0.28);
}

.community-progress__heading {
  margin: 0;
}

.community-mission__facts {
  display: grid;
  margin: 0.25rem 0 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid var(--missions-border);
}
.community-mission__facts div {
  min-width: 0;
  padding: 0.8rem;
}
.community-mission__facts div + div {
  border-left: 1px solid var(--missions-border);
}
.community-mission__facts dt {
  color: var(--missions-muted);
  font-size: 0.57rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.community-mission__facts dd {
  margin: 0.3rem 0 0;
  color: #fff;
  font-size: 0.72rem;
  font-weight: 800;
}
.community-mission__facts dd.is-positive {
  color: var(--missions-green);
}

.community-mission__bonus {
  padding: 1rem;
  border: 1px solid rgba(145, 104, 255, 0.42);
  background: linear-gradient(135deg, rgba(145, 104, 255, 0.13), rgba(50, 143, 255, 0.05)), rgba(4, 8, 13, 0.32);
}
.community-mission__bonus p {
  margin: 0.7rem 0 0;
  color: var(--missions-muted);
  font-size: 0.74rem;
  line-height: 1.55;
}

.community-mission__bonus-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.community-mission__bonus-heading div {
  min-width: 0;
}
.community-mission__bonus-heading span {
  display: block;
  color: var(--missions-purple);
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.community-mission__bonus-heading strong {
  display: block;
  margin-top: 0.25rem;
  color: #fff;
  font-size: 0.88rem;
  line-height: 1.45;
}

.community-mission__bonus-heading .community-mission__bonus-rank {
  flex: 0 0 auto;
  padding: 0.45rem 0.55rem;
  color: #fff;
  border: 1px solid rgba(145, 104, 255, 0.46);
  background: rgba(145, 104, 255, 0.16);
  font-size: 0.72rem;
  letter-spacing: 0;
  text-transform: none;
}

.community-mission__leaderboard-toggle {
  margin-top: 1rem;
}
.community-mission__leaderboard-toggle > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 2.75rem;
  padding: 0.65rem 0.8rem;
  color: #fff;
  border: 1px solid rgba(145, 104, 255, 0.42);
  background: rgba(145, 104, 255, 0.12);
  cursor: pointer;
  font-size: 0.75rem;
  font-weight: 800;
  list-style: none;
  touch-action: manipulation;
}
.community-mission__leaderboard-toggle > summary::-webkit-details-marker {
  display: none;
}
.community-mission__leaderboard-toggle > summary::after {
  width: 0.48rem;
  height: 0.48rem;
  margin-left: 1rem;
  border-right: 2px solid var(--missions-purple);
  border-bottom: 2px solid var(--missions-purple);
  content: "";
  transform: rotate(45deg);
}
.community-mission__leaderboard-toggle > summary:hover {
  background: rgba(145, 104, 255, 0.18);
}
.community-mission__leaderboard-toggle > summary:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}
.community-mission__leaderboard-toggle[open] > summary {
  background: rgba(145, 104, 255, 0.18);
}
.community-mission__leaderboard-toggle[open] > summary::after {
  transform: rotate(225deg);
}

.community-mission__leaderboard-hide,
.community-mission__leaderboard-toggle[open] .community-mission__leaderboard-show {
  display: none;
}

.community-mission__leaderboard-toggle[open] .community-mission__leaderboard-hide {
  display: inline;
}

.community-mission__leaderboard {
  border: 1px solid rgba(145, 104, 255, 0.28);
  border-top: 0;
  background: rgba(4, 8, 13, 0.24);
}
.community-mission__leaderboard header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 0.8rem;
}
.community-mission__leaderboard h4, .community-mission__leaderboard .h4 {
  margin: 0;
  color: #fff;
  font-size: 0.78rem;
  line-height: 1.4;
}
.community-mission__leaderboard header p {
  max-width: 27rem;
  margin: 0;
  font-size: 0.68rem;
  text-align: right;
}
.community-mission__leaderboard ol {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid rgba(145, 104, 255, 0.2);
}
.community-mission__leaderboard li {
  display: grid;
  align-items: center;
  min-height: 2.35rem;
  padding: 0.42rem 0.8rem;
  grid-template-columns: 3.2rem minmax(0, 1fr) 3rem;
  gap: 0.65rem;
  color: rgba(255, 255, 255, 0.78);
}
.community-mission__leaderboard li + li {
  border-top: 1px solid rgba(145, 104, 255, 0.14);
}
.community-mission__leaderboard li.is-current-user {
  color: #fff;
  background: rgba(145, 104, 255, 0.16);
  box-shadow: inset 2px 0 0 var(--missions-purple);
}
.community-mission__leaderboard li strong {
  font-size: 0.76rem;
  font-variant-numeric: tabular-nums;
}

.community-mission__leaderboard-rank {
  color: var(--missions-purple);
  font-size: 0.72rem;
  font-weight: 800;
}

.community-mission__leaderboard-you {
  justify-self: end;
  padding: 0.2rem 0.4rem;
  color: #fff;
  border: 1px solid rgba(145, 104, 255, 0.48);
  background: rgba(145, 104, 255, 0.14);
  font-size: 0.64rem;
  font-weight: 800;
}

.community-mission__bonus .community-mission__leaderboard-empty {
  margin: 0;
  padding: 0.75rem 0.8rem;
  border-top: 1px solid rgba(145, 104, 255, 0.2);
}

.community-mission__bonus-stats {
  display: grid;
  margin: 0.9rem 0 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid rgba(145, 104, 255, 0.25);
}
.community-mission__bonus-stats div {
  min-width: 0;
  padding: 0.65rem;
}
.community-mission__bonus-stats div:nth-child(even) {
  border-left: 1px solid rgba(145, 104, 255, 0.25);
}
.community-mission__bonus-stats div:nth-child(n+3) {
  border-top: 1px solid rgba(145, 104, 255, 0.25);
}
.community-mission__bonus-stats dt {
  color: var(--missions-muted);
  font-size: 0.64rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.community-mission__bonus-stats dd {
  margin: 0.3rem 0 0;
  color: #fff;
  font-size: 0.76rem;
  font-weight: 800;
}
.community-mission__bonus-stats dd.is-positive {
  color: var(--missions-green);
}

.community-mission__bonus .community-mission__bonus-explanation {
  color: rgba(255, 255, 255, 0.84);
}

.community-mission__bonus .community-mission__bonus-status {
  padding: 0.7rem 0.8rem;
  color: rgba(255, 255, 255, 0.82);
  border-left: 2px solid var(--missions-purple);
  background: rgba(145, 104, 255, 0.08);
}

.community-mission__bonus .community-mission__bonus-note {
  font-size: 0.68rem;
}

.missions-history__heading {
  display: grid;
  align-items: end;
  margin-bottom: clamp(1.5rem, 4vw, 2.5rem);
  grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr);
  gap: 1.5rem 3rem;
}
.missions-history__heading h2, .missions-history__heading .h2 {
  max-width: 52rem;
  margin: 0.3rem 0 0;
  color: #fff;
  font-size: clamp(2.25rem, 5vw, 4rem);
  line-height: 0.95;
  text-transform: uppercase;
}
.missions-history__heading p {
  margin: 0;
  color: var(--missions-muted);
  font-size: 0.84rem;
  line-height: 1.65;
}

.missions-history__months {
  display: grid;
  gap: 1rem;
}

.missions-history-month {
  border: 1px solid var(--missions-border);
  background: rgba(8, 13, 19, 0.68);
}
.missions-history-month > summary {
  display: flex;
  min-height: 3.5rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.85rem 1.1rem;
  color: #fff;
  cursor: pointer;
  list-style: none;
  touch-action: manipulation;
}
.missions-history-month > summary::-webkit-details-marker {
  display: none;
}
.missions-history-month > summary > span {
  font-family: "Barlow", sans-serif;
  font-size: 1rem;
  font-weight: 800;
  text-transform: uppercase;
}
.missions-history-month > summary > strong {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--missions-muted);
  font-size: 0.67rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.missions-history-month > summary > strong::after {
  width: 0.5rem;
  height: 0.5rem;
  border-right: 2px solid var(--missions-purple);
  border-bottom: 2px solid var(--missions-purple);
  content: "";
  transform: rotate(45deg);
}
.missions-history-month > summary:hover {
  background: rgba(145, 104, 255, 0.08);
}
.missions-history-month > summary:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}
.missions-history-month[open] > summary {
  border-bottom: 1px solid var(--missions-border);
  background: rgba(145, 104, 255, 0.08);
}
.missions-history-month[open] > summary > strong::after {
  transform: rotate(225deg);
}

.missions-history-month__content {
  display: grid;
  gap: 1rem;
  padding: 1rem;
}

.missions-history-card {
  min-width: 0;
  border: 1px solid rgba(145, 104, 255, 0.28);
  background: linear-gradient(135deg, rgba(145, 104, 255, 0.08), transparent 45%), var(--missions-panel);
}

.missions-history-card__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.25rem;
}
.missions-history-card__heading h3, .missions-history-card__heading .h3 {
  margin: 0.35rem 0 0;
  color: #fff;
  font-size: clamp(1.5rem, 3vw, 2.1rem);
  line-height: 1;
  text-transform: uppercase;
}
.missions-history-card__heading time {
  flex: 0 0 auto;
  padding-top: 0.15rem;
  color: var(--missions-muted);
  font-size: 0.68rem;
  text-align: right;
}

.missions-history-card__status {
  color: var(--missions-muted);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.missions-history-card__status.is-success {
  color: var(--missions-green);
}
.missions-history-card__status.is-failed {
  color: var(--missions-red);
}

.missions-history-card__facts {
  display: grid;
  margin: 0;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border-top: 1px solid var(--missions-border);
  border-bottom: 1px solid var(--missions-border);
}
.missions-history-card__facts div {
  min-width: 0;
  padding: 0.85rem 1rem;
}
.missions-history-card__facts div + div {
  border-left: 1px solid var(--missions-border);
}
.missions-history-card__facts dt {
  color: var(--missions-muted);
  font-size: 0.56rem;
  font-weight: 700;
  letter-spacing: 0.055em;
  line-height: 1.4;
  text-transform: uppercase;
}
.missions-history-card__facts dd {
  margin: 0.35rem 0 0;
  color: #fff;
  font-size: 0.74rem;
  font-weight: 800;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
}

.missions-history-ranking > summary {
  display: grid;
  min-height: 3.25rem;
  align-items: center;
  padding: 0.75rem 1rem;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  color: #fff;
  background: rgba(4, 8, 13, 0.28);
  cursor: pointer;
  font-size: 0.74rem;
  font-weight: 800;
  list-style: none;
  touch-action: manipulation;
}
.missions-history-ranking > summary::-webkit-details-marker {
  display: none;
}
.missions-history-ranking > summary strong {
  color: var(--missions-muted);
  font-size: 0.65rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.missions-history-ranking > summary:hover {
  background: rgba(145, 104, 255, 0.1);
}
.missions-history-ranking > summary:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}
.missions-history-ranking[open] > summary {
  background: rgba(145, 104, 255, 0.12);
}

.missions-history-ranking__hide,
.missions-history-ranking[open] .missions-history-ranking__show {
  display: none;
}

.missions-history-ranking[open] .missions-history-ranking__hide {
  display: inline;
}

.missions-history-ranking__table-wrap {
  min-width: 0;
}

.missions-history-ranking table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.73rem;
}
.missions-history-ranking table th,
.missions-history-ranking table td {
  padding: 0.75rem 1rem;
  border-top: 1px solid rgba(145, 104, 255, 0.16);
  text-align: left;
  font-variant-numeric: tabular-nums;
}
.missions-history-ranking table thead th {
  color: var(--missions-muted);
  background: rgba(4, 8, 13, 0.4);
  font-size: 0.56rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.missions-history-ranking table tbody th {
  color: #fff;
  font-weight: 800;
}
.missions-history-ranking table tbody th span {
  display: inline-block;
  margin-left: 0.45rem;
  padding: 0.16rem 0.32rem;
  color: #fff;
  border: 1px solid rgba(145, 104, 255, 0.52);
  background: rgba(145, 104, 255, 0.15);
  font-size: 0.58rem;
  text-transform: uppercase;
}
.missions-history-ranking table tbody td {
  color: rgba(255, 255, 255, 0.78);
}
.missions-history-ranking table tr.is-current-user {
  background: rgba(145, 104, 255, 0.13);
  box-shadow: inset 3px 0 0 var(--missions-purple);
}

.missions-history-ranking__payment {
  display: block;
  margin-top: 0.18rem;
  color: var(--missions-muted);
  font-size: 0.58rem;
  font-weight: 700;
}
.missions-history-ranking__payment--paid {
  color: var(--missions-green);
}
.missions-history-ranking__payment--pending {
  color: var(--missions-gold);
}

.missions-history-ranking__eligibility {
  display: block;
  margin-top: 0.18rem;
  color: var(--missions-muted);
  font-size: 0.58rem;
  font-weight: 700;
}
.missions-history-ranking__eligibility.is-eligible {
  color: var(--missions-green);
}

.missions-history-ranking__empty {
  margin: 0;
  padding: 1rem;
  color: var(--missions-muted);
  border-top: 1px solid var(--missions-border);
  font-size: 0.76rem;
}

.missions-empty-state--compact {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.missions-empty-state--compact h2, .missions-empty-state--compact .h2 {
  font-size: clamp(2.25rem, 6vw, 4.5rem);
}

.missions-empty-state {
  max-width: 52rem;
  margin: clamp(4rem, 10vw, 8rem) auto;
  padding: clamp(2rem, 6vw, 4rem);
  text-align: center;
  border: 1px solid var(--missions-border);
  background: linear-gradient(145deg, rgba(255, 70, 85, 0.08), transparent 55%), var(--missions-panel);
  box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.22);
}
.missions-empty-state h1, .missions-empty-state .h1,
.missions-empty-state h2,
.missions-empty-state .h2 {
  margin: 0.4rem 0 0;
  font-size: clamp(3rem, 8vw, 6.5rem);
  line-height: 0.92;
  text-transform: uppercase;
}
.missions-empty-state p {
  max-width: 37rem;
  margin: 1.2rem auto 0;
  color: var(--missions-muted);
  line-height: 1.7;
}

.catch-missions--logged-out {
  display: grid;
  min-height: 75vh;
  place-items: center;
}

.missions-button {
  display: inline-flex;
  min-height: 3rem;
  align-items: center;
  justify-content: center;
  margin-top: 1.5rem;
  padding: 0.8rem 1.25rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.missions-button--primary {
  color: #fff;
  background: var(--missions-red);
}
.missions-button--primary:hover, .missions-button--primary:focus-visible {
  color: #fff;
  background: #e83746;
}

@media (max-width: 991.98px) {
  .missions-history__heading {
    align-items: start;
    grid-template-columns: 1fr;
  }
  .missions-history-card__facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .missions-history-card__facts div + div {
    border-left: 0;
  }
  .missions-history-card__facts div:nth-child(even) {
    border-left: 1px solid var(--missions-border);
  }
  .missions-history-card__facts div:nth-child(n+3) {
    border-top: 1px solid var(--missions-border);
  }
  .missions-period-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .missions-period-nav a:nth-child(odd):not(:first-child) {
    border-left: 0;
  }
  .missions-period-nav a:nth-child(n+3) {
    border-top: 1px solid var(--missions-border);
  }
  .missions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .community-mission {
    grid-template-columns: 1fr;
  }
  .community-mission__intro {
    border-right: 0;
    border-bottom: 1px solid var(--missions-border);
  }
}
@media (max-width: 575.98px) {
  .missions-view-nav a {
    min-width: 0;
    padding-inline: 0.75rem;
  }
  .missions-view-nav a span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .missions-history-month__content {
    padding: 0.65rem;
  }
  .missions-history-card__heading {
    flex-direction: column;
    gap: 0.75rem;
  }
  .missions-history-card__heading time {
    text-align: left;
  }
  .missions-history-card__facts {
    grid-template-columns: 1fr;
  }
  .missions-history-card__facts div:nth-child(even) {
    border-left: 0;
  }
  .missions-history-card__facts div + div {
    border-top: 1px solid var(--missions-border);
  }
  .missions-history-ranking table,
  .missions-history-ranking tbody,
  .missions-history-ranking tr,
  .missions-history-ranking th,
  .missions-history-ranking td {
    display: block;
  }
  .missions-history-ranking thead {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  .missions-history-ranking tr {
    display: grid;
    padding: 0.75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem 1rem;
    border-top: 1px solid rgba(145, 104, 255, 0.2);
  }
  .missions-history-ranking table th,
  .missions-history-ranking table td {
    padding: 0;
    border-top: 0;
  }
  .missions-history-ranking table th::before,
  .missions-history-ranking table td::before {
    display: block;
    margin-bottom: 0.18rem;
    color: var(--missions-muted);
    content: attr(data-label);
    font-size: 0.52rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }
  .missions-history-ranking tr.is-current-user {
    box-shadow: inset 2px 0 0 var(--missions-purple);
  }
  .missions-command dl {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .missions-command dl div,
  .missions-command dl div:first-child {
    padding: 0 0 1rem;
    border-bottom: 1px solid var(--missions-border);
    border-left: 0;
  }
  .missions-command dl div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }
  .missions-period-nav {
    position: static;
    grid-template-columns: 1fr;
  }
  .missions-period-nav a,
  .missions-period-nav a:nth-child(odd):not(:first-child) {
    border-top: 1px solid var(--missions-border);
    border-left: 0;
  }
  .missions-period-nav a:first-child {
    border-top: 0;
  }
  .missions-rotation-notice {
    grid-template-columns: 1fr;
  }
  .missions-grid {
    grid-template-columns: 1fr;
  }
  .missions-section__heading {
    align-items: start;
    grid-template-columns: auto minmax(0, 1fr);
  }
  .missions-section__count {
    grid-column: 2;
    justify-self: start;
  }
  .mission-card__topline,
  .mission-card__footer,
  .community-mission__topline,
  .community-progress__heading,
  .community-mission__bonus-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.5rem;
  }
  .mission-card__footer time,
  .community-mission__status {
    max-width: none;
    text-align: left;
  }
  .community-mission__facts {
    grid-template-columns: 1fr;
  }
  .community-mission__facts div + div {
    border-top: 1px solid var(--missions-border);
    border-left: 0;
  }
  .community-mission__bonus-stats {
    grid-template-columns: 1fr;
  }
  .community-mission__bonus-stats div:nth-child(even) {
    border-left: 0;
  }
  .community-mission__bonus-stats div + div {
    border-top: 1px solid rgba(145, 104, 255, 0.25);
  }
  .community-mission__leaderboard header {
    flex-direction: column;
    gap: 0.3rem;
  }
  .community-mission__leaderboard header p {
    text-align: left;
  }
}
@media (prefers-reduced-motion: reduce) {
  .catch-missions *,
  .catch-missions *::before,
  .catch-missions *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
.catch-trophies {
  --troph-panel: rgba(236, 232, 225, 0.04);
  --troph-panel-strong: rgba(236, 232, 225, 0.075);
  --troph-line: rgba(236, 232, 225, 0.16);
  --troph-line-soft: rgba(236, 232, 225, 0.08);
  --troph-ink: #ECE8E1;
  --troph-muted: rgba(236, 232, 225, 0.68);
  --troph-dim: rgba(236, 232, 225, 0.52);
  position: relative;
  padding-block: clamp(2.75rem, 6vw, 4.75rem);
  color: var(--troph-ink);
  background: linear-gradient(115deg, rgba(255, 70, 85, 0.07), transparent 30rem), repeating-linear-gradient(135deg, transparent 0 6rem, rgba(236, 232, 225, 0.012) 6rem 6.05rem), #0F1923;
  border-bottom: 1px solid var(--troph-line-soft);
  overflow: clip;
}

.catch-trophies.player-tab-panel:not([hidden]) {
  animation-name: trophy-tab-panel-in;
}

@keyframes trophy-tab-panel-in {
  from {
    opacity: 0;
  }
}
.c-emblem {
  display: block;
  width: var(--em, 56px);
  flex: 0 0 auto;
  line-height: 0;
  --frame: #5A6672;
  --field: rgb(11.7647058824%, 15.8431372549%, 19.9215686275%);
  --glyph: #5A6672;
  --prestige: #ECE8E1;
  --cut: #0F1923;
  --glow: rgba(90, 102, 114, 0.28);
}
.c-emblem svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}
.c-emblem[data-rank="1"] {
  --frame: #5A6672;
  --field: rgb(11.7647058824%, 15.8431372549%, 19.9215686275%);
  --glyph: #5A6672;
  --glow: rgba(90, 102, 114, 0.28);
}
.c-emblem[data-rank="2"] {
  --frame: rgba(236, 232, 225, 0.72);
  --field: rgba(236, 232, 225, 0.09);
  --glyph: #ECE8E1;
  --glow: rgba(236, 232, 225, 0.2);
}
.c-emblem[data-rank="3"] {
  --frame: #FF4655;
  --field: rgba(255, 70, 85, 0.14);
  --glyph: #FF4655;
  --glow: rgba(255, 70, 85, 0.32);
}
.c-emblem[data-rank="4"] {
  --frame: #ECE8E1;
  --field: rgba(255, 70, 85, 0.18);
  --glyph: #FF4655;
  --glow: rgba(255, 70, 85, 0.42);
}
.c-emblem[data-rank="5"] {
  --frame: #ECE8E1;
  --field: rgba(255, 70, 85, 0.16);
  --glyph: #bd8058;
  --glow: rgba(189, 128, 88, 0.28);
}
.c-emblem[data-rank="6"] {
  --frame: #ECE8E1;
  --field: rgba(255, 70, 85, 0.16);
  --glyph: #cbd5dc;
  --prestige: #bd8058;
  --glow: rgba(203, 213, 220, 0.24);
}
.c-emblem[data-rank="7"] {
  --frame: #ECE8E1;
  --field: rgba(255, 70, 85, 0.2);
  --glyph: #cfad63;
  --glow: rgba(207, 173, 99, 0.28);
}
.c-emblem[data-rank="8"] {
  --frame: #ECE8E1;
  --field: rgba(255, 70, 85, 0.2);
  --glyph: #f0cf78;
  --prestige: #ffe7a0;
  --glow: rgba(240, 207, 120, 0.3);
}
.c-emblem[data-rank="9"] {
  --frame: #f0cf78;
  --field: rgba(255, 70, 85, 0.23);
  --glyph: #edf7f3;
  --prestige: #f0cf78;
  --glow: rgba(240, 207, 120, 0.38);
}
.c-emblem[data-rank="10"] {
  --frame: #ffe7a0;
  --field: rgba(255, 70, 85, 0.23);
  --glyph: #ffe7a0;
  --prestige: #edf7f3;
  --glow: rgba(255, 231, 160, 0.46);
}
.c-emblem .e-field {
  fill: var(--field);
}
.c-emblem .e-frame {
  fill: none;
  stroke: var(--frame);
  stroke-width: 3;
  stroke-linejoin: miter;
}
.c-emblem .e-inner {
  fill: none;
  stroke: var(--frame);
  stroke-width: 1.1;
  opacity: 0.5;
}
.c-emblem .e-orn {
  fill: none;
  stroke: var(--frame);
  stroke-width: 2.2;
  stroke-linecap: round;
}
.c-emblem .e-jewel {
  fill: var(--frame);
}
.c-emblem .e-glyph-fill {
  fill: var(--glyph);
}
.c-emblem .e-glyph-line {
  fill: none;
  stroke: var(--glyph);
  stroke-width: 2.7;
  stroke-linecap: square;
  stroke-linejoin: miter;
}
.c-emblem .e-glyph-etch {
  fill: none;
  stroke: var(--cut);
  stroke-width: 2.2;
  opacity: 0.9;
}
.c-emblem .e-prestige-line {
  fill: none;
  stroke: var(--prestige);
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.c-emblem .e-prestige-fill {
  fill: color-mix(in srgb, var(--prestige) 13%, transparent);
  stroke: var(--prestige);
  stroke-width: 1.4;
  stroke-linejoin: round;
}
.c-emblem[data-rank="1"] .e-glyph-fill {
  fill: none;
  stroke: var(--glyph);
  stroke-width: 2.2;
}
.c-emblem[data-rank="1"] .e-glyph-etch {
  stroke: var(--glyph);
  opacity: 0.55;
}
.c-emblem[data-state=unlocked] {
  filter: drop-shadow(0 0 9px var(--glow)) drop-shadow(0 6px 14px rgba(15, 25, 35, 0.55));
}
.c-emblem[data-state=locked], .c-emblem[data-state=secret] {
  --frame: #5A6672;
  --field: rgb(9.7058823529%, 13.7294117647%, 17.7529411765%);
  --glyph: #5A6672;
  --prestige: #5A6672;
  opacity: 0.72;
}
.c-emblem[data-state=locked] .e-glyph-fill, .c-emblem[data-state=secret] .e-glyph-fill {
  fill: none;
  stroke: var(--glyph);
  stroke-width: 2.4;
}
.c-emblem[data-state=locked] .e-glyph-etch, .c-emblem[data-state=secret] .e-glyph-etch {
  stroke: var(--glyph);
  opacity: 0.55;
}
.c-emblem[data-state=locked] .e-orn,
.c-emblem[data-state=locked] .e-jewel,
.c-emblem[data-state=locked] .e-prestige-line,
.c-emblem[data-state=locked] .e-prestige-fill, .c-emblem[data-state=secret] .e-orn,
.c-emblem[data-state=secret] .e-jewel,
.c-emblem[data-state=secret] .e-prestige-line,
.c-emblem[data-state=secret] .e-prestige-fill {
  opacity: 0.45;
}

.catch-trophies__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(12rem, 18rem);
  align-items: end;
  gap: 1.5rem clamp(2rem, 6vw, 5rem);
  padding: 0 0 clamp(1.25rem, 3vw, 1.75rem) 1rem;
  margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
  border-bottom: 1px solid var(--troph-line);
  border-left: 3px solid #FF4655;
}

.catch-trophies__heading {
  min-width: 0;
}

.catch-trophies__eyebrow {
  margin: 0 0 0.35rem;
  color: #FF4655;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.catch-trophies__title {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2.5rem, 5vw, 3.75rem);
  line-height: 0.9;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.catch-trophies__summary {
  display: grid;
  gap: 0.55rem;
}

.catch-trophies__count {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 0.4rem;
  margin: 0;
  color: var(--troph-muted);
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
}
.catch-trophies__count strong {
  color: var(--troph-ink);
  font-family: "League Gothic", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1;
}

.catch-trophies__progress {
  width: 100%;
  height: 0.35rem;
  overflow: hidden;
  appearance: none;
  background: var(--troph-line-soft);
  border: 0;
  border-radius: 0;
}
.catch-trophies__progress::-webkit-progress-bar {
  background: var(--troph-line-soft);
}
.catch-trophies__progress::-webkit-progress-value {
  background: #FF4655;
}
.catch-trophies__progress::-moz-progress-bar {
  background: #FF4655;
}

.catch-trophies__showcase {
  display: grid;
  grid-template-columns: minmax(9rem, 1.55fr) repeat(5, minmax(5.5rem, 1fr));
  align-items: stretch;
  gap: clamp(0.5rem, 1.4vw, 0.9rem);
  padding: clamp(1rem, 2.5vw, 1.5rem);
  margin-bottom: clamp(1.75rem, 4vw, 2.75rem);
  background: linear-gradient(180deg, rgba(255, 70, 85, 0.065), transparent 70%), var(--troph-panel);
  border: 1px solid var(--troph-line-soft);
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
}

.catch-trophies__showcase-label {
  grid-column: 1/-1;
  margin: 0 0 0.25rem;
  color: var(--troph-dim);
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.trophy-slot {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 0.45rem;
  width: 100%;
  min-width: 0;
  min-height: 9rem;
  padding: 0.8rem 0.45rem 0.7rem;
  color: inherit;
  text-align: center;
  background: rgba(15, 25, 35, 0.28);
  border: 1px solid transparent;
  border-bottom-color: var(--troph-line-soft);
  cursor: pointer;
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), transform 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.trophy-slot--hero {
  min-height: 11.5rem;
  background: rgba(255, 70, 85, 0.075);
  border-color: rgba(255, 70, 85, 0.22);
  border-bottom-color: #FF4655;
}
.trophy-slot:hover {
  background: var(--troph-panel-strong);
  border-bottom-color: #FF4655;
  transform: translateY(-2px);
}
.trophy-slot:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: 2px;
}

.trophy-slot__name {
  max-width: 100%;
  font-size: 0.69rem;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.trophy-slot__date {
  color: var(--troph-dim);
  font-size: 0.61rem;
  font-variant-numeric: tabular-nums;
}

.catch-trophies__gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2.5vw, 1.5rem);
}
.catch-trophies__gallery .trophy-cat:nth-child(n+3) {
  display: none;
}
.catch-trophies__gallery.is-expanded .trophy-cat {
  display: block;
}

.trophy-cat {
  min-width: 0;
  padding: clamp(0.9rem, 2vw, 1.25rem);
  background: var(--troph-panel);
  border: 1px solid var(--troph-line-soft);
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
}

.trophy-cat__head {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding-bottom: 0.65rem;
  margin-bottom: 0.85rem;
  border-bottom: 1px solid var(--troph-line-soft);
}

.trophy-cat__name {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.trophy-cat__rule {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, var(--troph-line), transparent);
}

.trophy-cat__count {
  color: var(--troph-dim);
  font-size: 0.7rem;
  font-variant-numeric: tabular-nums;
}

.trophy-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(5rem, 1fr));
  gap: 0.55rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
.trophy-grid > li {
  min-width: 0;
}

.trophy-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
  width: 100%;
  min-height: 7.65rem;
  padding: 0.65rem 0.35rem;
  color: inherit;
  text-align: center;
  background: transparent;
  border: 1px solid transparent;
  cursor: pointer;
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.trophy-tile:hover {
  background: var(--troph-panel-strong);
  border-color: var(--troph-line-soft);
}
.trophy-tile:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: 1px;
}

.trophy-tile__name {
  max-width: 100%;
  color: var(--troph-muted);
  font-size: 0.67rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.trophy-tile__state {
  color: var(--troph-dim);
  font-size: 0.57rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.trophy-tile.is-unlocked .trophy-tile__name {
  color: var(--troph-ink);
  font-weight: 700;
}
.trophy-tile.is-unlocked .trophy-tile__state {
  color: #FF4655;
}

.catch-trophies__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding-inline: 1.25rem;
  margin-top: 1.5rem;
  color: var(--troph-ink);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: var(--troph-panel);
  border: 1px solid var(--troph-line);
  cursor: pointer;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-trophies__more:hover, .catch-trophies__more:focus-visible {
  background: rgba(255, 70, 85, 0.12);
  border-color: #FF4655;
}
.catch-trophies__more:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: 2px;
}

body.has-trophy-panel {
  overflow: hidden;
}

.trophy-panel {
  position: fixed;
  inset: 0;
  z-index: 1050;
  display: flex;
  justify-content: flex-end;
}
.trophy-panel[hidden] {
  display: none;
}

.trophy-panel__scrim {
  position: absolute;
  inset: 0;
  background: rgba(15, 25, 35, 0.78);
  border: 0;
  animation: trophy-scrim-in 200ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
}

.trophy-panel__dialog {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.9rem;
  width: min(28rem, 100%);
  height: 100%;
  padding: clamp(1.25rem, 3vw, 2rem);
  overflow-y: auto;
  color: #ECE8E1;
  text-align: center;
  background: linear-gradient(150deg, rgba(255, 70, 85, 0.1), transparent 45%), #0F1923;
  border-left: 1px solid rgba(236, 232, 225, 0.16);
  box-shadow: -1.5rem 0 4rem rgba(15, 25, 35, 0.35);
  animation: trophy-panel-in 200ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
}
.trophy-panel__dialog::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  content: "";
  background: #FF4655;
}
.trophy-panel__dialog:focus-visible {
  outline: none;
}

.trophy-panel__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.08);
}

.trophy-panel__category {
  color: rgba(236, 232, 225, 0.52);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.trophy-panel__close {
  display: inline-grid;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  color: rgba(236, 232, 225, 0.68);
  font-size: 1rem;
  place-items: center;
  background: transparent;
  border: 1px solid rgba(236, 232, 225, 0.16);
  cursor: pointer;
}
.trophy-panel__close:hover, .trophy-panel__close:focus-visible {
  color: #ECE8E1;
  border-color: #FF4655;
}
.trophy-panel__close:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: 2px;
}

.trophy-panel__emblem {
  margin-block: clamp(0.65rem, 3vh, 1.5rem) 0.25rem;
}

.trophy-panel__title {
  margin: 0;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(1.75rem, 4vw, 2.25rem);
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1;
  text-transform: uppercase;
}

.trophy-panel__description,
.trophy-panel__condition {
  max-width: 34em;
  margin: 0;
  color: rgba(236, 232, 225, 0.7);
  font-size: 0.85rem;
  line-height: 1.55;
}

.trophy-panel__condition {
  position: relative;
  width: 100%;
  padding: 0.8rem 1rem 0.85rem 1.1rem;
  color: #ECE8E1;
  font-size: 0.9rem;
  font-weight: 700;
  text-align: left;
  background: linear-gradient(90deg, rgba(255, 70, 85, 0.14), rgba(255, 70, 85, 0.025));
  border: 1px solid rgba(255, 70, 85, 0.26);
  border-left: 3px solid #FF4655;
}
.trophy-panel__condition::before {
  display: block;
  margin-bottom: 0.3rem;
  color: #FF4655;
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-transform: uppercase;
  content: "Condition d'obtention";
}

.trophy-panel__meta {
  display: grid;
  gap: 0.65rem;
  width: 100%;
  padding-top: 1rem;
  margin: 0.4rem 0 0;
  border-top: 1px solid rgba(236, 232, 225, 0.08);
}
.trophy-panel__meta div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}
.trophy-panel__meta dt {
  color: rgba(236, 232, 225, 0.52);
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-align: left;
  text-transform: uppercase;
}
.trophy-panel__meta dd {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.trophy-panel__bar {
  width: 100%;
  height: 0.35rem;
  background: rgba(236, 232, 225, 0.1);
}
.trophy-panel__bar i {
  display: block;
  height: 100%;
  background: #FF4655;
}

.trophy-panel__private {
  margin: 0;
  color: rgba(236, 232, 225, 0.52);
  font-size: 0.66rem;
}

@keyframes trophy-scrim-in {
  from {
    opacity: 0;
  }
}
@keyframes trophy-panel-in {
  from {
    transform: translateX(100%);
  }
}
@media (max-width: 960px) {
  .catch-trophies__showcase {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .trophy-slot--hero {
    grid-row: span 2;
  }
  .catch-trophies__gallery {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .catch-trophies__head {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .catch-trophies__summary {
    width: 100%;
  }
  .catch-trophies__count {
    justify-content: flex-start;
  }
  .catch-trophies__showcase {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .trophy-slot {
    min-height: 8.75rem;
  }
  .trophy-slot--hero {
    grid-column: 1/-1;
    grid-row: auto;
  }
  .catch-trophies__more {
    width: 100%;
  }
  .trophy-panel {
    align-items: flex-end;
  }
  .trophy-panel__dialog {
    width: 100%;
    height: auto;
    max-height: 88vh;
    border-top: 1px solid rgba(236, 232, 225, 0.16);
    border-left: 0;
    animation-name: trophy-panel-mobile-in;
  }
  .trophy-panel__dialog::before {
    inset: 0 0 auto;
    width: auto;
    height: 3px;
  }
}
@keyframes trophy-panel-mobile-in {
  from {
    transform: translateY(100%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .trophy-slot,
  .trophy-panel__scrim,
  .trophy-panel__dialog {
    animation: none;
    transition: none;
  }
}
.catch-exchange {
  min-height: 70vh;
  background: linear-gradient(90deg, rgba(15, 25, 35, 0.035) 1px, transparent 1px), linear-gradient(rgba(15, 25, 35, 0.035) 1px, transparent 1px), #ECE8E1;
  background-size: 32px 32px;
}

.catch-hero--exchange {
  --catch-hero-title: #ECE8E1;
  --catch-hero-muted: rgba(236, 232, 225, 0.72);
  background: radial-gradient(circle at 80% 15%, rgba(34, 184, 214, 0.2), transparent 30rem), #0F1923;
}

.exchange-hero-flow {
  display: grid;
  grid-template-columns: auto 2rem auto 2rem auto;
  align-items: center;
  gap: 0.75rem;
  color: rgba(236, 232, 225, 0.75);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.exchange-hero-flow span {
  display: grid;
  gap: 0.2rem;
}
.exchange-hero-flow strong {
  color: #22b8d6;
  font-family: "League Gothic", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1;
}
.exchange-hero-flow i {
  display: block;
  height: 1px;
  background: rgba(236, 232, 225, 0.25);
}

.exchange-layout {
  padding-top: clamp(2rem, 5vw, 4.5rem);
  padding-bottom: clamp(4rem, 8vw, 7rem);
}

.exchange-service-message {
  margin-bottom: 1rem;
  padding: 1rem 1.25rem;
  border: 1px solid rgba(15, 25, 35, 0.25);
  background: #fff;
  color: #0F1923;
  font-weight: 600;
}
.exchange-service-message.is-loading {
  border-color: rgba(34, 184, 214, 0.55);
}
.exchange-service-message.is-success {
  border-color: rgba(47, 158, 115, 0.7);
  background: rgb(95.1058823529%, 97.7176470588%, 96.7058823529%);
  color: rgb(12.0118603539%, 40.3802965088%, 29.3907221425%);
}
.exchange-service-message.is-error {
  border-color: rgba(255, 70, 85, 0.65);
  background: rgb(100%, 95.6470588235%, 96%);
  color: rgb(79.4509803922%, 0%, 6.4419713831%);
}

.exchange-tabs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 1.5rem;
  border: 1px solid rgba(15, 25, 35, 0.25);
  background: #0F1923;
}

.exchange-tabs__button {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 5.25rem;
  gap: 0.9rem;
  padding: 0.85rem 1.1rem;
  border: 0;
  border-right: 1px solid rgba(236, 232, 225, 0.16);
  background: transparent;
  color: rgba(236, 232, 225, 0.64);
  text-align: left;
  transition: background-color 200ms cubic-bezier(0.2, 0.6, 0.2, 1), color 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.exchange-tabs__button:last-child {
  border-right: 0;
}
.exchange-tabs__button::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  background: #22b8d6;
  content: "";
  opacity: 0;
  transform: scaleX(0.3);
  transition: opacity 150ms ease-out, transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.exchange-tabs__button:hover:not(:disabled), .exchange-tabs__button.is-active {
  background: rgba(236, 232, 225, 0.08);
  color: #ECE8E1;
}
.exchange-tabs__button.is-active::after {
  opacity: 1;
  transform: scaleX(1);
}
.exchange-tabs__button:focus-visible {
  z-index: 1;
  outline: 3px solid #22b8d6;
  outline-offset: -3px;
}
.exchange-tabs__button:disabled {
  cursor: wait;
  opacity: 0.48;
}
.exchange-tabs__button > span:not(.exchange-tabs__index):not(.exchange-tabs__badge) {
  display: grid;
  gap: 0.1rem;
}
.exchange-tabs__button strong {
  font-size: 1rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.exchange-tabs__button small, .exchange-tabs__button .small {
  color: inherit;
  font-size: 0.75rem;
  font-weight: 500;
}

.exchange-tabs__index {
  color: #22b8d6;
  font-family: "League Gothic", sans-serif;
  font-size: 2rem;
  line-height: 1;
}

.exchange-tabs__badge {
  display: grid;
  min-width: 1.75rem;
  min-height: 1.75rem;
  margin-left: auto;
  place-items: center;
  background: #FF4655;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 800;
}

.exchange-panel[hidden] {
  display: none;
}

.exchange-panel--compose {
  display: grid;
  gap: 1.5rem;
}

.exchange-counter-context {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 1rem 1.25rem;
  border-left: 4px solid #22b8d6;
  background: #0F1923;
  color: #ECE8E1;
  box-shadow: 0 1rem 2.5rem rgba(15, 25, 35, 0.16);
}
.exchange-counter-context[hidden] {
  display: none;
}
.exchange-counter-context strong {
  display: block;
  margin-top: 0.2rem;
  font-size: 1rem;
}
.exchange-counter-context p {
  margin: 0.2rem 0 0;
  color: rgba(236, 232, 225, 0.74);
  font-size: 0.82rem;
}
.exchange-counter-context .exchange-button {
  flex: 0 0 auto;
  border-color: rgba(236, 232, 225, 0.72);
  color: #ECE8E1;
}
.exchange-counter-context .exchange-button:hover:not(:disabled) {
  border-color: #ECE8E1;
  background: #ECE8E1;
  color: #0F1923;
}
.exchange-counter-context:focus-visible {
  outline: 3px solid rgba(34, 184, 214, 0.55);
  outline-offset: 3px;
}

.exchange-step {
  position: relative;
  padding: clamp(1.25rem, 3vw, 2.25rem);
  border: 1px solid rgba(15, 25, 35, 0.16);
  background: rgba(255, 255, 255, 0.93);
  box-shadow: 0 1.25rem 3rem rgba(15, 25, 35, 0.08);
}
.exchange-step[hidden] {
  display: none;
}

.exchange-step__heading {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  margin-bottom: 1.75rem;
}
.exchange-step__heading h2, .exchange-step__heading .h2 {
  margin: 0.2rem 0 0.35rem;
  font-size: clamp(2rem, 4vw, 3.35rem);
  line-height: 0.95;
}
.exchange-step__heading p {
  max-width: 45rem;
  margin: 0;
  color: #5A6672;
}

.exchange-step__number {
  color: rgba(15, 25, 35, 0.14);
  font-family: "League Gothic", sans-serif;
  font-size: clamp(3rem, 7vw, 5.5rem);
  line-height: 0.8;
}

.exchange-draft-summary {
  margin-bottom: 1.25rem;
  border: 1px solid rgba(15, 25, 35, 0.2);
  border-top: 3px solid #22b8d6;
  background: #ECE8E1;
}

.exchange-draft-summary__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.85rem 1rem;
  background: #0F1923;
  color: #ECE8E1;
}
.exchange-draft-summary__heading h3, .exchange-draft-summary__heading .h3 {
  margin: 0.15rem 0 0;
  font-size: clamp(1.25rem, 2.4vw, 1.75rem);
}
.exchange-draft-summary__heading p {
  max-width: 25rem;
  margin: 0;
  color: rgba(236, 232, 225, 0.68);
  font-size: 0.76rem;
  text-align: right;
}

.exchange-draft-summary__trade {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2.75rem minmax(0, 1fr);
  align-items: stretch;
}

.exchange-draft-summary__side {
  min-width: 0;
  padding: 1rem;
}
.exchange-draft-summary__side > strong {
  display: block;
  margin: 0.2rem 0 0.75rem;
  color: #0F1923;
  font-size: 0.95rem;
}
.exchange-draft-summary__side > ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.exchange-draft-summary__side--give {
  border-left: 3px solid rgba(255, 70, 85, 0.8);
}

.exchange-draft-summary__side--receive {
  border-right: 3px solid rgba(34, 184, 214, 0.8);
}

.exchange-draft-summary__label {
  color: #5A6672;
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.exchange-draft-summary__item {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  padding: 0.4rem;
  border: 1px solid rgba(15, 25, 35, 0.12);
  background: #fff;
}

.exchange-draft-summary__visual {
  width: 2rem;
  height: 2.75rem;
  overflow: hidden;
  background: #0F1923;
}
.exchange-draft-summary__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.exchange-draft-summary__copy {
  display: grid;
  min-width: 0;
}
.exchange-draft-summary__copy strong,
.exchange-draft-summary__copy small,
.exchange-draft-summary__copy .small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.exchange-draft-summary__copy strong {
  color: #0F1923;
  font-size: 0.72rem;
}
.exchange-draft-summary__copy small, .exchange-draft-summary__copy .small {
  color: #5A6672;
  font-size: 0.62rem;
}

.exchange-draft-summary__more,
.exchange-draft-summary__radianite,
.exchange-draft-summary__empty {
  display: flex;
  align-items: center;
  min-height: 2.75rem;
  padding: 0.5rem 0.65rem;
  border: 1px dashed rgba(15, 25, 35, 0.2);
  color: #5A6672;
  font-size: 0.7rem;
  font-weight: 700;
}

.exchange-draft-summary__radianite {
  border-style: solid;
  background: #0F1923;
  color: #ECE8E1;
}

.exchange-draft-summary__bridge {
  position: relative;
  align-self: center;
  justify-self: center;
  width: 1.75rem;
  height: 1.5rem;
}
.exchange-draft-summary__bridge::before, .exchange-draft-summary__bridge::after {
  position: absolute;
  left: 0.15rem;
  width: 1.45rem;
  height: 0.45rem;
  border-top: 1px solid #22b8d6;
  content: "";
}
.exchange-draft-summary__bridge::before {
  top: 0.25rem;
  border-right: 1px solid #22b8d6;
  transform: skewX(35deg);
}
.exchange-draft-summary__bridge::after {
  bottom: 0.15rem;
  border-left: 1px solid #22b8d6;
  transform: skewX(35deg);
}

.exchange-recipient {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.25rem;
}

.exchange-field label {
  display: block;
  margin-bottom: 0.5rem;
  color: #0F1923;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.exchange-field input {
  width: 100%;
  min-height: 3rem;
  border: 1px solid rgba(15, 25, 35, 0.32);
  background: #fff;
  color: #0F1923;
  font-size: 1rem;
  padding: 0.7rem 0.85rem;
}
.exchange-field input:focus {
  border-color: #22b8d6;
  box-shadow: 0 0 0 3px rgba(34, 184, 214, 0.18);
  outline: 0;
}
.exchange-field input[aria-invalid=true] {
  border-color: #FF4655;
  box-shadow: 0 0 0 3px rgba(255, 70, 85, 0.14);
}
.exchange-field input:disabled {
  cursor: not-allowed;
  opacity: 0.52;
}

.exchange-field__help,
.exchange-field__status {
  margin: 0.55rem 0 0;
  color: #5A6672;
  font-size: 0.86rem;
}

.exchange-field__status {
  min-height: 1.35rem;
  font-weight: 600;
}
.exchange-field__status.is-error {
  color: rgb(91.4509803922%, 0%, 7.4149443561%);
}
.exchange-field__status.is-success {
  color: rgb(13.8460066954%, 46.5461501674%, 33.8785270206%);
}
.exchange-field__status.is-loading::before {
  display: inline-block;
  width: 0.75rem;
  height: 0.75rem;
  margin-right: 0.45rem;
  border: 2px solid rgba(34, 184, 214, 0.28);
  border-top-color: #22b8d6;
  border-radius: 50%;
  content: "";
  vertical-align: -0.05rem;
  animation: exchange-spin 0.8s linear infinite;
}

.exchange-recipient__control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.75rem;
}

.exchange-recipient-autocomplete {
  position: relative;
  z-index: 20;
  min-width: 0;
}
.exchange-recipient-autocomplete::before {
  position: absolute;
  top: 1.5rem;
  left: 1rem;
  z-index: 1;
  width: 0.7rem;
  height: 0.7rem;
  border: 2px solid #FF4655;
  content: "";
  pointer-events: none;
  transform: translateY(-50%) rotate(45deg);
}
.exchange-recipient-autocomplete > input {
  padding-left: 2.65rem;
  background: linear-gradient(135deg, rgba(255, 70, 85, 0.07), transparent 7rem), #fff;
  font-weight: 700;
  letter-spacing: 0.015em;
}

.exchange-recipient-suggestions {
  position: absolute;
  top: calc(100% + 0.55rem);
  right: 0;
  left: 0;
  z-index: 40;
  display: grid;
  gap: 0.65rem;
  padding: 0.8rem;
  border: 1px solid rgba(236, 232, 225, 0.2);
  background: linear-gradient(135deg, rgba(255, 70, 85, 0.14), transparent 35%), linear-gradient(90deg, rgba(236, 232, 225, 0.025) 1px, transparent 1px), #0F1923;
  background-size: auto, 1.5rem 1.5rem, auto;
  box-shadow: 0 1.5rem 3.5rem rgba(15, 25, 35, 0.36);
  clip-path: polygon(0 0, calc(100% - 1.1rem) 0, 100% 1.1rem, 100% 100%, 1.1rem 100%, 0 calc(100% - 1.1rem));
}
.exchange-recipient-suggestions[hidden] {
  display: none;
}
.exchange-recipient-suggestions::before {
  position: absolute;
  top: 0;
  left: 0.8rem;
  width: 5rem;
  height: 3px;
  background: #FF4655;
  content: "";
}

.exchange-recipient-suggestions__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.25rem 0.35rem 0.15rem;
  color: #ECE8E1;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
.exchange-recipient-suggestions__heading span::before {
  display: inline-block;
  width: 0.4rem;
  height: 0.4rem;
  margin-right: 0.5rem;
  background: #FF4655;
  content: "";
  transform: rotate(45deg);
  vertical-align: 0.05rem;
}
.exchange-recipient-suggestions__heading small, .exchange-recipient-suggestions__heading .small {
  color: rgba(236, 232, 225, 0.68);
  font-size: inherit;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.exchange-recipient-suggestions__list {
  display: grid;
  gap: 0.25rem;
  max-height: 19rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-color: rgba(236, 232, 225, 0.4) transparent;
  scrollbar-width: thin;
}
.exchange-recipient-suggestions__list[hidden] {
  display: none;
}

.exchange-recipient-suggestion {
  position: relative;
  display: grid;
  grid-template-columns: 2.4rem minmax(0, 1fr) 1rem;
  align-items: center;
  min-height: 3.6rem;
  gap: 0.75rem;
  width: 100%;
  padding: 0.55rem 0.75rem;
  border: 0;
  border-left: 3px solid transparent;
  background: rgba(236, 232, 225, 0.06);
  color: #ECE8E1;
  cursor: pointer;
  text-align: left;
  touch-action: manipulation;
  transition: background-color 150ms ease-out, border-color 150ms ease-out, color 150ms ease-out, transform 150ms ease-out;
}
.exchange-recipient-suggestion::after {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 1rem;
  height: 1rem;
  border-right: 1px solid rgba(236, 232, 225, 0.2);
  border-bottom: 1px solid rgba(236, 232, 225, 0.2);
  content: "";
}
.exchange-recipient-suggestion:hover:not(:disabled), .exchange-recipient-suggestion.is-active {
  border-left-color: #FF4655;
  background: #ECE8E1;
  color: #0F1923;
  transform: translateX(0.2rem);
}
.exchange-recipient-suggestion:hover:not(:disabled) .exchange-recipient-suggestion__index, .exchange-recipient-suggestion.is-active .exchange-recipient-suggestion__index {
  color: #FF4655;
}
.exchange-recipient-suggestion:hover:not(:disabled) .exchange-recipient-suggestion__identity small, .exchange-recipient-suggestion:hover:not(:disabled) .exchange-recipient-suggestion__identity .small, .exchange-recipient-suggestion.is-active .exchange-recipient-suggestion__identity small, .exchange-recipient-suggestion.is-active .exchange-recipient-suggestion__identity .small {
  color: rgba(15, 25, 35, 0.72);
}
.exchange-recipient-suggestion:hover:not(:disabled) .exchange-recipient-suggestion__signal, .exchange-recipient-suggestion.is-active .exchange-recipient-suggestion__signal {
  border-color: #FF4655;
}
.exchange-recipient-suggestion:disabled {
  cursor: wait;
  opacity: 0.48;
}

.exchange-recipient-suggestion__index {
  color: #22b8d6;
  font-family: "League Gothic", sans-serif;
  font-size: 1.55rem;
  line-height: 1;
  transition: color 150ms ease-out;
}

.exchange-recipient-suggestion__identity {
  display: grid;
  min-width: 0;
  gap: 0.08rem;
}
.exchange-recipient-suggestion__identity strong,
.exchange-recipient-suggestion__identity small,
.exchange-recipient-suggestion__identity .small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.exchange-recipient-suggestion__identity strong {
  font-size: 0.92rem;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}
.exchange-recipient-suggestion__identity small, .exchange-recipient-suggestion__identity .small {
  color: rgba(236, 232, 225, 0.68);
  font-size: 0.76rem;
  font-weight: 600;
  transition: color 150ms ease-out;
}

.exchange-recipient-suggestion__signal {
  justify-self: end;
  width: 0.65rem;
  height: 0.65rem;
  border-top: 2px solid #22b8d6;
  border-right: 2px solid #22b8d6;
  transform: rotate(45deg);
  transition: border-color 150ms ease-out;
}

.exchange-recipient-suggestions__message {
  min-height: 3.6rem;
  margin: 0;
  padding: 1rem;
  border-left: 3px solid #22b8d6;
  background: rgba(236, 232, 225, 0.06);
  color: rgba(236, 232, 225, 0.84);
  font-size: 0.86rem;
  font-weight: 600;
  line-height: 1.5;
}
.exchange-recipient-suggestions__message[hidden] {
  display: none;
}
.exchange-recipient-suggestions__message.is-error {
  border-left-color: #FF4655;
}
.is-loading .exchange-recipient-suggestions__message::before {
  display: inline-block;
  width: 0.75rem;
  height: 0.75rem;
  margin-right: 0.55rem;
  border: 2px solid rgba(236, 232, 225, 0.25);
  border-top-color: #22b8d6;
  border-radius: 50%;
  content: "";
  animation: exchange-spin 0.8s linear infinite;
  vertical-align: -0.05rem;
}

.exchange-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.875rem;
  padding: 0.7rem 1.1rem;
  border: 1px solid #0F1923;
  background: transparent;
  color: #0F1923;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 150ms ease-out, border-color 150ms ease-out, color 150ms ease-out, opacity 150ms ease-out;
}
.exchange-button:focus-visible {
  outline: 3px solid rgba(34, 184, 214, 0.48);
  outline-offset: 2px;
}
.exchange-button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.exchange-button--primary {
  border-color: #FF4655;
  background: #FF4655;
  color: #fff;
}
.exchange-button--primary:hover:not(:disabled) {
  border-color: rgb(100%, 7.4509803922%, 14.954954955%);
  background: rgb(100%, 7.4509803922%, 14.954954955%);
  color: #fff;
}

.exchange-button--secondary {
  border-color: #22b8d6;
  background: rgba(34, 184, 214, 0.1);
  color: rgb(7.3010752688%, 39.5117014548%, 45.953826692%);
}
.exchange-button--secondary:hover:not(:disabled) {
  border-color: rgb(10.5913978495%, 57.3181530677%, 66.6635041113%);
  background: #22b8d6;
  color: #0F1923;
}

.exchange-button--ghost:hover:not(:disabled) {
  background: #0F1923;
  color: #fff;
}

.exchange-button--danger {
  border-color: #FF4655;
  background: transparent;
  color: rgb(97.4509803922%, 0%, 7.9014308426%);
}
.exchange-button--danger:hover:not(:disabled) {
  background: #FF4655;
  color: #fff;
}

.exchange-favorites {
  padding: 1rem;
  border: 1px solid rgba(15, 25, 35, 0.2);
  background: rgba(15, 25, 35, 0.035);
}

.exchange-favorites__heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.75rem;
}
.exchange-favorites__heading h3, .exchange-favorites__heading .h3 {
  margin: 0;
  font-size: 1rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.exchange-favorites__heading span {
  color: #5A6672;
  font-size: 0.75rem;
}

.exchange-favorites__list {
  display: grid;
  grid-template-columns: repeat(var(--exchange-favorites-columns, 1), minmax(0, 1fr));
  gap: 0.5rem;
}

.exchange-favorite {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  border: 1px solid rgba(15, 25, 35, 0.14);
  background: #fff;
}

.exchange-favorite__choose,
.exchange-favorite__remove {
  min-height: 2.75rem;
  border: 0;
  background: transparent;
}
.exchange-favorite__choose:focus-visible,
.exchange-favorite__remove:focus-visible {
  outline: 3px solid rgba(34, 184, 214, 0.5);
  outline-offset: -3px;
}

.exchange-favorite__choose {
  display: grid;
  gap: 0.05rem;
  min-width: 0;
  padding: 0.55rem 0.75rem;
  color: #0F1923;
  text-align: left;
}
.exchange-favorite__choose strong,
.exchange-favorite__choose span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.exchange-favorite__choose span {
  color: #5A6672;
  font-size: 0.75rem;
}
.exchange-favorite__choose:hover:not(:disabled) {
  background: rgba(34, 184, 214, 0.09);
}

.exchange-favorites__more {
  display: grid;
  align-content: center;
  justify-items: center;
  min-height: 2.75rem;
  padding: 0.45rem 0.75rem;
  border: 1px solid rgba(34, 184, 214, 0.5);
  background: rgba(34, 184, 214, 0.08);
  color: #0F1923;
  text-align: center;
  transition: background-color 150ms ease-out, border-color 150ms ease-out;
}
.exchange-favorites__more strong {
  color: rgb(6.752688172%, 36.5439595193%, 42.5022137887%);
  font-size: 1rem;
  line-height: 1;
}
.exchange-favorites__more span {
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.exchange-favorites__more:hover:not(:disabled) {
  border-color: #22b8d6;
  background: rgba(34, 184, 214, 0.16);
}
.exchange-favorites__more:focus-visible {
  outline: 3px solid rgba(34, 184, 214, 0.5);
  outline-offset: 2px;
}
.exchange-favorites__more:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.exchange-favorite__remove {
  padding: 0.5rem 0.75rem;
  border-left: 1px solid rgba(15, 25, 35, 0.12);
  color: rgb(100%, 3.4509803922%, 11.2792792793%);
  font-size: 0.72rem;
  font-weight: 700;
}
.exchange-favorite__remove:hover:not(:disabled) {
  background: rgba(255, 70, 85, 0.09);
}

.exchange-favorites__empty {
  margin: 0;
  color: #5A6672;
  font-size: 0.86rem;
}
.exchange-favorites__empty[hidden] {
  display: none;
}

.exchange-favorites-dialog {
  width: min(64rem, 100% - 2rem);
  max-width: none;
  max-height: min(80vh, 44rem);
  padding: 0;
  border: 1px solid rgba(15, 25, 35, 0.28);
  background: #fff;
  color: #0F1923;
  box-shadow: 0 1.5rem 4rem rgba(15, 25, 35, 0.28);
}
.exchange-favorites-dialog::backdrop {
  background: rgba(15, 25, 35, 0.62);
}

.exchange-favorites-dialog__surface {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  max-height: min(80vh, 44rem);
}

.exchange-favorites-dialog__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid rgba(15, 25, 35, 0.15);
}
.exchange-favorites-dialog__heading h3, .exchange-favorites-dialog__heading .h3 {
  margin: 0.15rem 0 0;
  font-size: 1.25rem;
  text-transform: uppercase;
}
.exchange-favorites-dialog__heading button {
  min-height: 2.75rem;
  padding: 0.55rem 0.85rem;
  border: 1px solid rgba(15, 25, 35, 0.28);
  background: transparent;
  color: #0F1923;
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
}
.exchange-favorites-dialog__heading button:hover, .exchange-favorites-dialog__heading button:focus-visible {
  border-color: #0F1923;
  background: rgba(15, 25, 35, 0.06);
}
.exchange-favorites-dialog__heading button:focus-visible {
  outline: 3px solid rgba(34, 184, 214, 0.48);
  outline-offset: 2px;
}

.exchange-favorites-dialog__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
  align-content: start;
  gap: 0.65rem;
  min-height: 0;
  padding: 1rem 1.25rem 1.25rem;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.exchange-favorites-dialog__empty {
  margin: 0;
  color: #5A6672;
}

.exchange-partner {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  margin-top: 1rem;
  padding: 0.8rem 1rem;
  border-left: 4px solid #2f9e73;
  background: rgb(94.2901960784%, 97.337254902%, 96.1568627451%);
}
.exchange-partner[hidden] {
  display: none;
}
.exchange-partner > div {
  display: grid;
}
.exchange-partner small, .exchange-partner .small {
  color: #5A6672;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.exchange-partner a,
.exchange-partner button {
  min-height: 2.75rem;
  padding: 0.65rem 0.8rem;
  border: 0;
  background: transparent;
  color: #0F1923;
  font-size: 0.78rem;
  font-weight: 700;
  text-decoration: underline;
}
.exchange-partner a {
  margin-left: auto;
}

.exchange-partner__signal {
  width: 0.75rem;
  height: 0.75rem;
  border: 3px solid rgba(47, 158, 115, 0.25);
  border-radius: 50%;
  background: #2f9e73;
  box-sizing: content-box;
}

.exchange-step--assets[aria-disabled=true] .exchange-builder {
  opacity: 0.72;
}

.exchange-builder {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 3.5rem minmax(0, 1fr);
  align-items: stretch;
  gap: 0.75rem;
}

.exchange-side {
  min-width: 0;
  padding: 1.15rem;
  border: 1px solid rgba(15, 25, 35, 0.2);
  background: rgba(236, 232, 225, 0.58);
}

.exchange-side--theirs {
  border-top-color: rgba(34, 184, 214, 0.75);
}

.exchange-side--mine {
  border-top-color: rgba(255, 70, 85, 0.75);
}

.exchange-side__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.exchange-side__header h3, .exchange-side__header .h3 {
  margin: 0.15rem 0 0;
  font-size: 1.75rem;
}

.exchange-side__selection {
  padding: 0.35rem 0.5rem;
  border: 1px solid rgba(15, 25, 35, 0.18);
  background: #fff;
  font-size: 0.72rem;
  font-weight: 800;
  white-space: nowrap;
}

.exchange-field--search {
  margin-bottom: 0.75rem;
}
.exchange-field--search label {
  font-size: 0.7rem;
}

.exchange-card-filters {
  min-width: 0;
  margin: 0 0 0.85rem;
  padding: 0.75rem;
  border: 1px solid rgba(15, 25, 35, 0.14);
  background: rgba(255, 255, 255, 0.48);
}
.exchange-card-filters legend {
  float: none;
  width: auto;
  margin: 0 0 0.55rem;
  padding: 0;
  color: #5A6672;
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.exchange-card-filters:disabled {
  opacity: 0.58;
}

.exchange-card-filters__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.55rem;
}
.exchange-card-filters__grid label {
  display: grid;
  min-width: 0;
  gap: 0.3rem;
  margin: 0;
}
.exchange-card-filters__grid label > span {
  color: #0F1923;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}
.exchange-card-filters__grid select {
  width: 100%;
  min-width: 0;
  min-height: 2.5rem;
  padding: 0.45rem 1.75rem 0.45rem 0.55rem;
  border: 1px solid rgba(15, 25, 35, 0.26);
  border-radius: 0;
  background-color: #fff;
  color: #0F1923;
  font-size: 0.76rem;
  font-weight: 700;
}
.exchange-card-filters__grid select:focus {
  border-color: #22b8d6;
  box-shadow: 0 0 0 3px rgba(34, 184, 214, 0.16);
  outline: 0;
}
.exchange-card-filters__grid select:disabled {
  cursor: not-allowed;
}

.exchange-card-filters__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-top: 0.65rem;
}
.exchange-card-filters__footer p {
  margin: 0;
  color: #5A6672;
  font-size: 0.7rem;
  font-weight: 700;
}
.exchange-card-filters__footer button {
  padding: 0.2rem 0;
  border: 0;
  border-bottom: 1px solid currentColor;
  background: transparent;
  color: #0F1923;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.exchange-card-filters__footer button:hover:not(:disabled), .exchange-card-filters__footer button:focus-visible {
  color: #FF4655;
}
.exchange-card-filters__footer button:focus-visible {
  outline: 2px solid #22b8d6;
  outline-offset: 3px;
}
.exchange-card-filters__footer button:disabled {
  cursor: not-allowed;
  opacity: 0.38;
}

.exchange-inventory {
  display: grid;
  max-height: 36rem;
  gap: 0.65rem;
  padding-right: 0.3rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-color: rgba(15, 25, 35, 0.38) transparent;
}

.exchange-inventory-empty {
  min-height: 7rem;
  margin: 0;
  padding: 1.5rem;
  border: 1px dashed rgba(15, 25, 35, 0.28);
  color: #5A6672;
  text-align: center;
}
.exchange-inventory-empty[hidden] {
  display: none;
}

.exchange-card-choice {
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.75rem;
  min-height: 5rem;
  padding: 0.55rem;
  border: 1px solid rgba(15, 25, 35, 0.14);
  background: #fff;
  transition: border-color 150ms ease-out, background-color 150ms ease-out, box-shadow 150ms ease-out;
}
.exchange-card-choice.is-selected {
  border-color: #22b8d6;
  background: rgb(94.8%, 98.3294117647%, 99.0352941176%);
  box-shadow: inset 3px 0 0 #22b8d6;
}
.exchange-card-choice[hidden] {
  display: none;
}

.exchange-card-choice__visual {
  display: grid;
  width: 3.5rem;
  height: 4.25rem;
  place-items: center;
  overflow: hidden;
  background: #0F1923;
  color: #ECE8E1;
  font-family: "League Gothic", sans-serif;
  font-size: 2rem;
}
.exchange-card-choice__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.exchange-card-choice__copy {
  display: grid;
  min-width: 0;
  gap: 0.12rem;
}
.exchange-card-choice__copy strong,
.exchange-card-choice__copy span,
.exchange-card-choice__copy small,
.exchange-card-choice__copy .small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.exchange-card-choice__copy strong {
  color: #0F1923;
  font-size: 0.92rem;
}
.exchange-card-choice__copy span,
.exchange-card-choice__copy small,
.exchange-card-choice__copy .small {
  color: #5A6672;
  font-size: 0.72rem;
}

.exchange-card-choice__quantity {
  display: grid;
  gap: 0.25rem;
}
.exchange-card-choice__quantity span {
  color: #5A6672;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.exchange-card-choice__quantity select {
  min-width: 3.25rem;
  min-height: 2.75rem;
  border: 1px solid rgba(15, 25, 35, 0.28);
  background: #fff;
  color: #0F1923;
  font-weight: 700;
  text-align: center;
}
.exchange-card-choice__quantity select:focus-visible {
  border-color: #22b8d6;
  outline: 3px solid rgba(34, 184, 214, 0.22);
}

.exchange-radianite {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 9rem;
  align-items: end;
  gap: 0.75rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(15, 25, 35, 0.14);
}
.exchange-radianite > div:first-child {
  display: grid;
  gap: 0.2rem;
}
.exchange-radianite label {
  color: #0F1923;
  font-size: 0.8rem;
  font-weight: 800;
}
.exchange-radianite span {
  color: #5A6672;
  font-size: 0.72rem;
}

.exchange-radianite__control {
  position: relative;
}
.exchange-radianite__control .catch-radianite__icon {
  position: absolute;
  top: 50%;
  left: 0.7rem;
  transform: translateY(-50%);
}
.exchange-radianite__control input {
  width: 100%;
  min-height: 3rem;
  padding: 0.55rem 0.55rem 0.55rem 2.25rem;
  border: 1px solid rgba(15, 25, 35, 0.3);
  background: #fff;
  color: #0F1923;
  font-variant-numeric: tabular-nums;
  font-weight: 800;
}
.exchange-radianite__control input:focus {
  border-color: #22b8d6;
  box-shadow: 0 0 0 3px rgba(34, 184, 214, 0.18);
  outline: 0;
}

.exchange-builder__bridge {
  display: grid;
  grid-template-rows: 1fr auto 1fr;
  align-items: center;
  justify-items: center;
  gap: 0.5rem;
}
.exchange-builder__bridge span {
  width: 1px;
  height: 100%;
  background: rgba(15, 25, 35, 0.18);
}
.exchange-builder__bridge svg {
  width: 2.25rem;
  height: 2.25rem;
  padding: 0.4rem;
  border: 1px solid rgba(15, 25, 35, 0.24);
  background: #fff;
  color: #22b8d6;
  fill: none;
  stroke: currentColor;
  stroke-linecap: square;
  stroke-linejoin: miter;
  stroke-width: 1.8;
}

.exchange-review {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 3rem minmax(0, 1fr);
  align-items: center;
  border: 1px solid rgba(15, 25, 35, 0.18);
  background: #0F1923;
  color: #ECE8E1;
}

.exchange-review__side {
  display: grid;
  gap: 0.25rem;
  padding: 1rem 1.25rem;
}
.exchange-review__side span {
  color: rgba(236, 232, 225, 0.6);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.exchange-review__side strong {
  font-size: 1rem;
}

.exchange-review__arrow {
  position: relative;
  display: block;
  width: 2rem;
  height: 1.5rem;
}
.exchange-review__arrow::before, .exchange-review__arrow::after {
  position: absolute;
  left: 0.2rem;
  width: 1.6rem;
  height: 0.45rem;
  border-top: 1px solid #22b8d6;
  content: "";
}
.exchange-review__arrow::before {
  top: 0.25rem;
  border-right: 1px solid #22b8d6;
  transform: skewX(35deg);
}
.exchange-review__arrow::after {
  bottom: 0.15rem;
  border-left: 1px solid #22b8d6;
  transform: skewX(35deg);
}

.exchange-availability-note {
  margin-top: 1rem;
  padding: 0.9rem 1rem;
  border-left: 3px solid #b97912;
  background: rgb(98.3529411765%, 96.8470588235%, 94.4235294118%);
}
.exchange-availability-note strong {
  display: block;
  margin-bottom: 0.2rem;
  color: rgb(39.7411378344%, 25.9928523133%, 3.8667053028%);
}
.exchange-availability-note p {
  margin: 0;
  color: #5A6672;
  font-size: 0.86rem;
}

.exchange-compose-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.25rem;
}

.exchange-confirmation {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-top: 1rem;
  padding: 1.15rem;
  border: 1px solid rgba(255, 70, 85, 0.55);
  background: rgb(100%, 96.3725490196%, 96.6666666667%);
}
.exchange-confirmation[hidden] {
  display: none;
}
.exchange-confirmation h3, .exchange-confirmation .h3 {
  margin: 0.15rem 0 0.3rem;
  font-size: 1.5rem;
}
.exchange-confirmation p {
  max-width: 48rem;
  margin: 0;
  color: #5A6672;
}

.exchange-confirmation__actions {
  display: flex;
  flex: 0 0 auto;
  gap: 0.65rem;
}

.exchange-submit-status {
  min-height: 1.5rem;
  margin: 0.65rem 0 0;
  font-weight: 600;
}
.exchange-submit-status.is-error {
  color: rgb(91.4509803922%, 0%, 7.4149443561%);
}
.exchange-submit-status.is-success {
  color: rgb(13.8460066954%, 46.5461501674%, 33.8785270206%);
}
.exchange-submit-status.is-loading {
  color: #5A6672;
}

.exchange-list-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 1.25rem;
  padding: 1.5rem;
  background: #0F1923;
  color: #ECE8E1;
}
.exchange-list-heading h2, .exchange-list-heading .h2 {
  margin: 0.2rem 0 0;
  font-size: clamp(2.25rem, 5vw, 4rem);
}
.exchange-list-heading p {
  max-width: 32rem;
  margin: 0;
  color: rgba(236, 232, 225, 0.66);
}

.exchange-history-toolbar {
  display: grid;
  grid-template-columns: minmax(14rem, 1fr) auto;
  align-items: end;
  gap: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  padding: 1rem;
  border: 1px solid rgba(15, 25, 35, 0.16);
  background: rgba(255, 255, 255, 0.72);
}

.exchange-history-toolbar__search {
  display: grid;
  gap: 0.4rem;
}
.exchange-history-toolbar__search label {
  color: #0F1923;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.exchange-history-toolbar__search input {
  width: 100%;
  min-height: 2.75rem;
  padding: 0.65rem 0.8rem;
  border: 1px solid rgba(15, 25, 35, 0.24);
  background: #fff;
  color: #0F1923;
}
.exchange-history-toolbar__search input:focus {
  border-color: #22b8d6;
  outline: 2px solid rgba(34, 184, 214, 0.2);
  outline-offset: 1px;
}

.exchange-history-toolbar__filters {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.exchange-history-toolbar__filters legend {
  margin-bottom: 0.4rem;
  color: #0F1923;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.exchange-history-toolbar__filters > div {
  display: flex;
  padding: 0.2rem;
  background: rgba(15, 25, 35, 0.08);
}
.exchange-history-toolbar__filters label {
  position: relative;
  margin: 0;
}
.exchange-history-toolbar__filters input {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  margin: 0;
  cursor: pointer;
  opacity: 0;
}
.exchange-history-toolbar__filters input:checked + span {
  background: #0F1923;
  color: #ECE8E1;
}
.exchange-history-toolbar__filters input:focus-visible + span {
  outline: 2px solid #22b8d6;
  outline-offset: 2px;
}
.exchange-history-toolbar__filters span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.55rem 0.85rem;
  color: #5A6672;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.035em;
  text-transform: uppercase;
  transition: background-color 160ms ease, color 160ms ease;
}

.exchange-history-toolbar__status {
  grid-column: 1/-1;
  min-height: 1rem;
  margin: 0;
  color: #5A6672;
  font-size: 0.72rem;
  font-weight: 700;
}

.exchange-list {
  display: grid;
  gap: 0.8rem;
}

.exchange-player-group {
  border: 1px solid rgba(15, 25, 35, 0.16);
  background: #fff;
  box-shadow: 0 0.75rem 2rem rgba(15, 25, 35, 0.07);
}
.exchange-player-group[open] {
  border-color: rgba(15, 25, 35, 0.28);
}
.exchange-player-group[open] > .exchange-player-group__summary {
  background: #0F1923;
  color: #ECE8E1;
}
.exchange-player-group[open] .exchange-player-group__identity small, .exchange-player-group[open] .exchange-player-group__identity .small,
.exchange-player-group[open] .exchange-player-group__date,
.exchange-player-group[open] .exchange-player-group__count {
  color: rgba(236, 232, 225, 0.68);
}
.exchange-player-group[open] .exchange-player-group__initial {
  border-color: rgba(236, 232, 225, 0.34);
  background: rgba(236, 232, 225, 0.1);
  color: #ECE8E1;
}
.exchange-player-group[open] .exchange-player-group__toggle {
  border-color: rgba(236, 232, 225, 0.35);
  color: #ECE8E1;
}
.exchange-player-group[open] .exchange-player-group__toggle-closed {
  display: none;
}
.exchange-player-group[open] .exchange-player-group__toggle-open {
  display: inline;
}

.exchange-player-group__summary {
  display: grid;
  grid-template-columns: 2.75rem minmax(10rem, 0.75fr) minmax(14rem, 1.25fr) auto;
  align-items: center;
  gap: 0.75rem 1rem;
  min-height: 4.75rem;
  padding: 0.8rem 1rem;
  color: #0F1923;
  cursor: pointer;
  list-style: none;
  transition: background-color 180ms ease, color 180ms ease;
}
.exchange-player-group__summary::-webkit-details-marker {
  display: none;
}
.exchange-player-group__summary:hover {
  background: rgba(34, 184, 214, 0.08);
}
.exchange-player-group__summary:focus-visible {
  outline: 3px solid #22b8d6;
  outline-offset: -3px;
}

.exchange-player-group__initial {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 1px solid rgba(15, 25, 35, 0.22);
  background: rgba(15, 25, 35, 0.06);
  color: #0F1923;
  font-family: "Barlow", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 900;
}

.exchange-player-group__identity {
  display: grid;
  min-width: 0;
}
.exchange-player-group__identity strong,
.exchange-player-group__identity small,
.exchange-player-group__identity .small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.exchange-player-group__identity strong {
  font-size: 1rem;
}
.exchange-player-group__identity small, .exchange-player-group__identity .small {
  color: #5A6672;
  font-size: 0.72rem;
}

.exchange-player-group__metrics {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.55rem 0.8rem;
  min-width: 0;
  text-align: right;
}

.exchange-player-group__pending {
  padding: 0.3rem 0.45rem;
  border: 1px solid rgba(34, 184, 214, 0.65);
  color: rgb(8.9462365591%, 48.4149272612%, 56.3086654016%);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.exchange-player-group[open] .exchange-player-group__pending {
  border-color: rgba(34, 184, 214, 0.8);
  color: rgb(28.5989879823%, 78.6464263125%, 88.6559139785%);
}

.exchange-player-group__count,
.exchange-player-group__date {
  color: #5A6672;
  font-size: 0.7rem;
  font-weight: 700;
}

.exchange-player-group__toggle {
  min-width: 5.25rem;
  padding: 0.42rem 0.55rem;
  border: 1px solid rgba(15, 25, 35, 0.25);
  color: #0F1923;
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-align: center;
  text-transform: uppercase;
}

.exchange-player-group__toggle-open {
  display: none;
}

.exchange-player-group__offers {
  display: grid;
  gap: 0.65rem;
  padding: 0.75rem;
  border-top: 1px solid rgba(15, 25, 35, 0.14);
  background: rgba(236, 232, 225, 0.72);
}

.exchange-offer {
  border: 1px solid rgba(15, 25, 35, 0.16);
  background: #fff;
}
.exchange-offer--pending {
  border-left: 3px solid #22b8d6;
}
.exchange-offer--completed {
  border-left: 3px solid #2f9e73;
}
.exchange-offer[open] {
  box-shadow: 0 0.65rem 1.5rem rgba(15, 25, 35, 0.08);
}
.exchange-offer[open] .exchange-offer__summary {
  background: rgba(15, 25, 35, 0.035);
}
.exchange-offer[open] .exchange-offer__toggle-closed {
  display: none;
}
.exchange-offer[open] .exchange-offer__toggle-open {
  display: inline;
}

.exchange-offer__summary {
  display: grid;
  grid-template-columns: minmax(7rem, 0.3fr) minmax(20rem, 1fr) auto;
  align-items: center;
  gap: 0.75rem 1rem;
  min-height: 4.25rem;
  padding: 0.7rem 0.85rem;
  cursor: pointer;
  list-style: none;
  transition: background-color 160ms ease;
}
.exchange-offer__summary::-webkit-details-marker {
  display: none;
}
.exchange-offer__summary:hover {
  background: rgba(34, 184, 214, 0.055);
}
.exchange-offer__summary:focus-visible {
  outline: 3px solid #22b8d6;
  outline-offset: -3px;
}

.exchange-offer__summary-heading {
  display: grid;
  justify-items: start;
  gap: 0.35rem;
}

.exchange-offer__date {
  color: #5A6672;
  font-size: 0.68rem;
  font-weight: 700;
}

.exchange-offer__compact-trade {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}

.exchange-offer__compact-side {
  display: grid;
  min-width: 0;
}
.exchange-offer__compact-side small, .exchange-offer__compact-side .small,
.exchange-offer__compact-side strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.exchange-offer__compact-side small, .exchange-offer__compact-side .small {
  color: #5A6672;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}
.exchange-offer__compact-side strong {
  color: #0F1923;
  font-size: 0.78rem;
}

.exchange-offer__compact-bridge {
  color: #5A6672;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.exchange-offer__toggle {
  color: #0F1923;
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-decoration: underline;
  text-underline-offset: 0.22rem;
  text-transform: uppercase;
}

.exchange-offer__toggle-open {
  display: none;
}

.exchange-offer__details {
  padding: 0 1rem 1rem;
  border-top: 1px solid rgba(15, 25, 35, 0.1);
}

.exchange-offer__status {
  padding: 0.4rem 0.6rem;
  border: 1px solid rgba(15, 25, 35, 0.22);
  color: #5A6672;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.exchange-offer__status[data-status=pending] {
  border-color: rgba(34, 184, 214, 0.65);
  color: rgb(9.2204301075%, 49.898798229%, 58.0344718533%);
}
.exchange-offer__status[data-status=completed] {
  border-color: rgba(47, 158, 115, 0.65);
  color: rgb(13.8460066954%, 46.5461501674%, 33.8785270206%);
}
.exchange-offer__status[data-status=countered] {
  border-color: rgba(185, 121, 18, 0.7);
  color: rgb(54.3224186226%, 35.5297981261%, 5.2854245146%);
}

.exchange-offer__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin: 0.75rem 0 1rem;
  color: #5A6672;
  font-size: 0.76rem;
}

.exchange-offer__lineage {
  color: rgb(8.3978494624%, 45.4471853257%, 52.8570524984%);
  font-weight: 700;
}

.exchange-offer__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2.5rem minmax(0, 1fr);
  align-items: stretch;
  gap: 0.75rem;
}

.exchange-offer__side {
  min-width: 0;
  padding: 0.85rem;
  border: 1px solid rgba(15, 25, 35, 0.13);
  background: rgba(236, 232, 225, 0.52);
}

.exchange-offer__side-label {
  display: block;
  margin-bottom: 0.6rem;
  color: #5A6672;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.exchange-offer__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.exchange-offer-card {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  padding: 0.4rem;
  background: #fff;
}

.exchange-offer-card__visual {
  width: 2.25rem;
  height: 3.1rem;
  overflow: hidden;
  background: #0F1923;
}
.exchange-offer-card__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.exchange-offer-card__copy {
  display: grid;
  min-width: 0;
}
.exchange-offer-card__copy strong,
.exchange-offer-card__copy small,
.exchange-offer-card__copy .small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.exchange-offer-card__copy strong {
  font-size: 0.78rem;
}
.exchange-offer-card__copy small, .exchange-offer-card__copy .small {
  color: #5A6672;
  font-size: 0.68rem;
}
.exchange-offer-card__copy .exchange-offer-card__finish {
  color: rgba(15, 25, 35, 0.72);
  font-weight: 600;
}

.exchange-offer__radianite {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 0.65rem;
  padding: 0.45rem 0.55rem;
  background: #0F1923;
  color: #ECE8E1;
  font-size: 0.78rem;
}

.exchange-offer__bridge {
  position: relative;
  align-self: center;
  width: 2rem;
  height: 1.5rem;
  color: transparent;
}
.exchange-offer__bridge::before, .exchange-offer__bridge::after {
  position: absolute;
  left: 0.2rem;
  width: 1.6rem;
  height: 0.45rem;
  border-top: 1px solid #22b8d6;
  content: "";
}
.exchange-offer__bridge::before {
  top: 0.25rem;
  border-right: 1px solid #22b8d6;
  transform: skewX(35deg);
}
.exchange-offer__bridge::after {
  bottom: 0.15rem;
  border-left: 1px solid #22b8d6;
  transform: skewX(35deg);
}

.exchange-offer__actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.65rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(15, 25, 35, 0.12);
}

.exchange-empty-state {
  max-width: 46rem;
  margin: clamp(4rem, 10vw, 8rem) auto;
  padding: clamp(1.5rem, 5vw, 3rem);
  border: 1px solid rgba(15, 25, 35, 0.16);
  background: #fff;
  text-align: center;
  box-shadow: 0 1.5rem 4rem rgba(15, 25, 35, 0.1);
}
.exchange-empty-state h1, .exchange-empty-state .h1,
.exchange-empty-state h3,
.exchange-empty-state .h3 {
  margin: 0.3rem 0 0.75rem;
}
.exchange-empty-state p {
  margin: 0 auto 1.25rem;
  color: #5A6672;
}
.exchange-empty-state[hidden] {
  display: none;
}

.exchange-empty-state--compact {
  max-width: none;
  margin: 0;
  box-shadow: none;
}
.exchange-empty-state--compact p {
  margin-bottom: 0;
}

.exchange-dialog {
  width: min(36rem, 100% - 2rem);
  padding: 0;
  border: 0;
  background: transparent;
}
.exchange-dialog::backdrop {
  background: rgba(15, 25, 35, 0.68);
  backdrop-filter: blur(3px);
}

.exchange-dialog__surface {
  padding: clamp(1.25rem, 4vw, 2rem);
  border-top: 4px solid #FF4655;
  background: #ECE8E1;
  color: #0F1923;
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.35);
}
.exchange-dialog__surface h2, .exchange-dialog__surface .h2 {
  margin: 0.25rem 0 0.75rem;
  font-size: clamp(2rem, 7vw, 3.25rem);
  line-height: 0.95;
}
.exchange-dialog__surface p {
  color: #5A6672;
}

.exchange-dialog__actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.65rem;
  margin-top: 1.25rem;
}

.catch-exchange.is-busy {
  cursor: progress;
}

@keyframes exchange-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (max-width: 991.98px) {
  .exchange-recipient {
    grid-template-columns: 1fr;
  }
  .exchange-builder {
    grid-template-columns: 1fr;
  }
  .exchange-builder__bridge {
    grid-template: 2.75rem/1fr auto 1fr;
  }
  .exchange-builder__bridge span {
    width: 100%;
    height: 1px;
  }
  .exchange-inventory {
    max-height: 28rem;
  }
  .exchange-list-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.75rem;
  }
  .exchange-history-toolbar {
    grid-template-columns: 1fr;
  }
  .exchange-history-toolbar__status {
    grid-column: auto;
  }
  .exchange-player-group__summary {
    grid-template-columns: 2.75rem minmax(0, 1fr) auto;
  }
  .exchange-player-group__metrics {
    grid-column: 2/3;
    grid-row: 2;
    justify-content: flex-start;
    text-align: left;
  }
  .exchange-player-group__toggle {
    grid-column: 3;
    grid-row: 1/3;
  }
  .exchange-offer__summary {
    grid-template-columns: minmax(7rem, 0.3fr) minmax(0, 1fr);
  }
  .exchange-offer__toggle {
    grid-column: 2;
    justify-self: end;
  }
  .exchange-offer__cards {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767.98px) {
  .exchange-counter-context {
    align-items: stretch;
    flex-direction: column;
  }
  .exchange-draft-summary__heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .exchange-draft-summary__heading p {
    text-align: left;
  }
  .exchange-draft-summary__trade {
    grid-template-columns: 1fr;
  }
  .exchange-draft-summary__side--receive {
    border-right: 0;
    border-left: 3px solid rgba(34, 184, 214, 0.8);
  }
  .exchange-draft-summary__bridge {
    margin: 0.35rem 0;
    transform: rotate(90deg);
  }
  .exchange-hero-flow {
    grid-template-columns: repeat(3, 1fr);
  }
  .exchange-hero-flow i {
    display: none;
  }
  .exchange-tabs__button {
    justify-content: center;
    min-height: 4.5rem;
    padding: 0.7rem 0.45rem;
    text-align: center;
  }
  .exchange-tabs__button small, .exchange-tabs__button .small,
  .exchange-tabs__button .exchange-tabs__index {
    display: none;
  }
  .exchange-tabs__button strong {
    font-size: 0.78rem;
  }
  .exchange-tabs__badge {
    position: absolute;
    top: 0.4rem;
    right: 0.4rem;
    min-width: 1.35rem;
    min-height: 1.35rem;
    font-size: 0.65rem;
  }
  .exchange-step__heading {
    gap: 0.75rem;
  }
  .exchange-step__number {
    font-size: 3rem;
  }
  .exchange-recipient__control {
    grid-template-columns: 1fr;
  }
  .exchange-partner {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .exchange-partner a {
    margin-left: 0;
  }
  .exchange-review,
  .exchange-offer__body {
    grid-template-columns: 1fr;
  }
  .exchange-history-toolbar__filters > div {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .exchange-history-toolbar__filters span {
    padding-inline: 0.45rem;
  }
  .exchange-player-group__summary {
    grid-template-columns: 2.75rem minmax(0, 1fr);
    padding: 0.75rem;
  }
  .exchange-player-group__metrics {
    grid-column: 1/-1;
    grid-row: auto;
    flex-wrap: wrap;
  }
  .exchange-player-group__toggle {
    grid-column: 1/-1;
    grid-row: auto;
    min-height: 2.75rem;
  }
  .exchange-player-group__offers {
    padding: 0.55rem;
  }
  .exchange-offer__summary {
    grid-template-columns: 1fr;
    padding: 0.75rem;
  }
  .exchange-offer__summary-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .exchange-offer__toggle {
    grid-column: auto;
    justify-self: stretch;
    min-height: 2.75rem;
    padding-top: 0.8rem;
    text-align: center;
  }
  .exchange-offer__details {
    padding: 0 0.75rem 0.75rem;
  }
  .exchange-review__arrow,
  .exchange-offer__bridge {
    justify-self: center;
    transform: rotate(90deg);
  }
  .exchange-confirmation {
    align-items: stretch;
    flex-direction: column;
  }
  .exchange-confirmation__actions,
  .exchange-offer__actions,
  .exchange-dialog__actions {
    display: grid;
    grid-template-columns: 1fr;
  }
}
@media (max-width: 479.98px) {
  .exchange-step {
    padding: 1rem;
  }
  .exchange-side {
    padding: 0.8rem;
  }
  .exchange-history-toolbar {
    padding: 0.75rem;
  }
  .exchange-draft-summary__side > ul {
    grid-template-columns: 1fr;
  }
  .exchange-history-toolbar__search input {
    font-size: 1rem;
  }
  .exchange-player-group__date {
    flex-basis: 100%;
  }
  .exchange-offer__compact-trade {
    grid-template-columns: 1fr;
    gap: 0.4rem;
  }
  .exchange-offer__compact-bridge {
    justify-self: start;
  }
  .exchange-card-filters__grid {
    grid-template-columns: 1fr;
  }
  .exchange-card-filters__footer {
    align-items: flex-start;
    flex-direction: column;
  }
  .exchange-card-choice {
    grid-template-columns: 3rem minmax(0, 1fr);
  }
  .exchange-card-choice__visual {
    width: 3rem;
    height: 3.75rem;
  }
  .exchange-card-choice__quantity {
    grid-column: 1/-1;
    grid-template-columns: 1fr 4rem;
    align-items: center;
  }
  .exchange-radianite {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .exchange-tabs__button,
  .exchange-tabs__button::after,
  .exchange-card-choice,
  .exchange-button,
  .exchange-recipient-suggestion,
  .exchange-recipient-suggestion__index,
  .exchange-recipient-suggestion__identity small,
  .exchange-recipient-suggestion__identity .small,
  .exchange-recipient-suggestion__signal {
    transition: none;
  }
  .exchange-field__status.is-loading::before,
  .exchange-recipient-suggestions.is-loading .exchange-recipient-suggestions__message::before {
    animation: none;
    border-color: #22b8d6;
  }
}
@property --agent-a {
  syntax: "<color>";
  inherits: true;
  initial-value: #243447;
}
@property --agent-b {
  syntax: "<color>";
  inherits: true;
  initial-value: #16283a;
}
.agent {
  --agent-panel: rgba(255, 255, 255, 0.035);
  --agent-line: rgba(255, 255, 255, 0.11);
  --agent-line-strong: rgba(255, 255, 255, 0.2);
  --agent-muted: rgba(235, 241, 247, 0.66);
  position: relative;
  isolation: isolate;
  color: #f5f8fb;
  background: #080d13;
  transition: --agent-a 420ms cubic-bezier(0.2, 0.6, 0.2, 1), --agent-b 420ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.agent::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.5;
  background: radial-gradient(115% 75% at 82% -8%, var(--agent-a), transparent 60%), radial-gradient(85% 65% at 2% 22%, var(--agent-b), transparent 58%);
}

.agent-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: calc(100vh - var(--header-height, 64px) - 6.3rem);
  min-height: calc(100svh - var(--header-height, 64px) - 6.3rem);
  overflow-x: clip;
  border-bottom: 1px solid var(--agent-line);
}
.agent-hero::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(90deg, rgba(8, 13, 19, 0.92), rgba(8, 13, 19, 0.5) 42%, transparent 66%), linear-gradient(0deg, rgba(8, 13, 19, 0.95), transparent 34%);
}

.admin-bar .agent-hero {
  min-height: calc(100vh - var(--header-height, 64px) - 6.3rem - 32px);
  min-height: calc(100svh - var(--header-height, 64px) - 6.3rem - 32px);
}
@media (max-width: 782px) {
  .admin-bar .agent-hero {
    min-height: calc(100vh - var(--header-height, 64px) - 6.3rem - 46px);
    min-height: calc(100svh - var(--header-height, 64px) - 6.3rem - 46px);
  }
}

.agent-hero .catch-hero__scan {
  z-index: 2;
}

.agent-hero__backdrop {
  position: absolute;
  z-index: 0;
  inset: -8% -6% 0;
  pointer-events: none;
  opacity: 0.14;
  mix-blend-mode: screen;
  transform: translate3d(calc(var(--px, 0) * 12px), calc(var(--py, 0) * 9px), 0);
  mask-image: radial-gradient(68% 72% at 68% 42%, #000 24%, transparent 74%);
}
.agent-hero__backdrop img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.agent-hero__watermark {
  position: absolute;
  z-index: 0;
  right: -0.06em;
  bottom: 0.015em;
  color: transparent;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(9rem, 17vw, 19rem);
  letter-spacing: 0.02em;
  line-height: 0.72;
  pointer-events: none;
  text-transform: uppercase;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.16);
}
@media (max-width: 991.98px) {
  .agent-hero__watermark {
    display: none;
  }
}

.agent-hero__inner {
  position: relative;
  z-index: 2;
  display: grid;
  align-self: stretch;
  align-items: end;
  grid-template-columns: minmax(0, 1.05fr) minmax(16rem, 0.95fr);
  gap: clamp(1.5rem, 4vw, 3.5rem);
  width: 100%;
  min-height: inherit;
  padding-top: clamp(2.5rem, 6vw, 4.5rem);
  padding-bottom: 1.5rem;
}

.agent-hero__copy {
  position: relative;
  z-index: 2;
  padding-bottom: clamp(0.5rem, 2vw, 1.5rem);
}

.agent-hero__kicker {
  margin: 0 0 0.1rem;
  color: #FF4655;
  font-family: "League Gothic", sans-serif;
  font-size: 2.6rem;
  line-height: 0.9;
}
.agent-hero__kicker::before {
  display: block;
  width: 2.4rem;
  height: 4px;
  margin-bottom: 0.45rem;
  background: #FF4655;
  content: "";
}

.agent-hero__name {
  margin: 0 0 1rem;
  color: #fff;
  font-size: clamp(3.75rem, 9vw, 8.5rem);
  line-height: 0.82;
  text-shadow: 0 1rem 4rem rgba(0, 0, 0, 0.55);
}

.agent-role {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.4rem;
}

.agent-role__label {
  color: var(--agent-muted);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.agent-role__rule {
  width: clamp(1.5rem, 4vw, 3rem);
  height: 1px;
  background: linear-gradient(90deg, var(--agent-line-strong), transparent);
}

.agent-role__crest {
  width: 1.5rem;
  height: 1.5rem;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.agent-role__name {
  color: #fff;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.agent-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.agent-tags__item {
  padding: 0.25rem 0.65rem;
  border: 1px solid var(--agent-line-strong);
  color: var(--agent-muted);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  clip-path: polygon(0 0, calc(100% - 0.35rem) 0, 100% 0.35rem, 100% 100%, 0 100%);
}

.agent-hero__lead {
  max-width: 36rem;
  margin: 0;
  color: var(--agent-muted);
  font-size: clamp(0.95rem, 1.4vw, 1.05rem);
  line-height: 1.7;
}

.agent-progress {
  max-width: 22rem;
  margin-top: 1.75rem;
}

.agent-progress__figure {
  display: flex;
  align-items: baseline;
  gap: 0.4rem;
  margin: 0 0 0.5rem;
}

.agent-progress__owned {
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: 2.75rem;
  line-height: 1;
}

.agent-progress__total {
  color: var(--agent-muted);
  font-size: 1rem;
}

.agent-progress__label {
  margin-left: 0.35rem;
  color: var(--agent-muted);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.agent-progress__bar {
  height: 4px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.1);
}

.agent-progress__fill {
  display: block;
  width: var(--agent-progress, 0%);
  height: 100%;
  transform-origin: left center;
  background: linear-gradient(90deg, var(--agent-a), #FF4655);
  animation: agent-progress-fill 700ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
}

@keyframes agent-progress-fill {
  from {
    transform: scaleX(0);
  }
}
.agent-portrait {
  position: absolute;
  z-index: 1;
  top: clamp(2rem, 4vh, 3.5rem);
  right: clamp(-18rem, -18vh, -9rem);
  bottom: -1rem;
  width: auto;
  max-width: none;
  margin: 0;
  height: auto;
  aspect-ratio: 2048/1860;
  pointer-events: none;
  transform: translate3d(calc(var(--px, 0) * -15px), calc(var(--py, 0) * -11px), 0);
  -webkit-mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, 0.35) 24%, #000 36%);
  mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, 0.35) 24%, #000 36%);
}

.agent-portrait__img,
.agent-portrait__ghost {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.agent-portrait__img {
  object-fit: contain;
  object-position: bottom center;
  filter: drop-shadow(0 1.5rem 3rem rgba(0, 0, 0, 0.6));
}

.agent-portrait__ghost {
  opacity: 0;
  mix-blend-mode: screen;
  -webkit-mask-image: var(--agent-portrait);
  mask-image: var(--agent-portrait);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: bottom center;
  mask-position: bottom center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.agent-portrait__ghost--a {
  background: #ff2d3f;
}

.agent-portrait__ghost--b {
  background: #2de1ff;
}

.agent--staged .agent-portrait__img {
  animation: agent-materialise 0.95s cubic-bezier(0.2, 0.6, 0.2, 1) both;
}
.agent--staged .agent-portrait__ghost--a {
  animation: agent-materialise 0.95s cubic-bezier(0.2, 0.6, 0.2, 1) both, agent-ghost-left 1.1s cubic-bezier(0.2, 0.6, 0.2, 1) both;
}
.agent--staged .agent-portrait__ghost--b {
  animation: agent-materialise 0.95s cubic-bezier(0.2, 0.6, 0.2, 1) both, agent-ghost-right 1.1s cubic-bezier(0.2, 0.6, 0.2, 1) both;
}
.agent--staged .agent-portrait::after {
  position: absolute;
  right: -5%;
  left: -5%;
  height: 2px;
  content: "";
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(90deg, transparent, #fff, transparent);
  box-shadow: 0 0 2.5rem 0.4rem rgba(255, 70, 85, 0.5);
  animation: agent-scanbar 1.05s cubic-bezier(0.2, 0.6, 0.2, 1) both;
}

@keyframes agent-materialise {
  from {
    clip-path: inset(100% 0 0 0);
  }
  to {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes agent-ghost-left {
  0% {
    opacity: 0;
    transform: translate3d(-1.8rem, 0, 0);
  }
  16% {
    opacity: 0.85;
  }
  100% {
    opacity: 0;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes agent-ghost-right {
  0% {
    opacity: 0;
    transform: translate3d(1.8rem, 0, 0);
  }
  16% {
    opacity: 0.85;
  }
  100% {
    opacity: 0;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes agent-scanbar {
  0% {
    top: 100%;
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 0.55;
  }
  100% {
    top: 0;
    opacity: 0;
  }
}
.agent-lore {
  position: relative;
  z-index: 3;
}

.dossier {
  position: relative;
  max-width: 44rem;
  margin-top: -1.5rem;
  border: 1px solid var(--agent-line-strong);
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.045), transparent 55%), repeating-linear-gradient(135deg, transparent 0 0.55rem, rgba(255, 255, 255, 0.014) 0.55rem 1.1rem), rgba(11, 19, 27, 0.94);
  box-shadow: 0 1.75rem 4rem rgba(0, 0, 0, 0.55);
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
}

.dossier__head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.7rem 1.25rem 0.7rem 1.5rem;
  border-bottom: 1px solid var(--agent-line);
  background: rgba(255, 255, 255, 0.035);
}

.dossier__badge {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 2rem;
  height: 2rem;
  overflow: hidden;
  border: 1px solid var(--agent-line);
  background: linear-gradient(160deg, var(--agent-a), var(--agent-b));
}
.dossier__badge img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.dossier__ref {
  margin: 0;
  color: #f5f8fb;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-family: "Barlow", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.dossier__number {
  color: #FF4655;
}

.dossier__origin {
  margin: 0 0 0 auto;
  color: var(--agent-muted);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.dossier__body {
  padding: 1.4rem 1.5rem 3.5rem;
  color: var(--agent-muted);
  font-size: 0.98rem;
  line-height: 1.75;
}
.dossier__body p {
  margin: 0 0 1.1rem;
}
.dossier__body p:last-child {
  margin-bottom: 0;
}
.dossier__body a {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.dossier__body a:hover, .dossier__body a:focus-visible {
  color: #FF4655;
}
.dossier__body strong,
.dossier__body b {
  color: #f5f8fb;
}
.dossier__body h2, .dossier__body .h2,
.dossier__body h3,
.dossier__body .h3,
.dossier__body h4,
.dossier__body .h4 {
  margin: 1.75rem 0 0.6rem;
  color: #fff;
  font-size: 1.35rem;
}
.dossier__body ul,
.dossier__body ol {
  margin: 0 0 1.1rem;
  padding-left: 1.25rem;
}
.dossier__body li {
  margin-bottom: 0.35rem;
}
.dossier__body blockquote {
  margin: 1.4rem 0;
  padding-left: 1.15rem;
  border-left: 2px solid var(--agent-line-strong);
  color: #f5f8fb;
  font-style: italic;
}
.dossier__body img {
  max-width: 100%;
  height: auto;
}

.dossier__stamp {
  position: absolute;
  right: 1.5rem;
  bottom: 1rem;
  padding: 0.2rem 0.7rem;
  border: 2px solid rgba(255, 70, 85, 0.45);
  color: rgba(255, 70, 85, 0.7);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  rotate: -7deg;
  clip-path: polygon(0 0, calc(100% - 0.3rem) 0, 100% 0.3rem, 100% 100%, 0 100%);
}

.agent-kit,
.agent-cards {
  position: relative;
  padding-block: clamp(3rem, 6vw, 5rem);
}

.agent-kit {
  padding-bottom: 0;
}

.agent-kit__head {
  margin-bottom: clamp(1.2rem, 3vw, 2rem);
}

.agent-kit__title {
  margin: 0.25rem 0 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3rem);
}

.kit {
  display: grid;
  grid-template-columns: minmax(13rem, 17rem) minmax(0, 1fr);
  gap: clamp(1.25rem, 3vw, 2.5rem);
  align-items: start;
}

.kit__index {
  display: grid;
  gap: 0.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}

.kit__tab {
  position: relative;
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.9rem;
  padding: 0.95rem 1rem;
  border: 1px solid var(--agent-line);
  color: var(--agent-muted);
  text-decoration: none;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.04), transparent 60%), rgba(11, 19, 27, 0.66);
  transition: border-color 200ms cubic-bezier(0.2, 0.6, 0.2, 1), color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
  clip-path: polygon(0 0, calc(100% - 0.65rem) 0, 100% 0.65rem, 100% 100%, 0 100%);
}
.kit__tab::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3px;
  content: "";
  background: #FF4655;
  transform: scaleY(0);
  transform-origin: top center;
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.kit__tab:hover, .kit__tab:focus-visible {
  border-color: var(--agent-line-strong);
  color: #fff;
  transform: translateX(0.2rem);
}
.kit__tab.is-active {
  border-color: var(--agent-line-strong);
  color: #fff;
  background: linear-gradient(120deg, rgba(255, 70, 85, 0.16), transparent 62%), rgba(17, 27, 37, 0.92);
}
.kit__tab.is-active::before {
  transform: scaleY(1);
}

.kit__num {
  color: rgba(255, 255, 255, 0.28);
  font-family: "League Gothic", sans-serif;
  font-size: 1.9rem;
  line-height: 1;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.kit__tab.is-active .kit__num {
  color: #FF4655;
}

.kit__thumb {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
}
.kit__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: 0.55;
  transition: opacity 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.kit__tab:hover .kit__thumb img,
.kit__tab.is-active .kit__thumb img {
  opacity: 1;
}

.kit__initial {
  color: var(--agent-muted);
  font-family: "League Gothic", sans-serif;
  font-size: 1.3rem;
  line-height: 1;
}

.kit__label {
  overflow: hidden;
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.kit__shortcut {
  display: grid;
  place-items: center;
  width: 1.5rem;
  height: 1.5rem;
  border: 1px solid var(--agent-line-strong);
  color: var(--agent-muted);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.kit__tab.is-active .kit__shortcut {
  border-color: rgba(255, 70, 85, 0.6);
  color: #FF4655;
}

.kit__panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  align-items: start;
  overflow: hidden;
  border: 1px solid var(--agent-line);
  background: linear-gradient(150deg, rgba(255, 255, 255, 0.05), transparent 55%), repeating-linear-gradient(135deg, transparent 0 0.6rem, rgba(255, 255, 255, 0.012) 0.6rem 1.2rem), rgba(11, 19, 27, 0.82);
  clip-path: polygon(1.15rem 0, 100% 0, 100% calc(100% - 1.15rem), calc(100% - 1.15rem) 100%, 0 100%, 0 1.15rem);
}

.kit:not(.is-armed) .kit__panel + .kit__panel {
  margin-top: 0.75rem;
}

.kit.is-armed .kit__panel {
  display: none;
}
.kit.is-armed .kit__panel.is-active {
  display: grid;
  animation: kit-panel-in 300ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
}

@keyframes kit-panel-in {
  from {
    opacity: 0;
    transform: translateX(-0.9rem);
  }
}
.kit__visual {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 16/9;
  max-height: min(56vh, 32rem);
  overflow: hidden;
  border-bottom: 1px solid var(--agent-line);
  background: linear-gradient(150deg, var(--agent-a), var(--agent-b));
}

.kit__glow {
  position: absolute;
  inset: -20%;
  background: radial-gradient(circle at 50% 45%, rgba(255, 255, 255, 0.22), transparent 62%);
  transition: opacity 300ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.kit__art {
  position: relative;
  width: 26%;
  max-width: 11rem;
  filter: brightness(0) invert(1) drop-shadow(0 0.75rem 1.5rem rgba(0, 0, 0, 0.45));
  transition: opacity 300ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.kit__film {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 300ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.kit__panel.is-playing .kit__film {
  opacity: 1;
}
.kit__panel.is-playing .kit__art,
.kit__panel.is-playing .kit__glow {
  opacity: 0;
}

.kit__art--letter {
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: 6rem;
  line-height: 1;
  filter: none;
}

.kit__text {
  padding: clamp(1.1rem, 2.5vw, 1.6rem) clamp(1.1rem, 2.5vw, 1.75rem) clamp(1.3rem, 3vw, 1.9rem);
}

.kit__meta {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  margin: 0 0 0.4rem;
}

.kit__meta-num {
  color: rgba(255, 255, 255, 0.3);
  font-family: "League Gothic", sans-serif;
  font-size: 1.5rem;
  line-height: 1;
}

.kit__meta-key {
  color: #FF4655;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.kit__name {
  margin: 0 0 0.8rem;
  color: #fff;
  font-size: clamp(1.9rem, 3.4vw, 3rem);
  line-height: 0.95;
}

.kit__desc {
  max-width: 38rem;
  margin: 0;
  color: var(--agent-muted);
  font-size: 0.98rem;
  line-height: 1.75;
}

.agent-cards {
  padding-bottom: clamp(6rem, 10vw, 9rem);
}

.agent-cards__rows {
  display: grid;
  gap: clamp(1.75rem, 3vw, 2.75rem);
}

.finish-row {
  --finish: #8C97A2;
}

.finish-row--charged {
  --finish: #4FE3D8;
}

.finish-row--overcharged {
  --finish: #FF4655;
}

.finish-row--sublimated {
  --finish: #F0C24B;
}

.finish-row--radiant {
  --finish: #BE96FF;
}

.finish-row__head {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}

.finish-row__name {
  margin: 0;
  color: var(--finish);
  font-size: 1.75rem;
}

.finish-row__rule {
  flex: 1 1 auto;
  height: 1px;
  opacity: 0.45;
  background: linear-gradient(90deg, var(--finish), transparent);
}

.finish-row__count {
  margin: 0;
  color: var(--agent-muted);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.agent-rail {
  position: sticky;
  z-index: 5;
  bottom: 0;
  min-height: 6.3rem;
  border-top: 1px solid var(--agent-line);
  background: rgba(6, 10, 15, 0.94);
}
.agent-rail::before, .agent-rail::after {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  width: clamp(1.5rem, 4vw, 3rem);
  content: "";
  pointer-events: none;
}
.agent-rail::before {
  left: 0;
  background: linear-gradient(90deg, rgba(6, 10, 15, 0.95), transparent);
}
.agent-rail::after {
  right: 0;
  background: linear-gradient(270deg, rgba(6, 10, 15, 0.95), transparent);
}

.agent-rail__list {
  display: flex;
  gap: 0.15rem;
  margin: 0;
  padding: 0.5rem clamp(0.75rem, 4vw, 2rem);
  overflow-x: auto;
  list-style: none;
  scroll-snap-type: x proximity;
  cursor: grab;
}
.agent-rail__list.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  user-select: none;
}
.agent-rail__list.is-dragging .agent-rail__link {
  cursor: grabbing;
}
.agent-rail__list {
  scroll-padding-inline: clamp(1.5rem, 4vw, 3rem);
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 70, 85, 0.55) rgba(255, 255, 255, 0.06);
}
.agent-rail__list::-webkit-scrollbar {
  height: 6px;
}
.agent-rail__list::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.06);
}
.agent-rail__list::-webkit-scrollbar-thumb {
  background: linear-gradient(90deg, rgba(255, 70, 85, 0.8), rgba(255, 70, 85, 0.45));
}
.agent-rail__list::-webkit-scrollbar-thumb:hover {
  background: #FF4655;
}

.agent-rail__nav {
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  display: grid;
  place-items: center;
  width: clamp(1.75rem, 4vw, 2.75rem);
  padding: 0;
  border: 0;
  color: #fff;
  background: transparent;
  cursor: pointer;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), opacity 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.agent-rail__nav svg {
  width: 1.1rem;
  height: 1.1rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: square;
  filter: drop-shadow(0 0 0.4rem rgba(0, 0, 0, 0.9));
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.agent-rail__nav:hover svg, .agent-rail__nav:focus-visible svg {
  color: #FF4655;
}
.agent-rail__nav:hover {
  color: #FF4655;
}
.agent-rail__nav.is-spent {
  cursor: default;
  opacity: 0.2;
}
.agent-rail__nav:not(.is-spent):hover svg {
  transform: scale(1.15);
}

.agent-rail__nav--prev {
  left: 0;
}

.agent-rail__nav--next {
  right: 0;
}

.agent-rail__item {
  flex: 0 0 auto;
  scroll-snap-align: center;
}

.agent-rail__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.3rem;
  width: 4.25rem;
  padding: 0.4rem 0.2rem 0.3rem;
  color: var(--agent-muted);
  text-decoration: none;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.agent-rail__link:hover, .agent-rail__link:focus-visible {
  color: #fff;
  transform: translateY(-0.25rem);
}

.agent-rail__frame {
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  overflow: hidden;
  border: 1px solid var(--agent-line);
  background: linear-gradient(160deg, var(--rail-a), var(--rail-b));
  filter: saturate(0.25) brightness(0.75);
  transition: filter 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
  clip-path: polygon(0 0, calc(100% - 0.4rem) 0, 100% 0.4rem, 100% 100%, 0 100%);
}
.agent-rail__frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.agent-rail__link:hover .agent-rail__frame,
.agent-rail__link:focus-visible .agent-rail__frame {
  filter: none;
}

.agent-rail__name {
  max-width: 100%;
  overflow: hidden;
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.agent-rail__item.is-current .agent-rail__link {
  color: #fff;
}
.agent-rail__item.is-current .agent-rail__frame {
  border-color: #FF4655;
  box-shadow: 0 0 0 1px rgba(255, 70, 85, 0.45);
  filter: none;
}
.agent-rail__item.is-current .agent-rail__name {
  color: #FF4655;
}

.agent::after {
  position: fixed;
  z-index: 60;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(0deg, rgba(255, 70, 85, 0.55), rgba(255, 70, 85, 0.08) 45%, transparent 70%), radial-gradient(120% 60% at 50% 100%, rgba(255, 255, 255, 0.25), transparent 60%);
}

.agent.is-locking::after {
  animation: agent-lock 280ms ease-out both;
}

@keyframes agent-lock {
  0% {
    opacity: 0;
    transform: translateY(60%);
  }
  35% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(0);
  }
}
@media (max-width: 991.98px) {
  .agent-hero {
    min-height: min(100vh - var(--header-height, 64px) - 6.3rem, 38rem);
    min-height: min(100svh - var(--header-height, 64px) - 6.3rem, 38rem);
  }
  .agent-hero__inner {
    grid-template-columns: minmax(0, 1fr);
  }
  .agent-portrait {
    z-index: -1;
    top: 0;
    right: -10%;
    bottom: 0;
    width: 86%;
    max-width: none;
    height: auto;
    align-self: stretch;
    justify-self: stretch;
    opacity: 0.5;
    -webkit-mask-image: linear-gradient(90deg, transparent 20%, #000 66%);
    mask-image: linear-gradient(90deg, transparent 20%, #000 66%);
  }
  .agent-hero__copy {
    padding-top: 2rem;
  }
}
@media (max-width: 575.98px) {
  .agent-portrait {
    right: -48%;
    width: 150%;
  }
}
@media (max-width: 991.98px) {
  .kit {
    grid-template-columns: minmax(0, 1fr);
  }
  .kit__visual {
    max-height: none;
  }
}
@media (max-width: 767.98px) {
  .agent-rail__link {
    width: 3.6rem;
  }
  .agent-rail__frame {
    width: 2.4rem;
    height: 2.4rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .agent {
    transition: none;
  }
  .agent--staged .agent-portrait__img,
  .agent--staged .agent-portrait__ghost--a,
  .agent--staged .agent-portrait__ghost--b,
  .agent--staged .agent-portrait::after {
    animation: none;
  }
  .agent-portrait__ghost {
    display: none;
  }
  .agent-progress__fill {
    animation: none;
  }
  .kit.is-armed .kit__panel.is-active {
    animation: none;
  }
  .kit__tab {
    transition: none;
  }
  .kit__tab:hover, .kit__tab:focus-visible {
    transform: none;
  }
  .kit__tab::before {
    transition: none;
  }
  .agent-rail__link:hover,
  .agent-rail__link:focus-visible {
    transform: none;
  }
  .agent-rail__nav:not(.is-spent):hover svg {
    transform: none;
  }
  .agent.is-locking::after {
    animation: none;
  }
}
/*
 * Index des agents — écran de sélection tactique.
 *
 * Le préfixe agents-index- is volontairement hermétique : cette feuille est
 * chargée uniquement par page-agents.php et ne touche ni les archives de
 * taxonomie, ni les composants globaux du thème.
 */
@property --agents-a {
  syntax: "<color>";
  inherits: true;
  initial-value: #ff4655;
}
@property --agents-b {
  syntax: "<color>";
  inherits: true;
  initial-value: #243447;
}
.agents-index {
  --agents-bg: #070b10;
  --agents-surface: #0c1219;
  --agents-ink: #f4f1e9;
  --agents-muted: rgba(235, 241, 247, 0.68);
  --agents-line: rgba(244, 241, 233, 0.14);
  --agents-line-strong: rgba(244, 241, 233, 0.28);
  --agents-red: #ff4655;
  --agents-ease: cubic-bezier(0.2, 0.75, 0.2, 1);
  --spot-x: 70%;
  --spot-y: 16%;
  position: relative;
  isolation: isolate;
  overflow: clip;
  color: var(--agents-ink);
  background: var(--agents-bg);
  transition: --agents-a 360ms var(--agents-ease), --agents-b 360ms var(--agents-ease);
}

.agents-index *,
.agents-index *::before,
.agents-index *::after {
  box-sizing: border-box;
}

.agents-index .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

.agents-index::before {
  position: fixed;
  z-index: -2;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.38;
  background: radial-gradient(42rem 42rem at var(--spot-x) var(--spot-y), color-mix(in srgb, var(--agents-a) 28%, transparent), transparent 70%), radial-gradient(55rem 38rem at 5% 78%, color-mix(in srgb, var(--agents-b) 24%, transparent), transparent 74%);
}

.agents-index__atmosphere {
  position: fixed;
  z-index: -1;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.agents-index__atmosphere::before {
  position: absolute;
  inset: 0;
  content: "";
  opacity: 0.035;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}

.agents-index__atmosphere span {
  position: absolute;
  width: min(36rem, 70vw);
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, 0.045);
  transform: rotate(45deg);
}

.agents-index__atmosphere span:nth-child(1) {
  top: 8%;
  right: -18rem;
}

.agents-index__atmosphere span:nth-child(2) {
  top: 48%;
  left: -26rem;
}

.agents-index__atmosphere span:nth-child(3) {
  right: 15%;
  bottom: -28rem;
}

.agents-index__signal {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 1.25rem;
  color: var(--agents-red);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.agents-index__signal span {
  color: var(--agents-ink);
  font-variant-numeric: tabular-nums;
}

.agents-index-hero {
  position: relative;
  min-height: calc(100vh - var(--header-height, 64px));
  min-height: calc(100svh - var(--header-height, 64px));
  overflow: visible;
  background: linear-gradient(90deg, rgba(7, 11, 16, 0.98) 0%, rgba(7, 11, 16, 0.82) 38%, rgba(7, 11, 16, 0.18) 72%), linear-gradient(0deg, #070b10 0%, transparent 38%);
}

.agents-index-hero::before,
.agents-index-hero::after {
  position: absolute;
  z-index: 1;
  content: "";
  pointer-events: none;
}

.agents-index-hero::before {
  inset: 0;
  opacity: 0.28;
  background: radial-gradient(circle at 76% 42%, color-mix(in srgb, var(--agents-a) 45%, transparent), transparent 29%), linear-gradient(126deg, transparent 0 56%, color-mix(in srgb, var(--agents-b) 38%, transparent) 56% 58%, transparent 58%);
}

.agents-index-hero::after {
  right: 3vw;
  bottom: 9rem;
  width: clamp(10rem, 18vw, 20rem);
  height: 3px;
  background: linear-gradient(90deg, var(--agents-red) 0 28%, rgba(255, 255, 255, 0.2) 28% 100%);
  transform: skewX(-38deg);
}

.agents-index-hero__grid {
  position: absolute;
  z-index: 0;
  inset: 0;
  opacity: 0.12;
  background-image: linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px);
  background-size: 5rem 5rem;
  mask-image: linear-gradient(90deg, black, transparent 75%);
}

.agents-index-hero__scan {
  position: absolute;
  z-index: 4;
  top: -20%;
  left: 0;
  width: 100%;
  height: 18%;
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(180deg, transparent, rgba(255, 255, 255, 0.065), transparent);
  animation: agents-index-scan 7s ease-in-out 1.1s infinite;
}

.agents-index-hero__backdrop {
  position: absolute;
  z-index: 0;
  top: -18%;
  right: -5%;
  width: min(70rem, 76vw);
  height: 125%;
  object-fit: contain;
  object-position: center;
  opacity: 0.17;
  filter: saturate(0.7) contrast(1.2);
  transform: rotate(-7deg) scale(1.08);
}

.agents-index-hero__inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(18rem, 0.8fr) minmax(28rem, 1.2fr);
  align-items: center;
  gap: clamp(1rem, 5vw, 6rem);
  min-height: calc(100vh - var(--header-height, 64px));
  min-height: calc(100svh - var(--header-height, 64px));
  padding-top: clamp(3rem, 8vh, 7rem);
  padding-bottom: clamp(8rem, 16vh, 11rem);
}

.agents-index-hero__copy {
  position: relative;
  z-index: 4;
  max-width: 38rem;
}

.agents-index-hero__title {
  max-width: 8ch;
  margin: 0;
  color: var(--agents-ink);
  font-size: clamp(4.75rem, 7.25vw, 8rem);
  line-height: 0.8;
  letter-spacing: 0.01em;
}

.agents-index-hero__title span {
  display: block;
  color: transparent;
  -webkit-text-stroke: 1px rgba(244, 241, 233, 0.82);
}

.agents-index-hero__lead {
  max-width: 35rem;
  margin: 2rem 0 0;
  color: var(--agents-muted);
  font-size: clamp(1rem, 1.3vw, 1.2rem);
  line-height: 1.65;
}

.agents-index-hero__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 36rem;
  margin: 2.25rem 0 0;
  border-top: 1px solid var(--agents-line);
  border-bottom: 1px solid var(--agents-line);
}

.agents-index-hero__stats div {
  display: flex;
  flex-direction: column-reverse;
  min-width: 0;
  padding: 1rem 0.85rem;
}

.agents-index-hero__stats div + div {
  border-left: 1px solid var(--agents-line);
}

.agents-index-hero__stats dt {
  overflow: hidden;
  color: var(--agents-muted);
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.13em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.agents-index-hero__stats dd {
  margin: 0 0 0.15rem;
  font-family: "League Gothic", sans-serif;
  font-size: 2rem;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.agents-index-hero__cta,
.agents-index-preview__identity > a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-height: 3.25rem;
  margin-top: 2rem;
  padding: 0.9rem 1.1rem 0.9rem 1.25rem;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.35);
  color: var(--agents-ink);
  background: rgba(7, 11, 16, 0.48);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-decoration: none;
  text-transform: uppercase;
  clip-path: polygon(0 0, calc(100% - 0.8rem) 0, 100% 0.8rem, 100% 100%, 0.8rem 100%, 0 calc(100% - 0.8rem));
  transition: color 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.agents-index-hero__cta::before,
.agents-index-preview__identity > a::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  background: var(--agents-red);
  transform: translateX(-102%);
  transition: transform 260ms var(--agents-ease);
}

.agents-index-hero__cta:hover,
.agents-index-hero__cta:focus-visible,
.agents-index-preview__identity > a:hover,
.agents-index-preview__identity > a:focus-visible {
  border-color: var(--agents-red);
  color: #fff;
  transform: translateY(-2px);
}

.agents-index-hero__cta:hover::before,
.agents-index-hero__cta:focus-visible::before,
.agents-index-preview__identity > a:hover::before,
.agents-index-preview__identity > a:focus-visible::before {
  transform: translateX(0);
}

.agents-index-hero__cta svg,
.agents-index-preview__identity > a svg {
  width: 1.15rem;
  height: 1.15rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
}

.agents-index-hero__visual {
  position: relative;
  align-self: stretch;
  min-height: 36rem;
  pointer-events: none;
}

.agents-index-hero__visual::before {
  position: absolute;
  z-index: 0;
  right: -4rem;
  bottom: 2rem;
  width: 92%;
  height: 82%;
  content: "";
  opacity: 0.48;
  background: linear-gradient(145deg, color-mix(in srgb, var(--agents-a) 72%, transparent), color-mix(in srgb, var(--agents-b) 58%, transparent));
  clip-path: polygon(22% 0, 100% 12%, 91% 100%, 0 90%);
}

.agents-index-hero__portrait {
  position: absolute;
  z-index: 2;
  right: -9%;
  bottom: -5.5rem;
  width: min(55rem, 68vw);
  height: calc(100% + 7rem);
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(0 2rem 2rem rgba(0, 0, 0, 0.46));
  transform: translate3d(calc(var(--hero-px, 0) * -0.7rem), calc(var(--hero-py, 0) * -0.45rem), 0);
  animation: agents-index-materialize 700ms var(--agents-ease) both;
  transition: transform 160ms ease-out;
}

.agents-index-hero__number {
  position: absolute;
  z-index: 1;
  top: 8%;
  right: -1rem;
  color: rgba(255, 255, 255, 0.055);
  font-family: "League Gothic", sans-serif;
  font-size: clamp(18rem, 34vw, 34rem);
  line-height: 0.75;
  letter-spacing: -0.04em;
}

.agents-index-hero__wordmark {
  position: absolute;
  z-index: 3;
  right: -1rem;
  bottom: 2.4rem;
  max-width: 100%;
  overflow: hidden;
  color: transparent;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(6rem, 11vw, 11rem);
  line-height: 0.78;
  letter-spacing: 0.03em;
  text-overflow: clip;
  text-transform: uppercase;
  white-space: nowrap;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.26);
}

.agents-index-hero__focus {
  position: absolute;
  z-index: 5;
  right: 0;
  bottom: 0;
  display: grid;
  grid-template-columns: auto auto;
  min-width: 13rem;
  padding: 0.9rem 1.1rem;
  border-left: 3px solid var(--agents-red);
  background: rgba(7, 11, 16, 0.84);
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.25);
}

.agents-index-hero__focus span {
  grid-column: 1/-1;
  color: var(--agents-muted);
  font-size: 0.61rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.agents-index-hero__focus strong {
  margin-top: 0.15rem;
  font-size: 1.05rem;
  text-transform: uppercase;
}

.agents-index-hero__focus small, .agents-index-hero__focus .small {
  align-self: end;
  margin: 0 0 0.1rem 1rem;
  color: var(--agents-muted);
}

.agents-index-marquee {
  position: absolute;
  z-index: 6;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  border-top: 1px solid var(--agents-line);
  border-bottom: 1px solid var(--agents-line);
  background: rgba(7, 11, 16, 0.82);
  transform: rotate(-1.2deg) scale(1.03);
}

.agents-index-marquee__track {
  display: flex;
  width: max-content;
  padding: 0.68rem 0;
  animation: agents-index-marquee 48s linear infinite;
}

.agents-index-marquee__track span {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

.agents-index-marquee b {
  font-family: "League Gothic", sans-serif;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.agents-index-marquee i {
  margin: 0 1.25rem;
  color: var(--agents-red);
  font-size: 0.48rem;
  font-style: normal;
}

.agents-index-directory {
  position: relative;
  padding: clamp(5rem, 9vw, 9rem) 0 clamp(6rem, 11vw, 11rem);
}

.agents-index-directory::before {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.16;
  background-image: linear-gradient(115deg, transparent 49.85%, rgba(255, 255, 255, 0.12) 50%, transparent 50.15%);
  background-size: 11rem 11rem;
}

.agents-index-directory > .container {
  position: relative;
  max-width: 96rem;
}

.agents-index-directory__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 31rem);
  align-items: end;
  gap: 3rem;
  margin-bottom: 2.75rem;
}

.agents-index-directory__header h2, .agents-index-directory__header .h2 {
  margin: 0;
  font-size: clamp(4rem, 7vw, 7rem);
  line-height: 0.85;
}

.agents-index-directory__header > p {
  margin: 0 0 0.35rem;
  padding-left: 1.25rem;
  border-left: 2px solid var(--agents-red);
  color: var(--agents-muted);
  line-height: 1.65;
}

.agents-index-toolbar {
  position: relative;
  z-index: 8;
  display: grid;
  grid-template-columns: minmax(15rem, 0.75fr) minmax(25rem, 1.55fr) auto;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2rem;
  padding: 0.75rem;
  border: 1px solid var(--agents-line);
  background: rgba(10, 16, 23, 0.9);
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.18);
}

@supports (backdrop-filter: blur(1px)) {
  .agents-index-toolbar {
    backdrop-filter: blur(14px);
  }
}
.agents-index-search {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 3.25rem;
  border: 1px solid var(--agents-line);
  background: rgba(255, 255, 255, 0.035);
}

.agents-index-search:focus-within {
  border-color: var(--agents-red);
  box-shadow: 0 0 0 2px rgba(255, 70, 85, 0.18);
}

.agents-index-search svg {
  flex: 0 0 auto;
  width: 1.1rem;
  height: 1.1rem;
  margin-left: 1rem;
  fill: none;
  stroke: var(--agents-muted);
  stroke-width: 1.8;
}

.agents-index-search input {
  min-width: 0;
  width: 100%;
  min-height: 3.1rem;
  padding: 0.6rem 3.2rem 0.6rem 0.8rem;
  border: 0;
  outline: 0;
  color: var(--agents-ink);
  background: transparent;
  font-size: 1rem;
}

.agents-index-search input::placeholder {
  color: rgba(235, 241, 247, 0.48);
}

.agents-index-search input::-webkit-search-cancel-button {
  filter: invert(1);
}

.agents-index-search kbd {
  position: absolute;
  right: 0.65rem;
  padding: 0.25rem 0.4rem;
  border: 1px solid var(--agents-line);
  border-radius: 0;
  color: rgba(235, 241, 247, 0.5);
  background: transparent;
  box-shadow: none;
  font-size: 0.57rem;
}

.agents-index-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.agents-index-filters button,
.agents-index-empty button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  padding: 0.55rem 0.8rem;
  border: 1px solid var(--agents-line);
  border-radius: 0;
  color: var(--agents-muted);
  background: transparent;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  cursor: pointer;
  transition: border-color 180ms ease, color 180ms ease, background 180ms ease, transform 180ms ease;
}

.agents-index-filters button:hover,
.agents-index-filters button:focus-visible,
.agents-index-filters button.is-active,
.agents-index-empty button:hover,
.agents-index-empty button:focus-visible {
  border-color: var(--agents-red);
  color: #fff;
  background: rgba(255, 70, 85, 0.13);
}

.agents-index-filters button:active,
.agents-index-empty button:active {
  transform: scale(0.97);
}

.agents-index-filters button span {
  color: rgba(235, 241, 247, 0.46);
  font-variant-numeric: tabular-nums;
}

.agents-index-filters .c-card__glyph {
  width: 0.95rem;
  height: 0.95rem;
  fill: currentColor;
}

.agents-index-results {
  margin: 0;
  padding: 0 0.35rem;
  color: var(--agents-muted);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-align: right;
  text-transform: uppercase;
  white-space: nowrap;
}

.agents-index-directory__layout {
  display: grid;
  grid-template-columns: minmax(20rem, 0.82fr) minmax(0, 1.5fr);
  align-items: start;
  gap: clamp(1.5rem, 3vw, 3rem);
}

.agents-index-preview {
  position: sticky;
  top: calc(var(--header-height, 64px) + 1.5rem);
  min-width: 0;
}

.agents-index-preview__frame {
  --preview-px: 0;
  --preview-py: 0;
  position: relative;
  height: calc(100vh - var(--header-height, 64px) - 3rem);
  height: calc(100svh - var(--header-height, 64px) - 3rem);
  min-height: 38rem;
  max-height: 52rem;
  overflow: hidden;
  border: 1px solid var(--agents-line-strong);
  background-color: #0b1118;
  background: radial-gradient(circle at 65% 36%, color-mix(in srgb, var(--agents-a) 42%, transparent), transparent 36%), linear-gradient(145deg, color-mix(in srgb, var(--agents-b) 26%, #0b1118), #080d13 68%);
  clip-path: polygon(0 0, calc(100% - 1.4rem) 0, 100% 1.4rem, 100% 100%, 1.4rem 100%, 0 calc(100% - 1.4rem));
  transition: background 360ms var(--agents-ease), border-color 180ms ease;
}

.agents-index-preview__frame::before {
  position: absolute;
  z-index: 1;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(0deg, rgba(7, 11, 16, 0.98) 0%, rgba(7, 11, 16, 0.5) 44%, transparent 70%), linear-gradient(90deg, rgba(255, 255, 255, 0.07) 1px, transparent 1px);
  background-size: auto, 25% 100%;
}

.agents-index-preview__frame::after {
  position: absolute;
  z-index: 7;
  top: 0;
  left: 0;
  width: 0.35rem;
  height: 24%;
  content: "";
  background: var(--agents-red);
}

.agents-index-preview__backdrop {
  position: absolute;
  z-index: 0;
  inset: -8%;
  opacity: 0.17;
  transform: translate3d(calc(var(--preview-px) * -0.35rem), calc(var(--preview-py) * -0.3rem), 0) rotate(-5deg);
  transition: opacity 140ms ease, transform 180ms ease-out;
}

.agents-index-preview__backdrop img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.agents-index-preview__crosshair {
  position: absolute;
  z-index: 2;
  top: 28%;
  left: 58%;
  width: 5rem;
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.agents-index-preview__crosshair::before,
.agents-index-preview__crosshair::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  background: rgba(255, 255, 255, 0.24);
  transform: translate(-50%, -50%);
}

.agents-index-preview__crosshair::before {
  width: 7rem;
  height: 1px;
}

.agents-index-preview__crosshair::after {
  width: 1px;
  height: 7rem;
}

.agents-index-preview__number {
  position: absolute;
  z-index: 0;
  top: 1rem;
  right: 1rem;
  color: rgba(255, 255, 255, 0.075);
  font-family: "League Gothic", sans-serif;
  font-size: clamp(10rem, 18vw, 19rem);
  line-height: 0.8;
  font-variant-numeric: tabular-nums;
}

.agents-index-preview__figure {
  position: absolute;
  z-index: 3;
  inset: 0;
  pointer-events: none;
  transform: translate3d(calc(var(--preview-px) * -0.8rem), calc(var(--preview-py) * -0.55rem), 0);
  transition: opacity 140ms ease, transform 180ms ease-out;
}

.agents-index-preview__figure img {
  width: 112%;
  height: 76%;
  margin-left: -5%;
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(0 1.5rem 1.5rem rgba(0, 0, 0, 0.5));
}

.agents-index-preview.is-changing .agents-index-preview__figure,
.agents-index-preview.is-changing .agents-index-preview__backdrop {
  opacity: 0;
}

.agents-index-preview.is-changing .agents-index-preview__figure {
  transform: translate3d(calc(var(--preview-px) * -0.8rem + 1.2rem), calc(var(--preview-py) * -0.55rem), 0);
}

.agents-index-preview__identity {
  position: absolute;
  z-index: 6;
  right: 2rem;
  bottom: 2rem;
  left: 2rem;
}

.agents-index-preview__role {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.agents-index-preview__role::after {
  height: 1px;
  flex: 1 1 auto;
  content: "";
  background: var(--agents-line-strong);
}

.agents-index-preview__role img {
  width: 1.2rem;
  height: 1.2rem;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.agents-index-preview__identity h3, .agents-index-preview__identity .h3 {
  margin: 0.3rem 0 0;
  font-size: clamp(4.5rem, 7vw, 7rem);
  line-height: 0.86;
}

.agents-index-preview__identity > p {
  display: -webkit-box;
  max-width: 34rem;
  margin: 1rem 0 0;
  overflow: hidden;
  color: var(--agents-muted);
  font-size: 0.92rem;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.agents-index-preview__abilities {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1.1rem;
}

.agents-index-preview__abilities span {
  position: relative;
  display: grid;
  place-items: center;
  width: 2.8rem;
  height: 2.8rem;
  border: 1px solid var(--agents-line);
  background: rgba(255, 255, 255, 0.04);
}

.agents-index-preview__abilities img {
  width: 1.65rem;
  height: 1.65rem;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.agents-index-preview__abilities b {
  position: absolute;
  top: 0.1rem;
  left: 0.2rem;
  color: rgba(255, 255, 255, 0.48);
  font-size: 0.5rem;
  line-height: 1;
}

.agents-index-preview__identity > a {
  width: 100%;
  margin-top: 1.15rem;
}

.agents-index-roster {
  min-width: 0;
}

.agents-index-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.9rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.agents-index-grid > li {
  min-width: 0;
}

.agents-index-grid > li[hidden] {
  display: none;
}

.agents-index-card {
  position: relative;
  display: block;
  min-height: 23rem;
  overflow: hidden;
  border: 1px solid var(--agents-line);
  color: var(--agents-ink);
  background-color: #0a1016;
  background: radial-gradient(circle at 65% 28%, color-mix(in srgb, var(--card-a) 74%, transparent), transparent 45%), linear-gradient(155deg, color-mix(in srgb, var(--card-b) 52%, #111922), #0a1016 67%);
  text-decoration: none;
  clip-path: polygon(0 0, calc(100% - 0.8rem) 0, 100% 0.8rem, 100% 100%, 0.8rem 100%, 0 calc(100% - 0.8rem));
  transition: border-color 180ms ease, transform 240ms var(--agents-ease), box-shadow 240ms ease;
}

.agents-index-card::before {
  position: absolute;
  z-index: 3;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(0deg, rgba(5, 8, 12, 0.96), transparent 48%), linear-gradient(90deg, rgba(255, 255, 255, 0.075) 1px, transparent 1px);
  background-size: auto, 25% 100%;
}

.agents-index-card::after {
  position: absolute;
  z-index: 6;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  content: "";
  background: var(--agents-red);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 260ms var(--agents-ease);
}

.agents-index-card:hover,
.agents-index-card:focus-visible,
.agents-index-card.is-active {
  z-index: 2;
  border-color: rgba(255, 255, 255, 0.42);
  color: #fff;
  box-shadow: 0 1.2rem 2.5rem rgba(0, 0, 0, 0.32);
  transform: translateY(-0.35rem);
}

.agents-index-card:focus-visible {
  outline: 3px solid var(--agents-red);
  outline-offset: 3px;
}

.agents-index-card:hover::after,
.agents-index-card:focus-visible::after,
.agents-index-card.is-active::after {
  transform: scaleX(1);
}

.agents-index-card__topline {
  position: absolute;
  z-index: 5;
  top: 0.8rem;
  right: 0.8rem;
  left: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: rgba(255, 255, 255, 0.62);
}

.agents-index-card__topline b {
  font-family: "League Gothic", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.agents-index-card__topline i {
  font-size: 0.46rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.12em;
}

.agents-index-card__shape {
  position: absolute;
  z-index: 0;
  top: 14%;
  right: -22%;
  width: 105%;
  height: 72%;
  opacity: 0.32;
  background: linear-gradient(145deg, var(--card-a), var(--card-b));
  clip-path: polygon(28% 0, 100% 12%, 79% 100%, 0 82%);
  transform: rotate(-7deg);
  transition: transform 380ms var(--agents-ease), opacity 220ms ease;
}

.agents-index-card:hover .agents-index-card__shape,
.agents-index-card:focus-visible .agents-index-card__shape,
.agents-index-card.is-active .agents-index-card__shape {
  opacity: 0.52;
  transform: rotate(-3deg) scale(1.06);
}

.agents-index-card__portrait {
  position: absolute;
  z-index: 2;
  top: 1.5rem;
  left: 50%;
  width: 145%;
  height: calc(100% - 1.5rem);
  max-width: none;
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(0 1rem 1rem rgba(0, 0, 0, 0.38));
  transform: translateX(-50%) scale(1.02);
  transform-origin: center bottom;
  transition: transform 320ms var(--agents-ease), filter 320ms ease;
}

.agents-index-card__portrait--icon {
  top: 25%;
  width: 72%;
  height: 52%;
  object-position: center;
}

.agents-index-card:hover .agents-index-card__portrait,
.agents-index-card:focus-visible .agents-index-card__portrait,
.agents-index-card.is-active .agents-index-card__portrait {
  filter: drop-shadow(0 1.5rem 1.2rem rgba(0, 0, 0, 0.48));
  transform: translateX(-50%) scale(1.085);
}

.agents-index-card__identity {
  position: absolute;
  z-index: 5;
  right: 1rem;
  bottom: 1rem;
  left: 1rem;
}

.agents-index-card__identity small, .agents-index-card__identity .small {
  display: block;
  color: rgba(255, 255, 255, 0.64);
  font-size: 0.57rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.agents-index-card__identity strong {
  display: block;
  overflow: hidden;
  font-size: clamp(2.7rem, 3.5vw, 4rem);
  font-weight: 400;
  line-height: 0.9;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.agents-index-card__corner {
  position: absolute;
  z-index: 5;
  right: 0.8rem;
  bottom: 0.8rem;
  display: none;
}

.agents-index-card__corner .c-card__glyph {
  width: 1.15rem;
  height: 1.15rem;
  fill: rgba(255, 255, 255, 0.72);
}

.agents-index-empty {
  display: grid;
  justify-items: center;
  min-height: 24rem;
  padding: 4rem 1.5rem;
  border: 1px solid var(--agents-line);
  text-align: center;
  place-content: center;
}

.agents-index-empty[hidden] {
  display: none;
}

.agents-index-empty > span {
  color: transparent;
  font-family: "League Gothic", sans-serif;
  font-size: 8rem;
  line-height: 0.8;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.2);
}

.agents-index-empty h3, .agents-index-empty .h3 {
  margin: 1rem 0 0;
  font-size: 3rem;
}

.agents-index-empty p {
  margin: 0.5rem 0 1.5rem;
  color: var(--agents-muted);
}

.agents-index-empty--server {
  position: relative;
}

.agents-index-transition {
  position: fixed;
  z-index: 100000;
  inset: 0;
  display: grid;
  place-content: center;
  pointer-events: none;
  color: #fff;
  background: var(--agents-red);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 280ms var(--agents-ease);
}

.agents-index-transition::before,
.agents-index-transition::after {
  position: absolute;
  content: "";
  background: #fff;
}

.agents-index-transition::before {
  top: 0;
  bottom: 0;
  left: 16%;
  width: 1px;
  opacity: 0.22;
}

.agents-index-transition::after {
  top: 50%;
  right: 0;
  left: 0;
  height: 1px;
  opacity: 0.22;
}

.agents-index-transition span {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.agents-index-transition i {
  display: block;
  width: 0;
  height: 2px;
  margin-top: 0.85rem;
  background: #fff;
  transition: width 200ms ease 120ms;
}

.agents-index.is-deploying .agents-index-transition {
  transform: scaleX(1);
}

.agents-index.is-deploying .agents-index-transition i {
  width: 100%;
}

.agents-index.js-agents [data-agents-reveal] {
  opacity: 0;
  transform: translateY(1.25rem);
  transition: opacity 440ms var(--agents-ease), transform 440ms var(--agents-ease);
}

.agents-index.js-agents [data-agents-reveal].is-visible {
  opacity: 1;
  transform: translateY(0);
}

.agents-index.js-agents .agents-index-grid > li {
  opacity: 0;
  transform: translateY(1rem);
  transition: opacity 360ms var(--agents-ease) calc(var(--agent-delay) * 34ms), transform 360ms var(--agents-ease) calc(var(--agent-delay) * 34ms);
}

.agents-index.js-agents .agents-index-grid > li.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@keyframes agents-index-materialize {
  from {
    opacity: 0;
    transform: translate3d(2rem, 1rem, 0) scale(1.04);
    filter: blur(8px) drop-shadow(0 2rem 2rem rgba(0, 0, 0, 0));
  }
  to {
    opacity: 1;
  }
}
@keyframes agents-index-scan {
  0%, 8% {
    opacity: 0;
    transform: translateY(0);
  }
  14% {
    opacity: 1;
  }
  45%, 100% {
    opacity: 0;
    transform: translateY(750%);
  }
}
@keyframes agents-index-marquee {
  to {
    transform: translateX(-50%);
  }
}
@media (max-width: 1199.98px) {
  .agents-index-toolbar {
    grid-template-columns: minmax(15rem, 0.85fr) minmax(0, 1.4fr);
  }
  .agents-index-results {
    grid-column: 1/-1;
    text-align: left;
  }
  .agents-index-directory__layout {
    grid-template-columns: minmax(20rem, 0.72fr) minmax(0, 1fr);
  }
  .agents-index-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .agents-index-card {
    min-height: 25rem;
  }
}
@media (max-width: 991.98px) {
  .agents-index-hero__inner {
    grid-template-columns: minmax(16rem, 0.85fr) minmax(20rem, 1.15fr);
    padding-bottom: 8rem;
  }
  .agents-index-hero__visual {
    min-height: 30rem;
  }
  .agents-index-hero__portrait {
    right: -28%;
    width: 48rem;
  }
  .agents-index-directory__header {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .agents-index-directory__header > p {
    max-width: 38rem;
  }
  .agents-index-toolbar {
    position: sticky;
    top: calc(var(--header-height, 64px) + 0.5rem);
  }
  .agents-index-directory__layout {
    display: block;
  }
  .agents-index-preview {
    display: none;
  }
  .agents-index-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .agents-index-card {
    min-height: 22rem;
  }
}
@media (max-width: 767.98px) {
  .agents-index-hero {
    min-height: 46rem;
  }
  .agents-index-hero__inner {
    display: block;
    min-height: 46rem;
    padding-top: 4rem;
    padding-bottom: 7rem;
  }
  .agents-index-hero__copy {
    isolation: isolate;
    max-width: 28rem;
  }
  .agents-index-hero__copy::before {
    position: absolute;
    z-index: -1;
    inset: -1.5rem -2rem;
    content: "";
    pointer-events: none;
    background: linear-gradient(90deg, rgba(7, 11, 16, 0.92), rgba(7, 11, 16, 0.68) 70%, transparent);
  }
  .agents-index-hero__title {
    font-size: clamp(4.25rem, 19vw, 6.5rem);
  }
  .agents-index-hero__lead {
    max-width: 25rem;
    margin-top: 1.5rem;
  }
  .agents-index-hero__stats {
    max-width: 27rem;
    margin-top: 1.5rem;
  }
  .agents-index-hero__cta {
    margin-top: 1.5rem;
  }
  .agents-index-hero__visual {
    position: absolute;
    z-index: -1;
    inset: 10rem -10rem 0 25%;
    min-height: 0;
    opacity: 0.56;
  }
  .agents-index-hero__visual::before,
  .agents-index-hero__focus,
  .agents-index-hero__wordmark {
    display: none;
  }
  .agents-index-hero__portrait {
    right: -4rem;
    bottom: -5rem;
    width: 48rem;
    height: 42rem;
  }
  .agents-index-hero__number {
    top: 12rem;
    right: 7rem;
    font-size: 20rem;
  }
  .agents-index-hero__backdrop {
    right: -45%;
    width: 100%;
    opacity: 0.1;
  }
  .agents-index-directory {
    padding-top: 5rem;
  }
  .agents-index-directory__header h2, .agents-index-directory__header .h2 {
    font-size: clamp(3.8rem, 15vw, 6rem);
  }
  .agents-index-toolbar {
    display: block;
    margin-right: -0.5rem;
    margin-left: -0.5rem;
  }
  .agents-index-filters {
    flex-wrap: nowrap;
    margin-top: 0.65rem;
    padding-bottom: 0.15rem;
    overflow-x: auto;
    scrollbar-width: thin;
  }
  .agents-index-filters button {
    flex: 0 0 auto;
  }
  .agents-index-results {
    margin-top: 0.6rem;
  }
  .agents-index-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
  }
  .agents-index-card {
    min-height: clamp(18rem, 60vw, 23rem);
  }
  .agents-index-card__portrait {
    width: 158%;
  }
  .agents-index-card__identity strong {
    font-size: clamp(2.2rem, 9vw, 3.4rem);
  }
}
@media (max-width: 479.98px) {
  .agents-index-hero__stats div {
    padding-right: 0.45rem;
    padding-left: 0.45rem;
  }
  .agents-index-hero__stats dt {
    font-size: 0.54rem;
    letter-spacing: 0.08em;
  }
  .agents-index-hero__cta {
    width: 100%;
  }
  .agents-index-directory > .container {
    padding-right: 0.8rem;
    padding-left: 0.8rem;
  }
  .agents-index-directory__header > p {
    font-size: 0.92rem;
  }
  .agents-index-grid {
    gap: 0.45rem;
  }
  .agents-index-card {
    min-height: 17rem;
  }
  .agents-index-card__topline {
    top: 0.6rem;
    right: 0.6rem;
    left: 0.6rem;
  }
  .agents-index-card__topline i {
    display: none;
  }
  .agents-index-card__identity {
    right: 0.65rem;
    bottom: 0.7rem;
    left: 0.65rem;
  }
  .agents-index-card__identity strong {
    font-size: clamp(2rem, 9vw, 2.8rem);
  }
}
@media (prefers-reduced-motion: reduce) {
  .agents-index,
  .agents-index *,
  .agents-index *::before,
  .agents-index *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
  .agents-index-marquee__track {
    transform: none;
  }
}
@media (forced-colors: active) {
  .agents-index-card,
  .agents-index-toolbar,
  .agents-index-preview__frame,
  .agents-index-search,
  .agents-index-filters button {
    border: 1px solid CanvasText;
  }
  .agents-index-card:focus-visible,
  .agents-index-filters button:focus-visible {
    outline: 3px solid Highlight;
  }
}
.card-sheet {
  --sheet-accent: #9AA6B2;
  --sheet-accent-rgb: 154, 166, 178;
  position: relative;
  background-color: #0B131B;
  color: #ECE8E1;
}

.card-sheet--standard {
  --sheet-accent: #9AA6B2;
  --sheet-accent-rgb: 154, 166, 178;
}

.card-sheet--charged {
  --sheet-accent: #4FE3D8;
  --sheet-accent-rgb: 79, 227, 216;
}

.card-sheet--overcharged {
  --sheet-accent: #FF4655;
  --sheet-accent-rgb: 255, 70, 85;
}

.card-sheet--sublimated {
  --sheet-accent: #F0C24B;
  --sheet-accent-rgb: 240, 194, 75;
}

.card-sheet--radiant {
  --sheet-accent: #BE96FF;
  --sheet-accent-rgb: 190, 150, 255;
}

.card-sheet--locked {
  --sheet-accent: #5A6672;
  --sheet-accent-rgb: 90, 102, 114;
}

.card-sheet__hero {
  position: relative;
  overflow: hidden;
  padding: 2.5rem 0 4rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.1);
  background: radial-gradient(120% 80% at 22% 42%, rgba(var(--sheet-accent-rgb), 0.14), transparent 58%), linear-gradient(168deg, #0D161F 0%, #0B131B 55%, #080E14 100%);
}
.card-sheet__hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 8rem;
  height: 2px;
  background-color: var(--sheet-accent);
}
@media (min-width: 992px) {
  .card-sheet__hero {
    padding: 3.5rem 0 5.5rem;
  }
}

.card-sheet__container {
  position: relative;
  z-index: 1;
}

.card-sheet__backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  user-select: none;
}

.card-sheet__grid {
  position: absolute;
  inset: 0;
  opacity: 0.5;
  background-image: linear-gradient(rgba(236, 232, 225, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(236, 232, 225, 0.04) 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: linear-gradient(105deg, #000 5%, transparent 62%);
  mask-image: linear-gradient(105deg, #000 5%, transparent 62%);
}

.card-sheet__beam {
  position: absolute;
  top: -30%;
  left: -10%;
  width: 55%;
  height: 160%;
  background: linear-gradient(101deg, transparent 42%, rgba(var(--sheet-accent-rgb), 0.07) 50%, transparent 58%);
  transform: rotate(-4deg);
}

.card-sheet__watermark {
  position: absolute;
  right: -0.06em;
  bottom: -0.22em;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(9rem, 17vw, 19rem);
  line-height: 0.72;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: transparent;
  -webkit-text-stroke: 1px rgba(var(--sheet-accent-rgb), 0.16);
}
@media (max-width: 991.98px) {
  .card-sheet__watermark {
    display: none;
  }
}

.card-sheet__back-row {
  position: relative;
  z-index: 1;
  margin-bottom: 2rem;
}

.card-sheet__back {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-decoration: none;
  color: #8C97A2;
  transition: color 150ms ease-out;
}
.card-sheet__back:hover, .card-sheet__back:focus-visible {
  color: #ECE8E1;
}
.card-sheet__back:hover .card-sheet__back-arrow {
  transform: translateX(-3px);
}

.card-sheet__back-arrow {
  width: 0.45em;
  height: 0.45em;
  border-left: 2px solid var(--sheet-accent);
  border-bottom: 2px solid var(--sheet-accent);
  transform: rotate(45deg);
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.card-sheet__stage {
  position: relative;
  padding: 2.5rem 0 3.5rem;
  perspective: 1400px;
}

.card-sheet__halo {
  position: absolute;
  top: 42%;
  left: 50%;
  width: min(30rem, 118%);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(var(--sheet-accent-rgb), 0.3) 0%, rgba(var(--sheet-accent-rgb), 0.09) 38%, transparent 70%);
  filter: blur(14px);
  pointer-events: none;
}

.card-sheet__card {
  position: relative;
  z-index: 2;
  transform: rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
  transition: transform 300ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.card-sheet__card .c-card-shell {
  max-width: 21rem;
}
.card-sheet__card .c-card-slot:not(.c-card--radiant):hover .c-card-shell {
  transform: none;
}

.card-sheet--radiant .card-sheet__card {
  transform: none;
}

.card-sheet__pedestal {
  position: absolute;
  bottom: 1.5rem;
  left: 50%;
  z-index: 1;
  width: min(24rem, 96%);
  height: 4.5rem;
  transform: translateX(-50%);
  background: radial-gradient(ellipse 50% 50% at 50% 50%, rgba(var(--sheet-accent-rgb), 0.35) 0%, rgba(var(--sheet-accent-rgb), 0.08) 45%, transparent 72%);
  filter: blur(6px);
  pointer-events: none;
}
.card-sheet__pedestal::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 12%;
  right: 12%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--sheet-accent-rgb), 0.5), transparent);
}

.card-sheet__identity {
  max-width: 34rem;
}

.card-sheet__eyebrow {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
  color: var(--sheet-accent);
}
.card-sheet__eyebrow::before {
  margin-right: 0;
}

.card-sheet__eyebrow-sep {
  width: 0.3rem;
  height: 0.3rem;
  background-color: currentColor;
  transform: rotate(45deg);
}

.card-sheet__title {
  margin: 0;
  font-size: clamp(3.25rem, 9vw, 6rem);
  line-height: 0.9;
  color: #ECE8E1;
  overflow-wrap: break-word;
}

.card-sheet__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 1.5rem 0 0;
  padding: 0;
  list-style: none;
}

.card-sheet__fact {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  display: inline-flex;
  background-color: rgba(236, 232, 225, 0.05);
  border-left: 2px solid rgba(var(--sheet-accent-rgb), 0.55);
  font-size: 0.8125rem;
}

.card-sheet__fact-inner {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 0.85rem;
  color: inherit;
  text-decoration: none;
}

.card-sheet__fact--linked {
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.card-sheet__fact--linked:hover, .card-sheet__fact--linked:focus-within {
  background-color: rgba(236, 232, 225, 0.09);
  border-left-color: #FF4655;
}
.card-sheet__fact--linked:hover .card-sheet__fact-value, .card-sheet__fact--linked:focus-within .card-sheet__fact-value {
  color: #FF4655;
}

.card-sheet__fact-glyph {
  display: flex;
  width: 1rem;
  height: 1rem;
  color: var(--sheet-accent);
}
.card-sheet__fact-glyph .c-card__glyph {
  width: 100%;
  height: 100%;
  transform: none;
}

.card-sheet__fact-label {
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.6875rem;
  color: #8C97A2;
}

.card-sheet__fact-value {
  font-weight: 600;
  color: #ECE8E1;
}

.card-sheet__fact--finish {
  border-left-color: rgba(var(--sheet-accent-rgb), 0.8);
}
.card-sheet__fact--finish:focus-within {
  box-shadow: inset 0 0 0 2px var(--sheet-accent);
}

.card-sheet__finish-link,
.card-sheet__finish-picker {
  min-height: 2.75rem;
}

.card-sheet__finish-link:focus-visible {
  outline: 0;
}

.card-sheet__finish-picker {
  margin: 0;
}

.card-sheet__finish-picker-control {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-width: 8.75rem;
}

.card-sheet__finish-select {
  width: 100%;
  min-height: 2rem;
  padding: 0 1.15rem 0 0;
  border: 0;
  appearance: none;
  background: transparent;
  color: #ECE8E1;
  cursor: pointer;
  font: inherit;
  font-weight: 600;
}
.card-sheet__finish-select:focus-visible {
  outline: 0;
}
.card-sheet__finish-select:disabled {
  cursor: wait;
  opacity: 0.7;
}
.card-sheet__finish-select option {
  background: #080E14;
  color: #ECE8E1;
}

.card-sheet__finish-chevron {
  position: absolute;
  top: 50%;
  right: 0.1rem;
  width: 0.45rem;
  height: 0.45rem;
  border-right: 1px solid var(--sheet-accent);
  border-bottom: 1px solid var(--sheet-accent);
  pointer-events: none;
  transform: translateY(-70%) rotate(45deg);
}

.card-sheet__lede {
  max-width: 32rem;
  margin-top: 1.5rem;
  color: rgba(236, 232, 225, 0.7);
  line-height: 1.7;
}
.card-sheet__lede p:last-child {
  margin-bottom: 0;
}

.card-sheet__status {
  display: flex;
  flex-wrap: wrap;
  margin-top: 2.25rem;
  border-top: 1px solid rgba(236, 232, 225, 0.1);
  border-bottom: 1px solid rgba(236, 232, 225, 0.1);
}

.card-sheet__status-item {
  flex: 1 1 7rem;
  padding: 1rem 1.25rem;
}
.card-sheet__status-item + .card-sheet__status-item {
  border-left: 1px solid rgba(236, 232, 225, 0.1);
}
.card-sheet__status-item:first-child {
  padding-left: 0;
}

.card-sheet__status-value {
  display: block;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
  color: #ECE8E1;
}

.card-sheet__status-value--marks {
  display: flex;
  align-items: center;
  min-height: 2.1rem;
}

.card-sheet__status-unit {
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  margin-left: 0.15em;
  vertical-align: 0.15em;
  background-color: var(--sheet-accent);
  transform: rotate(45deg);
}

.card-sheet__status-label {
  display: block;
  margin-top: 0.15rem;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #8C97A2;
}

.card-sheet__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 1.5rem;
  margin: 1.75rem 0 0;
}

.card-sheet__link {
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-decoration: none;
  color: #8C97A2;
  border-bottom: 1px solid rgba(var(--sheet-accent-rgb), 0.4);
  transition: color 150ms ease-out, border-color 150ms ease-out;
}
.card-sheet__link:hover, .card-sheet__link:focus-visible {
  color: #ECE8E1;
  border-bottom-color: var(--sheet-accent);
}

.card-sheet__showcase {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  min-height: 3rem;
  max-width: 100%;
  padding: 0.85rem 1.2rem;
  border: 1px solid rgba(var(--sheet-accent-rgb), 0.6);
  border-left: 3px solid var(--sheet-accent);
  border-radius: 0;
  background: rgba(var(--sheet-accent-rgb), 0.12);
  color: #ECE8E1;
  font: inherit;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}
.card-sheet__showcase::before {
  content: "";
  flex: 0 0 1rem;
  width: 1rem;
  height: 1rem;
  border: 1px solid currentColor;
  background: linear-gradient(currentColor, currentColor) center/1px 100% no-repeat, linear-gradient(currentColor, currentColor) center/100% 1px no-repeat;
}
.card-sheet__showcase:hover:not(:disabled) {
  background-color: rgba(var(--sheet-accent-rgb), 0.24);
  border-color: var(--sheet-accent);
}
.card-sheet__showcase:focus-visible {
  outline: 2px solid #ECE8E1;
  outline-offset: 4px;
}
.card-sheet__showcase[aria-pressed=true] {
  border-color: var(--sheet-accent);
  background-color: var(--sheet-accent);
  color: #080E14;
}
.card-sheet__showcase[aria-pressed=true]:hover:not(:disabled) {
  background-color: rgba(var(--sheet-accent-rgb), 0.85);
}
.card-sheet__showcase:disabled {
  opacity: 0.6;
  cursor: wait;
}
@media (prefers-reduced-motion: reduce) {
  .card-sheet__showcase {
    transition: none;
  }
}

.card-sheet__missing {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  margin-top: 2.25rem;
  padding: 1.5rem 1.75rem;
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
  border-left: 2px solid var(--sheet-accent);
}

.card-sheet__missing-title {
  margin-bottom: 0.35rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--sheet-accent);
}

.card-sheet__missing-text {
  margin-bottom: 0;
  color: rgba(236, 232, 225, 0.7);
}

.qmarks {
  display: inline-flex;
  align-items: center;
  gap: 0.15em;
  color: var(--sheet-accent);
}

.qmarks__star {
  width: 0.95rem;
  height: 0.95rem;
  fill: currentColor;
}

.qmarks--lg .qmarks__star {
  width: 1.35rem;
  height: 1.35rem;
}

.qmarks.is-unrated {
  color: #8C97A2;
}

.qmarks__unrated {
  line-height: 1;
}

.card-sheet__vault {
  position: relative;
  padding: 4rem 0 5rem;
  background-color: #080E14;
}
@media (min-width: 992px) {
  .card-sheet__vault {
    padding: 5.5rem 0 7rem;
  }
}

.card-sheet__vault[data-vault-mode=sell],
.vault-dock[data-vault-mode=sell] {
  --vault-action-color: var(--sheet-accent);
  --vault-action-rgb: var(--sheet-accent-rgb);
}

.card-sheet__vault[data-vault-mode=fragments],
.vault-dock[data-vault-mode=fragments] {
  --vault-action-color: var(--vault-fragment-color);
  --vault-action-rgb: var(--vault-fragment-rgb);
}

.card-sheet__vault[data-vault-mode=gift],
.vault-dock[data-vault-mode=gift] {
  --vault-action-color: #7DD3FC;
  --vault-action-rgb: 125, 211, 252;
}

.vault-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.25rem 2rem;
  margin-bottom: 2rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.1);
}

.vault-head__intro {
  flex: 1 1 20rem;
  min-width: 0;
}

.vault-head__eyebrow {
  margin-bottom: 0.5rem;
  color: var(--sheet-accent);
}

.vault-head__title {
  margin-bottom: 0.5rem;
  font-size: clamp(2rem, 4vw, 2.75rem);
  color: #ECE8E1;
}

.vault-head__lead {
  max-width: 32rem;
  margin: 0;
  font-size: 0.9375rem;
  color: #8C97A2;
}
.vault-head__lead strong {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--vault-action-color);
}

.vault-head__unit {
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  margin: 0 0.25em 0 0.05em;
  background-color: var(--sheet-accent);
  transform: rotate(45deg);
}

.vault-head__tool {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  padding: 0.55rem 1rem;
  background: transparent;
  border: 1px solid rgba(236, 232, 225, 0.2);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(236, 232, 225, 0.75);
  transition: background-color 150ms ease-out, border-color 150ms ease-out, color 150ms ease-out;
}
.vault-head__tool:hover, .vault-head__tool:focus-visible {
  background-color: rgba(236, 232, 225, 0.07);
  border-color: rgba(var(--vault-action-rgb), 0.6);
  color: #ECE8E1;
}
.vault-head__tool:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.vault-mode-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 52rem;
  margin: 0 0 2rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.1);
}

.vault-mode-tab {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  min-height: 3.25rem;
  padding: 0.75rem 1rem;
  background: transparent;
  border: 0;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(236, 232, 225, 0.55);
  transition: background-color 150ms ease-out, color 150ms ease-out;
}
.vault-mode-tab::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 2px;
  background-color: transparent;
  transition: background-color 150ms ease-out;
}
.vault-mode-tab small, .vault-mode-tab .small {
  font-size: 0.625rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: rgba(236, 232, 225, 0.4);
}
.vault-mode-tab:hover:not(:disabled), .vault-mode-tab:focus-visible {
  background-color: rgba(236, 232, 225, 0.04);
  color: #ECE8E1;
}
.vault-mode-tab:focus-visible {
  outline: 2px solid var(--vault-action-color);
  outline-offset: 2px;
}
.vault-mode-tab.is-active {
  color: var(--vault-action-color);
}
.vault-mode-tab.is-active::after {
  background-color: var(--vault-action-color);
}
.vault-mode-tab:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.vault-unit {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
}
.vault-unit[hidden] {
  display: none;
}

.vault-unit--radianite::before {
  content: "";
  width: 0.55rem;
  height: 0.55rem;
  background-color: var(--sheet-accent);
  transform: rotate(45deg);
}

.vault-unit--fragment {
  width: 1.5rem;
  height: 1.5rem;
}
.vault-unit--fragment img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.vault-tile {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  container-type: inline-size;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
  overflow: hidden;
  transition: background-color 150ms ease-out, border-color 150ms ease-out, transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.vault-tile::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 2px;
  background-color: rgba(var(--sheet-accent-rgb), 0.35);
  transition: background-color 150ms ease-out;
}
@media (hover: hover) {
  .vault-tile:hover {
    background-color: rgba(236, 232, 225, 0.06);
    border-color: rgba(var(--sheet-accent-rgb), 0.4);
    transform: translateY(-3px);
  }
}
.vault-tile:focus-within {
  border-color: rgba(var(--vault-action-rgb), 0.6);
}
.vault-tile.is-selected {
  background-color: rgba(var(--vault-action-rgb), 0.09);
  border-color: var(--vault-action-color);
}
.vault-tile.is-selected::before {
  background-color: var(--vault-action-color);
}
.vault-tile.is-unavailable .vault-tile__body {
  cursor: not-allowed;
}
.vault-tile.is-unavailable .vault-tile__check,
.vault-tile.is-unavailable .vault-tile__foot {
  opacity: 0.38;
}

.vault-tile--featured {
  background: radial-gradient(120% 100% at 100% 0%, rgba(var(--sheet-accent-rgb), 0.16), transparent 62%), rgba(236, 232, 225, 0.035);
  border-color: rgba(var(--sheet-accent-rgb), 0.3);
}
.vault-tile--featured::before {
  background-color: var(--sheet-accent);
}

.vault-tile__body {
  position: relative;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem 1.25rem 1.25rem;
  cursor: pointer;
}

.vault-tile__check {
  position: absolute;
  top: 1.25rem;
  right: 1.15rem;
  width: 1.05rem;
  height: 1.05rem;
  background-color: rgba(236, 232, 225, 0.06);
  border: 1px solid rgba(236, 232, 225, 0.3);
  transition: background-color 150ms ease-out, border-color 150ms ease-out;
}
.vault-tile__check::after {
  content: "";
  position: absolute;
  top: 8%;
  left: 32%;
  width: 30%;
  height: 60%;
  border-right: 2px solid #0F1923;
  border-bottom: 2px solid #0F1923;
  transform: rotate(45deg) scale(0);
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.vault-tile.is-selected .vault-tile__check {
  background-color: var(--vault-action-color);
  border-color: var(--vault-action-color);
}
.vault-tile.is-selected .vault-tile__check::after {
  transform: rotate(45deg) scale(1);
}

.vault-tile__flag {
  display: block;
  padding-right: 2rem;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #8C97A2;
}

.vault-tile--featured .vault-tile__flag {
  color: var(--sheet-accent);
}

.vault-tile__ref {
  margin-left: 0.4em;
  font-variant-numeric: tabular-nums;
  color: rgba(236, 232, 225, 0.45);
}

.vault-tile__quality {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.vault-tile__odds {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-variant-numeric: tabular-nums;
  color: rgba(236, 232, 225, 0.4);
}

.vault-tile__meta {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  margin-top: auto;
  padding-top: 0.25rem;
}

.vault-tile__meta-item {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.vault-tile__meta-label {
  font-size: 0.5625rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(236, 232, 225, 0.35);
}

.vault-tile__meta-value {
  font-size: 0.8125rem;
  color: rgba(236, 232, 225, 0.75);
}

.vault-source {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  padding: 0.2rem 0.5rem;
  background-color: rgba(236, 232, 225, 0.07);
  border-left: 2px solid rgba(236, 232, 225, 0.25);
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(236, 232, 225, 0.8);
}

.vault-source--discord {
  border-left-color: var(--sheet-accent);
  color: #ECE8E1;
}

.vault-tile__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.9rem 1.25rem;
  border-top: 1px solid rgba(236, 232, 225, 0.1);
  background-color: rgba(0, 0, 0, 0.2);
}

.vault-tile__value {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin: 0;
  font-size: 1.0625rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: #ECE8E1;
}

.vault-tile__action {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  min-height: 2.75rem;
  padding: 0.55rem 0.9rem;
  background: transparent;
  border: 1px solid rgba(var(--vault-action-rgb), 0.5);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--vault-action-color);
  transition: background-color 150ms ease-out, color 150ms ease-out;
}
.vault-tile__action:hover, .vault-tile__action:focus-visible {
  background-color: var(--vault-action-color);
  color: #0F1923;
}
.vault-tile__action:disabled {
  background: transparent;
  color: rgba(236, 232, 225, 0.4);
  cursor: not-allowed;
}

@container (min-width: 26rem) {
  .vault-tile--featured .vault-tile__body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.25rem 2rem;
    padding: 1.75rem 1.5rem 1.5rem;
  }
  .vault-tile--featured .vault-tile__flag {
    grid-column: 1/-1;
  }
  .vault-tile--featured .vault-tile__quality {
    justify-content: center;
  }
  .vault-tile--featured .vault-tile__meta {
    margin-top: 0;
    padding-top: 0;
  }
  .vault-tile--featured .vault-tile__foot {
    padding: 1rem 1.5rem;
  }
  .vault-tile--featured .vault-tile__value {
    font-size: 1.375rem;
  }
}
.vault-note {
  margin: 2rem 0 0;
  font-size: 0.75rem;
  line-height: 1.6;
  color: rgba(236, 232, 225, 0.4);
}

.vault-unavailable {
  margin: 1rem 0 0;
  padding: 0.65rem 0.8rem;
  background-color: rgba(236, 232, 225, 0.04);
  border-left: 2px solid rgba(236, 232, 225, 0.35);
  font-size: 0.75rem;
  color: rgba(236, 232, 225, 0.6);
}
.vault-unavailable[hidden] {
  display: none;
}

.vault-dock {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1035;
  padding: 0.9rem 0 calc(0.9rem + env(safe-area-inset-bottom));
  background-color: rgba(8, 14, 20, 0.96);
  border-top: 1px solid rgba(var(--vault-action-rgb), 0.45);
  box-shadow: 0 -18px 40px rgba(0, 0, 0, 0.5);
  transform: translateY(100%);
  transition: transform 300ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
@supports (backdrop-filter: blur(1px)) {
  .vault-dock {
    backdrop-filter: blur(12px);
  }
}
.vault-dock.is-open {
  transform: none;
}

.vault-dock__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1.5rem;
}

.vault-dock__screen {
  display: none;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1.5rem;
  width: 100%;
}

.vault-dock[data-state=idle] .vault-dock__screen--idle,
.vault-dock[data-state=confirm] .vault-dock__screen--confirm,
.vault-dock[data-state=done] .vault-dock__screen--done {
  display: flex;
}

.vault-dock__summary {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.35rem 1.25rem;
  margin: 0;
}

.vault-dock__count,
.vault-dock__question {
  font-size: 0.875rem;
  font-weight: 600;
  color: rgba(236, 232, 225, 0.8);
}

.vault-dock__total {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.vault-dock__total-value {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  color: var(--vault-action-color);
}

.vault-dock__total-label {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #8C97A2;
}

.vault-dock__question .vault-dock__total-value {
  font-size: 1rem;
}

.vault-dock__warning {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.25rem 0.6rem;
  background-color: rgba(255, 70, 85, 0.14);
  border-left: 2px solid #FF4655;
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(236, 232, 225, 0.9);
}
.vault-dock__warning[hidden] {
  display: none;
}

.vault-dock__done-title {
  padding: 0.2rem 0.5rem;
  background-color: rgba(var(--vault-result-rgb, var(--vault-action-rgb)), 0.15);
  border: 1px solid rgba(var(--vault-result-rgb, var(--vault-action-rgb)), 0.5);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--vault-result-color, var(--vault-action-color));
}

.vault-unit--gift {
  color: #7DD3FC;
}
.vault-unit--gift svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.6;
}

.vault-gift {
  clip-path: polygon(0.5rem 0, 100% 0, 100% calc(100% - 0.5rem), calc(100% - 0.5rem) 100%, 0 100%, 0 0.5rem);
  margin: 0 0 1.75rem;
  padding: clamp(1.1rem, 3vw, 1.6rem);
  background: linear-gradient(115deg, rgba(125, 211, 252, 0.08), transparent 34rem), rgba(236, 232, 225, 0.025);
  border: 1px solid rgba(125, 211, 252, 0.24);
}
.vault-gift[hidden] {
  display: none;
}
.vault-gift.has-open-suggestions {
  clip-path: none;
}

.vault-gift__intro {
  display: grid;
  grid-template-columns: minmax(13rem, 0.8fr) minmax(18rem, 1.2fr);
  gap: 1.25rem 2rem;
  align-items: start;
}
.vault-gift__intro .catch-eyebrow {
  margin-bottom: 0.35rem;
  color: #7DD3FC;
}
.vault-gift__intro h3, .vault-gift__intro .h3 {
  max-width: 30rem;
  margin: 0;
  color: #ECE8E1;
  font-size: clamp(1.35rem, 3vw, 1.8rem);
  line-height: 1.15;
}

.vault-gift__field label {
  display: block;
  margin-bottom: 0.45rem;
  color: rgba(236, 232, 225, 0.86);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.vault-gift__field input {
  width: 100%;
  min-height: 3rem;
  padding: 0.7rem 0.85rem;
  background: rgba(8, 14, 20, 0.72);
  border: 1px solid rgba(236, 232, 225, 0.22);
  border-radius: 0;
  color: #ECE8E1;
  font-size: 1rem;
  transition: border-color 150ms ease-out, box-shadow 150ms ease-out;
}
.vault-gift__field input::placeholder {
  color: rgba(236, 232, 225, 0.38);
}
.vault-gift__field input:focus {
  outline: 0;
  border-color: #7DD3FC;
  box-shadow: 0 0 0 3px rgba(125, 211, 252, 0.16);
}
.vault-gift__field input[aria-invalid=true] {
  border-color: #FCA5A5;
}
.vault-gift__field input:disabled {
  opacity: 0.55;
  cursor: wait;
}
.vault-gift__field > p {
  margin: 0.45rem 0 0;
  color: #8C97A2;
  font-size: 0.75rem;
  line-height: 1.45;
}

.vault-gift__autocomplete {
  position: relative;
  z-index: 30;
}
.vault-gift__autocomplete::before {
  border-color: #7DD3FC;
}
.vault-gift__autocomplete > input {
  padding-left: 2.65rem;
}

.vault-gift__suggestions {
  z-index: 50;
}

.vault-gift__status {
  min-height: 1.1rem;
}
.vault-gift__status.is-success {
  color: #86EFAC;
}
.vault-gift__status.is-error {
  color: #FCA5A5;
}
.vault-gift__status.is-loading {
  color: #BAE6FD;
}

.vault-gift__favorites {
  margin-top: 1.35rem;
  padding-top: 1.1rem;
  border-top: 1px solid rgba(236, 232, 225, 0.1);
}

.vault-gift__favorites-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.35rem 0.8rem;
  margin-bottom: 0.75rem;
}
.vault-gift__favorites-head h4, .vault-gift__favorites-head .h4 {
  margin: 0;
  color: #ECE8E1;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.vault-gift__favorites-head span {
  color: #8C97A2;
  font-size: 0.75rem;
}

.vault-gift__favorite-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.vault-gift__favorite {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: stretch;
  background: rgba(125, 211, 252, 0.07);
  border: 1px solid rgba(125, 211, 252, 0.24);
}

.vault-gift__favorite-name,
.vault-gift__favorite-remove {
  min-height: 2.75rem;
  background: transparent;
  border: 0;
  color: #ECE8E1;
}
.vault-gift__favorite-name:focus-visible,
.vault-gift__favorite-remove:focus-visible {
  outline: 2px solid #7DD3FC;
  outline-offset: -3px;
}
.vault-gift__favorite-name:disabled,
.vault-gift__favorite-remove:disabled {
  opacity: 0.45;
  cursor: wait;
}

.vault-gift__favorite-name {
  padding: 0.55rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 700;
}
.vault-gift__favorite-name:hover:not(:disabled) {
  background: rgba(125, 211, 252, 0.1);
}

.vault-gift__favorite-remove {
  padding: 0.55rem 0.65rem;
  border-left: 1px solid rgba(125, 211, 252, 0.2);
  color: rgba(236, 232, 225, 0.55);
  font-size: 0.6875rem;
}
.vault-gift__favorite-remove:hover:not(:disabled) {
  background: rgba(252, 165, 165, 0.1);
  color: #FCA5A5;
}

.vault-gift__empty {
  margin: 0;
  color: #8C97A2;
  font-size: 0.8125rem;
}
.vault-gift__empty[hidden] {
  display: none;
}

.vault-dock__done-text {
  font-size: 0.875rem;
  color: rgba(236, 232, 225, 0.75);
}

.vault-dock__actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.vault-dock__actions .btn {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
}
.vault-dock__actions button:disabled {
  cursor: not-allowed;
}
.vault-dock__actions .btn:disabled {
  opacity: 1;
  background: #46515C;
  border-color: #66717C;
  box-shadow: none;
  color: rgba(236, 232, 225, 0.7);
  filter: saturate(0.2);
}
.vault-dock__actions .btn.is-loading::before {
  content: "";
  width: 0.9rem;
  height: 0.9rem;
  flex: 0 0 auto;
  border: 2px solid rgba(236, 232, 225, 0.35);
  border-top-color: #ECE8E1;
  border-radius: 50%;
  animation: vault-operation-spin 0.7s linear infinite;
}

.vault-dock[data-result-tone=success] {
  --vault-result-color: #86EFAC;
  --vault-result-rgb: 134, 239, 172;
}

.vault-dock[data-result-tone=warning] {
  --vault-result-color: #FCD34D;
  --vault-result-rgb: 252, 211, 77;
}

.vault-dock[data-result-tone=error] {
  --vault-result-color: #FCA5A5;
  --vault-result-rgb: 252, 165, 165;
}

@keyframes vault-operation-spin {
  to {
    transform: rotate(360deg);
  }
}
.vault-dock__ghost {
  min-height: 2.75rem;
  padding: 0.5rem 0.75rem;
  background: transparent;
  border: 0;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #8C97A2;
  transition: color 150ms ease-out;
}
.vault-dock__ghost:hover, .vault-dock__ghost:focus-visible {
  color: #ECE8E1;
}

.card-sheet.has-dock {
  padding-bottom: 5.5rem;
}

@media (max-width: 991.98px) {
  .card-sheet__stage {
    padding: 1rem 0 2.5rem;
  }
  .card-sheet__card .c-card-shell {
    max-width: 15rem;
  }
  .card-sheet__halo {
    width: min(20rem, 110%);
  }
  .card-sheet__pedestal {
    width: min(16rem, 90%);
    height: 3rem;
    bottom: 1rem;
  }
  .card-sheet__identity {
    max-width: none;
  }
}
@media (max-width: 767.98px) {
  .card-sheet__hero {
    padding-bottom: 3rem;
  }
  .card-sheet__status {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .card-sheet__status-item {
    padding: 0.9rem 1rem;
  }
  .card-sheet__status-item:first-child {
    padding-left: 0;
  }
  .card-sheet__status-item:nth-child(2) {
    grid-column: 1/-1;
    grid-row: 2;
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid rgba(236, 232, 225, 0.1);
  }
  .card-sheet__status-item:nth-child(3) {
    grid-column: 2;
    grid-row: 1;
    border-left: 1px solid rgba(236, 232, 225, 0.1);
  }
  .card-sheet__status-value--marks .qmarks__star {
    width: 1.1rem;
    height: 1.1rem;
  }
  .card-sheet__actions .btn {
    width: 100%;
  }
  .vault-head {
    align-items: stretch;
  }
  .vault-head__tools,
  .vault-head__tool {
    width: 100%;
  }
  .vault-mode-tabs {
    max-width: none;
    margin-bottom: 1.5rem;
  }
  .vault-mode-tab {
    flex-wrap: wrap;
    gap: 0.35rem 0.45rem;
    min-height: 3.5rem;
    padding-inline: 0.65rem;
  }
  .vault-mode-tab small, .vault-mode-tab .small {
    flex-basis: 100%;
  }
  .vault-tile__foot {
    flex-wrap: wrap;
  }
  .vault-tile__action {
    min-width: 8.5rem;
  }
  .vault-dock__screen {
    flex-direction: column;
    align-items: stretch;
  }
  .vault-dock__summary {
    justify-content: space-between;
  }
  .vault-dock__actions {
    justify-content: space-between;
  }
  .vault-dock__actions .btn {
    flex: 1 1 auto;
  }
  .card-sheet.has-dock {
    padding-bottom: calc(9rem + env(safe-area-inset-bottom));
  }
}
.card-sheet-tabs {
  position: sticky;
  top: var(--header-height, 64px);
  z-index: 1020;
  background: linear-gradient(90deg, rgba(var(--sheet-accent-rgb), 0.06), transparent 38%), #0F1923;
  border-top: 1px solid rgba(236, 232, 225, 0.08);
  border-bottom: 1px solid rgba(236, 232, 225, 0.16);
  box-shadow: 0 0.75rem 2rem rgba(8, 14, 20, 0.24);
}
.card-sheet-tabs__inner {
  display: flex;
  align-items: stretch;
  min-height: 3.75rem;
}
.card-sheet-tabs__link {
  position: relative;
  display: inline-flex;
  min-height: 3.75rem;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  padding-inline: 1.35rem;
  color: rgba(236, 232, 225, 0.64);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-decoration: none;
  text-transform: uppercase;
  touch-action: manipulation;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.card-sheet-tabs__link::after {
  content: "";
  position: absolute;
  right: 1.35rem;
  bottom: -1px;
  left: 1.35rem;
  height: 3px;
  background: var(--sheet-accent);
  box-shadow: 0 0 1rem rgba(var(--sheet-accent-rgb), 0.5);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.card-sheet-tabs__link:hover {
  color: #ECE8E1;
  background: rgba(236, 232, 225, 0.05);
}
.card-sheet-tabs__link:focus-visible {
  outline: 2px solid var(--sheet-accent);
  outline-offset: -4px;
  color: #ECE8E1;
}
.card-sheet-tabs__link.is-active, .card-sheet-tabs__link[aria-selected=true] {
  color: #ECE8E1;
  background: rgba(236, 232, 225, 0.045);
}
.card-sheet-tabs__link.is-active::after, .card-sheet-tabs__link[aria-selected=true]::after {
  transform: scaleX(1);
}
.card-sheet-tabs__count {
  display: inline-grid;
  min-width: 1.65rem;
  height: 1.65rem;
  place-items: center;
  padding-inline: 0.42rem;
  color: #ECE8E1;
  font-size: 0.7rem;
  letter-spacing: 0;
  background: rgba(var(--sheet-accent-rgb), 0.14);
  border: 1px solid rgba(var(--sheet-accent-rgb), 0.34);
  border-radius: 999px;
}

.admin-bar .card-sheet-tabs {
  top: calc(var(--header-height, 64px) + 32px);
}

#inventaire,
#fusion {
  scroll-margin-top: calc(var(--header-height, 64px) + 4.75rem);
}

.card-sheet__tab-panel[hidden] {
  display: none !important;
}
.card-sheet__tab-panel:focus-visible {
  outline: 0;
  box-shadow: inset 3px 0 0 rgba(var(--sheet-accent-rgb), 0.72);
}

.card-sheet__inventory-empty {
  min-height: clamp(20rem, 42vh, 31rem);
  padding-block: clamp(4rem, 8vw, 7rem);
  background: linear-gradient(115deg, rgba(var(--sheet-accent-rgb), 0.07), transparent 30rem), #0B131B;
}
.card-sheet__inventory-empty .container {
  max-width: 48rem;
}
.card-sheet__inventory-empty h2, .card-sheet__inventory-empty .h2 {
  margin: 0.35rem 0 0.75rem;
  color: #ECE8E1;
  font-size: clamp(2rem, 5vw, 3.4rem);
  text-transform: uppercase;
}
.card-sheet__inventory-empty p:last-child {
  max-width: 38rem;
  margin-bottom: 0;
  color: #8C97A2;
  line-height: 1.65;
}

.card-sheet.has-dock:not(.is-inventory-tab-active) {
  padding-bottom: 0;
}

@media (max-width: 782px) {
  .admin-bar .card-sheet-tabs {
    top: calc(var(--header-height, 64px) + 46px);
  }
}
@media (max-width: 600px) {
  .admin-bar .card-sheet-tabs {
    top: var(--header-height, 64px);
  }
}
@media (max-width: 575.98px) {
  .vault-mode-tab {
    gap: 0.35rem;
    padding-inline: 0.35rem;
  }
  .vault-mode-tab small, .vault-mode-tab .small {
    display: none;
  }
  .vault-gift__intro {
    grid-template-columns: minmax(0, 1fr);
  }
  .vault-gift__favorite {
    width: 100%;
  }
  .vault-gift__favorite-name {
    flex: 1 1 auto;
    text-align: left;
  }
  .card-sheet-tabs__link {
    flex: 1 1 0;
    min-width: 0;
    gap: 0.45rem;
    padding-inline: 0.5rem;
    font-size: 0.68rem;
    letter-spacing: 0.065em;
    text-align: center;
  }
  .card-sheet-tabs__link::after {
    right: 0.5rem;
    left: 0.5rem;
  }
  .card-sheet-tabs__count {
    min-width: 1.45rem;
    height: 1.45rem;
    padding-inline: 0.32rem;
    font-size: 0.65rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .card-sheet-tabs__link,
  .card-sheet-tabs__link::after {
    animation: none;
    transition: none;
  }
}
@media (max-width: 374.98px) {
  .vault-mode-tab small, .vault-mode-tab .small {
    display: none;
  }
  .vault-tile__action {
    flex: 1 1 100%;
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .card-sheet__card,
  .card-sheet__back-arrow,
  .vault-tile,
  .vault-tile__check,
  .vault-tile__check::after,
  .vault-mode-tab,
  .vault-mode-tab::after,
  .vault-tile__action,
  .vault-dock {
    transition: none;
  }
  .card-sheet__card {
    transform: none;
  }
  .vault-tile:hover {
    transform: none;
  }
}
.card-sheet__hero {
  padding-top: 2rem;
  padding-bottom: 3.5rem;
}
@media (min-width: 992px) {
  .card-sheet__hero {
    padding-top: 2.75rem;
    padding-bottom: 4.25rem;
  }
}

.card-sheet__back-row {
  margin-bottom: 1rem;
}

.card-sheet__stage {
  padding-top: 1.5rem;
  padding-bottom: 2.75rem;
}

.card-sheet__card .c-card-shell {
  max-width: 18.5rem;
}

.card-sheet__identity {
  max-width: 38rem;
}

.card-sheet__title {
  font-size: clamp(3rem, 7vw, 5.25rem);
}

.card-sheet__lede {
  margin-top: 1.25rem;
  line-height: 1.6;
}

.card-sheet__status {
  clip-path: polygon(0.5rem 0, 100% 0, 100% calc(100% - 0.5rem), calc(100% - 0.5rem) 100%, 0 100%, 0 0.5rem);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 1.75rem;
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
}

.card-sheet__status-item {
  min-width: 0;
  padding: 0.9rem 1rem;
}
.card-sheet__status-item:first-child {
  padding-left: 1rem;
}

.card-sheet__status-value {
  font-size: 1.5rem;
}

.card-sheet__status-label {
  line-height: 1.35;
}

.card-sheet__actions--cockpit {
  gap: 0.75rem;
  margin-top: 1.25rem;
}
.card-sheet__actions--cockpit .btn {
  display: inline-flex;
  min-height: 3rem;
  align-items: center;
  justify-content: center;
  padding-inline: 1.2rem;
}

.card-sheet__btn-secondary {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  background: transparent;
  border: 1px solid rgba(var(--sheet-accent-rgb), 0.5);
  color: #ECE8E1;
}
.card-sheet__btn-secondary:hover, .card-sheet__btn-secondary:focus-visible {
  background-color: rgba(var(--sheet-accent-rgb), 0.1);
  border-color: var(--sheet-accent);
  color: #ECE8E1;
}

.card-sheet__vault {
  padding-top: 3.5rem;
  padding-bottom: 5.5rem;
  scroll-margin-top: calc(var(--header-height, 64px) + 1rem);
}

.vault-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  margin-bottom: 1.25rem;
}

.vault-head__lead {
  max-width: 48rem;
}

.vault-mode-tabs {
  max-width: 52rem;
  margin-bottom: 1.5rem;
}

[data-vault-cell] {
  flex: 0 0 auto;
  width: 100%;
  transition: opacity 180ms cubic-bezier(0.2, 0.6, 0.2, 1), transform 180ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
[data-vault-cell].is-removing {
  opacity: 0;
  pointer-events: none;
  transform: scale(0.975);
}

.vault-tile,
.vault-tile--featured {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 11rem;
  background: rgba(236, 232, 225, 0.035);
  border-color: rgba(236, 232, 225, 0.1);
}

.vault-tile--featured {
  background: linear-gradient(90deg, rgba(var(--sheet-accent-rgb), 0.075), transparent 38%), rgba(236, 232, 225, 0.035);
  border-color: rgba(var(--sheet-accent-rgb), 0.28);
}

.vault-tile__body,
.vault-tile--featured .vault-tile__body {
  display: grid;
  grid-template-columns: minmax(9rem, 0.7fr) minmax(14rem, 1.3fr);
  align-items: center;
  gap: 0.65rem 2rem;
  padding: 1.15rem 1.25rem;
}

.vault-tile__flag,
.vault-tile--featured .vault-tile__flag {
  grid-column: 1/-1;
  color: #8C97A2;
}

.vault-tile--featured .vault-tile__flag {
  color: var(--sheet-accent);
}

.vault-tile__quality,
.vault-tile--featured .vault-tile__quality {
  grid-column: 1;
  justify-content: center;
}

.vault-tile__meta,
.vault-tile--featured .vault-tile__meta {
  display: grid;
  grid-column: 2;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 1rem 1.5rem;
  margin-top: 0;
  padding-top: 0;
}

.vault-tile__foot,
.vault-tile--featured .vault-tile__foot {
  display: flex;
  width: auto;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  gap: 0.65rem;
  padding: 1rem;
  border-top: 0;
  border-left: 1px solid rgba(236, 232, 225, 0.1);
}

.vault-tile__value,
.vault-tile--featured .vault-tile__value {
  justify-content: center;
  font-size: 1.125rem;
}

.vault-tile__action {
  width: 100%;
  min-height: 2.75rem;
}

.vault-note {
  max-width: 54rem;
  margin-top: 1.5rem;
}

@media (max-width: 767.98px) {
  .card-sheet__hero {
    padding-top: 1.5rem;
    padding-bottom: 2.5rem;
  }
  .card-sheet__card .c-card-shell {
    max-width: 13.5rem;
  }
  .card-sheet__status {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .card-sheet__status-item:first-child {
    padding-left: 1rem;
  }
  .card-sheet__actions--cockpit .btn,
  .card-sheet__actions--cockpit .card-sheet__showcase,
  .card-sheet__actions--cockpit .card-sheet__link {
    width: 100%;
  }
  .card-sheet__actions--cockpit .card-sheet__link {
    min-height: 2.75rem;
    padding-top: 0.75rem;
    text-align: center;
  }
  .card-sheet__vault {
    padding-top: 3rem;
    padding-bottom: 4.5rem;
  }
  .vault-head {
    display: flex;
    align-items: stretch;
  }
  .vault-tile,
  .vault-tile--featured {
    display: flex;
    flex-direction: column;
  }
  .vault-tile__body,
  .vault-tile--featured .vault-tile__body {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.9rem;
    padding: 1.25rem;
  }
  .vault-tile__quality,
  .vault-tile--featured .vault-tile__quality,
  .vault-tile__meta,
  .vault-tile--featured .vault-tile__meta {
    display: flex;
  }
  .vault-tile__meta,
  .vault-tile--featured .vault-tile__meta {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
  }
  .vault-tile__meta-item {
    flex: 1 1 9rem;
  }
  .vault-tile__foot,
  .vault-tile--featured .vault-tile__foot {
    width: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.25rem;
    border-top: 1px solid rgba(236, 232, 225, 0.1);
    border-left: 0;
  }
  .vault-tile__value,
  .vault-tile--featured .vault-tile__value {
    justify-content: flex-start;
  }
  .vault-tile__action {
    width: auto;
  }
}
@media (prefers-reduced-motion: reduce) {
  [data-vault-cell],
  .vault-dock__actions .btn.is-loading::before {
    animation: none;
    transition: none;
  }
}
.item-sheet {
  --item-accent: #9AA6B2;
  --item-accent-rgb: 154, 166, 178;
  --tier-accent: var(--item-accent);
  --tier-accent-rgb: var(--item-accent-rgb);
  position: relative;
  background-color: #0B131B;
  color: #ECE8E1;
}

.item-sheet--finish-charged {
  --tier-accent: #4FE3D8;
  --tier-accent-rgb: 79, 227, 216;
}

.item-sheet--finish-overcharged {
  --tier-accent: #FF4655;
  --tier-accent-rgb: 255, 70, 85;
}

.item-sheet--finish-sublimated {
  --tier-accent: #F0C24B;
  --tier-accent-rgb: 240, 194, 75;
}

.item-sheet--finish-radiant {
  --tier-accent: #BE96FF;
  --tier-accent-rgb: 190, 150, 255;
}

.item-sheet--finish-classified {
  --tier-accent: #5A6672;
  --tier-accent-rgb: 90, 102, 114;
}

.item-sheet--retired {
  --item-accent: #5A6672;
  --item-accent-rgb: 90, 102, 114;
}

.item-sheet__hero {
  position: relative;
  overflow: hidden;
  padding: 2.5rem 0 3.5rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.1);
  background: radial-gradient(110% 75% at 20% 45%, rgba(var(--item-accent-rgb), 0.13), transparent 58%), linear-gradient(168deg, #0D161F 0%, #0B131B 55%, #080E14 100%);
}
.item-sheet__hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 6rem;
  height: 3px;
  background-color: var(--item-accent);
}

.item-sheet__container {
  position: relative;
  z-index: 1;
}

.item-sheet__backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  user-select: none;
}

.item-sheet__grid {
  position: absolute;
  inset: 0;
  opacity: 0.5;
  background-image: linear-gradient(rgba(236, 232, 225, 0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(236, 232, 225, 0.04) 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: linear-gradient(105deg, #000 5%, transparent 62%);
  mask-image: linear-gradient(105deg, #000 5%, transparent 62%);
}

.item-sheet__beam {
  position: absolute;
  top: -30%;
  left: -10%;
  width: 55%;
  height: 160%;
  background: linear-gradient(101deg, transparent 42%, rgba(var(--tier-accent-rgb), 0.07) 50%, transparent 58%);
  transform: rotate(-4deg);
}

.item-sheet__watermark {
  position: absolute;
  right: -0.06em;
  bottom: -0.2em;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(10rem, 20vw, 22rem);
  line-height: 0.72;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: transparent;
  -webkit-text-stroke: 1px rgba(var(--tier-accent-rgb), 0.16);
}
@media (max-width: 991.98px) {
  .item-sheet__watermark {
    display: none;
  }
}

.item-sheet__back-row {
  position: relative;
  z-index: 1;
  margin-bottom: 2rem;
}

.item-sheet__back {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-decoration: none;
  color: #8C97A2;
  transition: color 150ms ease-out;
}
.item-sheet__back:hover, .item-sheet__back:focus-visible {
  color: #ECE8E1;
}
.item-sheet__back:hover .item-sheet__back-arrow {
  transform: translateX(-3px) rotate(45deg);
}

.item-sheet__back-arrow {
  width: 0.45em;
  height: 0.45em;
  border-left: 2px solid var(--item-accent);
  border-bottom: 2px solid var(--item-accent);
  transform: rotate(45deg);
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.item-sheet__stage {
  position: relative;
  display: flex;
  justify-content: center;
  padding: 1rem 0;
}

.item-sheet__halo {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20rem;
  height: 20rem;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(var(--item-accent-rgb), 0.28), transparent 62%);
  filter: blur(8px);
  pointer-events: none;
}

.item-sheet__frame {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(15rem, 60vw);
  aspect-ratio: 1;
  background: linear-gradient(158deg, rgba(var(--item-accent-rgb), 0.14), rgba(236, 232, 225, 0.02) 62%);
  border: 1px solid rgba(var(--item-accent-rgb), 0.35);
}
.item-sheet__frame::after {
  content: "";
  position: absolute;
  inset: 0.75rem;
  border: 1px solid rgba(236, 232, 225, 0.06);
  pointer-events: none;
}

.item-sheet__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 62%;
  height: 62%;
}

.item-sheet__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.45));
}

.item-sheet__initial {
  font-family: "League Gothic", sans-serif;
  font-size: 5rem;
  line-height: 1;
  color: rgba(var(--item-accent-rgb), 0.75);
}

.item-sheet__eyebrow {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
  color: var(--tier-accent);
}
.item-sheet__eyebrow::before {
  margin-right: 0;
}

.item-sheet__eyebrow-sep {
  width: 0.3rem;
  height: 0.3rem;
  background-color: currentColor;
  transform: rotate(45deg);
}

.item-sheet__title {
  margin: 0;
  font-size: clamp(2.75rem, 7vw, 4.75rem);
  line-height: 0.92;
  color: #ECE8E1;
  overflow-wrap: break-word;
}

.item-sheet__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 1.25rem 0 0;
  padding: 0;
  list-style: none;
}

.item-sheet__fact {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  padding: 0.4rem 0.75rem;
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
}

.item-sheet__fact-label {
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8C97A2;
}

.item-sheet__fact-value {
  font-weight: 600;
  color: #ECE8E1;
}

.item-sheet__lede {
  max-width: 42rem;
  margin-top: 1.25rem;
  line-height: 1.6;
  color: rgba(236, 232, 225, 0.82);
}
.item-sheet__lede p:last-child {
  margin-bottom: 0;
}

.item-sheet__status {
  clip-path: polygon(0.5rem 0, 100% 0, 100% calc(100% - 0.5rem), calc(100% - 0.5rem) 100%, 0 100%, 0 0.5rem);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.75rem;
  padding: 1.1rem 1.35rem;
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
}

.item-sheet__status-item {
  display: flex;
  align-items: baseline;
  gap: 0.6rem;
}

.item-sheet__status-value {
  font-family: "League Gothic", sans-serif;
  font-size: 2.75rem;
  line-height: 0.85;
  color: var(--item-accent);
}

.item-sheet__status-label {
  font-size: 0.8125rem;
  font-weight: 500;
  color: #8C97A2;
}

.item-sheet__actions {
  margin: 0;
}

.item-sheet__locked {
  clip-path: polygon(0.5rem 0, 100% 0, 100% calc(100% - 0.5rem), calc(100% - 0.5rem) 100%, 0 100%, 0 0.5rem);
  margin-top: 1.75rem;
  padding: 1.25rem 1.35rem;
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
}

.item-sheet__locked-title {
  margin: 0 0 0.35rem;
  font-weight: 700;
  color: #ECE8E1;
}

.item-sheet__locked-text {
  margin: 0 0 1rem;
  color: #8C97A2;
}

.item-sheet__doable {
  margin-top: 1rem;
  padding-left: 1rem;
  border-left: 2px solid rgba(var(--item-accent-rgb), 0.5);
}

.item-sheet__doable-label {
  margin: 0 0 0.4rem;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8C97A2;
}

.item-sheet__doable-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 1.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.item-sheet__doable-item {
  display: flex;
  align-items: baseline;
  gap: 0.4rem;
  color: rgba(236, 232, 225, 0.86);
}
.item-sheet__doable-item a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(236, 232, 225, 0.2);
  transition: color 150ms ease-out, border-color 150ms ease-out;
}
.item-sheet__doable-item a:hover, .item-sheet__doable-item a:focus-visible {
  color: #ECE8E1;
  border-bottom-color: var(--item-accent);
}

.item-sheet__doable-count {
  font-family: "League Gothic", sans-serif;
  font-size: 1.35rem;
  line-height: 1;
  color: var(--item-accent);
}

.item-sheet-tabs {
  position: sticky;
  top: var(--header-height, 64px);
  z-index: 1020;
  background: linear-gradient(90deg, rgba(var(--tier-accent-rgb), 0.06), transparent 38%), #0F1923;
  border-top: 1px solid rgba(236, 232, 225, 0.08);
  border-bottom: 1px solid rgba(236, 232, 225, 0.16);
  box-shadow: 0 0.75rem 2rem rgba(8, 14, 20, 0.24);
}
.item-sheet-tabs__inner {
  display: flex;
  align-items: stretch;
  min-height: 3.75rem;
  overflow-x: auto;
  scrollbar-width: none;
}
.item-sheet-tabs__inner::-webkit-scrollbar {
  display: none;
}
.item-sheet-tabs__link {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  min-height: 3.75rem;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  padding-inline: 1.35rem;
  color: rgba(236, 232, 225, 0.64);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-decoration: none;
  text-transform: uppercase;
  touch-action: manipulation;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.item-sheet-tabs__link::after {
  content: "";
  position: absolute;
  right: 1.35rem;
  bottom: -1px;
  left: 1.35rem;
  height: 3px;
  background: var(--tier-accent);
  box-shadow: 0 0 1rem rgba(var(--tier-accent-rgb), 0.5);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.item-sheet-tabs__link:hover {
  color: #ECE8E1;
  background: rgba(236, 232, 225, 0.05);
}
.item-sheet-tabs__link:focus-visible {
  outline: 2px solid var(--tier-accent);
  outline-offset: -4px;
  color: #ECE8E1;
}
.item-sheet-tabs__link.is-active, .item-sheet-tabs__link[aria-selected=true] {
  color: #ECE8E1;
  background: rgba(236, 232, 225, 0.045);
}
.item-sheet-tabs__link.is-active::after, .item-sheet-tabs__link[aria-selected=true]::after {
  transform: scaleX(1);
}
.item-sheet-tabs__count {
  display: inline-grid;
  min-width: 1.65rem;
  height: 1.65rem;
  place-items: center;
  padding-inline: 0.42rem;
  color: #ECE8E1;
  font-size: 0.7rem;
  letter-spacing: 0;
  background: rgba(var(--tier-accent-rgb), 0.14);
  border: 1px solid rgba(var(--tier-accent-rgb), 0.34);
  border-radius: 999px;
}

.admin-bar .item-sheet-tabs {
  top: calc(var(--header-height, 64px) + 32px);
}

.item-sheet__group {
  scroll-margin-top: calc(var(--header-height, 64px) + 4.75rem);
}
.item-sheet__group[hidden] {
  display: none !important;
}
.item-sheet__group:focus-visible {
  outline: 0;
  box-shadow: inset 3px 0 0 rgba(var(--item-accent-rgb), 0.72);
}

.item-sheet__panel {
  padding: 3rem 0;
  border-bottom: 1px solid rgba(236, 232, 225, 0.06);
}
.item-sheet__panel:last-child {
  border-bottom: 0;
}

.item-sheet__panel--uses,
.item-sheet__panel--siblings {
  background-color: #080E14;
}

.item-sheet__panel-head {
  margin-bottom: 1.75rem;
}

.item-sheet__panel-title {
  margin: 0;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  line-height: 1.05;
  color: #ECE8E1;
}

.lore-dossier {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  position: relative;
  max-width: 52rem;
  margin: 0 auto;
  background: linear-gradient(180deg, rgba(var(--item-accent-rgb), 0.05), transparent 22rem), rgba(236, 232, 225, 0.028);
  border: 1px solid rgba(236, 232, 225, 0.1);
}

.lore-dossier__head {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.85rem 1.5rem;
  background-color: rgba(var(--item-accent-rgb), 0.1);
  border-bottom: 1px solid rgba(var(--item-accent-rgb), 0.3);
}

.lore-dossier__mark {
  flex: 0 0 auto;
  width: 0.5rem;
  height: 0.7rem;
  background-color: var(--item-accent);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}

.lore-dossier__kicker {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--item-accent);
}

.lore-dossier__ref {
  margin: 0 0 0 auto;
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8C97A2;
  text-align: right;
}
@media (max-width: 575.98px) {
  .lore-dossier__ref {
    display: none;
  }
}

.lore-dossier__body {
  padding: 2.25rem 2.5rem 2rem;
  font-size: 1.0625rem;
  line-height: 1.75;
  color: rgba(236, 232, 225, 0.84);
}
.lore-dossier__body > * {
  max-width: 62ch;
}
.lore-dossier__body > :last-child {
  margin-bottom: 0;
}
.lore-dossier__body p {
  margin-bottom: 1.15em;
}
.lore-dossier__body blockquote {
  margin: 1.75rem 0;
  padding-left: 1.25rem;
  border-left: 2px solid var(--item-accent);
  color: rgba(236, 232, 225, 0.92);
  font-style: italic;
}
.lore-dossier__body h2, .lore-dossier__body .h2,
.lore-dossier__body h3,
.lore-dossier__body .h3 {
  margin: 2rem 0 0.75rem;
  font-size: 1.15rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #ECE8E1;
}
.lore-dossier__body strong {
  color: #ECE8E1;
}
.lore-dossier__body a {
  color: var(--item-accent);
  text-underline-offset: 0.2em;
}
@media (max-width: 767.98px) {
  .lore-dossier__body {
    padding: 1.75rem 1.35rem 1.5rem;
    font-size: 1rem;
  }
}

.lore-dossier__body > p:first-of-type::first-letter {
  float: left;
  margin: 0.08em 0.75rem 0 0;
  padding: 0.26em 0.3em 0.14em 0.28em;
  font-family: "League Gothic", sans-serif;
  font-weight: 400;
  font-size: 4.4em;
  line-height: 0.72;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #0B131B;
  background: linear-gradient(315deg, transparent 0 0.5rem, var(--item-accent) 0.5rem);
}

@media (max-width: 575.98px) {
  .lore-dossier__body > p:first-of-type::first-letter {
    font-size: 3.4em;
    margin-right: 0.6rem;
  }
}
.item-sheet__origin {
  display: flex;
  align-items: baseline;
  gap: 0.7rem;
  max-width: 42rem;
  margin: 0 0 1.75rem;
  color: rgba(236, 232, 225, 0.82);
}

.item-sheet__origin-mark {
  flex: 0 0 auto;
  width: 0.4rem;
  height: 0.4rem;
  background-color: var(--item-accent);
  transform: rotate(45deg);
}

.reach {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.reach__step {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  position: relative;
  flex: 1 1 11rem;
  min-width: 0;
  padding: 0.9rem 1.1rem 1rem;
  background: rgba(236, 232, 225, 0.02);
  border-top: 3px solid rgba(236, 232, 225, 0.12);
}

.reach__step--charged {
  --seg: #4FE3D8;
  --seg-rgb: 79, 227, 216;
}

.reach__step--overcharged {
  --seg: #FF4655;
  --seg-rgb: 255, 70, 85;
}

.reach__step--sublimated {
  --seg: #F0C24B;
  --seg-rgb: 240, 194, 75;
}

.reach__step--radiant {
  --seg: #BE96FF;
  --seg-rgb: 190, 150, 255;
}

.reach__step--classified {
  --seg: #5A6672;
  --seg-rgb: 90, 102, 114;
}

.reach__step[data-on="1"] {
  background: linear-gradient(180deg, rgba(var(--seg-rgb), 0.16), rgba(var(--seg-rgb), 0.03));
  border-top-color: var(--seg);
}

.reach__step[data-home="1"]::after {
  content: "";
  position: absolute;
  top: -3px;
  left: 0;
  width: 1.75rem;
  height: 3px;
  background: #ECE8E1;
}

.reach__n {
  display: block;
  font-family: "League Gothic", sans-serif;
  font-size: 1.5rem;
  line-height: 1;
  color: #8C97A2;
}

.reach__step[data-on="1"] .reach__n {
  color: var(--seg);
}

.reach__finish {
  display: block;
  margin-top: 0.15rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #8C97A2;
}

.reach__step[data-on="1"] .reach__finish {
  color: rgba(236, 232, 225, 0.9);
}

.reach__role {
  display: block;
  margin-top: 0.45rem;
  font-size: 0.75rem;
  line-height: 1.4;
  color: #8C97A2;
}

.reach__card {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  margin-top: 0.45rem;
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--seg);
}
.reach__card::before {
  content: "";
  width: 0.55rem;
  height: 0.75rem;
  background: currentColor;
  clip-path: polygon(0 0, 100% 0, 100% 75%, 75% 100%, 0 100%);
}

.reach__note {
  max-width: 46rem;
  margin: 1.25rem 0 0;
  padding-left: 0.9rem;
  border-left: 2px solid rgba(255, 70, 85, 0.5);
  font-size: 0.875rem;
  color: #8C97A2;
}

.chain {
  display: flex;
  flex-wrap: wrap;
  gap: 1.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}

.chain__step {
  position: relative;
  flex: 1 1 11rem;
  min-width: 0;
  padding-top: 0.9rem;
  border-top: 2px solid rgba(236, 232, 225, 0.1);
}

.chain__step + .chain__step::before {
  content: "";
  position: absolute;
  top: 2.2rem;
  left: -1.2rem;
  width: 0.45rem;
  height: 0.45rem;
  border-top: 2px solid rgba(236, 232, 225, 0.28);
  border-right: 2px solid rgba(236, 232, 225, 0.28);
  transform: rotate(45deg);
}

.chain__step--here {
  border-top-color: var(--item-accent);
}

.chain__label {
  margin: 0 0 0.6rem;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #8C97A2;
}

.chain__items {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.chain__item,
.chain__self {
  --line-color: #8B5CF6;
  display: flex;
  align-items: center;
  gap: 0.55rem;
  margin: 0;
  font-weight: 600;
  color: rgba(236, 232, 225, 0.88);
  overflow-wrap: anywhere;
}
.chain__item a,
.chain__self a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(236, 232, 225, 0.18);
  transition: color 150ms ease-out, border-color 150ms ease-out;
}
.chain__item a:hover, .chain__item a:focus-visible,
.chain__self a:hover,
.chain__self a:focus-visible {
  color: #ECE8E1;
  border-bottom-color: var(--line-color);
}

.chain__self {
  --line-color: var(--item-accent);
  color: #ECE8E1;
}

.chain__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 1.9rem;
  height: 1.9rem;
  background: rgba(236, 232, 225, 0.04);
  border: 1px solid rgba(236, 232, 225, 0.08);
}

.chain__icon--self {
  background: rgba(var(--item-accent-rgb), 0.12);
  border-color: rgba(var(--item-accent-rgb), 0.4);
}

.chain__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.chain__initial {
  font-family: "League Gothic", sans-serif;
  font-size: 1.05rem;
  line-height: 1;
  color: var(--line-color);
}

.chain__plain {
  margin: 0;
  color: rgba(236, 232, 225, 0.7);
}

.chain__variants {
  display: inline-block;
  margin-left: 0.4rem;
  padding: 0.05rem 0.4rem;
  font-size: 0.65rem;
  letter-spacing: 0.08em;
  color: var(--item-accent);
  border: 1px solid rgba(var(--item-accent-rgb), 0.4);
}

@media (max-width: 767.98px) {
  .chain {
    flex-direction: column;
    gap: 1.5rem;
  }
  .chain__step + .chain__step::before {
    top: -1.05rem;
    left: 0.5rem;
    transform: rotate(135deg);
  }
}
.recipe-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 20rem), 1fr));
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.recipe-card {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.35rem;
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
}

.recipe-card--ready {
  border-color: rgba(var(--item-accent-rgb), 0.45);
  background: linear-gradient(158deg, rgba(var(--item-accent-rgb), 0.08), rgba(236, 232, 225, 0.02) 55%);
}

.recipe-card__head {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.recipe-card__title {
  margin: 0;
  font-weight: 700;
  color: #ECE8E1;
}

.recipe-card__yield {
  margin: 0;
  font-size: 0.8125rem;
  color: #8C97A2;
}
.recipe-card__yield strong {
  color: var(--item-accent);
}

.recipe-lines {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.recipe-line {
  --line-color: #8B5CF6;
  display: flex;
  align-items: center;
  gap: 0.7rem;
  padding: 0.5rem 0.65rem;
  background-color: rgba(236, 232, 225, 0.03);
  border-left: 2px solid rgba(236, 232, 225, 0.12);
}

.recipe-line--held {
  border-left-color: var(--line-color);
}

.recipe-line--short {
  border-left-color: #FF4655;
}
.recipe-line--short .recipe-line__stock {
  color: #FF4655;
}

.recipe-line__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2rem;
  height: 2rem;
  background-color: rgba(var(--item-accent-rgb), 0.06);
  border: 1px solid rgba(236, 232, 225, 0.08);
}

.recipe-line__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.recipe-line__initial {
  font-family: "League Gothic", sans-serif;
  font-size: 1.1rem;
  line-height: 1;
  color: var(--line-color);
}

.recipe-line__body {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-width: 0;
  flex: 1 1 auto;
}

.recipe-line__name {
  font-weight: 600;
  color: #ECE8E1;
  overflow-wrap: anywhere;
}

.recipe-line__stock {
  font-size: 0.75rem;
  color: #8C97A2;
}

.recipe-line__quantity {
  flex: 0 0 auto;
  font-family: "League Gothic", sans-serif;
  font-size: 1.5rem;
  line-height: 1;
  color: #ECE8E1;
}

.recipe-card__state {
  margin: 0;
}

.recipe-card__badge {
  display: inline-block;
  padding: 0.25rem 0.6rem;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #080E14;
  background-color: var(--item-accent);
}

.recipe-card__badge--short {
  color: #8C97A2;
  background-color: transparent;
  border: 1px solid rgba(236, 232, 225, 0.1);
}

.recipe-list--uses {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr));
}

.use-card {
  --line-color: #8B5CF6;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.9rem 1rem;
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
  border-left: 2px solid var(--line-color);
  transition: background-color 150ms ease-out;
}
.use-card:hover {
  background-color: rgba(236, 232, 225, 0.06);
}

.use-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2.5rem;
  height: 2.5rem;
  background-color: rgba(236, 232, 225, 0.04);
  border: 1px solid rgba(236, 232, 225, 0.08);
}

.use-card__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.use-card__initial {
  font-family: "League Gothic", sans-serif;
  font-size: 1.35rem;
  line-height: 1;
  color: var(--line-color);
}

.use-card__body {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  min-width: 0;
}

.use-card__name {
  font-weight: 700;
  color: #ECE8E1;
  overflow-wrap: anywhere;
}
.use-card__name a {
  color: inherit;
  text-decoration: none;
  transition: color 150ms ease-out;
}
.use-card__name a:hover, .use-card__name a:focus-visible {
  color: var(--line-color);
}

.use-card__cost {
  font-size: 0.75rem;
  color: #8C97A2;
}
.use-card__cost strong {
  color: rgba(236, 232, 225, 0.9);
}

.sibling-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sibling {
  --line-color: #8B5CF6;
}

.sibling__link {
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.5rem 0.9rem 0.5rem 0.6rem;
  text-decoration: none;
  color: rgba(236, 232, 225, 0.86);
  background-color: rgba(236, 232, 225, 0.035);
  border: 1px solid rgba(236, 232, 225, 0.1);
  transition: color 150ms ease-out, border-color 150ms ease-out;
}
.sibling__link:hover, .sibling__link:focus-visible {
  color: #ECE8E1;
  border-color: var(--line-color);
}

.sibling__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 1.75rem;
  height: 1.75rem;
}

.sibling__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.sibling__initial {
  font-family: "League Gothic", sans-serif;
  font-size: 1rem;
  line-height: 1;
  color: var(--line-color);
}

.sibling__name {
  font-weight: 600;
}

.page-template-template-live {
  background-color: red;
  color: #000;
}

.error-404 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  min-height: 100svh;
  overflow: hidden;
  padding: 4rem 0;
  background-color: #0F1923;
  color: #ECE8E1;
}

.error-404__scan {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: linear-gradient(180deg, rgba(255, 70, 85, 0) 0%, rgba(255, 70, 85, 0.05) 55%, rgba(255, 70, 85, 0.16) 92%, rgba(255, 70, 85, 0.45) 100%);
  background-repeat: no-repeat;
  background-size: 100% 160px;
  background-position: left bottom;
  pointer-events: none;
  animation: catch-404-scan 9s ease-in-out infinite;
}

@keyframes catch-404-scan {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  8% {
    opacity: 1;
  }
  45% {
    opacity: 1;
  }
  55%, 100% {
    opacity: 0;
    transform: translateY(0);
  }
}
.error-404__inner {
  position: relative;
  z-index: 1;
  max-width: 42rem;
  text-align: center;
}

.error-404__eyebrow {
  justify-content: center;
}

.error-404__code {
  position: relative;
  margin: 0.75rem 0 0.5rem;
  font-size: clamp(6rem, 22vw, 13rem);
  line-height: 0.85;
  color: #ECE8E1;
}

.error-404__code::before,
.error-404__code::after {
  content: attr(data-text);
  position: absolute;
  inset: 0;
  opacity: 0;
}

.error-404__code::before {
  color: #FF4655;
  animation: catch-404-glitch-front 7s steps(1) infinite;
}

.error-404__code::after {
  color: #5A6672;
  animation: catch-404-glitch-back 7s steps(1) infinite;
}

@keyframes catch-404-glitch-front {
  0%, 90%, 100% {
    opacity: 0;
    transform: none;
  }
  91% {
    opacity: 0.9;
    transform: translate(-4px, 2px);
  }
  93% {
    opacity: 0;
  }
  95% {
    opacity: 0.9;
    transform: translate(3px, -2px);
  }
  97% {
    opacity: 0;
  }
}
@keyframes catch-404-glitch-back {
  0%, 90%, 100% {
    opacity: 0;
    transform: none;
  }
  92% {
    opacity: 0.5;
    transform: translate(4px, -1px);
  }
  94% {
    opacity: 0;
  }
  96% {
    opacity: 0.5;
    transform: translate(-3px, 1px);
  }
  98% {
    opacity: 0;
  }
}
.error-404__title {
  margin-bottom: 0.75rem;
  font-size: clamp(1.75rem, 5vw, 2.75rem);
  color: #ECE8E1;
}

.error-404__text {
  max-width: 32rem;
  margin: 0 auto;
  color: rgba(236, 232, 225, 0.7);
}

.error-404__divider {
  max-width: 20rem;
  margin: 2rem auto;
  justify-content: center;
  background-color: rgba(236, 232, 225, 0.18);
}

.error-404__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
}

.error-404__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.4rem 1.25rem;
  margin: 2.5rem 0 0;
  padding: 0;
  list-style: none;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(90, 102, 114, 0.95);
}

.error-404__meta strong {
  font-weight: 600;
  color: #FF4655;
}

@media (prefers-reduced-motion: reduce) {
  .error-404__scan {
    display: none;
  }
  .error-404__code::before,
  .error-404__code::after {
    animation: none;
  }
}
.catch-faq {
  --faq-bg: #080d13;
  --faq-panel: #111923;
  --faq-panel-hover: #16212e;
  --faq-border: rgba(255, 255, 255, 0.11);
  --faq-border-strong: rgba(255, 255, 255, 0.2);
  --faq-muted: rgba(235, 241, 247, 0.66);
  --faq-red: #FF4655;
  overflow: clip;
  color: #f5f8fb;
  background: radial-gradient(circle at 88% 4%, rgba(255, 70, 85, 0.12), transparent 30rem), radial-gradient(circle at 6% 30%, rgba(88, 199, 243, 0.08), transparent 34rem), var(--faq-bg);
}

.faq-console,
.faq-filters {
  display: none;
}

.catch-faq.is-interactive .faq-console {
  display: block;
}
.catch-faq.is-interactive .faq-filters {
  display: block;
}

.catch-faq:not(.is-interactive) .catch-hero__inner {
  grid-template-columns: minmax(0, 1fr);
}

.faq-console {
  position: relative;
  padding: clamp(1.15rem, 3vw, 1.6rem);
  border: 1px solid var(--faq-border-strong);
  background: linear-gradient(145deg, rgba(255, 70, 85, 0.09), transparent 52%), rgba(13, 21, 30, 0.9);
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.3);
}
.faq-console::before {
  position: absolute;
  top: -1px;
  left: -1px;
  width: 5rem;
  height: 2px;
  content: "";
  background: var(--faq-red);
}

.faq-search {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.7rem 0.9rem;
  border: 1px solid var(--faq-border);
  background: rgba(8, 13, 19, 0.85);
  transition: border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), box-shadow 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-search:focus-within {
  border-color: var(--faq-red);
  box-shadow: inset 0 0 0 1px rgba(255, 70, 85, 0.35);
}

.faq-search__icon {
  flex: 0 0 auto;
  color: var(--faq-red);
  line-height: 0;
}
.faq-search__icon svg {
  width: 1.15rem;
  height: 1.15rem;
}

.faq-search__input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0;
  border: 0;
  color: #fff;
  font-size: 0.95rem;
  background: transparent;
}
.faq-search__input::placeholder {
  color: rgba(235, 241, 247, 0.42);
}
.faq-search__input:focus {
  outline: 0;
}
.faq-search__input::-webkit-search-cancel-button {
  appearance: none;
}

.faq-search__clear {
  flex: 0 0 auto;
  width: 1.6rem;
  height: 1.6rem;
  padding: 0;
  border: 1px solid var(--faq-border);
  color: var(--faq-muted);
  font-size: 1rem;
  line-height: 1;
  background: transparent;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-search__clear:hover, .faq-search__clear:focus-visible {
  border-color: var(--faq-red);
  color: #fff;
}

.faq-console__count {
  margin: 0.85rem 0 0;
  color: var(--faq-muted);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.faq-console__count strong {
  display: inline-block;
  margin-right: 0.35em;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 700;
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-console__count.is-updating strong {
  transform: translateY(-0.2rem);
}

.faq-filters {
  position: sticky;
  z-index: 5;
  top: var(--header-height, 4.5rem);
  border-bottom: 1px solid var(--faq-border);
  background: rgba(8, 13, 19, 0.94);
  backdrop-filter: blur(0.5rem);
}

.faq-filters__inner {
  display: flex;
  gap: 0.5rem;
  padding-block: 0.85rem;
  overflow-x: auto;
  scrollbar-width: none;
}
.faq-filters__inner::-webkit-scrollbar {
  display: none;
}

.faq-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  flex: 0 0 auto;
  padding: 0.55rem 1rem;
  border: 1px solid var(--faq-border);
  color: var(--faq-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: transparent;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
}
.faq-chip:hover, .faq-chip:focus-visible {
  border-color: var(--faq-border-strong);
  color: #fff;
}
.faq-chip.is-active {
  border-color: var(--faq-red);
  color: #fff;
  background: rgba(255, 70, 85, 0.14);
}

.faq-chip__index {
  color: var(--faq-red);
  font-size: 0.7rem;
}

.faq-body {
  padding-block: clamp(2.5rem, 5vw, 4rem) clamp(3rem, 6vw, 5rem);
}

.faq-category + .faq-category {
  margin-top: clamp(2.75rem, 5vw, 4rem);
}
.faq-category[hidden] {
  display: none;
}

.faq-category__head {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.85rem, 2vw, 1.4rem);
  padding-bottom: 1.1rem;
  margin-bottom: 1.4rem;
  border-bottom: 1px solid var(--faq-border);
}
.faq-category__head h2, .faq-category__head .h2 {
  margin: 0;
  font-size: clamp(1.9rem, 3.4vw, 2.8rem);
  line-height: 1;
}
.faq-category__head p {
  margin: 0.35rem 0 0;
  color: var(--faq-muted);
  font-size: 0.95rem;
}

.faq-category__index {
  color: var(--faq-red);
  font-family: "League Gothic", sans-serif;
  font-size: clamp(1.9rem, 3.4vw, 2.8rem);
  line-height: 1;
}

.faq-list {
  display: grid;
  gap: 0.6rem;
  max-width: 58rem;
  padding: 0;
  margin: 0 auto;
  list-style: none;
}

.faq-item {
  position: relative;
  scroll-margin-top: calc(var(--header-height, 4.5rem) + 5rem);
  border: 1px solid var(--faq-border);
  background: var(--faq-panel);
  transition: border-color 200ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-item::before {
  position: absolute;
  top: 0;
  left: -1px;
  width: 2px;
  height: 100%;
  content: "";
  background: var(--faq-red);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-item:hover {
  border-color: var(--faq-border-strong);
  background: var(--faq-panel-hover);
}
.faq-item.is-open {
  border-color: var(--faq-border-strong);
  background: var(--faq-panel-hover);
}
.faq-item.is-open::before {
  transform: scaleY(1);
}
.faq-item[hidden] {
  display: none;
}
.faq-item.is-targeted {
  border-color: var(--faq-red);
}

.faq-item__heading {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: normal;
  text-transform: none;
}

.faq-item__trigger {
  display: flex;
  align-items: center;
  gap: clamp(0.75rem, 2vw, 1.25rem);
  width: 100%;
  padding: clamp(1rem, 2.2vw, 1.35rem) clamp(1rem, 2.5vw, 1.6rem);
  border: 0;
  color: #fff;
  text-align: left;
  background: transparent;
}
.faq-item__trigger:focus-visible {
  outline: 2px solid var(--faq-red);
  outline-offset: -2px;
}

.faq-item__number {
  flex: 0 0 auto;
  color: var(--faq-red);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
}

.faq-item__question {
  flex: 1 1 auto;
  font-size: clamp(1rem, 1.8vw, 1.15rem);
  font-weight: 600;
  line-height: 1.4;
}

.faq-item__marker {
  position: relative;
  display: none;
  flex: 0 0 auto;
  width: 1.5rem;
  height: 1.5rem;
  border: 1px solid var(--faq-border-strong);
  transition: border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-faq.is-interactive .faq-item__marker {
  display: block;
}
.faq-item__marker::before, .faq-item__marker::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.65rem;
  height: 2px;
  content: "";
  background: currentColor;
  transform: translate(-50%, -50%);
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1), opacity 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-item__marker::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.faq-item.is-open .faq-item__marker {
  border-color: var(--faq-red);
  background: rgba(255, 70, 85, 0.16);
}
.faq-item.is-open .faq-item__marker::after {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(0deg);
}

.faq-item__panel {
  display: grid;
  grid-template-rows: 1fr;
}
.faq-item__panel > * {
  overflow: hidden;
}

.catch-faq.is-interactive .faq-item__panel {
  grid-template-rows: 0fr;
  transition: grid-template-rows 300ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.catch-faq.is-interactive .faq-item.is-open .faq-item__panel {
  grid-template-rows: 1fr;
}

.faq-item__answer {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0 clamp(1.5rem, 3vw, 2.5rem);
  padding: 0 clamp(1rem, 2.5vw, 1.6rem);
  color: var(--faq-muted);
  font-size: 0.95rem;
  line-height: 1.75;
}
.faq-item__answer::after {
  grid-column: 1/-1;
  display: block;
  height: clamp(1rem, 2.5vw, 1.5rem);
  content: "";
}

.faq-item__answer--with-aside {
  grid-template-columns: minmax(0, 68ch) minmax(11rem, 1fr);
}

.faq-item__text {
  max-width: 68ch;
}
.faq-item__text > p {
  margin: 0 0 0.85rem;
}
.faq-item__text > p:first-child {
  margin-top: 0;
}

.faq-item__aside {
  align-self: start;
  padding: 0.9rem 1rem;
  border-left: 2px solid rgba(255, 70, 85, 0.35);
  background: rgba(8, 13, 19, 0.45);
}

.faq-item__aside-label {
  margin: 0 0 0.5rem;
  color: rgba(255, 255, 255, 0.45);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.faq-item__aside .faq-item__actions {
  flex-direction: column;
  gap: 0.6rem;
}

@media (max-width: 767.98px) {
  .faq-item__answer--with-aside {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
  }
}
.faq-points {
  display: grid;
  gap: 0.5rem;
  padding: 0;
  margin: 0 0 1rem;
  list-style: none;
}
.faq-points li {
  position: relative;
  padding-left: 1.5rem;
}
.faq-points li::before {
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 0.55rem;
  height: 2px;
  content: "";
  background: var(--faq-red);
}

.faq-details {
  display: grid;
  gap: 0.5rem;
  padding: 0;
  margin: 0 0 1rem;
  list-style: none;
}
.faq-details li {
  padding: 0.75rem 0.95rem;
  border-left: 2px solid rgba(255, 70, 85, 0.55);
  background: rgba(8, 13, 19, 0.6);
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-details li:hover {
  background: rgba(8, 13, 19, 0.9);
}

.faq-details__title {
  display: block;
  color: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.faq-details__text {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.92rem;
  line-height: 1.6;
}

.faq-item__footer {
  grid-column: 1/-1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.75rem 1.5rem;
  padding-top: 0.35rem;
}

.faq-item__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  margin: 0;
}

.faq-item__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: #fff;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.faq-item__link span {
  color: var(--faq-red);
  transition: transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-item__link:hover, .faq-item__link:focus-visible {
  color: var(--faq-red);
}
.faq-item__link:hover span, .faq-item__link:focus-visible span {
  transform: translateX(0.25rem);
}

.faq-item__share {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0;
  border: 0;
  color: rgba(235, 241, 247, 0.5);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: transparent;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.faq-item__share:hover, .faq-item__share:focus-visible {
  color: #fff;
}
.faq-item__share.is-copied {
  color: var(--faq-red);
}

.faq-item__share-icon {
  line-height: 0;
}
.faq-item__share-icon svg {
  width: 0.95rem;
  height: 0.95rem;
}

.faq-empty {
  display: grid;
  gap: 0.5rem;
  padding: clamp(2rem, 5vw, 3rem);
  margin: 0;
  border: 1px dashed var(--faq-border-strong);
  text-align: center;
}
.faq-empty[hidden] {
  display: none;
}

.faq-empty__title {
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.faq-empty__text {
  color: var(--faq-muted);
  font-size: 0.95rem;
}

.faq-cta {
  position: relative;
  border-top: 1px solid var(--faq-border);
  background: linear-gradient(120deg, rgba(255, 70, 85, 0.1), transparent 55%), rgba(11, 17, 24, 0.9);
}

.faq-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: clamp(1.5rem, 4vw, 3rem);
  padding-block: clamp(2.5rem, 5vw, 4rem);
}
.faq-cta__inner h2, .faq-cta__inner .h2 {
  margin: 0.3rem 0 0.6rem;
  font-size: clamp(2rem, 3.6vw, 3rem);
  line-height: 1;
}

.faq-cta__copy {
  max-width: 38rem;
}

.faq-cta__text {
  margin: 0;
  color: var(--faq-muted);
}

.faq-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

@media (prefers-reduced-motion: reduce) {
  .faq-item,
  .faq-item::before,
  .faq-item__panel,
  .faq-item__marker::before,
  .faq-item__marker::after,
  .faq-console__count strong {
    transition: none;
  }
}
.catch-extractor {
  --extractor-bg: #080d13;
  --extractor-panel: #111923;
  --extractor-panel-soft: #151f2b;
  --extractor-border: rgba(255, 255, 255, 0.11);
  --extractor-muted: rgba(235, 241, 247, 0.64);
  --extractor-cyan: #58d9f3;
  --extractor-green: #65d6ad;
  --extractor-red: #ff4655;
  min-height: 75vh;
  padding-bottom: clamp(3.5rem, 7vw, 6.5rem);
  overflow: clip;
  color: #f5f8fb;
  background: radial-gradient(circle at 82% 3%, rgba(88, 217, 243, 0.13), transparent 30rem), radial-gradient(circle at 8% 48%, rgba(255, 70, 85, 0.09), transparent 29rem), var(--extractor-bg);
}
.catch-extractor [hidden] {
  display: none !important;
}

.catch-hero--extractor {
  min-height: clamp(29rem, 52vw, 42rem);
  --catch-hero-muted: rgba(235, 241, 247, 0.68);
  background: linear-gradient(108deg, rgba(255, 255, 255, 0.034), transparent 45%), repeating-linear-gradient(135deg, transparent 0 5.9rem, rgba(255, 255, 255, 0.018) 6rem 6.06rem), radial-gradient(circle at 76% 50%, rgba(88, 217, 243, 0.1), transparent 24rem);
}
.catch-hero--extractor .catch-hero__inner {
  min-height: inherit;
  align-items: center;
  grid-template-columns: minmax(0, 1.05fr) minmax(24rem, 0.95fr);
  padding-block: clamp(2rem, 4vw, 3.5rem);
}
.catch-hero--extractor .catch-hero__copy {
  position: relative;
  z-index: 2;
}
.catch-hero--extractor .catch-hero__copy h1, .catch-hero--extractor .catch-hero__copy .h1 {
  max-width: 47rem;
  font-size: clamp(4rem, 7.3vw, 7.25rem);
}
.catch-hero--extractor .catch-hero__lead strong {
  color: #fff;
}

.extractor-hero-machine {
  position: relative;
  align-self: stretch;
  min-height: clamp(25rem, 43vw, 37rem);
  isolation: isolate;
}
.extractor-hero-machine__halo, .extractor-hero-machine__grid {
  position: absolute;
  pointer-events: none;
}
.extractor-hero-machine__halo {
  z-index: -2;
  top: 50%;
  left: 54%;
  width: min(34rem, 92%);
  aspect-ratio: 1;
  border: 1px solid rgba(88, 217, 243, 0.16);
  background: radial-gradient(circle, rgba(88, 217, 243, 0.18), rgba(88, 217, 243, 0.035) 42%, transparent 69%);
  box-shadow: 0 0 5rem rgba(88, 217, 243, 0.08);
  transform: translate(-50%, -50%) rotate(45deg);
  animation: extractor-halo 4s ease-in-out infinite;
}
.extractor-hero-machine__halo::before, .extractor-hero-machine__halo::after {
  position: absolute;
  content: "";
  border: 1px solid rgba(255, 255, 255, 0.08);
  inset: 13%;
}
.extractor-hero-machine__halo::after {
  inset: 29%;
  border-color: rgba(255, 70, 85, 0.2);
}
.extractor-hero-machine__grid {
  z-index: -1;
  right: -8%;
  bottom: 8%;
  width: 74%;
  height: 44%;
  opacity: 0.34;
  background-image: linear-gradient(rgba(88, 217, 243, 0.13) 1px, transparent 1px), linear-gradient(90deg, rgba(88, 217, 243, 0.13) 1px, transparent 1px);
  background-size: 1.5rem 1.5rem;
  mask-image: linear-gradient(to top, #000, transparent 88%);
  transform: perspective(25rem) rotateX(62deg) rotateZ(-8deg);
  transform-origin: bottom;
}
.extractor-hero-machine img {
  position: absolute;
  z-index: 1;
  right: -5%;
  bottom: -2rem;
  display: block;
  width: min(39rem, 115%);
  height: auto;
  max-width: none;
  filter: drop-shadow(0 2.5rem 2.5rem rgba(0, 0, 0, 0.45));
  transform-origin: 54% 78%;
  animation: extractor-machine-idle 5s ease-in-out infinite;
}
.extractor-hero-machine__tag {
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 1.1rem;
  display: inline-flex;
  min-height: 2.4rem;
  align-items: center;
  gap: 0.7rem;
  padding: 0.6rem 0.8rem;
  color: rgba(245, 248, 251, 0.76);
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(8, 13, 19, 0.82);
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  backdrop-filter: blur(0.6rem);
}
.extractor-hero-machine__tag i {
  width: 0.42rem;
  height: 0.42rem;
  background: var(--extractor-green);
  box-shadow: 0 0 0.8rem rgba(101, 214, 173, 0.8);
  transform: rotate(45deg);
}

@keyframes extractor-machine-idle {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-0.45rem);
  }
}
@keyframes extractor-halo {
  0%, 100% {
    opacity: 0.72;
    transform: translate(-50%, -50%) rotate(45deg) scale(0.96);
  }
  50% {
    opacity: 1;
    transform: translate(-50%, -50%) rotate(45deg) scale(1.03);
  }
}
.extractor-layout {
  padding-top: clamp(2rem, 5vw, 4.5rem);
}

.extractor-console {
  position: relative;
  display: grid;
  min-height: 29rem;
  grid-template-columns: clamp(3.25rem, 5vw, 4.5rem) minmax(0, 1.15fr) minmax(20rem, 0.85fr);
  overflow: hidden;
  border: 1px solid var(--extractor-border);
  background: linear-gradient(112deg, rgba(255, 255, 255, 0.036), transparent 42%), var(--extractor-panel);
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.26);
  isolation: isolate;
}
.extractor-console::before {
  position: absolute;
  z-index: -1;
  top: -12rem;
  left: 45%;
  width: 28rem;
  height: 28rem;
  content: "";
  border: 1px solid rgba(88, 217, 243, 0.08);
  transform: rotate(45deg);
}
.extractor-console::after {
  position: absolute;
  z-index: 2;
  top: -1px;
  right: 0;
  width: min(25rem, 40%);
  height: 2px;
  content: "";
  background: linear-gradient(90deg, transparent, var(--extractor-red));
}
.extractor-console__rail {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.25rem 0.5rem;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(5, 9, 14, 0.42);
}
.extractor-console__rail span {
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2rem, 3.5vw, 3.15rem);
  line-height: 1;
}
.extractor-console__rail i {
  width: 1px;
  flex: 1;
  margin: 1rem 0;
  background: linear-gradient(to bottom, var(--extractor-red), rgba(255, 255, 255, 0.08));
}
.extractor-console__rail small, .extractor-console__rail .small {
  color: rgba(248, 250, 252, 0.42);
  font-size: 0.56rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.extractor-console__brief, .extractor-console__operation {
  min-width: 0;
  padding: clamp(2rem, 5vw, 4rem);
}
.extractor-console__brief {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.extractor-console__brief h2, .extractor-console__brief .h2 {
  margin: 0.45rem 0 1.1rem;
  font-size: clamp(3rem, 6vw, 5.5rem);
  line-height: 0.9;
}
.extractor-console__brief > p {
  max-width: 38rem;
  margin: 0;
  color: var(--extractor-muted);
  line-height: 1.7;
}
.extractor-console__metrics {
  display: grid;
  margin: clamp(2rem, 5vw, 3.5rem) 0 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--extractor-border);
  border-bottom: 1px solid var(--extractor-border);
}
.extractor-console__metrics div {
  min-width: 0;
  padding: 1.15rem;
  border-left: 1px solid var(--extractor-border);
}
.extractor-console__metrics div:first-child {
  padding-left: 0;
  border-left: 0;
}
.extractor-console__metrics dt {
  color: var(--extractor-muted);
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.extractor-console__metrics dd {
  margin: 0.35rem 0 0;
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1;
  white-space: nowrap;
}
.extractor-console__metrics dd small, .extractor-console__metrics dd .small {
  color: var(--extractor-muted);
  font-family: "Barlow", sans-serif;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.extractor-console__countdown {
  color: var(--extractor-cyan) !important;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.04em;
}
.extractor-console__operation {
  position: relative;
  display: flex;
  justify-content: center;
  flex-direction: column;
  border-left: 1px solid var(--extractor-border);
  background: radial-gradient(circle at 50% 36%, rgba(88, 217, 243, 0.1), transparent 15rem), rgba(5, 10, 16, 0.34);
}
.extractor-console__operation > p {
  margin: 1.25rem 0 1.5rem;
  color: var(--extractor-muted);
  font-size: 0.86rem;
  line-height: 1.6;
}
.extractor-console__signal {
  position: absolute;
  right: 1.2rem;
  bottom: 1.2rem;
  display: flex;
  gap: 0.3rem;
}
.extractor-console__signal span {
  width: 1.25rem;
  height: 0.18rem;
  background: rgba(255, 255, 255, 0.12);
  animation: extractor-signal 1.4s ease-in-out infinite;
}
.extractor-console__signal span:nth-child(2) {
  animation-delay: 120ms;
}
.extractor-console__signal span:nth-child(3) {
  animation-delay: 240ms;
}
.extractor-console__signal span:nth-child(4) {
  animation-delay: 360ms;
}
.extractor-console__signal span:nth-child(5) {
  animation-delay: 480ms;
}

@keyframes extractor-signal {
  0%, 100% {
    background: rgba(255, 255, 255, 0.12);
  }
  45% {
    background: var(--extractor-cyan);
    box-shadow: 0 0 0.6rem rgba(88, 217, 243, 0.45);
  }
}
.extractor-operation-state {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 0.7rem;
  color: var(--extractor-green);
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}
.extractor-operation-state__signal {
  width: 0.5rem;
  height: 0.5rem;
  background: currentColor;
  box-shadow: 0 0 0.9rem currentColor;
  transform: rotate(45deg);
}
.extractor-operation-state--complete, .extractor-operation-state--locked {
  color: var(--extractor-muted);
}
.extractor-operation-state--complete .extractor-operation-state__signal, .extractor-operation-state--locked .extractor-operation-state__signal {
  box-shadow: none;
}
.extractor-operation-state--error {
  color: #ff9ca4;
}

.extractor-charge {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-top: 1.5rem;
  padding: 1.3rem 0 1.1rem;
  border-top: 1px solid rgba(88, 217, 243, 0.24);
  border-bottom: 1px solid rgba(88, 217, 243, 0.24);
}
.extractor-charge > span {
  max-width: 8rem;
  color: var(--extractor-muted);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.45;
  text-transform: uppercase;
}
.extractor-charge strong {
  display: inline-flex;
  align-items: center;
  gap: 0.22em;
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(4rem, 8vw, 6rem);
  font-weight: 400;
  line-height: 0.8;
  text-shadow: 0 0 2rem rgba(88, 217, 243, 0.25);
}
.extractor-charge strong i {
  width: 0.28em;
  height: 0.28em;
  background: var(--extractor-red);
  transform: rotate(45deg);
}
.extractor-charge.has-transferred strong {
  animation: extractor-transfer 620ms cubic-bezier(0.2, 0.6, 0.2, 1) both;
}

@keyframes extractor-transfer {
  0% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  45% {
    opacity: 0;
    transform: translateY(-1rem) scale(1.12);
  }
  46% {
    transform: translateY(1rem) scale(0.92);
  }
  100% {
    opacity: 0.5;
    transform: translateY(0) scale(1);
  }
}
.extractor-button {
  display: inline-flex;
  min-height: 3.25rem;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 0.85rem 1.15rem;
  color: #fff;
  border: 1px solid var(--extractor-red);
  background: var(--extractor-red);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  transition: color 180ms ease, border-color 180ms ease, background 180ms ease, transform 180ms ease;
}
.extractor-button span:last-child {
  font-size: 1rem;
  transition: transform 180ms ease;
}
.extractor-button:hover, .extractor-button:focus-visible {
  color: #fff;
  border-color: #ff6b77;
  background: #ff5967;
  transform: translateY(-0.15rem);
}
.extractor-button:hover span:last-child, .extractor-button:focus-visible span:last-child {
  transform: translateX(0.2rem);
}
.extractor-button:disabled, .extractor-button:disabled:hover, .extractor-button.is-loading {
  color: rgba(245, 248, 251, 0.5);
  border-color: rgba(255, 255, 255, 0.11);
  background: rgba(255, 255, 255, 0.055);
  cursor: not-allowed;
  transform: none;
}

.extractor-wallet {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--extractor-border);
}
.extractor-wallet > span {
  color: var(--extractor-muted);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.extractor-wallet strong {
  font-size: 1rem;
}

.extractor-feedback {
  min-height: 1.35rem;
  margin: 0.85rem 0 0 !important;
  color: var(--extractor-green) !important;
}
.extractor-feedback.is-error {
  color: #ff9ca4 !important;
}

.is-claimed .extractor-charge strong {
  opacity: 0.5;
}
.is-claimed .extractor-console__signal span {
  animation: none;
}

.daily-reward-cards {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  gap: 0.75rem;
  margin-top: 1.75rem;
}

.daily-reward-card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 7.25rem;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
  border: 1px solid var(--extractor-border);
  background: rgba(5, 10, 16, 0.42);
  overflow: hidden;
}
.daily-reward-card::after {
  position: absolute;
  right: -2.5rem;
  bottom: -3.5rem;
  width: 8rem;
  height: 8rem;
  border: 1px solid rgba(255, 255, 255, 0.06);
  content: "";
  transform: rotate(45deg);
}
.daily-reward-card--radianite {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: flex-start;
  background: radial-gradient(circle at 15% 50%, rgba(255, 70, 85, 0.15), transparent 70%), rgba(5, 10, 16, 0.42);
}
.daily-reward-card--radianite strong {
  gap: 0.55rem;
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1;
}
.daily-reward-card--booster {
  background: radial-gradient(circle at 18% 50%, rgba(168, 71, 255, 0.18), transparent 55%), rgba(5, 10, 16, 0.42);
}
.daily-reward-card--booster strong {
  display: block;
  margin-top: 0.3rem;
  color: #fff;
  font-size: 1rem;
  line-height: 1.25;
  text-transform: uppercase;
}
.daily-reward-card__label,
.daily-reward-card small,
.daily-reward-card .small {
  display: block;
  color: var(--extractor-muted);
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.4;
  text-transform: uppercase;
}
.daily-reward-card small, .daily-reward-card .small {
  margin-top: 0.35rem;
}
.daily-reward-card__pack {
  position: relative;
  z-index: 1;
  display: grid;
  flex: 0 0 3.75rem;
  width: 3.75rem;
  aspect-ratio: 0.68;
  place-items: center;
  border: 1px solid rgba(168, 71, 255, 0.42);
  background: #101923;
  box-shadow: 0 0.8rem 1.5rem rgba(0, 0, 0, 0.34);
  transform: rotate(-4deg);
}
.daily-reward-card__pack > span {
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: 1.6rem;
}
.daily-reward-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.daily-reward-bundle strong {
  flex-wrap: wrap;
  justify-content: flex-end;
}
.daily-reward-bundle strong small, .daily-reward-bundle strong .small {
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: 0.48em;
  font-weight: 400;
  line-height: 1;
}

.daily-streak {
  margin-top: clamp(1.5rem, 4vw, 2.5rem);
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border: 1px solid var(--extractor-border);
  background: linear-gradient(112deg, rgba(255, 255, 255, 0.032), transparent 42%), var(--extractor-panel);
  box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.2);
}
.daily-streak__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 1.5rem;
}
.daily-streak__header h2, .daily-streak__header .h2 {
  margin: 0.45rem 0 0;
  font-size: clamp(2.5rem, 5vw, 4.5rem);
  line-height: 0.95;
}
.daily-streak__status {
  flex: 0 0 auto;
  text-align: right;
}
.daily-streak__status strong,
.daily-streak__status span {
  display: block;
}
.daily-streak__status strong {
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: 2.5rem;
  font-variant-numeric: tabular-nums;
  font-weight: 400;
  line-height: 1;
}
.daily-streak__status span {
  margin-top: 0.25rem;
  color: var(--extractor-muted);
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.daily-streak__days {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr)) minmax(9rem, 1.45fr);
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.daily-streak__day {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 9.5rem;
  flex-direction: column;
  padding: 0.9rem;
  border: 1px solid rgba(255, 255, 255, 0.09);
  background: rgba(5, 10, 16, 0.42);
  color: rgba(255, 255, 255, 0.48);
  transition: border-color 200ms ease, background-color 200ms ease, color 200ms ease;
}
.daily-streak__day.is-next {
  border-color: rgba(88, 217, 243, 0.68);
  background: rgba(88, 217, 243, 0.075);
  color: #fff;
  box-shadow: inset 0 0 1.5rem rgba(88, 217, 243, 0.06);
}
.daily-streak__day.is-complete {
  border-color: rgba(101, 214, 173, 0.46);
  background: rgba(101, 214, 173, 0.065);
  color: #fff;
}
.daily-streak__day--bonus {
  border-color: rgba(233, 169, 63, 0.36);
  background: radial-gradient(circle at 80% 25%, rgba(233, 169, 63, 0.16), transparent 55%), rgba(5, 10, 16, 0.5);
}
.daily-streak__day--bonus.is-next, .daily-streak__day--bonus.is-complete {
  border-color: rgba(233, 169, 63, 0.72);
}
.daily-streak__day > strong {
  margin-top: auto;
  color: currentColor;
  font-size: 0.72rem;
  line-height: 1.3;
  text-transform: uppercase;
}
.daily-streak__day > small, .daily-streak__day > .small {
  margin-top: 0.25rem;
  color: var(--extractor-muted);
  font-size: 0.56rem;
  line-height: 1.35;
}
.daily-streak__index {
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border: 1px solid currentColor;
  font-family: "League Gothic", sans-serif;
  font-size: 1.25rem;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  transform: rotate(45deg);
}
.daily-streak__index i {
  width: 0.75rem;
  height: 0.4rem;
  border-bottom: 2px solid var(--extractor-green);
  border-left: 2px solid var(--extractor-green);
  transform: rotate(-90deg);
}
.daily-streak__label {
  margin-top: 0.85rem;
  color: currentColor;
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.daily-streak__bonus-pack {
  position: absolute;
  top: 0.65rem;
  right: 0.65rem;
  display: block;
  width: 2.75rem;
  aspect-ratio: 0.68;
  border: 1px solid rgba(233, 169, 63, 0.38);
  background: #101923;
  overflow: hidden;
  transform: rotate(5deg);
}
.daily-streak__bonus-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.daily-streak__rule {
  margin: 1rem 0 0;
  color: var(--extractor-muted);
  font-size: 0.72rem;
  line-height: 1.5;
  text-align: right;
}

.extractor-footnote {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  margin: 1.25rem 0 0;
  color: var(--extractor-muted);
  font-size: 0.72rem;
  text-align: center;
}
.extractor-footnote span {
  color: var(--extractor-red);
  font-size: 0.58rem;
}

@media (max-width: 991.98px) {
  .catch-hero--extractor .catch-hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(19rem, 0.72fr);
  }
  .catch-hero--extractor .catch-hero__copy h1, .catch-hero--extractor .catch-hero__copy .h1 {
    font-size: clamp(4rem, 9vw, 6rem);
  }
  .extractor-console {
    grid-template-columns: 3.5rem minmax(0, 1fr);
  }
  .extractor-console__operation {
    grid-column: 2;
    border-top: 1px solid var(--extractor-border);
    border-left: 0;
  }
  .extractor-console__rail {
    grid-row: 1/span 2;
  }
  .daily-streak__days {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .daily-streak__day--bonus {
    grid-column: span 2;
  }
}
@media (max-width: 767.98px) {
  .catch-hero--extractor {
    min-height: auto;
  }
  .catch-hero--extractor .catch-hero__inner {
    grid-template-columns: minmax(0, 1fr);
    padding-bottom: 0;
  }
  .catch-hero--extractor .catch-hero__copy {
    padding-bottom: 1rem;
  }
  .extractor-hero-machine {
    min-height: 26rem;
  }
  .extractor-hero-machine img {
    right: 50%;
    width: min(32rem, 105vw);
    transform: translateX(50%);
    animation-name: extractor-machine-idle-mobile;
  }
  .extractor-hero-machine__halo {
    left: 50%;
  }
  .extractor-hero-machine__tag {
    right: 1rem;
  }
  @keyframes extractor-machine-idle-mobile {
    0%, 100% {
      transform: translateX(50%) translateY(0);
    }
    50% {
      transform: translateX(50%) translateY(-0.35rem);
    }
  }
  .extractor-console {
    display: block;
  }
  .extractor-console__rail {
    display: none;
  }
  .extractor-console__brief, .extractor-console__operation {
    padding: 1.6rem;
  }
  .extractor-console__metrics {
    grid-template-columns: 1fr;
  }
  .extractor-console__metrics div,
  .extractor-console__metrics div:first-child {
    padding: 1rem 0;
    border-top: 1px solid var(--extractor-border);
    border-left: 0;
  }
  .extractor-console__metrics div:first-child {
    border-top: 0;
  }
  .extractor-console__operation {
    border-top: 1px solid var(--extractor-border);
  }
  .daily-reward-cards {
    grid-template-columns: 1fr;
  }
  .daily-streak {
    padding: 1.25rem;
  }
  .daily-streak__header {
    align-items: flex-start;
    flex-direction: column;
    gap: 1rem;
  }
  .daily-streak__status {
    text-align: left;
  }
  .daily-streak__days {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .daily-streak__day--bonus {
    grid-column: span 2;
  }
  .daily-streak__rule {
    text-align: left;
  }
}
@media (prefers-reduced-motion: reduce) {
  .extractor-hero-machine img,
  .extractor-hero-machine__halo,
  .extractor-console__signal span,
  .extractor-charge.has-transferred strong,
  .daily-streak__day {
    animation: none;
    transition: none;
  }
}
/* =========================================================
   ANNUAIRE DE LA COMMUNAUTE
========================================================= */
.community-directory {
  --community-dark: #0f1923;
  --community-panel: #17232f;
  --community-muted: #68727c;
  --community-border: rgba(15, 25, 35, 0.15);
  --community-red: #ff4655;
  --community-online: #32c98b;
  min-height: 70vh;
  background: linear-gradient(rgba(15, 25, 35, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(15, 25, 35, 0.035) 1px, transparent 1px), #ECE8E1;
  background-size: 2.5rem 2.5rem;
  color: var(--community-dark);
}

.community-directory__hero {
  position: relative;
  overflow: hidden;
  padding: clamp(3.5rem, 8vw, 6.5rem) 0 clamp(3rem, 6vw, 5rem);
  background: radial-gradient(circle at 78% 20%, rgba(255, 70, 85, 0.2), transparent 24rem), linear-gradient(125deg, #0f1923 0%, #172532 70%, #0f1923 100%);
  color: #ECE8E1;
}
.community-directory__hero::after {
  content: "";
  position: absolute;
  right: -8rem;
  bottom: -14rem;
  width: 34rem;
  height: 34rem;
  border: 1px solid rgba(255, 255, 255, 0.08);
  transform: rotate(45deg);
  pointer-events: none;
}
.community-directory__hero .container {
  position: relative;
  z-index: 1;
}
.community-directory__hero .catch-eyebrow {
  color: var(--community-red);
}
.community-directory__hero h1, .community-directory__hero .h1 {
  max-width: 54rem;
  margin: 0.65rem 0 1rem;
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(3.8rem, 9vw, 7rem);
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 0.88;
  text-transform: uppercase;
}
.community-directory__hero p {
  max-width: 42rem;
  margin: 0;
  color: rgba(236, 232, 225, 0.75);
  font-size: clamp(1rem, 2vw, 1.15rem);
  line-height: 1.65;
}

.community-directory__content {
  padding: clamp(2.5rem, 6vw, 5rem) 0 6rem;
}

.community-directory__search {
  margin: 0 0 1.5rem;
  padding: clamp(1.25rem, 3vw, 1.75rem);
  border: 1px solid var(--community-border);
  border-left: 4px solid var(--community-red);
  background: #fff;
  box-shadow: 0 1rem 3rem rgba(15, 25, 35, 0.08);
}
.community-directory__search label {
  display: block;
  margin-bottom: 0.6rem;
  color: var(--community-dark);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.community-directory__search-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.75rem;
}
.community-directory__search-row .form-control {
  min-height: 3.4rem;
  border: 1px solid rgba(15, 25, 35, 0.2);
  background: #f7f5f1;
  color: var(--community-dark);
}
.community-directory__search-row .form-control:focus {
  border-color: var(--community-red);
  box-shadow: 0 0 0 0.2rem rgba(255, 70, 85, 0.12);
}
.community-directory__search-row button {
  min-width: 9.5rem;
  border: 1px solid var(--community-red);
  padding: 0.8rem 1.35rem;
  background: var(--community-red);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0 100%);
  transition: background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.community-directory__search-row button:hover {
  border-color: var(--community-dark);
  background: var(--community-dark);
}
.community-directory__search-row button:focus-visible {
  outline: 2px solid var(--community-dark);
  outline-offset: 3px;
}

.community-directory__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.community-directory__filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.community-directory__filters a {
  display: inline-flex;
  min-height: 2.65rem;
  align-items: center;
  border: 1px solid var(--community-border);
  padding: 0.6rem 0.95rem;
  background: rgba(255, 255, 255, 0.72);
  color: var(--community-muted);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), border-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.community-directory__filters a:hover, .community-directory__filters a.is-active {
  border-color: var(--community-dark);
  background: var(--community-dark);
  color: #fff;
}
.community-directory__filters a.is-disabled {
  cursor: not-allowed;
  opacity: 0.45;
}
.community-directory__filters a:focus-visible {
  outline: 2px solid var(--community-red);
  outline-offset: 2px;
}

.community-directory__count {
  flex: 0 0 auto;
  margin: 0;
  color: var(--community-muted);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.community-directory__status {
  margin: 0 0 1.25rem;
  border-left: 3px solid var(--community-red);
  padding: 0.9rem 1rem;
  background: rgba(255, 70, 85, 0.08);
  color: #a51f2c;
}

.community-directory__results {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  transition: opacity 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.community-directory.is-loading .community-directory__results,
.community-directory.is-loading .community-directory__pagination {
  opacity: 0.48;
  pointer-events: none;
}

.community-player {
  display: flex;
  min-width: 0;
  min-height: 15rem;
  flex-direction: column;
  border: 1px solid var(--community-border);
  border-top: 3px solid var(--community-dark);
  background: #fff;
  box-shadow: 0 0.8rem 2rem rgba(15, 25, 35, 0.06);
  clip-path: polygon(0 0, calc(100% - 1rem) 0, 100% 1rem, 100% 100%, 0 100%);
  transition: border-color 200ms cubic-bezier(0.2, 0.6, 0.2, 1), transform 200ms cubic-bezier(0.2, 0.6, 0.2, 1), box-shadow 200ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.community-player.is-online {
  border-top-color: var(--community-online);
}
.community-player:hover {
  border-color: rgba(15, 25, 35, 0.35);
  box-shadow: 0 1.15rem 2.8rem rgba(15, 25, 35, 0.12);
  transform: translateY(-2px);
}

.community-player__identity {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 1rem;
  padding: 1.35rem;
  color: inherit;
  text-decoration: none;
}
.community-player__identity:focus-visible {
  outline: 2px solid var(--community-red);
  outline-offset: -4px;
}

.community-player__avatar {
  display: flex;
  width: 4.5rem;
  height: 4.5rem;
  flex: 0 0 4.5rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(15, 25, 35, 0.2);
  object-fit: cover;
  clip-path: polygon(0 0, calc(100% - 0.65rem) 0, 100% 0.65rem, 100% 100%, 0 100%);
}

.community-player__avatar--initial {
  background: var(--community-dark);
  color: #fff;
  font-family: "League Gothic", sans-serif;
  font-size: 2.4rem;
  text-transform: uppercase;
}

.community-player__name-wrap {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0.35rem;
}

.community-player__name {
  overflow: hidden;
  color: var(--community-dark);
  font-size: 1.15rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.community-player__online,
.community-player__offline {
  color: var(--community-muted);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.community-player__online {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  color: #16825c;
}
.community-player__online span {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--community-online);
  box-shadow: 0 0 0 0.2rem rgba(50, 201, 139, 0.14);
}

.community-player__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: auto 1.35rem 1.2rem;
  border: 1px solid var(--community-border);
}
.community-player__stats div {
  padding: 0.75rem 0.85rem;
}
.community-player__stats div + div {
  border-left: 1px solid var(--community-border);
}
.community-player__stats dt {
  color: var(--community-muted);
  font-size: 0.64rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.community-player__stats dd {
  margin: 0.1rem 0 0;
  color: var(--community-dark);
  font-size: 1.15rem;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.community-player__link {
  display: flex;
  min-height: 3.2rem;
  align-items: center;
  justify-content: center;
  border-top: 1px solid var(--community-border);
  padding: 0.75rem 1rem;
  color: var(--community-red);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color 150ms cubic-bezier(0.2, 0.6, 0.2, 1), background-color 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}
.community-player__link:hover {
  background: var(--community-dark);
  color: #fff;
}
.community-player__link:focus-visible {
  outline: 2px solid var(--community-red);
  outline-offset: -4px;
}

.community-directory__empty {
  grid-column: 1/-1;
  display: flex;
  min-height: 14rem;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.4rem;
  border: 1px dashed rgba(15, 25, 35, 0.28);
  padding: 2rem;
  background: rgba(255, 255, 255, 0.55);
  text-align: center;
}
.community-directory__empty strong {
  color: var(--community-dark);
  font-size: 1.1rem;
}
.community-directory__empty span {
  color: var(--community-muted);
}

.community-directory__pagination {
  margin-top: 2rem;
  transition: opacity 150ms cubic-bezier(0.2, 0.6, 0.2, 1);
}

.community-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
}
.community-pagination a {
  display: inline-flex;
  min-width: 2.75rem;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--community-border);
  padding: 0.5rem 0.8rem;
  background: #fff;
  color: var(--community-dark);
  font-size: 0.72rem;
  font-weight: 800;
  text-decoration: none;
  text-transform: uppercase;
}
.community-pagination a:hover, .community-pagination a.is-active {
  border-color: var(--community-red);
  background: var(--community-red);
  color: #fff;
}
.community-pagination a.is-disabled {
  cursor: default;
  opacity: 0.35;
}
.community-pagination a:focus-visible {
  outline: 2px solid var(--community-dark);
  outline-offset: 2px;
}

.community-pagination__pages {
  display: flex;
  gap: 0.4rem;
}

.community-directory__noscript {
  margin: 1.5rem 0 0;
  color: var(--community-muted);
  text-align: center;
}

@media (max-width: 991.98px) {
  .community-directory__results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 575.98px) {
  .community-directory__search-row {
    grid-template-columns: 1fr;
  }
  .community-directory__search-row button {
    width: 100%;
  }
  .community-directory__toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
  .community-directory__filters {
    width: 100%;
  }
  .community-directory__filters a {
    flex: 1 1 auto;
    justify-content: center;
    text-align: center;
  }
  .community-directory__results {
    grid-template-columns: 1fr;
  }
  .community-pagination {
    flex-wrap: wrap;
  }
  .community-pagination__direction {
    order: 2;
  }
  .community-pagination__pages {
    width: 100%;
    justify-content: center;
  }
}
@media (prefers-reduced-motion: reduce) {
  .community-directory *,
  .community-directory *::before,
  .community-directory *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
.catch-fair-play {
  --catch-hero-title: #ECE8E1;
  --catch-hero-muted: rgba(236, 232, 225, 0.68);
  --fair-play-confirmed: #68e0b6;
  overflow: hidden;
  background: #0F1923;
  color: #ECE8E1;
}

.fair-play-manifest {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 1.2rem;
  min-width: 18rem;
  padding: 1.15rem 1.4rem;
  border: 1px solid rgba(236, 232, 225, 0.16);
  background: rgba(236, 232, 225, 0.035);
}
.fair-play-manifest::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 35%;
  height: 2px;
  content: "";
  background: #FF4655;
}
.fair-play-manifest .catch-eyebrow {
  margin-bottom: 0.35rem;
}
.fair-play-manifest strong {
  display: block;
  color: #ECE8E1;
  font-size: 1rem;
  line-height: 1.25;
  text-transform: uppercase;
}

.fair-play-manifest__index {
  font-family: "League Gothic", sans-serif;
  font-size: 5.25rem;
  line-height: 0.8;
  color: #FF4655;
}

.fair-play-intro {
  position: relative;
  padding: clamp(4rem, 8vw, 7rem) 0;
  background: #ECE8E1;
  color: #0F1923;
}
.fair-play-intro::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 8rem;
  height: 3px;
  content: "";
  background: #FF4655;
}

.fair-play-intro__grid {
  display: grid;
  align-items: end;
  gap: 1.5rem 4rem;
}
.fair-play-intro__grid h2, .fair-play-intro__grid .h2 {
  max-width: 13ch;
  margin: 0.35rem 0 0;
  font-size: clamp(2.8rem, 7vw, 5.4rem);
  line-height: 0.9;
}

.fair-play-intro__lead {
  max-width: 34rem;
  margin: 0;
  color: #5A6672;
  font-size: clamp(1rem, 1.6vw, 1.2rem);
  line-height: 1.7;
}

.fair-play-intro__hint {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  max-width: 34rem;
  margin: 1.1rem 0 0;
  color: #0F1923;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.5;
  text-transform: uppercase;
}
.fair-play-intro__hint > span {
  flex: 0 0 auto;
  width: 0.6rem;
  height: 0.6rem;
  border: 2px solid #FF4655;
  transform: rotate(45deg);
}

.fair-play-rules {
  position: relative;
  padding: clamp(4rem, 8vw, 7.5rem) 0;
  background: linear-gradient(90deg, rgba(236, 232, 225, 0.026) 1px, transparent 1px), linear-gradient(rgba(236, 232, 225, 0.018) 1px, transparent 1px), #0F1923;
  background-size: 12.5% 100%, 100% 8rem, auto;
}
.fair-play-rules::before {
  position: absolute;
  inset: 0 auto 0 50%;
  width: 1px;
  content: "";
  background: linear-gradient(transparent, rgba(255, 70, 85, 0.28), transparent);
}

.fair-play-list {
  display: grid;
  gap: clamp(1rem, 2vw, 1.5rem);
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: fair-play;
}

.fair-play-rule {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  position: relative;
  display: grid;
  min-height: 18rem;
  grid-template-columns: minmax(7rem, 0.28fr) minmax(0, 1fr) minmax(8rem, 0.32fr);
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgba(236, 232, 225, 0.13);
  cursor: pointer;
  background: linear-gradient(105deg, rgba(236, 232, 225, 0.055), transparent 55%), rgba(7, 13, 18, 0.68);
  transition: border-color 180ms ease, background 240ms ease, box-shadow 240ms ease;
}
.fair-play-rule::before {
  position: absolute;
  top: 0;
  right: 0;
  width: 5rem;
  height: 3px;
  content: "";
  background: #FF4655;
  transition: width 260ms ease, background-color 180ms ease;
}
.fair-play-rule::after {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 9rem;
  height: 9rem;
  content: "";
  border: 1px solid rgba(255, 70, 85, 0.12);
  transform: translate(55%, 55%) rotate(45deg);
  pointer-events: none;
}
.fair-play-rule:nth-child(4n+2), .fair-play-rule:nth-child(4n+3) {
  background: linear-gradient(115deg, rgba(255, 70, 85, 0.11), transparent 46%), rgba(7, 13, 18, 0.76);
}
.fair-play-rule:not(.is-confirmed):hover {
  border-color: rgba(255, 70, 85, 0.52);
}
.fair-play-rule.is-confirmed {
  border-color: rgba(104, 224, 182, 0.58);
  background: linear-gradient(105deg, rgba(104, 224, 182, 0.12), transparent 58%), rgba(7, 13, 18, 0.78);
  box-shadow: inset 0 0 0 1px rgba(104, 224, 182, 0.08);
}
.fair-play-rule.is-confirmed::before {
  width: 9rem;
  background: var(--fair-play-confirmed);
}
.fair-play-rule.is-confirmed .fair-play-rule__number {
  color: rgba(104, 224, 182, 0.12);
}
.fair-play-rule.is-confirmed .fair-play-rule__signal,
.fair-play-rule.is-confirmed .fair-play-rule__icon {
  color: var(--fair-play-confirmed);
}
.fair-play-rule.is-confirmed .fair-play-rule__confirmed {
  opacity: 1;
  transform: translateY(0);
}
.fair-play-rule.is-confirming {
  animation: fair-play-confirm-pulse 650ms ease-out;
}
.fair-play-rule.is-confirming .fair-play-rule__confirmed {
  animation: fair-play-confirm-badge 440ms cubic-bezier(0.2, 0.9, 0.25, 1.35);
}

.fair-play-rule--reverse {
  grid-template-columns: minmax(8rem, 0.32fr) minmax(0, 1fr) minmax(7rem, 0.28fr);
}
.fair-play-rule--reverse .fair-play-rule__number {
  grid-column: 3;
  grid-row: 1;
  border-right: 0;
  border-left: 1px solid rgba(236, 232, 225, 0.1);
}
.fair-play-rule--reverse .fair-play-rule__copy {
  grid-column: 2;
  grid-row: 1;
}
.fair-play-rule--reverse .fair-play-rule__icon {
  grid-column: 1;
  grid-row: 1;
}

.fair-play-rule__number {
  display: grid;
  place-items: center;
  border-right: 1px solid rgba(236, 232, 225, 0.1);
  font-family: "League Gothic", sans-serif;
  font-size: clamp(6rem, 13vw, 11rem);
  line-height: 1;
  color: rgba(236, 232, 225, 0.075);
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  transition: color 180ms ease;
}

.fair-play-rule__copy {
  align-self: center;
  max-width: 50rem;
  padding: clamp(2rem, 5vw, 4rem);
}
.fair-play-rule__copy h3, .fair-play-rule__copy .h3 {
  max-width: 15ch;
  margin: 0 0 1rem;
  font-family: "League Gothic", sans-serif;
  font-size: clamp(2.5rem, 5vw, 4.75rem);
  font-weight: 400;
  line-height: 0.92;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #ECE8E1;
}
.fair-play-rule__copy > p:last-child {
  max-width: 42rem;
  margin: 0;
  color: rgba(236, 232, 225, 0.68);
  font-size: clamp(0.95rem, 1.4vw, 1.08rem);
  line-height: 1.7;
}

.fair-play-rule__signal {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 1rem;
  color: #FF4655;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.17em;
  text-transform: uppercase;
  transition: color 180ms ease;
}
.fair-play-rule__signal span {
  width: 1.8rem;
  height: 2px;
  background: currentColor;
}

.fair-play-rule__icon {
  display: grid;
  place-items: center;
  min-width: 0;
  padding: clamp(1.5rem, 4vw, 3rem);
  color: rgba(255, 70, 85, 0.88);
  transition: color 180ms ease;
}
.fair-play-rule__icon svg {
  width: min(100%, 9rem);
  height: auto;
  stroke-width: 1.4;
  vector-effect: non-scaling-stroke;
}

.fair-play-rule__confirmed {
  position: absolute;
  z-index: 2;
  top: 1.35rem;
  right: 1.5rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 0.7rem;
  border: 1px solid rgba(104, 224, 182, 0.52);
  background: rgba(7, 20, 15, 0.9);
  color: #8af1cd;
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  line-height: 1;
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(-0.5rem);
  transition: opacity 180ms ease, transform 220ms ease;
  pointer-events: none;
}
.fair-play-rule__confirmed svg {
  width: 1rem;
  height: 1rem;
  stroke-width: 2.4;
}

.fair-play-rule__confirm-hit {
  position: absolute;
  z-index: 4;
  inset: 0;
  width: 100%;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: transparent;
}
.fair-play-rule__confirm-hit:focus-visible {
  outline: 2px solid #8af1cd;
  outline-offset: -0.7rem;
}

@keyframes fair-play-confirm-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(104, 224, 182, 0.42), inset 0 0 0 1px rgba(104, 224, 182, 0.12);
  }
  100% {
    box-shadow: 0 0 0 1.2rem rgba(104, 224, 182, 0), inset 0 0 0 1px rgba(104, 224, 182, 0.08);
  }
}
@keyframes fair-play-confirm-badge {
  0% {
    transform: translateY(-0.35rem) scale(0.82);
  }
  70% {
    transform: translateY(0) scale(1.06);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}
.fair-play-red-card {
  position: relative;
  padding: clamp(4rem, 8vw, 7rem) 0;
  overflow: hidden;
  background: #FF4655;
  color: #ECE8E1;
}
.fair-play-red-card::after {
  position: absolute;
  right: -10rem;
  bottom: -17rem;
  width: 30rem;
  height: 30rem;
  content: "";
  border: 2px solid rgba(236, 232, 225, 0.16);
  transform: rotate(45deg);
}
.fair-play-red-card .catch-eyebrow {
  color: #ECE8E1;
}
.fair-play-red-card h2, .fair-play-red-card .h2 {
  max-width: 15ch;
  margin: 0.35rem 0 1rem;
  color: #ECE8E1;
  font-size: clamp(2.8rem, 6vw, 5rem);
  line-height: 0.9;
}
.fair-play-red-card p:last-child {
  max-width: 44rem;
  margin: 0;
  color: rgba(236, 232, 225, 0.8);
  line-height: 1.7;
}

.fair-play-red-card__grid {
  position: relative;
  z-index: 1;
  display: grid;
  align-items: center;
  gap: 2rem;
}

.fair-play-red-card__stamp {
  display: grid;
  width: 7rem;
  aspect-ratio: 1;
  place-items: center;
  border: 2px solid rgba(236, 232, 225, 0.72);
  font-family: "League Gothic", sans-serif;
  font-size: 6rem;
  line-height: 1;
  color: #ECE8E1;
  transform: rotate(45deg);
}

.fair-play-red-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

@media (min-width: 768px) {
  .fair-play-intro__grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(18rem, 0.9fr);
  }
  .fair-play-red-card__grid {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .fair-play-red-card__actions {
    grid-column: 2;
  }
}
@media (min-width: 1200px) {
  .fair-play-red-card__grid {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }
  .fair-play-red-card__actions {
    grid-column: auto;
    max-width: 16rem;
  }
}
@media (max-width: 767.98px) {
  .fair-play-manifest {
    min-width: 0;
  }
  .fair-play-rule,
  .fair-play-rule--reverse {
    min-height: 0;
    grid-template-columns: 4.5rem minmax(0, 1fr);
  }
  .fair-play-rule__number,
  .fair-play-rule--reverse .fair-play-rule__number {
    grid-column: 1;
    grid-row: 1/span 2;
    border-right: 1px solid rgba(236, 232, 225, 0.1);
    border-left: 0;
    font-size: 4.5rem;
  }
  .fair-play-rule__copy,
  .fair-play-rule--reverse .fair-play-rule__copy {
    grid-column: 2;
    grid-row: 1;
    padding: 2rem 1.25rem 1rem;
  }
  .fair-play-rule__icon,
  .fair-play-rule--reverse .fair-play-rule__icon {
    grid-column: 2;
    grid-row: 2;
    width: 6rem;
    padding: 0 1.25rem 1.5rem;
    justify-self: end;
  }
  .fair-play-rule__confirmed {
    top: auto;
    right: auto;
    bottom: 1.2rem;
    left: 5.75rem;
  }
  .fair-play-red-card__stamp {
    width: 5rem;
    font-size: 4rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .fair-play-rule,
  .fair-play-rule::before,
  .fair-play-rule__number,
  .fair-play-rule__signal,
  .fair-play-rule__icon,
  .fair-play-rule__confirmed {
    transition: none;
  }
  .fair-play-rule.is-confirming,
  .fair-play-rule.is-confirming .fair-play-rule__confirmed {
    animation: none;
  }
  .fair-play-red-card__stamp {
    transform: none;
  }
}
.catch-contact {
  --catch-hero-title: #ECE8E1;
  --catch-hero-muted: rgba(236, 232, 225, 0.68);
  background: #0F1923;
  color: #ECE8E1;
}

.contact-hero-status {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  position: relative;
  padding: 1.25rem 1.4rem 1.25rem 3.6rem;
  border: 1px solid rgba(236, 232, 225, 0.15);
  background: rgba(236, 232, 225, 0.035);
}
.contact-hero-status .catch-eyebrow {
  margin-bottom: 0.35rem;
  color: #65d6ad;
}
.contact-hero-status strong {
  display: block;
  margin-bottom: 0.35rem;
  color: #ECE8E1;
  font-size: 1.1rem;
  text-transform: uppercase;
}
.contact-hero-status p:last-child {
  max-width: 22rem;
  margin: 0;
  color: rgba(236, 232, 225, 0.62);
  font-size: 0.84rem;
  line-height: 1.55;
}

.contact-hero-status__signal {
  position: absolute;
  top: 1.4rem;
  left: 1.4rem;
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
  background: #65d6ad;
  box-shadow: 0 0 0 0.35rem rgba(101, 214, 173, 0.12), 0 0 1.1rem rgba(101, 214, 173, 0.55);
}

.contact-brief {
  padding: clamp(4rem, 8vw, 7rem) 0;
  background: linear-gradient(90deg, rgba(15, 25, 35, 0.04) 1px, transparent 1px), #ECE8E1;
  background-size: 12.5% 100%;
  color: #0F1923;
}

.contact-brief__grid {
  display: grid;
  align-items: start;
  gap: clamp(2.5rem, 6vw, 6rem);
}

.contact-brief__intel h2, .contact-brief__intel .h2 {
  max-width: 10ch;
  margin: 0.35rem 0 1.25rem;
  font-size: clamp(3rem, 7vw, 5.5rem);
  line-height: 0.9;
}

.contact-brief__lead {
  max-width: 38rem;
  color: #5A6672;
  font-size: 1.05rem;
  line-height: 1.7;
}

.contact-intel-list {
  display: grid;
  gap: 1px;
  margin: 2rem 0 0;
  padding: 1px;
  background: rgba(15, 25, 35, 0.14);
  list-style: none;
}
.contact-intel-list li {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: 1rem;
  padding: 1.1rem;
  background: #ECE8E1;
}
.contact-intel-list span {
  color: #FF4655;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
}
.contact-intel-list p {
  display: grid;
  gap: 0.2rem;
  margin: 0;
  color: #5A6672;
  font-size: 0.9rem;
  line-height: 1.5;
}
.contact-intel-list strong {
  color: #0F1923;
  font-size: 0.8rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.contact-brief__discord {
  margin: 1.5rem 0 0;
  padding-left: 1rem;
  border-left: 3px solid #FF4655;
  color: #5A6672;
}
.contact-brief__discord a {
  font-weight: 700;
}

.contact-console {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(236, 232, 225, 0.14);
  background: linear-gradient(135deg, rgba(236, 232, 225, 0.045), transparent 36%), #0F1923;
  color: #ECE8E1;
  box-shadow: 0 1.5rem 4rem rgba(15, 25, 35, 0.18);
}

.contact-console__head {
  display: flex;
  min-height: 3rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 1.25rem;
  border-bottom: 1px solid rgba(236, 232, 225, 0.12);
  background: rgba(0, 0, 0, 0.16);
}

.contact-console__code {
  color: rgba(236, 232, 225, 0.62);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.17em;
}

.contact-console__lights {
  display: flex;
  gap: 0.4rem;
}
.contact-console__lights i {
  width: 0.45rem;
  height: 0.45rem;
  background: rgba(236, 232, 225, 0.2);
  transform: rotate(45deg);
}
.contact-console__lights i:first-child {
  background: #FF4655;
}

.catch-contact-form {
  padding: clamp(1.5rem, 4vw, 2.5rem);
}
.catch-contact-form .wpcf7-form {
  margin: 0;
}
.catch-contact-form .wpcf7-spinner {
  vertical-align: middle;
}
.catch-contact-form .wpcf7-not-valid-tip {
  margin-top: 0.35rem;
  color: #ff9b9b;
  font-size: 0.78rem;
}
.catch-contact-form .wpcf7-response-output {
  margin: 1.5rem 0 0 !important;
  padding: 0.85rem 1rem !important;
  border-width: 0 0 0 3px !important;
  background: rgba(236, 232, 225, 0.06);
  color: #ECE8E1;
}

.catch-contact-form__grid {
  display: grid;
  gap: 1.25rem;
}

.catch-contact-form__field {
  display: grid;
  gap: 0.45rem;
  color: #ECE8E1;
}
.catch-contact-form__field > span:first-child {
  color: rgba(236, 232, 225, 0.7);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.catch-contact-form__field > span:first-child small, .catch-contact-form__field > span:first-child .small {
  font-size: inherit;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
}
.catch-contact-form__field .form-control,
.catch-contact-form__field .form-select {
  min-height: 3.25rem;
  border-color: rgba(236, 232, 225, 0.18);
  background-color: rgba(0, 0, 0, 0.17);
  color: #ECE8E1;
}
.catch-contact-form__field .form-control:focus,
.catch-contact-form__field .form-select:focus {
  border-color: #FF4655;
  box-shadow: 0 0 0 0.18rem rgba(255, 70, 85, 0.15);
}
.catch-contact-form__field .form-select {
  color-scheme: dark;
}
.catch-contact-form__field .form-select option {
  background-color: #ECE8E1;
  color: #0F1923;
}
.catch-contact-form__field textarea.form-control {
  min-height: 11rem;
  resize: vertical;
}

.catch-contact-form__submit {
  margin-top: 1.5rem;
}
.catch-contact-form__submit p {
  margin: 0;
}

.contact-console__privacy {
  margin: 0;
  padding: 1rem clamp(1.5rem, 4vw, 2.5rem) 1.5rem;
  border-top: 1px solid rgba(236, 232, 225, 0.1);
  color: rgba(236, 232, 225, 0.52);
  font-size: 0.75rem;
  line-height: 1.6;
}
.contact-console__privacy a {
  color: rgba(236, 232, 225, 0.82);
}

.contact-console__offline {
  padding: clamp(2rem, 5vw, 4rem);
}
.contact-console__offline strong {
  display: block;
  margin-bottom: 0.5rem;
  color: #FF4655;
  text-transform: uppercase;
}
.contact-console__offline p {
  margin: 0;
  color: rgba(236, 232, 225, 0.66);
}

@media (min-width: 992px) {
  .contact-brief__grid {
    grid-template-columns: minmax(0, 0.8fr) minmax(28rem, 1.2fr);
  }
  .catch-contact-form__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .catch-contact-form__field--wide {
    grid-column: 1/-1;
  }
}
@media (max-width: 575.98px) {
  .catch-contact-form__submit .btn {
    width: 100%;
  }
}
.catch-page {
  position: relative;
  min-height: 70vh;
  padding: clamp(3rem, 7vw, 6rem) 0;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(15, 25, 35, 0.035) 1px, transparent 1px), #ECE8E1;
  background-size: 12.5% 100%;
}

.catch-page__accent {
  position: absolute;
  top: 0;
  left: 0;
  width: 8rem;
  height: 3px;
  background: #FF4655;
}

.catch-page__container {
  position: relative;
  z-index: 1;
}

.catch-page article.page {
  clip-path: polygon(1rem 0, 100% 0, 100% calc(100% - 1rem), calc(100% - 1rem) 100%, 0 100%, 0 1rem);
  position: relative;
  width: min(100%, 66rem);
  margin: 0 auto;
  padding: clamp(1.5rem, 5vw, 4.5rem);
  border: 1px solid rgba(15, 25, 35, 0.13);
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 1.5rem 4rem rgba(15, 25, 35, 0.08);
}
.catch-page article.page::before {
  position: absolute;
  top: 0;
  left: clamp(1.5rem, 5vw, 4.5rem);
  width: 4rem;
  height: 3px;
  content: "";
  background: #FF4655;
}

.catch-page .entry-header {
  max-width: 52rem;
  margin-bottom: clamp(2rem, 5vw, 3.5rem);
  padding-bottom: 1.5rem;
  border-bottom: 1px solid rgba(15, 25, 35, 0.14);
}

.catch-page .entry-title {
  max-width: 15ch;
  margin: 0;
  color: #0F1923;
  font-size: clamp(3rem, 7vw, 5.75rem);
  line-height: 0.9;
}

.catch-page .entry-content {
  color: #0F1923;
  font-size: clamp(1rem, 1.2vw, 1.075rem);
  line-height: 1.75;
}
.catch-page .entry-content > * {
  max-width: 52rem;
}
.catch-page .entry-content > p:first-child {
  margin-top: 0;
}
.catch-page .entry-content p {
  margin-bottom: 1.25rem;
}
.catch-page .entry-content h2, .catch-page .entry-content .h2 {
  position: relative;
  margin: clamp(3rem, 7vw, 5rem) 0 1.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(15, 25, 35, 0.14);
  font-size: clamp(2rem, 4vw, 3.15rem);
  line-height: 1;
}
.catch-page .entry-content h2::before, .catch-page .entry-content .h2::before {
  position: absolute;
  top: -1px;
  left: 0;
  width: 3.5rem;
  height: 2px;
  content: "";
  background: #FF4655;
}
.catch-page .entry-content h3, .catch-page .entry-content .h3 {
  margin: 2rem 0 0.65rem;
  color: #0F1923;
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  line-height: 1.25;
}
.catch-page .entry-content ul,
.catch-page .entry-content ol {
  display: grid;
  gap: 0.75rem;
  margin: 1.25rem 0 1.5rem;
  padding-left: 1.35rem;
}
.catch-page .entry-content li {
  padding-left: 0.35rem;
}
.catch-page .entry-content li::marker {
  color: #FF4655;
}
.catch-page .entry-content a {
  font-weight: 600;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}
.catch-page .entry-content a:focus-visible {
  outline: 2px solid #FF4655;
  outline-offset: 3px;
}

.catch-page .entry-footer {
  max-width: 52rem;
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(15, 25, 35, 0.1);
  font-size: 0.8rem;
  text-transform: uppercase;
}

@media (max-width: 575.98px) {
  .catch-page article.page {
    margin-inline: -0.25rem;
  }
  .catch-page .entry-content h2, .catch-page .entry-content .h2 {
    font-size: 2rem;
  }
}
