/* Сгенерировано tools/gen_css.py — не редактировать вручную. */

:root {
  --radius: 0.75rem;
  --radius-sm: calc(var(--radius) - 4px); --radius-md: calc(var(--radius) - 2px); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) + 4px);
  --font-display: "Bebas Neue", sans-serif; --font-sans: "Manrope", sans-serif;
  --shadow-glow: 0 0 60px oklch(0.65 0.24 25 / 0.45);
  --gradient-heat: linear-gradient(135deg, oklch(0.72 0.22 45), oklch(0.58 0.26 20));
  --background: oklch(0.14 0.02 25); --foreground: oklch(0.98 0.01 60);
  --card: oklch(0.18 0.025 25); --card-foreground: oklch(0.98 0.01 60);
  --popover: oklch(0.18 0.025 25); --popover-foreground: oklch(0.98 0.01 60);
  --primary: oklch(0.62 0.26 22); --primary-foreground: oklch(0.99 0.005 60);
  --secondary: oklch(0.24 0.02 25); --secondary-foreground: oklch(0.98 0.01 60);
  --muted: oklch(0.22 0.015 25); --muted-foreground: oklch(0.72 0.02 40);
  --accent: oklch(0.75 0.2 55); --accent-foreground: oklch(0.14 0.02 25);
  --destructive: oklch(0.6 0.22 25); --destructive-foreground: oklch(0.98 0.01 60);
  --border: oklch(0.28 0.02 25); --input: oklch(0.28 0.02 25); --ring: oklch(0.62 0.26 22);
}

@layer base {
*, ::after, ::before, ::backdrop, ::file-selector-button { box-sizing: border-box; margin: 0; padding: 0; border: 0 solid; }
html, :host { line-height: 1.5; -webkit-text-size-adjust: 100%; tab-size: 4;
  font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji');
  -webkit-tap-highlight-color: transparent; }
hr { height: 0; color: inherit; border-top-width: 1px; }
abbr:where([title]) { -webkit-text-decoration: underline dotted; text-decoration: underline dotted; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
a { color: inherit; -webkit-text-decoration: inherit; text-decoration: inherit; }
b, strong { font-weight: bolder; }
code, kbd, samp, pre { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; font-size: 1em; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sub { bottom: -0.25em; } sup { top: -0.5em; }
table { text-indent: 0; border-color: inherit; border-collapse: collapse; }
:-moz-focusring { outline: auto; }
progress { vertical-align: baseline; }
summary { display: list-item; }
ol, ul, menu { list-style: none; }
img, svg, video, canvas, audio, iframe, embed, object { display: block; vertical-align: middle; }
img, video { max-width: 100%; height: auto; }
button, input, select, optgroup, textarea, ::file-selector-button { font: inherit; font-feature-settings: inherit; font-variation-settings: inherit;
  letter-spacing: inherit; color: inherit; border-radius: 0; background-color: transparent; opacity: 1; }
:where(select:is([multiple], [size])) optgroup { font-weight: bolder; }
::placeholder { opacity: 1; color: color-mix(in oklab, currentcolor 50%, transparent); }
textarea { resize: vertical; }
::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-date-and-time-value { min-height: 1lh; text-align: inherit; }
:-moz-ui-invalid { box-shadow: none; }
button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button { appearance: button; }
::-webkit-inner-spin-button, ::-webkit-outer-spin-button { height: auto; }
[hidden]:where(:not([hidden='until-found'])) { display: none !important; }
button:not(:disabled), [role='button']:not(:disabled) { cursor: pointer; }

:root { --spacing: 0.25rem; --default-font-family: var(--font-sans); }
*, ::before, ::after, ::backdrop {
  --tw-border-style: solid;
  --tw-shadow: 0 0 #0000; --tw-inset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-inset-ring-shadow: 0 0 #0000;
  --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 #0000;
  --tw-translate-x: 0; --tw-translate-y: 0; --tw-scale-x: 1; --tw-scale-y: 1;
  --tw-gradient-position: to bottom in oklab; --tw-gradient-from: #0000; --tw-gradient-via: #0000; --tw-gradient-to: #0000;
  --tw-gradient-from-position: 0%; --tw-gradient-via-position: 50%; --tw-gradient-to-position: 100%;
  --tw-outline-style: solid; --tw-space-x-reverse: 0; --tw-space-y-reverse: 0;
}
}
@layer base {
  * { border-color: var(--border); }
  html { -webkit-text-size-adjust: 100%; }
  body { background-color: var(--background); color: var(--foreground); font-family: var(--font-sans); overflow-x: hidden; }
  h1, h2, h3, h4 { font-family: var(--font-display); letter-spacing: 0.02em; }
}


@keyframes spin { to { transform: rotate(360deg); } }
@keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } }
@keyframes pulse { 50% { opacity: 0.5; } }
@keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(0.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, 0.2, 1); } }

@layer utilities {
.absolute { position: absolute; }
.animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; }
.animate-spin { animation: spin 1s linear infinite; }
.block { display: block; }
.border-dashed { border-style: dashed; }
.break-all { word-break: break-all; }
.break-words { overflow-wrap: break-word; }
.cursor-pointer { cursor: pointer; }
.fixed { position: fixed; }
.flex { display: flex; }
.flex-1 { flex: 1; }
.flex-col { flex-direction: column; }
.flex-wrap { flex-wrap: wrap; }
.font-display { font-family: var(--font-display); }
.font-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace; }
.grid { display: grid; }
.hidden { display: none; }
.inline { display: inline; }
.inline-block { display: inline-block; }
.inline-flex { display: inline-flex; }
.italic { font-style: italic; }
.items-center { align-items: center; }
.items-end { align-items: flex-end; }
.items-start { align-items: flex-start; }
.items-stretch { align-items: stretch; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.justify-end { justify-content: flex-end; }
.line-through { text-decoration-line: line-through; }
.list-disc { list-style-type: disc; }
.object-contain { object-fit: contain; }
.object-cover { object-fit: cover; }
.outline-none { --tw-outline-style: none; outline-style: none; }
.overflow-hidden { overflow: hidden; }
.overflow-y-auto { overflow-y: auto; }
.place-items-center { place-items: center; }
.pointer-events-none { pointer-events: none; }
.relative { position: relative; }
.select-none { user-select: none; }
.self-start { align-self: flex-start; }
.shrink-0 { flex-shrink: 0; }
.static { position: static; }
.tabular-nums { font-variant-numeric: tabular-nums; }
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.transform {  }
.transition { transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-colors { transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-opacity { transition-property: opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-transform { transition-property: transform, translate, scale, rotate; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.underline { text-decoration-line: underline; }
.uppercase { text-transform: uppercase; }
.visible { visibility: visible; }
.whitespace-nowrap { white-space: nowrap; }
.-inset-24 { inset: calc(calc(var(--spacing) * 24) * -1); }
.-inset-4 { inset: calc(calc(var(--spacing) * 4) * -1); }
.inset-0 { inset: calc(var(--spacing) * 0); }
.inset-x-0 { left: calc(var(--spacing) * 0); right: calc(var(--spacing) * 0); }
.inset-y-0 { top: calc(var(--spacing) * 0); bottom: calc(var(--spacing) * 0); }
.-left-10 { left: calc(calc(var(--spacing) * 10) * -1); }
.-right-10 { right: calc(calc(var(--spacing) * 10) * -1); }
.-right-12 { right: calc(calc(var(--spacing) * 12) * -1); }
.-right-20 { right: calc(calc(var(--spacing) * 20) * -1); }
.-right-8 { right: calc(calc(var(--spacing) * 8) * -1); }
.-top-12 { top: calc(calc(var(--spacing) * 12) * -1); }
.-top-16 { top: calc(calc(var(--spacing) * 16) * -1); }
.-top-20 { top: calc(calc(var(--spacing) * 20) * -1); }
.-top-32 { top: calc(calc(var(--spacing) * 32) * -1); }
.-top-8 { top: calc(calc(var(--spacing) * 8) * -1); }
.bottom-0 { bottom: calc(var(--spacing) * 0); }
.bottom-3 { bottom: calc(var(--spacing) * 3); }
.left-0 { left: calc(var(--spacing) * 0); }
.left-0\.5 { left: calc(var(--spacing) * 0.5); }
.left-1\/2 { left: 50%; }
.left-3 { left: calc(var(--spacing) * 3); }
.left-\[1\.375rem\] { left: 1.375rem; }
.right-0 { right: calc(var(--spacing) * 0); }
.right-2 { right: calc(var(--spacing) * 2); }
.right-3 { right: calc(var(--spacing) * 3); }
.right-4 { right: calc(var(--spacing) * 4); }
.top-0 { top: calc(var(--spacing) * 0); }
.top-0\.5 { top: calc(var(--spacing) * 0.5); }
.top-1\/2 { top: 50%; }
.top-2 { top: calc(var(--spacing) * 2); }
.top-3 { top: calc(var(--spacing) * 3); }
.top-4 { top: calc(var(--spacing) * 4); }
.top-\[var\(--beta-banner-offset\,0px\)\] { top: var(--beta-banner-offset,0px); }
.-z-10 { z-index: -10; }
.z-10 { z-index: 10; }
.z-20 { z-index: 20; }
.z-50 { z-index: 50; }
.z-\[100\] { z-index: 100; }
.z-\[110\] { z-index: 110; }
.z-\[60\] { z-index: 60; }
.rounded-2xl { border-radius: 1rem; }
.rounded-3xl { border-radius: 1.5rem; }
.rounded-full { border-radius: calc(infinity * 1px); }
.rounded-lg { border-radius: var(--radius-lg); }
.rounded-md { border-radius: var(--radius-md); }
.rounded-xl { border-radius: var(--radius-xl); }
.border { border-width: 1px; border-style: var(--tw-border-style); }
.border-b { border-bottom-width: 1px; border-style: var(--tw-border-style); }
.border-b-\[9px\] { border-bottom-width: 9px; border-style: var(--tw-border-style); }
.border-l { border-left-width: 1px; border-style: var(--tw-border-style); }
.border-t { border-top-width: 1px; border-style: var(--tw-border-style); }
.border-t-\[9px\] { border-top-width: 9px; border-style: var(--tw-border-style); }
.border-x-2 { border-inline-width: 2px; border-style: var(--tw-border-style); }
.border-x-\[7px\] { border-inline-width: 7px; border-style: var(--tw-border-style); }
.border-y { border-block-width: 1px; border-style: var(--tw-border-style); }
.h-0 { height: calc(var(--spacing) * 0); }
.h-1 { height: calc(var(--spacing) * 1); }
.h-1\.5 { height: calc(var(--spacing) * 1.5); }
.h-10 { height: calc(var(--spacing) * 10); }
.h-11 { height: calc(var(--spacing) * 11); }
.h-12 { height: calc(var(--spacing) * 12); }
.h-14 { height: calc(var(--spacing) * 14); }
.h-16 { height: calc(var(--spacing) * 16); }
.h-2 { height: calc(var(--spacing) * 2); }
.h-20 { height: calc(var(--spacing) * 20); }
.h-24 { height: calc(var(--spacing) * 24); }
.h-3 { height: calc(var(--spacing) * 3); }
.h-3\.5 { height: calc(var(--spacing) * 3.5); }
.h-4 { height: calc(var(--spacing) * 4); }
.h-40 { height: calc(var(--spacing) * 40); }
.h-44 { height: calc(var(--spacing) * 44); }
.h-48 { height: calc(var(--spacing) * 48); }
.h-5 { height: calc(var(--spacing) * 5); }
.h-56 { height: calc(var(--spacing) * 56); }
.h-6 { height: calc(var(--spacing) * 6); }
.h-7 { height: calc(var(--spacing) * 7); }
.h-72 { height: calc(var(--spacing) * 72); }
.h-8 { height: calc(var(--spacing) * 8); }
.h-80 { height: calc(var(--spacing) * 80); }
.h-9 { height: calc(var(--spacing) * 9); }
.h-90 { height: calc(var(--spacing) * 90); }
.h-96 { height: calc(var(--spacing) * 96); }
.h-\[124px\] { height: 124px; }
.h-\[96px\] { height: 96px; }
.h-full { height: 100%; }
.w-0 { width: calc(var(--spacing) * 0); }
.w-1 { width: calc(var(--spacing) * 1); }
.w-1\.5 { width: calc(var(--spacing) * 1.5); }
.w-10 { width: calc(var(--spacing) * 10); }
.w-11 { width: calc(var(--spacing) * 11); }
.w-12 { width: calc(var(--spacing) * 12); }
.w-14 { width: calc(var(--spacing) * 14); }
.w-16 { width: calc(var(--spacing) * 16); }
.w-2 { width: calc(var(--spacing) * 2); }
.w-24 { width: calc(var(--spacing) * 24); }
.w-3 { width: calc(var(--spacing) * 3); }
.w-3\.5 { width: calc(var(--spacing) * 3.5); }
.w-4 { width: calc(var(--spacing) * 4); }
.w-40 { width: calc(var(--spacing) * 40); }
.w-44 { width: calc(var(--spacing) * 44); }
.w-48 { width: calc(var(--spacing) * 48); }
.w-5 { width: calc(var(--spacing) * 5); }
.w-56 { width: calc(var(--spacing) * 56); }
.w-6 { width: calc(var(--spacing) * 6); }
.w-7 { width: calc(var(--spacing) * 7); }
.w-72 { width: calc(var(--spacing) * 72); }
.w-8 { width: calc(var(--spacing) * 8); }
.w-9 { width: calc(var(--spacing) * 9); }
.w-\[70vw\] { width: 70vw; }
.w-\[96px\] { width: 96px; }
.w-\[calc\(100vw-1\.5rem\)\] { width: calc(100vw - 1.5rem); }
.w-full { width: 100%; }
.min-h-0 { min-height: calc(var(--spacing) * 0); }
.min-h-75 { min-height: calc(var(--spacing) * 75); }
.min-h-\[2\.5rem\] { min-height: 2.5rem; }
.min-h-\[90vh\] { min-height: 90vh; }
.min-h-screen { min-height: 100vh; }
.min-w-0 { min-width: calc(var(--spacing) * 0); }
.min-w-\[110px\] { min-width: 110px; }
.min-w-\[3rem\] { min-width: 3rem; }
.max-h-\[calc\(100dvh-1\.5rem\)\] { max-height: calc(100dvh - 1.5rem); }
.max-h-full { max-height: 100%; }
.max-w-2xl { max-width: 42rem; }
.max-w-3xl { max-width: 48rem; }
.max-w-4xl { max-width: 56rem; }
.max-w-5xl { max-width: 64rem; }
.max-w-6xl { max-width: 72rem; }
.max-w-7xl { max-width: 80rem; }
.max-w-full { max-width: 100%; }
.max-w-lg { max-width: 32rem; }
.max-w-md { max-width: 28rem; }
.max-w-sm { max-width: 24rem; }
.max-w-xl { max-width: 36rem; }
.max-w-xs { max-width: 20rem; }
.p-1 { padding: calc(var(--spacing) * 1); }
.p-1\.5 { padding: calc(var(--spacing) * 1.5); }
.p-2 { padding: calc(var(--spacing) * 2); }
.p-3 { padding: calc(var(--spacing) * 3); }
.p-4 { padding: calc(var(--spacing) * 4); }
.p-5 { padding: calc(var(--spacing) * 5); }
.p-6 { padding: calc(var(--spacing) * 6); }
.p-8 { padding: calc(var(--spacing) * 8); }
.px-1 { padding-inline: calc(var(--spacing) * 1); }
.px-1\.5 { padding-inline: calc(var(--spacing) * 1.5); }
.px-2 { padding-inline: calc(var(--spacing) * 2); }
.px-2\.5 { padding-inline: calc(var(--spacing) * 2.5); }
.px-3 { padding-inline: calc(var(--spacing) * 3); }
.px-4 { padding-inline: calc(var(--spacing) * 4); }
.px-5 { padding-inline: calc(var(--spacing) * 5); }
.px-6 { padding-inline: calc(var(--spacing) * 6); }
.px-8 { padding-inline: calc(var(--spacing) * 8); }
.py-0\.5 { padding-block: calc(var(--spacing) * 0.5); }
.py-1 { padding-block: calc(var(--spacing) * 1); }
.py-1\.5 { padding-block: calc(var(--spacing) * 1.5); }
.py-12 { padding-block: calc(var(--spacing) * 12); }
.py-16 { padding-block: calc(var(--spacing) * 16); }
.py-2 { padding-block: calc(var(--spacing) * 2); }
.py-2\.5 { padding-block: calc(var(--spacing) * 2.5); }
.py-3 { padding-block: calc(var(--spacing) * 3); }
.py-3\.5 { padding-block: calc(var(--spacing) * 3.5); }
.py-4 { padding-block: calc(var(--spacing) * 4); }
.py-5 { padding-block: calc(var(--spacing) * 5); }
.py-8 { padding-block: calc(var(--spacing) * 8); }
.pb-1 { padding-bottom: calc(var(--spacing) * 1); }
.pb-16 { padding-bottom: calc(var(--spacing) * 16); }
.pb-20 { padding-bottom: calc(var(--spacing) * 20); }
.pb-24 { padding-bottom: calc(var(--spacing) * 24); }
.pb-4 { padding-bottom: calc(var(--spacing) * 4); }
.pb-6 { padding-bottom: calc(var(--spacing) * 6); }
.pl-4 { padding-left: calc(var(--spacing) * 4); }
.pl-6 { padding-left: calc(var(--spacing) * 6); }
.pt-2 { padding-top: calc(var(--spacing) * 2); }
.pt-28 { padding-top: calc(var(--spacing) * 28); }
.pt-4 { padding-top: calc(var(--spacing) * 4); }
.pt-\[calc\(var\(--beta-banner-offset\)\+6\.5rem\)\] { padding-top: calc(var(--beta-banner-offset) + 6.5rem); }
.mx-auto { margin-inline: auto; }
.mb-0\.5 { margin-bottom: calc(var(--spacing) * 0.5); }
.mb-1 { margin-bottom: calc(var(--spacing) * 1); }
.mb-10 { margin-bottom: calc(var(--spacing) * 10); }
.mb-2 { margin-bottom: calc(var(--spacing) * 2); }
.mb-3 { margin-bottom: calc(var(--spacing) * 3); }
.mb-4 { margin-bottom: calc(var(--spacing) * 4); }
.mb-5 { margin-bottom: calc(var(--spacing) * 5); }
.mb-6 { margin-bottom: calc(var(--spacing) * 6); }
.mb-8 { margin-bottom: calc(var(--spacing) * 8); }
.ml-1 { margin-left: calc(var(--spacing) * 1); }
.ml-auto { margin-left: auto; }
.mt-0\.5 { margin-top: calc(var(--spacing) * 0.5); }
.mt-1 { margin-top: calc(var(--spacing) * 1); }
.mt-10 { margin-top: calc(var(--spacing) * 10); }
.mt-12 { margin-top: calc(var(--spacing) * 12); }
.mt-16 { margin-top: calc(var(--spacing) * 16); }
.mt-2 { margin-top: calc(var(--spacing) * 2); }
.mt-2\.5 { margin-top: calc(var(--spacing) * 2.5); }
.mt-20 { margin-top: calc(var(--spacing) * 20); }
.mt-24 { margin-top: calc(var(--spacing) * 24); }
.mt-3 { margin-top: calc(var(--spacing) * 3); }
.mt-4 { margin-top: calc(var(--spacing) * 4); }
.mt-5 { margin-top: calc(var(--spacing) * 5); }
.mt-6 { margin-top: calc(var(--spacing) * 6); }
.mt-7 { margin-top: calc(var(--spacing) * 7); }
.mt-8 { margin-top: calc(var(--spacing) * 8); }
.mt-auto { margin-top: auto; }
.gap-0\.5 { gap: calc(var(--spacing) * 0.5); }
.gap-1 { gap: calc(var(--spacing) * 1); }
.gap-1\.5 { gap: calc(var(--spacing) * 1.5); }
.gap-10 { gap: calc(var(--spacing) * 10); }
.gap-2 { gap: calc(var(--spacing) * 2); }
.gap-2\.5 { gap: calc(var(--spacing) * 2.5); }
.gap-3 { gap: calc(var(--spacing) * 3); }
.gap-4 { gap: calc(var(--spacing) * 4); }
.gap-5 { gap: calc(var(--spacing) * 5); }
.gap-6 { gap: calc(var(--spacing) * 6); }
.gap-8 { gap: calc(var(--spacing) * 8); }
.gap-px { gap: 1px; }
.gap-x-5 { column-gap: calc(var(--spacing) * 5); }
.gap-y-3 { row-gap: calc(var(--spacing) * 3); }
:where(.space-y-1 > :not(:last-child)) { margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse, 0)); margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse, 0))); }
:where(.space-y-1\.5 > :not(:last-child)) { margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse, 0)); margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse, 0))); }
:where(.space-y-2 > :not(:last-child)) { margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse, 0)); margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse, 0))); }
:where(.space-y-3 > :not(:last-child)) { margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse, 0)); margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse, 0))); }
:where(.space-y-4 > :not(:last-child)) { margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse, 0)); margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse, 0))); }
:where(.space-y-5 > :not(:last-child)) { margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse, 0)); margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse, 0))); }
:where(.space-y-6 > :not(:last-child)) { margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse, 0)); margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse, 0))); }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.grid-cols-12 { grid-template-columns: repeat(12, minmax(0, 1fr)); }
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-cols-\[minmax\(0\,1fr\)_auto\] { grid-template-columns: minmax(0,1fr) auto; }
.col-span-2 { grid-column: span 2 / span 2; }
.aspect-\[16\/10\] { aspect-ratio: 16/10; }
:where(.divide-y > :not(:last-child)) { border-bottom-width: 1px; border-style: solid; }
.text-2xl { font-size: 1.5rem; line-height: var(--tw-leading, calc(2 / 1.5)); }
.text-3xl { font-size: 1.875rem; line-height: var(--tw-leading, calc(2.25 / 1.875)); }
.text-4xl { font-size: 2.25rem; line-height: var(--tw-leading, calc(2.5 / 2.25)); }
.text-5xl { font-size: 3rem; line-height: var(--tw-leading, 1); }
.text-\[10px\] { font-size: 10px; }
.text-\[11px\] { font-size: 11px; }
.text-\[13px\] { font-size: 13px; }
.text-\[7rem\] { font-size: 7rem; }
.text-\[9px\] { font-size: 9px; }
.text-base { font-size: 1rem; line-height: var(--tw-leading, calc(1.5 / 1)); }
.text-lg { font-size: 1.125rem; line-height: var(--tw-leading, calc(1.75 / 1.125)); }
.text-sm { font-size: 0.875rem; line-height: var(--tw-leading, calc(1.25 / 0.875)); }
.text-xl { font-size: 1.25rem; line-height: var(--tw-leading, calc(1.75 / 1.25)); }
.text-xs { font-size: 0.75rem; line-height: var(--tw-leading, calc(1 / 0.75)); }
.font-bold { --tw-font-weight: 700; font-weight: 700; }
.font-medium { --tw-font-weight: 500; font-weight: 500; }
.font-semibold { --tw-font-weight: 600; font-weight: 600; }
.tracking-\[0\.02em\] { --tw-tracking: 0.02em; letter-spacing: 0.02em; }
.tracking-\[0\.18em\] { --tw-tracking: 0.18em; letter-spacing: 0.18em; }
.tracking-\[0\.25em\] { --tw-tracking: 0.25em; letter-spacing: 0.25em; }
.tracking-\[0\.2em\] { --tw-tracking: 0.2em; letter-spacing: 0.2em; }
.tracking-\[0\.35em\] { --tw-tracking: 0.35em; letter-spacing: 0.35em; }
.tracking-\[0\.3em\] { --tw-tracking: 0.3em; letter-spacing: 0.3em; }
.tracking-tight { --tw-tracking: -0.025em; letter-spacing: -0.025em; }
.tracking-wide { --tw-tracking: 0.025em; letter-spacing: 0.025em; }
.tracking-wider { --tw-tracking: 0.05em; letter-spacing: 0.05em; }
.tracking-widest { --tw-tracking: 0.1em; letter-spacing: 0.1em; }
.leading-\[0\.88\] { --tw-leading: 0.88; line-height: 0.88; }
.leading-\[0\.95\] { --tw-leading: 0.95; line-height: 0.95; }
.leading-none { --tw-leading: 1; line-height: 1; }
.leading-relaxed { --tw-leading: 1.625; line-height: 1.625; }
.leading-snug { --tw-leading: 1.375; line-height: 1.375; }
.leading-tight { --tw-leading: 1.25; line-height: 1.25; }
.opacity-0 { opacity: 0%; }
.opacity-30 { opacity: 30%; }
.opacity-40 { opacity: 40%; }
.opacity-60 { opacity: 60%; }
.opacity-70 { opacity: 70%; }
.opacity-75 { opacity: 75%; }
.bg-\[radial-gradient\(circle_at_15\%_20\%\,oklch\(0\.62_0\.26_22\/0\.18\)\,transparent_60\%\)\] { background-image: radial-gradient(circle at 15% 20%,oklch(0.62 0.26 22/0.18),transparent 60%); }
.bg-\[radial-gradient\(circle_at_18\%_34\%\,oklch\(0\.62_0\.26_22\/0\.32\)\,transparent_42\%\)\] { background-image: radial-gradient(circle at 18% 34%,oklch(0.62 0.26 22/0.32),transparent 42%); }
.bg-\[radial-gradient\(circle_at_50\%_80\%\,var\(--primary\)\,transparent_60\%\)\] { background-image: radial-gradient(circle at 50% 80%,var(--primary),transparent 60%); }
.bg-\[radial-gradient\(circle_at_80\%_20\%\,oklch\(1_0_0\/0\.15\)\,transparent_50\%\)\] { background-image: radial-gradient(circle at 80% 20%,oklch(1 0 0/0.15),transparent 50%); }
.bg-gradient-to-br { --tw-gradient-position: to bottom right in oklab; background-image: linear-gradient(var(--tw-gradient-stops)); }
.bg-gradient-to-l { --tw-gradient-position: to left in oklab; background-image: linear-gradient(var(--tw-gradient-stops)); }
.bg-gradient-to-r { --tw-gradient-position: to right in oklab; background-image: linear-gradient(var(--tw-gradient-stops)); }
.bg-linear-to-b { --tw-gradient-position: to bottom in oklab; background-image: linear-gradient(var(--tw-gradient-stops)); }
.bg-linear-to-br { --tw-gradient-position: to bottom right in oklab; background-image: linear-gradient(var(--tw-gradient-stops)); }
.from-\[\#5865F2\] { --tw-gradient-from: #5865F2; --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.from-accent\/30 { --tw-gradient-from: color-mix(in oklab, var(--accent) 30%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.from-background { --tw-gradient-from: var(--background); --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.from-background\/35 { --tw-gradient-from: color-mix(in oklab, var(--background) 35%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.from-indigo-500\/25 { --tw-gradient-from: color-mix(in oklab, oklch(58.5% 0.233 277.117) 25%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.from-primary\/15 { --tw-gradient-from: color-mix(in oklab, var(--primary) 15%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.from-primary\/30 { --tw-gradient-from: color-mix(in oklab, var(--primary) 30%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.from-sky-500\/25 { --tw-gradient-from: color-mix(in oklab, oklch(68.5% 0.169 237.323) 25%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.from-transparent { --tw-gradient-from: transparent; --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.to-\[\#404EED\] { --tw-gradient-to: #404EED; --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.to-\[\#7289DA\] { --tw-gradient-to: #7289DA; --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.to-background { --tw-gradient-to: var(--background); --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.to-transparent { --tw-gradient-to: transparent; --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position)); }
.via-background\/70 { --tw-gradient-via: color-mix(in oklab, var(--background) 70%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops); --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); }
.via-primary\/5 { --tw-gradient-via: color-mix(in oklab, var(--primary) 5%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops); --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); }
.via-white\/30 { --tw-gradient-via: color-mix(in oklab, #fff 30%, transparent); --tw-gradient-stops: var(--tw-gradient-via-stops); --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position); }
.bg-\[\#5865F2\] { background-color: #5865F2; }
.bg-\[\#5865F2\]\/15 { background-color: color-mix(in oklab, #5865F2 15%, transparent); }
.bg-\[\#5865F2\]\/25 { background-color: color-mix(in oklab, #5865F2 25%, transparent); }
.bg-\[\#5865F2\]\/\[0\.07\] { background-color: color-mix(in oklab, #5865F2 7.000000000000001%, transparent); }
.bg-accent { background-color: var(--accent); }
.bg-accent\/15 { background-color: color-mix(in oklab, var(--accent) 15%, transparent); }
.bg-accent\/5 { background-color: color-mix(in oklab, var(--accent) 5%, transparent); }
.bg-background { background-color: var(--background); }
.bg-background\/40 { background-color: color-mix(in oklab, var(--background) 40%, transparent); }
.bg-background\/50 { background-color: color-mix(in oklab, var(--background) 50%, transparent); }
.bg-background\/60 { background-color: color-mix(in oklab, var(--background) 60%, transparent); }
.bg-background\/70 { background-color: color-mix(in oklab, var(--background) 70%, transparent); }
.bg-background\/80 { background-color: color-mix(in oklab, var(--background) 80%, transparent); }
.bg-background\/85 { background-color: color-mix(in oklab, var(--background) 85%, transparent); }
.bg-background\/90 { background-color: color-mix(in oklab, var(--background) 90%, transparent); }
.bg-background\/95 { background-color: color-mix(in oklab, var(--background) 95%, transparent); }
.bg-border { background-color: var(--border); }
.bg-card { background-color: var(--card); }
.bg-card\/30 { background-color: color-mix(in oklab, var(--card) 30%, transparent); }
.bg-card\/40 { background-color: color-mix(in oklab, var(--card) 40%, transparent); }
.bg-card\/50 { background-color: color-mix(in oklab, var(--card) 50%, transparent); }
.bg-card\/60 { background-color: color-mix(in oklab, var(--card) 60%, transparent); }
.bg-card\/70 { background-color: color-mix(in oklab, var(--card) 70%, transparent); }
.bg-card\/75 { background-color: color-mix(in oklab, var(--card) 75%, transparent); }
.bg-card\/80 { background-color: color-mix(in oklab, var(--card) 80%, transparent); }
.bg-card\/95 { background-color: color-mix(in oklab, var(--card) 95%, transparent); }
.bg-destructive\/5 { background-color: color-mix(in oklab, var(--destructive) 5%, transparent); }
.bg-input\/40 { background-color: color-mix(in oklab, var(--input) 40%, transparent); }
.bg-muted-foreground { background-color: var(--muted-foreground); }
.bg-muted\/30 { background-color: color-mix(in oklab, var(--muted) 30%, transparent); }
.bg-muted\/40 { background-color: color-mix(in oklab, var(--muted) 40%, transparent); }
.bg-primary { background-color: var(--primary); }
.bg-primary-foreground\/10 { background-color: color-mix(in oklab, var(--primary-foreground) 10%, transparent); }
.bg-primary\/10 { background-color: color-mix(in oklab, var(--primary) 10%, transparent); }
.bg-primary\/15 { background-color: color-mix(in oklab, var(--primary) 15%, transparent); }
.bg-primary\/20 { background-color: color-mix(in oklab, var(--primary) 20%, transparent); }
.bg-primary\/5 { background-color: color-mix(in oklab, var(--primary) 5%, transparent); }
.bg-white { background-color: #fff; }
.border-\[\#5865F2\]\/40 { border-color: color-mix(in oklab, #5865F2 40%, transparent); }
.border-\[\#5865F2\]\/60 { border-color: color-mix(in oklab, #5865F2 60%, transparent); }
.border-accent\/30 { border-color: color-mix(in oklab, var(--accent) 30%, transparent); }
.border-accent\/40 { border-color: color-mix(in oklab, var(--accent) 40%, transparent); }
.border-accent\/50 { border-color: color-mix(in oklab, var(--accent) 50%, transparent); }
.border-accent\/60 { border-color: color-mix(in oklab, var(--accent) 60%, transparent); }
.border-accent\/70 { border-color: color-mix(in oklab, var(--accent) 70%, transparent); }
.border-border { border-color: var(--border); }
.border-border\/60 { border-color: color-mix(in oklab, var(--border) 60%, transparent); }
.border-border\/70 { border-color: color-mix(in oklab, var(--border) 70%, transparent); }
.border-destructive\/40 { border-color: color-mix(in oklab, var(--destructive) 40%, transparent); }
.border-indigo-500\/40 { border-color: color-mix(in oklab, oklch(58.5% 0.233 277.117) 40%, transparent); }
.border-indigo-500\/50 { border-color: color-mix(in oklab, oklch(58.5% 0.233 277.117) 50%, transparent); }
.border-primary { border-color: var(--primary); }
.border-primary-foreground\/30 { border-color: color-mix(in oklab, var(--primary-foreground) 30%, transparent); }
.border-primary-foreground\/60 { border-color: color-mix(in oklab, var(--primary-foreground) 60%, transparent); }
.border-primary\/20 { border-color: color-mix(in oklab, var(--primary) 20%, transparent); }
.border-primary\/25 { border-color: color-mix(in oklab, var(--primary) 25%, transparent); }
.border-primary\/30 { border-color: color-mix(in oklab, var(--primary) 30%, transparent); }
.border-primary\/35 { border-color: color-mix(in oklab, var(--primary) 35%, transparent); }
.border-primary\/40 { border-color: color-mix(in oklab, var(--primary) 40%, transparent); }
.border-primary\/50 { border-color: color-mix(in oklab, var(--primary) 50%, transparent); }
.border-primary\/60 { border-color: color-mix(in oklab, var(--primary) 60%, transparent); }
.border-primary\/70 { border-color: color-mix(in oklab, var(--primary) 70%, transparent); }
.border-sky-500\/40 { border-color: color-mix(in oklab, oklch(68.5% 0.169 237.323) 40%, transparent); }
.border-sky-500\/50 { border-color: color-mix(in oklab, oklch(68.5% 0.169 237.323) 50%, transparent); }
.border-b-accent { border-bottom-color: var(--accent); }
.border-t-accent { border-top-color: var(--accent); }
.border-x-transparent { border-left-color: transparent; border-right-color: transparent; }
.text-\[\#5865F2\] { color: #5865F2; }
.text-\[\#7c86ff\] { color: #7c86ff; }
.text-accent { color: var(--accent); }
.text-accent-foreground { color: var(--accent-foreground); }
.text-destructive { color: var(--destructive); }
.text-destructive\/80 { color: color-mix(in oklab, var(--destructive) 80%, transparent); }
.text-foreground { color: var(--foreground); }
.text-foreground\/90 { color: color-mix(in oklab, var(--foreground) 90%, transparent); }
.text-indigo-400 { color: oklch(67.3% 0.182 276.935); }
.text-muted-foreground { color: var(--muted-foreground); }
.text-muted-foreground\/50 { color: color-mix(in oklab, var(--muted-foreground) 50%, transparent); }
.text-muted-foreground\/60 { color: color-mix(in oklab, var(--muted-foreground) 60%, transparent); }
.text-muted-foreground\/70 { color: color-mix(in oklab, var(--muted-foreground) 70%, transparent); }
.text-muted-foreground\/80 { color: color-mix(in oklab, var(--muted-foreground) 80%, transparent); }
.text-primary { color: var(--primary); }
.text-primary-foreground { color: var(--primary-foreground); }
.text-primary-foreground\/80 { color: color-mix(in oklab, var(--primary-foreground) 80%, transparent); }
.text-primary\/10 { color: color-mix(in oklab, var(--primary) 10%, transparent); }
.text-primary\/70 { color: color-mix(in oklab, var(--primary) 70%, transparent); }
.text-sky-400 { color: oklch(74.6% 0.16 232.661); }
.text-white { color: #fff; }
.accent-\[var\(--primary\)\] { accent-color: var(--primary); }
:where(.divide-border > :not(:last-child)) { border-color: var(--border); }
.ring-offset-2 { --tw-ring-offset-width: 2px; --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); }
.ring { --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.ring-primary\/60 { --tw-ring-color: color-mix(in oklab, var(--primary) 60%, transparent); }
.shadow { --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-2xl { --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-\[0_0_14px_var\(--primary\)\] { --tw-shadow: 0 0 14px var(--primary); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-\[0_0_30px_-10px_var\(--primary\)\] { --tw-shadow: 0 0 30px -10px var(--primary); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-\[0_0_35px_-12px_\#5865F2\] { --tw-shadow: 0 0 35px -12px #5865F2; box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-\[0_10px_30px_-12px_\#5865F2\] { --tw-shadow: 0 10px 30px -12px #5865F2; box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-\[0_10px_35px_-25px_oklch\(0\.62_0\.26_22\/0\.8\)\] { --tw-shadow: 0 10px 35px -25px oklch(0.62 0.26 22/0.8); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-\[0_30px_80px_-20px_oklch\(0\.62_0\.26_22\/0\.5\)\] { --tw-shadow: 0 30px 80px -20px oklch(0.62 0.26 22/0.5); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-\[0_8px_24px_-8px_\#5865F2\] { --tw-shadow: 0 8px 24px -8px #5865F2; box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.shadow-md { --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.backdrop-blur { --tw-backdrop-blur: blur(8px); -webkit-backdrop-filter: var(--tw-backdrop-blur,); backdrop-filter: var(--tw-backdrop-blur,); }
.backdrop-blur-md { --tw-backdrop-blur: blur(12px); -webkit-backdrop-filter: var(--tw-backdrop-blur,); backdrop-filter: var(--tw-backdrop-blur,); }
.backdrop-blur-sm { --tw-backdrop-blur: blur(8px); -webkit-backdrop-filter: var(--tw-backdrop-blur,); backdrop-filter: var(--tw-backdrop-blur,); }
.backdrop-blur-xl { --tw-backdrop-blur: blur(24px); -webkit-backdrop-filter: var(--tw-backdrop-blur,); backdrop-filter: var(--tw-backdrop-blur,); }
.blur-2xl { --tw-blur: blur(40px); filter: var(--tw-blur,) var(--tw-brightness,); }
.blur-3xl { --tw-blur: blur(64px); filter: var(--tw-blur,) var(--tw-brightness,); }
.duration-200 { --tw-duration: 200ms; transition-duration: 200ms; }
.duration-300 { --tw-duration: 300ms; transition-duration: 300ms; }
.duration-500 { --tw-duration: 500ms; transition-duration: 500ms; }
.duration-700 { --tw-duration: 700ms; transition-duration: 700ms; }
.transition-\[top\] { transition-property: top; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.-translate-x-1\/2 { --tw-translate-x: -50%; translate: var(--tw-translate-x) var(--tw-translate-y); }
.-translate-x-full { --tw-translate-x: -100%; translate: var(--tw-translate-x) var(--tw-translate-y); }
.-translate-y-1\/2 { --tw-translate-y: -50%; translate: var(--tw-translate-x) var(--tw-translate-y); }
.scale-105 { --tw-scale-x: 105%; --tw-scale-y: 105%; scale: var(--tw-scale-x) var(--tw-scale-y); }
.translate-y-1\/2 { --tw-translate-y: 50%; translate: var(--tw-translate-x) var(--tw-translate-y); }
@media (hover: hover) { .hover\:underline:hover { text-decoration-line: underline; } }
@media (hover: hover) { .group\/dl:hover .group-hover\/dl\:opacity-100 { opacity: 100%; } }
@media (hover: hover) { .group:hover .group-hover\:opacity-100 { opacity: 100%; } }
@media (hover: hover) { .hover\:opacity-90:hover { opacity: 90%; } }
@media (hover: hover) { .hover\:bg-background\/60:hover { background-color: color-mix(in oklab, var(--background) 60%, transparent); } }
@media (hover: hover) { .hover\:bg-background\/90:hover { background-color: color-mix(in oklab, var(--background) 90%, transparent); } }
@media (hover: hover) { .hover\:bg-card:hover { background-color: var(--card); } }
@media (hover: hover) { .hover\:bg-card\/60:hover { background-color: color-mix(in oklab, var(--card) 60%, transparent); } }
@media (hover: hover) { .hover\:bg-card\/70:hover { background-color: color-mix(in oklab, var(--card) 70%, transparent); } }
@media (hover: hover) { .hover\:bg-primary:hover { background-color: var(--primary); } }
@media (hover: hover) { .hover\:bg-primary\/10:hover { background-color: color-mix(in oklab, var(--primary) 10%, transparent); } }
@media (hover: hover) { .hover\:bg-primary\/15:hover { background-color: color-mix(in oklab, var(--primary) 15%, transparent); } }
@media (hover: hover) { .hover\:bg-primary\/20:hover { background-color: color-mix(in oklab, var(--primary) 20%, transparent); } }
@media (hover: hover) { .hover\:bg-primary\/90:hover { background-color: color-mix(in oklab, var(--primary) 90%, transparent); } }
@media (hover: hover) { .hover\:border-\[\#5865F2\]\/40:hover { border-color: color-mix(in oklab, #5865F2 40%, transparent); } }
@media (hover: hover) { .hover\:border-primary:hover { border-color: var(--primary); } }
@media (hover: hover) { .hover\:border-primary-foreground:hover { border-color: var(--primary-foreground); } }
@media (hover: hover) { .hover\:border-primary\/40:hover { border-color: color-mix(in oklab, var(--primary) 40%, transparent); } }
@media (hover: hover) { .hover\:border-primary\/50:hover { border-color: color-mix(in oklab, var(--primary) 50%, transparent); } }
@media (hover: hover) { .hover\:border-primary\/60:hover { border-color: color-mix(in oklab, var(--primary) 60%, transparent); } }
@media (hover: hover) { .group:hover .group-hover\:text-foreground { color: var(--foreground); } }
@media (hover: hover) { .group:hover .group-hover\:text-primary { color: var(--primary); } }
@media (hover: hover) { .group:hover .group-hover\:text-primary\/30 { color: color-mix(in oklab, var(--primary) 30%, transparent); } }
@media (hover: hover) { .hover\:text-foreground:hover { color: var(--foreground); } }
@media (hover: hover) { .hover\:text-primary:hover { color: var(--primary); } }
@media (hover: hover) { .hover\:text-primary-foreground:hover { color: var(--primary-foreground); } }
@media (hover: hover) { .hover\:shadow-\[0_12px_34px_-10px_\#5865F2\]:hover { --tw-shadow: 0 12px 34px -10px #5865F2; box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); } }
@media (hover: hover) { .hover\:brightness-110:hover { --tw-brightness: brightness(110%); filter: var(--tw-blur,) var(--tw-brightness,); } }
@media (hover: hover) { .group\/btn:hover .group-hover\/btn\:translate-x-full { --tw-translate-x: 100%; translate: var(--tw-translate-x) var(--tw-translate-y); } }
@media (hover: hover) { .group\/dl:hover .group-hover\/dl\:scale-105 { --tw-scale-x: 105%; --tw-scale-y: 105%; scale: var(--tw-scale-x) var(--tw-scale-y); } }
@media (hover: hover) { .group:hover .group-hover\:scale-105 { --tw-scale-x: 105%; --tw-scale-y: 105%; scale: var(--tw-scale-x) var(--tw-scale-y); } }
@media (hover: hover) { .group:hover .group-hover\:scale-110 { --tw-scale-x: 110%; --tw-scale-y: 110%; scale: var(--tw-scale-x) var(--tw-scale-y); } }
.focus\:border-primary:focus { border-color: var(--primary); }
.focus\:ring-2:focus { --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow); }
.focus\:ring-primary\/30:focus { --tw-ring-color: color-mix(in oklab, var(--primary) 30%, transparent); }
.active\:scale-\[0\.97\]:active { --tw-scale-x: 0.97; --tw-scale-y: 0.97; scale: var(--tw-scale-x) var(--tw-scale-y); }
.disabled\:cursor-not-allowed:disabled { cursor: not-allowed; }
.disabled\:cursor-wait:disabled { cursor: wait; }
.disabled\:opacity-40:disabled { opacity: 40%; }
.disabled\:opacity-50:disabled { opacity: 50%; }
.disabled\:opacity-60:disabled { opacity: 60%; }
.disabled\:opacity-70:disabled { opacity: 70%; }
@media (width >= 40rem) { .sm\:block { display: block; } }
@media (width >= 40rem) { .sm\:break-normal { overflow-wrap: normal; word-break: normal; } }
@media (width >= 40rem) { .sm\:flex-row { flex-direction: row; } }
@media (width >= 40rem) { .sm\:flex-wrap { flex-wrap: wrap; } }
@media (width >= 40rem) { .sm\:inline { display: inline; } }
@media (width >= 40rem) { .sm\:items-center { align-items: center; } }
@media (width >= 40rem) { .sm\:items-end { align-items: flex-end; } }
@media (width >= 40rem) { .sm\:items-start { align-items: flex-start; } }
@media (width >= 40rem) { .sm\:justify-around { justify-content: space-around; } }
@media (width >= 40rem) { .sm\:justify-between { justify-content: space-between; } }
@media (width >= 40rem) { .sm\:self-center { align-self: center; } }
@media (width >= 40rem) { .sm\:text-left { text-align: left; } }
@media (width >= 40rem) { .sm\:whitespace-nowrap { white-space: nowrap; } }
@media (width >= 40rem) { .sm\:h-14 { height: calc(var(--spacing) * 14); } }
@media (width >= 40rem) { .sm\:h-24 { height: calc(var(--spacing) * 24); } }
@media (width >= 40rem) { .sm\:h-6 { height: calc(var(--spacing) * 6); } }
@media (width >= 40rem) { .sm\:h-7 { height: calc(var(--spacing) * 7); } }
@media (width >= 40rem) { .sm\:w-14 { width: calc(var(--spacing) * 14); } }
@media (width >= 40rem) { .sm\:w-6 { width: calc(var(--spacing) * 6); } }
@media (width >= 40rem) { .sm\:w-7 { width: calc(var(--spacing) * 7); } }
@media (width >= 40rem) { .sm\:w-\[calc\(100vw-3rem\)\] { width: calc(100vw - 3rem); } }
@media (width >= 40rem) { .sm\:w-auto { width: auto; } }
@media (width >= 40rem) { .sm\:max-h-\[calc\(100dvh-3rem\)\] { max-height: calc(100dvh - 3rem); } }
@media (width >= 40rem) { .sm\:max-w-none { max-width: none; } }
@media (width >= 40rem) { .sm\:p-10 { padding: calc(var(--spacing) * 10); } }
@media (width >= 40rem) { .sm\:p-4 { padding: calc(var(--spacing) * 4); } }
@media (width >= 40rem) { .sm\:p-5 { padding: calc(var(--spacing) * 5); } }
@media (width >= 40rem) { .sm\:p-6 { padding: calc(var(--spacing) * 6); } }
@media (width >= 40rem) { .sm\:p-7 { padding: calc(var(--spacing) * 7); } }
@media (width >= 40rem) { .sm\:p-8 { padding: calc(var(--spacing) * 8); } }
@media (width >= 40rem) { .sm\:px-3 { padding-inline: calc(var(--spacing) * 3); } }
@media (width >= 40rem) { .sm\:px-4 { padding-inline: calc(var(--spacing) * 4); } }
@media (width >= 40rem) { .sm\:px-5 { padding-inline: calc(var(--spacing) * 5); } }
@media (width >= 40rem) { .sm\:px-6 { padding-inline: calc(var(--spacing) * 6); } }
@media (width >= 40rem) { .sm\:px-7 { padding-inline: calc(var(--spacing) * 7); } }
@media (width >= 40rem) { .sm\:px-8 { padding-inline: calc(var(--spacing) * 8); } }
@media (width >= 40rem) { .sm\:py-12 { padding-block: calc(var(--spacing) * 12); } }
@media (width >= 40rem) { .sm\:py-14 { padding-block: calc(var(--spacing) * 14); } }
@media (width >= 40rem) { .sm\:py-24 { padding-block: calc(var(--spacing) * 24); } }
@media (width >= 40rem) { .sm\:py-4 { padding-block: calc(var(--spacing) * 4); } }
@media (width >= 40rem) { .sm\:py-6 { padding-block: calc(var(--spacing) * 6); } }
@media (width >= 40rem) { .sm\:pb-20 { padding-bottom: calc(var(--spacing) * 20); } }
@media (width >= 40rem) { .sm\:pb-24 { padding-bottom: calc(var(--spacing) * 24); } }
@media (width >= 40rem) { .sm\:pb-5 { padding-bottom: calc(var(--spacing) * 5); } }
@media (width >= 40rem) { .sm\:pt-32 { padding-top: calc(var(--spacing) * 32); } }
@media (width >= 40rem) { .sm\:pt-\[calc\(var\(--beta-banner-offset\)\+6rem\)\] { padding-top: calc(var(--beta-banner-offset) + 6rem); } }
@media (width >= 40rem) { .sm\:mb-10 { margin-bottom: calc(var(--spacing) * 10); } }
@media (width >= 40rem) { .sm\:mb-12 { margin-bottom: calc(var(--spacing) * 12); } }
@media (width >= 40rem) { .sm\:mb-14 { margin-bottom: calc(var(--spacing) * 14); } }
@media (width >= 40rem) { .sm\:mb-8 { margin-bottom: calc(var(--spacing) * 8); } }
@media (width >= 40rem) { .sm\:ml-2 { margin-left: calc(var(--spacing) * 2); } }
@media (width >= 40rem) { .sm\:mt-16 { margin-top: calc(var(--spacing) * 16); } }
@media (width >= 40rem) { .sm\:mt-24 { margin-top: calc(var(--spacing) * 24); } }
@media (width >= 40rem) { .sm\:gap-1 { gap: calc(var(--spacing) * 1); } }
@media (width >= 40rem) { .sm\:gap-1\.5 { gap: calc(var(--spacing) * 1.5); } }
@media (width >= 40rem) { .sm\:gap-2 { gap: calc(var(--spacing) * 2); } }
@media (width >= 40rem) { .sm\:gap-3 { gap: calc(var(--spacing) * 3); } }
@media (width >= 40rem) { .sm\:gap-4 { gap: calc(var(--spacing) * 4); } }
@media (width >= 40rem) { .sm\:gap-5 { gap: calc(var(--spacing) * 5); } }
@media (width >= 40rem) { .sm\:gap-6 { gap: calc(var(--spacing) * 6); } }
@media (width >= 40rem) { .sm\:gap-8 { gap: calc(var(--spacing) * 8); } }
@media (width >= 40rem) { :where(.sm\:space-y-5 > :not(:last-child)) { margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse, 0)); margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse, 0))); } }
@media (width >= 40rem) { .sm\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (width >= 40rem) { .sm\:grid-cols-\[1fr_auto_1fr\] { grid-template-columns: 1fr auto 1fr; } }
@media (width >= 40rem) { .sm\:grid-cols-\[52px_1fr\] { grid-template-columns: 52px 1fr; } }
@media (width >= 40rem) { .sm\:text-2xl { font-size: 1.5rem; line-height: var(--tw-leading, calc(2 / 1.5)); } }
@media (width >= 40rem) { .sm\:text-3xl { font-size: 1.875rem; line-height: var(--tw-leading, calc(2.25 / 1.875)); } }
@media (width >= 40rem) { .sm\:text-4xl { font-size: 2.25rem; line-height: var(--tw-leading, calc(2.5 / 2.25)); } }
@media (width >= 40rem) { .sm\:text-5xl { font-size: 3rem; line-height: var(--tw-leading, 1); } }
@media (width >= 40rem) { .sm\:text-6xl { font-size: 3.75rem; line-height: var(--tw-leading, 1); } }
@media (width >= 40rem) { .sm\:text-7xl { font-size: 4.5rem; line-height: var(--tw-leading, 1); } }
@media (width >= 40rem) { .sm\:text-\[10rem\] { font-size: 10rem; } }
@media (width >= 40rem) { .sm\:text-base { font-size: 1rem; line-height: var(--tw-leading, calc(1.5 / 1)); } }
@media (width >= 40rem) { .sm\:text-lg { font-size: 1.125rem; line-height: var(--tw-leading, calc(1.75 / 1.125)); } }
@media (width >= 40rem) { .sm\:text-sm { font-size: 0.875rem; line-height: var(--tw-leading, calc(1.25 / 0.875)); } }
@media (width >= 40rem) { .sm\:text-xl { font-size: 1.25rem; line-height: var(--tw-leading, calc(1.75 / 1.25)); } }
@media (width >= 40rem) { .sm\:text-xs { font-size: 0.75rem; line-height: var(--tw-leading, calc(1 / 0.75)); } }
@media (width >= 40rem) { .sm\:tracking-\[0\.25em\] { --tw-tracking: 0.25em; letter-spacing: 0.25em; } }
@media (width >= 40rem) { .sm\:tracking-\[0\.3em\] { --tw-tracking: 0.3em; letter-spacing: 0.3em; } }
@media (width >= 48rem) { .md\:flex-row { flex-direction: row; } }
@media (width >= 48rem) { .md\:inline { display: inline; } }
@media (width >= 48rem) { .md\:items-center { align-items: center; } }
@media (width >= 48rem) { .md\:p-16 { padding: calc(var(--spacing) * 16); } }
@media (width >= 48rem) { .md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (width >= 48rem) { .md\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (width >= 48rem) { .md\:grid-cols-\[220px_1fr\] { grid-template-columns: 220px 1fr; } }
@media (width >= 48rem) { .md\:col-span-2 { grid-column: span 2 / span 2; } }
@media (width >= 48rem) { .md\:text-5xl { font-size: 3rem; line-height: var(--tw-leading, 1); } }
@media (width >= 48rem) { .md\:text-6xl { font-size: 3.75rem; line-height: var(--tw-leading, 1); } }
@media (width >= 48rem) { .md\:text-7xl { font-size: 4.5rem; line-height: var(--tw-leading, 1); } }
@media (width >= 64rem) { .lg\:flex-row { flex-direction: row; } }
@media (width >= 64rem) { .lg\:inline { display: inline; } }
@media (width >= 64rem) { .lg\:items-end { align-items: flex-end; } }
@media (width >= 64rem) { .lg\:gap-16 { gap: calc(var(--spacing) * 16); } }
@media (width >= 64rem) { .lg\:gap-20 { gap: calc(var(--spacing) * 20); } }
@media (width >= 64rem) { .lg\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (width >= 64rem) { .lg\:grid-cols-\[0\.7fr_1\.3fr\] { grid-template-columns: 0.7fr 1.3fr; } }
@media (width >= 64rem) { .lg\:grid-cols-\[1\.15fr_0\.85fr\] { grid-template-columns: 1.15fr 0.85fr; } }
@media (width >= 64rem) { .lg\:grid-cols-\[1\.35fr_0\.65fr\] { grid-template-columns: 1.35fr 0.65fr; } }
@media (width >= 64rem) { .lg\:grid-cols-\[1fr_320px\] { grid-template-columns: 1fr 320px; } }
@media (width >= 64rem) { .lg\:text-7xl { font-size: 4.5rem; line-height: var(--tw-leading, 1); } }
@media (width >= 64rem) { .lg\:text-8xl { font-size: 6rem; line-height: var(--tw-leading, 1); } }
}
/* Server address fields: keep the address readable without creating an inner scrollbar. */
.server-ip-field {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
}
.server-ip-value {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 0.75rem;
  line-height: 1.25rem;
}
.server-ip-action {
  flex: 0 0 auto;
  white-space: nowrap;
}
@media (min-width: 640px) {
  .server-ip-value { font-size: 0.875rem; }
}
@media (max-width: 479px) {
  .server-ip-field { gap: 0.5rem; }
  .server-ip-value { font-size: 0.6875rem; }
  .server-ip-action { padding: 0.625rem 0.75rem; font-size: 0.6875rem; letter-spacing: 0.08em; }
}

/* Subtle fade only — no sweep/blur on every navigation */
@keyframes route-fade {
  0%   { opacity: 0; transform: translateY(4px); }
  100% { opacity: 1; transform: translateY(0); }
}
.page-transition {
  animation: route-fade 0.25s ease-out both;
}

/* External-link click animation: ember ripple + brief flash */
@keyframes ember-ripple {
  0%   { transform: scale(0.2); opacity: 0.95; }
  70%  { opacity: 0.35; }
  100% { transform: scale(30); opacity: 0; }
}
@keyframes ember-flash {
  0%   { opacity: 0; }
  15%  { opacity: 1; }
  100% { opacity: 0; }
}
.ember-portal {
  position: fixed; inset: 0; pointer-events: none; z-index: 100; overflow: hidden;
}
.ember-portal::before {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(circle at var(--x, 50%) var(--y, 50%), oklch(0.72 0.26 30 / 0.55), transparent 55%);
  animation: ember-flash 0.7s ease-out forwards;
}
.ember-portal::after {
  content: "";
  position: absolute;
  left: var(--x, 50%); top: var(--y, 50%);
  width: 24px; height: 24px; margin: -12px 0 0 -12px;
  border-radius: 9999px;
  background: radial-gradient(circle, oklch(0.85 0.24 55) 0%, oklch(0.62 0.26 22) 45%, transparent 70%);
  filter: blur(2px);
  animation: ember-ripple 0.75s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Донат-бегущая строка */
@keyframes donor-marquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.animate-donor-marquee {
  animation: donor-marquee 40s linear infinite;
  will-change: transform;
}
.animate-donor-marquee:hover {
  animation-play-state: paused;
}
.ticker-mask {
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
          mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
}


/* Бета-баннер: смещение шапки, пока баннер виден */
:root { --beta-banner-offset: 44px; }
html.beta-off { --beta-banner-offset: 0px; }
html.beta-off [data-beta-banner] { display: none; }

/* Тосты (замена sonner) */
.toaster { position: fixed; right: 1rem; bottom: 1rem; z-index: 200; display: flex; flex-direction: column; gap: 0.5rem; pointer-events: none; }
.toast { pointer-events: auto; min-width: 16rem; max-width: 22rem; padding: 1rem; border-radius: var(--radius-lg);
  background: var(--background); color: var(--foreground); border: 1px solid var(--border);
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  font-size: 0.8125rem; line-height: 1.4; opacity: 0; transform: translateY(8px); transition: opacity .25s ease, transform .25s ease; }
.toast.toast-in { opacity: 1; transform: translateY(0); }
.toast-error { border-color: color-mix(in oklab, var(--destructive) 60%, transparent); }
.toast-success { border-color: color-mix(in oklab, var(--primary) 50%, transparent); }
@media (max-width: 600px) { .toaster { left: 1rem; right: 1rem; } .toast { max-width: none; } }
