﻿html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
main,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-00g.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-20g.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-20g.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-40g.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-60g.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-60g.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-80g.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-80g.otf') format('opentype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'HGGOTHIC';
  src: url('/assets/fonts/HGGOTHIC/HGGGothicssi-99g.otf') format('opentype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --clr-primary-main: var(--clr-primary-900);
  --clr-primary-hover: var(--clr-primary-800);
  --clr-common-background: var(--clr-base-white);
  --clr-common-on-background: var(--clr-base-black);
  --clr-text-primary: var(--clr-gray-900);
  --clr-text-secondary: var(--clr-gray-500);
  --clr-text-tertiary: var(--clr-gray-400);
  --clr-background-paper: var(--clr-base-white);
  --clr-background-primary: var(--clr-gray-50);
  --clr-background-secondary: var(--clr-primary-50);
  --clr-background-philo: var(--clr-gray-100);
}
:root {
  --clr-base-white: #fff;
  --clr-base-black: #000;
  --clr-base-background: #e4ddce;
  --clr-base-background-hover: #c9c4b8;
  --clr-base-background-light: #f3f1eb;
  --clr-text-base: #000000;
  --clr-text-desc: #999999;
  --clr-primary-50: #f3edff;
  --clr-primary-400: #7b22ff;
  --clr-primary-500: #6200ea;
  --clr-primary-700: #5600ce;
  --clr-primary-800: #5900d8;
  --clr-primary-900: #5100c2;
  --clr-secondary-500: #19d82a;
  --clr-green-500: #bcfd01;
  --clr-yellow-500: #ffe627;
  --clr-yellow-700: #fde000;
  --clr-pink-500: #ea41fc;
  --clr-gray-50: #dcdcdc;
  --clr-gray-100: #cfcfcf;
  --clr-gray-200: #b8b8b8;
  --clr-gray-300: #999999;
  --clr-gray-400: #777777;
  --clr-gray-500: #666666;
  --clr-gray-600: #555555;
  --clr-gray-700: #4c4c4c;
  --clr-gray-800: #222222;
  --clr-gray-900: #000000;
}
:root {
  --family-hggothic: 'HGGOTHIC';
  --family-pretendard: var(--family-hggothic);
  --display-xs-fs: clamp(2.8rem, 2.8478964401vw + 1.732038835rem, 7.2rem);
  --display-sm-fs: clamp(3.2rem, 3.3656957929vw + 1.9378640777rem, 8.4rem);
  --display-md-fs: clamp(3.6rem, 4.7896440129vw + 1.8038834951rem, 11rem);
  --display-lg-fs: clamp(4rem, 5.1779935275vw + 2.0582524272rem, 12rem);
  --display-xl-fs: clamp(4.8rem, 6.4724919094vw + 2.372815534rem, 14.8rem);
  --display-xs-lh: 1.28;
  --display-sm-lh: 1.28;
  --display-md-lh: 1.28;
  --display-lg-lh: 1;
  --display-xl-lh: 1;
  --display-xs-fw: 700;
  --display-sm-fw: 700;
  --display-md-fw: 700;
  --display-lg-fw: 700;
  --display-xl-fw: 700;
  --heading-xs-fs: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
  --heading-sm-fs: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
  --heading-md-fs: clamp(2rem, 0.7766990291vw + 1.7087378641rem, 3.2rem);
  --heading-bl-fs: clamp(2rem, 1.0355987055vw + 1.6116504854rem, 3.6rem);
  --heading-lg-fs: clamp(2.2rem, 1.2944983819vw + 1.7145631068rem, 4.2rem);
  --heading-xl-fs: clamp(2.4rem, 2.3300970874vw + 1.5262135922rem, 6rem);
  --heading-xs-lh: 1.4;
  --heading-sm-lh: 1.4;
  --heading-md-lh: 1.4;
  --heading-bl-lh: 1.4;
  --heading-lg-lh: 1.4;
  --heading-xl-lh: 1.4;
  --heading-xs-fw: 600;
  --heading-sm-fw: 600;
  --heading-md-fw: 600;
  --heading-lg-fw: 600;
  --heading-xl-fw: 600;
  --body-xs-fs: clamp(1.2rem, 0.1294498382vw + 1.1514563107rem, 1.4rem);
  --body-sm-fs: clamp(1.3rem, 0.1941747573vw + 1.227184466rem, 1.6rem);
  --body-md-fs: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  --body-lg-fs: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
  --body-xl-fs: clamp(1.6rem, 0.3883495146vw + 1.454368932rem, 2.2rem);
  --body-xs-lh: 1.6;
  --body-sm-lh: 1.6;
  --body-md-lh: 1.6;
  --body-lg-lh: 1.6;
  --body-xl-lh: 1.6;
  --body-xs-fw: 400;
  --body-sm-fw: 400;
  --body-md-fw: 400;
  --body-lg-fw: 400;
  --body-xl-fw: 400;
}
:root {
  --gutter: 2rem;
  --header-height: 9.8rem;
  --header-z-index: 9999;
  --drawer-z-index: 999;
  --tran-15: 0.15s ease;
  --tran-3: 0.3s ease;
  --family-base: var(--family-hggothic);
}
@media (max-width: 768px) {
  :root {
    --header-height: 7rem;
  }
}
body,
a,
button,
select,
input,
textarea,
option {
  font-family: var(--family-base);
  font-size: var(--body-md-fs);
  font-weight: var(--body-md-fw);
  line-height: var(--body-md-lh);
  word-break: keep-all;
}
:root {
  --section-xs: clamp(2.4rem, 1.5533980583vw + 1.8174757282rem, 4.8rem);
  --section-sm: clamp(3.2rem, 2.071197411vw + 2.4233009709rem, 6.4rem);
  --section-md: clamp(4.8rem, 3.1067961165vw + 3.6349514563rem, 9.6rem);
  --section-lg: clamp(6.4rem, 4.142394822vw + 4.8466019417rem, 12.8rem);
  --section-xl: clamp(8rem, 10.355987055vw + 4.1165048544rem, 24rem);
  --radius-xs: clamp(0.2rem, 0.1294498382vw + 0.1514563107rem, 0.4rem);
  --radius-sm: clamp(0.4rem, 0.2588996764vw + 0.3029126214rem, 0.8rem);
  --radius-md: clamp(0.8rem, 0.5177993528vw + 0.6058252427rem, 1.6rem);
  --radius-lg: clamp(1.2rem, 0.7766990291vw + 0.9087378641rem, 2.4rem);
  --radius-xl: clamp(1.6rem, 1.0355987055vw + 1.2116504854rem, 3.2rem);
  --radius-round: 9999px;
  --spacing-xxs: clamp(0.2rem, 0.1294498382vw + 0.1514563107rem, 0.4rem);
  --spacing-xs: clamp(0.4rem, 0.2588996764vw + 0.3029126214rem, 0.8rem);
  --spacing-sm: clamp(0.6rem, 0.3883495146vw + 0.454368932rem, 1.2rem);
  --spacing-md: clamp(0.8rem, 0.5177993528vw + 0.6058252427rem, 1.6rem);
  --spacing-lg: clamp(1.2rem, 0.7766990291vw + 0.9087378641rem, 2.4rem);
  --spacing-xl: clamp(1.6rem, 1.0355987055vw + 1.2116504854rem, 3.2rem);
  --spacing-2xl: clamp(2.4rem, 1.5533980583vw + 1.8174757282rem, 4.8rem);
  --spacing-3xl: clamp(3.2rem, 2.071197411vw + 2.4233009709rem, 6.4rem);
  --spacing-4xl: clamp(4rem, 2.5889967638vw + 3.0291262136rem, 8rem);
  --spacing-5xl: clamp(6.4rem, 4.142394822vw + 4.8466019417rem, 12.8rem);
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  letter-spacing: -0.02em;
}
html {
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizelegibility;
  font-size: 62.5%;
}
body {
  background: var(--clr-background-paper);
}
::selection {
  background: #000;
  color: #fff;
}
::-webkit-scrollbar {
  background-color: #f7f7f7;
  width: clamp(0.3rem, 0.1294498382vw + 0.2514563107rem, 0.5rem);
}
::-webkit-scrollbar-thumb {
  background-color: var(--clr-primary-500);
  border-radius: 5.5rem;
}
a,
button,
select,
input,
textarea,
option {
  font-size: var(--body-sm-fs);
}
ul,
ol,
li {
  list-style: none;
}
img {
  width: 100%;
  object-fit: cover;
}
a {
  text-decoration: none;
  display: block;
  color: var(--clr-text-base);
}
em,
address {
  font-style: normal;
}
button {
  background: none;
  border: none;
  cursor: pointer;
}
label {
  cursor: pointer;
}
textarea {
  resize: none;
}
input,
textarea,
select,
option {
  border: none;
  outline: none;
}
.no-display-xs {
  font-size: var(--display-xs-fs);
  font-weight: var(--display-xs-fw);
  line-height: var(--display-xs-lh);
}
.no-display-sm {
  font-size: var(--display-sm-fs);
  font-weight: var(--display-sm-fw);
  line-height: var(--display-sm-lh);
}
.no-display-md {
  font-size: var(--display-md-fs);
  font-weight: var(--display-md-fw);
  line-height: var(--display-md-lh);
}
.no-display-lg {
  font-size: var(--display-lg-fs);
  font-weight: var(--display-lg-fw);
  line-height: var(--display-lg-lh);
}
.no-display-xl {
  font-size: var(--display-xl-fs);
  font-weight: var(--display-xl-fw);
  line-height: var(--display-xl-lh);
}
.no-heading-xs {
  font-size: var(--heading-xs-fs);
  font-weight: var(--heading-xs-fw);
  line-height: var(--heading-xs-lh);
}
.no-heading-sm {
  font-size: var(--heading-sm-fs);
  font-weight: var(--heading-sm-fw);
  line-height: var(--heading-sm-lh);
}
.no-heading-md {
  font-size: var(--heading-md-fs);
  font-weight: var(--heading-md-fw);
  line-height: var(--heading-md-lh);
}
.no-heading-bl {
  font-size: var(--heading-bl-fs);
  font-weight: var(--heading-bl-fw);
  line-height: var(--heading-bl-lh);
}
.no-heading-lg {
  font-size: var(--heading-lg-fs);
  font-weight: var(--heading-lg-fw);
  line-height: var(--heading-lg-lh);
}
.no-heading-xl {
  font-size: var(--heading-xl-fs);
  font-weight: var(--heading-xl-fw);
  line-height: var(--heading-xl-lh);
}
.no-body-xs {
  font-size: var(--body-xs-fs);
  font-weight: var(--body-xs-fw);
  line-height: var(--body-xs-lh);
}
.no-body-sm {
  font-size: var(--body-sm-fs);
  font-weight: var(--body-sm-fw);
  line-height: var(--body-sm-lh);
}
.no-body-md {
  font-size: var(--body-md-fs);
  font-weight: var(--body-md-fw);
  line-height: var(--body-md-lh);
}
.no-body-lg {
  font-size: var(--body-lg-fs);
  font-weight: var(--body-lg-fw);
  line-height: var(--body-lg-lh);
}
.no-body-xl {
  font-size: var(--body-xl-fs);
  font-weight: var(--body-xl-fw);
  line-height: var(--body-xl-lh);
}
.no-section-xs {
  padding-top: var(--section-xs);
  padding-bottom: var(--section-xs);
}
.no-section-sm {
  padding-top: var(--section-sm);
  padding-bottom: var(--section-sm);
}
.no-section-md {
  padding-top: var(--section-md);
  padding-bottom: var(--section-md);
}
.no-section-lg {
  padding-top: var(--section-lg);
  padding-bottom: var(--section-lg);
}
.no-section-xl {
  padding-top: var(--section-xl);
  padding-bottom: var(--section-xl);
}
.no-radius-xs {
  border-radius: var(--radius-xs);
}
.no-radius-sm {
  border-radius: var(--radius-sm);
}
.no-radius-md {
  border-radius: var(--radius-md);
}
.no-radius-lg {
  border-radius: var(--radius-lg);
}
.no-radius-xl {
  border-radius: var(--radius-xl);
}
.no-radius-round {
  border-radius: var(--radius-round);
}
.no-container-xxl {
  max-width: 1920px;
  width: 100%;
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.no-container-xl {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.no-container-bl {
  max-width: 1320px;
  width: 100%;
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.no-container-lg {
  max-width: 1024px;
  width: 100%;
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.no-container-md {
  max-width: 768px;
  width: 100%;
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.no-container-sm {
  max-width: 544px;
  width: 100%;
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.no-container-xs {
  max-width: 450px;
  width: 100%;
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.no-container-xxs {
  max-width: 375px;
  width: 100%;
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.no-mg-xxs {
  margin: var(--spacing-xxs);
}
.no-mg-xxs--l {
  margin-left: var(--spacing-xxs);
}
.no-mg-xxs--r {
  margin-right: var(--spacing-xxs);
}
.no-mg-xxs--t {
  margin-top: var(--spacing-xxs);
}
.no-mg-xxs--b {
  margin-bottom: var(--spacing-xxs);
}
.no-mg-xs {
  margin: var(--spacing-xs);
}
.no-mg-xs--l {
  margin-left: var(--spacing-xs);
}
.no-mg-xs--r {
  margin-right: var(--spacing-xs);
}
.no-mg-xs--t {
  margin-top: var(--spacing-xs);
}
.no-mg-xs--b {
  margin-bottom: var(--spacing-xs);
}
.no-mg-sm {
  margin: var(--spacing-sm);
}
.no-mg-sm--l {
  margin-left: var(--spacing-sm);
}
.no-mg-sm--r {
  margin-right: var(--spacing-sm);
}
.no-mg-sm--t {
  margin-top: var(--spacing-sm);
}
.no-mg-sm--b {
  margin-bottom: var(--spacing-sm);
}
.no-mg-md {
  margin: var(--spacing-md);
}
.no-mg-md--l {
  margin-left: var(--spacing-md);
}
.no-mg-md--r {
  margin-right: var(--spacing-md);
}
.no-mg-md--t {
  margin-top: var(--spacing-md);
}
.no-mg-md--b {
  margin-bottom: var(--spacing-md);
}
.no-mg-lg {
  margin: var(--spacing-lg);
}
.no-mg-lg--l {
  margin-left: var(--spacing-lg);
}
.no-mg-lg--r {
  margin-right: var(--spacing-lg);
}
.no-mg-lg--t {
  margin-top: var(--spacing-lg);
}
.no-mg-lg--b {
  margin-bottom: var(--spacing-lg);
}
.no-mg-xl {
  margin: var(--spacing-xl);
}
.no-mg-xl--l {
  margin-left: var(--spacing-xl);
}
.no-mg-xl--r {
  margin-right: var(--spacing-xl);
}
.no-mg-xl--t {
  margin-top: var(--spacing-xl);
}
.no-mg-xl--b {
  margin-bottom: var(--spacing-xl);
}
.no-mg-2xl {
  margin: var(--spacing-2xl);
}
.no-mg-2xl--l {
  margin-left: var(--spacing-2xl);
}
.no-mg-2xl--r {
  margin-right: var(--spacing-2xl);
}
.no-mg-2xl--t {
  margin-top: var(--spacing-2xl);
}
.no-mg-2xl--b {
  margin-bottom: var(--spacing-2xl);
}
.no-mg-3xl {
  margin: var(--spacing-3xl);
}
.no-mg-3xl--l {
  margin-left: var(--spacing-3xl);
}
.no-mg-3xl--r {
  margin-right: var(--spacing-3xl);
}
.no-mg-3xl--t {
  margin-top: var(--spacing-3xl);
}
.no-mg-3xl--b {
  margin-bottom: var(--spacing-3xl);
}
.no-mg-4xl {
  margin: var(--spacing-4xl);
}
.no-mg-4xl--l {
  margin-left: var(--spacing-4xl);
}
.no-mg-4xl--r {
  margin-right: var(--spacing-4xl);
}
.no-mg-4xl--t {
  margin-top: var(--spacing-4xl);
}
.no-mg-4xl--b {
  margin-bottom: var(--spacing-4xl);
}
.no-mg-5xl {
  margin: var(--spacing-5xl);
}
.no-mg-5xl--l {
  margin-left: var(--spacing-5xl);
}
.no-mg-5xl--r {
  margin-right: var(--spacing-5xl);
}
.no-mg-5xl--t {
  margin-top: var(--spacing-5xl);
}
.no-mg-5xl--b {
  margin-bottom: var(--spacing-5xl);
}
.no-pd-xxs {
  padding: var(--spacing-xxs);
}
.no-pd-xxs--l {
  padding-left: var(--spacing-xxs);
}
.no-pd-xxs--r {
  padding-right: var(--spacing-xxs);
}
.no-pd-xxs--t {
  padding-top: var(--spacing-xxs);
}
.no-pd-xxs--b {
  padding-bottom: var(--spacing-xxs);
}
.no-pd-xs {
  padding: var(--spacing-xs);
}
.no-pd-xs--l {
  padding-left: var(--spacing-xs);
}
.no-pd-xs--r {
  padding-right: var(--spacing-xs);
}
.no-pd-xs--t {
  padding-top: var(--spacing-xs);
}
.no-pd-xs--b {
  padding-bottom: var(--spacing-xs);
}
.no-pd-sm {
  padding: var(--spacing-sm);
}
.no-pd-sm--l {
  padding-left: var(--spacing-sm);
}
.no-pd-sm--r {
  padding-right: var(--spacing-sm);
}
.no-pd-sm--t {
  padding-top: var(--spacing-sm);
}
.no-pd-sm--b {
  padding-bottom: var(--spacing-sm);
}
.no-pd-md {
  padding: var(--spacing-md);
}
.no-pd-md--l {
  padding-left: var(--spacing-md);
}
.no-pd-md--r {
  padding-right: var(--spacing-md);
}
.no-pd-md--t {
  padding-top: var(--spacing-md);
}
.no-pd-md--b {
  padding-bottom: var(--spacing-md);
}
.no-pd-lg {
  padding: var(--spacing-lg);
}
.no-pd-lg--l {
  padding-left: var(--spacing-lg);
}
.no-pd-lg--r {
  padding-right: var(--spacing-lg);
}
.no-pd-lg--t {
  padding-top: var(--spacing-lg);
}
.no-pd-lg--b {
  padding-bottom: var(--spacing-lg);
}
.no-pd-xl {
  padding: var(--spacing-xl);
}
.no-pd-xl--l {
  padding-left: var(--spacing-xl);
}
.no-pd-xl--r {
  padding-right: var(--spacing-xl);
}
.no-pd-xl--t {
  padding-top: var(--spacing-xl);
}
.no-pd-xl--b {
  padding-bottom: var(--spacing-xl);
}
.no-pd-2xl {
  padding: var(--spacing-2xl);
}
.no-pd-2xl--l {
  padding-left: var(--spacing-2xl);
}
.no-pd-2xl--r {
  padding-right: var(--spacing-2xl);
}
.no-pd-2xl--t {
  padding-top: var(--spacing-2xl);
}
.no-pd-2xl--b {
  padding-bottom: var(--spacing-2xl);
}
.no-pd-3xl {
  padding: var(--spacing-3xl);
}
.no-pd-3xl--l {
  padding-left: var(--spacing-3xl);
}
.no-pd-3xl--r {
  padding-right: var(--spacing-3xl);
}
.no-pd-3xl--t {
  padding-top: var(--spacing-3xl);
}
.no-pd-3xl--b {
  padding-bottom: var(--spacing-3xl);
}
.no-pd-4xl {
  padding: var(--spacing-4xl);
}
.no-pd-4xl--l {
  padding-left: var(--spacing-4xl);
}
.no-pd-4xl--r {
  padding-right: var(--spacing-4xl);
}
.no-pd-4xl--t {
  padding-top: var(--spacing-4xl);
}
.no-pd-4xl--b {
  padding-bottom: var(--spacing-4xl);
}
.no-pd-5xl {
  padding: var(--spacing-5xl);
}
.no-pd-5xl--l {
  padding-left: var(--spacing-5xl);
}
.no-pd-5xl--r {
  padding-right: var(--spacing-5xl);
}
.no-pd-5xl--t {
  padding-top: var(--spacing-5xl);
}
.no-pd-5xl--b {
  padding-bottom: var(--spacing-5xl);
}
.no-heading__highlight {
  font-weight: 500;
  color: var(--clr-secondary-main);
  text-transform: uppercase;
}
.no-heading__title {
  font-size: var(--heading-lg-fs);
  font-weight: var(--heading-lg-fw);
  padding-top: 1.6rem;
}
.no-heading__desc {
  color: var(--clr-text-desc);
  padding-top: 0.8rem;
}
.no-base-button {
  position: static;
  margin: 0;
  width: 2.7rem;
  height: 4.4rem;
  display: flex;
  align-items: center;
  border-radius: 0.4rem;
  background: var(--clr-gray-50);
}
.no-base-button i {
  color: var(--clr-text-desc);
  font-size: 1.6rem;
}
.no-base-button::after {
  content: none;
}
.no-base-controls {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.no-bedge-outline,
.no-bedge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  border-radius: 10rem;
}
.no-bedge {
  color: var(--clr-base-white);
  background: var(--clr-text-base);
}
.no-bedge-outline {
  background-color: rgba(0, 0, 0, 0);
  color: var(--clr-text-base);
  border: 1px solid var(--clr-text-base);
}
.no-bedge--xs {
  line-height: 1;
  font-size: 1.2rem;
  padding: 0.4rem 0.8rem;
  border-radius: 5.5rem;
}
.no-section-hr {
  height: 0;
  border-top: 1px solid var(--clr-gray-300);
}
.no-bg--gray {
  background: var(--clr-gray-50);
}
.no-bg--primary-light {
  background: var(--clr-primary-50);
}
.seo-headline {
  position: absolute;
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
}
.skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 100001;
  padding: 0.8rem 1.6rem;
  background: #000;
  color: #fff;
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6776699029rem);
  text-decoration: underline;
}
.skip-link:focus {
  left: 0;
}
.--hidden {
  overflow: hidden;
}
.--full-height {
  height: 100vh;
}
@supports (height: 100dvh) {
  .--full-height {
    height: 100dvh;
  }
}
.--flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}
.--flex-end {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.--100 {
  font-weight: 100;
}
.--200 {
  font-weight: 200;
}
.--300 {
  font-weight: 300;
}
.--400 {
  font-weight: 400;
}
.--500 {
  font-weight: 500;
}
.--600 {
  font-weight: 600;
}
.--700 {
  font-weight: 700;
}
.--800 {
  font-weight: 800;
}
.--900 {
  font-weight: 900;
}
.--ttu {
  text-transform: uppercase;
}
.--ttc {
  text-transform: capitalize;
}
.--ttl {
  text-transform: lowercase;
}
.--tac {
  text-align: center;
}
.--tal {
  text-align: left;
}
.--tar {
  text-align: right;
}
.wh {
  color: #fff;
}
.gc {
  color: var(--clr-gray-50);
}
.op9 {
  opacity: 0.9;
}
.op8 {
  opacity: 0.8;
}
.op7 {
  opacity: 0.7;
}
.op6 {
  opacity: 0.6;
}
.op5 {
  opacity: 0.5;
}
.op4 {
  opacity: 0.4;
}
.op3 {
  opacity: 0.3;
}
.op2 {
  opacity: 0.2;
}
.op1 {
  opacity: 0.1;
}
.wh9 {
  color: var(--clr-gray-900);
}
.wh8 {
  color: var(--clr-gray-800);
}
.wh7 {
  color: var(--clr-gray-700);
}
.wh6 {
  color: var(--clr-gray-600);
}
.wh5 {
  color: var(--clr-gray-500);
}
.wh4 {
  color: var(--clr-gray-400);
}
.bc {
  color: var(--clr-primary-500);
}
.sc {
  color: var(--clr-secondary-500);
}
.green {
  color: var(--clr-green-500);
}
.yellow {
  color: var(--clr-yellow-500);
}
.pink {
  color: var(--clr-pink-500);
}
.bg {
  background-color: var(--clr-gray-50);
}
.bullet {
  display: flex;
}
.bullet::before {
  content: '';
  width: 0.6rem;
  height: 0.6rem;
  min-width: 0.6rem;
  min-height: 0.6rem;
  border-radius: 99999px;
  left: 0;
  top: 1rem;
  margin-right: 1rem;
  position: relative;
  display: block;
  background-color: #b5b5b5;
}
.imgbg {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.center {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.full-bg::before {
  content: '';
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
}
.no-en {
  font-family: 'oaks', sans-serif;
}
.reveal-up .reveal-up__mask {
  display: block;
  overflow: hidden;
  padding-bottom: 1rem;
}
.reveal-up .reveal-up__text {
  display: block;
  will-change: transform;
}
@media (max-width: 768px) {
  br {
    display: none;
  }
  br.no {
    display: block;
  }
}
.no-drawer {
  position: fixed;
  inset: 0;
  z-index: calc(var(--header-z-index) - 1);
  width: 100%;
  height: 100svh;
  padding-top: 11rem;
  background: rgba(0, 0, 0, 0.92);
  color: #fff;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-1.2rem);
  transition:
    opacity 0.3s ease,
    visibility 0.3s ease,
    transform 0.3s ease;
  overflow-y: auto;
}
.no-drawer[data-state='open'] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.no-drawer .no-container-xl {
  min-height: calc(100svh - 11rem);
  padding: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.no-drawer .close {
  position: absolute;
  right: 2rem;
  top: 2rem;
  width: 4.8rem;
  height: 4.8rem;
  color: #fff;
  display: none;
  align-items: center;
  justify-content: center;
}
.no-drawer .close i {
  font-size: 2.8rem;
}
.no-drawer nav > ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.2rem 2rem;
}
.no-drawer nav > ul > li {
  padding-bottom: 2.4rem;
  border-bottom: 1px solid hsla(0, 0%, 100%, 0.14);
}
.no-drawer nav > ul > li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.no-drawer nav > ul > li > a {
  color: #fff;
}
.no-drawer .sub {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 1.6rem;
}
.no-drawer .sub a {
  color: hsla(0, 0%, 100%, 0.72);
}
@media (max-width: 768px) {
  .no-drawer {
    padding-top: 10rem;
  }
  .no-drawer .no-container-xl {
    min-height: calc(100svh - 10rem);
    justify-content: flex-start;
    padding: 3rem 4rem 6rem;
  }
  .no-drawer nav > ul {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .no-drawer nav > ul > li {
    padding-bottom: 2rem;
  }
}
html.is-drawer-open,
html.is-drawer-open body {
  overflow: hidden;
}
.no-quick-inquiry {
  position: sticky;
  bottom: 0;
  z-index: 9980;
  padding: 1.2rem 0;
  background: #bcfd01;
}
html.has-quick-inquiry-hidden .no-quick-inquiry,
html.has-quick-inquiry-closed .no-quick-inquiry,
.no-quick-inquiry[hidden],
.no-quick-inquiry.is-hidden {
  display: none;
}
.no-quick-inquiry .no-container-bl {
  max-width: 184rem;
}
.no-quick-inquiry__form {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.2rem 1.8rem;
  min-width: 0;
  position: relative;
  padding-right: 3.2rem;
}
.no-quick-inquiry__intro {
  flex: 0 0 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.2rem;
}
.no-quick-inquiry__title {
  color: #000;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}
.no-quick-inquiry__phone {
  color: #000;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}
.no-quick-inquiry__phone:hover {
  text-decoration: underline;
}
.no-quick-inquiry__fields {
  flex: 1 1 44rem;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.no-quick-inquiry__field {
  flex: 1 1 0;
  width: 100%;
  min-width: 0;
  height: 4.4rem;
  border-radius: 1rem;
  background: #fff;
  color: #222;
  font-size: 1.4rem;
  line-height: 1;
  padding: 0 1.8rem;
}
.no-quick-inquiry__field::placeholder {
  color: #222;
}
.no-quick-inquiry__field:-webkit-autofill,
.no-quick-inquiry__field:-webkit-autofill:hover,
.no-quick-inquiry__field:-webkit-autofill:focus,
.no-quick-inquiry__field:-webkit-autofill:active {
  -webkit-text-fill-color: #222;
  box-shadow: 0 0 0 100rem #fff inset;
  caret-color: #222;
  transition: background-color 9999s ease-out;
}
.no-quick-inquiry__select {
  appearance: none;
  padding-right: 3.8rem;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(0, 0, 0, 0.42) 50%),
    linear-gradient(135deg, rgba(0, 0, 0, 0.42) 50%, transparent 50%);
  background-position:
    calc(100% - 2rem) 50%,
    calc(100% - 1.5rem) 50%;
  background-size:
    0.6rem 0.6rem,
    0.6rem 0.6rem;
  background-repeat: no-repeat;
}
.no-quick-inquiry__options {
  flex: 0 0 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.no-quick-inquiry__check {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  color: #333;
  font-size: 1.4rem;
  line-height: 1.35;
  white-space: nowrap;
  cursor: pointer;
}
.no-quick-inquiry__check input {
  appearance: none;
  width: 2rem;
  height: 2rem;
  flex: 0 0 auto;
  border: 2px solid #333;
  border-radius: 0.2rem;
  background: rgba(0, 0, 0, 0);
  cursor: pointer;
  display: grid;
  place-items: center;
  position: relative;
}
.no-quick-inquiry__check input::before {
  content: '';
  width: 1rem;
  height: 0.55rem;
  border-left: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: rotate(-45deg) translate(0.05rem, -0.05rem);
  opacity: 0;
  position: absolute;
  top: 0.3rem;
}
.no-quick-inquiry__check input:checked::before {
  opacity: 1;
}
.no-quick-inquiry__privacy-link {
  border: 0;
  padding: 0;
  background: rgba(0, 0, 0, 0);
  color: inherit;
  font: inherit;
  line-height: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.25rem;
  cursor: pointer;
}
.no-quick-inquiry__submit {
  flex: 0 0 auto;
  min-height: 4.4rem;
  padding: 0 2.4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.2rem;
  border: 0;
  background: rgba(0, 0, 0, 0.24);
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.no-quick-inquiry__submit:hover {
  background: rgba(0, 0, 0, 0.36);
}
.no-quick-inquiry__close {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: rgba(0, 0, 0, 0);
  color: #000;
  font-size: 1.8rem;
  line-height: 1;
  cursor: pointer;
  transition: opacity 0.18s ease;
}
.no-quick-inquiry__close:hover {
  opacity: 0.6;
}
.no-quick-inquiry__close:focus-visible {
  outline: 2px solid #111;
  outline-offset: 2px;
}
@media (max-width: 1400px) {
  .no-quick-inquiry__fields {
    flex-basis: 36rem;
  }
  .no-quick-inquiry__title,
  .no-quick-inquiry__phone {
    font-size: 1.6rem;
  }
  .no-quick-inquiry__options {
    gap: 1.2rem;
  }
  .no-quick-inquiry__submit {
    font-size: 1.6rem;
  }
}
@media (max-width: 1024px) {
  .no-quick-inquiry {
    padding: 1.2rem 0;
  }
  .no-quick-inquiry__form {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
    padding-right: 0;
  }
  .no-quick-inquiry__intro {
    flex-direction: row;
    align-items: baseline;
    justify-content: flex-start;
    gap: 1rem;
    padding-right: 3.2rem;
  }
  .no-quick-inquiry__title,
  .no-quick-inquiry__phone {
    font-size: 1.6rem;
  }
  .no-quick-inquiry__fields {
    flex: 1 1 auto;
    flex-wrap: wrap;
    gap: 0.7rem;
  }
  .no-quick-inquiry__field {
    flex: 1 1 calc(50% - 0.35rem);
    height: 4rem;
    border-radius: 0.8rem;
  }
  .no-quick-inquiry__options {
    flex-wrap: wrap;
    gap: 1rem 1.6rem;
  }
  .no-quick-inquiry__submit {
    width: 100%;
    min-height: 4rem;
    border-radius: 0.8rem;
    font-size: 1.6rem;
  }
}
@media (max-width: 544px) {
  .no-quick-inquiry__field {
    flex: 1 1 100%;
  }
  .no-quick-inquiry__intro {
    align-items: center;
    justify-content: flex-start;
    gap: 0.8rem;
  }
  .no-quick-inquiry__title,
  .no-quick-inquiry__phone {
    font-size: 1.4rem;
  }
  .no-quick-inquiry__check {
    font-size: 1.3rem;
  }
  .no-quick-inquiry__check input {
    width: 1.8rem;
    height: 1.8rem;
  }
}
.no-quick-inquiry-launcher {
  display: none;
  position: fixed;
  right: 2rem;
  bottom: 2rem;
  z-index: 9980;
  align-items: center;
  gap: 0.7rem;
  padding: 1.2rem 1.8rem;
  border: 0;
  border-radius: 999px;
  background: #bcfd01;
  color: #000;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 0.6rem 1.8rem rgba(0, 0, 0, 0.22);
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease;
}
.no-quick-inquiry-launcher i {
  font-size: 1.6rem;
}
.no-quick-inquiry-launcher:hover {
  transform: translateY(-0.2rem);
  box-shadow: 0 0.9rem 2.2rem rgba(0, 0, 0, 0.28);
}
.no-quick-inquiry-launcher:focus-visible {
  outline: 2px solid #111;
  outline-offset: 2px;
}
html.has-quick-inquiry-closed .no-quick-inquiry-launcher {
  display: inline-flex;
}
@media (max-width: 544px) {
  .no-quick-inquiry-launcher {
    right: 1.4rem;
    bottom: 1.4rem;
    padding: 1rem 1.5rem;
    font-size: 1.35rem;
  }
  .no-quick-inquiry-launcher i {
    font-size: 1.45rem;
  }
}
.no-footer {
  padding: 5rem 0;
  background: #000;
}
.no-footer .no-container-bl {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(40rem, 5.1779935275vw + 38.0582524272rem, 48rem);
  gap: clamp(3rem, 2.5889967638vw + 2.0291262136rem, 7rem);
  align-items: start;
}
.no-footer .no-container-bl .left {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.no-footer .no-container-bl .right {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
}
.no-footer .logo {
  display: flex;
  width: clamp(7rem, 3.2362459547vw + 5.786407767rem, 12rem);
  flex-shrink: 0;
}
.no-footer .logo img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.no-footer nav {
  width: fit-content;
  max-width: 100%;
}
.no-footer nav > ul {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.8rem, 1.1650485437vw + 1.3631067961rem, 3.6rem);
}
.no-footer nav > ul > li > a {
  text-transform: uppercase;
}
.no-footer nav > ul ul {
  display: flex;
  flex-direction: column;
  gap: clamp(0.5rem, 0.1294498382vw + 0.4514563107rem, 0.7rem);
}
.no-footer nav > ul ul a {
  color: hsla(0, 0%, 100%, 0.62);
  white-space: nowrap;
  font-size: clamp(1.1rem, 0.0647249191vw + 1.0757281553rem, 1.2rem);
}
.no-footer nav > ul ul a:hover {
  color: #fff;
}
.no-footer .contact,
.no-footer .legal,
.no-footer .info {
  border-radius: 1.2rem;
  background: rgba(0, 0, 0, 0);
  border: 1px solid #fff;
}
.no-footer .contact {
  min-height: clamp(18rem, 1.1003236246vw + 17.5873786408rem, 19.7rem);
  padding: clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem) clamp(2rem, 0.2588996764vw + 1.9029126214rem, 2.4rem)
    clamp(1.8rem, 0.1294498382vw + 1.7514563107rem, 2rem);
  display: grid;
  grid-template-columns: 1fr clamp(8rem, 1.5533980583vw + 7.4174757282rem, 10.4rem);
  gap: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  align-items: start;
}
.no-footer .contact > div a {
  display: inline-flex;
  line-height: 1;
}
.no-footer .contact .call {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
}
.no-footer .contact .call a:hover {
  text-decoration: underline;
}
.no-footer .contact > ul {
  grid-column: 1/-1;
  border-top: 1px solid hsla(0, 0%, 100%, 0.16);
  display: flex;
  justify-content: flex-end;
  gap: clamp(1rem, 0.6472491909vw + 0.7572815534rem, 2rem);
}
.no-footer .contact > ul a {
  width: clamp(2.8rem, 0.2588996764vw + 2.7029126214rem, 3.2rem);
  height: clamp(2.8rem, 0.2588996764vw + 2.7029126214rem, 3.2rem);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.no-footer .contact > ul a i {
  font-size: clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem);
}
.no-footer .legal {
  padding: clamp(1.4rem, 0.1941747573vw + 1.327184466rem, 1.7rem) clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  justify-content: center;
  gap: clamp(1.2rem, 0.5177993528vw + 1.0058252427rem, 2rem);
}
@media (max-width: 1320px) {
  .no-footer .legal {
    display: flex;
    flex-wrap: wrap;
  }
}
.no-footer .legal li {
  display: flex;
  align-items: center;
}
.no-footer .legal li:not(:last-child)::after {
  content: '';
  width: 1px;
  height: 1.2rem;
  margin-left: clamp(1.2rem, 0.5177993528vw + 1.0058252427rem, 2rem);
  background: hsla(0, 0%, 100%, 0.24);
}
.no-footer .legal li a {
  font-size: clamp(1.1rem, 0.1294498382vw + 1.0514563107rem, 1.3rem);
  text-align: center;
}
.no-footer .legal li a:hover {
  text-decoration: underline;
}
.no-footer .info {
  padding: clamp(1.8rem, 0.2588996764vw + 1.7029126214rem, 2.2rem)
    clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  color: #fff;
}
@media (max-width: 1320px) {
  .no-footer .no-container-bl {
    grid-template-columns: 1fr;
    gap: clamp(3.2rem, 0.5177993528vw + 3.0058252427rem, 4rem);
  }
  .no-footer .no-container-bl .left {
    justify-content: space-between;
  }
  .no-footer nav > ul {
    flex-wrap: wrap;
  }
}
.form-popup {
  width: 920px;
  height: 79vh;
  max-height: 735px;
  background: #fff;
  padding: 80px 0;
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 99999;
  transform: translate(-50%, -50%);
  display: none;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .form-popup {
    width: 90%;
  }
}
@media (max-width: 544px) {
  .form-popup {
    padding: 6rem 0;
  }
}
.form-popup i {
  width: clamp(3.5rem, 0.6472491909vw + 3.2572815534rem, 4.5rem);
  height: clamp(3.5rem, 0.6472491909vw + 3.2572815534rem, 4.5rem);
  background: none;
  border: 1px solid #000;
  border-radius: 50%;
  position: absolute;
  top: 2rem;
  right: 3rem;
  z-index: 2;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.form-popup .title {
  margin-bottom: 10px;
  padding: 0 clamp(1rem, 1.9417475728vw + 0.2718446602rem, 4rem);
}
.form-popup .title p {
  font-size: clamp(2rem, 0.7766990291vw + 1.7087378641rem, 3.2rem);
  font-weight: 700;
  padding: 0 10px;
  padding-bottom: 15px;
  border-bottom: 1px solid #000;
}
.form-popup .content {
  height: calc(100% - 68px);
  padding-left: clamp(1rem, 1.9417475728vw + 0.2718446602rem, 4rem);
  padding-right: clamp(1rem, 1.9417475728vw + 0.2718446602rem, 4rem);
}
.form-popup .content .scroll-box {
  height: 100%;
  padding-top: 30px;
  padding-right: 30px;
  padding-left: 1rem;
  overflow-y: scroll;
}
.form-popup .content .scroll-box ul {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.form-popup .content .scroll-box ul li h3 {
  font-size: clamp(1.6rem, 0.1294498382vw + 1.5514563107rem, 1.8rem);
  font-weight: 500;
  color: var(--clr-gray-900);
  margin-bottom: 0.5rem;
}
.form-popup .content .scroll-box ul li p {
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
  color: var(--clr-gray-900);
}
.popup-bg {
  width: 100vw;
  height: 100vh;
  background: #000;
  opacity: 0.6;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
  display: none;
}
.popup-bg.active {
  display: block;
}
.legal-modal {
  width: min(96rem, 100vw - clamp(2.4rem, 1.5533980583vw + 1.8174757282rem, 4.8rem));
  height: min(74rem, 100vh - clamp(2.4rem, 1.5533980583vw + 1.8174757282rem, 4.8rem));
  max-height: none;
  padding: clamp(2.8rem, 0.9061488673vw + 2.4601941748rem, 4.2rem) 0;
  border-radius: 0.8rem;
  box-shadow: 0 2.4rem 8rem rgba(0, 0, 0, 0.24);
}
.legal-modal .legal-modal__close {
  width: clamp(3.4rem, 0.6472491909vw + 3.1572815534rem, 4.4rem);
  height: clamp(3.4rem, 0.6472491909vw + 3.1572815534rem, 4.4rem);
  position: absolute;
  top: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
  right: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
  z-index: 2;
  border: 0;
  background: rgba(0, 0, 0, 0);
  color: var(--clr-gray-900);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.legal-modal .legal-modal__close i {
  width: auto;
  height: auto;
  position: static;
  border: 0;
  border-radius: 0;
  font-size: clamp(2.2rem, 0.5177993528vw + 2.0058252427rem, 3rem);
  color: currentColor;
}
.legal-modal .title {
  margin-bottom: clamp(2.2rem, 0.7766990291vw + 1.9087378641rem, 3.4rem);
  padding: 0 clamp(2.4rem, 1.1650485437vw + 1.9631067961rem, 4.2rem);
}
.legal-modal .title p {
  max-width: calc(100% - clamp(4.4rem, 0.9061488673vw + 4.0601941748rem, 5.8rem));
  padding: 0;
  border-bottom: 0;
  color: var(--clr-gray-900);
  font-size: clamp(2.6rem, 0.6472491909vw + 2.3572815534rem, 3.6rem);
  line-height: 1.2;
}
.legal-modal .content {
  height: calc(100% - clamp(6.6rem, 1.4239482201vw + 6.0660194175rem, 8.8rem));
  padding: 0 clamp(2.4rem, 1.1650485437vw + 1.9631067961rem, 4.2rem);
}
.legal-modal .content .scroll-box {
  height: 100%;
  padding: 0 clamp(1.4rem, 0.9061488673vw + 1.0601941748rem, 2.8rem) 0 0;
  overflow-y: auto;
  color: var(--clr-gray-900);
  font-size: clamp(1.5rem, 0.1941747573vw + 1.427184466rem, 1.8rem);
  line-height: 1.72;
  white-space: normal;
  word-break: keep-all;
}
.legal-modal .content .scroll-box h3 {
  margin-top: clamp(2.8rem, 0.6472491909vw + 2.5572815534rem, 3.8rem);
  margin-bottom: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
  padding-bottom: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  color: var(--clr-gray-900);
  font-size: clamp(1.8rem, 0.2588996764vw + 1.7029126214rem, 2.2rem);
  font-weight: 700;
  line-height: 1.35;
}
.legal-modal .content .scroll-box h3:first-child {
  margin-top: 0;
}
.legal-modal .content .scroll-box p {
  margin: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem) 0
    clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  color: rgba(0, 0, 0, 0.82);
  line-height: 1.72;
}
.legal-modal .content .scroll-box ul {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  margin: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem) 0
    clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
}
.legal-modal .content .scroll-box li {
  position: relative;
  padding-left: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  color: rgba(0, 0, 0, 0.82);
}
.legal-modal .content .scroll-box li::before {
  content: '';
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.48);
  position: absolute;
  top: 0.86em;
  left: clamp(0.4rem, 0.1294498382vw + 0.3514563107rem, 0.6rem);
}
.legal-modal .content .scroll-box::-webkit-scrollbar {
  width: 0.8rem;
}
.legal-modal .content .scroll-box::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0);
}
.legal-modal .content .scroll-box::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.16);
}
@media (max-width: 768px) {
  .legal-modal {
    width: calc(100vw - 2.4rem);
    height: 68vh;
    max-height: 58rem;
    padding: 2.4rem 0;
  }
  .legal-modal .title {
    margin-bottom: 1.6rem;
    padding: 0 2rem;
  }
  .legal-modal .title p {
    max-width: calc(100% - 4.4rem);
    font-size: 2.4rem;
  }
  .legal-modal .content {
    height: calc(100% - 5.4rem);
    padding: 0 2rem;
  }
  .legal-modal .content .scroll-box {
    padding-right: 1.2rem;
    font-size: 1.4rem;
    line-height: 1.65;
  }
  .legal-modal .content .scroll-box h3 {
    margin-top: 2.2rem;
    margin-bottom: 0.8rem;
    font-size: 1.7rem;
  }
}
@media (max-width: 544px) {
  .legal-modal {
    height: 62vh;
    max-height: 48rem;
  }
}
.legal-modal-bg {
  background: rgba(0, 0, 0, 0.58);
  opacity: 1;
}
html.lock,
body.lock {
  overflow: hidden;
}
.no-header {
  position: fixed;
  top: 2rem;
  left: 0;
  right: 0;
  z-index: var(--header-z-index);
  width: 100%;
  pointer-events: none;
}
.no-header .no-container-xl {
  padding-left: 2rem;
  padding-right: 2rem;
  pointer-events: none;
}
.no-header .bar {
  width: 100%;
  min-height: 7.6rem;
  padding: 0 clamp(2rem, 3.2362459547vw + 0.786407767rem, 7rem);
  display: grid;
  grid-template-columns: 10rem 1fr 4rem;
  align-items: center;
  gap: clamp(2rem, 3.2362459547vw + 0.786407767rem, 7rem);
  border-radius: 1.2rem;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(2.4rem);
  -webkit-backdrop-filter: blur(2.4rem);
  pointer-events: auto;
}
.no-header .logo {
  display: inline-flex;
  align-items: center;
  width: 7.6rem;
}
.no-header .logo img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.no-header nav {
  min-width: 0;
}
.no-header nav > ul {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: clamp(3rem, 1.9417475728vw + 2.2718446602rem, 6rem);
}
.no-header nav > ul > li {
  position: relative;
  display: flex;
  align-items: center;
}
.no-header nav > ul > li:hover .sub,
.no-header nav > ul > li:focus-within .sub {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}
.no-header nav > ul > li:hover > a,
.no-header nav > ul > li:focus-within > a {
  color: var(--clr-secondary-500);
}
.no-header nav > ul > li > a {
  min-height: 7.6rem;
  transition: color 0.3s;
}
.no-header nav > ul > li > a.is-active {
  color: var(--clr-secondary-500);
}
.no-header nav a {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}
.no-header .sub {
  position: absolute;
  top: 100%;
  left: 50%;
  min-width: 16rem;
  padding: 1.2rem 0;
  border-radius: 0 0 0.8rem 0.8rem;
  background: #000;
  backdrop-filter: blur(2.4rem);
  -webkit-backdrop-filter: blur(2.4rem);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, -0.6rem);
  transition:
    opacity 0.2s ease,
    visibility 0.2s ease,
    transform 0.2s ease;
}
.no-header .sub ul {
  display: flex;
  flex-direction: column;
}
.no-header .sub a {
  padding: 1rem 2rem;
  width: 100%;
  transition:
    color 0.3s,
    background-color 0.3s;
}
.no-header .sub a:hover {
  color: var(--clr-secondary-500);
}
.no-header .toggle {
  width: 4.8rem;
  height: 4.8rem;
  color: #fff;
  display: none;
  align-items: center;
  justify-content: center;
}
.no-header .toggle i {
  font-size: 2.2rem;
}
@media (max-width: 1024px) {
  .no-header .bar {
    grid-template-columns: 8rem 1fr 4rem;
    gap: var(--spacing-lg);
    padding: 0 var(--spacing-lg);
  }
  .no-header nav > ul {
    gap: var(--spacing-2xl);
  }
}
@media (max-width: 768px) {
  .no-header .bar {
    min-height: 8rem;
    grid-template-columns: 8rem 1fr;
    padding: 1.4rem 2rem;
  }
  .no-header nav {
    display: none;
  }
  .no-header .toggle {
    display: flex;
    justify-self: end;
  }
  .no-header .logo {
    width: 8.4rem;
  }
}
.no-sub-visual {
  position: relative;
  overflow: hidden;
  background: url('../images/sub-visual-bg.jpg') center/cover no-repeat;
  height: clamp(32rem, 7.7669902913vw + 29.0873786408rem, 44rem);
}
.no-sub-visual .no-container-xl {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  height: 100%;
  padding-bottom: 3.2rem;
}
@media (max-width: 544px) {
  .no-sub-visual .no-container-xl {
    flex-direction: column-reverse;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 2rem;
  }
}
.no-sub-visual .meta {
  display: inline-flex;
  align-items: center;
  gap: clamp(1rem, 0.5177993528vw + 0.8058252427rem, 1.8rem);
  margin-bottom: clamp(2rem, 0.6472491909vw + 1.7572815534rem, 3rem);
}
@media (max-width: 544px) {
  .no-sub-visual .meta {
    flex-wrap: wrap;
    gap: 0.8rem 1.2rem;
    margin-bottom: 1.6rem;
  }
}
.no-sub-visual .meta .line {
  width: clamp(1.6rem, 1.0355987055vw + 1.2116504854rem, 3.2rem);
  height: 1px;
  background: hsla(0, 0%, 100%, 0.5);
}
.no-sub-visual h2 {
  font-size: clamp(6.4rem, 5.9546925566vw + 4.1669902913rem, 15.6rem);
}
@media (max-width: 544px) {
  .no-sub-visual h2 {
    font-size: 5.2rem;
  }
}
.no-sub-visual h2 .word,
.no-sub-visual h2 .space {
  display: inline-block;
}
.no-sub-visual h2 .word {
  overflow: hidden;
  vertical-align: top;
}
.no-sub-visual h2 .char {
  display: inline-block;
  will-change: transform, opacity;
}
.js .no-sub-visual h2 {
  visibility: hidden;
}
.js .no-sub-visual h2[data-split-done='1'] {
  visibility: visible;
}
.js .no-sub-visual h2 .char {
  opacity: 0;
  transform: translateY(105%);
}
.no-sub-visual--contact h2 .space {
  width: clamp(1.5rem, 0.9708737864vw + 1.1359223301rem, 3rem);
}
.no-sub-visual .metric {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  text-align: right;
}
@media (max-width: 768px) {
  .no-sub-visual .metric {
    margin-left: auto;
    flex-direction: column-reverse;
  }
}
.no-sub-visual .metric .count {
  color: var(--clr-secondary-500);
}
.no-sub-visual .metric .copy {
  text-align: right;
  font-size: clamp(1.2rem, 0.2588996764vw + 1.1029126214rem, 1.6rem);
}
.no-sub-visual .metric .copy br {
  display: block !important;
}
.no-sub-visual__marquee {
  position: relative;
  z-index: 1;
  overflow: hidden;
  width: 100%;
}
.no-sub-visual__marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  height: 100%;
  animation: sub-visual-marquee 200s linear infinite;
}
.no-sub-visual__marquee--reverse .no-sub-visual__marquee-track {
  animation-direction: reverse;
}
.no-sub-visual__marquee-group {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
}
.no-sub-visual__marquee-group img {
  display: block;
  width: auto;
  flex: 0 0 auto;
  height: clamp(5.5rem, 0.6472491909vw + 5.2572815534rem, 6.5rem);
}
@keyframes sub-visual-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
.no-sub-nav {
  width: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.no-sub-nav__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(3rem, 0.6472491909vw + 2.7572815534rem, 4rem);
  min-height: 4rem;
}
.no-sub-nav__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.no-sub-nav__item.is-active .no-sub-nav__link {
  color: var(--clr-primary-500);
}
.no-sub-nav__item.is-active::after {
  transform: scaleX(1);
}
.no-sub-nav__item::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.1rem;
  height: 0.2rem;
  background: var(--clr-primary-500);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.2s ease;
}
.no-sub-nav__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 4rem;
  color: var(--clr-text-primary);
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
  font-weight: 700;
  transition: color 0.2s ease;
}
.no-sub-nav__link:hover {
  color: var(--clr-primary-500);
}
.no-board__total {
  font-weight: 600;
}
.no-board__total em {
  color: var(--clr-primary-main);
}
.no-board__filter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
}
@media (max-width: 544px) {
  .no-board__filter {
    align-items: flex-start;
    flex-direction: column;
  }
}
.no-board__search {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  flex: 1;
  justify-content: flex-end;
}
@media (max-width: 544px) {
  .no-board__search {
    flex-direction: column;
    width: 100%;
  }
  .no-board__search .no-form-control--search {
    width: 100%;
  }
  .no-board__search .no-form-control--search label {
    width: 100%;
  }
  .no-board__search .no-form-control__input--search {
    max-width: 100%;
  }
  .no-board__search .no-form-select {
    max-width: 100%;
  }
}
.no-board-detail__headline {
  margin-bottom: clamp(3.2rem, 1.0355987055vw + 2.8116504854rem, 4.8rem);
}
.no-board-detail__head {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.8rem;
  align-items: center;
  border-top: 2px solid var(--clr-base-black);
  padding: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
  border-bottom: 1px solid var(--clr-gray-100);
}
@media (max-width: 768px) {
  .no-board-detail__head {
    flex-direction: column;
    align-items: flex-start;
    padding: 2.4rem 0;
  }
}
.no-board-detail__admin {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2.4rem;
  color: var(--clr-primary-main);
  font-weight: 600;
}
.no-board-detail__admin i {
  font-size: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
}
.no-board-detail__date {
  font-size: 1.4rem;
  color: var(--clr-gray-500);
}
.no-board-detail__body {
  padding: clamp(1.8rem, 1.1650485437vw + 1.3631067961rem, 3.6rem)
    clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
}
.no-board-detail__body.--comment {
  background: var(--clr-primary-50);
  border: 1px solid var(--clr-primary-main);
  margin-bottom: 2rem;
}
@media (max-width: 768px) {
  .no-board-detail__body {
    padding: 2.4rem 0;
  }
}
.no-board-detail__action {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  margin-top: 3.6rem;
}
@media (max-width: 768px) {
  .no-board-detail__action {
    margin-top: 2.4rem;
  }
}
.no-locked__container {
  max-width: 560px;
  margin-inline: auto;
  text-align: center;
}
.no-locked__logo {
  margin-bottom: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
}
.no-locked__logo img {
  display: block;
  margin: 0 auto;
  width: 18rem;
}
.no-locked__title {
  margin-bottom: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
}
.no-locked__desc {
  color: var(--clr-gray-600);
  line-height: 1.6;
  margin-bottom: clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem);
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
}
.no-locked__desc strong {
  display: block;
  color: var(--clr-base-black);
  margin-bottom: 0.4rem;
}
.no-locked__form {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.no-locked__field {
  width: 100%;
}
.no-locked__submit {
  width: 100%;
  height: 48px;
  border-radius: var(--radius-lg, 12px);
  font-weight: 700;
}
.no-locked__back {
  display: inline-block;
  margin-top: 0.6rem;
  text-decoration: underline;
  color: var(--clr-primary-main);
  font-weight: 600;
}
.no-locked__back:hover {
  text-decoration: none;
}
.sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.no-btn {
  --btn-min-height: clamp(5.2rem, 0.2588996764vw + 5.1029126214rem, 5.6rem);
  --btn-radius: 5.5rem;
  --btn-text-color: #fff;
  --btn-icon-bg: var(--clr-primary-500);
  --btn-blur: 0.7rem;
  --btn-target-width: 5.6rem;
  --btn-width-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --btn-hover-peak: 1.085;
  --btn-hover-sub-peak: 1.022;
  --btn-hover-pop-duration: 0.56s;
  --btn-hover-out-duration: 0.38s;
  --btn-hover-out-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --btn-icon-size: clamp(3.2rem, 0.2588996764vw + 3.1029126214rem, 3.6rem);
  position: fixed;
  left: 50%;
  bottom: 3.2rem;
  z-index: 9999;
  width: var(--btn-min-height);
  min-width: var(--btn-min-height);
  height: var(--btn-min-height);
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0 clamp(5.4rem, 0.6472491909vw + 5.1572815534rem, 6.4rem) 0
    clamp(2rem, 0.2588996764vw + 1.9029126214rem, 2.4rem);
  border-radius: var(--btn-radius);
  color: var(--btn-text-color);
  white-space: nowrap;
  overflow: hidden;
  text-decoration: none;
  cursor: pointer;
  touch-action: manipulation;
  opacity: 0;
  will-change: width, transform, opacity;
  backface-visibility: hidden;
  transform: translateX(-50%);
  border: 1px solid hsla(0, 0%, 100%, 0.1);
}
.no-btn::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: var(--btn-min-height);
  height: var(--btn-min-height);
  border-radius: var(--btn-radius);
  transform: translate(-50%, -50%);
  background-color: rgba(0, 0, 0, 0.92);
  -webkit-backdrop-filter: blur(var(--btn-blur));
  backdrop-filter: blur(var(--btn-blur));
  transition: width 0.44s var(--btn-width-ease);
  will-change: width;
  z-index: -1;
}
.no-btn::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 999px;
  background: hsla(0, 0%, 100%, 0.12);
  filter: blur(1rem);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -50%) translateY(3.8rem) scale(0.88);
  will-change: transform, opacity;
}
.no-btn .txt {
  display: inline-block;
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  font-size: clamp(1.5rem, 0.1941747573vw + 1.427184466rem, 1.8rem);
  font-weight: 700;
  line-height: 1;
  transform: translate3d(-0.9rem, 0, 0);
  transition:
    max-width 0.24s var(--btn-width-ease),
    opacity 0.16s ease,
    transform 0.24s var(--btn-width-ease);
  will-change: max-width, opacity, transform;
}
.no-btn .icon {
  position: absolute;
  left: 50%;
  top: 49%;
  width: var(--btn-icon-size);
  height: var(--btn-icon-size);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--btn-icon-bg);
  color: #fff;
  transform: translate(-50%, -50%) scale(1);
  transition:
    left 0.44s var(--btn-width-ease),
    transform 0.44s var(--btn-width-ease),
    background-color 0.3s ease;
  will-change: left, transform;
}
.no-btn .icon svg {
  width: 100%;
  height: 100%;
  display: block;
  fill: currentColor;
}
.no-btn:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}
.no-btn.activated {
  opacity: 1;
}
.no-btn.activated::after {
  animation: btn-intro-ghost 0.82s both;
}
.no-btn.activated:not(.is-intro-done) {
  animation: btn-rise-bounce 0.82s both;
}
.no-btn.activated.is-intro-done {
  transform: translateX(-50%) translate3d(0, 0, 0) scale(1);
  transition: transform var(--btn-hover-out-duration) var(--btn-hover-out-ease);
  animation: none;
}
.no-btn.activated.is-intro-done:hover,
.no-btn.activated.is-intro-done:active {
  animation: no-btn-hover-bounce var(--btn-hover-pop-duration) both;
  transition: none;
  background-color: #000;
}
@media (prefers-reduced-motion: reduce) {
  .no-btn.activated.is-intro-done:hover,
  .no-btn.activated.is-intro-done:active {
    animation: none;
    transform: translateX(-50%) translate3d(0, 0, 0) scale(1.03);
    transition: transform 0.2s ease;
  }
}
.no-btn.is-expanding {
  width: var(--btn-target-width);
}
.no-btn.is-expanding::before {
  width: var(--btn-target-width);
}
.no-btn.is-expanding .icon {
  left: calc(100% - 1.2rem - var(--btn-icon-size) / 2);
  transform: translate(-50%, -50%) scale(1);
}
.no-btn.is-text-visible .txt {
  max-width: 24rem;
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
.no-btn:not(.activated) {
  pointer-events: none;
  opacity: 0;
  transform: translateX(-50%) translate3d(0, 3.8rem, 0) scale(0.84);
}
.no-btn:not(.activated)::after {
  opacity: 0;
  transform: translate(-50%, -50%) translateY(3.8rem) scale(0.88);
  animation: none;
}
.no-btn:not(.is-expanding) {
  width: var(--btn-min-height);
}
.no-btn:not(.is-expanding)::before {
  width: var(--btn-min-height);
}
.no-btn:not(.is-expanding) .icon {
  left: 50%;
  transform: translate(-50%, -50%) scale(1);
}
.no-btn:not(.is-text-visible) .txt {
  max-width: 0;
  opacity: 0;
  transform: translate3d(-0.9rem, 0, 0);
}
@keyframes btn-rise-bounce {
  0% {
    opacity: 0;
    transform: translateX(-50%) translate3d(0, 4.2rem, 0) scale(0.84);
    animation-timing-function: cubic-bezier(0.22, 0.88, 0.3, 1);
  }
  27% {
    opacity: 1;
    transform: translateX(-50%) translate3d(0, -2.7rem, 0) scale(1);
    animation-timing-function: cubic-bezier(0.34, 0, 0.2, 1);
  }
  50% {
    opacity: 1;
    transform: translateX(-50%) translate3d(0, 0.62rem, 0) scale(0.996);
    animation-timing-function: cubic-bezier(0.28, 0.82, 0.36, 1);
  }
  67% {
    opacity: 1;
    transform: translateX(-50%) translate3d(0, -0.2rem, 0) scale(1);
    animation-timing-function: cubic-bezier(0.34, 0, 0.24, 1);
  }
  82% {
    opacity: 1;
    transform: translateX(-50%) translate3d(0, 0.08rem, 0) scale(1);
    animation-timing-function: linear;
  }
  100% {
    opacity: 1;
    transform: translateX(-50%) translate3d(0, 0, 0) scale(1);
  }
}
@keyframes btn-intro-ghost {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) translateY(4.2rem) scale(0.88);
    animation-timing-function: cubic-bezier(0.22, 0.88, 0.3, 1);
  }
  27% {
    opacity: 0.48;
    transform: translate(-50%, -50%) translateY(-2.35rem) scale(1.1);
    animation-timing-function: cubic-bezier(0.34, 0, 0.2, 1);
  }
  50% {
    opacity: 0.22;
    transform: translate(-50%, -50%) translateY(0.54rem) scale(1.04);
    animation-timing-function: cubic-bezier(0.28, 0.82, 0.36, 1);
  }
  67% {
    opacity: 0.1;
    transform: translate(-50%, -50%) translateY(-0.14rem) scale(1.015);
  }
  82% {
    opacity: 0.04;
    transform: translate(-50%, -50%) translateY(0.04rem) scale(1.005);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) translateY(0) scale(1);
  }
}
@keyframes no-btn-hover-bounce {
  0% {
    transform: translateX(-50%) translate3d(0, 0, 0) scale(1);
    animation-timing-function: cubic-bezier(0.33, 0, 0.2, 1);
  }
  28% {
    transform: translateX(-50%) translate3d(0, 0, 0) scale(var(--btn-hover-peak));
    animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
  }
  46% {
    transform: translateX(-50%) translate3d(0, 0, 0) scale(1);
    animation-timing-function: cubic-bezier(0.25, 0, 0.25, 1);
  }
  66% {
    transform: translateX(-50%) translate3d(0, 0, 0) scale(var(--btn-hover-sub-peak));
    animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
  }
  100% {
    transform: translateX(-50%) translate3d(0, 0, 0) scale(1);
  }
}
.no-form-radio__title {
  display: block;
  font-weight: 500;
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
  margin-bottom: 0.8rem;
}
.no-form-radio__list {
  display: flex;
  flex-wrap: nowrap;
  gap: 1.2rem;
}
@media (max-width: 1024px) {
  .no-form-radio__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 1024px) {
  .no-form-radio__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.no-form-radio__item {
  flex: 1;
}
.no-form-radio__item input {
  display: none;
}
.no-form-radio__item input:checked + .no-form-radio__label {
  color: var(--clr-primary-main);
  border-color: var(--clr-primary-main);
  outline: 1px solid var(--clr-primary-main);
}
.no-form-radio__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem;
  background: var(--clr-base-white);
  border: 1px solid var(--clr-gray-300);
  width: 100%;
  font-size: clamp(1.3rem, 0.1294498382vw + 1.2514563107rem, 1.5rem);
}
.no-form-checkbox__inner {
  display: inline-flex;
  align-items: center;
  gap: 1.2rem;
}
.no-form-checkbox input {
  display: none;
}
.no-form-checkbox input:checked + .no-form-checkbox__box {
  border-color: var(--clr-primary-main);
  background: var(--clr-primary-main);
}
.no-form-checkbox input:checked + .no-form-checkbox__box i {
  visibility: visible;
  opacity: 1;
}
.no-form-checkbox__box {
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 0.4rem;
  border: 1px solid var(--clr-gray-300);
  display: flex;
  align-items: center;
  background: var(--clr-base-white);
}
.no-form-checkbox__box i {
  color: var(--clr-base-white);
  visibility: hidden;
  opacity: 0;
  font-size: clamp(1.2rem, 0.1294498382vw + 1.1514563107rem, 1.4rem);
}
.no-form-checkbox__label {
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
}
.no-form-group.--full {
  width: 100%;
}
.no-form-group.--base {
  width: calc(33.33% - 2.1333rem);
}
@media (max-width: 1024px) {
  .no-form-group.--base {
    width: calc(50% - 1.6rem);
  }
}
@media (max-width: 768px) {
  .no-form-group.--base {
    width: 100%;
  }
}
.no-form-group__label {
  margin-bottom: 0.8rem;
  font-weight: 500;
  display: inline-block;
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
}
.no-form-control {
  border: 1px solid var(--clr-gray-300);
  border-radius: var(--radius-sm);
  overflow: hidden;
  position: relative;
}
.no-form-control__button {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  border-radius: 0%;
}
.no-form-control.--textarea {
  height: clamp(16rem, 2.5889967638vw + 15.0291262136rem, 20rem);
}
.no-form-control.--base {
  max-width: 40rem;
}
.no-form-control:focus-within {
  border-color: var(--clr-primary-main);
}
.no-form-control__textarea {
  width: 100%;
  padding: 2rem;
  height: 100%;
}
.no-form-control--search {
  display: inline-block;
}
.no-form-control--search label {
  display: inline-flex;
  align-items: center;
  background: var(--clr-base-white);
}
.no-form-control--search button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 1.2rem;
}
.no-form-control--search button i {
  color: var(--clr-primary-main);
  font-weight: 500;
  font-size: 2rem;
}
.no-form-control__input {
  width: 100%;
  height: 4.4rem;
  padding: 0 2rem;
}
.no-form-control__input:read-only {
  background: var(--clr-gray-100);
}
.no-form-control__input--search {
  max-width: 25.5rem;
  width: 100%;
}
.no-form-control__input--search::-webkit-search-decoration,
.no-form-control__input--search::-webkit-search-cancel-button,
.no-form-control__input--search::-webkit-search-results-button,
.no-form-control__input--search::-webkit-search-results-decoration {
  display: none;
}
.no-form-select {
  max-width: 15rem;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.no-form-select__input {
  -webkit-appearance: none;
  border: 1px solid var(--clr-gray-300);
  border-radius: var(--radius-sm);
  overflow: hidden;
  width: 100%;
  height: 4.4rem;
  padding: 0 1.2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.no-form-select__icon {
  position: absolute;
  pointer-events: none;
  right: 1.2rem;
  top: 50%;
  height: 100%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
}
.no-form-file__inner {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  background: var(--clr-base-white);
  border: 1px solid var(--clr-gray-300);
  border-radius: var(--radius-sm);
  min-height: 4.4rem;
  padding: 0.6rem 2rem;
  transition:
    border-color 0.2s ease,
    outline-color 0.2s ease;
  position: relative;
  overflow: hidden;
}
.no-form-file:focus-within .no-form-file__inner {
  border-color: var(--clr-primary-main);
  outline: 1px solid var(--clr-primary-main);
}
.no-form-file__label {
  font-size: clamp(1.2rem, 0.1294498382vw + 1.1514563107rem, 1.4rem);
}
.no-form-file__input {
  width: 100%;
  height: 3.2rem;
  padding: 0 1.2rem 0 1.2rem;
  border: 0;
  background: rgba(0, 0, 0, 0);
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
  color: var(--clr-gray-900);
  cursor: pointer;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.no-form-file__input::file-selector-button {
  margin-right: 1.2rem;
  height: 3.2rem;
  padding: 0 1.2rem;
  border-radius: 0.6rem;
  border: 1px solid var(--clr-primary-main);
  background: var(--clr-primary-main);
  color: var(--clr-base-white);
  font-size: clamp(1.3rem, 0.1294498382vw + 1.2514563107rem, 1.5rem);
  font-weight: 600;
  cursor: pointer;
  transition:
    opacity 0.2s ease,
    transform 0.1s ease;
}
.no-form-file__input:hover::file-selector-button {
  opacity: 0.9;
}
.no-form-file__input:active::file-selector-button {
  transform: translateY(1px);
}
.no-form-file__input::-webkit-file-upload-button {
  visibility: hidden;
}
.no-form-file__meta {
  margin-left: auto;
  color: var(--clr-gray-500);
  font-size: clamp(1.2rem, 0.0647249191vw + 1.1757281553rem, 1.3rem);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 60%;
}
@media (max-width: 768px) {
  .no-form-file__meta {
    max-width: 100%;
  }
}
.no-form-file.--drop {
  position: relative;
}
.no-form-file.--drop .no-form-file__inner {
  justify-content: center;
  gap: 0.8rem;
  border-style: dashed;
  border-color: var(--clr-gray-300);
  background: var(--clr-gray-50);
  min-height: 10rem;
  text-align: center;
}
.no-form-file.--drop .no-form-file__input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
.no-form-file.--drop.is-dragover .no-form-file__inner {
  border-color: var(--clr-primary-main);
  outline: 1px solid var(--clr-primary-main);
  background: rgba(0, 0, 0, 0.02);
}
.form__success-msg {
  color: #1a7f4b;
  font-size: inherit;
  margin-bottom: 0.75rem;
}
.no-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
  user-select: none;
}
@media (max-width: 768px) {
  .no-pagination {
    gap: 0.8rem;
  }
}
.no-pagination__numbers {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.no-pagination__dots {
  padding: 0 0.25rem;
  color: var(--clr-gray-500);
  font-weight: 500;
  pointer-events: none;
}
.no-pagination__link {
  --size: clamp(3.2rem, 0.5177993528vw + 3.0058252427rem, 4rem);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--size);
  height: var(--size);
  padding: 0 0.8rem;
  border: 1px solid var(--clr-gray-300);
  border-radius: 0.6rem;
  background: var(--clr-base-white);
  color: var(--clr-base-black);
  line-height: 1;
  transition:
    background 0.15s ease,
    color 0.15s ease,
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}
.no-pagination__link:hover {
  background: var(--clr-gray-100);
  border-color: var(--clr-gray-400);
}
.no-pagination__link:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--clr-primary-rgb, 33, 150, 243), 0.25);
}
.no-pagination__link.--disabled,
.no-pagination__link[aria-disabled='true'] {
  color: var(--clr-gray-400);
  border-color: var(--clr-gray-200);
  background: var(--clr-gray-50);
  pointer-events: none;
  opacity: 0.7;
}
.no-pagination__link--num {
  width: var(--size);
  padding: 0;
  font-weight: 500;
}
.no-pagination__link--num[aria-current='page'],
.no-pagination__link--num.is-active {
  background: var(--clr-primary-main);
  border-color: var(--clr-primary-main);
  color: var(--clr-base-white);
}
.no-pagination__link--num.--ghost {
  background: var(--clr-base-white);
  color: var(--clr-gray-700);
}
.no-pagination__link--arrow {
  width: var(--size);
  color: var(--clr-base-black);
  border-color: rgba(0, 0, 0, 0);
  background: rgba(0, 0, 0, 0);
}
.no-pagination__link--arrow i {
  font-size: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  line-height: 1;
}
.no-pagination__link--arrow:hover {
  background: var(--clr-gray-100);
  border-color: var(--clr-gray-300);
}
.no-prevnext {
  border-top: 1px solid var(--clr-base-black);
}
.no-prevnext__block {
  width: 100%;
  text-align: left;
  padding: 2.4rem;
  padding-left: 0;
  border-bottom: 1px solid var(--clr-gray-100);
}
@media (max-width: 768px) {
  .no-prevnext__block {
    padding: 1.8rem 2.4rem 1.8rem 0;
    font-size: 1.2rem;
    line-height: 1.6rem;
  }
}
.no-prevnext__link {
  padding-left: 9.4rem;
  position: relative;
  display: inline-block;
}
@media (max-width: 768px) {
  .no-prevnext__link {
    padding-left: 4.6rem;
  }
}
.no-prevnext__label {
  color: var(--clr-gray-600);
  position: absolute;
  top: 0;
  left: 0;
  right: auto;
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
}
@media (max-width: 768px) {
  .no-prevnext__label {
    font-size: 1.2rem;
  }
}
.no-prevnext__title {
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
}
@media (max-width: 768px) {
  .no-prevnext__title {
    font-size: 1.2rem;
  }
}
.no-table__self {
  border-top: 2px solid var(--clr-gray-900);
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}
.no-table__self th,
.no-table__self td {
  border-bottom: 1px solid var(--clr-gray-200);
  color: var(--clr-gray-600);
}
@media (max-width: 768px) {
  .no-table__self th,
  .no-table__self td {
    text-align: left;
    display: block;
    padding: 0;
    border-bottom: 0;
  }
}
.no-table__self th,
.no-table__self td {
  padding: 2rem 1rem;
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
}
.no-table__self thead {
  font-weight: 600;
}
@media (max-width: 768px) {
  .no-table__self thead {
    display: none;
  }
}
.no-table__self thead th {
  border-bottom: 1px solid var(--clr-gray-900);
  text-align: center;
}
@media (max-width: 768px) {
  .no-table__self tbody tr {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--clr-gray-200);
    padding: 1.6rem 0;
  }
}
@media (max-width: 768px) {
  .no-table__self tbody td {
    padding: 0;
  }
}
@media (max-width: 768px) {
  .no-table .no-table__attr {
    display: inline-block;
    color: var(--clr-gray-400);
  }
  .no-table .no-table__attr:last-child span {
    padding-right: 0;
    margin-right: 0;
  }
  .no-table .no-table__attr:last-child span::after {
    content: none;
  }
  .no-table .no-table__attr span {
    font-size: 1.2rem;
    position: relative;
    padding-right: 0.8rem;
    margin-right: 0.8rem;
    line-height: 1;
  }
  .no-table .no-table__attr span::after {
    position: absolute;
    content: '';
    top: 50%;
    right: 0;
    height: 1rem;
    width: 0.1rem;
    background: var(--clr-gray-600);
    transform: translateY(-40%);
  }
  .no-table .no-table__attr span::before {
    content: attr(data-label);
    color: var(--clr-gray-600);
    display: inline-block;
    padding-right: 0.4rem;
  }
}
.no-table .no-table__pin {
  color: var(--clr-primary-main);
}
.no-table .no-table__title {
  font-weight: 600;
  width: 100%;
}
.no-table .no-table__link {
  font-weight: inherit;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
}
.no-table .no-table__link:hover {
  text-decoration: underline;
  color: var(--clr-primary-main);
}
.no-table .no-table__link-text {
  white-space: nowrap;
}
.no-floating-container {
  display: grid;
  grid-template-columns: 220px 1fr;
  column-gap: clamp(24px, 3vw, 48px);
  align-items: start;
}
@media (max-width: 768px) {
  .no-floating-container {
    grid-template-columns: 1fr;
    column-gap: auto;
  }
}
.no-floating-menu {
  width: 16rem;
  padding-left: 2rem;
  will-change: transform;
}
@media (max-width: 768px) {
  .no-floating-menu {
    display: none;
  }
}
.no-floating-menu__nav {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
}
.no-floating-menu__link {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  font-weight: 500;
  color: var(--clr-gray-400);
}
.no-floating-menu__link:hover {
  color: var(--clr-base-black);
}
.no-floating-menu__link.--active {
  color: var(--clr-primary-main);
}
.no-floating-menu__link.--active::before {
  opacity: 1;
  visibility: visible;
}
.no-floating-menu__link::before {
  content: '';
  width: 0.6rem;
  height: 0.6rem;
  background: var(--clr-primary-main);
  opacity: 0;
  visibility: hidden;
}
:root {
  --gt-size: 48px;
  --gt-gap: 20px;
}
.no-gototop {
  position: fixed;
  inset-inline-end: calc(var(--gt-gap) + env(safe-area-inset-right));
  inset-block-end: calc(var(--gt-gap) + env(safe-area-inset-bottom));
  z-index: 999;
  pointer-events: none;
}
.no-gototop__btn {
  width: var(--gt-size);
  height: var(--gt-size);
  border: none;
  border-radius: 0;
  background: var(--clr-primary-main);
  color: var(--clr-base-white);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  cursor: pointer;
  pointer-events: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.no-gototop__btn span {
  font-size: 12px;
}
.no-gototop__btn {
  opacity: 0;
  transform: translateY(12px);
  transition:
    opacity 0.18s ease,
    transform 0.18s ease,
    background 0.2s ease;
}
.no-gototop__btn:hover {
  background: var(--clr-primary-hover);
}
.no-gototop__btn:active {
  transform: translateY(14px) scale(0.97);
}
.no-gototop__btn:focus-visible {
  outline: 2px solid var(--clr-primary-400);
  outline-offset: 3px;
}
.no-gototop.is-visible .no-gototop__btn {
  opacity: 1;
  transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
  .no-gototop__btn {
    transition: none;
  }
}
.no-captcha {
  display: flex;
  flex-direction: column;
}
@media (max-width: 768px) {
  .no-captcha {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .no-captcha .no-form-control {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .no-captcha .no-form-control label {
    width: 100%;
  }
}
.no-captcha .no-form-control__input {
  height: 4.8rem;
  width: 20rem;
}
@media (max-width: 768px) {
  .no-captcha .no-form-control__input {
    width: 100%;
  }
}
.no-captcha__label {
  display: block;
  margin-bottom: 0.8rem;
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
}
.no-captcha__container {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
@media (max-width: 768px) {
  .no-captcha__container {
    flex-direction: column;
    width: 100%;
    align-items: flex-start;
  }
}
.no-captcha__screen {
  display: flex;
  align-items: center;
  border: 1px solid var(--clr-gray-300);
  border-radius: 0.6rem;
  overflow: hidden;
  height: 4.8rem;
}
.no-captcha__image {
  display: flex;
  align-items: center;
  height: 100%;
  border-right: 1px solid var(--clr-gray-300);
}
.no-captcha__control {
  display: flex;
  flex-direction: column;
}
.no-captcha__control button {
  display: flex;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-bottom: 1px solid var(--clr-gray-300);
  background: var(--clr-base-white);
}
.no-captcha__control button:hover {
  background: var(--clr-gray-50);
}
.no-captcha__control button:last-child {
  border-bottom: 0;
}
.no-captcha__control button i {
  font-size: 1.1rem;
}
.no-marquee-section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  gap: 5rem;
}
.no-marquee-section.--top {
  padding-top: clamp(6.4rem, 4.142394822vw + 4.8466019417rem, 12.8rem);
}
.no-marquee-section.--bottom {
  padding-bottom: clamp(6.4rem, 4.142394822vw + 4.8466019417rem, 12.8rem);
}
.no-marquee-section.--y {
  padding: clamp(6.4rem, 4.142394822vw + 4.8466019417rem, 12.8rem) 0;
}
.no-marquee {
  padding: 1vw;
  white-space: nowrap;
}
.no-marquee__inner {
  display: flex;
  gap: 2rem;
}
.no-marquee__content {
  color: rgba(0, 164, 175, 0.15);
  font-size: clamp(9.6rem, 5.9546925566vw + 7.3669902913rem, 18.8rem);
}
.profile-sidebar {
  width: 100%;
}
.profile-sidebar__inner {
  position: relative;
}
.profile-sidebar__nav {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.profile-sidebar__list {
  display: flex;
  flex-direction: column;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}
.profile-sidebar__item {
  border-bottom: 1px solid var(--clr-gray-200);
}
.profile-sidebar__item:last-child {
  border-bottom: none;
}
.profile-sidebar__link,
.profile-sidebar__logout-btn {
  display: flex;
  align-items: center;
  gap: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  width: 100%;
  padding: clamp(1.6rem, 0.3883495146vw + 1.454368932rem, 2.2rem)
    clamp(1.8rem, 0.5177993528vw + 1.6058252427rem, 2.6rem);
  font-size: var(--body-md-fs, clamp(0.9375rem, 1.2vw, 1.0625rem));
  line-height: var(--body-md-lh, 1.5);
  color: var(--clr-text-primary);
  text-decoration: none;
  background: rgba(0, 0, 0, 0);
  border: none;
  cursor: pointer;
  transition:
    color 0.2s ease,
    background-color 0.2s ease;
  text-align: left;
}
.profile-sidebar__link:hover {
  color: var(--clr-primary-main);
  background: var(--clr-gray-50);
}
.profile-sidebar__link:focus-visible {
  outline: 2px solid var(--clr-primary-main);
  outline-offset: 2px;
}
.profile-sidebar__item.--active .profile-sidebar__link {
  font-weight: 600;
  color: var(--clr-common-on-background);
  background: var(--clr-gray-50);
}
.profile-sidebar__icon {
  flex-shrink: 0;
  width: 1.35em;
  font-size: 1.15em;
  color: inherit;
}
.profile-sidebar__text {
  flex: 1;
}
.profile-sidebar__option {
  margin-top: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
  padding-top: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
  border-top: 1px solid var(--clr-gray-200);
}
.profile-sidebar__logout-form {
  margin: 0;
  padding: 0;
}
.profile-sidebar__logout-btn {
  font-family: inherit;
  display: flex;
  align-items: center;
  gap: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  width: 100%;
  padding: clamp(1.2rem, 0.2588996764vw + 1.1029126214rem, 1.6rem) 0;
  font-size: var(--body-md-fs, clamp(0.9375rem, 1.2vw, 1.0625rem));
  line-height: var(--body-md-lh, 1.5);
  color: var(--clr-text-secondary, #6b7280);
  background: rgba(0, 0, 0, 0);
  border: none;
  cursor: pointer;
  transition: color 0.2s ease;
  text-align: left;
}
.profile-sidebar__logout-btn:hover {
  color: var(--clr-text-primary);
}
.profile-sidebar__logout-btn:focus-visible {
  outline: 2px solid var(--clr-primary-main);
  outline-offset: 2px;
}
.comm-sidebar {
  width: 100%;
}
.comm-sidebar__inner {
  position: relative;
}
.comm-sidebar__nav {
  width: 100%;
}
.comm-sidebar__list {
  display: flex;
  flex-direction: column;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}
.comm-sidebar__item {
  border-bottom: none;
  border-top: 1px solid var(--clr-gray-300, #ccc);
}
.comm-sidebar__item:first-child {
  border-top: none;
}
.comm-sidebar__link {
  display: flex;
  align-items: center;
  gap: clamp(1.2rem, 0.2588996764vw + 1.1029126214rem, 1.6rem);
  width: 100%;
  padding: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem)
    clamp(1.6rem, 0.3883495146vw + 1.454368932rem, 2.2rem);
  font-size: var(--body-md-fs, 0.9375rem);
  line-height: var(--body-md-lh, 1.5);
  color: var(--clr-text-desc, #999999);
  text-decoration: none;
  background: rgba(0, 0, 0, 0);
  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    font-weight 0.2s ease;
  position: relative;
}
.comm-sidebar__link:hover {
  color: var(--clr-primary-main);
  background: var(--clr-gray-50);
}
.comm-sidebar__link:focus-visible {
  outline: 2px solid var(--clr-primary-main);
  outline-offset: 2px;
}
.comm-sidebar__item.--active .comm-sidebar__link {
  font-weight: 600;
  color: var(--clr-text-primary, #000000);
  background: rgba(0, 0, 0, 0);
}
.comm-sidebar__item.--active .comm-sidebar__link:hover {
  background: rgba(0, 0, 0, 0) !important;
  color: var(--clr-text-primary, #000000) !important;
}
.comm-sidebar__icon {
  flex-shrink: 0;
  width: 1.25em;
  font-size: 1.1em;
  color: inherit;
}
.comm-sidebar__text {
  flex: 1;
}
.comm-sidebar__chevron {
  flex-shrink: 0;
  font-size: 0.875em;
  color: inherit;
  transition:
    transform 0.2s ease,
    color 0.2s ease;
  margin-left: auto;
  transform: rotate(0deg);
}
.comm-sidebar__item.--expanded .comm-sidebar__chevron {
  transform: rotate(180deg);
}
.comm-sidebar__sub {
  padding-left: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  background: rgba(0, 0, 0, 0);
  display: none;
}
.comm-sidebar__item.--expanded .comm-sidebar__sub {
  display: block;
}
.comm-sidebar__item.--active .comm-sidebar__sub {
  background: rgba(0, 0, 0, 0);
}
.comm-sidebar__sub-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.comm-sidebar__sub-item {
  border-bottom: none;
}
.comm-sidebar__sub-link {
  display: flex;
  align-items: center;
  width: 100%;
  padding: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem) clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  font-size: var(--body-sm-fs, 0.9375rem);
  line-height: var(--body-sm-lh, 1.5);
  color: var(--clr-text-desc, #999999);
  text-decoration: none;
  background: rgba(0, 0, 0, 0);
  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    font-weight 0.2s ease;
}
.comm-sidebar__sub-link:hover {
  color: var(--clr-primary-main);
  background: var(--clr-base-white);
}
.comm-sidebar__sub-link:focus-visible {
  outline: 2px solid var(--clr-primary-main);
  outline-offset: 2px;
}
.comm-sidebar__sub-item.--active .comm-sidebar__sub-link {
  font-weight: 600;
  color: var(--clr-text-primary, #000000);
  background: var(--clr-gray-50);
}
.comm-sidebar__sub-item.--active .comm-sidebar__sub-link:hover {
  background: var(--clr-gray-50);
  color: var(--clr-text-primary, #000000);
}
.comm-sidebar__sub-text {
  flex: 1;
}
.no-auto-cover {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  width: 100%;
  background-color: var(--clr-gray-100, #f1f1f1);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.no-auto-cover__img,
.no-auto-cover__video {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.no-auto-cover--1x1 {
  aspect-ratio: 1/1;
}
.no-auto-cover--4x3 {
  aspect-ratio: 4/3;
}
.no-auto-cover--16x9 {
  aspect-ratio: 16/9;
}
.no-auto-cover--3x4 {
  aspect-ratio: 3/4;
}
.no-auto-cover--21x9 {
  aspect-ratio: 21/9;
}
.app-modal-backdrop {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.48);
  z-index: 20000;
  padding: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
  backdrop-filter: blur(0.3rem);
}
.app-modal-box {
  width: min(48rem, 100% - 3.2rem);
  background: var(--clr-base-white);
  border-radius: clamp(1.2rem, 0.2588996764vw + 1.1029126214rem, 1.6rem);
  box-shadow:
    0 2rem 4rem rgba(0, 0, 0, 0.18),
    0 0.8rem 1.2rem rgba(0, 0, 0, 0.08);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  animation: app-modal-appear 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes app-modal-appear {
  from {
    opacity: 0;
    transform: scale(0.92) translateY(0.8rem);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
.app-modal-header {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding: clamp(2rem, 0.2588996764vw + 1.9029126214rem, 2.4rem) clamp(2.4rem, 0.2588996764vw + 2.3029126214rem, 2.8rem);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.app-modal-title {
  flex: 1;
  margin: 0;
  color: var(--clr-base-black);
}
.app-modal-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border: none;
  background: rgba(0, 0, 0, 0);
  cursor: pointer;
  font-size: 1.8rem;
  color: rgba(0, 0, 0, 0.48);
  border-radius: clamp(0.6rem, 0.1294498382vw + 0.5514563107rem, 0.8rem);
  padding: 0;
  flex-shrink: 0;
  transition: color var(--tran-3);
}
.app-modal-close:hover {
  color: var(--clr-base-black);
}
.app-modal-body {
  padding: clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem)
    clamp(2.4rem, 0.2588996764vw + 2.3029126214rem, 2.8rem);
  color: var(--clr-base-black);
  line-height: 1.7;
  white-space: pre-line;
}
.app-modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1rem;
  padding: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem) clamp(2.4rem, 0.2588996764vw + 2.3029126214rem, 2.8rem);
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}
.app-modal-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(8.8rem, 0.7766990291vw + 8.5087378641rem, 10rem);
  min-height: clamp(4.4rem, 0.2588996764vw + 4.3029126214rem, 4.8rem);
  padding-inline: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
  border-radius: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  border: 1px solid rgba(0, 0, 0, 0.2);
  background: rgba(0, 0, 0, 0);
  color: var(--clr-base-black);
  cursor: pointer;
  font-family: inherit;
  transition:
    background-color var(--tran-3),
    border-color var(--tran-3),
    color var(--tran-3);
}
.app-modal-btn:hover {
  background: rgba(0, 0, 0, 0.06);
}
.app-modal-btn--primary {
  background: var(--clr-base-black);
  border-color: var(--clr-base-black);
  color: var(--clr-base-white);
}
.app-modal-btn--primary:hover {
  background: var(--clr-primary-500);
  border-color: var(--clr-primary-500);
}
.no-visual {
  position: relative;
  overflow: hidden;
  padding: clamp(4rem, 2.5889967638vw + 3.0291262136rem, 8rem) clamp(2.4rem, 1.0355987055vw + 2.0116504854rem, 4rem) 0;
  display: flex;
  flex-direction: column;
  height: 90svh;
}
@media (max-width: 1920px) {
  .no-visual {
    padding: clamp(4rem, 2.5889967638vw + 3.0291262136rem, 8rem) clamp(2.4rem, 1.0355987055vw + 2.0116504854rem, 4rem)
      20rem;
    height: auto;
  }
}
@media (max-width: 768px) {
  .no-visual {
    height: auto;
    padding-bottom: clamp(8rem, 7.7669902913vw + 5.0873786408rem, 20rem);
  }
}
.no-visual .title-txt {
  --slogan-gap: clamp(1rem, 0.6472491909vw + 0.7572815534rem, 2rem);
  --brand-offset: 0px;
  --brand-gap: 0px;
  display: flex;
  flex-direction: column;
}
.no-visual .title-txt .line-mask {
  display: block;
  overflow: hidden;
  padding-bottom: clamp(0.5rem, 0.9708737864vw + 0.1359223301rem, 2rem);
}
.no-visual .title-txt .line-mask h2 {
  font-size: clamp(3.8rem, 7.1197411003vw + 1.1300970874rem, 14.8rem);
}
@media (max-width: 1920px) {
  .no-visual .title-txt .line-mask h2 {
    font-size: clamp(3.8rem, 5.8252427184vw + 1.6155339806rem, 12.8rem);
  }
}
.no-visual .title-txt .slogan-line {
  display: inline-block;
  will-change: transform, padding-left;
}
.no-visual .title-txt .slogan-brand {
  padding-left: calc(var(--brand-offset) + var(--brand-gap));
}
.no-visual .title-txt .img-reveal {
  display: flex;
  align-items: center;
  position: relative;
}
.no-visual .title-txt .img-box {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 100%;
  overflow: hidden;
  will-change: width;
  border-radius: clamp(0.4rem, 0.2588996764vw + 0.3029126214rem, 0.8rem);
  display: flex;
}
.no-visual .title-txt .img-box img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.no-visual .sub-title-txt {
  display: flex;
  flex-direction: column;
  margin-top: clamp(3rem, 3.2362459547vw + 1.786407767rem, 8rem);
}
.no-visual .sub-title-txt p {
  margin-left: auto;
  font-size: clamp(1.6rem, 0.7766990291vw + 1.3087378641rem, 2.8rem);
}
.no-visual .scroll-down {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 4rem;
  color: #666;
  transition:
    color 0.3s,
    gap 0.45s;
  display: flex;
  align-items: center;
  gap: 0.2rem;
}
@media (max-width: 768px) {
  .no-visual .scroll-down {
    display: none;
  }
}
.no-visual .scroll-down:hover {
  color: #000;
  gap: 0.8rem;
}
.no-show {
  position: relative;
  overflow: hidden;
}
.no-show figure {
  display: flex;
  position: relative;
  overflow: hidden;
  aspect-ratio: 16/9;
  margin: 0 clamp(2.4rem, 1.0355987055vw + 2.0116504854rem, 4rem);
  border-radius: clamp(1.2rem, 0.7766990291vw + 0.9087378641rem, 2.4rem);
}
@media (max-width: 1024px) {
  .no-show figure {
    aspect-ratio: auto;
    height: 100%;
  }
}
.no-show figure video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transform-origin: 50% 50%;
}
.no-projects {
  position: relative;
}
.no-projects .inner {
  padding: 0 clamp(2.4rem, 1.0355987055vw + 2.0116504854rem, 4rem);
}
.no-projects h2 {
  position: relative;
  width: max-content;
  margin: 0 auto;
}
.no-projects h2 .count {
  position: absolute;
  right: -4rem;
  top: -0.5rem;
  padding: clamp(0.5rem, 0.3236245955vw + 0.3786407767rem, 1rem) clamp(1rem, 0.6472491909vw + 0.7572815534rem, 2rem);
  font-size: clamp(1.4rem, 0.6472491909vw + 1.1572815534rem, 2.4rem);
  background-color: var(--clr-primary-500);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-weight: 600;
  border-radius: 5.5rem;
  transform-origin: center center;
  overflow: hidden;
  z-index: 2;
}
@media (max-width: 544px) {
  .no-projects h2 .count {
    right: -2rem;
    top: -1.5rem;
  }
}
.no-projects .projects-wrap {
  position: relative;
  display: flex;
  gap: 4.8rem;
  align-items: flex-start;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap {
    gap: 3.2rem;
    flex-direction: column;
    align-items: stretch;
    margin-top: clamp(3.2rem, 6.213592233vw + 0.8699029126rem, 12.8rem);
  }
}
.no-projects .projects-wrap .sticky-wrap {
  position: sticky;
  top: clamp(2rem, 1.2944983819vw + 1.5145631068rem, 4rem);
  height: fit-content;
  width: min(clamp(20rem, 18.1229773463vw + 13.2038834951rem, 48rem), 22%);
  min-width: clamp(20rem, 18.1229773463vw + 13.2038834951rem, 48rem);
  align-self: flex-start;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .sticky-wrap {
    position: relative;
    width: 100%;
    top: 0;
  }
}
.no-projects .projects-wrap .filter-box {
  position: relative;
  width: 100%;
  align-self: flex-start;
  background-color: #fff;
  padding: clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem) clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem)
    clamp(2.4rem, 0.2588996764vw + 2.3029126214rem, 2.8rem);
  border-radius: clamp(1.2rem, 0.2588996764vw + 1.1029126214rem, 1.6rem);
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .filter-box.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    border-radius: 0;
    z-index: 40;
  }
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .filter-box .count {
    text-align: center;
    font-size: 2.4rem;
  }
}
.no-projects .projects-wrap .filter-box .no-filter-search {
  position: relative;
}
.no-projects .projects-wrap .filter-box .no-filter-search .icon {
  position: absolute;
  left: 2rem;
  top: 51%;
  transform: translateY(-50%);
  cursor: auto;
  color: #999;
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
}
.no-projects .projects-wrap .filter-box .no-filter-search input {
  width: 100%;
  height: clamp(4.6rem, 0.2588996764vw + 4.5029126214rem, 5rem);
  border: 2px solid #aaa;
  border-radius: 5.5rem;
  padding: 13px 42px 13px 46px;
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
  font-weight: 400;
  outline: none;
  transition: border-color 0.2s ease;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .filter-box .no-filter-search input {
    border-width: 1px;
  }
}
.no-projects .projects-wrap .filter-box .no-filter-search input::placeholder {
  color: #999;
  font-weight: 500;
}
.no-projects .projects-wrap .filter-box .no-filter-search input:focus {
  border-color: var(--clr-primary-500);
}
.no-projects .projects-wrap .filter-box .no-filter-group {
  position: relative;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .filter-box .no-filter-group {
    display: none;
  }
}
.no-projects .projects-wrap .filter-box .no-filter-group .list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.no-projects .projects-wrap .filter-box .no-filter-group .list button {
  border: 1px solid rgba(0, 0, 0, 0.36);
  border-radius: 999px;
  color: rgba(0, 0, 0, 0.36);
  font-size: clamp(1.3rem, 0.1294498382vw + 1.2514563107rem, 1.5rem);
  font-weight: 500;
  line-height: 1;
  padding: clamp(0.5rem, 0.1294498382vw + 0.4514563107rem, 0.7rem)
    clamp(0.9rem, 0.3236245955vw + 0.7786407767rem, 1.4rem);
  transition:
    border-color 0.3s ease,
    color 0.3s ease,
    background-color 0.3s ease;
}
.no-projects .projects-wrap .filter-box .no-filter-group .list button:hover {
  border-color: #000;
  color: #000;
}
.no-projects .projects-wrap .filter-box .no-filter-group .list button.active {
  color: #000;
  border-color: #000;
  font-weight: 500;
}
.no-projects .projects-wrap .filter-box .no-filter-actions {
  display: flex;
  gap: 1rem;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .filter-box .no-filter-actions {
    margin-top: 1.2rem;
  }
}
.no-projects .projects-wrap .filter-box .no-filter-actions button {
  border-radius: 5.5rem;
  padding: 1.4rem 0.8rem;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  font-size: clamp(1.3rem, 0.1294498382vw + 1.2514563107rem, 1.5rem);
  transition:
    border 0.3s,
    background-color 0.3s;
}
.no-projects .projects-wrap .filter-box .no-filter-actions .reset {
  width: 30%;
  border: 1px solid #aaa;
  background-color: #fff;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .filter-box .no-filter-actions .reset {
    width: 25%;
  }
}
@media (max-width: 450px) {
  .no-projects .projects-wrap .filter-box .no-filter-actions .reset {
    display: none;
  }
}
.no-projects .projects-wrap .filter-box .no-filter-actions .reset:hover {
  border-color: #000;
}
.no-projects .projects-wrap .filter-box .no-filter-actions .category {
  width: 30%;
  border: 1px solid #aaa;
  background-color: #fff;
  display: none;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .filter-box .no-filter-actions .category {
    width: 25%;
    display: flex;
  }
}
@media (max-width: 450px) {
  .no-projects .projects-wrap .filter-box .no-filter-actions .category {
    width: 50%;
  }
}
.no-projects .projects-wrap .filter-box .no-filter-actions .category:hover {
  border-color: #000;
}
.no-projects .projects-wrap .filter-box .no-filter-actions .submit {
  width: 70%;
  background-color: #000;
  color: #fff;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .filter-box .no-filter-actions .submit {
    width: 50%;
  }
}
.no-projects .projects-wrap .filter-box .no-filter-actions .submit:hover {
  background-color: var(--clr-primary-500);
}
.no-projects .projects-wrap .filter-mobile-wrap {
  position: fixed;
  inset: 0px;
  z-index: 99999;
  display: none;
  pointer-events: none;
}
.no-projects .projects-wrap .filter-mobile-wrap.is-open {
  display: block;
  pointer-events: auto;
}
.no-projects .projects-wrap .filter-mobile-wrap .overlay {
  position: absolute;
  inset: 0px;
  background: rgba(0, 0, 0, 0.4);
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box {
  position: absolute;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: #fff;
  border-radius: 2rem 2rem 0px 0px;
  padding: 2rem;
  max-height: 80vh;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  z-index: 2;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .top-group {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-bottom: 1rem;
}
@media (max-width: 450px) {
  .no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .top-group {
    align-items: center;
  }
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .top-group p {
  font-size: 1.8rem;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .top-group .close {
  cursor: pointer;
  font-size: 1.8rem;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-group {
  position: relative;
  margin-top: 2rem;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-group h3 {
  font-size: 1.6rem;
  margin-bottom: 1.2rem;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-group .list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-group .list button {
  border: 1px solid rgba(0, 0, 0, 0.36);
  border-radius: 999px;
  color: rgba(0, 0, 0, 0.36);
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  padding: 1rem 1.6rem;
  transition:
    border-color 0.3s ease,
    color 0.3s ease,
    background-color 0.3s ease;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-group .list button:hover {
  border-color: #000;
  color: #000;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-group .list button.active {
  color: #000;
  border-color: #000;
  font-weight: 500;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-actions {
  display: flex;
  gap: 1rem;
  padding-top: 2rem;
  padding-bottom: 1.2rem;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-actions button {
  border-radius: 5.5rem;
  padding: 1.4rem 0.8rem;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  font-size: clamp(1.3rem, 0.1294498382vw + 1.2514563107rem, 1.5rem);
  transition:
    border 0.3s,
    background-color 0.3s;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-actions .reset {
  width: 50%;
  border: 1px solid #aaa;
  background-color: #fff;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-actions .reset:hover {
  border-color: #000;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-actions .submit {
  width: 50%;
  background-color: #000;
  color: #fff;
}
.no-projects .projects-wrap .filter-mobile-wrap .filter-mobile-box .no-filter-actions .submit:hover {
  background-color: #222;
}
.no-projects .projects-wrap .projects-list {
  flex: 1 1 0%;
  min-width: 0px;
  width: 100%;
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.8rem 2.4rem;
}
@media (max-width: 1920px) {
  .no-projects .projects-wrap .projects-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 1024px) {
  .no-projects .projects-wrap .projects-list {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .projects-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 544px) {
  .no-projects .projects-wrap .projects-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.4rem;
  }
}
.no-projects .projects-wrap .projects-list li.no-projects-empty {
  grid-column: 1/-1;
  display: grid;
  place-items: center;
  padding: 7.2rem 0;
  width: 100%;
  text-align: center !important;
}
.no-projects .projects-wrap .projects-list li.no-projects-empty .no-projects-empty__inner {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2.8rem;
  margin: 0 auto;
}
.no-projects .projects-wrap .projects-list li.no-projects-empty .no-projects-empty__icon {
  width: 6.4rem;
  height: 6.4rem;
  border: 2px solid #d9d9d9;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #b7b7b7;
  font-size: 4rem;
  line-height: 1;
}
.no-projects .projects-wrap .projects-list li.no-projects-empty .no-projects-empty__text {
  color: #5a5a5a;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.35;
  text-align: center !important;
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .projects-list li.no-projects-empty {
    padding: 4.8rem 0;
  }
  .no-projects .projects-wrap .projects-list li.no-projects-empty .no-projects-empty__inner {
    gap: 2rem;
  }
  .no-projects .projects-wrap .projects-list li.no-projects-empty .no-projects-empty__text {
    font-size: 1.8rem;
  }
}
.no-projects .projects-wrap .projects-list li a {
  position: relative;
}
.no-projects .projects-wrap .projects-list li a figure {
  display: flex;
  overflow: hidden;
  aspect-ratio: 16/9;
  border-radius: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
  position: relative;
}
.no-projects .projects-wrap .projects-list li a figure svg {
  position: absolute;
  width: clamp(2.4rem, 0.7766990291vw + 2.1087378641rem, 3.6rem);
  height: clamp(2.4rem, 0.7766990291vw + 2.1087378641rem, 3.6rem);
  right: clamp(1.5rem, 0.3236245955vw + 1.3786407767rem, 2rem);
  bottom: clamp(1.5rem, 0.3236245955vw + 1.3786407767rem, 2rem);
  z-index: 2;
  background-color: #333;
  border-radius: 50%;
  transition:
    background-color 0.3s,
    transform 0.45s;
}
.no-projects .projects-wrap .projects-list li a figure svg path {
  fill: #fff;
}
.no-projects .projects-wrap .projects-list li a figure img {
  transition: transform 0.45s;
}
.no-projects .projects-wrap .projects-list li a .f-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.2rem;
}
.no-projects .projects-wrap .projects-list li a .f-wrap .category-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
}
.no-projects .projects-wrap .projects-list li a .f-wrap .category-list li {
  border-radius: 5.5rem;
  align-items: center;
  justify-content: center;
  padding: clamp(0.4rem, 0.0647249191vw + 0.3757281553rem, 0.5rem) clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
  color: #666;
  border: 1px solid rgba(0, 0, 0, 0.2);
}
.no-projects .projects-wrap .projects-list li a:hover figure svg {
  background-color: var(--clr-primary-500);
  transform: rotate(180deg);
}
.no-projects .projects-wrap .projects-list li a:hover figure img {
  transform: scale(1.05);
}
.no-projects .projects-wrap .projects-modal-wrap {
  position: fixed;
  inset: 0px;
  z-index: 99999;
  pointer-events: none;
}
.no-projects .projects-wrap .projects-modal-wrap.is-open {
  pointer-events: auto;
}
.no-projects .projects-wrap .projects-modal-wrap.is-open .overlay {
  opacity: 1;
}
.no-projects .projects-wrap .projects-modal-wrap.is-open .projects-modal-box {
  transform: translateY(0%);
  opacity: 1;
}
.no-projects .projects-wrap .projects-modal-wrap .overlay {
  position: absolute;
  inset: 0px;
  background: rgba(0, 0, 0, 0.4);
  opacity: 0;
  transition: opacity 0.35s ease;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box {
  position: absolute;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: #fff;
  max-width: 164rem;
  margin: 0 auto;
  transition: 0.3s ease-in-out;
  border-radius: clamp(2rem, 1.2944983819vw + 1.5145631068rem, 4rem) clamp(2rem, 1.2944983819vw + 1.5145631068rem, 4rem)
    0px 0px;
  max-height: 90vh;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  z-index: 2;
  opacity: 0;
  transform: translateY(100%);
  transition:
    transform 0.35s ease,
    opacity 0.35s ease;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding: 0 clamp(1.5rem, 4.2071197411vw - 0.0776699029rem, 8rem);
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box::-webkit-scrollbar {
  display: none;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-modal-close {
  position: sticky;
  top: clamp(1.6rem, 1.0355987055vw + 1.2116504854rem, 3.2rem);
  right: clamp(1.6rem, 1.0355987055vw + 1.2116504854rem, 3.2rem);
  align-self: flex-end;
  min-width: clamp(2.8rem, 0.7766990291vw + 2.5087378641rem, 4rem);
  min-height: clamp(2.8rem, 0.7766990291vw + 2.5087378641rem, 4rem);
  border-radius: 50%;
  background: #ebebeb;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  transition:
    border-color 0.25s ease,
    background-color 0.25s ease;
  z-index: 4;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-modal-close:hover {
  background-color: #dfdfdf;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1rem, 0.6472491909vw + 0.7572815534rem, 2rem);
  padding: clamp(2.4rem, 1.0355987055vw + 2.0116504854rem, 4rem) 0 0;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-info .category-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.8rem;
  justify-content: center;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-info .category-list li {
  background: #f7f7f7;
  color: #666;
  border-radius: 5.5rem;
  font-size: clamp(1.3rem, 0.1294498382vw + 1.2514563107rem, 1.5rem);
  padding: clamp(0.4rem, 0.1941747573vw + 0.327184466rem, 0.7rem) clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-info .iframe-wrap {
  width: 100%;
  margin-top: clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  position: relative;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-info .iframe-wrap iframe {
  width: 100%;
  min-height: 60svh;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.1);
}
@media (max-width: 768px) {
  .no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-info .iframe-wrap iframe {
    min-height: 80svh;
  }
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-info .iframe-wrap .site-direct-link {
  position: absolute;
  left: clamp(1rem, 0.6472491909vw + 0.7572815534rem, 2rem);
  bottom: clamp(2rem, 0.6472491909vw + 1.7572815534rem, 3rem);
  z-index: 2;
  border-radius: 5.5rem;
  padding: 1.1rem 1.6rem;
  line-height: 1;
  color: #fff;
  background: rgba(0, 0, 0, 0.72);
  backdrop-filter: blur(2px);
  transition: background-color 0.25s ease;
  border: 1px solid hsla(0, 0%, 100%, 0.1);
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-info .iframe-wrap .site-direct-link i {
  color: #fff;
}
.no-projects
  .projects-wrap
  .projects-modal-wrap
  .projects-modal-box
  .projects-info
  .iframe-wrap
  .site-direct-link:hover {
  background: var(--clr-primary-500);
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-modal-footer {
  padding: clamp(3rem, 0.6472491909vw + 2.7572815534rem, 4rem) 0 clamp(4rem, 1.2944983819vw + 3.5145631068rem, 6rem);
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-modal-footer .modal-nav {
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  background-color: #eee;
  color: #333;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  transition: background-color 0.25s ease;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-modal-footer .modal-nav:hover {
  background-color: #d9d9d9;
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-modal-footer .inquiry-btn {
  min-width: clamp(19rem, 9.7087378641vw + 15.359223301rem, 34rem);
  border-radius: 5.5rem;
  padding: 1.6rem 2.4rem;
  text-align: center;
  line-height: 1;
  transition: background-color 0.3s;
  color: #fff;
  background-color: var(--clr-primary-500);
}
.no-projects .projects-wrap .projects-modal-wrap .projects-modal-box .projects-modal-footer .inquiry-btn:hover {
  background-color: var(--clr-primary-700);
}
.main-visual {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  background-image: url('../images/main-bg.jpg');
  isolation: isolate;
}
.main-visual::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 62% 29%, rgba(255, 255, 255, 0.2), transparent 10rem),
    radial-gradient(circle at 45% 37%, rgba(255, 255, 255, 0.14), transparent 8rem),
    linear-gradient(180deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.08));
  mix-blend-mode: screen;
}
.main-visual__space {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}
.main-visual__decor,
.main-visual__meteor {
  position: absolute;
  display: block;
  max-width: none;
  pointer-events: none;
  user-select: none;
}
.main-visual__decor--light-1 {
  top: 24%;
  left: 58%;
  width: clamp(7rem, 8vw, 12.4rem);
  animation: main-visual-pulse 4.2s ease-in-out infinite;
}
.main-visual__decor--light-2 {
  top: 35%;
  left: 44%;
  width: clamp(4.8rem, 5vw, 8rem);
  animation: main-visual-pulse 5s ease-in-out 0.8s infinite;
}
.main-visual__decor--planet {
  right: clamp(18rem, 32vw, 46rem);
  bottom: clamp(12rem, 16vw, 19rem);
  width: clamp(8.2rem, 8.5vw, 12rem);
  opacity: 0.82;
  animation: main-visual-float 6.4s ease-in-out infinite;
}
.main-visual__decor--white-stars {
  top: 34%;
  right: clamp(16rem, 20vw, 28rem);
  width: clamp(2.4rem, 2.2vw, 3.6rem);
  animation: main-visual-spin 7.5s linear infinite;
}
.main-visual__decor--pink-stars {
  right: clamp(23rem, 28vw, 36rem);
  bottom: clamp(10rem, 10vw, 15rem);
  width: clamp(2.4rem, 2.2vw, 3.2rem);
  animation: main-visual-spin 8.4s linear reverse infinite;
}
.main-visual__decor--yellow {
  top: 17%;
  right: clamp(28rem, 31vw, 42rem);
  width: clamp(0.8rem, 0.8vw, 1.2rem);
  animation: main-visual-float 4.8s ease-in-out 1s infinite;
}
.main-visual__meteor {
  --meteor-angle: 142deg;
  --meteor-start-x: 28vw;
  --meteor-start-y: -18vh;
  --meteor-end-x: -20vw;
  --meteor-end-y: 22vh;
  z-index: 2;
  opacity: 0.9;
  filter: drop-shadow(0 0 1.4rem rgba(255, 255, 255, 0.38));
  transform-origin: center;
  animation: main-visual-meteor 5.8s linear infinite;
  will-change: transform, opacity;
}
.main-visual__meteor--1 {
  left: 5%;
  top: 17%;
  width: clamp(10rem, 11vw, 18rem);
  --meteor-angle: 142deg;
  --meteor-start-x: 32vw;
  --meteor-start-y: -22vh;
  --meteor-end-x: -24vw;
  --meteor-end-y: 24vh;
}
.main-visual__meteor--2 {
  top: 39%;
  left: 51%;
  width: clamp(11rem, 13vw, 20rem);
  --meteor-angle: 132deg;
  --meteor-start-x: 26vw;
  --meteor-start-y: -20vh;
  --meteor-end-x: -22vw;
  --meteor-end-y: 22vh;
  animation-delay: -1.9s;
  animation-duration: 6.6s;
}
.main-visual__meteor--3 {
  top: 12%;
  right: 5%;
  width: clamp(9rem, 9vw, 15rem);
  --meteor-angle: 136deg;
  --meteor-start-x: 24vw;
  --meteor-start-y: -16vh;
  --meteor-end-x: -18vw;
  --meteor-end-y: 20vh;
  animation-delay: -3.7s;
  animation-duration: 6.2s;
}
.main-visual__slider,
.main-visual__slider .swiper-wrapper,
.main-visual__slide {
  min-height: 100svh;
}
.main-visual__slider {
  position: relative;
  z-index: 3;
}
.main-visual__slide {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  align-items: center;
  gap: clamp(3rem, 4vw, 7rem);
  width: 100%;
  padding: calc(var(--header-height) + clamp(4rem, 5.2vw, 7.2rem)) clamp(3.2rem, 5vw, 7.2rem) clamp(8.8rem, 8vw, 11rem);
}
.main-visual__content {
  position: relative;
  z-index: 5;
  max-width: 63rem;
}
.main-visual__eyebrow {
  display: flex;
  align-items: center;
  gap: clamp(1.4rem, 1.6vw, 2.4rem);
  margin-bottom: clamp(2rem, 2vw, 3rem);
  color: hsla(0, 0%, 100%, 0.7);
  line-height: 1;
  letter-spacing: 0;
}
.main-visual__eyebrow::before {
  content: '';
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  background: #ffe628;
  box-shadow: 0 0 1.4rem rgba(255, 230, 40, 0.9);
}
.main-visual__eyebrow span + span {
  display: inline-flex;
  align-items: center;
  gap: clamp(1.2rem, 1.4vw, 2.4rem);
}
.main-visual__eyebrow span + span::before {
  content: '';
  width: clamp(3.2rem, 3.8vw, 5.6rem);
  height: 0.1rem;
  background: hsla(0, 0%, 100%, 0.35);
}
.main-visual__title {
  display: flex;
  flex-direction: column;
  font-size: clamp(8.6rem, 9.3vw, 14rem);
  line-height: 0.86;
  letter-spacing: 0;
  text-transform: uppercase;
  text-shadow: 0 1.2rem 2.4rem rgba(0, 0, 0, 0.25);
}
.main-visual__description {
  margin-top: clamp(2.8rem, 2.5vw, 4rem);
  color: var(--clr-base-white);
  line-height: 1.45;
  word-break: keep-all;
}
.main-visual__tags {
  margin-top: 0.6rem;
  color: hsla(0, 0%, 100%, 0.92);
  line-height: 1.45;
  word-break: keep-all;
}
.main-visual__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  min-width: clamp(15.6rem, 12vw, 18.8rem);
  min-height: clamp(5.2rem, 4vw, 6.4rem);
  margin-top: clamp(3.2rem, 3vw, 4.8rem);
  padding: 0 3.2rem;
  border-radius: 999rem;
  background: #ffe628;
  color: #000;
  line-height: 1;
  transition:
    background-color var(--tran-3),
    color var(--tran-3),
    transform var(--tran-3);
}
.main-visual__button:hover,
.main-visual__button:focus-visible {
  background: var(--clr-base-white);
  color: var(--clr-primary-600);
  transform: translateY(-0.2rem);
}
.main-visual__food-scene {
  position: relative;
  z-index: 4;
  width: min(58vw, 82rem);
  height: clamp(40rem, 47vw, 65rem);
  justify-self: end;
  perspective: 100rem;
  transform-style: preserve-3d;
}
.main-visual__food-tilt {
  position: absolute;
  inset: 0;
  transform: rotate(-21deg);
  transform-style: preserve-3d;
}
.main-visual__food-orbit {
  position: absolute;
  left: 51%;
  top: 53%;
  width: clamp(22rem, 20vw, 34rem);
  height: clamp(22rem, 20vw, 34rem);
  transform-style: preserve-3d;
  animation: main-visual-food-orbit 9.5s linear infinite;
  will-change: transform;
}
.main-visual__food {
  position: absolute;
  display: block;
  max-width: none;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 2.4rem 3rem rgba(0, 0, 0, 0.34));
  animation: main-visual-food-counter 9.5s linear infinite;
  will-change: transform;
}
.main-visual__food--pizza {
  left: -68%;
  top: -18%;
  z-index: 2;
  width: clamp(35rem, 34vw, 56rem);
}
.main-visual__food--chicken {
  right: -71%;
  bottom: -23%;
  z-index: 3;
  width: clamp(36rem, 36vw, 59rem);
}
.main-visual__slide--pizza .main-visual__food--pizza {
  z-index: 4;
  width: clamp(40rem, 38vw, 62rem);
}
.main-visual__slide--pizza .main-visual__food--chicken {
  right: -60%;
  bottom: -28%;
  width: clamp(32rem, 31vw, 52rem);
  opacity: 1;
}
.main-visual__slide--chicken .main-visual__food--pizza {
  left: -58%;
  top: -13%;
  width: clamp(32rem, 31vw, 52rem);
  opacity: 1;
}
.main-visual__slide--chicken .main-visual__food--chicken {
  z-index: 4;
  width: clamp(41rem, 39vw, 64rem);
}
.main-visual__controls {
  position: absolute;
  left: 50%;
  bottom: 12rem;
  z-index: 8;
  display: flex;
  align-items: center;
  gap: clamp(1.8rem, 2vw, 2.8rem);
  transform: translateX(-50%);
}
.main-visual__nav,
.main-visual__pagination-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999rem;
  color: var(--clr-base-white);
  transition:
    background-color var(--tran-3),
    color var(--tran-3),
    border-color var(--tran-3);
}
.main-visual__nav:focus-visible,
.main-visual__pagination-item:focus-visible {
  outline: 0.2rem solid #ffe628;
  outline-offset: 0.4rem;
}
.main-visual__nav {
  width: clamp(4.2rem, 3.8vw, 5.2rem);
  height: clamp(4.2rem, 3.8vw, 5.2rem);
  border: 0.1rem solid hsla(0, 0%, 100%, 0.72);
  background: hsla(0, 0%, 100%, 0.1);
  font-size: clamp(1.4rem, 1.2vw, 1.8rem);
}
.main-visual__nav:hover {
  background: #ffe628;
  border-color: #ffe628;
  color: #000;
}
.main-visual__pagination {
  display: flex;
  align-items: center;
  min-width: clamp(10rem, 9vw, 13.2rem);
  height: 2.4rem;
  gap: 0.8rem;
}
.main-visual__pagination-item {
  position: relative;
  width: clamp(3.8rem, 3.4vw, 5.2rem);
  height: 2.4rem;
  color: hsla(0, 0%, 100%, 0.62);
  font-size: 1rem;
  font-family: 'oaks', sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}
.main-visual__pagination-item::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.2rem;
  height: 0.2rem;
  background: hsla(0, 0%, 100%, 0.24);
  transition: background-color var(--tran-3);
}
.main-visual__pagination-item span {
  transform: translateY(-0.3rem);
}
.main-visual__pagination-item.is-active {
  color: #ffe628;
}
.main-visual__pagination-item.is-active::before {
  background: #ffe628;
}
@media (max-width: 1024px) {
  .main-visual__slide {
    grid-template-columns: 1fr;
    align-content: center;
    gap: 2rem;
    padding-right: clamp(2rem, 5vw, 4rem);
    padding-left: clamp(2rem, 5vw, 4rem);
  }
  .main-visual__content {
    max-width: 68rem;
  }
  .main-visual__title {
    font-size: clamp(6.4rem, 13vw, 9.2rem);
  }
  .main-visual__food-scene {
    width: min(78vw, 60rem);
    height: clamp(27rem, 50vw, 42rem);
    justify-self: center;
    margin-top: -1rem;
  }
}
@media (max-width: 768px) {
  .main-visual {
    min-height: 100svh;
  }
  .main-visual__slide {
    padding-top: calc(var(--header-height) + 4rem);
    padding-bottom: 9.6rem;
  }
  .main-visual__eyebrow {
    margin-bottom: 1.6rem;
    font-size: 1.1rem;
  }
  .main-visual__title {
    font-size: clamp(5.4rem, 18vw, 7.4rem);
  }
  .main-visual__description {
    margin-top: 2rem;
    font-size: clamp(1.6rem, 4.8vw, 2rem);
  }
  .main-visual__tags {
    font-size: clamp(1.4rem, 4vw, 1.7rem);
  }
  .main-visual__button {
    min-width: 14.8rem;
    min-height: 5rem;
    margin-top: 2.4rem;
    padding: 0 2.6rem;
  }
  .main-visual__food-scene {
    width: min(90vw, 44rem);
    height: clamp(25rem, 67vw, 34rem);
    margin-top: -0.6rem;
  }
  .main-visual__food--pizza,
  .main-visual__slide--pizza .main-visual__food--pizza {
    width: clamp(27rem, 75vw, 42rem);
  }
  .main-visual__food--chicken,
  .main-visual__slide--chicken .main-visual__food--chicken {
    width: clamp(28rem, 78vw, 43rem);
  }
  .main-visual__slide--pizza .main-visual__food--chicken,
  .main-visual__slide--chicken .main-visual__food--pizza {
    width: clamp(24rem, 64vw, 36rem);
  }
  .main-visual__decor--planet {
    right: 11%;
    bottom: 27%;
  }
  .main-visual__meteor--1 {
    left: -5%;
    bottom: 18%;
  }
  .main-visual__meteor--2 {
    left: 45%;
    top: 73%;
  }
  .main-visual__meteor--3 {
    right: -8%;
    top: 39%;
  }
}
@keyframes main-visual-food-orbit {
  from {
    transform: translate(-50%, -50%) rotateX(72deg) rotateZ(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotateX(72deg) rotateZ(360deg);
  }
}
@keyframes main-visual-food-counter {
  from {
    transform: rotateZ(0deg) rotateX(-72deg) rotateZ(21deg);
  }
  to {
    transform: rotateZ(-360deg) rotateX(-72deg) rotateZ(21deg);
  }
}
@keyframes main-visual-meteor {
  0% {
    transform: translate3d(var(--meteor-start-x), var(--meteor-start-y), 0) rotate(var(--meteor-angle));
    opacity: 0;
  }
  12% {
    opacity: 0.92;
  }
  78% {
    opacity: 0.9;
  }
  100% {
    transform: translate3d(var(--meteor-end-x), var(--meteor-end-y), 0) rotate(var(--meteor-angle));
    opacity: 0;
  }
}
@keyframes main-visual-float {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -1.6rem, 0);
  }
}
@keyframes main-visual-pulse {
  0%,
  100% {
    transform: scale(0.92);
    opacity: 0.68;
  }
  50% {
    transform: scale(1.08);
    opacity: 1;
  }
}
@keyframes main-visual-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .main-visual__decor,
  .main-visual__meteor,
  .main-visual__food-orbit,
  .main-visual__food {
    animation: none !important;
  }
}
.main-brand-film {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  background: var(--clr-base-black);
  color: var(--clr-base-white);
  isolation: isolate;
}
.main-brand-film__stage {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100svh;
}
.main-brand-film__stage video {
  width: 100%;
  height: 100%;
}
.main-brand-film__marquee {
  position: absolute;
  left: 50%;
  z-index: 3;
  --main-brand-film-marquee-safe-y: clamp(0.6rem, 0.7vw, 1rem);
  width: 130vw;
  min-width: 180rem;
  height: clamp(7.8rem, 8vw, 12rem);
  pointer-events: none;
  overflow: hidden;
  background: var(--clr-base-black);
  transform-origin: center;
}
.main-brand-film__marquee::before,
.main-brand-film__marquee::after {
  content: '';
  position: absolute;
  left: 0;
  z-index: 2;
  width: 100%;
  height: clamp(0.5rem, 0.7vw, 1rem);
  pointer-events: none;
}
.main-brand-film__marquee::before {
  top: 0;
  background: linear-gradient(90deg, #6200ea 0%, #ff6fc0 100%);
}
.main-brand-film__marquee::after {
  bottom: 0;
  background: linear-gradient(90deg, #ff6fc0 0%, #6200ea 100%);
}
.main-brand-film__marquee--top {
  top: clamp(5.6rem, 5vw, 8.8rem);
  transform: translateX(-50%) rotate(3deg);
}
.main-brand-film__marquee--bottom {
  bottom: clamp(5.6rem, 5vw, 8.8rem);
  transform: translateX(-50%) rotate(-3deg);
}
.main-brand-film__marquee--bottom .main-brand-film__marquee-track {
  animation-name: main-brand-film-marquee-reverse;
}
.main-brand-film__marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  min-width: 100%;
  height: 100%;
  padding-block: var(--main-brand-film-marquee-safe-y);
  animation: main-brand-film-marquee 80s linear infinite;
  will-change: transform;
}
.main-brand-film__marquee-track img {
  display: block;
  flex: 0 0 auto;
  width: auto;
  height: 100%;
  object-fit: contain;
}
@media (max-width: 768px) {
  .main-brand-film__marquee {
    width: 170vw;
    min-width: 110rem;
    height: clamp(5.8rem, 15vw, 7.6rem);
    --main-brand-film-marquee-safe-y: clamp(0.4rem, 1.2vw, 0.8rem);
  }
  .main-brand-film__marquee--top {
    top: clamp(4.4rem, 11vw, 6.4rem);
  }
  .main-brand-film__marquee--bottom {
    bottom: clamp(4.4rem, 11vw, 6.4rem);
  }
  .main-brand-film__video {
    width: min(64vw, 30rem);
    border-width: clamp(3.2rem, 10vw, 4.8rem);
  }
  .main-brand-film__video-label {
    font-size: clamp(1.6rem, 4.4vw, 2.1rem);
  }
}
@keyframes main-brand-film-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}
@keyframes main-brand-film-marquee-reverse {
  from {
    transform: translate3d(-50%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.main-space-story {
  position: relative;
  height: 600svh;
  min-height: 348rem;
  overflow: visible;
  background: #000;
  color: var(--clr-base-white);
  isolation: isolate;
}
.main-space-story__pin {
  position: sticky;
  top: 0;
  height: 100svh;
  min-height: 58rem;
  padding-top: var(--header-height);
  overflow: hidden;
  background: #000;
}
.main-space-story__visuals {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}
.main-space-story__asset {
  position: absolute;
  z-index: 2;
  display: block;
  max-width: none;
  opacity: 0;
  scale: 0;
  object-fit: contain;
  filter: drop-shadow(0 1.6rem 2.4rem rgba(0, 0, 0, 0.45));
  animation: main-space-float var(--float-duration, 9s) ease-in-out infinite;
  animation-delay: var(--float-delay, 0s);
  will-change: transform, opacity, scale, translate;
}
.main-space-story__asset--chicken-1 {
  top: 8%;
  right: 5%;
  width: clamp(22rem, 25.3vw, 36.4rem);
  rotate: -3deg;
  --float-x: -1.4rem;
  --float-y: 1.6rem;
  --float-duration: 9.5s;
}
.main-space-story__asset--chicken-2 {
  top: 48%;
  left: 6%;
  width: clamp(22rem, 27.4vw, 39.5rem);
  rotate: -9deg;
  --float-x: 1.8rem;
  --float-y: -1.2rem;
  --float-duration: 10.2s;
  --float-delay: -1.4s;
}
.main-space-story__asset--chicken-3 {
  top: 15%;
  left: 30%;
  width: clamp(8.8rem, 8.6vw, 12.4rem);
  rotate: 2deg;
  --float-x: 1.4rem;
  --float-y: 1rem;
  --float-duration: 8.4s;
  --float-delay: -0.6s;
}
.main-space-story__asset--chicken-4 {
  top: 62%;
  left: 57%;
  width: clamp(9rem, 9.4vw, 13.6rem);
  rotate: 7deg;
  --float-x: -1.2rem;
  --float-y: -1.5rem;
  --float-duration: 9.8s;
  --float-delay: -2.2s;
}
.main-space-story__asset--asteroid-1 {
  top: 25%;
  left: 17%;
  width: clamp(4.8rem, 4.8vw, 6.9rem);
  --float-x: 1rem;
  --float-y: -1.3rem;
  --float-duration: 8.6s;
  --float-delay: -1s;
}
.main-space-story__asset--asteroid-2 {
  top: 18%;
  left: 15%;
  width: clamp(1.6rem, 2.1vw, 3rem);
  --float-x: -0.8rem;
  --float-y: 1rem;
  --float-duration: 7.6s;
  --float-delay: -2.6s;
}
.main-space-story__asset--asteroid-3 {
  top: 16%;
  left: 20%;
  width: clamp(1.1rem, 1.35vw, 1.9rem);
  --float-x: 0.7rem;
  --float-y: 0.9rem;
  --float-duration: 7.1s;
  --float-delay: -3.1s;
}
.main-space-story__asset--asteroid-4 {
  top: 59%;
  right: 9%;
  width: clamp(8.4rem, 9.7vw, 13.9rem);
  --float-x: -1.4rem;
  --float-y: -1.2rem;
  --float-duration: 10.8s;
  --float-delay: -1.8s;
}
.main-space-story__galaxy,
.main-space-story__galaxy-big,
.main-space-story__earth {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  display: block;
  max-width: none;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transform-origin: 50% 50%;
  transition:
    opacity 0.45s ease,
    transform 0.45s ease;
  will-change: transform, opacity;
}
.main-space-story__galaxy {
  width: clamp(38rem, 43vw, 62.4rem);
  opacity: 0;
  filter: grayscale(1) contrast(1.05);
}
.main-space-story__galaxy-big {
  width: clamp(70rem, 77vw, 110.9rem);
  opacity: 0;
  filter: grayscale(1);
}
.main-space-story__earth {
  width: clamp(27rem, 26.5vw, 38.2rem);
  opacity: 0;
  filter: grayscale(1) contrast(1.12);
}
.main-space-story__copy {
  position: absolute;
  inset: clamp(2.4rem, 6vw, 8rem) 0;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  color: var(--clr-base-white);
  font-size: clamp(2.8rem, 2.8vw, 4rem);
  line-height: 1.18;
  text-align: center;
  letter-spacing: 0;
  text-shadow: 0 0.4rem 1.4rem rgba(0, 0, 0, 0.64);
  pointer-events: none;
  opacity: 0;
  transition:
    opacity 0.32s ease,
    transform 0.32s ease;
  will-change: transform, opacity;
}
.main-space-story__copy span {
  display: block;
}
.main-space-story__copy--scene-1 {
  opacity: 1;
}
.main-space-story__muted {
  color: hsla(0, 0%, 100%, 0.32);
}
.main-space-story__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.main-space-story[data-main-space-story-static='true'] {
  height: 100svh;
  min-height: 58rem;
  overflow: hidden;
}
.main-space-story[data-main-space-story-static='true'] .main-space-story__asset,
.main-space-story[data-main-space-story-static='true'] .main-space-story__galaxy,
.main-space-story[data-main-space-story-static='true'] .main-space-story__galaxy-big,
.main-space-story[data-main-space-story-static='true'] .main-space-story__copy {
  opacity: 0;
}
.main-space-story[data-main-space-story-static='true'] .main-space-story__earth,
.main-space-story[data-main-space-story-static='true'] .main-space-story__copy--scene-6 {
  opacity: 1;
}
@media (max-width: 768px) {
  .main-space-story {
    height: 460svh;
    min-height: 248.4rem;
  }
  .main-space-story__pin {
    min-height: 54rem;
  }
  .main-space-story__copy {
    right: 2rem;
    left: 2rem;
    font-size: clamp(2.3rem, 7vw, 3.4rem);
    line-height: 1.22;
  }
  .main-space-story__asset--chicken-1 {
    top: 13%;
    right: -9rem;
    width: min(49vw, 24rem);
  }
  .main-space-story__asset--chicken-2 {
    top: 52%;
    left: -8rem;
    width: min(54vw, 26rem);
  }
  .main-space-story__asset--chicken-3 {
    top: 18%;
    left: 21%;
    width: min(24vw, 10rem);
  }
  .main-space-story__asset--chicken-4 {
    top: 66%;
    left: 61%;
    width: min(24vw, 10rem);
  }
  .main-space-story__asset--asteroid-1 {
    top: 25%;
    left: 7%;
    width: min(16vw, 6rem);
  }
  .main-space-story__asset--asteroid-2 {
    top: 19%;
    left: 5%;
    width: min(8vw, 2.8rem);
  }
  .main-space-story__asset--asteroid-3 {
    top: 16%;
    left: 17%;
    width: min(5vw, 1.8rem);
  }
  .main-space-story__asset--asteroid-4 {
    top: 62%;
    right: -4rem;
    width: min(28vw, 11rem);
  }
  .main-space-story__galaxy {
    width: min(94vw, 48rem);
  }
  .main-space-story__galaxy-big {
    width: min(124vw, 78rem);
  }
  .main-space-story__earth {
    width: min(64vw, 32rem);
  }
  .main-space-story[data-main-space-story-static='true'] {
    height: 100svh;
    min-height: 54rem;
  }
}
@keyframes main-space-float {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(var(--float-x, 1rem), var(--float-y, -1rem), 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .main-space-story__asset {
    animation: none;
  }
}
.main-welcome {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100svh;
  padding: clamp(5.6rem, 6vw, 8.4rem) clamp(2.4rem, 5vw, 7.2rem) clamp(7.2rem, 7vw, 10rem);
  overflow: hidden;
  background: url('../images/welcome-bg.jpg') center/cover no-repeat;
  color: var(--clr-base-white);
  text-align: center;
}
.main-welcome__edge {
  position: absolute;
  top: 0;
  right: 0;
  left: auto;
  z-index: 2;
  display: block;
  width: 100vw;
  max-width: none;
  height: clamp(3.2rem, 3.5vw, 5rem);
  pointer-events: none;
}
.main-welcome__inner {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: min(100%, 72rem);
}
.main-welcome__logo {
  width: clamp(34rem, 37vw, 56rem);
  max-width: 90vw;
}
.main-welcome__logo img {
  display: block;
  width: 100%;
  height: auto;
}
.main-welcome__scroll {
  display: block;
  width: clamp(6rem, 5.5vw, 7.6rem);
  height: clamp(6rem, 5.5vw, 7.6rem);
  margin-top: clamp(3.2rem, 3.8vw, 4.8rem);
  border-radius: 50%;
  color: var(--clr-base-white);
  transition:
    transform var(--tran-3),
    filter var(--tran-3);
}
.main-welcome__scroll svg {
  display: block;
  width: 100%;
  height: 100%;
}
.main-welcome__scroll path {
  transition: fill var(--tran-3);
}
.main-welcome__scroll:hover,
.main-welcome__scroll:focus-visible {
  transform: translateY(0.6rem);
  filter: drop-shadow(0 1.2rem 2.4rem rgba(0, 0, 0, 0.26));
}
.main-welcome__scroll:hover path,
.main-welcome__scroll:focus-visible path {
  fill: var(--clr-secondary-500);
}
.main-welcome__scroll:focus-visible {
  outline: 0.2rem solid var(--clr-base-white);
  outline-offset: 0.6rem;
}
.main-welcome__copy {
  margin-top: clamp(3.2rem, 3.2vw, 4.4rem);
  color: hsla(0, 0%, 100%, 0.94);
  font-size: clamp(1.6rem, 1.45vw, 2rem);
  line-height: 1.35;
  text-shadow: 0 0.4rem 1.8rem rgba(0, 0, 0, 0.45);
}
.main-welcome__copy br {
  display: block !important;
}
@media (max-width: 768px) {
  .main-welcome {
    min-height: 58rem;
    padding: 6.4rem 2rem 7.2rem;
  }
  .main-welcome__logo {
    width: min(82vw, 42rem);
  }
  .main-welcome__scroll {
    width: 6.2rem;
    height: 6.2rem;
    margin-top: 3.4rem;
  }
  .main-welcome__copy {
    margin-top: 3rem;
    font-size: 1.6rem;
  }
}
.main-best-menu {
  position: relative;
  overflow: hidden;
  scroll-margin-top: calc(var(--header-height) + 2rem);
  padding: clamp(8.8rem, 8vw, 12rem) 0 clamp(7.2rem, 7vw, 10.8rem);
  background: var(--clr-base-white);
  color: var(--clr-base-black);
}
.main-best-menu__head {
  width: 100%;
  max-width: 192rem;
  margin: 0 auto;
  padding: 0 clamp(2.4rem, 5.5vw, 7.2rem);
}
.main-best-menu__title {
  display: flex;
  align-items: baseline;
  gap: clamp(1.2rem, 1.6vw, 2.4rem);
  font-size: clamp(6.2rem, 8vw, 10rem);
  line-height: 0.9;
  letter-spacing: 0;
}
.main-best-menu__title em {
  color: var(--clr-primary-700);
  font-style: normal;
}
.main-best-menu__desc {
  margin-top: clamp(2.4rem, 2.2vw, 3.2rem);
  color: #181818;
  line-height: 1.35;
}
.main-best-menu__desc br {
  display: block !important;
}
.main-best-menu__slider {
  width: 100%;
  margin-top: clamp(7.6rem, 7vw, 9.6rem);
  padding: clamp(2rem, 2.8vw, 3.8rem) 0 clamp(3.2rem, 3.6vw, 5.2rem);
  overflow: visible;
}
.main-best-menu__track {
  align-items: center;
}
.main-best-menu__slide {
  width: clamp(31rem, 28vw, 38.4rem);
  height: auto;
  transition:
    transform 0.45s ease,
    opacity 0.45s ease;
}
.main-best-menu__slide--tone-0 .main-best-menu__card {
  background: #ffe628;
}
.main-best-menu__slide--tone-1 .main-best-menu__card {
  background: #e053fd;
}
.main-best-menu__slide--tone-2 .main-best-menu__card {
  background: #c8fd4a;
}
.main-best-menu__slide--tone-3 .main-best-menu__card {
  background: #ffff59;
}
.main-best-menu__slide--tone-4 .main-best-menu__card {
  background: #ff6fc0;
}
.main-best-menu__slide:not(.swiper-slide-active) {
  opacity: 0.96;
}
.main-best-menu__slide.swiper-slide-active {
  z-index: 3;
}
.main-best-menu__slide.swiper-slide-active .main-best-menu__card {
  transform: scale(1.1);
}
.main-best-menu__card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: clamp(44rem, 38vw, 48.6rem);
  padding: clamp(1.6rem, 1.7vw, 2rem) clamp(1.6rem, 1.8vw, 2.4rem) clamp(2.4rem, 2.3vw, 3rem);
  overflow: hidden;
  border-radius: 1.2rem;
  color: var(--clr-base-black);
  transition:
    transform 0.45s ease,
    box-shadow 0.45s ease;
}
.main-best-menu__card:focus-visible {
  outline: 3px solid var(--clr-primary-700);
  outline-offset: 0.4rem;
}
.main-best-menu__topline {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
}
.main-best-menu__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  min-height: 2.4rem;
  padding: 0 1.2rem;
  border-radius: 99rem;
  background: #05020c;
  color: var(--clr-secondary-500);
  letter-spacing: 0;
}
.main-best-menu__type {
  color: #05020c;
  letter-spacing: 0.08em;
}
.main-best-menu__visual {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(19rem, 17vw, 23rem);
  margin-top: clamp(1.8rem, 1.8vw, 2.4rem);
  margin-bottom: clamp(1.6rem, 1.6vw, 2rem);
}
.main-best-menu__visual img {
  display: block;
  width: min(100%, 33rem);
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 1.2rem 0.6rem rgba(0, 0, 0, 0.2));
  transform: scale(1.08);
}
.main-best-menu__body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: auto;
  padding-right: 5.2rem;
}
.main-best-menu__name-en {
  font-size: clamp(3rem, 2.6vw, 3.8rem);
  line-height: 0.95;
  letter-spacing: 0;
  text-transform: uppercase;
}
.main-best-menu__name-ko {
  margin-top: clamp(1.8rem, 1.6vw, 2.4rem);
  font-size: clamp(1.9rem, 1.8vw, 2.4rem);
  line-height: 1.15;
}
.main-best-menu__tags {
  margin-top: 0.6rem;
  font-size: clamp(1.5rem, 1.35vw, 1.8rem);
  line-height: 1.35;
}
.main-best-menu__price {
  margin-top: clamp(2.4rem, 2.1vw, 3rem);
  font-size: clamp(2.4rem, 2.4vw, 3.4rem);
  line-height: 1;
  letter-spacing: 0;
}
.main-best-menu__arrow {
  position: absolute;
  right: clamp(1.8rem, 1.8vw, 2.4rem);
  bottom: clamp(2rem, 2vw, 2.8rem);
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(3.8rem, 3.4vw, 4.6rem);
  height: clamp(3.8rem, 3.4vw, 4.6rem);
  border-radius: 50%;
  background: #05020c;
  color: var(--clr-yellow-500);
}
.main-best-menu__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(2.4rem, 2.6vw, 3.2rem);
  margin-top: clamp(1.6rem, 2vw, 2.8rem);
}
.main-best-menu__nav,
.main-best-menu__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 3.8rem;
  border-radius: 99rem;
  background: #05020c;
  color: var(--clr-base-white);
}
.main-best-menu__nav {
  width: 3.8rem;
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
.main-best-menu__nav:hover,
.main-best-menu__nav:focus-visible {
  background: var(--clr-primary-700);
  color: var(--clr-base-white);
}
.main-best-menu__more {
  min-width: clamp(14.8rem, 11.5vw, 17.8rem);
  padding: 0 3.2rem;
  color: var(--clr-secondary-500);
  letter-spacing: 0;
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
.main-best-menu__more:hover,
.main-best-menu__more:focus-visible {
  background: var(--clr-primary-700);
  color: var(--clr-base-white);
}
@media (max-width: 768px) {
  .main-best-menu {
    padding-top: 7.2rem;
    padding-bottom: 7.2rem;
  }
  .main-best-menu__title {
    flex-wrap: wrap;
    font-size: clamp(5.2rem, 16vw, 7.4rem);
  }
  .main-best-menu__slider {
    margin-top: 5.6rem;
  }
  .main-best-menu__slide {
    width: min(78vw, 34rem);
  }
  .main-best-menu__slide.swiper-slide-active .main-best-menu__card {
    transform: scale(1.04);
  }
  .main-best-menu__card {
    min-height: 43rem;
  }
}
.main-pr {
  position: relative;
  overflow: hidden;
  padding: clamp(9.2rem, 8vw, 12rem) 0 clamp(7rem, 7vw, 9.6rem);
  background: #000;
  color: var(--clr-base-white);
}
.main-pr__head {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 192rem;
  margin: 0 auto;
  padding: 0 clamp(2.4rem, 5.5vw, 7.2rem);
}
.main-pr__title {
  font-size: clamp(7.2rem, 8.4vw, 10.8rem);
  line-height: 0.9;
  letter-spacing: 0;
}
.main-pr__desc {
  margin-top: clamp(2rem, 1.8vw, 2.8rem);
  color: hsla(0, 0%, 100%, 0.78);
}
.main-pr__marquee {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: clamp(7.2rem, 6.4vw, 9rem);
  overflow: hidden;
}
.main-pr__track {
  display: flex;
  align-items: stretch;
  width: max-content;
  animation: main-pr-marquee 84s linear infinite;
  will-change: transform;
}
.main-pr__group {
  display: flex;
  align-items: stretch;
  gap: clamp(2rem, 1.8vw, 2.8rem);
  flex: 0 0 auto;
  padding-right: clamp(2rem, 1.8vw, 2.8rem);
}
.main-pr__card {
  position: relative;
  display: block;
  width: clamp(42rem, 35vw, 56rem);
  aspect-ratio: 560/308;
  overflow: hidden;
  border: 1px solid hsla(0, 0%, 100%, 0.68);
  border-radius: 0.8rem;
  background: #111;
  color: var(--clr-base-white);
  isolation: isolate;
}
.main-pr__card::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.22) 0%, rgba(0, 0, 0, 0) 48%);
  pointer-events: none;
}
.main-pr__card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform 0.45s ease;
}
.main-pr__card:hover img,
.main-pr__card:focus-visible img {
  transform: scale(1.05);
}
.main-pr__arrow {
  position: absolute;
  top: 1.8rem;
  right: 1.8rem;
  z-index: 2;
  display: inline-flex;
  width: 1.2rem;
  height: 1.2rem;
  color: var(--clr-base-white);
}
@media (max-width: 768px) {
  .main-pr {
    padding-top: 6.4rem;
    padding-bottom: 6.4rem;
  }
  .main-pr__title {
    font-size: clamp(5.8rem, 18vw, 8rem);
  }
  .main-pr__marquee {
    margin-top: 5.2rem;
  }
  .main-pr__card {
    width: min(82vw, 38rem);
  }
}
@media (prefers-reduced-motion: reduce) {
  .main-pr__track {
    animation: none;
    transform: translateX(0);
  }
}
.main-sns {
  position: relative;
  overflow: hidden;
  min-height: clamp(64rem, 58vw, 74.4rem);
  padding: clamp(9rem, 8vw, 11.6rem) 0 clamp(7rem, 7vw, 9.8rem);
  background:
    linear-gradient(rgba(6, 0, 21, 0.18), rgba(6, 0, 21, 0.18)),
    url('../images/sns-bg.jpg') center/cover no-repeat,
    #070015;
  color: var(--clr-base-white);
}
.main-sns__head {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 3.2rem;
  width: 100%;
  max-width: 192rem;
  margin: 0 auto;
  padding: 0 clamp(2.4rem, 5.5vw, 7.2rem);
}
.main-sns__title {
  display: flex;
  align-items: baseline;
  gap: clamp(1.4rem, 1.7vw, 2.4rem);
  font-size: clamp(6.4rem, 8.5vw, 10.4rem);
  line-height: 0.9;
  letter-spacing: 0;
  color: var(--clr-base-white);
}
.main-sns__title em {
  color: var(--clr-secondary-500);
  font-style: normal;
}
.main-sns__desc {
  margin-top: clamp(2rem, 1.8vw, 3rem);
  color: hsla(0, 0%, 100%, 0.9);
}
.main-sns__handle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(16rem, 14vw, 18.2rem);
  min-height: 3.8rem;
  margin-top: clamp(1.6rem, 2.5vw, 3.2rem);
  padding: 0 2.4rem;
  border: 1px solid hsla(0, 0%, 100%, 0.7);
  border-radius: 99rem;
  color: hsla(0, 0%, 100%, 0.88);
  letter-spacing: 0;
  transition:
    background-color var(--tran-3),
    color var(--tran-3),
    border-color var(--tran-3);
}
.main-sns__handle:hover,
.main-sns__handle:focus-visible {
  background: var(--clr-base-white);
  border-color: var(--clr-base-white);
  color: #090014;
}
.main-sns__marquee {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: clamp(8rem, 7vw, 9.2rem);
  overflow: hidden;
}
.main-sns__track {
  display: flex;
  align-items: stretch;
  width: max-content;
  animation: main-sns-marquee 78s linear infinite;
  will-change: transform;
}
.main-sns__group {
  display: flex;
  align-items: stretch;
  gap: clamp(1.6rem, 1.5vw, 2rem);
  flex: 0 0 auto;
  padding-right: clamp(1.6rem, 1.5vw, 2rem);
}
.main-sns__card {
  position: relative;
  display: block;
  width: clamp(26rem, 22.5vw, 29rem);
  height: clamp(32rem, 27vw, 35rem);
  overflow: hidden;
  border: 1px solid hsla(0, 0%, 100%, 0.7);
  border-radius: 0.8rem;
  color: var(--clr-base-white);
  isolation: isolate;
  transform: translateX(calc(-1 * clamp(10rem, 12vw, 15.8rem)));
}
.main-sns__card::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0) 42%, rgba(0, 0, 0, 0.78) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.08));
  pointer-events: none;
}
.main-sns__card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform 0.45s ease;
}
.main-sns__card:hover img,
.main-sns__card:focus-visible img {
  transform: scale(1.06);
}
.main-sns__arrow {
  position: absolute;
  right: 1.8rem;
  top: 1.8rem;
  z-index: 2;
  display: inline-flex;
  width: 1.2rem;
  height: 1.2rem;
  color: var(--clr-base-white);
}
.main-sns__card-text {
  position: absolute;
  left: clamp(1.8rem, 1.7vw, 2.2rem);
  right: clamp(1.8rem, 1.7vw, 2.2rem);
  bottom: clamp(2rem, 1.9vw, 2.4rem);
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.main-sns__card-text strong {
  font-size: clamp(2.2rem, 2vw, 2.8rem);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: 0;
}
.main-sns__card-text span {
  font-size: 1.3rem;
  line-height: 1;
  color: hsla(0, 0%, 100%, 0.86);
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .main-sns {
    min-height: auto;
    padding-top: 6.4rem;
    padding-bottom: 6.4rem;
  }
  .main-sns__head {
    flex-direction: column;
    gap: 2.4rem;
  }
  .main-sns__title {
    flex-wrap: wrap;
    font-size: clamp(5.2rem, 16vw, 7.2rem);
  }
  .main-sns__handle {
    margin-top: 0;
  }
  .main-sns__marquee {
    margin-top: 5.2rem;
  }
  .main-sns__card {
    width: 25rem;
    height: 32rem;
    transform: translateX(-8rem);
  }
}
@media (prefers-reduced-motion: reduce) {
  .main-sns__track {
    animation: none;
    transform: translateX(0);
  }
  .main-sns__card {
    transform: none;
  }
}
@keyframes main-sns-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-33.333333%);
  }
}
@keyframes main-pr-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-33.333333%);
  }
}
.main-link-gate {
  --main-gate-marquee-height: clamp(4.8rem, 3.6vw, 6.5rem);
  position: relative;
  overflow: hidden;
  background: #000;
}
.main-link-gate__marquee {
  height: var(--main-gate-marquee-height);
  background: #000;
}
.main-link-gate__marquee .no-sub-visual__marquee-track {
  animation-duration: 160s;
}
.main-link-gate__marquee .no-sub-visual__marquee-group img {
  height: var(--main-gate-marquee-height);
}
.main-link-gate__cards {
  position: relative;
  display: flex;
  align-items: stretch;
  width: 100%;
  min-height: clamp(36rem, 37vw, 52rem);
  background: var(--clr-secondary-500);
}
@media (max-width: 768px) {
  .main-link-gate__cards {
    flex-direction: column;
    min-height: auto;
  }
}
.main-link-gate__card {
  position: relative;
  display: flex;
  flex: 1 1 50%;
  min-width: 0;
  min-height: clamp(34rem, 32vw, 45rem);
  padding: clamp(4rem, 4.7vw, 9rem) clamp(3rem, 5.2vw, 9.8rem);
  overflow: hidden;
  color: var(--clr-base-white);
  isolation: isolate;
  transition:
    flex-basis var(--tran-3),
    filter var(--tran-3);
}
.main-link-gate__card:focus-visible {
  outline: 3px solid var(--clr-yellow-500);
  outline-offset: -0.6rem;
}
@media (hover: hover) and (pointer: fine) {
  .main-link-gate__card:hover {
    flex-basis: 54%;
  }
  .main-link-gate__card:hover .main-link-gate__button {
    background: var(--clr-base-white);
    color: var(--clr-base-black);
  }
}
@media (max-width: 768px) {
  .main-link-gate__card {
    min-height: 34rem;
    padding: 4.8rem 2.4rem;
    flex-basis: auto;
  }
}
.main-link-gate__card--stores {
  z-index: 2;
  align-items: center;
  justify-content: flex-start;
  background:
    linear-gradient(rgba(98, 0, 234, 0.08), rgba(98, 0, 234, 0.08)),
    url('../images/gate-brand-bg.jpg') center/cover no-repeat,
    var(--clr-primary-700);
  clip-path: polygon(0 0, 100% 0, 86% 100%, 0 100%);
}
@media (max-width: 768px) {
  .main-link-gate__card--stores {
    clip-path: polygon(0 0, 100% 0, 100% 90%, 0 100%);
  }
}
.main-link-gate__card--franchise {
  z-index: 1;
  align-items: center;
  justify-content: flex-end;
  margin-left: clamp(-28rem, -14vw, -18rem);
  padding-left: clamp(16rem, 18vw, 30rem);
  background: var(--clr-secondary-500);
  clip-path: polygon(14% 0, 100% 0, 100% 100%, 0 100%);
  text-align: right;
}
@media (max-width: 768px) {
  .main-link-gate__card--franchise {
    margin-left: 0;
    margin-top: -3.2rem;
    padding-top: 7.2rem;
    padding-left: 2.4rem;
    clip-path: polygon(0 10%, 100% 0, 100% 100%, 0 100%);
  }
}
@media (hover: hover) and (pointer: fine) {
  .main-link-gate__cards:hover .main-link-gate__card:not(:hover) {
    filter: brightness(0.72);
  }
}
.main-link-gate__content {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: min(100%, 54rem);
}
.main-link-gate__content--right {
  align-items: flex-end;
  margin-left: auto;
}
.main-link-gate__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: clamp(0.8rem, 0.8vw, 1.4rem);
  margin-bottom: clamp(1.6rem, 1.7vw, 2.8rem);
  color: var(--clr-base-white);
  white-space: nowrap;
}
.main-link-gate__dot {
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  background: currentColor;
  flex: 0 0 auto;
}
.main-link-gate__line {
  width: clamp(3.2rem, 3.8vw, 6.4rem);
  height: 1px;
  background: currentColor;
  opacity: 0.45;
}
.main-link-gate__title {
  display: block;
  font-size: clamp(5.4rem, 7.2vw, 13.8rem);
  line-height: 0.95;
  letter-spacing: 0;
}
.main-link-gate__copy {
  display: block;
  margin-top: clamp(1.6rem, 1.7vw, 2.8rem);
  color: var(--clr-base-white);
  line-height: 1.35;
}
.main-link-gate__copy br {
  display: block !important;
}
.main-link-gate__button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-width: clamp(15.2rem, 10vw, 19.2rem);
  min-height: clamp(5.2rem, 4vw, 6.4rem);
  margin-top: clamp(2.4rem, 2.4vw, 4rem);
  padding: 0 clamp(2rem, 1.8vw, 2.8rem);
  border-radius: 99rem;
  background: #05020c;
  color: var(--clr-base-white);
  transition:
    background-color var(--tran-3),
    color var(--tran-3),
    transform var(--tran-3);
}
.main-link-gate__button svg {
  width: 1.1rem;
  height: 1.1rem;
  flex: 0 0 auto;
}
.main-link-gate__card:hover .main-link-gate__button,
.main-link-gate__card:focus-visible .main-link-gate__button {
  transform: translateX(0.4rem);
}
.main-link-gate__decor {
  position: absolute;
  z-index: 1;
  display: block;
  pointer-events: none;
}
.main-link-gate__decor img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.main-link-gate__decor--store-light {
  mix-blend-mode: screen;
}
.main-link-gate__decor--store-light-1 {
  width: clamp(3.8rem, 5.8vw, 10rem);
  left: 10%;
  top: 13%;
}
.main-link-gate__decor--store-light-2 {
  width: clamp(5.2rem, 8vw, 15rem);
  right: 20%;
  top: 33%;
}
.main-link-gate__decor--store-light-3 {
  width: clamp(5rem, 7.5vw, 13rem);
  left: 42%;
  bottom: 14%;
}
.main-link-gate__decor--pink-particle {
  z-index: 2;
  width: clamp(11rem, 13vw, 22rem);
  left: clamp(5.2rem, 8vw, 14rem);
  top: clamp(2.4rem, 2.8vw, 5rem);
  transform: rotate(3deg);
}
.main-link-gate__decor--yellow-particle {
  z-index: 1;
  width: clamp(19rem, 21vw, 36rem);
  left: clamp(11rem, 19vw, 34rem);
  bottom: clamp(-15rem, -8vw, -8rem);
}
.main-link-gate__decor--white-stars {
  width: clamp(7.6rem, 7vw, 13rem);
  right: clamp(3rem, 4vw, 7rem);
  top: clamp(2.4rem, 3.6vw, 6rem);
}
.main-link-gate__decor--pink-stars {
  width: clamp(4.8rem, 4.2vw, 8rem);
  right: clamp(2.4rem, 3.2vw, 6rem);
  top: 50%;
}
@media (max-width: 1024px) {
  .main-link-gate__title {
    font-size: clamp(5rem, 7vw, 9.2rem);
  }
}
@media (max-width: 768px) {
  .main-link-gate__content,
  .main-link-gate__content--right {
    align-items: flex-start;
    margin-left: 0;
    text-align: left;
  }
  .main-link-gate__title {
    font-size: clamp(4.6rem, 14vw, 7.6rem);
  }
  .main-link-gate__decor--pink-particle {
    left: auto;
    right: 7%;
    top: 7%;
  }
  .main-link-gate__decor--yellow-particle {
    left: auto;
    right: -10%;
    bottom: -16%;
  }
  .main-link-gate__decor--white-stars {
    right: 6%;
    top: 12%;
  }
  .main-link-gate__decor--pink-stars {
    right: 7%;
    top: 56%;
  }
}
.gate-main {
  background: #050505;
}
.gate-page {
  --gate-purple: #6a00ef;
  --gate-green: #12dd24;
  --gate-yellow: #fff323;
  --gate-pink: #e83cff;
  --gate-header-height: 6.8rem;
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  background: #050505;
  color: #fff;
  font-family: var(--family-hggothic), sans-serif;
}
.gate-page__header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  height: var(--gate-header-height);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  padding: 0 clamp(2rem, 0.9061488673vw + 1.6601941748rem, 3.4rem);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
}
.gate-page__header-label,
.gate-page__status {
  color: hsla(0, 0%, 100%, 0.58);
  font-size: clamp(1rem, 0.1294498382vw + 0.9514563107rem, 1.2rem);
  font-weight: 500;
  line-height: 1;
}
.gate-page__header-label {
  letter-spacing: 0;
}
.gate-page__logo {
  width: clamp(7.2rem, 1.0355987055vw + 6.8116504854rem, 8.8rem);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.gate-page__logo img {
  display: block;
  width: 100%;
  height: auto;
}
.gate-page__logo:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 0.8rem;
}
.gate-page__status {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  white-space: nowrap;
}
.gate-page__status-dot {
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background: #19ef39;
  box-shadow: 0 0 0 0.3rem rgba(25, 239, 57, 0.16);
}
.gate-page__status-online {
  color: #29f04c;
}
.gate-page__clock {
  font: inherit;
  color: inherit;
}
.gate-page__stage {
  min-height: 100svh;
  padding-top: var(--gate-header-height);
  display: flex;
  flex-direction: column;
  background: var(--gate-purple);
}
.gate-page__panel {
  position: relative;
  flex: 1 1 0;
  min-height: 0;
  display: block;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
  isolation: isolate;
  transition: flex-grow 0.65s cubic-bezier(0.22, 1, 0.36, 1) !important;
}
.gate-page__panel:focus-visible {
  outline: 0;
}
.gate-page__panel:focus-visible::after {
  content: '';
  position: absolute;
  inset: 1.2rem;
  z-index: 12;
  border: 2px solid hsla(0, 0%, 100%, 0.82);
  pointer-events: none;
}
.gate-page__panel--brand {
  background:
    linear-gradient(rgba(106, 0, 239, 0.02), rgba(106, 0, 239, 0.02)),
    url('/assets/images/gate-brand-bg.jpg') center/cover no-repeat,
    var(--gate-purple);
}
.gate-page__panel--franchise {
  margin-top: -5.6rem;
  padding-top: 5.6rem;
  background: var(--gate-green);
  clip-path: polygon(0 9.5%, 100% 0, 100% 100%, 0 100%);
}
.gate-page__copy {
  position: absolute;
  top: 50%;
  left: clamp(3rem, 1.8122977346vw + 2.3203883495rem, 5.8rem);
  z-index: 5;
  width: min(70rem, 56vw);
  transform: translateY(-50%);
  transition:
    opacity 0.24s ease,
    visibility 0.24s ease;
}
.gate-page__panel--brand .gate-page__copy {
  top: 46%;
}
.gate-page__panel--franchise .gate-page__copy {
  top: 54%;
}
.gate-page__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: clamp(1rem, 0.5177993528vw + 0.8058252427rem, 1.8rem);
  margin-bottom: clamp(1.2rem, 0.5177993528vw + 1.0058252427rem, 2rem);
  color: hsla(0, 0%, 100%, 0.8);
  font-size: clamp(1.1rem, 0.1941747573vw + 1.027184466rem, 1.4rem);
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
}
.gate-page__eyebrow-dot {
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  background: var(--gate-yellow);
  box-shadow: 0 0 1.2rem rgba(255, 243, 35, 0.9);
}
.gate-page__eyebrow-line {
  width: clamp(4.2rem, 2.7184466019vw + 3.1805825243rem, 8.4rem);
  height: 1px;
  background: hsla(0, 0%, 100%, 0.28);
}
.gate-page__eyebrow-ko {
  color: hsla(0, 0%, 100%, 0.38);
  font-weight: 400;
}
.gate-page__title {
  display: block;
  color: #fff;
  font-size: clamp(7.4rem, 10.2vw, 14.4rem);
  font-weight: 900;
  line-height: 0.86;
}
.gate-page__detail {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 0.1294498382vw + 0.9514563107rem, 1.2rem);
  width: min(77rem, 64vw);
  margin-top: clamp(2.4rem, 0.6472491909vw + 2.1572815534rem, 3.4rem);
  color: #fff;
  opacity: 0;
  transform: translateY(1.6rem);
  transition:
    opacity 0.34s ease,
    transform 0.34s ease;
}
.gate-page__detail strong {
  font-size: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  font-weight: 800;
  line-height: 1.28;
}
.gate-page__detail > span:not(.gate-page__button) {
  font-size: clamp(1.5rem, 0.3236245955vw + 1.3786407767rem, 2rem);
  font-weight: 400;
  line-height: 1.55;
  word-break: keep-all;
}
.gate-page__button {
  width: fit-content;
  min-width: clamp(16.4rem, 3.2362459547vw + 15.186407767rem, 21.4rem);
  min-height: clamp(5rem, 0.6472491909vw + 4.7572815534rem, 6rem);
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-top: clamp(0.8rem, 0.3883495146vw + 0.654368932rem, 1.4rem);
  padding: 0 clamp(2.2rem, 0.5177993528vw + 2.0058252427rem, 3rem);
  border-radius: 999px;
  background: #fff;
  color: #050505;
  font-size: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  font-weight: 900;
  line-height: 1;
}
.gate-page__button i {
  font-size: 1.8rem;
}
.gate-page__button:hover {
  background-color: #000;
}
.gate-page__button:hover.purple {
  color: var(--gate-purple);
}
.gate-page__button:hover.green {
  color: var(--gate-green);
}
.gate-page__brand-visual,
.gate-page__franchise-visual {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}
.gate-page__brand-symbol {
  position: absolute;
  top: 16%;
  right: 14%;
  width: min(28vw, 45rem);
  height: auto;
  transform-origin: 50% 50%;
  transition:
    opacity 0.34s ease,
    transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}
.gate-page__brand-symbol--active {
  top: 12%;
  right: 18%;
  width: min(35vw, 44rem);
  opacity: 0;
  transform: scale(0.82);
}
.gate-page__light {
  position: absolute;
  width: clamp(7rem, 3.4951456311vw + 5.6893203883rem, 12.4rem);
  height: auto;
  opacity: 0.94;
}
.gate-page__light--one {
  top: 56%;
  left: 37%;
}
.gate-page__light--two {
  top: 18%;
  left: 47%;
}
.gate-page__planet {
  position: absolute;
  top: 23%;
  right: 5%;
  width: clamp(8.8rem, 2.5889967638vw + 7.8291262136rem, 12.8rem);
  height: auto;
}
.gate-page__franchise-visual {
  z-index: 3;
}
.gate-page__food {
  position: absolute;
  right: clamp(7.6rem, 5.9546925566vw + 5.3669902913rem, 16.8rem);
  bottom: clamp(4.2rem, 5.6957928803vw + 2.0640776699rem, 13rem);
  z-index: 2;
  width: min(52vw, 66rem);
  height: auto;
  filter: drop-shadow(0 1.2rem 1.4rem rgba(0, 0, 0, 0.14));
  transform-origin: 54% 56%;
  transition: transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}
.gate-page__burst--purple {
  position: absolute;
  right: clamp(9.6rem, 5.8252427184vw + 7.4155339806rem, 18.6rem);
  bottom: clamp(6.8rem, 2.4595469256vw + 5.8776699029rem, 10.6rem);
  z-index: 1;
  width: min(52vw, 66rem);
  height: auto;
  transform: rotate(-8deg);
  transform-origin: 50% 50%;
  transition: transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}
.gate-page__particle,
.gate-page__stars {
  position: absolute;
  height: auto;
}
.gate-page__particle--yellow-large {
  left: 16%;
  bottom: -11%;
  width: clamp(19rem, 8.4142394822vw + 15.8446601942rem, 32rem);
}
.gate-page__particle--yellow-small {
  right: -1%;
  bottom: 12%;
  width: clamp(9rem, 3.3656957929vw + 7.7378640777rem, 14.2rem);
}
.gate-page__particle--pink {
  left: 3%;
  top: 20%;
  width: clamp(8.2rem, 2.8478964401vw + 7.132038835rem, 12.6rem);
}
.gate-page__stars--white {
  top: 21%;
  left: 44%;
  width: clamp(8.6rem, 2.3300970874vw + 7.7262135922rem, 12.2rem);
}
.gate-page__stars--white-small {
  top: 15%;
  right: 4%;
  width: clamp(5rem, 1.6828478964vw + 4.3689320388rem, 7.6rem);
}
.gate-page__stars--pink {
  left: 45%;
  top: 57%;
  width: clamp(5.4rem, 1.8122977346vw + 4.7203883495rem, 8.2rem);
}
.gate-page__stats {
  position: absolute;
  z-index: 6;
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem, 0.6472491909vw + 2.1572815534rem, 3.4rem);
  color: var(--gate-yellow);
  opacity: 0;
  transform: translateX(1.8rem);
  transition:
    opacity 0.34s ease,
    transform 0.34s ease;
}
.gate-page__stats span {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.gate-page__stats strong {
  color: var(--gate-yellow);
  font-size: clamp(4.6rem, 1.5533980583vw + 4.0174757282rem, 7rem);
  font-weight: 900;
  line-height: 0.88;
}
.gate-page__stats em {
  color: #fff;
  font-size: clamp(1.3rem, 0.3236245955vw + 1.1786407767rem, 1.8rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1;
}
.gate-page__stats--brand {
  top: 34%;
  right: clamp(5.4rem, 2.071197411vw + 4.6233009709rem, 8.6rem);
}
.gate-page__stats--franchise {
  top: 42%;
  right: clamp(5rem, 1.9417475728vw + 4.2718446602rem, 8rem);
}
@media (hover: hover) and (pointer: fine) {
  .gate-page__stage[data-gate-active-panel='brand'] .gate-page__panel--franchise .gate-page__copy,
  .gate-page__stage[data-gate-active-panel='franchise'] .gate-page__panel--brand .gate-page__copy {
    opacity: 0;
    visibility: hidden;
  }
  .gate-page__panel:hover,
  .gate-page__panel:focus-visible {
    flex-grow: 2.2;
  }
  .gate-page__panel:hover .gate-page__detail,
  .gate-page__panel:focus-visible .gate-page__detail,
  .gate-page__panel:hover .gate-page__stats,
  .gate-page__panel:focus-visible .gate-page__stats {
    opacity: 1;
    transform: translate(0);
  }
  .gate-page__panel--brand:hover .gate-page__brand-symbol--base,
  .gate-page__panel--brand:focus-visible .gate-page__brand-symbol--base {
    opacity: 0;
    transform: scale(0.84);
  }
  .gate-page__panel--brand:hover .gate-page__brand-symbol--active,
  .gate-page__panel--brand:focus-visible .gate-page__brand-symbol--active {
    opacity: 1;
    transform: scale(1);
  }
  .gate-page__panel--franchise:hover .gate-page__food,
  .gate-page__panel--franchise:focus-visible .gate-page__food {
    transform: translateX(-5vw) translateY(-5vw) rotate(-15deg) scale(1.16);
  }
  .gate-page__panel--franchise:hover .gate-page__burst--purple,
  .gate-page__panel--franchise:focus-visible .gate-page__burst--purple {
    transform: translateX(-5vw) translateY(-3vw) rotate(-8deg) scale(1.5);
  }
}
@media (max-width: 1024px) {
  .gate-page {
    --gate-header-height: 6.4rem;
  }
  .gate-page__panel--franchise {
    margin-top: -4rem;
    padding-top: 4rem;
  }
  .gate-page__copy {
    left: 3rem;
    width: min(58rem, 56vw);
  }
  .gate-page__title {
    font-size: clamp(5.8rem, 10vw, 10.8rem);
  }
  .gate-page__food {
    right: 2rem;
    bottom: 3.4rem;
    width: min(54vw, 54rem);
  }
  .gate-page__burst--purple {
    right: 5.6rem;
    width: min(46vw, 44rem);
  }
  .gate-page__brand-symbol {
    top: 17%;
    right: 13%;
    width: min(34vw, 32rem);
  }
  .gate-page__brand-symbol--active {
    top: 13%;
    right: 12%;
    width: min(41vw, 40rem);
  }
  .gate-page__stats {
    right: 3rem;
  }
}
@media (max-width: 768px) {
  .gate-page {
    --gate-header-height: 6rem;
    min-height: 100svh;
  }
  .gate-page__header {
    grid-template-columns: 1fr auto 1fr;
    padding: 0 1.8rem;
  }
  .gate-page__status {
    display: none;
  }
  .gate-page__header-label {
    font-size: 1rem;
  }
  .gate-page__logo {
    width: 7rem;
  }
  .gate-page__stage {
    min-height: 100svh;
  }
  .gate-page__panel {
    flex-grow: 1;
    transition: none;
  }
  .gate-page__panel--franchise {
    margin-top: -2.8rem;
    padding-top: 2.8rem;
    clip-path: polygon(0 6%, 100% 0, 100% 100%, 0 100%);
  }
  .gate-page__copy {
    left: 2rem;
    width: calc(100% - 4rem);
  }
  .gate-page__panel--brand .gate-page__copy {
    top: 25%;
  }
  .gate-page__panel--franchise .gate-page__copy {
    top: 42%;
  }
  .gate-page__eyebrow {
    gap: 0.9rem;
    margin-bottom: 1rem;
    font-size: 1rem;
  }
  .gate-page__eyebrow-line {
    width: 4rem;
  }
  .gate-page__title {
    max-width: 100%;
    font-size: clamp(4.8rem, 15vw, 8rem);
    line-height: 0.9;
    overflow-wrap: anywhere;
  }
  .gate-page__detail,
  .gate-page__stats {
    display: none;
  }
  .gate-page__brand-symbol {
    top: 50%;
    right: 6%;
    width: min(42vw, 22rem);
  }
  .gate-page__light--one {
    top: 58%;
    left: 34%;
    width: 6.6rem;
  }
  .gate-page__light--two {
    top: 15%;
    left: 49%;
    width: 7.2rem;
  }
  .gate-page__planet {
    top: 25%;
    right: 3%;
    width: 6.8rem;
  }
  .gate-page__food {
    right: 1.5rem;
    bottom: 8.4rem;
    width: min(68vw, 33rem);
  }
  .gate-page__burst--purple {
    right: 2.5rem;
    width: min(62vw, 30rem);
  }
  .gate-page__particle--yellow-large {
    left: -5rem;
    bottom: -6rem;
    width: 17rem;
  }
  .gate-page__particle--yellow-small {
    right: -4.2rem;
    bottom: 18%;
    width: 9rem;
  }
  .gate-page__particle--pink {
    left: -1rem;
    top: 16%;
    width: 8rem;
  }
  .gate-page__stars--white {
    top: 18%;
    left: 47%;
    width: 7.4rem;
  }
  .gate-page__stars--white-small {
    top: 12%;
    right: 2rem;
    width: 4.2rem;
  }
  .gate-page__stars--pink {
    display: none;
  }
}
@media (max-width: 450px) {
  .gate-page__header {
    grid-template-columns: 1fr auto;
  }
  .gate-page__header-label {
    display: none;
  }
  .gate-page__logo {
    grid-column: 1/-1;
    justify-self: center;
  }
  .gate-page__eyebrow-ko,
  .gate-page__eyebrow-line {
    display: none;
  }
  .gate-page__title {
    font-size: clamp(4.1rem, 16vw, 6.8rem);
  }
}
@media (prefers-reduced-motion: reduce) {
  .gate-page__panel,
  .gate-page__detail,
  .gate-page__stats,
  .gate-page__brand-symbol,
  .gate-page__food,
  .gate-page__burst--purple {
    transition: none;
  }
}
.sub-menu-hero {
  position: relative;
  overflow: hidden;
  background: var(--clr-base-black) center/cover no-repeat;
  color: var(--clr-base-white);
  height: 90svh;
  user-select: none;
  --hero-orbit-stroke: #5300c5;
  --hero-disc-fill: #4900b0;
}
@media (max-width: 1024px) {
  .sub-menu-hero {
    height: auto;
    min-height: 100svh;
  }
}
.sub-menu-hero__inner {
  position: relative;
  height: 100%;
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  align-items: stretch;
}
@media (max-width: 1024px) {
  .sub-menu-hero__inner {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1fr) auto minmax(0, 1fr);
    min-height: inherit;
  }
}
.sub-menu-hero__column {
  position: relative;
  z-index: 2;
  overflow: visible;
}
.sub-menu-hero__wheel {
  position: relative;
  width: 100%;
  height: 100%;
  cursor: grab;
  touch-action: none;
  overflow: visible;
}
.sub-menu-hero__wheel:active {
  cursor: grabbing;
}
@media (max-width: 1024px) {
  .sub-menu-hero__wheel {
    cursor: default;
    touch-action: auto;
  }
  .sub-menu-hero__wheel:active {
    cursor: default;
  }
}
.sub-menu-hero__orbit {
  position: absolute;
  border: 4px solid var(--hero-orbit-stroke);
  border-radius: 999rem;
  pointer-events: none;
  box-sizing: border-box;
  z-index: 1;
}
.sub-menu-hero__wheel-track {
  position: absolute;
  inset: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sub-menu-hero__wheel-item {
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(9rem, 13vw, 20rem);
  aspect-ratio: 5/6;
  z-index: var(--z, 2);
  opacity: var(--item-opacity, 0);
  transform: translate(calc(var(--x, 0px) - 50%), calc(var(--y, 0px) - 50%)) scale(var(--scale, 1));
  transform-origin: center center;
  will-change: transform, opacity;
  pointer-events: auto;
  cursor: pointer;
}
@media (max-width: 1024px) {
  .sub-menu-hero__wheel-item {
    width: clamp(7rem, 16vw, 13rem);
  }
}
.sub-menu-hero__wheel-image {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--hero-disc-fill);
}
.sub-menu-hero__wheel-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
}
.sub-menu-hero__wheel-text {
  position: absolute;
  top: 50%;
  left: calc(100% + clamp(1.2rem, 0.6472491909vw + 0.9572815534rem, 2.2rem));
  transform: translateY(-50%);
  color: var(--clr-base-white);
  white-space: normal;
  max-width: clamp(6rem, 8vw, 12rem);
  pointer-events: none;
}
.sub-menu-hero__wheel-eyebrow {
  color: hsla(0, 0%, 100%, 0.55);
  margin-bottom: 0.4rem;
}
.sub-menu-hero__wheel-name {
  line-height: 1.2;
}
.sub-menu-hero__column--right .sub-menu-hero__wheel-text {
  left: auto;
  right: calc(100% + clamp(1.2rem, 0.6472491909vw + 0.9572815534rem, 2.2rem));
  text-align: right;
}
@media (max-width: 1024px) {
  .sub-menu-hero__wheel-text,
  .sub-menu-hero__column--right .sub-menu-hero__wheel-text {
    top: calc(100% + 0.8rem);
    left: 50%;
    right: auto;
    bottom: auto;
    width: max-content;
    max-width: min(17rem, 100vw - 4rem);
    transform: translateX(-50%);
    text-align: center;
    opacity: 0;
    visibility: hidden;
    transition:
      opacity 0.2s ease,
      visibility 0.2s ease;
  }
  .sub-menu-hero__column--right .sub-menu-hero__wheel-text {
    top: auto;
    bottom: calc(100% + 0.8rem);
  }
  .sub-menu-hero__wheel-item.is-current .sub-menu-hero__wheel-text {
    opacity: 1;
    visibility: visible;
  }
  .sub-menu-hero__wheel-eyebrow {
    margin-bottom: 0.3rem;
    font-size: 1.1rem;
    line-height: 1.2;
  }
  .sub-menu-hero__wheel-name {
    font-size: 1.6rem;
    line-height: 1.18;
  }
}
.sub-menu-hero__center {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  z-index: 3;
  padding: clamp(2rem, 1.2944983819vw + 1.5145631068rem, 4rem) clamp(0.8rem, 1.0355987055vw + 0.4116504854rem, 2.4rem);
  pointer-events: none;
}
@media (max-width: 1024px) {
  .sub-menu-hero__center {
    padding: clamp(0.8rem, 0.5177993528vw + 0.6058252427rem, 1.6rem)
      clamp(0.8rem, 0.5177993528vw + 0.6058252427rem, 1.6rem);
  }
}
.sub-menu-hero__title {
  margin-bottom: clamp(1.6rem, 0.7766990291vw + 1.3087378641rem, 2.8rem);
}
@media (max-width: 1024px) {
  .sub-menu-hero__title {
    margin-bottom: clamp(0.6rem, 0.3883495146vw + 0.454368932rem, 1.2rem);
  }
}
.sub-menu-hero__title-en {
  line-height: 1.05;
  letter-spacing: 0.02em;
}
@media (max-width: 1024px) {
  .sub-menu-hero__title-en {
    display: none;
  }
}
.sub-menu-hero__title-ko {
  margin-top: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
  color: hsla(0, 0%, 100%, 0.85);
}
@media (max-width: 1024px) {
  .sub-menu-hero__title-ko {
    margin-top: 0;
    position: relative;
    top: 4rem;
    font-size: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  }
}
.sub-menu-hero__set {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: clamp(30rem, 36vw, 44rem);
}
@media (max-width: 1024px) {
  .sub-menu-hero__set {
    min-height: clamp(25rem, 6.4724919094vw + 22.572815534rem, 35rem);
  }
}
.sub-menu-hero__empty {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  width: min(100%, 42rem);
  padding: 0 clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
  transform: translate(-50%, -50%);
  text-align: center;
  pointer-events: none;
}
.sub-menu-hero__empty[hidden] {
  display: none;
}
.sub-menu-hero__set-item {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: scale(0.96);
  transition:
    opacity 0.5s ease,
    transform 0.5s ease;
  pointer-events: none;
}
.sub-menu-hero__set-item.is-active {
  opacity: 1;
  transform: scale(1);
  pointer-events: auto;
  z-index: 1;
}
.sub-menu-hero__set-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.4rem, 0.5177993528vw + 1.2058252427rem, 2.2rem);
  text-decoration: none;
  color: inherit;
}
.sub-menu-hero__set-link:hover .sub-menu-hero__set-image,
.sub-menu-hero__set-link:focus-visible .sub-menu-hero__set-image {
  transform: scale(1.1);
}
.sub-menu-hero__set-link:focus-visible {
  outline: 2px solid var(--clr-base-white);
  outline-offset: 6px;
  border-radius: 8px;
}
@media (max-width: 1024px) {
  .sub-menu-hero__set-link {
    gap: clamp(0.8rem, 0.3883495146vw + 0.654368932rem, 1.4rem);
  }
}
.sub-menu-hero__set-image {
  width: min(100%, clamp(28rem, 16.8284789644vw + 21.6893203883rem, 54rem));
  transform-origin: center center;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}
@media (max-width: 544px) {
  .sub-menu-hero__set-image {
    width: min(100%, 34rem);
  }
}
@media (max-width: 1024px) {
  .sub-menu-hero__set-image {
    width: min(100%, clamp(16rem, 38vw, 22rem));
  }
}
.sub-menu-hero__set-image img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.sub-menu-hero__set-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
}
@media (max-width: 1024px) {
  .sub-menu-hero__set-info {
    gap: clamp(0.4rem, 0.2588996764vw + 0.3029126214rem, 0.8rem);
  }
}
.sub-menu-hero__set-desc {
  color: hsla(0, 0%, 100%, 0.85);
}
.sub-menu-hero__set-price {
  display: inline-flex;
  align-items: baseline;
  gap: clamp(1rem, 0.3883495146vw + 0.854368932rem, 1.6rem);
}
.sub-menu-hero__set-before {
  color: hsla(0, 0%, 100%, 0.5);
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}
.intro {
  --intro-copy-opacity: 0;
  --intro-logo-opacity: 0;
  --intro-logo-y: 20vh;
  --intro-logo-scale: 1;
  --intro-scroll-cue-opacity: 1;
  --intro-crawl-opacity: 0;
  --intro-crawl-y: 120vh;
  --intro-crawl-z: 0px;
  --intro-crawl-rotate: 20deg;
  position: relative;
  height: var(--intro-scroll-height, 620svh);
  min-height: 420svh;
  overflow: visible;
  background: #000;
  color: var(--clr-base-white);
  isolation: isolate;
}
.intro__pin {
  position: sticky;
  top: 0;
  height: 100svh;
  min-height: 58rem;
  overflow: hidden;
  background: #000;
}
.intro [data-brand-intro-sky] {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.intro__pin > p {
  position: absolute;
  top: 50%;
  width: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  opacity: var(--intro-copy-opacity);
  padding: 0 2rem;
  will-change: opacity, transform;
}
@media (prefers-reduced-motion: reduce) {
  .intro__pin > p {
    opacity: 1;
  }
}
.intro__pin > p br {
  display: block !important;
}
@media (max-width: 544px) {
  .intro__pin > p br {
    display: none !important;
  }
}
.intro__pin > img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 70vw;
  height: auto;
  z-index: 1;
  opacity: var(--intro-logo-opacity);
  transform: translate(-50%, calc(-50% + var(--intro-logo-y))) scale(var(--intro-logo-scale));
  will-change: transform, opacity;
}
@media (prefers-reduced-motion: reduce) {
  .intro__pin > img {
    opacity: 0;
    transform: translate(-50%, calc(-50% - 30vh)) scale(0.02);
  }
}
.intro .intro-scroll-cue {
  position: absolute;
  left: 50%;
  bottom: calc(clamp(10.8rem, 10svh, 14.8rem) + env(safe-area-inset-bottom));
  z-index: 3;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  min-width: 5.6rem;
  color: hsla(0, 0%, 100%, 0.84);
  pointer-events: none;
  opacity: var(--intro-scroll-cue-opacity);
  transform: translateX(-50%);
  transition: opacity 0.24s ease;
  will-change: opacity;
}
.intro .intro-scroll-cue__text {
  line-height: 1;
  letter-spacing: 0;
}
.intro .intro-scroll-cue__mouse {
  position: relative;
  width: 2.4rem;
  height: 4rem;
  border: 0.2rem solid currentColor;
  border-radius: 999rem;
  background: hsla(0, 0%, 100%, 0.06);
  box-shadow: 0 0 1.8rem hsla(0, 0%, 100%, 0.16);
}
.intro .intro-scroll-cue__mouse::after {
  content: '';
  position: absolute;
  left: 50%;
  top: calc(100% + 0.8rem);
  width: 0.1rem;
  height: 2.2rem;
  background: linear-gradient(180deg, currentColor, rgba(255, 255, 255, 0));
  transform: translateX(-50%);
  opacity: 0.7;
}
.intro .intro-scroll-cue__wheel {
  position: absolute;
  left: 50%;
  top: 0.8rem;
  width: 0.4rem;
  height: 0.8rem;
  border-radius: 999rem;
  background: currentColor;
  transform: translateX(-50%);
  animation: intro-scroll-wheel 1.45s ease-in-out infinite;
}
.intro .intro-crawl {
  display: flex;
  justify-content: center;
  position: absolute;
  inset: 0;
  overflow: hidden;
  perspective: 400px;
  perspective-origin: 50% 50%;
  z-index: 1;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 45%, #000 100%);
  mask-image: linear-gradient(180deg, transparent 0%, #000 45%, #000 100%);
  opacity: var(--intro-crawl-opacity);
  will-change: opacity;
}
.intro .intro-crawl > div {
  position: relative;
  top: var(--intro-crawl-y);
  transform-origin: 50% 100%;
  line-height: 1.2;
  transform: rotateX(var(--intro-crawl-rotate)) translateZ(var(--intro-crawl-z));
  will-change: top, transform;
}
.intro .intro-crawl p {
  margin: 0 0 clamp(4rem, 2.5889967638vw + 3.0291262136rem, 8rem);
  font-size: clamp(2.8rem, 6.4724919094vw + 0.372815534rem, 12.8rem);
  font-family: 'Pretendard';
  white-space: nowrap;
}
.intro .intro-crawl p br {
  display: block !important;
}
.intro .intro-crawl p:last-child {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .intro {
    min-height: 320svh;
  }
  .intro__pin {
    min-height: 54rem;
  }
  .intro .intro-crawl {
    padding: 0 2rem;
    perspective: 760px;
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 88%, transparent 100%);
    mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 88%, transparent 100%);
  }
  .intro .intro-crawl > div {
    width: min(100%, 34rem);
    line-height: 1.45;
  }
  .intro .intro-crawl p {
    margin-bottom: 3.2rem;
    font-size: 1.8rem;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: break-word;
    text-align: center;
  }
  .intro .intro-crawl p br {
    display: none !important;
  }
  .intro .intro-scroll-cue {
    bottom: calc(9.6rem + env(safe-area-inset-bottom));
    gap: 0.8rem;
  }
  .intro .intro-scroll-cue__mouse {
    width: 2.2rem;
    height: 3.6rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .intro {
    height: auto;
    min-height: 100svh;
  }
  .intro__pin {
    position: relative;
    height: auto;
    min-height: 100svh;
    padding: 12rem 2rem;
  }
  .intro__pin > p,
  .intro__pin > img,
  .intro .intro-scroll-cue {
    display: none;
  }
  .intro .intro-crawl {
    position: relative;
    inset: auto;
    overflow: visible;
    opacity: 1;
    perspective: none;
    -webkit-mask-image: none;
    mask-image: none;
  }
  .intro .intro-crawl > div {
    transform: none;
  }
  .intro .intro-crawl p {
    font-size: clamp(2.4rem, 1.5533980583vw + 1.8174757282rem, 4.8rem);
    white-space: normal;
  }
}
@keyframes intro-scroll-wheel {
  0% {
    opacity: 0;
    transform: translate(-50%, 0);
  }
  30% {
    opacity: 1;
  }
  78% {
    opacity: 0;
    transform: translate(-50%, 1.2rem);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, 1.2rem);
  }
}
.star {
  opacity: 0;
  position: absolute;
  background: #fff;
  box-shadow: 0px 0px 20px 0px #fff;
  border-radius: 100%;
  transform-origin: 0, 0;
  animation-timing-function: linear, linear !important;
  animation-iteration-count: infinite, infinite !important;
  animation-delay:
    -30s,
    -30s !important;
}
.size-1 {
  width: 1px;
  height: 1px;
}
.size-2 {
  width: 2px;
  height: 2px;
}
.axis-1 {
  animation:
    anim0 33877ms,
    fade9 33877ms;
}
.axis-2 {
  animation:
    anim0 14705ms,
    fade2 14705ms;
}
.axis-3 {
  animation:
    anim0 23327ms,
    fade6 23327ms;
}
.axis-4 {
  animation:
    anim4 26099ms,
    fade5 26099ms;
}
.axis-5 {
  animation:
    anim4 24783ms,
    fade7 24783ms;
}
.axis-6 {
  animation:
    anim4 8014ms,
    fade5 8014ms;
}
.axis-7 {
  animation:
    anim4 25623ms,
    fade6 25623ms;
}
.axis-8 {
  animation:
    anim8 13621ms,
    fade1 13621ms;
}
.axis-9 {
  animation:
    anim8 32327ms,
    fade10 32327ms;
}
.axis-10 {
  animation:
    anim8 43749ms,
    fade8 43749ms;
}
.axis-11 {
  animation:
    anim8 5648ms,
    fade9 5648ms;
}
.axis-12 {
  animation:
    anim12 37711ms,
    fade2 37711ms;
}
.axis-13 {
  animation:
    anim12 15307ms,
    fade5 15307ms;
}
.axis-14 {
  animation:
    anim12 8899ms,
    fade3 8899ms;
}
.axis-15 {
  animation:
    anim12 7584ms,
    fade10 7584ms;
}
.axis-16 {
  animation:
    anim16 16879ms,
    fade7 16879ms;
}
.axis-17 {
  animation:
    anim16 16266ms,
    fade7 16266ms;
}
.axis-18 {
  animation:
    anim16 36928ms,
    fade2 36928ms;
}
.axis-19 {
  animation:
    anim16 31686ms,
    fade8 31686ms;
}
.axis-20 {
  animation:
    anim20 25514ms,
    fade9 25514ms;
}
.axis-21 {
  animation:
    anim20 32381ms,
    fade3 32381ms;
}
.axis-22 {
  animation:
    anim20 7031ms,
    fade2 7031ms;
}
.axis-23 {
  animation:
    anim20 18947ms,
    fade4 18947ms;
}
.axis-24 {
  animation:
    anim24 11950ms,
    fade2 11950ms;
}
.axis-25 {
  animation:
    anim24 39606ms,
    fade5 39606ms;
}
.axis-26 {
  animation:
    anim24 19794ms,
    fade3 19794ms;
}
.axis-27 {
  animation:
    anim24 12020ms,
    fade8 12020ms;
}
.axis-28 {
  animation:
    anim28 27366ms,
    fade5 27366ms;
}
.axis-29 {
  animation:
    anim28 8377ms,
    fade4 8377ms;
}
.axis-30 {
  animation:
    anim28 5400ms,
    fade7 5400ms;
}
.axis-31 {
  animation:
    anim28 25015ms,
    fade6 25015ms;
}
.axis-32 {
  animation:
    anim32 15674ms,
    fade6 15674ms;
}
.axis-33 {
  animation:
    anim32 31839ms,
    fade4 31839ms;
}
.axis-34 {
  animation:
    anim32 38477ms,
    fade2 38477ms;
}
.axis-35 {
  animation:
    anim32 29345ms,
    fade8 29345ms;
}
.axis-36 {
  animation:
    anim36 21770ms,
    fade3 21770ms;
}
.axis-37 {
  animation:
    anim36 29358ms,
    fade5 29358ms;
}
.axis-38 {
  animation:
    anim36 12200ms,
    fade7 12200ms;
}
.axis-39 {
  animation:
    anim36 35817ms,
    fade10 35817ms;
}
.axis-40 {
  animation:
    anim40 22634ms,
    fade2 22634ms;
}
.axis-41 {
  animation:
    anim40 33550ms,
    fade8 33550ms;
}
.axis-42 {
  animation:
    anim40 10695ms,
    fade5 10695ms;
}
.axis-43 {
  animation:
    anim40 11016ms,
    fade8 11016ms;
}
.axis-44 {
  animation:
    anim44 24347ms,
    fade4 24347ms;
}
.axis-45 {
  animation:
    anim44 40598ms,
    fade3 40598ms;
}
.axis-46 {
  animation:
    anim44 24652ms,
    fade7 24652ms;
}
.axis-47 {
  animation:
    anim44 8787ms,
    fade4 8787ms;
}
.axis-48 {
  animation:
    anim48 5628ms,
    fade8 5628ms;
}
.axis-49 {
  animation:
    anim48 30166ms,
    fade5 30166ms;
}
.axis-50 {
  animation:
    anim48 34505ms,
    fade10 34505ms;
}
.axis-51 {
  animation:
    anim48 19231ms,
    fade9 19231ms;
}
.axis-52 {
  animation:
    anim52 43626ms,
    fade10 43626ms;
}
.axis-53 {
  animation:
    anim52 44880ms,
    fade6 44880ms;
}
.axis-54 {
  animation:
    anim52 31034ms,
    fade7 31034ms;
}
.axis-55 {
  animation:
    anim52 20040ms,
    fade7 20040ms;
}
.axis-56 {
  animation:
    anim56 18159ms,
    fade1 18159ms;
}
.axis-57 {
  animation:
    anim56 42107ms,
    fade1 42107ms;
}
.axis-58 {
  animation:
    anim56 18747ms,
    fade2 18747ms;
}
.axis-59 {
  animation:
    anim56 5917ms,
    fade7 5917ms;
}
.axis-60 {
  animation:
    anim60 38992ms,
    fade9 38992ms;
}
.axis-61 {
  animation:
    anim60 44488ms,
    fade5 44488ms;
}
.axis-62 {
  animation:
    anim60 13910ms,
    fade9 13910ms;
}
.axis-63 {
  animation:
    anim60 24080ms,
    fade2 24080ms;
}
.axis-64 {
  animation:
    anim64 43511ms,
    fade4 43511ms;
}
.axis-65 {
  animation:
    anim64 9994ms,
    fade6 9994ms;
}
.axis-66 {
  animation:
    anim64 5236ms,
    fade2 5236ms;
}
.axis-67 {
  animation:
    anim64 44334ms,
    fade10 44334ms;
}
.axis-68 {
  animation:
    anim68 37264ms,
    fade8 37264ms;
}
.axis-69 {
  animation:
    anim68 28451ms,
    fade6 28451ms;
}
.axis-70 {
  animation:
    anim68 34276ms,
    fade8 34276ms;
}
.axis-71 {
  animation:
    anim68 24474ms,
    fade3 24474ms;
}
.axis-72 {
  animation:
    anim72 17327ms,
    fade2 17327ms;
}
.axis-73 {
  animation:
    anim72 11920ms,
    fade8 11920ms;
}
.axis-74 {
  animation:
    anim72 35371ms,
    fade3 35371ms;
}
.axis-75 {
  animation:
    anim72 12243ms,
    fade1 12243ms;
}
.axis-76 {
  animation:
    anim76 10016ms,
    fade7 10016ms;
}
.axis-77 {
  animation:
    anim76 9545ms,
    fade4 9545ms;
}
.axis-78 {
  animation:
    anim76 22630ms,
    fade1 22630ms;
}
.axis-79 {
  animation:
    anim76 16374ms,
    fade5 16374ms;
}
.axis-80 {
  animation:
    anim80 23783ms,
    fade4 23783ms;
}
.axis-81 {
  animation:
    anim80 43974ms,
    fade3 43974ms;
}
.axis-82 {
  animation:
    anim80 43159ms,
    fade9 43159ms;
}
.axis-83 {
  animation:
    anim80 14931ms,
    fade8 14931ms;
}
.axis-84 {
  animation:
    anim84 35044ms,
    fade3 35044ms;
}
.axis-85 {
  animation:
    anim84 18803ms,
    fade10 18803ms;
}
.axis-86 {
  animation:
    anim84 8695ms,
    fade9 8695ms;
}
.axis-87 {
  animation:
    anim84 11416ms,
    fade2 11416ms;
}
.axis-88 {
  animation:
    anim88 37884ms,
    fade7 37884ms;
}
.axis-89 {
  animation:
    anim88 38901ms,
    fade4 38901ms;
}
.axis-90 {
  animation:
    anim88 33936ms,
    fade7 33936ms;
}
.axis-91 {
  animation:
    anim88 25252ms,
    fade7 25252ms;
}
.axis-92 {
  animation:
    anim92 5025ms,
    fade10 5025ms;
}
.axis-93 {
  animation:
    anim92 33612ms,
    fade4 33612ms;
}
.axis-94 {
  animation:
    anim92 10908ms,
    fade10 10908ms;
}
.axis-95 {
  animation:
    anim92 24832ms,
    fade9 24832ms;
}
.axis-96 {
  animation:
    anim96 15600ms,
    fade9 15600ms;
}
.axis-97 {
  animation:
    anim96 10846ms,
    fade1 10846ms;
}
.axis-98 {
  animation:
    anim96 9594ms,
    fade1 9594ms;
}
.axis-99 {
  animation:
    anim96 22970ms,
    fade10 22970ms;
}
.axis-100 {
  animation:
    anim100 38725ms,
    fade1 38725ms;
}
.axis-101 {
  animation:
    anim100 24804ms,
    fade8 24804ms;
}
.axis-102 {
  animation:
    anim100 27927ms,
    fade2 27927ms;
}
.axis-103 {
  animation:
    anim100 19030ms,
    fade4 19030ms;
}
.axis-104 {
  animation:
    anim104 23721ms,
    fade3 23721ms;
}
.axis-105 {
  animation:
    anim104 31142ms,
    fade3 31142ms;
}
.axis-106 {
  animation:
    anim104 27976ms,
    fade9 27976ms;
}
.axis-107 {
  animation:
    anim104 42461ms,
    fade9 42461ms;
}
.axis-108 {
  animation:
    anim108 20430ms,
    fade10 20430ms;
}
.axis-109 {
  animation:
    anim108 32147ms,
    fade9 32147ms;
}
.axis-110 {
  animation:
    anim108 38305ms,
    fade9 38305ms;
}
.axis-111 {
  animation:
    anim108 17231ms,
    fade2 17231ms;
}
.axis-112 {
  animation:
    anim112 27424ms,
    fade7 27424ms;
}
.axis-113 {
  animation:
    anim112 36067ms,
    fade6 36067ms;
}
.axis-114 {
  animation:
    anim112 36912ms,
    fade10 36912ms;
}
.axis-115 {
  animation:
    anim112 8529ms,
    fade2 8529ms;
}
.axis-116 {
  animation:
    anim116 15614ms,
    fade9 15614ms;
}
.axis-117 {
  animation:
    anim116 6503ms,
    fade9 6503ms;
}
.axis-118 {
  animation:
    anim116 19055ms,
    fade5 19055ms;
}
.axis-119 {
  animation:
    anim116 26118ms,
    fade8 26118ms;
}
.axis-120 {
  animation:
    anim120 41073ms,
    fade1 41073ms;
}
.axis-121 {
  animation:
    anim120 29693ms,
    fade7 29693ms;
}
.axis-122 {
  animation:
    anim120 21008ms,
    fade9 21008ms;
}
.axis-123 {
  animation:
    anim120 16517ms,
    fade10 16517ms;
}
.axis-124 {
  animation:
    anim124 34073ms,
    fade2 34073ms;
}
.axis-125 {
  animation:
    anim124 41077ms,
    fade4 41077ms;
}
.axis-126 {
  animation:
    anim124 21752ms,
    fade10 21752ms;
}
.axis-127 {
  animation:
    anim124 43113ms,
    fade6 43113ms;
}
.axis-128 {
  animation:
    anim128 24830ms,
    fade6 24830ms;
}
.axis-129 {
  animation:
    anim128 25832ms,
    fade10 25832ms;
}
.axis-130 {
  animation:
    anim128 20900ms,
    fade7 20900ms;
}
.axis-131 {
  animation:
    anim128 24711ms,
    fade2 24711ms;
}
.axis-132 {
  animation:
    anim132 24757ms,
    fade6 24757ms;
}
.axis-133 {
  animation:
    anim132 27354ms,
    fade3 27354ms;
}
.axis-134 {
  animation:
    anim132 29841ms,
    fade3 29841ms;
}
.axis-135 {
  animation:
    anim132 41971ms,
    fade5 41971ms;
}
.axis-136 {
  animation:
    anim136 35415ms,
    fade7 35415ms;
}
.axis-137 {
  animation:
    anim136 44923ms,
    fade9 44923ms;
}
.axis-138 {
  animation:
    anim136 38289ms,
    fade2 38289ms;
}
.axis-139 {
  animation:
    anim136 11502ms,
    fade1 11502ms;
}
.axis-140 {
  animation:
    anim140 36478ms,
    fade6 36478ms;
}
.axis-141 {
  animation:
    anim140 5193ms,
    fade2 5193ms;
}
.axis-142 {
  animation:
    anim140 21832ms,
    fade3 21832ms;
}
.axis-143 {
  animation:
    anim140 38932ms,
    fade8 38932ms;
}
.axis-144 {
  animation:
    anim144 37123ms,
    fade5 37123ms;
}
.axis-145 {
  animation:
    anim144 16303ms,
    fade6 16303ms;
}
.axis-146 {
  animation:
    anim144 42524ms,
    fade1 42524ms;
}
.axis-147 {
  animation:
    anim144 18571ms,
    fade2 18571ms;
}
.axis-148 {
  animation:
    anim148 6898ms,
    fade1 6898ms;
}
.axis-149 {
  animation:
    anim148 11709ms,
    fade6 11709ms;
}
.axis-150 {
  animation:
    anim148 30126ms,
    fade8 30126ms;
}
.axis-151 {
  animation:
    anim148 23221ms,
    fade2 23221ms;
}
.axis-152 {
  animation:
    anim152 37715ms,
    fade3 37715ms;
}
.axis-153 {
  animation:
    anim152 35615ms,
    fade10 35615ms;
}
.axis-154 {
  animation:
    anim152 25285ms,
    fade7 25285ms;
}
.axis-155 {
  animation:
    anim152 15958ms,
    fade2 15958ms;
}
.axis-156 {
  animation:
    anim156 15345ms,
    fade6 15345ms;
}
.axis-157 {
  animation:
    anim156 31447ms,
    fade2 31447ms;
}
.axis-158 {
  animation:
    anim156 33728ms,
    fade2 33728ms;
}
.axis-159 {
  animation:
    anim156 10322ms,
    fade6 10322ms;
}
.axis-160 {
  animation:
    anim160 26779ms,
    fade5 26779ms;
}
.axis-161 {
  animation:
    anim160 42884ms,
    fade4 42884ms;
}
.axis-162 {
  animation:
    anim160 16215ms,
    fade1 16215ms;
}
.axis-163 {
  animation:
    anim160 28851ms,
    fade10 28851ms;
}
.axis-164 {
  animation:
    anim164 43944ms,
    fade6 43944ms;
}
.axis-165 {
  animation:
    anim164 17982ms,
    fade9 17982ms;
}
.axis-166 {
  animation:
    anim164 38205ms,
    fade4 38205ms;
}
.axis-167 {
  animation:
    anim164 23182ms,
    fade5 23182ms;
}
.axis-168 {
  animation:
    anim168 8119ms,
    fade2 8119ms;
}
.axis-169 {
  animation:
    anim168 39327ms,
    fade2 39327ms;
}
.axis-170 {
  animation:
    anim168 17275ms,
    fade1 17275ms;
}
.axis-171 {
  animation:
    anim168 15463ms,
    fade3 15463ms;
}
.axis-172 {
  animation:
    anim172 27289ms,
    fade3 27289ms;
}
.axis-173 {
  animation:
    anim172 14562ms,
    fade10 14562ms;
}
.axis-174 {
  animation:
    anim172 44687ms,
    fade9 44687ms;
}
.axis-175 {
  animation:
    anim172 24005ms,
    fade6 24005ms;
}
.axis-176 {
  animation:
    anim176 35381ms,
    fade1 35381ms;
}
.axis-177 {
  animation:
    anim176 43739ms,
    fade2 43739ms;
}
.axis-178 {
  animation:
    anim176 33813ms,
    fade9 33813ms;
}
.axis-179 {
  animation:
    anim176 14413ms,
    fade9 14413ms;
}
.axis-180 {
  animation:
    anim180 13607ms,
    fade8 13607ms;
}
.axis-181 {
  animation:
    anim180 17197ms,
    fade2 17197ms;
}
.axis-182 {
  animation:
    anim180 24135ms,
    fade6 24135ms;
}
.axis-183 {
  animation:
    anim180 8025ms,
    fade7 8025ms;
}
.axis-184 {
  animation:
    anim184 13540ms,
    fade5 13540ms;
}
.axis-185 {
  animation:
    anim184 42929ms,
    fade10 42929ms;
}
.axis-186 {
  animation:
    anim184 17418ms,
    fade5 17418ms;
}
.axis-187 {
  animation:
    anim184 33538ms,
    fade6 33538ms;
}
.axis-188 {
  animation:
    anim188 32493ms,
    fade5 32493ms;
}
.axis-189 {
  animation:
    anim188 32641ms,
    fade3 32641ms;
}
.axis-190 {
  animation:
    anim188 19934ms,
    fade10 19934ms;
}
.axis-191 {
  animation:
    anim188 12505ms,
    fade4 12505ms;
}
.axis-192 {
  animation:
    anim192 33954ms,
    fade9 33954ms;
}
.axis-193 {
  animation:
    anim192 44830ms,
    fade1 44830ms;
}
.axis-194 {
  animation:
    anim192 17999ms,
    fade1 17999ms;
}
.axis-195 {
  animation:
    anim192 25791ms,
    fade5 25791ms;
}
.axis-196 {
  animation:
    anim196 23414ms,
    fade7 23414ms;
}
.axis-197 {
  animation:
    anim196 40230ms,
    fade1 40230ms;
}
.axis-198 {
  animation:
    anim196 7669ms,
    fade8 7669ms;
}
.axis-199 {
  animation:
    anim196 34436ms,
    fade6 34436ms;
}
.axis-200 {
  animation:
    anim200 32369ms,
    fade1 32369ms;
}
.axis-201 {
  animation:
    anim200 31823ms,
    fade2 31823ms;
}
.axis-202 {
  animation:
    anim200 37435ms,
    fade5 37435ms;
}
.axis-203 {
  animation:
    anim200 8974ms,
    fade6 8974ms;
}
.axis-204 {
  animation:
    anim204 42428ms,
    fade7 42428ms;
}
.axis-205 {
  animation:
    anim204 13336ms,
    fade2 13336ms;
}
.axis-206 {
  animation:
    anim204 32401ms,
    fade2 32401ms;
}
.axis-207 {
  animation:
    anim204 32972ms,
    fade7 32972ms;
}
.axis-208 {
  animation:
    anim208 20430ms,
    fade4 20430ms;
}
.axis-209 {
  animation:
    anim208 22417ms,
    fade5 22417ms;
}
.axis-210 {
  animation:
    anim208 31293ms,
    fade5 31293ms;
}
.axis-211 {
  animation:
    anim208 34565ms,
    fade4 34565ms;
}
.axis-212 {
  animation:
    anim212 7831ms,
    fade5 7831ms;
}
.axis-213 {
  animation:
    anim212 40353ms,
    fade3 40353ms;
}
.axis-214 {
  animation:
    anim212 28446ms,
    fade7 28446ms;
}
.axis-215 {
  animation:
    anim212 8033ms,
    fade5 8033ms;
}
.axis-216 {
  animation:
    anim216 37281ms,
    fade3 37281ms;
}
.axis-217 {
  animation:
    anim216 27655ms,
    fade8 27655ms;
}
.axis-218 {
  animation:
    anim216 37748ms,
    fade4 37748ms;
}
.axis-219 {
  animation:
    anim216 35423ms,
    fade3 35423ms;
}
.axis-220 {
  animation:
    anim220 27529ms,
    fade6 27529ms;
}
.axis-221 {
  animation:
    anim220 19217ms,
    fade3 19217ms;
}
.axis-222 {
  animation:
    anim220 20427ms,
    fade9 20427ms;
}
.axis-223 {
  animation:
    anim220 24565ms,
    fade10 24565ms;
}
.axis-224 {
  animation:
    anim224 11151ms,
    fade4 11151ms;
}
.axis-225 {
  animation:
    anim224 10551ms,
    fade10 10551ms;
}
.axis-226 {
  animation:
    anim224 26367ms,
    fade2 26367ms;
}
.axis-227 {
  animation:
    anim224 44481ms,
    fade8 44481ms;
}
.axis-228 {
  animation:
    anim228 42743ms,
    fade6 42743ms;
}
.axis-229 {
  animation:
    anim228 37433ms,
    fade10 37433ms;
}
.axis-230 {
  animation:
    anim228 6707ms,
    fade10 6707ms;
}
.axis-231 {
  animation:
    anim228 20431ms,
    fade8 20431ms;
}
.axis-232 {
  animation:
    anim232 40209ms,
    fade6 40209ms;
}
.axis-233 {
  animation:
    anim232 35559ms,
    fade4 35559ms;
}
.axis-234 {
  animation:
    anim232 36053ms,
    fade5 36053ms;
}
.axis-235 {
  animation:
    anim232 21287ms,
    fade7 21287ms;
}
.axis-236 {
  animation:
    anim236 11504ms,
    fade5 11504ms;
}
.axis-237 {
  animation:
    anim236 14885ms,
    fade1 14885ms;
}
.axis-238 {
  animation:
    anim236 33532ms,
    fade9 33532ms;
}
.axis-239 {
  animation:
    anim236 13692ms,
    fade4 13692ms;
}
.axis-240 {
  animation:
    anim240 29824ms,
    fade3 29824ms;
}
.axis-241 {
  animation:
    anim240 36236ms,
    fade8 36236ms;
}
.axis-242 {
  animation:
    anim240 30724ms,
    fade3 30724ms;
}
.axis-243 {
  animation:
    anim240 10531ms,
    fade3 10531ms;
}
.axis-244 {
  animation:
    anim244 26796ms,
    fade3 26796ms;
}
.axis-245 {
  animation:
    anim244 27666ms,
    fade5 27666ms;
}
.axis-246 {
  animation:
    anim244 26344ms,
    fade3 26344ms;
}
.axis-247 {
  animation:
    anim244 39654ms,
    fade5 39654ms;
}
.axis-248 {
  animation:
    anim248 40073ms,
    fade2 40073ms;
}
.axis-249 {
  animation:
    anim248 41911ms,
    fade1 41911ms;
}
.axis-250 {
  animation:
    anim248 32413ms,
    fade9 32413ms;
}
.axis-251 {
  animation:
    anim248 38138ms,
    fade5 38138ms;
}
.axis-252 {
  animation:
    anim252 13362ms,
    fade6 13362ms;
}
.axis-253 {
  animation:
    anim252 6921ms,
    fade5 6921ms;
}
.axis-254 {
  animation:
    anim252 36974ms,
    fade4 36974ms;
}
.axis-255 {
  animation:
    anim252 11152ms,
    fade9 11152ms;
}
.axis-256 {
  animation:
    anim256 33521ms,
    fade2 33521ms;
}
.axis-257 {
  animation:
    anim256 26663ms,
    fade10 26663ms;
}
.axis-258 {
  animation:
    anim256 44328ms,
    fade5 44328ms;
}
.axis-259 {
  animation:
    anim256 28824ms,
    fade5 28824ms;
}
.axis-260 {
  animation:
    anim260 15812ms,
    fade3 15812ms;
}
.axis-261 {
  animation:
    anim260 26089ms,
    fade5 26089ms;
}
.axis-262 {
  animation:
    anim260 22927ms,
    fade9 22927ms;
}
.axis-263 {
  animation:
    anim260 10595ms,
    fade8 10595ms;
}
.axis-264 {
  animation:
    anim264 25615ms,
    fade10 25615ms;
}
.axis-265 {
  animation:
    anim264 32023ms,
    fade7 32023ms;
}
.axis-266 {
  animation:
    anim264 29406ms,
    fade1 29406ms;
}
.axis-267 {
  animation:
    anim264 17254ms,
    fade4 17254ms;
}
.axis-268 {
  animation:
    anim268 12435ms,
    fade8 12435ms;
}
.axis-269 {
  animation:
    anim268 33677ms,
    fade6 33677ms;
}
.axis-270 {
  animation:
    anim268 6904ms,
    fade2 6904ms;
}
.axis-271 {
  animation:
    anim268 6520ms,
    fade6 6520ms;
}
.axis-272 {
  animation:
    anim272 6841ms,
    fade8 6841ms;
}
.axis-273 {
  animation:
    anim272 31705ms,
    fade5 31705ms;
}
.axis-274 {
  animation:
    anim272 19922ms,
    fade5 19922ms;
}
.axis-275 {
  animation:
    anim272 22998ms,
    fade10 22998ms;
}
.axis-276 {
  animation:
    anim276 12995ms,
    fade4 12995ms;
}
.axis-277 {
  animation:
    anim276 9887ms,
    fade10 9887ms;
}
.axis-278 {
  animation:
    anim276 34648ms,
    fade3 34648ms;
}
.axis-279 {
  animation:
    anim276 43937ms,
    fade4 43937ms;
}
.axis-280 {
  animation:
    anim280 42576ms,
    fade10 42576ms;
}
.axis-281 {
  animation:
    anim280 36312ms,
    fade1 36312ms;
}
.axis-282 {
  animation:
    anim280 43700ms,
    fade6 43700ms;
}
.axis-283 {
  animation:
    anim280 27135ms,
    fade2 27135ms;
}
.axis-284 {
  animation:
    anim284 24376ms,
    fade8 24376ms;
}
.axis-285 {
  animation:
    anim284 36922ms,
    fade7 36922ms;
}
.axis-286 {
  animation:
    anim284 26293ms,
    fade9 26293ms;
}
.axis-287 {
  animation:
    anim284 5102ms,
    fade9 5102ms;
}
.axis-288 {
  animation:
    anim288 7901ms,
    fade9 7901ms;
}
.axis-289 {
  animation:
    anim288 43974ms,
    fade10 43974ms;
}
.axis-290 {
  animation:
    anim288 11026ms,
    fade4 11026ms;
}
.axis-291 {
  animation:
    anim288 21143ms,
    fade6 21143ms;
}
.axis-292 {
  animation:
    anim292 9337ms,
    fade6 9337ms;
}
.axis-293 {
  animation:
    anim292 36178ms,
    fade6 36178ms;
}
.axis-294 {
  animation:
    anim292 15201ms,
    fade10 15201ms;
}
.axis-295 {
  animation:
    anim292 22990ms,
    fade9 22990ms;
}
.axis-296 {
  animation:
    anim296 38934ms,
    fade3 38934ms;
}
.axis-297 {
  animation:
    anim296 17927ms,
    fade5 17927ms;
}
.axis-298 {
  animation:
    anim296 43774ms,
    fade5 43774ms;
}
.axis-299 {
  animation:
    anim296 6756ms,
    fade3 6756ms;
}
.axis-300 {
  animation:
    anim300 26697ms,
    fade3 26697ms;
}
.axis-301 {
  animation:
    anim300 28361ms,
    fade8 28361ms;
}
.axis-302 {
  animation:
    anim300 20117ms,
    fade5 20117ms;
}
.axis-303 {
  animation:
    anim300 36338ms,
    fade1 36338ms;
}
.axis-304 {
  animation:
    anim304 30422ms,
    fade6 30422ms;
}
.axis-305 {
  animation:
    anim304 26134ms,
    fade3 26134ms;
}
.axis-306 {
  animation:
    anim304 36124ms,
    fade9 36124ms;
}
.axis-307 {
  animation:
    anim304 24773ms,
    fade5 24773ms;
}
.axis-308 {
  animation:
    anim308 10587ms,
    fade4 10587ms;
}
.axis-309 {
  animation:
    anim308 29661ms,
    fade9 29661ms;
}
.axis-310 {
  animation:
    anim308 34234ms,
    fade1 34234ms;
}
.axis-311 {
  animation:
    anim308 43605ms,
    fade7 43605ms;
}
.axis-312 {
  animation:
    anim312 8220ms,
    fade8 8220ms;
}
.axis-313 {
  animation:
    anim312 44959ms,
    fade6 44959ms;
}
.axis-314 {
  animation:
    anim312 15965ms,
    fade3 15965ms;
}
.axis-315 {
  animation:
    anim312 30809ms,
    fade8 30809ms;
}
.axis-316 {
  animation:
    anim316 23713ms,
    fade6 23713ms;
}
.axis-317 {
  animation:
    anim316 27249ms,
    fade6 27249ms;
}
.axis-318 {
  animation:
    anim316 35148ms,
    fade4 35148ms;
}
.axis-319 {
  animation:
    anim316 37526ms,
    fade2 37526ms;
}
.axis-320 {
  animation:
    anim320 17060ms,
    fade5 17060ms;
}
.axis-321 {
  animation:
    anim320 17599ms,
    fade10 17599ms;
}
.axis-322 {
  animation:
    anim320 31303ms,
    fade6 31303ms;
}
.axis-323 {
  animation:
    anim320 15903ms,
    fade5 15903ms;
}
.axis-324 {
  animation:
    anim324 14644ms,
    fade1 14644ms;
}
.axis-325 {
  animation:
    anim324 13165ms,
    fade3 13165ms;
}
.axis-326 {
  animation:
    anim324 40258ms,
    fade3 40258ms;
}
.axis-327 {
  animation:
    anim324 34878ms,
    fade1 34878ms;
}
.axis-328 {
  animation:
    anim328 31985ms,
    fade8 31985ms;
}
.axis-329 {
  animation:
    anim328 31776ms,
    fade7 31776ms;
}
.axis-330 {
  animation:
    anim328 22636ms,
    fade2 22636ms;
}
.axis-331 {
  animation:
    anim328 34705ms,
    fade9 34705ms;
}
.axis-332 {
  animation:
    anim332 44318ms,
    fade5 44318ms;
}
.axis-333 {
  animation:
    anim332 8047ms,
    fade6 8047ms;
}
.axis-334 {
  animation:
    anim332 12941ms,
    fade2 12941ms;
}
.axis-335 {
  animation:
    anim332 11119ms,
    fade8 11119ms;
}
.axis-336 {
  animation:
    anim336 13155ms,
    fade6 13155ms;
}
.axis-337 {
  animation:
    anim336 33227ms,
    fade1 33227ms;
}
.axis-338 {
  animation:
    anim336 6739ms,
    fade8 6739ms;
}
.axis-339 {
  animation:
    anim336 11149ms,
    fade3 11149ms;
}
.axis-340 {
  animation:
    anim340 20781ms,
    fade6 20781ms;
}
.axis-341 {
  animation:
    anim340 37222ms,
    fade2 37222ms;
}
.axis-342 {
  animation:
    anim340 28080ms,
    fade5 28080ms;
}
.axis-343 {
  animation:
    anim340 21876ms,
    fade9 21876ms;
}
.axis-344 {
  animation:
    anim344 15892ms,
    fade9 15892ms;
}
.axis-345 {
  animation:
    anim344 31080ms,
    fade1 31080ms;
}
.axis-346 {
  animation:
    anim344 27543ms,
    fade6 27543ms;
}
.axis-347 {
  animation:
    anim344 36156ms,
    fade8 36156ms;
}
.axis-348 {
  animation:
    anim348 18552ms,
    fade4 18552ms;
}
.axis-349 {
  animation:
    anim348 15262ms,
    fade5 15262ms;
}
.axis-350 {
  animation:
    anim348 35244ms,
    fade8 35244ms;
}
.axis-351 {
  animation:
    anim348 33253ms,
    fade7 33253ms;
}
.axis-352 {
  animation:
    anim352 15377ms,
    fade10 15377ms;
}
.axis-353 {
  animation:
    anim352 21022ms,
    fade2 21022ms;
}
.axis-354 {
  animation:
    anim352 23781ms,
    fade7 23781ms;
}
.axis-355 {
  animation:
    anim352 32572ms,
    fade10 32572ms;
}
.axis-356 {
  animation:
    anim356 21956ms,
    fade5 21956ms;
}
.axis-357 {
  animation:
    anim356 24350ms,
    fade3 24350ms;
}
.axis-358 {
  animation:
    anim356 39801ms,
    fade5 39801ms;
}
.axis-359 {
  animation:
    anim356 28273ms,
    fade8 28273ms;
}
.axis-360 {
  animation:
    anim360 43637ms,
    fade3 43637ms;
}
@keyframes fade1 {
  12% {
    opacity: 0;
  }
  22% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade2 {
  13% {
    opacity: 0;
  }
  23% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade3 {
  17% {
    opacity: 0;
  }
  27% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade4 {
  9% {
    opacity: 0;
  }
  19% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade5 {
  6% {
    opacity: 0;
  }
  16% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade6 {
  10% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade7 {
  7% {
    opacity: 0;
  }
  17% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade8 {
  19% {
    opacity: 0;
  }
  29% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade9 {
  3% {
    opacity: 0;
  }
  13% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade10 {
  1% {
    opacity: 0;
  }
  11% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anim4 {
  100% {
    transform: translate(79.8051240208vw, 5.5805178995vh);
  }
}
@keyframes anim8 {
  100% {
    transform: translate(79.2214454993vw, 11.1338480768vh);
  }
}
@keyframes anim12 {
  100% {
    transform: translate(78.2518080587vw, 16.6329352654vh);
  }
}
@keyframes anim16 {
  100% {
    transform: translate(76.9009356751vw, 22.0509884654vh);
  }
}
@keyframes anim20 {
  100% {
    transform: translate(75.1754096629vw, 27.3616114661vh);
  }
}
@keyframes anim24 {
  100% {
    transform: translate(73.0836366114vw, 32.5389314461vh);
  }
}
@keyframes anim28 {
  100% {
    transform: translate(70.6358074287vw, 37.5577250229vh);
  }
}
@keyframes anim32 {
  100% {
    transform: translate(67.8438476925vw, 42.3935411387vh);
  }
}
@keyframes anim36 {
  100% {
    transform: translate(64.72135955vw, 47.0228201834vh);
  }
}
@keyframes anim40 {
  100% {
    transform: translate(61.2835554495vw, 51.4230087749vh);
  }
}
@keyframes anim44 {
  100% {
    transform: translate(57.5471840271vw, 55.5726696367vh);
  }
}
@keyframes anim48 {
  100% {
    transform: translate(53.5304485087vw, 59.4515860382vh);
  }
}
@keyframes anim52 {
  100% {
    transform: translate(49.2529180261vw, 63.0408602885vh);
  }
}
@keyframes anim56 {
  100% {
    transform: translate(44.7354322777vw, 66.3230058044vh);
  }
}
@keyframes anim60 {
  100% {
    transform: translate(40vw, 69.2820323028vh);
  }
}
@keyframes anim64 {
  100% {
    transform: translate(35.0696917431vw, 71.9035237039vh);
  }
}
@keyframes anim68 {
  100% {
    transform: translate(29.9685274733vw, 74.1747083653vh);
  }
}
@keyframes anim72 {
  100% {
    transform: translate(24.72135955vw, 76.0845213036vh);
  }
}
@keyframes anim76 {
  100% {
    transform: translate(19.353751648vw, 77.6236581021vh);
  }
}
@keyframes anim80 {
  100% {
    transform: translate(13.8918542134vw, 78.784620241vh);
  }
}
@keyframes anim84 {
  100% {
    transform: translate(8.3622770614vw, 79.5617516295vh);
  }
}
@keyframes anim88 {
  100% {
    transform: translate(2.7919597362vw, 79.9512661615vh);
  }
}
@keyframes anim92 {
  100% {
    transform: translate(-2.7919597362vw, 79.9512661615vh);
  }
}
@keyframes anim96 {
  100% {
    transform: translate(-8.3622770614vw, 79.5617516295vh);
  }
}
@keyframes anim100 {
  100% {
    transform: translate(-13.8918542134vw, 78.784620241vh);
  }
}
@keyframes anim104 {
  100% {
    transform: translate(-19.353751648vw, 77.6236581021vh);
  }
}
@keyframes anim108 {
  100% {
    transform: translate(-24.72135955vw, 76.0845213036vh);
  }
}
@keyframes anim112 {
  100% {
    transform: translate(-29.9685274733vw, 74.1747083653vh);
  }
}
@keyframes anim116 {
  100% {
    transform: translate(-35.0696917431vw, 71.9035237039vh);
  }
}
@keyframes anim120 {
  100% {
    transform: translate(-40vw, 69.2820323028vh);
  }
}
@keyframes anim124 {
  100% {
    transform: translate(-44.7354322777vw, 66.3230058044vh);
  }
}
@keyframes anim128 {
  100% {
    transform: translate(-49.2529180261vw, 63.0408602885vh);
  }
}
@keyframes anim132 {
  100% {
    transform: translate(-53.5304485087vw, 59.4515860382vh);
  }
}
@keyframes anim136 {
  100% {
    transform: translate(-57.5471840271vw, 55.5726696367vh);
  }
}
@keyframes anim140 {
  100% {
    transform: translate(-61.2835554495vw, 51.4230087749vh);
  }
}
@keyframes anim144 {
  100% {
    transform: translate(-64.72135955vw, 47.0228201834vh);
  }
}
@keyframes anim148 {
  100% {
    transform: translate(-67.8438476925vw, 42.3935411387vh);
  }
}
@keyframes anim152 {
  100% {
    transform: translate(-70.6358074287vw, 37.5577250229vh);
  }
}
@keyframes anim156 {
  100% {
    transform: translate(-73.0836366114vw, 32.5389314461vh);
  }
}
@keyframes anim160 {
  100% {
    transform: translate(-75.1754096629vw, 27.3616114661vh);
  }
}
@keyframes anim164 {
  100% {
    transform: translate(-76.9009356751vw, 22.0509884654vh);
  }
}
@keyframes anim168 {
  100% {
    transform: translate(-78.2518080587vw, 16.6329352654vh);
  }
}
@keyframes anim172 {
  100% {
    transform: translate(-79.2214454993vw, 11.1338480768vh);
  }
}
@keyframes anim176 {
  100% {
    transform: translate(-79.8051240208vw, 5.5805178995vh);
  }
}
@keyframes anim180 {
  100% {
    transform: translate(-80vw, 0vh);
  }
}
@keyframes anim184 {
  100% {
    transform: translate(-79.8051240208vw, -5.5805178995vh);
  }
}
@keyframes anim188 {
  100% {
    transform: translate(-79.2214454993vw, -11.1338480768vh);
  }
}
@keyframes anim192 {
  100% {
    transform: translate(-78.2518080587vw, -16.6329352654vh);
  }
}
@keyframes anim196 {
  100% {
    transform: translate(-76.9009356751vw, -22.0509884654vh);
  }
}
@keyframes anim200 {
  100% {
    transform: translate(-75.1754096629vw, -27.3616114661vh);
  }
}
@keyframes anim204 {
  100% {
    transform: translate(-73.0836366114vw, -32.5389314461vh);
  }
}
@keyframes anim208 {
  100% {
    transform: translate(-70.6358074287vw, -37.5577250229vh);
  }
}
@keyframes anim212 {
  100% {
    transform: translate(-67.8438476925vw, -42.3935411387vh);
  }
}
@keyframes anim216 {
  100% {
    transform: translate(-64.72135955vw, -47.0228201834vh);
  }
}
@keyframes anim220 {
  100% {
    transform: translate(-61.2835554495vw, -51.4230087749vh);
  }
}
@keyframes anim224 {
  100% {
    transform: translate(-57.5471840271vw, -55.5726696367vh);
  }
}
@keyframes anim228 {
  100% {
    transform: translate(-53.5304485087vw, -59.4515860382vh);
  }
}
@keyframes anim232 {
  100% {
    transform: translate(-49.2529180261vw, -63.0408602885vh);
  }
}
@keyframes anim236 {
  100% {
    transform: translate(-44.7354322777vw, -66.3230058044vh);
  }
}
@keyframes anim240 {
  100% {
    transform: translate(-40vw, -69.2820323028vh);
  }
}
@keyframes anim244 {
  100% {
    transform: translate(-35.0696917431vw, -71.9035237039vh);
  }
}
@keyframes anim248 {
  100% {
    transform: translate(-29.9685274733vw, -74.1747083653vh);
  }
}
@keyframes anim252 {
  100% {
    transform: translate(-24.72135955vw, -76.0845213036vh);
  }
}
@keyframes anim256 {
  100% {
    transform: translate(-19.353751648vw, -77.6236581021vh);
  }
}
@keyframes anim260 {
  100% {
    transform: translate(-13.8918542134vw, -78.784620241vh);
  }
}
@keyframes anim264 {
  100% {
    transform: translate(-8.3622770614vw, -79.5617516295vh);
  }
}
@keyframes anim268 {
  100% {
    transform: translate(-2.7919597362vw, -79.9512661615vh);
  }
}
@keyframes anim272 {
  100% {
    transform: translate(2.7919597362vw, -79.9512661615vh);
  }
}
@keyframes anim276 {
  100% {
    transform: translate(8.3622770614vw, -79.5617516295vh);
  }
}
@keyframes anim280 {
  100% {
    transform: translate(13.8918542134vw, -78.784620241vh);
  }
}
@keyframes anim284 {
  100% {
    transform: translate(19.353751648vw, -77.6236581021vh);
  }
}
@keyframes anim288 {
  100% {
    transform: translate(24.72135955vw, -76.0845213036vh);
  }
}
@keyframes anim292 {
  100% {
    transform: translate(29.9685274733vw, -74.1747083653vh);
  }
}
@keyframes anim296 {
  100% {
    transform: translate(35.0696917431vw, -71.9035237039vh);
  }
}
@keyframes anim300 {
  100% {
    transform: translate(40vw, -69.2820323028vh);
  }
}
@keyframes anim304 {
  100% {
    transform: translate(44.7354322777vw, -66.3230058044vh);
  }
}
@keyframes anim308 {
  100% {
    transform: translate(49.2529180261vw, -63.0408602885vh);
  }
}
@keyframes anim312 {
  100% {
    transform: translate(53.5304485087vw, -59.4515860382vh);
  }
}
@keyframes anim316 {
  100% {
    transform: translate(57.5471840271vw, -55.5726696367vh);
  }
}
@keyframes anim320 {
  100% {
    transform: translate(61.2835554495vw, -51.4230087749vh);
  }
}
@keyframes anim324 {
  100% {
    transform: translate(64.72135955vw, -47.0228201834vh);
  }
}
@keyframes anim328 {
  100% {
    transform: translate(67.8438476925vw, -42.3935411387vh);
  }
}
@keyframes anim332 {
  100% {
    transform: translate(70.6358074287vw, -37.5577250229vh);
  }
}
@keyframes anim336 {
  100% {
    transform: translate(73.0836366114vw, -32.5389314461vh);
  }
}
@keyframes anim340 {
  100% {
    transform: translate(75.1754096629vw, -27.3616114661vh);
  }
}
@keyframes anim344 {
  100% {
    transform: translate(76.9009356751vw, -22.0509884654vh);
  }
}
@keyframes anim348 {
  100% {
    transform: translate(78.2518080587vw, -16.6329352654vh);
  }
}
@keyframes anim352 {
  100% {
    transform: translate(79.2214454993vw, -11.1338480768vh);
  }
}
@keyframes anim356 {
  100% {
    transform: translate(79.8051240208vw, -5.5805178995vh);
  }
}
@keyframes anim360 {
  100% {
    transform: translate(80vw, 0vh);
  }
}
.story-hero {
  position: relative;
  height: 280vh;
  background-color: var(--clr-base-white);
  color: var(--clr-base-black);
}
.story-hero__pin {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 clamp(2rem, 3.8834951456vw + 0.5436893204rem, 8rem);
}
.story-hero h2 {
  display: grid;
  gap: clamp(1.2rem, 0.7766990291vw + 0.9087378641rem, 2.4rem);
}
.story-hero__line {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.story-hero__phrase {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
}
.story-hero__phrase > span {
  display: inline-block;
  transform: translateY(115%);
  opacity: 0;
  transition:
    transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.5s ease;
  will-change: transform, opacity;
}
.story-hero__box {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  width: var(--brand-hero-box-width, 0px);
  height: 0.95em;
  margin: 0 calc(0.14em + var(--brand-hero-box-gap, 0px));
  background-color: var(--clr-secondary-500);
  clip-path: inset(-2.7em var(--brand-hero-clip, 100%) -0.7em 0);
  --brand-hero-box-width: 0px;
  --brand-hero-box-gap: 0px;
  --brand-hero-clip: 100%;
  transform: translateY(115%);
  opacity: 0;
  transition:
    transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.5s ease;
  will-change: width, margin, clip-path, transform, opacity;
}
.story-hero__box--ch {
  background-color: var(--clr-yellow-500);
}
.story-hero__box > img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 118%;
  height: 2.45em;
  transform: translate(-50%, -50%);
  object-fit: contain;
  object-position: center;
  pointer-events: none;
  user-select: none;
  max-width: none;
}
.story-hero__box--pizza > img {
  animation: brand-hero-food-wiggle 2.4s ease-in-out infinite;
}
.story-hero__box--ch > img {
  animation: brand-hero-food-wiggle 2.6s ease-in-out 0.18s infinite reverse;
}
.story-hero.is-headline-visible .story-hero__phrase > span,
.story-hero.is-headline-visible .story-hero__box {
  transform: translateY(0);
  opacity: 1;
}
.story-hero.is-headline-visible .story-hero__line:first-child .story-hero__phrase:first-child > span {
  transition-delay: 0.1s;
}
.story-hero.is-headline-visible .story-hero__line:first-child .story-hero__box {
  transition-delay: 0.22s;
}
.story-hero.is-headline-visible .story-hero__line:first-child .story-hero__phrase:last-child > span {
  transition-delay: 0.34s;
}
.story-hero.is-headline-visible .story-hero__line:last-child .story-hero__phrase:first-child > span {
  transition-delay: 0.46s;
}
.story-hero.is-headline-visible .story-hero__line:last-child .story-hero__box {
  transition-delay: 0.58s;
}
.story-hero.is-headline-visible .story-hero__line:last-child .story-hero__phrase:last-child > span {
  transition-delay: 0.7s;
}
@media (max-width: 768px) {
  .story-hero__pin {
    padding: 0 2rem;
  }
  .story-hero h2 {
    font-size: clamp(3.4rem, 0.9061488673vw + 3.0601941748rem, 4.8rem);
    gap: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
  }
  .story-hero__line {
    display: grid;
    grid-template-columns: minmax(0, max-content) auto;
    justify-content: center;
    justify-items: center;
    column-gap: 0;
    max-width: calc(100vw - 4rem);
    margin-inline: auto;
  }
  .story-hero__phrase {
    white-space: nowrap;
  }
  .story-hero__phrase:last-child {
    grid-column: 1/-1;
  }
  .story-hero__box {
    margin: 0 0 0 0.14em;
    max-width: calc(100vw - 4rem);
  }
  .story-hero__box > img {
    width: 104%;
    height: 2.24em;
  }
}
@keyframes brand-hero-food-wiggle {
  0%,
  100% {
    transform: translate(-50%, -50%) rotate(-1.6deg);
  }
  50% {
    transform: translate(-50%, -50%) rotate(1.6deg);
  }
}
.story-crisis {
  position: relative;
  height: 210vh;
  background-color: #6200ea;
  color: var(--clr-base-white);
}
.story-crisis__pin {
  position: sticky;
  top: 0;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 10rem 8rem;
}
.story-crisis__copy {
  display: grid;
  gap: 1rem;
  width: min(100%, 136rem);
  text-align: center;
}
.story-crisis__text {
  margin: 0;
  color: inherit;
  font-size: 3.2rem;
  line-height: 1.55;
  word-break: keep-all;
  text-wrap: balance;
  will-change: opacity, transform;
}
.story-crisis h2.story-crisis__text {
  font-size: 3.2rem;
}
@media (max-width: 1024px) {
  .story-crisis__pin {
    padding: 8rem 4rem;
  }
  .story-crisis__text,
  .story-crisis h2.story-crisis__text {
    font-size: 2.8rem;
  }
}
@media (max-width: 768px) {
  .story-crisis {
    height: 190vh;
  }
  .story-crisis__pin {
    padding: 6rem 2rem;
  }
  .story-crisis__copy {
    gap: 0.8rem;
  }
  .story-crisis__text,
  .story-crisis h2.story-crisis__text {
    font-size: 2.2rem;
    line-height: 1.55;
  }
}
.cosmo-sec {
  position: relative;
  height: 360vh;
  background-color: var(--clr-base-white);
  color: var(--clr-base-black);
}
.cosmo-sec .pin {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.cosmo-sec .txt {
  position: absolute;
  top: clamp(13rem, 2.8478964401vw + 11.932038835rem, 17.4rem);
  left: 50%;
  z-index: 2;
  width: min(100vw - 4rem, 118rem);
  transform: translateX(-50%);
  line-height: 1.42;
  text-align: center;
  box-sizing: border-box;
}
.cosmo-sec .txt p {
  margin-inline: auto;
  opacity: 1;
  transform: none;
  word-break: keep-all;
  overflow-wrap: break-word;
}
@media (max-width: 768px) {
  .cosmo-sec .txt {
    top: clamp(9.6rem, 2.2006472492vw + 8.7747572816rem, 13rem);
    padding: 0 2rem;
  }
}
@media (max-width: 768px) {
  .cosmo-sec {
    height: 330vh;
  }
}
.cosmo-sec .mark {
  position: relative;
  width: min(72vw, 104rem);
  opacity: 0;
  transform: scale(0.16);
  overflow: hidden;
}
.cosmo-sec .mark img {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  right: clamp(1rem, 1.9417475728vw + 0.2718446602rem, 4rem);
}
.cosmo-sec .mark strong {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: clamp(0.6rem, 0.5177993528vw + 0.4058252427rem, 1.4rem);
  width: min(92%, 96rem);
  max-height: 78%;
  color: var(--clr-base-white);
  line-height: 0.92;
  text-align: center;
  transform: translate(-50%, -50%);
  pointer-events: none;
  overflow: hidden;
  box-sizing: border-box;
}
.cosmo-sec .mark span {
  display: block;
  width: max-content;
  max-width: 100%;
  margin-inline: auto;
  text-align: center;
  opacity: 1;
}
@media (max-width: 768px) {
  .cosmo-sec .mark {
    width: min(86vw, 64rem);
  }
}
.cosmo-sec .cap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(8.8rem, 3.4951456311vw + 7.4893203883rem, 14.2rem);
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(0.8rem, 0.3883495146vw + 0.654368932rem, 1.4rem);
  width: 100%;
  padding: 0 2rem;
  opacity: 0;
  transform: translateY(2rem);
  box-sizing: border-box;
}
.cosmo-sec .cap p {
  margin: 0;
  width: 100%;
  max-width: min(100vw - 4rem, 118rem);
  text-align: center;
  word-break: keep-all;
  overflow-wrap: break-word;
}
@media (max-width: 768px) {
  .cosmo-sec .cap {
    bottom: clamp(7rem, 1.6828478964vw + 6.3689320388rem, 9.6rem);
  }
}
.story-gallery {
  position: relative;
  height: 240vh;
  background-color: var(--clr-base-white);
  overflow: clip;
}
.story-gallery__pin {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(8rem, 2.5889967638vw + 7.0291262136rem, 12rem) 40px;
}
.story-gallery__grid {
  width: 100%;
  display: grid;
  gap: clamp(1rem, 0.5177993528vw + 0.8058252427rem, 1.8rem);
}
.story-gallery__row {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1rem, 0.5177993528vw + 0.8058252427rem, 1.8rem);
  justify-self: center;
  opacity: 1;
}
.story-gallery__item {
  aspect-ratio: 440/320;
  overflow: hidden;
  background-color: var(--clr-gray-50);
  border-radius: clamp(0.8rem, 0.5177993528vw + 0.6058252427rem, 1.6rem);
}
.story-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 768px) {
  .story-gallery__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.menu-edge {
  width: 100%;
  max-width: 100%;
  background-color: var(--clr-base-white);
  position: relative;
}
@media (max-width: 768px) {
  .menu-edge.bottom {
    height: 30rem;
  }
}
.menu-edge p {
  width: 100%;
}
@media (max-width: 1400px) {
  .menu-edge p {
    padding: 0 2rem;
  }
}
.menu-edge img {
  display: block;
  width: 100%;
  height: 100%;
}
section[data-brand-menu-space] {
  position: relative;
  padding: 0;
  background-color: var(--clr-base-white);
}
section[data-brand-menu-space] .menu-frame {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #03050b url('/assets/images/brand-space-bg.jpg') center/cover no-repeat;
  overflow: hidden;
}
section[data-brand-menu-space] .menu-frame .menu-title {
  z-index: 7;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.2rem, 1.0355987055vw + 0.8116504854rem, 2.8rem);
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0 clamp(2.4rem, 7.2491909385vw - 0.3184466019rem, 13.6rem);
  box-sizing: border-box;
}
section[data-brand-menu-space] .menu-frame .menu-title::before,
section[data-brand-menu-space] .menu-frame .menu-title::after {
  content: '';
  flex: 0 1 10.8rem;
  width: 100%;
  height: 1px;
  align-self: center;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--clr-secondary-500) 18%,
    var(--clr-secondary-500) 82%,
    transparent 100%
  );
  box-shadow: 0 0 12px color-mix(in srgb, var(--clr-secondary-500) 35%, transparent);
}
section[data-brand-menu-space] .menu-frame .menu-title span {
  flex: 0 0 auto;
  min-width: 0;
  white-space: nowrap;
}
section[data-brand-menu-space] .menu-frame .menu-swiper {
  width: 100%;
  padding: 0;
  position: relative;
  z-index: 3;
  overflow: visible;
  margin: clamp(12rem, 7.7669902913vw + 9.0873786408rem, 24rem) 0 12rem;
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide {
  position: relative;
  display: block;
  overflow: visible;
  color: var(--clr-base-white);
  background: rgba(0, 0, 0, 0);
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide img {
  z-index: 1;
  width: min(128%, 128rem);
  max-width: none;
  opacity: 0.5;
  transform: scale(0.5) rotate(20deg);
  transform-origin: center center;
  transition: all 0.6s;
}
@media (max-width: 768px) {
  section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide img {
    left: -4rem;
    position: relative;
  }
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide h3 {
  position: absolute;
  left: 0;
  top: 80%;
  transform: translateY(-50%);
  z-index: 3;
  opacity: 0;
  visibility: hidden;
  line-height: 0.9;
  font-size: clamp(4.4rem, 4.2718446602vw + 2.7980582524rem, 11rem);
  transition:
    opacity 0.3s ease,
    visibility 0.3s ease;
}
@media (max-width: 1400px) {
  section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide h3 {
    left: 2rem;
    top: 90%;
  }
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide h3 br {
  display: block !important;
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide.swiper-slide-active {
  opacity: 1;
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide.swiper-slide-active h3 {
  opacity: 1;
  visibility: visible;
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-slide.swiper-slide-active img {
  transform: scale(1) rotate(20deg);
  opacity: 1;
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-nav {
  position: absolute;
  top: 50%;
  z-index: 5;
  width: clamp(4.2rem, 1.4239482201vw + 3.6660194175rem, 6.4rem);
  height: clamp(4.2rem, 1.4239482201vw + 3.6660194175rem, 6.4rem);
  border: 0;
  border-radius: 999rem;
  background: rgba(0, 0, 0, 0.75);
  transform: translateY(-50%);
  cursor: pointer;
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-nav[data-menu-prev] {
  left: clamp(1.6rem, 3.1067961165vw + 0.4349514563rem, 6.4rem);
}
section[data-brand-menu-space] .menu-frame .menu-swiper .menu-nav[data-menu-next] {
  right: clamp(1.6rem, 3.1067961165vw + 0.4349514563rem, 6.4rem);
}
section[data-brand-menu-space] .menu-frame .menu-frame__cta {
  z-index: 7;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin: 0;
  gap: clamp(2.8rem, 1.8122977346vw + 2.1203883495rem, 5.6rem);
}
section[data-brand-menu-space] .menu-frame .menu-warn {
  position: relative;
  width: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(0.4rem, 0.2588996764vw + 0.3029126214rem, 0.8rem);
}
section[data-brand-menu-space] .menu-frame .menu-warn__above,
section[data-brand-menu-space] .menu-frame .menu-warn__below {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(0.2rem, 0.1294498382vw + 0.1514563107rem, 0.4rem);
  width: 100%;
  max-width: 100%;
  text-align: center;
  overflow: hidden;
}
section[data-brand-menu-space] .menu-frame .menu-warn__above span,
section[data-brand-menu-space] .menu-frame .menu-warn__below span {
  display: block;
  width: max-content;
  max-width: 100%;
  margin-inline: auto;
  color: red;
  font-size: clamp(1.2rem, 0.7766990291vw + 0.9087378641rem, 2.4rem);
  font-weight: 800;
  line-height: 1.15;
  white-space: nowrap;
  text-shadow: 0 0 1.2rem rgba(255, 0, 0, 0.52);
  animation: brand-menu-caution-flash 1.12s steps(2, end) infinite;
}
section[data-brand-menu-space] .menu-frame .menu-warn__above span:nth-child(2) {
  transform: translateX(clamp(0.4rem, 0.3883495146vw + 0.254368932rem, 1rem));
  opacity: 1;
  animation-delay: 0.18s;
}
section[data-brand-menu-space] .menu-frame .menu-warn__below span:nth-child(1) {
  transform: translateX(clamp(-0.4rem, -0.3883495146vw - 0.254368932rem, -1rem));
  opacity: 1;
  animation-delay: 0.34s;
}
section[data-brand-menu-space] .menu-frame .menu-warn__above span:nth-child(1),
section[data-brand-menu-space] .menu-frame .menu-warn__below span:nth-child(2) {
  --brand-menu-caution-opacity: 0.48;
  --brand-menu-caution-dim-opacity: 0.14;
  opacity: 0.48;
  filter: blur(0.1rem);
  animation-delay: 0.52s;
}
section[data-brand-menu-space] .menu-frame .menu-warn__body {
  position: relative;
  width: 100%;
  min-height: clamp(5.2rem, 2.071197411vw + 4.4233009709rem, 8.4rem);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1.4rem, 0.6472491909vw + 1.1572815534rem, 2.4rem)
    clamp(1.8rem, 1.1650485437vw + 1.3631067961rem, 3.6rem);
  box-sizing: border-box;
  overflow: hidden;
  background: rgba(0, 0, 0, 0);
  isolation: isolate;
  filter: drop-shadow(0 0 2.2rem rgba(255, 0, 0, 0.2));
}
section[data-brand-menu-space] .menu-frame .menu-warn__body::before {
  content: '';
  position: absolute;
  inset: 0 -8%;
  z-index: 0;
  background:
    radial-gradient(ellipse at center, rgba(255, 68, 42, 0.86) 0%, rgba(206, 0, 0, 0.72) 32%, rgba(72, 0, 0, 0) 74%),
    linear-gradient(180deg, rgba(44, 0, 0, 0.96) 0%, rgba(224, 0, 0, 0.9) 48%, rgba(38, 0, 0, 0.96) 100%),
    linear-gradient(
      90deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(111, 0, 0, 0.34) 12%,
      rgba(190, 0, 0, 0.94) 36%,
      rgba(255, 0, 0, 0.96) 50%,
      rgba(190, 0, 0, 0.94) 64%,
      rgba(111, 0, 0, 0.34) 88%,
      rgba(0, 0, 0, 0) 100%
    );
  background-blend-mode: screen, multiply, normal;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 14%, #000 86%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 14%, #000 86%, transparent 100%);
  animation: menu-warn-body-gradient 2.4s ease-in-out infinite;
  pointer-events: none;
}
section[data-brand-menu-space] .menu-frame .menu-warn__body::after {
  content: '';
  position: absolute;
  inset: -45% -6%;
  z-index: 0;
  background:
    linear-gradient(115deg, transparent 4%, rgba(73, 0, 0, 0.9) 16%, transparent 34%),
    linear-gradient(115deg, transparent 70%, rgba(255, 98, 164, 0.42) 74%, transparent 78%),
    linear-gradient(245deg, transparent 6%, rgba(0, 164, 194, 0.22) 10%, transparent 17%);
  opacity: 0.78;
  mix-blend-mode: screen;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, transparent 28%, transparent 72%, #000 100%);
  mask-image: linear-gradient(90deg, #000 0%, transparent 28%, transparent 72%, #000 100%);
  pointer-events: none;
}
section[data-brand-menu-space] .menu-frame .menu-warn__body strong {
  position: relative;
  z-index: 1;
  display: block;
  max-width: 100%;
  font-size: clamp(1.6rem, 0.6472491909vw + 1.3572815534rem, 2.6rem);
  font-weight: 800;
  line-height: 1.38;
  text-align: center;
  text-shadow:
    0 0.08em 0.2em rgba(0, 0, 0, 0.45),
    0 0.02em 0.06em rgba(0, 0, 0, 0.35);
}
@media (prefers-reduced-motion: reduce) {
  section[data-brand-menu-space] .menu-frame .menu-warn__above span,
  section[data-brand-menu-space] .menu-frame .menu-warn__below span {
    animation: none;
  }
}
@keyframes menu-warn-body-gradient {
  0%,
  100% {
    opacity: 0.5;
    filter: brightness(0.88) saturate(0.95);
  }
  50% {
    opacity: 1;
    filter: brightness(1.12) saturate(1.1);
  }
}
.power-sec .box {
  border: 1px solid #6e7378;
}
@media (max-width: 544px) {
  .power-sec .box {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
.power-sec .logos {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(5.4rem, 3.7540453074vw + 3.9922330097rem, 11.2rem);
}
@media (max-width: 544px) {
  .power-sec .logos {
    gap: 2.4rem;
  }
}
.power-sec .logos img {
  display: block;
  width: auto;
  max-width: min(44%, 30.2rem);
  height: auto;
  object-fit: contain;
}
.power-sec .txt {
  display: grid;
  gap: clamp(2.4rem, 1.0355987055vw + 2.0116504854rem, 4rem);
}
.sub-menu {
  position: relative;
}
.sub-menu .tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: clamp(1.2rem, 1.4239482201vw + 0.6660194175rem, 3.4rem);
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.sub-menu .tab {
  padding-bottom: clamp(0.6rem, 0.2588996764vw + 0.5029126214rem, 1rem);
  margin-bottom: -1px;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  transition:
    color var(--tran-3),
    border-color var(--tran-3);
}
.sub-menu .tab.is-active {
  color: var(--clr-primary-500);
  font-weight: 700;
  border-bottom-color: var(--clr-primary-500);
}
.sub-menu .tab:hover:not(.is-active) {
  color: var(--clr-primary-500);
}
.sub-menu .menu-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(4.2rem, 1.4239482201vw + 3.6660194175rem, 6.4rem) clamp(2.4rem, 0.7766990291vw + 2.1087378641rem, 3.6rem);
  transition: opacity 0.18s ease;
}
.sub-menu .menu-list.is-switching {
  opacity: 0.3;
  pointer-events: none;
}
@media (max-width: 1024px) {
  .sub-menu .menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 544px) {
  .sub-menu .menu-list {
    grid-template-columns: 1fr;
  }
}
.sub-menu .item {
  min-width: 0;
  --menu-particle-mask: url('/assets/images/particle.svg');
  --menu-particle-color: #b9ff03;
  --menu-particle-muted: #a7d94a;
}
.sub-menu .item[data-category='pizza'] {
  --menu-particle-color: #6200ea;
  --menu-particle-muted: #7a3fe0;
}
.sub-menu .item[data-category='chicken'] {
  --menu-particle-color: #b9ff03;
  --menu-particle-muted: #a7d94a;
}
.sub-menu .item[data-category='set'] {
  --menu-particle-color: #ea41fd;
  --menu-particle-muted: #de6bea;
}
.sub-menu .item[data-category='side'] {
  --menu-particle-color: #ffe627;
  --menu-particle-muted: #ead756;
}
.sub-menu .item[hidden] {
  display: none;
}
.sub-menu .link {
  display: block;
}
.sub-menu .link:hover .particle,
.sub-menu .link:focus-visible .particle {
  background-color: var(--menu-particle-color);
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.02);
}
.sub-menu .link:hover .food,
.sub-menu .link:focus-visible .food {
  transform: rotate(-20deg) scale(1.1);
}
.sub-menu .item.is-featured .link:not(:hover):not(:focus-visible) .particle {
  opacity: 0.65;
  transform: translate(-50%, -50%) scale(1.02);
}
.sub-menu .visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(22rem, 5.1779935275vw + 20.0582524272rem, 30rem);
}
.sub-menu .particle,
.sub-menu .food {
  display: block;
}
.sub-menu .particle {
  position: absolute;
  left: 47%;
  top: 52%;
  z-index: 0;
  width: clamp(26rem, 9.0614886731vw + 22.6019417476rem, 40rem);
  aspect-ratio: 454/320;
  background-color: var(--menu-particle-muted);
  opacity: 0.45;
  transform: translate(-50%, -50%);
  -webkit-mask-image: var(--menu-particle-mask);
  mask-image: var(--menu-particle-mask);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition:
    background-color var(--tran-3),
    opacity var(--tran-3),
    transform var(--tran-3);
}
.sub-menu .food {
  position: relative;
  z-index: 1;
  width: min(100%, clamp(24rem, 5.8252427184vw + 21.8155339806rem, 33rem));
  height: auto;
  transform: rotate(0deg) scale(1);
  transform-origin: center center;
  transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}
.sub-menu .visual-title {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  text-align: center;
  transition: color var(--tran-3);
}
.sub-menu .price {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
}
.sub-menu .price span {
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}
@keyframes menu-shimmer {
  0% {
    background-position: -200% center;
  }
  100% {
    background-position: 200% center;
  }
}
.menu-skeleton__tab {
  width: clamp(7.2rem, 1.5533980583vw + 6.6174757282rem, 9.6rem);
  height: 1.25em;
  border-radius: 4px;
  background: linear-gradient(90deg, #e8e8e8 25%, #f4f4f4 50%, #e8e8e8 75%);
  background-size: 200% 100%;
  animation: menu-shimmer 1.4s infinite linear;
}
.menu-skeleton__item {
  pointer-events: none;
}
.menu-skeleton__visual {
  border-radius: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
  min-height: clamp(22rem, 5.1779935275vw + 20.0582524272rem, 30rem);
  background: linear-gradient(90deg, #e8e8e8 25%, #f4f4f4 50%, #e8e8e8 75%);
  background-size: 200% 100%;
  animation: menu-shimmer 1.4s infinite linear;
}
.menu-skeleton__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  margin-top: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
}
.menu-skeleton__line {
  border-radius: 4px;
  background: linear-gradient(90deg, #e8e8e8 25%, #f4f4f4 50%, #e8e8e8 75%);
  background-size: 200% 100%;
  animation: menu-shimmer 1.4s infinite linear;
}
.menu-skeleton__line--name {
  width: 60%;
  height: 1.2em;
}
.menu-skeleton__line--tag {
  width: 45%;
  height: 0.9em;
  animation-delay: 0.1s;
}
.menu-skeleton__line--price {
  width: 35%;
  height: 1em;
  animation-delay: 0.2s;
}
.menu-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.2rem, 0.2588996764vw + 1.1029126214rem, 1.6rem);
  padding: clamp(6.4rem, 2.071197411vw + 5.6233009709rem, 9.6rem) 0;
  text-align: center;
}
.menu-empty[hidden] {
  display: none;
}
.menu-empty__icon {
  font-size: clamp(4rem, 1.0355987055vw + 3.6116504854rem, 5.6rem);
  line-height: 1;
}
.sub-menu-detail {
  position: relative;
  padding-top: calc(var(--header-height) + clamp(5.2rem, 1.5533980583vw + 4.6174757282rem, 7.6rem));
}
.sub-menu-detail .hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(3.6rem, 1.8122977346vw + 2.9203883495rem, 6.4rem);
  align-items: start;
}
@media (max-width: 1024px) {
  .sub-menu-detail .hero {
    grid-template-columns: 1fr;
  }
}
.sub-menu-detail .visual-wrap {
  display: flex;
  justify-content: center;
}
.sub-menu-detail .visual {
  width: min(100%, clamp(56rem, 9.0614886731vw + 52.6019417476rem, 70rem));
}
.sub-menu-detail .visual img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.sub-menu-detail .summary {
  padding-top: clamp(0.4rem, 0.5177993528vw + 0.2058252427rem, 1.2rem);
}
.sub-menu-detail .head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: clamp(2rem, 0.7766990291vw + 1.7087378641rem, 3.2rem);
  padding-bottom: clamp(1.6rem, 0.3883495146vw + 1.454368932rem, 2.2rem);
  border-bottom: 1px solid rgba(0, 0, 0, 0.14);
}
@media (max-width: 544px) {
  .sub-menu-detail .head {
    flex-direction: column;
  }
}
.sub-menu-detail .title-group {
  min-width: 0;
}
.sub-menu-detail .order-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(12rem, 2.2006472492vw + 11.1747572816rem, 15.4rem);
  min-height: clamp(3.2rem, 0.5177993528vw + 3.0058252427rem, 4rem);
  padding: 0 clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  border-radius: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  background: var(--clr-base-black);
  color: var(--clr-base-white);
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
.sub-menu-detail .order-button:hover {
  background: var(--clr-primary-500);
}
.sub-menu-detail .price strong {
  display: inline-block;
}
.sub-menu-detail .info-card {
  display: grid;
}
.sub-menu-detail .info-block + .info-block {
  margin-top: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  padding-top: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  border-top: 1px solid rgba(0, 0, 0, 0.14);
}
.sub-menu-detail .detail-facts {
  display: grid;
  gap: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  margin: 0;
}
.sub-menu-detail .detail-facts__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  padding: clamp(1rem, 0.1294498382vw + 0.9514563107rem, 1.2rem) clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  border-radius: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  background: rgba(0, 0, 0, 0.04);
}
@media (max-width: 544px) {
  .sub-menu-detail .detail-facts__item {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.4rem;
  }
}
.sub-menu-detail .detail-facts__label,
.sub-menu-detail .detail-facts__value {
  margin: 0;
}
.sub-menu-detail .detail-facts__value {
  text-align: right;
  color: var(--clr-base-black);
}
@media (max-width: 544px) {
  .sub-menu-detail .detail-facts__value {
    text-align: left;
  }
}
.sub-menu-detail .meta-actions {
  display: flex;
  flex-wrap: nowrap;
  gap: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
}
@media (max-width: 544px) {
  .sub-menu-detail .meta-actions {
    flex-wrap: wrap;
  }
}
.sub-menu-detail .pill-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 0;
  line-height: 1.1;
  min-width: 0;
  min-height: clamp(3.8rem, 0.3883495146vw + 3.654368932rem, 4.4rem);
  padding: 0.5rem clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  border: 1px solid var(--clr-base-black);
  border-radius: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  color: var(--clr-base-black);
  transition:
    background-color var(--tran-3),
    color var(--tran-3),
    border-color var(--tran-3);
}
.sub-menu-detail .pill-button:hover {
  background: var(--clr-base-black);
  color: var(--clr-base-white);
  border-color: var(--clr-base-black);
}
.sub-menu-detail .pill-button:last-child {
  flex-grow: 1.6;
}
.sub-menu-detail .notice {
  max-width: none;
  color: var(--clr-text-desc);
}
.sub-menu-detail .detail-banner {
  border-radius: clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem);
  overflow: hidden;
  background-color: #f3f3f3;
  background-image:
    linear-gradient(45deg, rgba(0, 0, 0, 0.05) 25%, transparent 25%),
    linear-gradient(-45deg, rgba(0, 0, 0, 0.05) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, rgba(0, 0, 0, 0.05) 75%),
    linear-gradient(-45deg, transparent 75%, rgba(0, 0, 0, 0.05) 75%);
  background-size: 10rem 10rem;
  background-position:
    0 0,
    0 5rem,
    5rem -5rem,
    -5rem 0;
}
.sub-menu-detail .detail-banner__inner {
  min-height: clamp(22rem, 5.1779935275vw + 20.0582524272rem, 30rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
  padding: clamp(2.8rem, 0.7766990291vw + 2.5087378641rem, 4rem);
  text-align: center;
  color: var(--clr-text-desc);
  background: hsla(0, 0%, 100%, 0.3);
}
.menu-info-modal .content .scroll-box {
  padding-top: 0;
}
.menu-info-modal .content .scroll-box img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
@media (max-width: 768px) {
  .menu-info-modal {
    width: calc(100vw - 2.4rem);
    height: auto;
    max-height: calc(100vh - 2.4rem);
  }
  .menu-info-modal .content {
    height: auto;
    max-height: calc(100vh - 10rem);
  }
  .menu-info-modal .content .scroll-box {
    height: auto;
    max-height: calc(100vh - 10rem);
  }
}
.menu-info-modal__empty {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 12rem;
  padding: 2rem;
  text-align: center;
  color: var(--no-color-grey-400, #9ca3af);
  font-size: 1.4rem;
}
.sub-events {
  position: relative;
  overflow: hidden;
}
.sub-events .events-wrap {
  position: relative;
  padding-top: clamp(3.2rem, 1.5533980583vw + 2.6174757282rem, 5.6rem);
}
.sub-events .events-wrap .events-empty {
  padding: clamp(2.4rem, 1.5533980583vw + 1.8174757282rem, 4.8rem) 0;
  color: #6f6876;
}
.sub-events .events-wrap.end .events-list li {
  opacity: 0.5;
}
.sub-events .events-wrap .events-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem 2rem;
}
@media (max-width: 1024px) {
  .sub-events .events-wrap .events-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 544px) {
  .sub-events .events-wrap .events-list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.sub-events .events-wrap .events-list li a {
  display: flex;
  flex-direction: column;
  height: 100%;
  border: 1px solid rgba(0, 0, 0, 0.08);
  background: var(--clr-base-white);
  transition:
    transform var(--tran-3),
    border-color var(--tran-3);
}
.sub-events .events-wrap .events-list li a:hover {
  border-color: rgba(98, 0, 234, 0.2);
}
.sub-events .events-wrap .events-list li a:hover figure img {
  transform: scale(1.1);
}
.sub-events .events-wrap .events-list li a:hover .txt h3,
.sub-events .events-wrap .events-list li a:hover .bottom > span:last-child {
  color: var(--clr-primary-500);
}
.sub-events .events-wrap .events-list li a figure {
  aspect-ratio: 310/230;
  overflow: hidden;
  position: relative;
  display: flex;
  border-radius: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem)
    clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem) 0 0;
}
.sub-events .events-wrap .events-list li a figure .badge {
  position: absolute;
  left: 1.6rem;
  top: 1.6rem;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  min-height: 3rem;
  padding: 0 1.2rem;
  border-radius: 99rem;
}
.sub-events .events-wrap .events-list li a figure .badge.live {
  background: var(--clr-secondary-500);
  color: var(--clr-primary-500);
}
.sub-events .events-wrap .events-list li a figure .badge.ended {
  background: var(--clr-base-white);
  color: #6f6876;
}
.sub-events .events-wrap .events-list li a figure .badge .space {
  letter-spacing: 0.2rem;
}
.sub-events .events-wrap .events-list li a figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--tran-3);
}
.sub-events .events-wrap .events-list li a .txt h3 {
  transition: color var(--tran-3);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.sub-events .events-wrap .events-list li a .txt p {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.sub-events .events-wrap .events-list li a .bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  border-top: 1px dashed rgba(0, 0, 0, 0.14);
}
.sub-events .events-wrap .events-list li a .bottom time {
  letter-spacing: 0.08em;
}
.sub-events .events-wrap .events-list li a .bottom > span:last-child {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  transition: color var(--tran-3);
  white-space: nowrap;
}
.sub-events.detail-page .detail {
  border-top: 1px solid var(--clr-gray-100);
}
.sub-events.detail-page .detail.ended > :not(.action) {
  opacity: 0.5;
}
.sub-events.detail-page .detail .head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(1.6rem, 1.0355987055vw + 1.2116504854rem, 3.2rem);
  padding-top: clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  margin-bottom: clamp(2.4rem, 0.7766990291vw + 2.1087378641rem, 3.6rem);
}
@media (max-width: 544px) {
  .sub-events.detail-page .detail .head {
    flex-direction: column;
  }
}
.sub-events.detail-page .detail .summary {
  min-width: 0;
}
.sub-events.detail-page .detail .summary h3 {
  color: var(--clr-base-black);
}
.sub-events.detail-page .detail .summary p {
  margin-top: 0.8rem;
  color: var(--clr-base-black);
}
.sub-events.detail-page .detail .direct,
.sub-events.detail-page .detail .list-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
.sub-events.detail-page .detail .direct {
  min-width: clamp(13.2rem, 2.0064724919vw + 12.4475728155rem, 16.3rem);
  min-height: clamp(4.2rem, 0.5177993528vw + 4.0058252427rem, 5rem);
  padding-inline: clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem);
  border-radius: clamp(0.8rem, 0.5177993528vw + 0.6058252427rem, 1.6rem);
  background: var(--clr-base-black);
  color: var(--clr-base-white);
}
.sub-events.detail-page .detail .direct:hover {
  background: var(--clr-primary-500);
  color: var(--clr-base-white);
}
.sub-events.detail-page .detail .content {
  color: var(--clr-base-black);
}
.sub-events.detail-page .detail .content img {
  display: block;
  width: 100%;
  height: auto;
}
.sub-events.detail-page .detail .content p,
.sub-events.detail-page .detail .content ul,
.sub-events.detail-page .detail .content ol,
.sub-events.detail-page .detail .content table,
.sub-events.detail-page .detail .content figure {
  margin-bottom: 1.2rem;
}
.sub-events.detail-page .action {
  display: flex;
  justify-content: center;
}
.sub-events.detail-page .list-button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  min-width: clamp(14.2rem, 2.5889967638vw + 13.2291262136rem, 18.2rem);
  min-height: clamp(5rem, 0.6472491909vw + 4.7572815534rem, 6rem);
  padding: 0 3rem;
  border-radius: 99rem;
  background: var(--clr-yellow-500);
  color: var(--clr-base-black);
  gap: 2rem;
  line-height: 1;
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
.sub-events.detail-page .list-button svg {
  width: 1.1rem;
  height: 1.1rem;
  flex: 0 0 auto;
}
.sub-events.detail-page .list-button:hover {
  background: var(--clr-yellow-700);
}
.sub-notice {
  position: relative;
  overflow: hidden;
}
.sub-notice .notice .tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(2.8rem, 1.0355987055vw + 2.4116504854rem, 4.4rem);
  min-height: 4.2rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.16);
}
.sub-notice .notice .tab {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 4.2rem;
  color: var(--clr-base-black);
  transition: color var(--tran-3);
}
.sub-notice .notice .tab::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.1rem;
  height: 0.2rem;
  background: var(--clr-primary-500);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform var(--tran-3);
}
.sub-notice .notice .tab:hover,
.sub-notice .notice .tab.is-active {
  color: var(--clr-primary-500);
}
.sub-notice .notice .tab:hover::after,
.sub-notice .notice .tab.is-active::after {
  transform: scaleX(1);
}
.sub-notice .notice .list {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.sub-notice .notice .link {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(1.6rem, 1.5533980583vw + 1.0174757282rem, 4rem);
  min-height: clamp(5.6rem, 1.0355987055vw + 5.2116504854rem, 7.2rem);
  border: 1px solid rgba(0, 0, 0, 0.12);
  transition:
    border-color var(--tran-3),
    background-color var(--tran-3);
}
.sub-notice .notice .link:hover {
  border-color: var(--clr-primary-500);
  background: rgba(98, 0, 234, 0.04);
}
.sub-notice .notice .link:hover strong {
  color: var(--clr-primary-500);
}
@media (max-width: 544px) {
  .sub-notice .notice .link {
    grid-template-columns: 1fr;
    align-items: flex-start;
    gap: 0.8rem;
  }
}
.sub-notice .notice .link > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(5.8rem, 0.7766990291vw + 5.5087378641rem, 7rem);
  min-height: clamp(3rem, 0.3883495146vw + 2.854368932rem, 3.6rem);
  padding-inline: 1.2rem;
  background: var(--clr-base-black);
  line-height: 1;
}
.sub-notice .notice .link strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color var(--tran-3);
}
@media (max-width: 544px) {
  .sub-notice .notice .link strong {
    white-space: normal;
  }
}
.sub-notice .notice time {
  white-space: nowrap;
}
.sub-notice .notice .empty {
  padding: clamp(5.6rem, 1.5533980583vw + 5.0174757282rem, 8rem) 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.sub-notice .notice .pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
}
.sub-notice .notice .page {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  min-width: clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  min-height: clamp(2.8rem, 0.6472491909vw + 2.5572815534rem, 3.8rem);
  color: var(--clr-base-black);
  line-height: 1;
  transition: color var(--tran-3);
}
.sub-notice .notice .page::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  width: clamp(1.8rem, 0.5177993528vw + 1.6058252427rem, 2.6rem);
  height: 2px;
  background: var(--clr-primary-500);
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  transition: transform var(--tran-3);
}
.sub-notice .notice .page:hover,
.sub-notice .notice .page.is-active {
  color: var(--clr-primary-500);
}
.sub-notice .notice .page.is-active::after {
  transform: translateX(-50%) scaleX(1);
}
.sub-notice .notice .arrow::after {
  content: none;
}
.sub-notice .notice .prev .icon,
.sub-notice .notice .first .icon {
  transform: rotate(180deg);
}
.sub-notice .notice .icon {
  width: clamp(0.4rem, 0.1294498382vw + 0.3514563107rem, 0.6rem);
  height: clamp(0.7rem, 0.1941747573vw + 0.627184466rem, 1rem);
  background: currentColor;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.sub-stores {
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(0, 0, 0, 0.12);
}
.sub-stores .grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto minmax(0, 1fr);
  grid-template-areas: 'filters map' 'list map';
  height: calc(100vh - 8rem);
  min-height: 68rem;
  max-height: 84rem;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .sub-stores .grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    grid-template-areas: 'filters' 'map' 'list';
    height: auto;
    max-height: none;
    overflow: visible;
  }
}
.sub-stores .filters {
  grid-area: filters;
  padding: clamp(2.2rem, 0.6472491909vw + 1.9572815534rem, 3.2rem)
    clamp(2.4rem, 3.3656957929vw + 1.1378640777rem, 7.6rem) clamp(2.4rem, 0.6472491909vw + 2.1572815534rem, 3.4rem);
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.sub-stores .filters h3 {
  margin-bottom: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
  color: var(--clr-base-black);
}
.sub-stores .filters .selects {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1.2rem, 0.2588996764vw + 1.1029126214rem, 1.6rem);
}
@media (max-width: 544px) {
  .sub-stores .filters .selects {
    grid-template-columns: 1fr;
  }
}
.sub-stores .filters .select {
  position: relative;
  display: block;
}
.sub-stores .filters .select::after {
  content: '';
  position: absolute;
  top: 50%;
  right: clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem);
  width: 0.8rem;
  height: 0.8rem;
  border-right: 1px solid rgba(0, 0, 0, 0.42);
  border-bottom: 1px solid rgba(0, 0, 0, 0.42);
  transform: translateY(-65%) rotate(45deg);
  pointer-events: none;
}
.sub-stores .filters select {
  width: 100%;
  min-height: clamp(4.6rem, 0.5177993528vw + 4.4058252427rem, 5.4rem);
  padding: 0 clamp(4.2rem, 0.5177993528vw + 4.0058252427rem, 5rem) 0
    clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  border: 1px solid rgba(0, 0, 0, 0.65);
  border-radius: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
  background: var(--clr-base-white);
  font-size: var(--body-lg-fs);
  font-weight: var(--body-lg-fw);
  line-height: var(--body-lg-lh);
  color: rgba(0, 0, 0, 0.42);
  appearance: none;
  cursor: pointer;
}
.sub-stores .list {
  grid-area: list;
  min-height: 0;
  height: 100%;
  max-height: 100%;
  padding: clamp(3.2rem, 2.071197411vw + 2.4233009709rem, 6.4rem) clamp(2.4rem, 2.071197411vw + 1.6233009709rem, 5.6rem)
    clamp(4.8rem, 1.0355987055vw + 4.4116504854rem, 6.4rem) clamp(2.4rem, 3.3656957929vw + 1.1378640777rem, 7.6rem);
  overflow-x: hidden;
  overflow-y: scroll;
  overscroll-behavior: contain;
  display: flex;
  flex-direction: column;
  gap: clamp(2.8rem, 0.5177993528vw + 2.6058252427rem, 3.6rem);
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.sub-stores .list::-webkit-scrollbar {
  display: none;
}
@media (max-width: 1024px) {
  .sub-stores .list {
    height: auto;
    max-height: none;
    overflow: visible;
  }
}
.sub-stores .list .empty {
  padding: clamp(4.8rem, 2.071197411vw + 4.0233009709rem, 8rem) 0;
  color: var(--clr-base-black);
  text-align: center;
}
.sub-stores .card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(24rem, 32rem) minmax(0, 1fr);
  gap: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
  padding: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem) clamp(0rem, 0vw + 0rem, 0rem)
    clamp(2.8rem, 0.5177993528vw + 2.6058252427rem, 3.6rem) clamp(0rem, 0vw + 0rem, 0rem);
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  cursor: pointer;
  outline: 0;
  transition:
    border-color var(--tran-3),
    background var(--tran-3);
}
.sub-stores .card::before {
  content: '';
  position: absolute;
  left: calc(-1 * clamp(2.4rem, 3.3656957929vw + 1.1378640777rem, 7.6rem));
  top: 0;
  bottom: 0;
  width: 0.3rem;
  background: var(--clr-primary-500);
  border-radius: 0 0.3rem 0.3rem 0;
  opacity: 0;
  transform: scaleY(0.6);
  transition:
    opacity var(--tran-3),
    transform var(--tran-3);
}
@media (max-width: 1024px) {
  .sub-stores .card::before {
    display: none;
  }
}
.sub-stores .card[hidden] {
  display: none;
}
.sub-stores .card:hover h3 {
  color: var(--clr-primary-500);
}
.sub-stores .card.is-active::before {
  opacity: 1;
  transform: scaleY(1);
}
.sub-stores .card.is-active h3 {
  color: var(--clr-primary-500);
}
.sub-stores .card.is-active .thumb img {
  transform: scale(1.04);
}
@media (max-width: 544px) {
  .sub-stores .card {
    grid-template-columns: 1fr;
  }
}
.sub-stores .card .thumb {
  position: relative;
  overflow: hidden;
  aspect-ratio: 270/360;
  border-radius: clamp(0.6rem, 0.2588996764vw + 0.5029126214rem, 1rem);
}
.sub-stores .card .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.sub-stores .card .info {
  min-width: 0;
  padding-top: clamp(0.8rem, 0.3883495146vw + 0.654368932rem, 1.4rem);
  color: var(--clr-base-black);
}
.sub-stores .card .info h3 {
  transition: color var(--tran-3);
}
.sub-stores .card .info .badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
}
.sub-stores .card .info .badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  min-height: clamp(2.8rem, 0.3883495146vw + 2.654368932rem, 3.4rem);
  padding: 0 clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
  background: var(--clr-pink-500);
  color: var(--clr-base-white);
  border-radius: 0.4rem;
  line-height: 1;
  border: 1px solid var(--clr-pink-500);
}
.sub-stores .card .info .badge i {
  font-size: 1.1rem;
}
.sub-stores .card .info .badge:hover {
  background-color: #fff;
  color: var(--clr-pink-500);
}
.sub-stores .card .info .address {
  margin-top: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
}
.sub-stores .card .info .phone {
  margin-top: 1rem;
}
.sub-stores .card .info dl {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
  margin-top: clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem);
}
.sub-stores .card .info dl dt {
  margin-bottom: 0.8rem;
}
.sub-stores .card .info .card-actions {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.sub-stores .card .info .card-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  min-height: clamp(3.6rem, 0.3883495146vw + 3.454368932rem, 4.2rem);
  padding: 0 clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  border-radius: clamp(0.6rem, 0.1294498382vw + 0.5514563107rem, 0.8rem);
  font-size: var(--body-sm-fs);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-family: inherit;
  cursor: pointer;
  transition:
    background var(--tran-2),
    color var(--tran-2),
    border-color var(--tran-2);
}
.sub-stores .card .info .card-btn i {
  font-size: 1.2rem;
}
.sub-stores .card .info .card-btn--map {
  background: var(--clr-pink-500);
  color: var(--clr-base-white);
  border: 1px solid var(--clr-pink-500);
}
.sub-stores .card .info .card-btn--map:hover {
  background-color: #fff;
  color: var(--clr-pink-500);
}
.sub-stores .card .info .card-btn--external {
  background: rgba(0, 0, 0, 0);
  color: var(--clr-base-black);
  border: 1.5px solid rgba(0, 0, 0, 0.3);
}
.sub-stores .card .info .card-btn--external:hover {
  border-color: var(--clr-base-black);
  background: var(--clr-base-black);
  color: var(--clr-base-white);
}
.sub-stores .map-area {
  grid-area: map;
  position: sticky;
  top: 0;
  min-height: 100%;
  border-left: 1px solid rgba(0, 0, 0, 0.12);
}
@media (max-width: 1024px) {
  .sub-stores .map-area {
    position: relative;
    min-height: 38rem;
    border-left: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  }
}
@media (max-width: 544px) {
  .sub-stores .map-area {
    min-height: 32rem;
  }
}
.sub-stores .map {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: inherit;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.05) 1px, transparent 1px),
    linear-gradient(rgba(0, 0, 0, 0.05) 1px, transparent 1px), #eee;
  background-size:
    4rem 4rem,
    4rem 4rem,
    auto;
}
.sub-stores .map .map-status {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2.4rem;
  color: var(--clr-base-black);
  text-align: center;
}
.store-tooltip {
  display: none;
}
@keyframes pinRipple {
  0% {
    transform: scale(0.8);
    opacity: 0.3;
  }
  100% {
    transform: scale(1.7);
    opacity: 0;
  }
}
.store-pin-ripple {
  position: absolute;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  background: var(--clr-primary-500);
  pointer-events: none;
  animation: pinRipple 2s ease-out infinite;
}
.sub-inquiry {
  position: relative;
  overflow: hidden;
  padding: 0;
  width: 100%;
}
.sub-inquiry .gate {
  display: flex;
  align-items: stretch;
  gap: 0;
  min-height: clamp(44rem, 39vw, 62rem);
}
@media (max-width: 768px) {
  .sub-inquiry .gate {
    flex-direction: column;
    min-height: auto;
  }
}
.sub-inquiry .gate .card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  flex: 1 1 50%;
  padding: clamp(3.2rem, 3vw, 9.2rem);
  overflow: hidden;
  color: var(--clr-base-white);
  isolation: isolate;
  transition:
    flex-basis var(--tran-3),
    min-height var(--tran-3),
    transform var(--tran-3);
}
.sub-inquiry .gate .card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 2;
  pointer-events: none;
  transition: opacity var(--tran-3);
}
@media (max-width: 768px) {
  .sub-inquiry .gate .card::after {
    display: none;
  }
}
@media (max-width: 768px) {
  .sub-inquiry .gate .card {
    min-height: 28rem;
    padding: 3.2rem 2.4rem;
    flex-basis: auto;
  }
}
.sub-inquiry .gate .card:hover {
  flex-basis: 54%;
}
.sub-inquiry .gate .card:hover::after {
  opacity: 0;
}
@media (max-width: 768px) {
  .sub-inquiry .gate .card:hover {
    min-height: 31rem;
  }
}
.sub-inquiry .gate:hover .card:not(:hover) > p:first-of-type,
.sub-inquiry .gate:hover .card:not(:hover) > strong,
.sub-inquiry .gate:hover .card:not(:hover) > span {
  opacity: 0.45;
}
.sub-inquiry .gate .card > p:first-of-type,
.sub-inquiry .gate .card > strong,
.sub-inquiry .gate .card > span,
.sub-inquiry .gate .card > p:last-of-type {
  position: relative;
  z-index: 1;
}
.sub-inquiry .gate .card > p:first-of-type {
  display: inline-flex;
  align-items: center;
  gap: 1.2rem;
  margin-bottom: clamp(2rem, 2vw, 3.6rem);
}
.sub-inquiry .gate .card > p:first-of-type .dot {
  width: 1rem;
  height: 1rem;
  border-radius: 999rem;
  background: currentColor;
  flex: 0 0 auto;
}
.sub-inquiry .gate .card > p:first-of-type .line {
  width: clamp(3.2rem, 3vw, 5rem);
  height: 1px;
  background: currentColor;
  opacity: 0.5;
}
.sub-inquiry .gate .card > strong {
  line-height: 0.9;
  margin-bottom: clamp(2.4rem, 2.5vw, 4.8rem);
  transition: opacity var(--tran-3);
}
.sub-inquiry .gate .card > span {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  min-width: clamp(16.4rem, 2.9773462783vw + 15.2834951456rem, 21rem);
  min-height: clamp(5.4rem, 1.0355987055vw + 5.0116504854rem, 7rem);
  padding: 0 clamp(2rem, 0.3883495146vw + 1.854368932rem, 2.6rem);
  border-radius: 99rem;
  background: rgba(7, 2, 16, 0.92);
  color: var(--clr-base-white);
  transition:
    opacity var(--tran-3),
    background-color var(--tran-3),
    color var(--tran-3);
}
.sub-inquiry .gate .card > span svg {
  width: 1.1rem;
  height: 1.1rem;
  flex: 0 0 auto;
}
.sub-inquiry .gate .card > span svg rect,
.sub-inquiry .gate .card > span svg path {
  transition: fill var(--tran-3);
}
.sub-inquiry .gate .card > p:last-of-type {
  display: none;
}
.sub-inquiry .gate .write {
  z-index: 2;
  align-items: flex-start;
  justify-content: center;
  background: var(--clr-primary-700);
  clip-path: polygon(0 0, 100% 0, 90% 100%, 0 100%);
}
.sub-inquiry .gate .write > p:first-of-type,
.sub-inquiry .gate .write > strong,
.sub-inquiry .gate .write > span {
  transform: translateY(-4rem);
}
.sub-inquiry .gate .write:hover > span {
  background: var(--clr-base-white);
  color: var(--clr-primary-700);
}
.sub-inquiry .gate .write:hover > span rect,
.sub-inquiry .gate .write:hover > span path {
  fill: var(--clr-primary-700);
}
@media (max-width: 768px) {
  .sub-inquiry .gate .write {
    clip-path: polygon(0 0, 100% 0, 100% 90%, 0 100%);
  }
  .sub-inquiry .gate .write > p:first-of-type,
  .sub-inquiry .gate .write > strong,
  .sub-inquiry .gate .write > span {
    transform: none;
  }
}
.sub-inquiry .gate .history {
  z-index: 1;
  align-items: flex-end;
  justify-content: center;
  text-align: right;
  margin-left: -20rem;
  padding-left: clamp(12rem, 14vw, 22rem);
  background: var(--clr-secondary-500);
  clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
}
.sub-inquiry .gate .history > p:first-of-type,
.sub-inquiry .gate .history > span,
.sub-inquiry .gate .history > p:last-of-type {
  margin-left: auto;
}
.sub-inquiry .gate .history > p:first-of-type,
.sub-inquiry .gate .history > strong,
.sub-inquiry .gate .history > span {
  transform: translateY(4rem);
}
.sub-inquiry .gate .history:hover > span {
  background: var(--clr-base-white);
  color: var(--clr-secondary-500);
}
.sub-inquiry .gate .history:hover > span rect,
.sub-inquiry .gate .history:hover > span path {
  fill: var(--clr-secondary-500);
}
@media (max-width: 768px) {
  .sub-inquiry .gate .history {
    margin-left: 0;
    margin-top: -3.2rem;
    padding-top: 5.6rem;
    padding-left: 2.4rem;
    clip-path: polygon(0 10%, 100% 0, 100% 100%, 0 100%);
  }
  .sub-inquiry .gate .history > p:first-of-type,
  .sub-inquiry .gate .history > strong,
  .sub-inquiry .gate .history > span {
    transform: none;
  }
}
.sub-form {
  position: relative;
  overflow: hidden;
}
.sub-form .form .grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.6rem, 1.0355987055vw + 1.2116504854rem, 3.2rem) clamp(2.4rem, 1.0355987055vw + 2.0116504854rem, 4rem);
}
@media (max-width: 768px) {
  .sub-form .form .grid {
    grid-template-columns: 1fr;
  }
}
.sub-form .form .field {
  min-width: 0;
}
.sub-form .form .field > label,
.sub-form .form .field > span {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-bottom: 0.8rem;
}
.sub-form .form .full {
  grid-column: 1/-1;
}
.sub-form .form .inline {
  display: grid;
  grid-template-columns: 9fr 3fr;
  align-items: center;
  gap: 1rem;
}
@media (max-width: 544px) {
  .sub-form .form .inline {
    grid-template-columns: 1fr;
  }
}
.sub-form .form .verified[hidden] {
  display: none !important;
}
.sub-form .form .verified:not([hidden]) {
  display: inline-flex;
  align-items: center;
}
.sub-form .form .verified {
  white-space: nowrap;
}
.sub-form .form .input,
.sub-form .form .textarea {
  width: 100%;
  border: 2px solid var(--clr-base-black);
  border-radius: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
  background: var(--clr-base-white);
  outline: none;
  transition: border-color var(--tran-3);
}
.sub-form .form .input::placeholder,
.sub-form .form .textarea::placeholder {
  color: rgba(0, 0, 0, 0.72);
}
.sub-form .form .input:focus,
.sub-form .form .textarea:focus {
  border-color: var(--clr-primary-500);
}
.sub-form .form .input {
  min-height: clamp(4.8rem, 0.6472491909vw + 4.5572815534rem, 5.8rem);
  padding: 0 clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
}
.sub-form .form .select {
  appearance: none;
  padding-right: 4.4rem;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(0, 0, 0, 0.45) 50%),
    linear-gradient(135deg, rgba(0, 0, 0, 0.45) 50%, transparent 50%);
  background-position:
    calc(100% - 2.2rem) 50%,
    calc(100% - 1.6rem) 50%;
  background-size: 0.6rem 0.6rem;
  background-repeat: no-repeat;
}
.sub-form .form .textarea {
  min-height: clamp(15rem, 3.2362459547vw + 13.786407767rem, 20rem);
  padding: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  resize: vertical;
}
.sub-form .form .button,
.sub-form .form .submit,
.sub-form .form .file-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
  background: var(--clr-base-black);
  cursor: pointer;
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
.sub-form .form .button {
  grid-column: 2;
  grid-row: 1;
  min-height: clamp(4.8rem, 0.6472491909vw + 4.5572815534rem, 5.8rem);
  padding-inline: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
}
.sub-form .form .button:hover {
  background: var(--clr-primary-500);
}
.sub-form .form .button.is-verified {
  background: var(--clr-primary-500);
  cursor: default;
  pointer-events: none;
}
@media (max-width: 544px) {
  .sub-form .form .button {
    grid-column: auto;
    grid-row: auto;
  }
}
.sub-form .form .checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.sub-form .form .check {
  display: flex;
  align-items: center;
  min-height: clamp(4.8rem, 0.6472491909vw + 4.5572815534rem, 5.8rem);
  padding: 0 clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  border: 2px solid var(--clr-base-black);
  border-radius: clamp(0.8rem, 0.2588996764vw + 0.7029126214rem, 1.2rem);
}
.sub-form .form .check input {
  appearance: none;
  position: relative;
  width: 1.6rem;
  height: 1.6rem;
  margin-right: 1rem;
  border: 2px solid var(--clr-base-black);
  border-radius: 0.4rem;
  background: var(--clr-base-white);
}
.sub-form .form .check input::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 45%;
  width: 0.5rem;
  height: 0.25rem;
  border-left: 2px solid var(--clr-base-black);
  border-bottom: 2px solid var(--clr-base-black);
  opacity: 0;
  transform: translate(-50%, -60%) rotate(-45deg);
}
.sub-form .form .check input:checked {
  border-color: var(--clr-primary-500);
  background: var(--clr-primary-500);
}
.sub-form .form .check input:checked::after {
  border-color: var(--clr-base-white);
  opacity: 1;
}
.sub-form .form .files {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.sub-form .form .file {
  display: grid;
  grid-template-columns: clamp(12rem, 1.9417475728vw + 11.2718446602rem, 15rem) minmax(0, 1fr);
  gap: 1rem;
}
@media (max-width: 544px) {
  .sub-form .form .file {
    grid-template-columns: 1fr;
  }
}
.sub-form .form .file > p {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: clamp(4.8rem, 0.5177993528vw + 4.6058252427rem, 5.6rem);
  padding: 0 clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
  border-radius: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  background: #dcdcdc;
}
.sub-form .form .file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
}
.sub-form .form .file-button {
  min-height: clamp(4.8rem, 0.5177993528vw + 4.6058252427rem, 5.6rem);
  padding-inline: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
}
.sub-form .form .file-button:hover,
.sub-form .form .file-button:focus-visible {
  background: var(--clr-primary-500);
}
.sub-form .form .footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
}
@media (max-width: 544px) {
  .sub-form .form .footer {
    flex-direction: column;
    align-items: stretch;
  }
}
.sub-form .form .privacy {
  display: flex;
  align-items: center;
}
.sub-form .form .privacy input {
  width: 2rem;
  height: 2rem;
  margin-right: 0.8rem;
  accent-color: var(--clr-primary-500);
}
.sub-form .form .privacy button {
  text-decoration: underline;
  text-underline-offset: 0.3rem;
}
.sub-form .form .submit {
  min-width: clamp(13.8rem, 2.071197411vw + 13.0233009709rem, 17rem);
  min-height: clamp(5.8rem, 0.3883495146vw + 5.654368932rem, 6.4rem);
  padding-inline: clamp(2.8rem, 0.5177993528vw + 2.6058252427rem, 3.6rem);
  border-radius: clamp(1.2rem, 0.1294498382vw + 1.1514563107rem, 1.4rem);
  background: rgba(7, 2, 16, 0.96);
}
.sub-form .form .submit:hover {
  background: var(--clr-secondary-500);
  color: var(--clr-base-black);
  border: 2px solid var(--clr-base-black);
}
.sub-form.history .grid {
  align-items: end;
}
.sub-form.history .privacy {
  min-height: clamp(4.8rem, 0.5177993528vw + 4.6058252427rem, 5.6rem);
}
.sub-form.history .submit {
  min-width: clamp(13.8rem, 1.9417475728vw + 13.0718446602rem, 16.8rem);
}
.sub-history .search .row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(15.4rem, 0.2588996764vw + 15.3029126214rem, 15.8rem);
  gap: 1.6rem;
}
@media (max-width: 544px) {
  .sub-history .search .row {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
.sub-history .search .field {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(12.8rem, 1.9417475728vw + 12.0718446602rem, 15.8rem);
  grid-column: 1/2;
  grid-row: 1;
  min-height: clamp(4.8rem, 0.5177993528vw + 4.6058252427rem, 5.6rem);
  border: 2px solid var(--clr-base-black);
  border-radius: 1.2rem;
  overflow: hidden;
}
@media (max-width: 544px) {
  .sub-history .search .field {
    grid-template-columns: minmax(0, 1fr) clamp(8.8rem, 1.2944983819vw + 8.3145631068rem, 10.8rem);
    min-height: 5.4rem;
  }
}
.sub-history .search .field .icon {
  position: absolute;
  left: clamp(1.6rem, 0.2588996764vw + 1.5029126214rem, 2rem);
  top: 50%;
  transform: translateY(-50%);
  font-size: clamp(1.6rem, 0.1294498382vw + 1.5514563107rem, 1.8rem);
  color: var(--clr-base-black);
  pointer-events: none;
  z-index: 1;
}
.sub-history .search input,
.sub-history .search .filter {
  width: 100%;
  min-height: clamp(4.8rem, 0.5177993528vw + 4.6058252427rem, 5.6rem);
  border: 2px solid var(--clr-base-black);
  border-radius: 1.2rem;
  background: var(--clr-base-white);
  color: var(--clr-base-black);
}
@media (max-width: 544px) {
  .sub-history .search input,
  .sub-history .search .filter {
    min-height: 5.4rem;
  }
}
.sub-history .search input {
  grid-column: 1/2;
  padding: 0 clamp(1.8rem, 0.2588996764vw + 1.7029126214rem, 2.2rem) 0
    clamp(4.4rem, 0.2588996764vw + 4.3029126214rem, 4.8rem);
  border: 0;
  border-radius: 0;
}
.sub-history .search .filter {
  grid-column: 2/3;
  grid-row: 1;
  appearance: none;
  padding: 0 clamp(1.6rem, 0.1294498382vw + 1.5514563107rem, 1.8rem);
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(0, 0, 0, 0.45) 50%),
    linear-gradient(135deg, rgba(0, 0, 0, 0.45) 50%, transparent 50%);
  background-position:
    calc(100% - 2.2rem) 50%,
    calc(100% - 1.6rem) 50%;
  background-size: 0.6rem 0.6rem;
  background-repeat: no-repeat;
}
.sub-history .search .button {
  grid-column: 1/2;
  grid-row: 1;
  justify-self: end;
  z-index: 1;
  min-width: clamp(12.8rem, 1.9417475728vw + 12.0718446602rem, 15.8rem);
  min-height: clamp(4.8rem, 0.5177993528vw + 4.6058252427rem, 5.6rem);
  border-radius: 1rem;
  background: var(--clr-base-black);
  color: var(--clr-base-white);
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
@media (max-width: 544px) {
  .sub-history .search .button {
    min-width: clamp(8.8rem, 1.2944983819vw + 8.3145631068rem, 10.8rem);
    min-height: 5.4rem;
  }
}
.sub-history .search .button:hover {
  background: var(--clr-primary-500);
}
.sub-history .list {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.sub-history .item {
  border: 1px solid rgba(0, 0, 0, 0.14);
  border-radius: 1.4rem;
  background: var(--clr-base-white);
  overflow: hidden;
}
.sub-history .item.is-open {
  border-color: var(--clr-base-black);
}
.sub-history .item.is-open .summary {
  border-bottom-color: rgba(25, 216, 42, 0.72);
}
.sub-history .item.is-open .arrow {
  transform: rotate(-135deg);
}
.sub-history .summary {
  width: 100%;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  padding: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem) clamp(1.8rem, 0.1294498382vw + 1.7514563107rem, 2rem);
  border-bottom: 1px solid rgba(0, 0, 0, 0);
  text-align: left;
}
@media (max-width: 544px) {
  .sub-history .summary {
    grid-template-columns: 7.6rem minmax(0, 1fr) auto;
    grid-template-areas: 'state . side' 'title title title';
    align-items: center;
    column-gap: 1.4rem;
    row-gap: 1rem;
    padding: 1.6rem 1.6rem 1.7rem;
  }
}
.sub-history .state {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 7.7rem;
  min-height: 4rem;
  padding-inline: 1.2rem;
  color: var(--clr-base-white);
  border-radius: 0;
}
.sub-history .state.is-done {
  background: var(--clr-secondary-500);
}
.sub-history .state.is-wait {
  background: var(--clr-base-black);
}
@media (max-width: 544px) {
  .sub-history .state {
    grid-area: state;
    min-width: 100%;
    min-height: 3.6rem;
    align-self: center;
    font-size: 1.2rem;
  }
}
.sub-history .title {
  min-width: 0;
  color: var(--clr-base-black);
}
@media (max-width: 544px) {
  .sub-history .title {
    grid-area: title;
    align-self: start;
    line-height: 1.4;
    font-size: 1.5rem;
    padding-top: 0.2rem;
    white-space: normal;
    overflow: visible;
    text-overflow: initial;
  }
}
.sub-history .meta-side {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: clamp(2rem, 1.0355987055vw + 1.6116504854rem, 3.6rem);
}
@media (max-width: 544px) {
  .sub-history .meta-side {
    grid-area: side;
    align-self: center;
  }
}
.sub-history .date {
  color: var(--clr-base-black);
  white-space: nowrap;
}
@media (max-width: 544px) {
  .sub-history .date {
    font-size: 1.4rem;
    line-height: 1;
    text-align: right;
  }
}
.sub-history .arrow {
  width: 0.9rem;
  height: 0.9rem;
  border-right: 2px solid var(--clr-base-black);
  border-bottom: 2px solid var(--clr-base-black);
  transform: rotate(45deg);
  transition: transform var(--tran-3);
}
@media (max-width: 544px) {
  .sub-history .arrow {
    margin-top: -0.5rem;
  }
}
.sub-history .body {
  padding: 0;
}
.sub-history .meta {
  display: grid;
  gap: 0.8rem;
  padding: clamp(1.8rem, 0.2588996764vw + 1.7029126214rem, 2.2rem) clamp(1.8rem, 0.1294498382vw + 1.7514563107rem, 2rem);
  border-bottom: 1px solid rgba(25, 216, 42, 0.56);
}
.sub-history .meta div {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
}
@media (max-width: 544px) {
  .sub-history .meta div {
    display: grid;
    grid-template-columns: 7rem minmax(0, 1fr);
    gap: 0.6rem;
  }
}
.sub-history .meta dt,
.sub-history .meta dd {
  color: var(--clr-base-black);
}
@media (max-width: 544px) {
  .sub-history .meta dt {
    white-space: nowrap;
  }
}
@media (max-width: 544px) {
  .sub-history .meta dd {
    min-width: 0;
    word-break: break-word;
  }
}
.sub-history .section {
  padding: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem) clamp(1.8rem, 0.1294498382vw + 1.7514563107rem, 2rem)
    clamp(2rem, 0.2588996764vw + 1.9029126214rem, 2.4rem);
}
.sub-history .section p {
  margin-top: 1rem;
  color: var(--clr-base-black);
}
.sub-history .section.answer {
  margin-top: 0;
  padding-top: clamp(2rem, 0.2588996764vw + 1.9029126214rem, 2.4rem);
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  background: #fafafa;
}
.sub-history .section .head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
@media (max-width: 544px) {
  .sub-history .section .head {
    align-items: flex-start;
  }
}
.sub-history .empty {
  padding: clamp(4.8rem, 1.5533980583vw + 4.2174757282rem, 7.2rem) 0;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
}
.verify {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: clamp(1.6rem, 0.5177993528vw + 1.4058252427rem, 2.4rem);
}
.verify.is-open {
  display: flex;
}
.verify .backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.28);
}
.verify .dialog {
  position: relative;
  z-index: 1;
  width: min(69.4rem, 100% - 3.2rem);
  min-height: clamp(46rem, 10.7443365696vw + 41.9708737864rem, 62.6rem);
  margin: 0;
  padding: clamp(2.8rem, 0.5177993528vw + 2.6058252427rem, 3.6rem);
  border-radius: clamp(0.6rem, 0.1294498382vw + 0.5514563107rem, 0.8rem);
  background: var(--clr-base-white);
  color: var(--clr-base-black);
}
.verify .close {
  position: absolute;
  top: clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  right: clamp(2rem, 0.5177993528vw + 1.8058252427rem, 2.8rem);
  width: 2.8rem;
  height: 2.8rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  color: var(--clr-base-black);
}
.verify .close:hover {
  color: var(--clr-primary-500);
}
.verify .dialog > h3 {
  margin-bottom: clamp(2.8rem, 0.5177993528vw + 2.6058252427rem, 3.6rem);
}
.verify .dialog > p {
  color: var(--clr-base-black);
}
.verify .dialog > p + p {
  margin-top: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
}
.verify .row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(12.8rem, 1.0355987055vw + 12.4116504854rem, 14.4rem);
  gap: 0.8rem;
  margin-top: clamp(3.6rem, 0.2588996764vw + 3.5029126214rem, 4rem);
}
@media (max-width: 544px) {
  .verify .row {
    grid-template-columns: 1fr;
  }
}
.verify .code {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: clamp(4.4rem, 0.2588996764vw + 4.3029126214rem, 4.8rem);
  padding: 0 clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
  border: 1px solid rgba(0, 0, 0, 0.28);
  border-radius: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
}
.verify .input {
  min-width: 0;
  width: 100%;
  color: var(--clr-base-black);
}
.verify .timer {
  color: rgba(0, 0, 0, 0.48);
}
.verify .msg {
  margin-top: 0.8rem;
  color: #c0392b;
}
.verify .msg.--ok {
  color: #1a7f4b;
}
.verify .resend,
.verify .submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  background: var(--clr-base-black);
  color: var(--clr-base-white);
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
.verify .resend:hover,
.verify .submit:hover {
  background: var(--clr-primary-500);
  color: var(--clr-base-white);
}
.verify .resend {
  min-height: clamp(4.4rem, 0.2588996764vw + 4.3029126214rem, 4.8rem);
  padding-inline: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
}
.verify .submit {
  position: absolute;
  left: clamp(2.8rem, 0.5177993528vw + 2.6058252427rem, 3.6rem);
  right: clamp(2.8rem, 0.5177993528vw + 2.6058252427rem, 3.6rem);
  bottom: clamp(2.8rem, 0.3883495146vw + 2.654368932rem, 3.4rem);
  min-height: clamp(5.8rem, 0.3883495146vw + 5.654368932rem, 6.4rem);
  border-radius: clamp(1.2rem, 0.1294498382vw + 1.1514563107rem, 1.4rem);
  background: rgba(7, 2, 16, 0.96);
  color: var(--clr-secondary-500);
}
.verify .submit:hover {
  background: var(--clr-secondary-500);
  color: var(--clr-base-black);
  border: 2px solid var(--clr-base-black);
}
.fh {
  position: relative;
  overflow: hidden;
  background: url('../images/franchise-bg.jpg') center/cover no-repeat;
  color: var(--clr-base-white);
}
.fh-in {
  display: grid;
  grid-template-columns: minmax(700px, 1fr) minmax(500px, 0.9fr);
  gap: clamp(3.6rem, 3.6245954693vw + 2.240776699rem, 9.2rem);
  align-items: center;
  max-width: min(1680px, 100%);
  min-height: clamp(56rem, 23.3009708738vw + 47.2621359223rem, 92rem);
  padding-block: clamp(8rem, 2.5889967638vw + 7.0291262136rem, 12rem);
}
@media (max-width: 1320px) {
  .fh-in {
    grid-template-columns: 1fr;
    gap: clamp(5.6rem, 1.5533980583vw + 5.0174757282rem, 8rem);
    height: 100svh;
    align-content: center;
  }
}
.fh-copy {
  position: relative;
  z-index: 2;
  width: 100%;
  min-width: 0;
  max-width: clamp(62rem, 15.5339805825vw + 56.1747572816rem, 86rem);
  text-align: left;
}
@media (max-width: 1320px) {
  .fh-copy {
    max-width: 740px;
    margin-inline: auto;
  }
}
@media (max-width: 544px) {
  .fh-copy {
    max-width: 100%;
  }
}
.fh-eyebrow {
  margin: 0 0 clamp(1.8rem, 0.7766990291vw + 1.5087378641rem, 3rem);
  font-size: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  line-height: 1.4;
  word-break: keep-all;
  text-shadow: 0 6px 40px rgba(0, 0, 0, 0.35);
}
.fh-hd {
  display: flex;
  flex-direction: column;
  gap: clamp(0.2rem, 0.3883495146vw + 0.054368932rem, 0.8rem);
  margin: 0;
  font-size: clamp(3.4rem, 2.4595469256vw + 2.4776699029rem, 7.2rem);
  line-height: 0.98;
  word-break: keep-all;
  text-shadow: 0 6px 40px rgba(0, 0, 0, 0.35);
}
.fh-line {
  display: block;
}
.fh-line--nowrap {
  white-space: nowrap;
  font-size: 0.9em;
}
@media (max-width: 544px) {
  .fh-line--nowrap {
    white-space: normal;
    font-size: 1em;
  }
}
.fh-hi {
  color: var(--clr-secondary-500);
}
.fh-lead {
  margin-top: clamp(1.4rem, 0.9061488673vw + 1.0601941748rem, 2.8rem);
  font-size: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  font-weight: 500;
  line-height: 1.55;
  text-align: left;
  color: hsla(0, 0%, 100%, 0.92);
  text-shadow: 0 6px 40px rgba(0, 0, 0, 0.35);
  word-break: keep-all;
}
.fh-lead p {
  margin: 0;
}
.fh-media {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;
  overflow: visible;
}
@media (max-width: 1320px) {
  .fh-media {
    justify-content: center;
  }
}
.fh-plates {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: clamp(62rem, 32.3624595469vw + 49.8640776699rem, 112rem);
  min-height: clamp(34rem, 19.4174757282vw + 26.7184466019rem, 64rem);
  margin-inline: clamp(-2rem, -1.9417475728vw - 1.2718446602rem, -5rem)
    clamp(-5rem, -5.8252427184vw - 2.8155339806rem, -14rem);
}
@media (max-width: 1320px) {
  .fh-plates {
    margin-inline: auto;
    max-width: clamp(32rem, 12.9449838188vw + 27.145631068rem, 52rem);
    min-height: clamp(14rem, 9.0614886731vw + 10.6019417476rem, 28rem);
  }
}
.fh-fig {
  position: relative;
  display: block;
  width: min(116%, clamp(64rem, 28.4789644013vw + 53.3203883495rem, 108rem));
  max-width: none;
  --fh-ring-size: clamp(30rem, 18.1229773463vw + 23.2038834951rem, 58rem);
  --fh-orbit-radius: calc(var(--fh-ring-size) / 2);
}
@media (max-width: 1320px) {
  .fh-fig {
    width: min(100%, clamp(48rem, 18.1229773463vw + 41.2038834951rem, 76rem));
    --fh-ring-size: clamp(26rem, 12.9449838188vw + 21.145631068rem, 46rem);
  }
}
@media (max-width: 544px) {
  .fh-fig {
    --fh-ring-size: clamp(22rem, 7.7669902913vw + 19.0873786408rem, 34rem);
  }
}
.fh-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 0;
  width: var(--fh-ring-size);
  max-width: none;
  transform: translate(-50%, -50%);
  border-radius: 999rem;
  pointer-events: none;
  aspect-ratio: 1/1;
  box-sizing: border-box;
  border: 1px dashed hsla(0, 0%, 100%, 0.55);
}
.fh-img {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(
    0 clamp(2rem, 2.071197411vw + 1.2233009709rem, 5.2rem) clamp(3.6rem, 2.3300970874vw + 2.7262135922rem, 7.2rem)
      rgba(0, 0, 0, 0.42)
  );
}
@media (max-width: 1320px) {
  .fh-img {
    width: clamp(46rem, 19.4174757282vw + 38.7184466019rem, 76rem);
    max-width: 100%;
  }
}
.fh-dot {
  position: absolute;
  top: 50%;
  left: 50%;
  right: auto;
  z-index: 1;
  transform: translate(-50%, -50%) rotate(-72deg) translateX(var(--fh-orbit-radius)) rotate(72deg);
  width: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  height: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  border-radius: 999rem;
  background: var(--clr-secondary-500);
  animation: fh-dot-orbit 9s linear infinite;
  box-shadow:
    0 0 clamp(1rem, 0.7766990291vw + 0.7087378641rem, 2.2rem) var(--clr-secondary-500),
    0 0 clamp(2.4rem, 1.5533980583vw + 1.8174757282rem, 4.8rem) rgba(25, 216, 42, 0.55);
}
@media (prefers-reduced-motion: reduce) {
  .fh-dot {
    animation: none;
  }
}
@keyframes fh-dot-orbit {
  from {
    transform: translate(-50%, -50%) rotate(-72deg) translateX(var(--fh-orbit-radius)) rotate(72deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(288deg) translateX(var(--fh-orbit-radius)) rotate(-288deg);
  }
}
.fh-marq {
  position: absolute;
  left: 0;
  right: 0;
  inset-inline: 0;
  top: 0;
  z-index: 3;
  height: clamp(17rem, 5.8252427184vw + 14.8155339806rem, 26rem);
  pointer-events: none;
  transform: rotate(3deg);
  transform-origin: center;
}
.fh-marq ul {
  position: absolute;
  left: 50%;
  top: 50%;
  display: flex;
  align-items: center;
  padding-block: clamp(1rem, 0.3883495146vw + 0.854368932rem, 1.6rem);
  box-sizing: border-box;
  width: max-content;
  min-width: 100%;
  background: var(--clr-base-black);
  animation: franchise-marquee 200s linear infinite;
  transform: translate3d(-50%, -50%, 0);
  will-change: transform;
}
.fh-marq ul::before,
.fh-marq ul::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  width: 100%;
  height: clamp(0.6rem, 0.2588996764vw + 0.5029126214rem, 1rem);
  background: linear-gradient(90deg, #6200ea 0%, #ff6fc0 100%);
  pointer-events: none;
}
.fh-marq ul::after {
  top: auto;
  bottom: 0;
}
.fh-marq li {
  flex: 0 0 auto;
}
.fh-marq img {
  display: block;
  width: auto;
  height: clamp(6.4rem, 2.071197411vw + 5.6233009709rem, 9.6rem);
}
.fh-sys {
  position: relative;
  overflow: hidden;
  color: var(--clr-base-white);
  background: linear-gradient(180deg, #3e00af 0%, #0a0016 100%);
}
.fh-sys > .no-container-xl {
  position: relative;
  z-index: 1;
  padding-block: clamp(12rem, 2.3300970874vw + 11.1262135922rem, 15.6rem) 9.2rem;
}
.fh-sys .label {
  display: flex;
  align-items: center;
  gap: clamp(1.2rem, 0.5177993528vw + 1.0058252427rem, 2rem);
  margin: 0 0 clamp(2.4rem, 1.2944983819vw + 1.9145631068rem, 4.4rem);
  line-height: 1;
}
.fh-sys .label span {
  font-size: clamp(4.4rem, 2.4595469256vw + 3.4776699029rem, 8.2rem);
  line-height: 0.9;
}
.fh-sys .label small {
  font-size: clamp(1rem, 0.3883495146vw + 0.854368932rem, 1.6rem);
  line-height: 1;
  letter-spacing: 0.32em;
}
.fh-sys h2 {
  word-break: keep-all;
}
.fh-sys h2 span {
  display: block;
}
.fh-sys__title {
  font-size: clamp(4.6rem, 2.9773462783vw + 3.4834951456rem, 9.2rem);
  line-height: 0.9;
}
.fh-sys__desc {
  margin-top: clamp(2rem, 0.2588996764vw + 1.9029126214rem, 2.4rem);
  font-size: clamp(2.4rem, 1.0355987055vw + 2.0116504854rem, 4rem);
  line-height: 1.2;
}
@media (max-width: 1024px) {
  .fh-sys__desc br {
    display: none;
  }
}
.fh-sys .sys-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.6rem;
  margin-top: 4rem;
  margin-left: auto;
  margin-right: auto;
}
.fh-sys .sys-list li {
  position: relative;
  min-height: clamp(42rem, 3.2362459547vw + 40.786407767rem, 47rem);
  padding: 2.2rem 2rem 1.8rem;
  border-radius: 1.4rem;
  overflow: visible;
  isolation: isolate;
}
@media (max-width: 544px) {
  .fh-sys .sys-list li {
    min-height: clamp(36rem, 7.1197411003vw + 33.3300970874rem, 47rem);
  }
}
.fh-sys .sys-list img {
  position: absolute;
  z-index: 1;
  max-width: none;
  height: auto;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(0 2.4rem 3.6rem rgba(0, 0, 0, 0.22));
  transform-origin: center;
}
.fh-sys .sys-list p {
  position: absolute;
  left: 2rem;
  right: 2rem;
  bottom: 1.8rem;
  z-index: 2;
  font-size: 1.5rem;
  line-height: 1.35;
}
.fh-sys .sys-list h3 {
  position: relative;
  z-index: 2;
}
.fh-sys .sys-list span {
  position: absolute;
  top: 2.2rem;
  right: 2rem;
  z-index: 2;
  color: hsla(0, 0%, 100%, 0.76);
  font-size: 1.4rem;
  line-height: 1;
}
.fh-sys .chicken {
  background: #6200ea;
}
.fh-sys .chicken img {
  left: 49%;
  top: 3.2rem;
  width: 96%;
  transform: translateX(-50%);
}
.fh-sys .set {
  background: var(--clr-secondary-500);
  color: var(--clr-base-black);
  z-index: 2;
  position: relative;
}
.fh-sys .set img {
  left: 60%;
  top: 8rem;
  width: 140%;
  transform: translateX(-54%) rotate(11deg);
}
.fh-sys .pizza {
  background: #ff6fc0;
}
.fh-sys .pizza img {
  left: 51%;
  top: 2rem;
  width: 100%;
  transform: translateX(-50%) rotate(0deg);
}
@media (max-width: 1024px) {
  .fh-sys > .no-container-xl {
    padding-block: 5.6rem 7.2rem;
  }
  .fh-sys__title {
    font-size: clamp(5rem, 1.4239482201vw + 4.4660194175rem, 7.2rem);
  }
  .fh-sys__desc {
    font-size: clamp(2.3rem, 0.8414239482vw + 1.9844660194rem, 3.6rem);
  }
  .fh-sys .sys-list {
    grid-template-columns: 1fr;
    max-width: 48rem;
  }
}
@media (max-width: 768px) {
  .fh-sys .label span {
    font-size: 3.8rem;
  }
  .fh-sys__title {
    font-size: clamp(4.2rem, 1.0355987055vw + 3.8116504854rem, 5.8rem);
    line-height: 0.96;
  }
  .fh-sys__desc {
    margin-top: 2.4rem;
    font-size: clamp(2.2rem, 0.5177993528vw + 2.0058252427rem, 3rem);
    line-height: 1.24;
  }
}
.fh-rev {
  position: relative;
  overflow: hidden;
  color: var(--clr-base-white);
  background: #0a0016 url('../images/franchise-bg2.jpg') center/cover no-repeat;
}
.fh-rev > .no-container-xl {
  padding-block: 7.2rem 9.8rem;
}
.fh-rev .label {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  line-height: 1;
}
.fh-rev .label span {
  font-size: 4.8rem;
}
.fh-rev .label small {
  font-size: 1.6rem;
}
.fh-rev h2 {
  margin-top: 1.2rem;
  font-size: 7.2rem;
  line-height: 0.96;
  word-break: keep-all;
}
.fh-rev h2 span {
  display: block;
}
.fh-rev .rev-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3rem;
  margin-top: 5.2rem;
}
.fh-rev .rev-list > li {
  position: relative;
  min-height: 29.8rem;
  padding: 3.6rem 3.8rem;
  border-radius: 1.8rem;
  overflow: hidden;
}
.fh-rev .rev-list .main {
  background: #6200ea;
}
.fh-rev .rev-list .main ol li {
  background: #18dc28;
}
.fh-rev .rev-list .sub {
  border: 1px solid hsla(0, 0%, 100%, 0.2);
  background: hsla(0, 0%, 100%, 0.05);
  color: hsla(0, 0%, 100%, 0.48);
}
.fh-rev .rev-list .sub .tag {
  color: #ff6fc0;
}
.fh-rev .rev-list .sub ol li {
  background: hsla(0, 0%, 100%, 0.16);
}
.fh-rev .rev-list ol {
  position: absolute;
  left: 27%;
  right: 5.8rem;
  bottom: 7.8rem;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: end;
  gap: 1.2rem;
  height: 8.4rem;
}
.fh-rev .rev-list ol li {
  border-radius: 0.6rem 0.6rem 0 0;
  transform-origin: bottom;
  animation: rev-bar 0.9s ease-out both;
}
.fh-rev .rev-list ol li:nth-child(1) {
  height: 3.3rem;
}
.fh-rev .rev-list ol li:nth-child(2) {
  height: 4.2rem;
  animation-delay: 0.08s;
}
.fh-rev .rev-list ol li:nth-child(3) {
  height: 5.4rem;
  animation-delay: 0.16s;
}
.fh-rev .rev-list ol li:nth-child(4) {
  height: 6.5rem;
  animation-delay: 0.24s;
}
.fh-rev .rev-list ol li:nth-child(5) {
  height: 7rem;
  animation-delay: 0.32s;
}
.fh-rev .rev-list .tag {
  position: relative;
  z-index: 2;
  font-size: 1.3rem;
  line-height: 1;
}
.fh-rev .rev-list dl {
  position: absolute;
  left: 3.8rem;
  bottom: 8rem;
  z-index: 2;
}
.fh-rev .rev-list dt {
  color: hsla(0, 0%, 100%, 0.74);
  font-size: 1.4rem;
  line-height: 1.2;
}
.fh-rev .rev-list dd {
  margin-top: 0.4rem;
  font-size: 7.4rem;
  line-height: 0.95;
}
.fh-rev .rev-list > li > p:last-child {
  position: absolute;
  left: 3.8rem;
  right: 3.8rem;
  bottom: 3.8rem;
  z-index: 2;
  color: hsla(0, 0%, 100%, 0.75);
  font-size: 1.5rem;
  line-height: 1.5;
}
.fh-rev .scale {
  position: relative;
  min-height: 14.8rem;
  margin-top: 3.6rem;
  padding: 3.2rem 3.8rem;
  border: 1px dashed hsla(0, 0%, 100%, 0.24);
  border-radius: 1.8rem;
}
.fh-rev .scale .tag {
  font-size: 1.3rem;
  line-height: 1;
}
.fh-rev .scale strong {
  display: block;
  margin-top: 2rem;
  font-size: 4rem;
  line-height: 1.15;
}
.fh-rev .scale p:last-child {
  position: absolute;
  right: 3.8rem;
  top: 50%;
  max-width: 36rem;
  color: hsla(0, 0%, 100%, 0.7);
  font-size: 1.5rem;
  line-height: 1.5;
  transform: translateY(-50%);
}
@media (max-width: 1024px) {
  .fh-rev h2 {
    font-size: 5.6rem;
  }
  .fh-rev .rev-list {
    grid-template-columns: 1fr;
  }
  .fh-rev .scale p:last-child {
    position: static;
    max-width: none;
    margin-top: 1.6rem;
    transform: none;
  }
}
@media (max-width: 768px) {
  .fh-rev h2 {
    font-size: 4.2rem;
    line-height: 1.04;
  }
  .fh-rev .rev-list > li {
    min-height: 34rem;
    padding: 2.8rem 2.4rem;
  }
  .fh-rev .rev-list dl {
    left: 2.4rem;
    bottom: 8.4rem;
  }
  .fh-rev .rev-list dt {
    font-size: 1.3rem;
  }
  .fh-rev .rev-list dd {
    font-size: 6.2rem;
  }
  .fh-rev .rev-list ol {
    left: 43%;
    right: 2.4rem;
    bottom: 8.6rem;
    gap: 0.8rem;
    height: 7rem;
  }
  .fh-rev .rev-list > li > p:last-child {
    left: 2.4rem;
    right: 2.4rem;
    bottom: 3.4rem;
  }
  .fh-rev .scale {
    padding: 2.8rem 2.4rem;
  }
  .fh-rev .scale strong {
    font-size: 3rem;
  }
}
.fh-ch {
  position: relative;
  overflow: hidden;
  color: var(--clr-base-white);
  background: #0a0016;
}
.fh-ch > .no-container-xl {
  padding-block: clamp(7.6rem, 2.7184466019vw + 6.5805825243rem, 11.8rem)
    clamp(8.4rem, 2.7184466019vw + 7.3805825243rem, 12.6rem);
}
.fh-ch .label {
  display: flex;
  align-items: center;
  gap: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  color: var(--clr-secondary-500);
  line-height: 1;
}
.fh-ch .label span {
  font-size: clamp(5rem, 2.071197411vw + 4.2233009709rem, 8.2rem);
  line-height: 0.9;
}
.fh-ch .label small {
  font-size: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
  line-height: 1;
  letter-spacing: 0.24em;
}
.fh-ch h2 {
  margin-top: clamp(2.8rem, 1.1650485437vw + 2.3631067961rem, 4.6rem);
  font-size: clamp(4.6rem, 2.9773462783vw + 3.4834951456rem, 9.2rem);
  line-height: 0.92;
  word-break: keep-all;
}
.fh-ch h2 span {
  display: block;
}
.fh-ch .ch-list {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(1.8rem, 0.5177993528vw + 1.6058252427rem, 2.6rem);
  margin-top: clamp(4.6rem, 1.5533980583vw + 4.0174757282rem, 7rem);
}
.fh-ch li {
  position: relative;
  grid-column: span 2;
  min-height: clamp(16.8rem, 4.4012944984vw + 15.1495145631rem, 23.6rem);
  padding: clamp(2rem, 0.2588996764vw + 1.9029126214rem, 2.4rem) clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  border: 1px solid hsla(0, 0%, 100%, 0.18);
  border-radius: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  overflow: hidden;
  background: hsla(0, 0%, 100%, 0.06);
}
.fh-ch li::after {
  content: '';
  position: absolute;
  right: clamp(-4rem, 1.4239482201vw - 4.5339805825rem, -1.8rem);
  top: clamp(-5.2rem, 1.5533980583vw - 5.7825242718rem, -2.8rem);
  z-index: 0;
  width: clamp(8.6rem, 2.5889967638vw + 7.6291262136rem, 12.6rem);
  aspect-ratio: 1/1;
  border-radius: 999rem;
  background: rgba(98, 0, 234, 0.06);
  filter: blur(16px);
}
.fh-ch li:nth-child(4),
.fh-ch li:nth-child(5) {
  grid-column: span 3;
}
.fh-ch .tag {
  position: relative;
  z-index: 1;
  color: var(--clr-primary-400);
  font-size: clamp(1.2rem, 0.1294498382vw + 1.1514563107rem, 1.4rem);
  letter-spacing: 0.16em;
  line-height: 1;
}
.fh-ch strong {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: clamp(4.4rem, 1.5533980583vw + 3.8174757282rem, 6.8rem);
  color: var(--clr-secondary-500);
  font-size: clamp(3rem, 0.7766990291vw + 2.7087378641rem, 4.2rem);
  line-height: 1.08;
}
.fh-ch li > p:last-child {
  position: relative;
  z-index: 1;
  margin-top: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  color: hsla(0, 0%, 100%, 0.64);
  font-size: clamp(1.4rem, 0.1294498382vw + 1.3514563107rem, 1.6rem);
  line-height: 1.58;
}
@media (max-width: 1024px) {
  .fh-ch h2 {
    font-size: 7.2rem;
  }
  .fh-ch .ch-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .fh-ch li,
  .fh-ch li:nth-child(4),
  .fh-ch li:nth-child(5) {
    grid-column: auto;
  }
}
@media (max-width: 768px) {
  .fh-ch > .no-container-xl {
    padding-block: 6.4rem 8rem;
  }
  .fh-ch .label span {
    font-size: 3.8rem;
  }
  .fh-ch .label small {
    font-size: 1.3rem;
  }
  .fh-ch h2 {
    font-size: 4.8rem;
    line-height: 1;
  }
  .fh-ch .ch-list {
    grid-template-columns: 1fr;
    gap: 1.4rem;
    margin-top: 3.2rem;
  }
  .fh-ch li {
    min-height: 20rem;
    padding: 2.8rem 2.4rem;
  }
  .fh-ch strong {
    margin-top: 4.8rem;
    font-size: 3.2rem;
  }
  .fh-ch li > p:last-child {
    font-size: 1.5rem;
  }
}
.fh-way {
  position: relative;
  overflow: hidden;
  color: var(--clr-base-white);
  background: linear-gradient(180deg, #0a0016 0%, #5001c5 100%);
}
.fh-way > .no-container-xl {
  position: relative;
  z-index: 1;
  padding-block: 7.6rem clamp(30rem, 7.7669902913vw + 27.0873786408rem, 42rem);
}
.fh-way .label {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  line-height: 1;
}
.fh-way .label span {
  font-size: 4.8rem;
}
.fh-way .label small {
  font-size: 1.6rem;
}
.fh-way h2 {
  margin-top: 1.2rem;
  font-size: 7.2rem;
  line-height: 0.92;
  word-break: keep-all;
}
.fh-way h2 span {
  display: block;
}
.fh-way .way-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.2rem;
  margin-top: 5.4rem;
}
.fh-way .way-list li {
  min-height: 28rem;
  padding: 3.8rem 3.4rem;
  border: 2px solid #8b22ff;
  border-radius: 1.8rem;
  background: hsla(0, 0%, 100%, 0.04);
}
.fh-way .way-list li:nth-child(2) {
  border-color: var(--clr-secondary-500);
}
.fh-way .way-list li:nth-child(3) {
  border-color: var(--clr-base-white);
}
.fh-way .way-list li:nth-child(3) .tag {
  color: #ff6fc0;
}
.fh-way .tag {
  color: var(--clr-secondary-500);
  font-size: 1.3rem;
  letter-spacing: 0.16em;
  line-height: 1;
}
.fh-way .way-list span {
  display: block;
  margin-top: 2.8rem;
  font-size: 7.2rem;
  line-height: 1;
  filter: drop-shadow(0 1.2rem 1.4rem rgba(0, 0, 0, 0.28));
}
.fh-way .way-list strong {
  display: block;
  margin-top: 2rem;
  font-size: 5.2rem;
  line-height: 1;
}
.fh-way .way-list li > p:last-child {
  margin-top: 1.2rem;
  font-size: 1.8rem;
  line-height: 1.3;
}
.fh-way .way-info {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(23.6rem, 4.142394822vw + 22.0466019417rem, 30rem) minmax(0, 1fr);
  align-items: center;
  gap: 3.2rem;
  min-height: 28.6rem;
  margin-top: 3.2rem;
  padding: 3.2rem 3.8rem;
  border-radius: 1.8rem;
  background: rgba(98, 0, 234, 0.58);
}
.fh-way .way-info > div:first-child {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.fh-way dl {
  margin-top: 4.8rem;
}
.fh-way dt {
  color: hsla(0, 0%, 100%, 0.82);
  font-size: 1.4rem;
  line-height: 1.2;
}
.fh-way dd {
  margin-top: 0.4rem;
  font-size: 7.6rem;
  line-height: 0.95;
}
.fh-way .way-info > div:first-child > p:last-child {
  color: hsla(0, 0%, 100%, 0.78);
  font-size: 1.5rem;
  line-height: 1.5;
}
.fh-way .pie {
  position: relative;
  justify-self: center;
  width: 100%;
  max-width: clamp(23.6rem, 4.142394822vw + 22.0466019417rem, 30rem);
  aspect-ratio: 1;
}
.fh-way .pie svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.fh-way .pie circle {
  fill: none;
  stroke-width: 48;
  stroke-dasharray: var(--pie-value) var(--pie-gap);
  stroke-dashoffset: var(--pie-offset, 0);
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
}
.fh-way .pie .food {
  --pie-value: 32.4;
  --pie-gap: 67.6;
  --pie-offset: 0;
  --pie-delay: 0ms;
  --pie-duration: 460ms;
  stroke: #d9ab9f;
}
.fh-way .pie .labor {
  --pie-value: 10.1;
  --pie-gap: 89.9;
  --pie-offset: -32.4;
  --pie-delay: 460ms;
  --pie-duration: 160ms;
  stroke: #ef6868;
}
.fh-way .pie .cost {
  --pie-value: 21.2;
  --pie-gap: 78.8;
  --pie-offset: -42.5;
  --pie-delay: 620ms;
  --pie-duration: 300ms;
  stroke: #ead95f;
}
.fh-way .pie .rent {
  --pie-value: 11.7;
  --pie-gap: 88.3;
  --pie-offset: -63.7;
  --pie-delay: 920ms;
  --pie-duration: 170ms;
  stroke: #e79a3a;
}
.fh-way .pie .profit {
  --pie-value: 24.6;
  --pie-gap: 75.4;
  --pie-offset: -75.4;
  --pie-delay: 1090ms;
  --pie-duration: 350ms;
  stroke: #61babd;
}
.fh-way .pie .hole {
  fill: rgba(98, 0, 234, 0.58);
  stroke: none;
  transform: none;
}
.fh-way .pie text {
  fill: var(--clr-base-white);
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1;
  text-anchor: middle;
}
.fh-way .pie tspan + tspan {
  fill: hsla(0, 0%, 100%, 0.84);
  font-size: 1rem;
}
.fh-way.is-pie-ready .pie circle:not(.hole) {
  opacity: 0;
  stroke-dasharray: 0 100;
}
.fh-way.is-pie-ready .pie .hole,
.fh-way.is-pie-ready .pie text {
  opacity: 0;
}
.fh-way.is-pie-visible .pie circle:not(.hole) {
  animation: fh-way-pie-slice var(--pie-duration, 420ms) linear var(--pie-delay, 0ms) forwards;
}
.fh-way.is-pie-visible .pie .hole,
.fh-way.is-pie-visible .pie text {
  animation: fh-way-pie-fade 300ms ease 1300ms forwards;
}
.fh-way .leg {
  display: grid;
  gap: 1rem;
  align-self: start;
  justify-self: center;
  margin-top: 0.6rem;
}
.fh-way .leg li {
  position: relative;
  padding-left: 2rem;
  color: hsla(0, 0%, 100%, 0.78);
  font-size: 1.3rem;
  line-height: 1.2;
}
.fh-way .leg li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.1rem;
  width: 1.2rem;
  aspect-ratio: 5/6;
  border-radius: 999rem;
  background: #d9ab9f;
}
.fh-way .leg li:nth-child(2)::before {
  background: #ef6868;
}
.fh-way .leg li:nth-child(3)::before {
  background: #ead95f;
}
.fh-way .leg li:nth-child(4)::before {
  background: #e79a3a;
}
.fh-way .leg li:nth-child(5)::before {
  background: #61babd;
}
.fh-way .way-info > p:last-child {
  position: absolute;
  right: 3.8rem;
  bottom: 3.6rem;
  color: hsla(0, 0%, 100%, 0.82);
  font-size: 1.4rem;
  line-height: 1.4;
}
.fh-way .fh-marq.btm {
  top: auto;
  bottom: clamp(4rem, 1.5533980583vw + 3.4174757282rem, 6.4rem);
  height: clamp(19rem, 5.8252427184vw + 16.8155339806rem, 28rem);
  transform: rotate(3deg);
  transform-origin: center;
}
.fh-way .fh-marq.btm ul {
  animation-name: franchise-marquee-reverse;
}
@media (max-width: 1024px) {
  .fh-way h2 {
    font-size: 5.6rem;
  }
  .fh-way .way-list {
    grid-template-columns: 1fr;
  }
  .fh-way .way-info {
    grid-template-columns: 1fr;
    gap: 4rem;
  }
  .fh-way .leg {
    grid-template-columns: repeat(5, max-content);
    align-self: auto;
  }
  .fh-way .way-info > p:last-child {
    position: static;
  }
}
@media (max-width: 768px) {
  .fh-way > .no-container-xl {
    padding-block: 6.4rem clamp(24rem, 3.8834951456vw + 22.5436893204rem, 30rem);
  }
  .fh-way .label span {
    font-size: 3.8rem;
  }
  .fh-way .label small {
    font-size: 1.3rem;
  }
  .fh-way h2 {
    font-size: 4.2rem;
    line-height: 1.05;
  }
  .fh-way .way-list {
    gap: 1.6rem;
    margin-top: 3.6rem;
  }
  .fh-way .way-list li {
    min-height: 23rem;
    padding: 3rem 2.4rem;
  }
  .fh-way .way-list span {
    margin-top: 2.4rem;
    font-size: 6rem;
  }
  .fh-way .way-list strong {
    font-size: 4rem;
  }
  .fh-way .way-info {
    padding: 2.8rem 2.4rem;
  }
  .fh-way dd {
    font-size: 6.4rem;
  }
  .fh-way .pie {
    width: 20rem;
  }
  .fh-way .leg {
    grid-template-columns: repeat(2, max-content);
  }
  .fh-way .fh-marq.btm {
    bottom: clamp(2.8rem, 0.9061488673vw + 2.4601941748rem, 4.2rem);
    height: clamp(17rem, 3.2362459547vw + 15.786407767rem, 22rem);
  }
  .fh-way .fh-marq.btm ul {
    padding-block: clamp(1.4rem, 0.3883495146vw + 1.254368932rem, 2rem);
  }
}
.fh-cost {
  position: relative;
  overflow: hidden;
  padding: clamp(18rem, 9.0614886731vw + 14.6019417476rem, 32rem) 0;
  color: var(--clr-base-white);
  background: #5001c5 url('../images/franchise-bg3.jpg') center/cover no-repeat;
}
.fh-cost > .no-container-xl {
  position: relative;
  z-index: 4;
}
.fh-cost .fh-marq {
  top: clamp(2rem, 3.8834951456vw + 0.5436893204rem, 8rem);
  z-index: 2;
  height: clamp(15rem, 2.9773462783vw + 13.8834951456rem, 19.6rem);
  transform: rotate(3deg);
}
.fh-cost .fh-marq ul {
  padding-block: clamp(1.4rem, 0.6472491909vw + 1.1572815534rem, 2.4rem);
  animation-duration: 170s;
}
.fh-cost .fh-marq img {
  height: clamp(8.4rem, 1.8122977346vw + 7.7203883495rem, 11.2rem);
}
.fh-cost .fh-marq.btm {
  top: auto;
  bottom: 2rem;
  transform: rotate(3deg);
}
.fh-cost .fh-marq.btm ul {
  animation-name: franchise-marquee-reverse;
}
.fh-cost .label {
  display: flex;
  align-items: center;
  gap: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  color: var(--clr-base-white);
  line-height: 1;
}
.fh-cost .label span {
  font-size: clamp(4.8rem, 1.8122977346vw + 4.1203883495rem, 7.6rem);
  line-height: 0.9;
}
.fh-cost .label small {
  font-size: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
  line-height: 1;
  letter-spacing: 0.22em;
}
.fh-cost .cost-head {
  margin-top: clamp(1.8rem, 0.9061488673vw + 1.4601941748rem, 3.2rem);
  text-align: center;
}
.fh-cost .cost-head h2 {
  font-size: clamp(6.2rem, 2.2006472492vw + 5.3747572816rem, 9.6rem);
  line-height: 0.95;
  word-break: keep-all;
}
.fh-cost .cost-head p {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: min(100%, 76rem);
  min-height: clamp(4.2rem, 0.6472491909vw + 3.9572815534rem, 5.2rem);
  margin-top: clamp(2.6rem, 0.6472491909vw + 2.3572815534rem, 3.6rem);
  padding: 0 clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  border: 2px solid var(--clr-secondary-500);
  border-radius: 999rem;
  color: var(--clr-base-white);
  font-size: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  line-height: 1;
  white-space: normal;
}
.fh-cost .cost-head em {
  color: var(--clr-secondary-500);
  font-style: normal;
}
.fh-cost .cost-list {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  margin-top: clamp(5.2rem, 1.5533980583vw + 4.6174757282rem, 7.6rem);
}
.fh-cost .cost-list li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  aspect-ratio: 0.88/1;
  border: 1px solid hsla(0, 0%, 100%, 0.22);
  border-radius: 30%/24%;
  background: rgba(40, 0, 120, 0.56);
  text-align: center;
}
.fh-cost strong {
  color: var(--clr-secondary-500);
  font-size: clamp(2rem, 0.2588996764vw + 1.9029126214rem, 2.4rem);
  line-height: 1;
}
.fh-cost .cost-list p {
  margin-top: clamp(2.2rem, 0.5177993528vw + 2.0058252427rem, 3rem);
  font-size: clamp(1.4rem, 0.1941747573vw + 1.327184466rem, 1.7rem);
  line-height: 1.38;
}
.fh-cost .note {
  margin-top: clamp(4.2rem, 1.4239482201vw + 3.6660194175rem, 6.4rem);
  color: hsla(0, 0%, 100%, 0.88);
  text-align: center;
  font-size: clamp(1.5rem, 0.1941747573vw + 1.427184466rem, 1.8rem);
  line-height: 1.7;
}
@media (max-width: 1024px) {
  .fh-cost .cost-head h2 {
    font-size: 6.4rem;
  }
  .fh-cost .cost-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 88rem;
    margin-inline: auto;
  }
}
@media (max-width: 768px) {
  .fh-cost {
    padding-block: 14rem 15rem;
  }
  .fh-cost > .no-container-xl {
    padding-block: 0;
  }
  .fh-cost .fh-marq {
    top: -0.8rem;
    height: 12.8rem;
  }
  .fh-cost .fh-marq ul {
    padding-block: 1.2rem;
  }
  .fh-cost .fh-marq img {
    height: 7.2rem;
  }
  .fh-cost .fh-marq.btm {
    bottom: -0.8rem;
  }
  .fh-cost .label span {
    font-size: 3.8rem;
  }
  .fh-cost .cost-head h2 {
    font-size: 4.4rem;
  }
  .fh-cost .cost-head p {
    min-height: auto;
    margin-top: 2rem;
    padding: 1.2rem 1.8rem;
    font-size: 1.4rem;
    line-height: 1.45;
  }
  .fh-cost .cost-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.2rem;
    margin-top: 3.6rem;
  }
  .fh-cost strong {
    font-size: 2rem;
  }
  .fh-cost .cost-list p {
    margin-top: 1.6rem;
    font-size: 1.3rem;
  }
}
@media (max-width: 450px) {
  .fh-cost .cost-list {
    grid-template-columns: 1fr;
    max-width: 24rem;
  }
}
.fh-set {
  position: relative;
  overflow: hidden;
  color: var(--clr-base-white);
  background: #6200ea url('../images/franchise-bg.jpg') center/cover no-repeat;
}
.fh-set > .no-container-xl {
  position: relative;
  z-index: 1;
}
.fh-set .label {
  display: flex;
  align-items: center;
  gap: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  line-height: 1;
}
.fh-set .label span {
  font-size: clamp(4.8rem, 1.5533980583vw + 4.2174757282rem, 7.2rem);
  line-height: 0.9;
}
.fh-set .label small {
  font-size: clamp(1rem, 0.1941747573vw + 0.927184466rem, 1.3rem);
  line-height: 1;
  letter-spacing: 0.22em;
  transform: translateY(0.2rem);
}
.fh-set .set-head {
  margin-top: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
}
.fh-set h2 {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.12em;
  font-size: clamp(5.6rem, 2.5889967638vw + 4.6291262136rem, 9.6rem);
  line-height: 0.95;
  word-break: keep-all;
}
.fh-set h2 em {
  font-style: normal;
}
.fh-set .set-head p {
  max-width: 118rem;
  margin-top: clamp(2.4rem, 0.6472491909vw + 2.1572815534rem, 3.4rem);
  font-size: clamp(2.2rem, 0.7766990291vw + 1.9087378641rem, 3.4rem);
  line-height: 1.28;
  word-break: keep-all;
}
.fh-set .set-title {
  margin-top: clamp(5.2rem, 1.1650485437vw + 4.7631067961rem, 7rem);
  text-align: center;
  font-size: clamp(4.4rem, 1.8122977346vw + 3.7203883495rem, 7.2rem);
  line-height: 0.95;
}
.fh-set .set-stage {
  position: relative;
  display: grid;
  grid-template-columns: minmax(21rem, 0.82fr) minmax(45rem, 1.55fr) minmax(24rem, 0.9fr);
  align-items: center;
  gap: clamp(2.4rem, 1.5533980583vw + 1.8174757282rem, 4.8rem);
  margin-top: clamp(1rem, 0.7766990291vw + 0.7087378641rem, 2.2rem);
}
.fh-set .set-food {
  position: relative;
  z-index: 2;
  width: min(100%, 76rem);
  margin: 0 auto;
}
.fh-set .set-food img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 2.4rem 2.8rem rgba(0, 0, 0, 0.24));
}
.fh-set .set-panel {
  position: relative;
  z-index: 3;
  max-width: 32rem;
  padding: clamp(2rem, 0.3883495146vw + 1.854368932rem, 2.6rem);
  border: 1px solid hsla(0, 0%, 100%, 0.16);
  border-radius: 1.2rem;
  background: rgba(17, 0, 48, 0.36);
  backdrop-filter: blur(6px);
}
.fh-set .set-panel--pizza {
  justify-self: end;
  color: var(--clr-pink-500);
  text-align: right;
}
.fh-set .set-panel--pizza::after {
  right: clamp(-5.4rem, 1.5533980583vw - 5.9825242718rem, -3rem);
}
.fh-set .set-panel--chicken {
  justify-self: start;
  color: var(--clr-yellow-500);
}
.fh-set .set-panel--chicken::after {
  left: clamp(-5.4rem, 1.5533980583vw - 5.9825242718rem, -3rem);
}
.fh-set .eyebrow {
  color: hsla(0, 0%, 100%, 0.72);
  font-size: clamp(1.1rem, 0.1294498382vw + 1.0514563107rem, 1.3rem);
  line-height: 1;
  letter-spacing: 0.16em;
}
.fh-set h3 {
  margin-top: clamp(1.2rem, 0.2588996764vw + 1.1029126214rem, 1.6rem);
  color: currentColor;
  font-size: clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  line-height: 1.08;
  word-break: keep-all;
}
.fh-set ul {
  display: grid;
  gap: 0.5rem;
  margin-top: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  color: var(--clr-base-white);
  font-size: clamp(1.5rem, 0.1941747573vw + 1.427184466rem, 1.8rem);
  line-height: 1.2;
}
@media (max-width: 1024px) {
  .fh-set .set-stage {
    grid-template-columns: minmax(0, 1fr) minmax(38rem, 1.3fr);
    gap: 2.4rem;
  }
  .fh-set .set-food {
    grid-column: 1/-1;
    grid-row: 1;
    width: min(100%, 68rem);
  }
  .fh-set .set-panel {
    width: 100%;
    max-width: none;
  }
  .fh-set .set-panel::after {
    display: none;
  }
  .fh-set .set-panel--pizza {
    grid-column: 1;
    grid-row: 2;
    text-align: left;
  }
  .fh-set .set-panel--chicken {
    grid-column: 2;
    grid-row: 2;
  }
}
@media (max-width: 768px) {
  .fh-set > .no-container-xl {
    padding-block: 6.4rem 7.6rem;
  }
  .fh-set .label span {
    font-size: 4.8rem;
  }
  .fh-set h2 {
    font-size: 4.6rem;
  }
  .fh-set .set-head p {
    font-size: 2rem;
  }
  .fh-set .set-head p br {
    display: none;
  }
  .fh-set .set-title {
    margin-top: 4rem;
    font-size: 4rem;
  }
  .fh-set .set-stage {
    grid-template-columns: 1fr;
    gap: 1.4rem;
    margin-top: 2.4rem;
  }
  .fh-set .set-food,
  .fh-set .set-panel--pizza,
  .fh-set .set-panel--chicken {
    grid-column: auto;
    grid-row: auto;
  }
  .fh-set .set-food {
    width: 112%;
    margin-inline: -6%;
  }
  .fh-set .set-panel {
    padding: 2rem;
  }
}
@media (max-width: 450px) {
  .fh-set h2 {
    font-size: 3.8rem;
  }
  .fh-set .set-head p {
    font-size: 1.7rem;
  }
  .fh-set .set-title {
    font-size: 3.4rem;
  }
  .fh-set .set-food {
    width: 124%;
    margin-inline: -12%;
  }
}
.fh-process {
  position: relative;
  overflow: hidden;
  color: var(--clr-base-white);
  background: #6200ea url('../images/franchise-bg4.jpg') center/cover no-repeat;
}
.fh-process > .no-container-xl {
  position: relative;
  z-index: 1;
}
.fh-process .label {
  display: flex;
  align-items: center;
  gap: clamp(1.2rem, 0.3883495146vw + 1.054368932rem, 1.8rem);
  line-height: 1;
}
.fh-process .label span {
  font-size: clamp(4.8rem, 1.6828478964vw + 4.1689320388rem, 7.4rem);
  line-height: 0.9;
}
.fh-process .label small {
  font-size: clamp(1rem, 0.1941747573vw + 0.927184466rem, 1.3rem);
  line-height: 1;
  letter-spacing: 0.22em;
  transform: translateY(0.2rem);
}
.fh-process h2 {
  margin-top: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
  font-size: clamp(6.2rem, 2.2006472492vw + 5.3747572816rem, 9.6rem);
  line-height: 0.95;
  word-break: keep-all;
}
.fh-process h2 span {
  display: block;
}
.fh-process .process-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(2.4rem, 0.5177993528vw + 2.2058252427rem, 3.2rem);
  margin: clamp(3.8rem, 1.2944983819vw + 3.3145631068rem, 5.8rem) auto 0;
}
.fh-process .process-list li {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: clamp(14.8rem, 1.8122977346vw + 14.1203883495rem, 17.6rem);
  padding: clamp(2.4rem, 0.6472491909vw + 2.1572815534rem, 3.4rem)
    clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  border: 1px solid hsla(0, 0%, 100%, 0.12);
  border-radius: 1.6rem;
  overflow: hidden;
  background: rgba(71, 0, 170, 0.48);
  box-shadow: inset 0 1px 0 hsla(0, 0%, 100%, 0.08);
  text-align: center;
}
.fh-process .process-icon {
  display: block;
  width: clamp(4.2rem, 0.7766990291vw + 3.9087378641rem, 5.4rem);
  height: clamp(4.2rem, 0.7766990291vw + 3.9087378641rem, 5.4rem);
  color: hsla(0, 0%, 100%, 0.64);
}
.fh-process .process-icon svg {
  display: block;
  width: 100%;
  height: 100%;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.fh-process h3 {
  margin-top: clamp(1.6rem, 0.3883495146vw + 1.454368932rem, 2.2rem);
  color: var(--clr-secondary-500);
  font-size: clamp(1.8rem, 0.2588996764vw + 1.7029126214rem, 2.2rem);
  line-height: 1.1;
  word-break: keep-all;
}
.fh-process .process-list li > p:last-child {
  margin-top: clamp(0.8rem, 0.1294498382vw + 0.7514563107rem, 1rem);
  color: hsla(0, 0%, 100%, 0.9);
  font-size: clamp(1.5rem, 0.1941747573vw + 1.427184466rem, 1.8rem);
  line-height: 1.35;
  word-break: keep-all;
}
.fh-process .process-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
  min-height: clamp(7.6rem, 1.0355987055vw + 7.2116504854rem, 9.2rem);
  margin-top: clamp(3.4rem, 0.7766990291vw + 3.1087378641rem, 4.6rem);
  padding: clamp(1.8rem, 0.2588996764vw + 1.7029126214rem, 2.2rem)
    clamp(2.6rem, 0.5177993528vw + 2.4058252427rem, 3.4rem);
  border-radius: 0.9rem;
  background: var(--clr-base-white);
  color: var(--clr-primary-500);
}
.fh-process .process-cta p {
  font-size: clamp(2.4rem, 0.3883495146vw + 2.254368932rem, 3rem);
  line-height: 1;
  word-break: keep-all;
}
.fh-process .process-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: clamp(9.4rem, 1.0355987055vw + 9.0116504854rem, 11rem);
  min-height: clamp(4.2rem, 0.3883495146vw + 4.054368932rem, 4.8rem);
  padding-inline: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  border: 2px solid var(--clr-base-black);
  border-radius: 0.8rem;
  background: var(--clr-primary-500);
  color: var(--clr-base-white);
  font-size: clamp(1.3rem, 0.1294498382vw + 1.2514563107rem, 1.5rem);
  line-height: 1;
}
@media (max-width: 1024px) {
  .fh-process h2 {
    font-size: 7.4rem;
  }
  .fh-process .process-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 76rem;
  }
}
@media (max-width: 768px) {
  .fh-process > .no-container-xl {
    padding-block: 6.4rem 7.2rem;
  }
  .fh-process .label span {
    font-size: 4.8rem;
  }
  .fh-process h2 {
    font-size: 4.8rem;
    line-height: 1.08;
  }
  .fh-process .process-list {
    grid-template-columns: 1fr;
    gap: 1.4rem;
    margin-top: 3.6rem;
  }
  .fh-process .process-list li {
    min-height: 14.2rem;
    padding: 2.6rem 2.2rem;
  }
  .fh-process h3 {
    font-size: 2rem;
  }
  .fh-process .process-cta {
    align-items: stretch;
    flex-direction: column;
    min-height: 0;
    margin-top: 3.2rem;
    padding: 2.4rem;
  }
  .fh-process .process-cta p {
    font-size: 2.4rem;
  }
  .fh-process .process-link {
    width: 100%;
  }
}
@media (max-width: 450px) {
  .fh-process h2 {
    font-size: 4rem;
  }
  .fh-process .process-list li > p:last-child {
    font-size: 1.4rem;
  }
}
.fh-lineup {
  position: relative;
  overflow: hidden;
  background: #090013 url('../images/franchise-bg2.jpg') center/cover no-repeat;
  color: var(--clr-base-white);
}
.fh-lineup > .no-container-xl {
  position: relative;
  z-index: 1;
  padding-block: clamp(7.2rem, 2.5889967638vw + 6.2291262136rem, 11.2rem)
    clamp(8.8rem, 2.8478964401vw + 7.732038835rem, 13.2rem);
}
.fh-lineup .lineup-head {
  display: block;
}
.fh-lineup .label {
  display: flex;
  align-items: center;
  gap: clamp(1.2rem, 0.5177993528vw + 1.0058252427rem, 2rem);
  color: var(--clr-secondary-500);
  line-height: 1;
}
.fh-lineup .label span {
  font-size: clamp(4.4rem, 1.8122977346vw + 3.7203883495rem, 7.2rem);
  line-height: 0.9;
}
.fh-lineup .label small {
  font-size: clamp(0.9rem, 0.2588996764vw + 0.8029126214rem, 1.3rem);
  line-height: 1;
  letter-spacing: 0.24em;
}
.fh-lineup h2 {
  margin-top: clamp(3.4rem, 1.4239482201vw + 2.8660194175rem, 5.6rem);
  font-size: clamp(4.6rem, 2.9773462783vw + 3.4834951456rem, 9.2rem);
  line-height: 0.98;
  word-break: keep-all;
}
.fh-lineup .lineup-list {
  display: grid;
  gap: clamp(2.8rem, 0.9061488673vw + 2.4601941748rem, 4.2rem);
  margin-top: clamp(4.2rem, 1.0355987055vw + 3.8116504854rem, 5.8rem);
  padding-right: clamp(1.8rem, 1.6828478964vw + 1.1689320388rem, 4.4rem);
  overflow: visible;
}
.fh-lineup .lineup-card {
  --lineup-bg: var(--clr-primary-500);
  --lineup-fg: var(--clr-base-white);
  --lineup-desc: rgba(255, 255, 255, 0.74);
  --lineup-badge-bg: var(--clr-base-white);
  --lineup-badge-fg: var(--clr-primary-500);
  position: relative;
  min-height: clamp(23rem, 6.4724919094vw + 20.572815534rem, 33rem);
  padding: clamp(3rem, 1.5533980583vw + 2.4174757282rem, 5.4rem) clamp(3.4rem, 1.4239482201vw + 2.8660194175rem, 5.6rem);
  border-radius: clamp(1rem, 0.3883495146vw + 0.854368932rem, 1.6rem);
  background: var(--lineup-bg);
  color: var(--lineup-fg);
  isolation: isolate;
  overflow: visible;
  padding-top: clamp(12rem, 2.5889967638vw + 11.0291262136rem, 16rem);
}
.fh-lineup .lineup-card.green {
  --lineup-bg: var(--clr-secondary-500);
  --lineup-fg: #090013;
  --lineup-desc: rgba(9, 0, 19, 0.78);
  --lineup-badge-bg: #090013;
  --lineup-badge-fg: var(--clr-secondary-500);
}
.fh-lineup .lineup-copy {
  position: relative;
  z-index: 2;
  width: 43%;
  min-width: 34rem;
}
.fh-lineup strong {
  display: block;
  margin-top: clamp(1.4rem, 0.5177993528vw + 1.2058252427rem, 2.2rem);
  line-height: 1.3;
}
.fh-lineup .lineup-copy > p:last-child {
  margin-top: clamp(1.4rem, 0.5177993528vw + 1.2058252427rem, 2.2rem);
  color: var(--lineup-desc);
  font-size: clamp(1.4rem, 0.2588996764vw + 1.3029126214rem, 1.8rem);
  line-height: 1.6;
}
.fh-lineup .lineup-food {
  position: absolute;
  z-index: 1;
  right: -10%;
  top: 50%;
  width: 75%;
  max-width: none;
  height: auto;
  object-fit: contain;
  pointer-events: none;
  transform: translateY(-50%);
  filter: drop-shadow(0 2.4rem 3rem rgba(0, 0, 0, 0.22));
}
@media (max-width: 1024px) {
  .fh-lineup .lineup-food,
  .fh-lineup .lineup-card:nth-child(2) .lineup-food,
  .fh-lineup .lineup-card:nth-child(3) .lineup-food {
    right: -20%;
    width: 90%;
  }
}
@media (max-width: 768px) {
  .fh-lineup > .no-container-xl {
    padding-block: 6rem 7.2rem;
  }
  .fh-lineup .lineup-head {
    display: block;
  }
  .fh-lineup .label span {
    font-size: 4.4rem;
  }
  .fh-lineup h2 {
    font-size: 4.8rem;
  }
  .fh-lineup .lineup-list {
    gap: 2.4rem;
    margin-top: 3.2rem;
    padding-right: 0;
  }
  .fh-lineup .lineup-card {
    min-height: 0;
    padding: 3.2rem 2.4rem 0;
  }
  .fh-lineup .lineup-copy {
    width: 100%;
    min-width: 0;
  }
  .fh-lineup h3 {
    font-size: 2.2rem;
  }
  .fh-lineup strong {
    font-size: 3.4rem;
  }
  .fh-lineup .lineup-copy > p:last-child {
    font-size: 1.3rem;
  }
  .fh-lineup .lineup-food,
  .fh-lineup .lineup-card:nth-child(2) .lineup-food,
  .fh-lineup .lineup-card:nth-child(3) .lineup-food {
    position: relative;
    right: auto;
    top: auto;
    display: block;
    width: 108%;
    margin: 2rem -8% -2.8rem auto;
    transform: none;
  }
}
@media (max-width: 450px) {
  .fh-lineup h3 {
    font-size: 1.8rem;
  }
  .fh-lineup strong {
    font-size: 3rem;
  }
  .fh-lineup .lineup-food,
  .fh-lineup .lineup-card:nth-child(2) .lineup-food,
  .fh-lineup .lineup-card:nth-child(3) .lineup-food {
    width: 122%;
    margin-right: -14%;
  }
}
.fh-inquiry {
  position: relative;
  overflow: hidden;
  background: var(--clr-base-white);
  color: #090013;
}
.fh-inquiry > .no-container-xl {
  padding-block: clamp(7.8rem, 1.9417475728vw + 7.0718446602rem, 10.8rem)
    clamp(8.4rem, 1.8122977346vw + 7.7203883495rem, 11.2rem);
}
.fh-inquiry .head {
  text-align: center;
}
.fh-inquiry .head img {
  display: block;
  width: clamp(9.2rem, 2.071197411vw + 8.4233009709rem, 12.4rem);
  height: auto;
  margin-inline: auto;
}
.fh-inquiry h2 {
  margin-top: clamp(1.8rem, 0.6472491909vw + 1.5572815534rem, 2.8rem);
  font-size: clamp(4.2rem, 1.4239482201vw + 3.6660194175rem, 6.4rem);
  line-height: 1.08;
  word-break: keep-all;
}
.fh-inquiry h2 span {
  display: block;
}
.fh-inquiry h2 em {
  color: var(--clr-primary-500);
}
.fh-inquiry .head p {
  margin-top: clamp(1.8rem, 0.3883495146vw + 1.654368932rem, 2.4rem);
  color: rgba(9, 0, 19, 0.56);
  font-size: 1.5rem;
  line-height: 1.8;
  word-break: keep-all;
}
.fh-inquiry .form {
  margin-top: clamp(7.6rem, 1.2944983819vw + 7.1145631068rem, 9.6rem);
  padding-top: clamp(2.2rem, 0.5177993528vw + 2.0058252427rem, 3rem);
  border-top: 1px solid rgba(9, 0, 19, 0.2);
}
.fh-inquiry .grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem 4rem;
}
.fh-inquiry .field {
  min-width: 0;
}
.fh-inquiry .field > label,
.fh-inquiry .field > span {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-bottom: 0.8rem;
}
.fh-inquiry .full {
  grid-column: 1/-1;
}
.fh-inquiry .inline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 10.4rem;
  gap: 0.8rem;
}
.fh-inquiry .region-row,
.fh-inquiry .checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}
.fh-inquiry .verified {
  white-space: nowrap;
}
.fh-inquiry .verified[hidden] {
  display: none !important;
}
.fh-inquiry .input,
.fh-inquiry .textarea,
.fh-inquiry .check {
  width: 100%;
  border: 1px solid #090013;
  border-radius: 0.8rem;
  background: var(--clr-base-white);
}
.fh-inquiry .input,
.fh-inquiry .textarea {
  outline: none;
  transition: border-color var(--tran-3);
}
.fh-inquiry .input::placeholder,
.fh-inquiry .textarea::placeholder {
  color: rgba(9, 0, 19, 0.62);
}
.fh-inquiry .input:focus,
.fh-inquiry .textarea:focus {
  border-color: var(--clr-primary-500);
}
.fh-inquiry .input {
  min-height: 4.8rem;
  padding-inline: 1.4rem;
}
.fh-inquiry .select {
  appearance: none;
  padding-right: 4rem;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(9, 0, 19, 0.44) 50%),
    linear-gradient(135deg, rgba(9, 0, 19, 0.44) 50%, transparent 50%);
  background-position:
    calc(100% - 1.9rem) 50%,
    calc(100% - 1.4rem) 50%;
  background-size: 0.6rem 0.6rem;
  background-repeat: no-repeat;
}
.fh-inquiry .textarea {
  min-height: clamp(15rem, 2.4595469256vw + 14.0776699029rem, 18.8rem);
  padding: 1.6rem;
  resize: vertical;
}
.fh-inquiry .button,
.fh-inquiry .submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0.8rem;
  background: #090013;
  cursor: pointer;
  transition:
    background-color var(--tran-3),
    color var(--tran-3);
}
.fh-inquiry .button:hover,
.fh-inquiry .submit:hover {
  background: var(--clr-primary-500);
}
.fh-inquiry .button {
  min-height: 4.8rem;
  padding-inline: 1.8rem;
}
.fh-inquiry .check {
  display: flex;
  align-items: center;
  min-height: 4.8rem;
  padding-inline: 1.4rem;
}
.fh-inquiry .check input,
.fh-inquiry .privacy input {
  appearance: none;
  position: relative;
  width: 1.4rem;
  height: 1.4rem;
  margin-right: 0.8rem;
  border: 1px solid #090013;
  border-radius: 0.2rem;
  background: var(--clr-base-white);
}
.fh-inquiry .check input::after,
.fh-inquiry .privacy input::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 45%;
  width: 0.5rem;
  height: 0.25rem;
  border-left: 2px solid var(--clr-base-white);
  border-bottom: 2px solid var(--clr-base-white);
  opacity: 0;
  transform: translate(-50%, -60%) rotate(-45deg);
}
.fh-inquiry .check input:checked,
.fh-inquiry .privacy input:checked {
  border-color: var(--clr-primary-500);
  background: var(--clr-primary-500);
}
.fh-inquiry .check input:checked::after,
.fh-inquiry .privacy input:checked::after {
  opacity: 1;
}
.fh-inquiry .foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.4rem;
  margin-top: 2.4rem;
}
.fh-inquiry .privacy {
  display: inline-flex;
  align-items: center;
}
.fh-inquiry .privacy button {
  border: 0;
  background: none;
  color: inherit;
  text-decoration: underline;
  cursor: pointer;
}
.fh-inquiry .submit {
  min-width: 10.8rem;
  min-height: 4.8rem;
  padding-inline: 2.6rem;
  color: var(--clr-secondary-500);
}
@media (max-width: 768px) {
  .fh-inquiry > .no-container-xl {
    padding-block: 6.8rem 7.6rem;
  }
  .fh-inquiry h2 {
    font-size: 4.4rem;
  }
  .fh-inquiry .head p br {
    display: none;
  }
  .fh-inquiry .form {
    margin-top: 5.6rem;
  }
  .fh-inquiry .grid {
    grid-template-columns: 1fr;
    gap: 1.8rem;
  }
  .fh-inquiry .inline {
    grid-template-columns: 1fr;
  }
  .fh-inquiry .foot {
    align-items: stretch;
    flex-direction: column;
  }
  .fh-inquiry .submit {
    width: 100%;
  }
}
@media (max-width: 450px) {
  .fh-inquiry h2 {
    font-size: 3.8rem;
  }
  .fh-inquiry .region-row,
  .fh-inquiry .checks {
    grid-template-columns: 1fr;
  }
}
.fh-sys .label,
.fh-sys .label span,
.fh-sys .label small,
.fh-rev .label,
.fh-rev .label span,
.fh-rev .label small,
.fh-ch .label,
.fh-ch .label span,
.fh-ch .label small,
.fh-way .label,
.fh-way .label span,
.fh-way .label small,
.fh-cost .label,
.fh-cost .label span,
.fh-cost .label small,
.fh-set .label,
.fh-set .label span,
.fh-set .label small,
.fh-process .label,
.fh-process .label span,
.fh-process .label small,
.fh-lineup .label,
.fh-lineup .label span,
.fh-lineup .label small {
  line-height: 1.12;
}
@keyframes rev-bar {
  from {
    transform: scaleY(0);
  }
  to {
    transform: scaleY(1);
  }
}
@keyframes fh-way-pie-slice {
  from {
    opacity: 1;
    stroke-dasharray: 0 100;
  }
  to {
    opacity: 1;
    stroke-dasharray: var(--pie-value) var(--pie-gap);
  }
}
@keyframes fh-way-pie-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes brand-menu-caution-flash {
  0%,
  42% {
    opacity: var(--brand-menu-caution-opacity, 1);
    filter: brightness(1.35);
    text-shadow:
      0 0 0.8rem rgba(255, 0, 0, 0.78),
      0 0 2rem rgba(255, 0, 0, 0.42);
  }
  43%,
  100% {
    opacity: var(--brand-menu-caution-dim-opacity, 0.32);
    filter: brightness(0.72);
    text-shadow: 0 0 0.5rem rgba(255, 0, 0, 0.28);
  }
}
@keyframes franchise-marquee {
  from {
    transform: translate3d(-50%, -50%, 0);
  }
  to {
    transform: translate3d(-100%, -50%, 0);
  }
}
@keyframes franchise-marquee-reverse {
  from {
    transform: translate3d(-50%, -50%, 0);
  }
  to {
    transform: translate3d(0, -50%, 0);
  }
}
.is-email-verify-open {
  overflow: hidden;
}
:root {
  --e-bg: #fff;
  --e-fg: #18181b;
  --e-muted: #71717a;
  --e-line: #27272a;
  --e-line-light: #e4e4e7;
  --e-accent: #dc2626;
  --e-accent-bg: #fef2f2;
  --e-code-bg: #1e1e1e;
  --e-code-fg: #d4d4d4;
}
@media (prefers-color-scheme: dark) {
  :root {
    --e-bg: #09090b;
    --e-fg: #fafafa;
    --e-muted: #a1a1aa;
    --e-line: #3f3f46;
    --e-line-light: #27272a;
    --e-accent: #f87171;
    --e-accent-bg: #450a0a;
    --e-code-bg: #18181b;
    --e-code-fg: #e4e4e7;
  }
}
.e-body {
  margin: 0;
  background: var(--e-bg);
  color: var(--e-fg);
  min-height: 100dvh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  font-family:
    ui-sans-serif,
    system-ui,
    -apple-system,
    'Segoe UI',
    Roboto,
    sans-serif;
}
.e-404 {
  max-width: 400px;
  width: 100%;
  text-align: center;
}
.e-404__icon {
  margin: 0 auto 28px;
  color: var(--e-line);
}
.e-404__icon svg {
  width: 64px;
  height: 64px;
  stroke-width: 1.5;
}
.e-404__num {
  font-size: clamp(48px, 10vw, 72px);
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1;
  margin: 0 0 16px;
  color: var(--e-fg);
}
.e-404__title {
  font-size: clamp(15px, 2vw, 16px);
  font-weight: 500;
  margin: 0 0 8px;
  color: var(--e-fg);
}
.e-404__desc {
  font-size: 13px;
  color: var(--e-muted);
  margin: 0 0 32px;
  line-height: 1.6;
}
.e-404__actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}
.e-404__foot {
  margin-top: 40px;
  font-size: 11px;
  color: var(--e-muted);
  letter-spacing: 0.02em;
}
.e-404__brand {
  font-weight: 600;
  color: var(--e-fg);
}
.e-btn {
  appearance: none;
  border: 1px solid var(--e-line);
  background: rgba(0, 0, 0, 0);
  color: var(--e-fg);
  border-radius: 6px;
  padding: 10px 18px;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  cursor: pointer;
  text-decoration: none;
  transition:
    background 0.15s ease,
    color 0.15s ease,
    border-color 0.15s ease;
}
.e-btn:hover {
  background: var(--e-line-light);
  border-color: var(--e-line);
}
.e-btn--primary {
  background: var(--e-fg);
  color: var(--e-bg);
  border-color: var(--e-fg);
}
.e-btn--primary:hover {
  opacity: 0.9;
}
.e-error {
  min-height: 100dvh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px 24px;
}
.e-error__container {
  width: min(720px, 100%);
  text-align: left;
}
.e-error__header {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.e-error__badge {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  color: var(--e-fg);
  background: var(--e-line-light);
  border: 1px solid var(--e-line);
}
.e-error__exception {
  font-size: 12px;
  color: var(--e-muted);
  font-family: ui-monospace, monospace;
  padding: 4px 10px;
  background: var(--e-line-light);
  border-radius: 4px;
  border: 1px solid var(--e-line);
}
.e-error__title {
  font-size: clamp(22px, 3.5vw, 32px);
  font-weight: 700;
  margin: 0 0 12px;
  color: var(--e-fg);
  line-height: 1.25;
}
.e-error__desc {
  font-size: 15px;
  color: var(--e-muted);
  margin: 0 0 24px;
  line-height: 1.6;
}
.e-error__desc .e-error__path {
  padding: 2px 8px;
  background: var(--e-line-light);
  border-radius: 4px;
  font-size: 13px;
}
.e-error__source {
  margin: 24px 0;
  border: 1px solid var(--e-line-light);
  border-radius: 8px;
  overflow: hidden;
}
.e-error__source-header {
  padding: 12px 16px;
  font-size: 12px;
  font-family: ui-monospace, monospace;
  background: var(--e-line-light);
  color: var(--e-fg);
  border-bottom: 1px solid var(--e-line);
}
.e-error__source-file {
  color: var(--e-muted);
}
.e-error__source-line {
  color: var(--e-accent);
  font-weight: 600;
}
.e-error__snippet {
  background: var(--e-code-bg);
  color: var(--e-code-fg);
}
.e-error__snippet-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  font-family: ui-monospace, 'Cascadia Code', 'Fira Code', monospace;
}
.e-error__snippet-row td {
  padding: 4px 16px;
  vertical-align: top;
}
.e-error__snippet-row--active td {
  background: var(--e-accent-bg);
  color: var(--e-accent);
}
.e-error__snippet-row--active .e-error__snippet-num {
  color: var(--e-accent);
  font-weight: 600;
}
.e-error__snippet-num {
  width: 1%;
  min-width: 48px;
  padding-right: 16px;
  text-align: right;
  user-select: none;
  color: var(--e-muted);
}
.e-error__snippet-code code {
  display: block;
  white-space: pre;
  overflow-x: auto;
}
.e-error__meta {
  margin: 24px 0;
  padding: 20px;
  border: 1px solid var(--e-line-light);
  border-radius: 8px;
  font-size: 13px;
  background: var(--e-bg);
}
.e-error__meta dt {
  color: var(--e-muted);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}
.e-error__meta dd {
  margin: 0 0 16px;
  word-break: break-all;
}
.e-error__meta dd:last-child {
  margin-bottom: 0;
}
.e-error__meta dd code {
  padding: 2px 6px;
  background: var(--e-line-light);
  border-radius: 4px;
  font-size: 12px;
}
.e-error__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 24px 0;
}
.e-error__foot {
  font-size: 12px;
  color: var(--e-muted);
  margin-top: 32px;
  padding-top: 20px;
  border-top: 1px solid var(--e-line-light);
}
.e-error__brand {
  font-weight: 600;
  color: var(--e-fg);
}
.e-error__details {
  margin-top: 24px;
  border: 1px solid var(--e-line-light);
  border-radius: 8px;
  overflow: hidden;
}
.e-error__details-summary {
  padding: 14px 18px;
  cursor: pointer;
  font-weight: 600;
  font-size: 13px;
  background: var(--e-line-light);
  color: var(--e-fg);
  user-select: none;
}
.e-error__details-summary:hover {
  background: var(--e-line);
}
.e-error__pre {
  margin: 0;
  padding: 16px;
  max-height: 320px;
  overflow: auto;
  font-size: 11px;
  line-height: 1.5;
  font-family: ui-monospace, monospace;
  background: var(--e-code-bg);
  color: var(--e-code-fg);
}
.e-btn--link {
  border-color: rgba(0, 0, 0, 0);
  text-decoration: underline;
  color: var(--e-muted);
}
.e-btn--link:hover {
  background: rgba(0, 0, 0, 0);
  border-color: rgba(0, 0, 0, 0);
  color: var(--e-fg);
  opacity: 1;
}
:root {
  --admin-white: #ffffff;
  --admin-black: #0a0a0a;
  --admin-grey-50: #f9fafb;
  --admin-grey-100: #f3f4f6;
  --admin-grey-200: #e5e7eb;
  --admin-grey-300: #d1d5db;
  --admin-grey-400: #9ca3af;
  --admin-grey-500: #6b7280;
  --admin-grey-600: #4b5563;
  --admin-grey-700: #374151;
  --admin-grey-800: #1f2937;
  --admin-grey-900: #111827;
  --admin-grey-950: #030712;
  --admin-error: #dc2626;
  --admin-error-rgb: 220, 38, 38;
  --admin-error-bg: #fee2e2;
  --admin-error-text: #b91c1c;
  --admin-error-border: rgb(243.0197044335, 114.9802955665, 114.9802955665);
  --admin-error-hover: rgb(195.8166666667, 31.5833333333, 31.5833333333);
  --admin-error-active: rgb(178.25, 28.75, 28.75);
  --admin-success: #22c55e;
  --admin-success-rgb: 34, 197, 94;
  --admin-success-bg: #dcfce7;
  --admin-success-text: #15803d;
  --admin-success-border: rgb(60.5584415584, 221.4415584416, 119.7792207792);
  --admin-success-hover: rgb(29.4961038961, 170.9038961039, 81.5480519481);
  --admin-success-active: rgb(26.4935064935, 153.5064935065, 73.2467532468);
  --admin-warn: #eab308;
  --admin-warn-rgb: 234, 179, 8;
  --admin-warn-bg: #fef9c3;
  --admin-warn-text: #a16207;
  --admin-warn-border: rgb(247.826446281, 198.5082644628, 45.173553719);
  --admin-warn-hover: rgb(204.4115702479, 156.3661157025, 6.9884297521);
  --admin-warn-active: rgb(184.6859504132, 141.2768595041, 6.3140495868);
  --admin-premium: #f9a825;
  --admin-premium-rgb: 249, 168, 37;
  --admin-premium-bg: #fffde7;
  --admin-premium-text: #f57f17;
  --admin-premium-hover: rgb(248.1803571429, 156.1151785714, 7.2196428571);
  --admin-premium-active: rgb(228.7053571429, 143.7276785714, 6.2946428571);
  --admin-info: #3b82f6;
  --admin-info-rgb: 59, 130, 246;
  --admin-info-bg: #eff6ff;
  --admin-info-text: #1d4ed8;
  --admin-primary: #0076cb;
  --admin-primary-rgb: 0, 118, 203;
  --admin-primary-hover: #0066b2;
  --admin-primary-light: #f0f8ff;
  --admin-primary-border: #dff0ff;
  --admin-primary-text: #0066b2;
  --admin-on-primary: #ffffff;
  --admin-header-notifications-pill-bg: rgba(255, 255, 255, 0.92);
  --admin-header-notifications-pill-fg: #1a1a2e;
  --admin-header-notifications-pill-border: rgba(255, 255, 255, 0.65);
  --admin-header-notifications-pill-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  --admin-accent-violet: #5b21b6;
  --admin-accent-violet-bg: #ede9fe;
  --admin-accent-violet-text: #4c1d95;
  --admin-accent-purple: #6d28d9;
  --admin-accent-purple-bg: #f5f3ff;
  --admin-accent-purple-text: #5b21b6;
  --admin-accent-fuchsia: #a21caf;
  --admin-accent-fuchsia-bg: #fae8ff;
  --admin-accent-fuchsia-text: #86198f;
  --admin-accent-pink: #be185d;
  --admin-accent-pink-bg: #fce7f3;
  --admin-accent-pink-text: #9d174d;
  --admin-accent-rose: #e11d48;
  --admin-accent-rose-bg: #ffe4e6;
  --admin-accent-rose-text: #be123c;
  --admin-accent-coral: #ea580c;
  --admin-accent-coral-bg: #ffedd5;
  --admin-accent-coral-text: #c2410c;
  --admin-accent-cyan: #0e7490;
  --admin-accent-cyan-bg: #ecfeff;
  --admin-accent-cyan-text: #155e75;
  --admin-accent-teal: #0f766e;
  --admin-accent-teal-bg: #ccfbf1;
  --admin-accent-teal-text: #115e59;
  --admin-drawer-width: 220px;
  --admin-drawer-mini-width: 68px;
  --admin-sub-drawer-width: 220px;
  --admin-header-height: 6.4rem;
  --admin-body-bg: #f4f6f8;
  --admin-main-bg: #ffffff;
  --admin-card-bg: #ffffff;
  --admin-header-bg: linear-gradient(135deg, #0066b2 0%, #0a4370 50%, #055187 100%);
  --admin-header-bg-hover: rgba(255, 255, 255, 0.1);
  --admin-drawer-bg: #ffffff;
  --admin-drawer-border: #e5e7eb;
  --admin-drawer-text: #4b5563;
  --admin-drawer-text-active: #111827;
  --admin-drawer-hover-bg: #f3f4f6;
  --admin-drawer-active-bg: #f0f8ff;
  --admin-drawer-active-bar: 3px solid #0076cb;
  --admin-drawer-active-accent: #0066b2;
  --admin-drawer-focus-ring: rgba(0, 118, 203, 0.25);
  --admin-drawer-summary-open-bg: #f9fafb;
  --admin-drawer-summary-open-border: #f3f4f6;
  --admin-drawer-sublink-active-bg: #f0f8ff;
  --admin-drawer-sublink-active-bar: 3px solid #0076cb;
  --admin-drawer-top-bg: #f9fafb;
  --admin-drawer-top-border: #e5e7eb;
  --admin-drawer-top-text: #374151;
  --admin-drawer-avatar-bg: #0076cb;
  --admin-border: #d1d5db;
  --admin-border-light: #e5e7eb;
  --admin-border-strong: #9ca3af;
  --admin-border-focus: #0a97ed;
  --admin-outline: rgba(0, 0, 0, 0.1);
  --admin-outline-variant: rgba(0, 0, 0, 0.06);
  --admin-fs-xs: 1.1rem;
  --admin-fs-sm: 1.2rem;
  --admin-fs-base: 1.3rem;
  --admin-fs-body: 1.4rem;
  --admin-fs-body-lg: 1.4rem;
  --admin-fs-lg: 1.5rem;
  --admin-fs-xl: 1.6rem;
  --admin-fs-2xl: 1.8rem;
  --admin-fs-display: 2.4rem;
  --admin-fs-menu: var(--admin-fs-lg);
  --admin-fs-title: var(--admin-fs-2xl);
  --admin-fs-subtitle: 2rem;
  --admin-fs-body-xl: var(--admin-fs-body-lg);
  --admin-text: #111827;
  --admin-text-secondary: #6b7280;
  --admin-text-muted: #9ca3af;
  --admin-text-disabled: #d1d5db;
  --admin-text-tertiary: #4b5563;
  --admin-text-inverse: #f9fafb;
  --admin-state-hover: rgba(0, 0, 0, 0.04);
  --admin-state-focus: rgba(0, 0, 0, 0.08);
  --admin-state-pressed: rgba(0, 0, 0, 0.1);
  --admin-state-drag: rgba(0, 0, 0, 0.12);
  --admin-focus-ring: 0 0 0 3px #dff0ff;
  --admin-focus-ring-border: 1px solid #0a97ed;
  --admin-focus-ring-offset: 0px;
  --admin-error-focus-ring: 0 0 0 3px #fee2e2;
  --admin-duration-short: 150ms;
  --admin-duration: 200ms;
  --admin-duration-long: 300ms;
  --admin-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --admin-ease-out: cubic-bezier(0, 0, 0.2, 1);
  --admin-radius-xs: 3px;
  --admin-radius-sm: 5px;
  --admin-radius: 8px;
  --admin-radius-lg: 10px;
  --admin-radius-full: 9999px;
  --admin-size-input-height: 3.6rem;
  --admin-size-icon-sm: 1.125rem;
  --admin-size-icon: 1.25rem;
  --admin-size-icon-lg: 2.5rem;
  --admin-size-select-arrow: 2.25rem;
  --admin-size-scrollbar: 0.3rem;
  --admin-size-dropdown-head-bg: 5.6rem;
  --admin-size-editor-min-height: 18rem;
  --admin-space-3xs: 0.2rem;
  --admin-space-2xs: 0.4rem;
  --admin-space-xs: 0.6rem;
  --admin-space-sm: 0.75rem;
  --admin-space: 1rem;
  --admin-space-lg: 1.25rem;
  --admin-space-xl: 1.5rem;
  --admin-space-2xl: 2rem;
  --admin-space-3xl: 2.5rem;
  --admin-space-4xl: 3rem;
  --admin-elevation-0: none;
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.07), 0 0 0 1px rgba(0, 0, 0, 0.04);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(0, 0, 0, 0.04);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.1);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-modal-backdrop-bg: rgba(0, 0, 0, 0.45);
  --admin-modal-backdrop-padding: var(--admin-space-lg);
  --admin-modal-backdrop-z: 10000;
  --admin-modal-box-bg: var(--admin-white);
  --admin-modal-box-radius: var(--admin-radius);
  --admin-modal-box-shadow: 0 24px 48px rgba(0, 0, 0, 0.18), 0 0 1px rgba(0, 0, 0, 0.08);
  --admin-modal-min-width: 26rem;
  --admin-modal-max-width: min(90vw, 36rem);
  --admin-modal-max-height: 85vh;
  --admin-modal-header-padding: var(--admin-space) var(--admin-space-lg);
  --admin-modal-header-border: 1px solid var(--admin-border);
  --admin-modal-title-fs: var(--admin-fs-body-lg);
  --admin-modal-title-fw: 600;
  --admin-modal-title-color: var(--admin-text);
  --admin-modal-close-size: 2rem;
  --admin-modal-close-radius: var(--admin-radius-sm);
  --admin-modal-close-color: var(--admin-text-muted);
  --admin-modal-close-hover-bg: var(--admin-grey-100);
  --admin-modal-close-hover-color: var(--admin-text);
  --admin-modal-close-focus-ring: 2px solid var(--admin-primary);
  --admin-modal-body-padding: var(--admin-space-xl) var(--admin-space-lg);
  --admin-modal-body-color: var(--admin-text-secondary);
  --admin-modal-body-fs: var(--admin-fs-body);
  --admin-modal-body-lh: 1.6;
  --admin-modal-footer-padding: var(--admin-space) var(--admin-space-lg);
  --admin-modal-footer-border: 1px solid var(--admin-border);
  --admin-modal-btn-padding: 0.5rem 1.25rem;
  --admin-modal-btn-radius: var(--admin-radius-sm);
  --admin-modal-btn-fs: var(--admin-fs-sm);
  --admin-modal-btn-border: 1px solid var(--admin-border);
  --admin-modal-btn-bg: var(--admin-white);
  --admin-modal-btn-color: var(--admin-text-secondary);
  --admin-modal-btn-hover-bg: var(--admin-grey-50);
  --admin-modal-btn-hover-border: var(--admin-grey-400);
  --admin-modal-btn-primary-bg: var(--admin-primary);
  --admin-modal-btn-primary-color: var(--admin-on-primary);
  --admin-modal-btn-primary-hover-bg: var(--admin-primary-hover);
  --admin-modal-duration: var(--admin-duration);
  --admin-theme-mode: light;
}
[data-theme='dark'] {
  --admin-body-bg: #0b0d14;
  --admin-main-bg: #13161e;
  --admin-card-bg: #1c2032;
  --admin-drawer-bg: #181c2a;
  --admin-drawer-border: #2c3050;
  --admin-drawer-text: #b8c0d4;
  --admin-drawer-text-active: #ffffff;
  --admin-drawer-hover-bg: #232740;
  --admin-drawer-active-bg: rgba(52, 175, 252, 0.18);
  --admin-drawer-active-bar: 3px solid #34affc;
  --admin-drawer-active-accent: #7bcafe;
  --admin-drawer-focus-ring: rgba(52, 175, 252, 0.35);
  --admin-drawer-summary-open-bg: rgba(255, 255, 255, 0.04);
  --admin-drawer-summary-open-border: #2c3050;
  --admin-drawer-sublink-active-bg: rgba(52, 175, 252, 0.14);
  --admin-drawer-sublink-active-bar: 3px solid #7bcafe;
  --admin-drawer-top-bg: #111422;
  --admin-drawer-top-border: #2c3050;
  --admin-drawer-top-text: #dde3f0;
  --admin-drawer-avatar-bg: #0a97ed;
  --admin-border: #2c3050;
  --admin-border-light: #222640;
  --admin-border-strong: #3d4472;
  --admin-border-focus: #34affc;
  --admin-outline: rgba(255, 255, 255, 0.07);
  --admin-outline-variant: rgba(255, 255, 255, 0.04);
  --admin-text: #eef2fa;
  --admin-text-secondary: #a8b4cc;
  --admin-text-muted: #6e7b99;
  --admin-text-disabled: #3d4472;
  --admin-text-tertiary: #b4bdd4;
  --admin-text-inverse: #111827;
  --admin-state-hover: rgba(255, 255, 255, 0.05);
  --admin-state-focus: rgba(255, 255, 255, 0.08);
  --admin-state-pressed: rgba(255, 255, 255, 0.1);
  --admin-state-drag: rgba(255, 255, 255, 0.12);
  --admin-focus-ring: 0 0 0 3px rgba(52, 175, 252, 0.25);
  --admin-focus-ring-border: 1px solid #34affc;
  --admin-error-focus-ring: 0 0 0 3px rgba(239, 68, 68, 0.2);
  --admin-elevation-0: none;
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.04);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.04);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.5);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-modal-box-bg: #1e2230;
  --admin-modal-btn-bg: #252838;
  --admin-modal-btn-color: #94a3b8;
  --admin-modal-btn-hover-bg: #2e3347;
  --admin-white: #1e2230;
  --admin-theme-mode: dark;
  --admin-grey-50: #252838;
  --admin-grey-100: #2e3347;
  --admin-grey-200: #3d4260;
  --admin-grey-300: #4a5072;
  --admin-grey-400: #64748b;
  --admin-grey-500: #8899aa;
  --admin-grey-600: #a0aec0;
  --admin-grey-700: #cbd5e1;
  --admin-grey-800: #e2e8f0;
  --admin-grey-900: #f1f5f9;
  --admin-header-notifications-pill-bg: rgba(255, 255, 255, 0.88);
  --admin-header-notifications-pill-fg: #1a1a2e;
  --admin-header-notifications-pill-border: rgba(255, 255, 255, 0.55);
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
  --admin-primary: #34affc;
  --admin-primary-rgb: 96, 165, 250;
  --admin-primary-hover: #7bcafe;
  --admin-on-primary: #ffffff;
  --admin-primary-light: rgba(52, 175, 252, 0.15);
  --admin-primary-border: rgba(52, 175, 252, 0.3);
  --admin-primary-text: #7bcafe;
  --admin-primary-dark: #7bcafe;
  --admin-text-muted: #8b9abf;
  --admin-error-bg: rgba(220, 38, 38, 0.15);
  --admin-error-text: #fca5a5;
  --admin-error-border: rgba(220, 38, 38, 0.35);
  --admin-success-bg: rgba(34, 197, 94, 0.13);
  --admin-success-text: #86efac;
  --admin-success-border: rgba(34, 197, 94, 0.3);
  --admin-warn-bg: rgba(234, 179, 8, 0.13);
  --admin-warn-text: #fde047;
  --admin-warn-border: rgba(234, 179, 8, 0.3);
  --admin-info-bg: rgba(59, 130, 246, 0.13);
  --admin-info-text: #93c5fd;
  --admin-premium-bg: rgba(249, 168, 37, 0.15);
  --admin-premium-text: #fcd34d;
  --admin-accent-violet-bg: rgba(91, 33, 182, 0.18);
  --admin-accent-violet-text: #c4b5fd;
  --admin-accent-teal-bg: rgba(15, 118, 110, 0.18);
  --admin-accent-teal-text: #5eead4;
  --admin-accent-coral-bg: rgba(234, 88, 12, 0.18);
  --admin-accent-coral-text: #fdba74;
}
[data-theme='light-mongo'] {
  --admin-body-bg: #f8faf8;
  --admin-main-bg: #ffffff;
  --admin-card-bg: #ffffff;
  --admin-header-bg: linear-gradient(135deg, #00684a 0%, #004d35 100%);
  --admin-drawer-bg: #f0f7f4;
  --admin-drawer-border: #d4e8df;
  --admin-drawer-text: #4a6b5a;
  --admin-drawer-text-active: #004d35;
  --admin-drawer-hover-bg: #d5ebe2;
  --admin-drawer-active-bg: rgba(0, 104, 74, 0.14);
  --admin-drawer-active-bar: 3px solid #004d35;
  --admin-drawer-active-accent: #004d35;
  --admin-drawer-focus-ring: rgba(0, 104, 74, 0.28);
  --admin-drawer-summary-open-bg: #daeee6;
  --admin-drawer-summary-open-border: #d4e8df;
  --admin-drawer-sublink-active-bg: rgba(0, 104, 74, 0.1);
  --admin-drawer-sublink-active-bar: 3px solid #004d35;
  --admin-drawer-top-bg: #eaf3ef;
  --admin-drawer-top-border: #d4e8df;
  --admin-drawer-top-text: #2d5042;
  --admin-drawer-avatar-bg: #00684a;
  --admin-border: #d4e8df;
  --admin-border-light: #e5f2ec;
  --admin-border-strong: #a8cfc0;
  --admin-border-focus: #00684a;
  --admin-outline: rgba(0, 104, 74, 0.1);
  --admin-outline-variant: rgba(0, 104, 74, 0.05);
  --admin-text: #1c1f26;
  --admin-text-secondary: #4a6b5a;
  --admin-text-muted: #7ea090;
  --admin-text-disabled: #c8ddd7;
  --admin-text-tertiary: #2d5042;
  --admin-text-inverse: #ffffff;
  --admin-primary: #00684a;
  --admin-primary-rgb: 0, 104, 74;
  --admin-primary-hover: #005538;
  --admin-primary-light: rgba(0, 104, 74, 0.1);
  --admin-primary-border: #a8cfc0;
  --admin-primary-text: #005538;
  --admin-on-primary: #ffffff;
  --admin-focus-ring: 0 0 0 3px rgba(0, 104, 74, 0.22);
  --admin-focus-ring-border: 1px solid #00684a;
  --admin-theme-mode: light;
}
[data-theme='dark-mongo'] {
  --admin-body-bg: #001e2b;
  --admin-main-bg: #00293d;
  --admin-card-bg: #023a51;
  --admin-header-bg: linear-gradient(135deg, #001e2b 0%, #00684a 100%);
  --admin-drawer-bg: #001620;
  --admin-drawer-border: #0a3a48;
  --admin-drawer-text: #a3b3b0;
  --admin-drawer-text-active: #e3fcef;
  --admin-drawer-hover-bg: #00293d;
  --admin-drawer-active-bg: rgba(0, 237, 100, 0.13);
  --admin-drawer-active-bar: 3px solid #00ed64;
  --admin-drawer-active-accent: #00ed64;
  --admin-drawer-focus-ring: rgba(0, 237, 100, 0.32);
  --admin-drawer-summary-open-bg: rgba(0, 237, 100, 0.05);
  --admin-drawer-summary-open-border: #0a3a48;
  --admin-drawer-sublink-active-bg: rgba(0, 237, 100, 0.1);
  --admin-drawer-sublink-active-bar: 3px solid #00ed64;
  --admin-drawer-top-bg: #001218;
  --admin-drawer-top-border: #0a3a48;
  --admin-drawer-top-text: #c3d3d0;
  --admin-drawer-avatar-bg: #00ed64;
  --admin-border: #0a3a48;
  --admin-border-light: #032838;
  --admin-border-strong: #135868;
  --admin-border-focus: #00ed64;
  --admin-outline: rgba(0, 237, 100, 0.1);
  --admin-outline-variant: rgba(0, 237, 100, 0.05);
  --admin-text: #e3fcef;
  --admin-text-secondary: #a3c0b8;
  --admin-text-muted: #6e8a85;
  --admin-text-disabled: #2a4a52;
  --admin-text-tertiary: #b8d0ca;
  --admin-text-inverse: #001e2b;
  --admin-primary: #00ed64;
  --admin-primary-rgb: 0, 237, 100;
  --admin-primary-hover: #00c853;
  --admin-primary-light: rgba(0, 237, 100, 0.15);
  --admin-primary-border: rgba(0, 237, 100, 0.35);
  --admin-primary-text: #00ed64;
  --admin-on-primary: #001e2b;
  --admin-state-hover: rgba(0, 237, 100, 0.05);
  --admin-state-focus: rgba(0, 237, 100, 0.1);
  --admin-state-pressed: rgba(0, 237, 100, 0.14);
  --admin-state-drag: rgba(0, 237, 100, 0.16);
  --admin-focus-ring: 0 0 0 3px rgba(0, 237, 100, 0.3);
  --admin-focus-ring-border: 1px solid #00ed64;
  --admin-error-focus-ring: 0 0 0 3px rgba(255, 105, 105, 0.22);
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(0, 237, 100, 0.04);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(0, 237, 100, 0.04);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.65);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-modal-box-bg: #00293d;
  --admin-modal-btn-bg: #023a51;
  --admin-modal-btn-color: #a3c0b8;
  --admin-modal-btn-hover-bg: #034a68;
  --admin-white: #00293d;
  --admin-theme-mode: dark;
  --admin-grey-50: #023a51;
  --admin-grey-100: #034a68;
  --admin-grey-200: #135868;
  --admin-grey-300: #2a6878;
  --admin-grey-400: #4a8088;
  --admin-grey-500: #6a8a85;
  --admin-grey-600: #a3c0b8;
  --admin-grey-700: #b8d0ca;
  --admin-grey-800: #d3e6e0;
  --admin-grey-900: #e3fcef;
  --admin-error: #ff6969;
  --admin-error-bg: rgba(255, 105, 105, 0.13);
  --admin-error-text: #ff8888;
  --admin-error-border: rgba(255, 105, 105, 0.32);
  --admin-success: #00ed64;
  --admin-success-bg: rgba(0, 237, 100, 0.13);
  --admin-success-text: #00ed64;
  --admin-success-border: rgba(0, 237, 100, 0.32);
  --admin-warn: #ffc94a;
  --admin-warn-bg: rgba(255, 201, 74, 0.13);
  --admin-warn-text: #ffd877;
  --admin-warn-border: rgba(255, 201, 74, 0.32);
  --admin-info: #5fc7ff;
  --admin-info-bg: rgba(95, 199, 255, 0.13);
  --admin-info-text: #8fd9ff;
  --admin-header-notifications-pill-bg: rgba(0, 237, 100, 0.3);
  --admin-header-notifications-pill-fg: #002a0f;
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}
[data-theme='light-notion'] {
  --admin-body-bg: #f7f6f3;
  --admin-main-bg: #ffffff;
  --admin-card-bg: #ffffff;
  --admin-header-bg: linear-gradient(135deg, #37352f 0%, #1e1c18 100%);
  --admin-drawer-bg: #efede8;
  --admin-drawer-border: #e3e0d8;
  --admin-drawer-text: #787672;
  --admin-drawer-text-active: #1e1c18;
  --admin-drawer-hover-bg: #ddd9d0;
  --admin-drawer-active-bg: rgba(55, 53, 47, 0.12);
  --admin-drawer-active-bar: 3px solid #1e1c18;
  --admin-drawer-active-accent: #1e1c18;
  --admin-drawer-focus-ring: rgba(55, 53, 47, 0.25);
  --admin-drawer-summary-open-bg: #e0ddd5;
  --admin-drawer-summary-open-border: #e3e0d8;
  --admin-drawer-sublink-active-bg: rgba(55, 53, 47, 0.09);
  --admin-drawer-sublink-active-bar: 3px solid #1e1c18;
  --admin-drawer-top-bg: #efede8;
  --admin-drawer-top-border: #e3e0d8;
  --admin-drawer-top-text: #37352f;
  --admin-drawer-avatar-bg: #37352f;
  --admin-border: #e3e0d8;
  --admin-border-light: #efede8;
  --admin-border-strong: #c7c4bc;
  --admin-border-focus: #37352f;
  --admin-outline: rgba(55, 53, 47, 0.08);
  --admin-outline-variant: rgba(55, 53, 47, 0.04);
  --admin-text: #37352f;
  --admin-text-secondary: #787672;
  --admin-text-muted: #aeaca8;
  --admin-text-disabled: #d3d1cc;
  --admin-text-tertiary: #5c5b57;
  --admin-text-inverse: #ffffff;
  --admin-primary: #37352f;
  --admin-primary-rgb: 55, 53, 47;
  --admin-primary-hover: #1e1c18;
  --admin-primary-light: rgba(55, 53, 47, 0.08);
  --admin-primary-border: #c7c4bc;
  --admin-primary-text: #37352f;
  --admin-on-primary: #ffffff;
  --admin-focus-ring: 0 0 0 3px rgba(55, 53, 47, 0.18);
  --admin-focus-ring-border: 1px solid #37352f;
  --admin-state-hover: rgba(55, 53, 47, 0.04);
  --admin-state-focus: rgba(55, 53, 47, 0.08);
  --admin-state-pressed: rgba(55, 53, 47, 0.1);
  --admin-state-drag: rgba(55, 53, 47, 0.12);
  --admin-modal-box-bg: #ffffff;
  --admin-theme-mode: light;
  --admin-grey-50: #f7f6f3;
  --admin-grey-100: #efede8;
  --admin-grey-200: #e3e0d8;
  --admin-grey-300: #d3d1cc;
  --admin-grey-400: #aeaca8;
  --admin-grey-500: #787672;
  --admin-grey-600: #5c5b57;
  --admin-grey-700: #3f3e3a;
  --admin-grey-800: #37352f;
  --admin-grey-900: #1e1c18;
}
[data-theme='dark-notion'] {
  --admin-body-bg: #191919;
  --admin-main-bg: #202020;
  --admin-card-bg: #2f2f2f;
  --admin-header-bg: linear-gradient(135deg, #191919 0%, #111111 100%);
  --admin-drawer-bg: #1a1a1a;
  --admin-drawer-border: #303030;
  --admin-drawer-text: #9b9b9b;
  --admin-drawer-text-active: #ffffff;
  --admin-drawer-hover-bg: #2e2e2e;
  --admin-drawer-active-bg: rgba(255, 255, 255, 0.12);
  --admin-drawer-active-bar: 3px solid #ffffff;
  --admin-drawer-active-accent: #ffffff;
  --admin-drawer-focus-ring: rgba(255, 255, 255, 0.28);
  --admin-drawer-summary-open-bg: rgba(255, 255, 255, 0.05);
  --admin-drawer-summary-open-border: #303030;
  --admin-drawer-sublink-active-bg: rgba(255, 255, 255, 0.09);
  --admin-drawer-sublink-active-bar: 3px solid #ffffff;
  --admin-drawer-top-bg: #141414;
  --admin-drawer-top-border: #303030;
  --admin-drawer-top-text: #e0e0e0;
  --admin-drawer-avatar-bg: #555555;
  --admin-border: #303030;
  --admin-border-light: #262626;
  --admin-border-strong: #454545;
  --admin-border-focus: #ffffff;
  --admin-outline: rgba(255, 255, 255, 0.07);
  --admin-outline-variant: rgba(255, 255, 255, 0.04);
  --admin-text: #ffffff;
  --admin-text-secondary: #9b9b9b;
  --admin-text-muted: #6b6b6b;
  --admin-text-disabled: #3d3d3d;
  --admin-text-tertiary: #c7c7c7;
  --admin-text-inverse: #191919;
  --admin-primary: #ffffff;
  --admin-primary-rgb: 255, 255, 255;
  --admin-primary-hover: #e0e0e0;
  --admin-primary-light: rgba(255, 255, 255, 0.1);
  --admin-primary-border: rgba(255, 255, 255, 0.25);
  --admin-primary-text: #ffffff;
  --admin-on-primary: #191919;
  --admin-state-hover: rgba(255, 255, 255, 0.05);
  --admin-state-focus: rgba(255, 255, 255, 0.08);
  --admin-state-pressed: rgba(255, 255, 255, 0.12);
  --admin-state-drag: rgba(255, 255, 255, 0.15);
  --admin-focus-ring: 0 0 0 3px rgba(255, 255, 255, 0.2);
  --admin-focus-ring-border: 1px solid #ffffff;
  --admin-error-focus-ring: 0 0 0 3px rgba(239, 68, 68, 0.22);
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.6);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-modal-box-bg: #2f2f2f;
  --admin-modal-btn-bg: #383838;
  --admin-modal-btn-color: #9b9b9b;
  --admin-modal-btn-hover-bg: #404040;
  --admin-white: #2f2f2f;
  --admin-theme-mode: dark;
  --admin-grey-50: #262626;
  --admin-grey-100: #303030;
  --admin-grey-200: #3d3d3d;
  --admin-grey-300: #484848;
  --admin-grey-400: #6b6b6b;
  --admin-grey-500: #8a8a8a;
  --admin-grey-600: #9b9b9b;
  --admin-grey-700: #b8b8b8;
  --admin-grey-800: #d4d4d4;
  --admin-grey-900: #ffffff;
  --admin-error: #ff8888;
  --admin-error-bg: rgba(220, 38, 38, 0.15);
  --admin-error-text: #fca5a5;
  --admin-error-border: rgba(220, 38, 38, 0.35);
  --admin-success: #88e8aa;
  --admin-success-bg: rgba(34, 197, 94, 0.13);
  --admin-success-text: #86efac;
  --admin-success-border: rgba(34, 197, 94, 0.3);
  --admin-warn: #ffe888;
  --admin-warn-bg: rgba(234, 179, 8, 0.13);
  --admin-warn-text: #fde047;
  --admin-warn-border: rgba(234, 179, 8, 0.3);
  --admin-info: #88ccff;
  --admin-info-bg: rgba(59, 130, 246, 0.13);
  --admin-info-text: #93c5fd;
  --admin-header-notifications-pill-bg: rgba(255, 255, 255, 0.88);
  --admin-header-notifications-pill-fg: #1a1a2e;
  --admin-header-notifications-pill-border: rgba(255, 255, 255, 0.55);
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
}
[data-theme='light-figma'] {
  --admin-body-bg: #f0f0f0;
  --admin-main-bg: #ffffff;
  --admin-card-bg: #ffffff;
  --admin-header-bg: linear-gradient(135deg, #2c2c2c 0%, #1e1e1e 100%);
  --admin-drawer-bg: #e8e8e8;
  --admin-drawer-border: #d0d0d0;
  --admin-drawer-text: #666666;
  --admin-drawer-text-active: #5a3fff;
  --admin-drawer-hover-bg: #d4d4d4;
  --admin-drawer-active-bg: rgba(123, 97, 255, 0.13);
  --admin-drawer-active-bar: 3px solid #5a3fff;
  --admin-drawer-active-accent: #5a3fff;
  --admin-drawer-focus-ring: rgba(123, 97, 255, 0.28);
  --admin-drawer-summary-open-bg: #d8d8d8;
  --admin-drawer-summary-open-border: #d0d0d0;
  --admin-drawer-sublink-active-bg: rgba(123, 97, 255, 0.1);
  --admin-drawer-sublink-active-bar: 3px solid #5a3fff;
  --admin-drawer-top-bg: #e0e0e0;
  --admin-drawer-top-border: #d0d0d0;
  --admin-drawer-top-text: #1e1e1e;
  --admin-drawer-avatar-bg: #7b61ff;
  --admin-border: #d0d0d0;
  --admin-border-light: #e8e8e8;
  --admin-border-strong: #aaaaaa;
  --admin-border-focus: #7b61ff;
  --admin-outline: rgba(0, 0, 0, 0.08);
  --admin-outline-variant: rgba(0, 0, 0, 0.04);
  --admin-text: #333333;
  --admin-text-secondary: #666666;
  --admin-text-muted: #999999;
  --admin-text-disabled: #cccccc;
  --admin-text-tertiary: #444444;
  --admin-text-inverse: #ffffff;
  --admin-primary: #7b61ff;
  --admin-primary-rgb: 123, 97, 255;
  --admin-primary-hover: #5a3fff;
  --admin-primary-light: rgba(123, 97, 255, 0.1);
  --admin-primary-border: #c4baff;
  --admin-primary-text: #5a3fff;
  --admin-on-primary: #ffffff;
  --admin-focus-ring: 0 0 0 3px rgba(123, 97, 255, 0.22);
  --admin-focus-ring-border: 1px solid #7b61ff;
  --admin-state-hover: rgba(0, 0, 0, 0.04);
  --admin-state-focus: rgba(123, 97, 255, 0.08);
  --admin-state-pressed: rgba(123, 97, 255, 0.1);
  --admin-state-drag: rgba(123, 97, 255, 0.12);
  --admin-modal-box-bg: #ffffff;
  --admin-theme-mode: light;
  --admin-grey-50: #f5f5f5;
  --admin-grey-100: #e8e8e8;
  --admin-grey-200: #d0d0d0;
  --admin-grey-300: #aaaaaa;
  --admin-grey-400: #999999;
  --admin-grey-500: #777777;
  --admin-grey-600: #555555;
  --admin-grey-700: #333333;
  --admin-grey-800: #222222;
  --admin-grey-900: #111111;
}
[data-theme='dark-figma'] {
  --admin-body-bg: #1e1e1e;
  --admin-main-bg: #252525;
  --admin-card-bg: #2c2c2c;
  --admin-header-bg: linear-gradient(135deg, #1e1e1e 0%, #7b61ff 100%);
  --admin-drawer-bg: #1a1a1a;
  --admin-drawer-border: #333340;
  --admin-drawer-text: #9898b0;
  --admin-drawer-text-active: #bdb0ff;
  --admin-drawer-hover-bg: #2e2e42;
  --admin-drawer-active-bg: rgba(157, 140, 255, 0.18);
  --admin-drawer-active-bar: 3px solid #bdb0ff;
  --admin-drawer-active-accent: #bdb0ff;
  --admin-drawer-focus-ring: rgba(157, 140, 255, 0.35);
  --admin-drawer-summary-open-bg: rgba(157, 140, 255, 0.08);
  --admin-drawer-summary-open-border: #333340;
  --admin-drawer-sublink-active-bg: rgba(157, 140, 255, 0.13);
  --admin-drawer-sublink-active-bar: 3px solid #bdb0ff;
  --admin-drawer-top-bg: #151515;
  --admin-drawer-top-border: #333340;
  --admin-drawer-top-text: #d0cfff;
  --admin-drawer-avatar-bg: #9d8cff;
  --admin-border: #333340;
  --admin-border-light: #2a2a38;
  --admin-border-strong: #4d4d62;
  --admin-border-focus: #9d8cff;
  --admin-outline: rgba(157, 140, 255, 0.08);
  --admin-outline-variant: rgba(157, 140, 255, 0.04);
  --admin-text: #e8e8ff;
  --admin-text-secondary: #9898b0;
  --admin-text-muted: #6868a0;
  --admin-text-disabled: #3a3a55;
  --admin-text-tertiary: #c0c0e0;
  --admin-text-inverse: #1e1e1e;
  --admin-primary: #9d8cff;
  --admin-primary-rgb: 157, 140, 255;
  --admin-primary-hover: #bdb0ff;
  --admin-primary-light: rgba(157, 140, 255, 0.15);
  --admin-primary-border: rgba(157, 140, 255, 0.35);
  --admin-primary-text: #bdb0ff;
  --admin-on-primary: #1e1e1e;
  --admin-state-hover: rgba(157, 140, 255, 0.06);
  --admin-state-focus: rgba(157, 140, 255, 0.1);
  --admin-state-pressed: rgba(157, 140, 255, 0.14);
  --admin-state-drag: rgba(157, 140, 255, 0.18);
  --admin-focus-ring: 0 0 0 3px rgba(157, 140, 255, 0.28);
  --admin-focus-ring-border: 1px solid #9d8cff;
  --admin-error-focus-ring: 0 0 0 3px rgba(239, 68, 68, 0.22);
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(157, 140, 255, 0.05);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(157, 140, 255, 0.06);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.65);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-modal-box-bg: #252525;
  --admin-modal-btn-bg: #2c2c2c;
  --admin-modal-btn-color: #9898b0;
  --admin-modal-btn-hover-bg: #363648;
  --admin-white: #252525;
  --admin-theme-mode: dark;
  --admin-grey-50: #242434;
  --admin-grey-100: #2c2c3c;
  --admin-grey-200: #3a3a50;
  --admin-grey-300: #4d4d62;
  --admin-grey-400: #6868a0;
  --admin-grey-500: #8888c0;
  --admin-grey-600: #9898b0;
  --admin-grey-700: #c0c0e0;
  --admin-grey-800: #d8d8f8;
  --admin-grey-900: #e8e8ff;
  --admin-error: #ff7777;
  --admin-error-bg: rgba(220, 38, 38, 0.15);
  --admin-error-text: #fca5a5;
  --admin-error-border: rgba(220, 38, 38, 0.35);
  --admin-success: #77eeaa;
  --admin-success-bg: rgba(34, 197, 94, 0.13);
  --admin-success-text: #86efac;
  --admin-success-border: rgba(34, 197, 94, 0.3);
  --admin-warn: #ffee66;
  --admin-warn-bg: rgba(234, 179, 8, 0.13);
  --admin-warn-text: #fde047;
  --admin-warn-border: rgba(234, 179, 8, 0.3);
  --admin-info: #99bbff;
  --admin-info-bg: rgba(59, 130, 246, 0.13);
  --admin-info-text: #93c5fd;
  --admin-header-notifications-pill-bg: rgba(157, 140, 255, 0.22);
  --admin-header-notifications-pill-fg: #1a1830;
  --admin-header-notifications-pill-border: rgba(157, 140, 255, 0.4);
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
}
[data-theme='light-claude'] {
  --admin-body-bg: #f0ede8;
  --admin-main-bg: #faf9f7;
  --admin-card-bg: #ffffff;
  --admin-header-bg: linear-gradient(135deg, #cc785c 0%, #b85f40 100%);
  --admin-drawer-bg: #ebe7e1;
  --admin-drawer-border: #ddd9d2;
  --admin-drawer-text: #8c7f72;
  --admin-drawer-text-active: #b85f40;
  --admin-drawer-hover-bg: #d8d2c8;
  --admin-drawer-active-bg: rgba(204, 120, 92, 0.14);
  --admin-drawer-active-bar: 3px solid #b85f40;
  --admin-drawer-active-accent: #b85f40;
  --admin-drawer-focus-ring: rgba(204, 120, 92, 0.28);
  --admin-drawer-summary-open-bg: #dedad2;
  --admin-drawer-summary-open-border: #ddd9d2;
  --admin-drawer-sublink-active-bg: rgba(204, 120, 92, 0.1);
  --admin-drawer-sublink-active-bar: 3px solid #b85f40;
  --admin-drawer-top-bg: #ebe7e1;
  --admin-drawer-top-border: #ddd9d2;
  --admin-drawer-top-text: #3d3027;
  --admin-drawer-avatar-bg: #cc785c;
  --admin-border: #ddd9d2;
  --admin-border-light: #ebe7e1;
  --admin-border-strong: #c0b8ad;
  --admin-border-focus: #cc785c;
  --admin-outline: rgba(204, 120, 92, 0.08);
  --admin-outline-variant: rgba(204, 120, 92, 0.04);
  --admin-text: #2c2016;
  --admin-text-secondary: #8c7f72;
  --admin-text-muted: #b8afa6;
  --admin-text-disabled: #ddd9d2;
  --admin-text-tertiary: #5c5046;
  --admin-text-inverse: #ffffff;
  --admin-primary: #cc785c;
  --admin-primary-rgb: 204, 120, 92;
  --admin-primary-hover: #b85f40;
  --admin-primary-light: rgba(204, 120, 92, 0.1);
  --admin-primary-border: #e0c4b8;
  --admin-primary-text: #b85f40;
  --admin-on-primary: #ffffff;
  --admin-focus-ring: 0 0 0 3px rgba(204, 120, 92, 0.22);
  --admin-focus-ring-border: 1px solid #cc785c;
  --admin-state-hover: rgba(204, 120, 92, 0.04);
  --admin-state-focus: rgba(204, 120, 92, 0.08);
  --admin-state-pressed: rgba(204, 120, 92, 0.1);
  --admin-state-drag: rgba(204, 120, 92, 0.12);
  --admin-modal-box-bg: #ffffff;
  --admin-theme-mode: light;
  --admin-grey-50: #f5f2ee;
  --admin-grey-100: #ebe7e1;
  --admin-grey-200: #ddd9d2;
  --admin-grey-300: #c0b8ad;
  --admin-grey-400: #b8afa6;
  --admin-grey-500: #8c7f72;
  --admin-grey-600: #5c5046;
  --admin-grey-700: #3d3027;
  --admin-grey-800: #2c2016;
  --admin-grey-900: #1a1008;
}
[data-theme='dark-claude'] {
  --admin-body-bg: #1a1815;
  --admin-main-bg: #22201c;
  --admin-card-bg: #2a2622;
  --admin-header-bg: linear-gradient(135deg, #1a1815 0%, #cc785c 100%);
  --admin-drawer-bg: #161412;
  --admin-drawer-border: #352e28;
  --admin-drawer-text: #9a8c80;
  --admin-drawer-text-active: #f0ae8a;
  --admin-drawer-hover-bg: #302a24;
  --admin-drawer-active-bg: rgba(232, 149, 109, 0.18);
  --admin-drawer-active-bar: 3px solid #f0ae8a;
  --admin-drawer-active-accent: #f0ae8a;
  --admin-drawer-focus-ring: rgba(232, 149, 109, 0.35);
  --admin-drawer-summary-open-bg: rgba(232, 149, 109, 0.08);
  --admin-drawer-summary-open-border: #352e28;
  --admin-drawer-sublink-active-bg: rgba(232, 149, 109, 0.13);
  --admin-drawer-sublink-active-bar: 3px solid #f0ae8a;
  --admin-drawer-top-bg: #120f0c;
  --admin-drawer-top-border: #352e28;
  --admin-drawer-top-text: #e8d8cc;
  --admin-drawer-avatar-bg: #e8956d;
  --admin-border: #352e28;
  --admin-border-light: #2a2420;
  --admin-border-strong: #4a4038;
  --admin-border-focus: #e8956d;
  --admin-outline: rgba(232, 149, 109, 0.1);
  --admin-outline-variant: rgba(232, 149, 109, 0.05);
  --admin-text: #f0e8e0;
  --admin-text-secondary: #9a8c80;
  --admin-text-muted: #6a5e55;
  --admin-text-disabled: #3a3028;
  --admin-text-tertiary: #d0c0b0;
  --admin-text-inverse: #1a1815;
  --admin-primary: #e8956d;
  --admin-primary-rgb: 232, 149, 109;
  --admin-primary-hover: #f0ae8a;
  --admin-primary-light: rgba(232, 149, 109, 0.15);
  --admin-primary-border: rgba(232, 149, 109, 0.38);
  --admin-primary-text: #f0ae8a;
  --admin-on-primary: #1a0a00;
  --admin-state-hover: rgba(232, 149, 109, 0.06);
  --admin-state-focus: rgba(232, 149, 109, 0.1);
  --admin-state-pressed: rgba(232, 149, 109, 0.14);
  --admin-state-drag: rgba(232, 149, 109, 0.18);
  --admin-focus-ring: 0 0 0 3px rgba(232, 149, 109, 0.3);
  --admin-focus-ring-border: 1px solid #e8956d;
  --admin-error-focus-ring: 0 0 0 3px rgba(239, 68, 68, 0.22);
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(232, 149, 109, 0.05);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(232, 149, 109, 0.06);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.7);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-modal-box-bg: #2a2622;
  --admin-modal-btn-bg: #322c26;
  --admin-modal-btn-color: #9a8c80;
  --admin-modal-btn-hover-bg: #3c3630;
  --admin-white: #2a2622;
  --admin-theme-mode: dark;
  --admin-grey-50: #26221e;
  --admin-grey-100: #2a2622;
  --admin-grey-200: #352e28;
  --admin-grey-300: #4a4038;
  --admin-grey-400: #6a5e55;
  --admin-grey-500: #8a7c70;
  --admin-grey-600: #9a8c80;
  --admin-grey-700: #c8b8a8;
  --admin-grey-800: #e0d0c0;
  --admin-grey-900: #f0e8e0;
  --admin-error: #ff9999;
  --admin-error-bg: rgba(220, 38, 38, 0.15);
  --admin-error-text: #fca5a5;
  --admin-error-border: rgba(220, 38, 38, 0.35);
  --admin-success: #88ddaa;
  --admin-success-bg: rgba(34, 197, 94, 0.13);
  --admin-success-text: #86efac;
  --admin-success-border: rgba(34, 197, 94, 0.3);
  --admin-warn: #ffdd88;
  --admin-warn-bg: rgba(234, 179, 8, 0.13);
  --admin-warn-text: #fde047;
  --admin-warn-border: rgba(234, 179, 8, 0.3);
  --admin-info: #88aaee;
  --admin-info-bg: rgba(59, 130, 246, 0.13);
  --admin-info-text: #93c5fd;
  --admin-header-notifications-pill-bg: rgba(232, 149, 109, 0.3);
  --admin-header-notifications-pill-fg: #3a1a08;
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}
[data-theme='light-apple'] {
  --admin-body-bg: #f5f5f7;
  --admin-main-bg: #ffffff;
  --admin-card-bg: #ffffff;
  --admin-header-bg: linear-gradient(135deg, #1d1d1f 0%, #3d3d3f 100%);
  --admin-drawer-bg: #f0f0f2;
  --admin-drawer-border: #e0e0e5;
  --admin-drawer-text: #86868b;
  --admin-drawer-text-active: #007aff;
  --admin-drawer-hover-bg: #e8e8ed;
  --admin-drawer-active-bg: rgba(0, 122, 255, 0.08);
  --admin-drawer-active-bar: 3px solid #007aff;
  --admin-drawer-active-accent: #0066dd;
  --admin-drawer-focus-ring: rgba(0, 122, 255, 0.22);
  --admin-drawer-summary-open-bg: #e8e8ed;
  --admin-drawer-summary-open-border: #e0e0e5;
  --admin-drawer-sublink-active-bg: rgba(0, 122, 255, 0.06);
  --admin-drawer-sublink-active-bar: 3px solid #007aff;
  --admin-drawer-top-bg: #f0f0f2;
  --admin-drawer-top-border: #e0e0e5;
  --admin-drawer-top-text: #1d1d1f;
  --admin-drawer-avatar-bg: #007aff;
  --admin-border: #e0e0e5;
  --admin-border-light: #ebebf0;
  --admin-border-strong: #bcbcc8;
  --admin-border-focus: #007aff;
  --admin-outline: rgba(0, 0, 0, 0.08);
  --admin-outline-variant: rgba(0, 0, 0, 0.04);
  --admin-text: #1d1d1f;
  --admin-text-secondary: #6e6e73;
  --admin-text-muted: #aeaeb2;
  --admin-text-disabled: #d1d1d6;
  --admin-text-tertiary: #3d3d3f;
  --admin-text-inverse: #ffffff;
  --admin-primary: #007aff;
  --admin-primary-rgb: 0, 122, 255;
  --admin-primary-hover: #0066dd;
  --admin-primary-light: rgba(0, 122, 255, 0.08);
  --admin-primary-border: #b8d4ff;
  --admin-primary-text: #0066dd;
  --admin-on-primary: #ffffff;
  --admin-focus-ring: 0 0 0 3px rgba(0, 122, 255, 0.2);
  --admin-focus-ring-border: 1px solid #007aff;
  --admin-state-hover: rgba(0, 0, 0, 0.04);
  --admin-state-focus: rgba(0, 122, 255, 0.07);
  --admin-state-pressed: rgba(0, 122, 255, 0.1);
  --admin-state-drag: rgba(0, 122, 255, 0.12);
  --admin-modal-box-bg: #ffffff;
  --admin-theme-mode: light;
  --admin-grey-50: #f5f5f7;
  --admin-grey-100: #f0f0f2;
  --admin-grey-200: #e0e0e5;
  --admin-grey-300: #d1d1d6;
  --admin-grey-400: #aeaeb2;
  --admin-grey-500: #8e8e93;
  --admin-grey-600: #6e6e73;
  --admin-grey-700: #48484a;
  --admin-grey-800: #3a3a3c;
  --admin-grey-900: #1d1d1f;
}
[data-theme='dark-apple'] {
  --admin-body-bg: #000000;
  --admin-main-bg: #111111;
  --admin-card-bg: #1c1c1e;
  --admin-header-bg: linear-gradient(135deg, #1c1c1e 0%, #2c2c2e 100%);
  --admin-drawer-bg: #111111;
  --admin-drawer-border: #3a3a3c;
  --admin-drawer-text: #8e8e93;
  --admin-drawer-text-active: #0a84ff;
  --admin-drawer-hover-bg: #1c1c1e;
  --admin-drawer-active-bg: rgba(10, 132, 255, 0.15);
  --admin-drawer-active-bar: 3px solid #0a84ff;
  --admin-drawer-active-accent: #409cff;
  --admin-drawer-focus-ring: rgba(10, 132, 255, 0.3);
  --admin-drawer-summary-open-bg: rgba(255, 255, 255, 0.04);
  --admin-drawer-summary-open-border: #3a3a3c;
  --admin-drawer-sublink-active-bg: rgba(10, 132, 255, 0.12);
  --admin-drawer-sublink-active-bar: 3px solid #409cff;
  --admin-drawer-top-bg: #0a0a0a;
  --admin-drawer-top-border: #3a3a3c;
  --admin-drawer-top-text: #e5e5ea;
  --admin-drawer-avatar-bg: #0a84ff;
  --admin-border: #3a3a3c;
  --admin-border-light: #2c2c2e;
  --admin-border-strong: #545456;
  --admin-border-focus: #0a84ff;
  --admin-outline: rgba(255, 255, 255, 0.06);
  --admin-outline-variant: rgba(255, 255, 255, 0.03);
  --admin-text: #f5f5f7;
  --admin-text-secondary: #aeaeb2;
  --admin-text-muted: #636366;
  --admin-text-disabled: #3a3a3c;
  --admin-text-tertiary: #c7c7cc;
  --admin-text-inverse: #1d1d1f;
  --admin-primary: #0a84ff;
  --admin-primary-rgb: 10, 132, 255;
  --admin-primary-hover: #409cff;
  --admin-primary-light: rgba(10, 132, 255, 0.15);
  --admin-primary-border: rgba(10, 132, 255, 0.35);
  --admin-primary-text: #409cff;
  --admin-on-primary: #ffffff;
  --admin-state-hover: rgba(255, 255, 255, 0.05);
  --admin-state-focus: rgba(10, 132, 255, 0.08);
  --admin-state-pressed: rgba(10, 132, 255, 0.12);
  --admin-state-drag: rgba(10, 132, 255, 0.15);
  --admin-focus-ring: 0 0 0 3px rgba(10, 132, 255, 0.28);
  --admin-focus-ring-border: 1px solid #0a84ff;
  --admin-error-focus-ring: 0 0 0 3px rgba(255, 69, 58, 0.25);
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.04);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.65), 0 0 0 1px rgba(255, 255, 255, 0.04);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.75);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-modal-box-bg: #1c1c1e;
  --admin-modal-btn-bg: #2c2c2e;
  --admin-modal-btn-color: #aeaeb2;
  --admin-modal-btn-hover-bg: #3a3a3c;
  --admin-white: #1c1c1e;
  --admin-theme-mode: dark;
  --admin-grey-50: #1c1c1e;
  --admin-grey-100: #2c2c2e;
  --admin-grey-200: #3a3a3c;
  --admin-grey-300: #48484a;
  --admin-grey-400: #636366;
  --admin-grey-500: #8e8e93;
  --admin-grey-600: #aeaeb2;
  --admin-grey-700: #c7c7cc;
  --admin-grey-800: #e5e5ea;
  --admin-grey-900: #f5f5f7;
  --admin-error: #ff453a;
  --admin-error-bg: rgba(255, 69, 58, 0.15);
  --admin-error-text: #ff6961;
  --admin-error-border: rgba(255, 69, 58, 0.35);
  --admin-success: #30d158;
  --admin-success-bg: rgba(48, 209, 88, 0.13);
  --admin-success-text: #34c759;
  --admin-success-border: rgba(48, 209, 88, 0.3);
  --admin-warn: #ffd60a;
  --admin-warn-bg: rgba(255, 214, 10, 0.13);
  --admin-warn-text: #ffd60a;
  --admin-warn-border: rgba(255, 214, 10, 0.3);
  --admin-info: #64d2ff;
  --admin-info-bg: rgba(100, 210, 255, 0.13);
  --admin-info-text: #64d2ff;
  --admin-header-notifications-pill-bg: rgba(255, 255, 255, 0.88);
  --admin-header-notifications-pill-fg: #1a1a2e;
  --admin-header-notifications-pill-border: rgba(255, 255, 255, 0.55);
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}
[data-theme='light-airtable'] {
  --admin-body-bg: #f0f5ff;
  --admin-main-bg: #ffffff;
  --admin-card-bg: #ffffff;
  --admin-header-bg: linear-gradient(135deg, #2d7ff9 0%, #1a6ee0 100%);
  --admin-drawer-bg: #e8f0ff;
  --admin-drawer-border: #d0e0ff;
  --admin-drawer-text: #6080c0;
  --admin-drawer-text-active: #2d7ff9;
  --admin-drawer-hover-bg: #dde8ff;
  --admin-drawer-active-bg: rgba(45, 127, 249, 0.1);
  --admin-drawer-active-bar: 3px solid #2d7ff9;
  --admin-drawer-active-accent: #1a6ee0;
  --admin-drawer-focus-ring: rgba(45, 127, 249, 0.25);
  --admin-drawer-summary-open-bg: #dde8ff;
  --admin-drawer-summary-open-border: #d0e0ff;
  --admin-drawer-sublink-active-bg: rgba(45, 127, 249, 0.08);
  --admin-drawer-sublink-active-bar: 3px solid #2d7ff9;
  --admin-drawer-top-bg: #e8f0ff;
  --admin-drawer-top-border: #d0e0ff;
  --admin-drawer-top-text: #12266a;
  --admin-drawer-avatar-bg: #2d7ff9;
  --admin-border: #d0e0ff;
  --admin-border-light: #e8f0ff;
  --admin-border-strong: #a8c4f0;
  --admin-border-focus: #2d7ff9;
  --admin-outline: rgba(45, 127, 249, 0.1);
  --admin-outline-variant: rgba(45, 127, 249, 0.05);
  --admin-text: #12266a;
  --admin-text-secondary: #6080c0;
  --admin-text-muted: #90a8e0;
  --admin-text-disabled: #c8d8ff;
  --admin-text-tertiary: #2a4a9a;
  --admin-text-inverse: #ffffff;
  --admin-primary: #2d7ff9;
  --admin-primary-rgb: 45, 127, 249;
  --admin-primary-hover: #1a6ee0;
  --admin-primary-light: rgba(45, 127, 249, 0.1);
  --admin-primary-border: #a8c4f0;
  --admin-primary-text: #1a6ee0;
  --admin-on-primary: #ffffff;
  --admin-focus-ring: 0 0 0 3px rgba(45, 127, 249, 0.22);
  --admin-focus-ring-border: 1px solid #2d7ff9;
  --admin-state-hover: rgba(45, 127, 249, 0.04);
  --admin-state-focus: rgba(45, 127, 249, 0.08);
  --admin-state-pressed: rgba(45, 127, 249, 0.1);
  --admin-state-drag: rgba(45, 127, 249, 0.12);
  --admin-modal-box-bg: #ffffff;
  --admin-theme-mode: light;
  --admin-grey-50: #f0f5ff;
  --admin-grey-100: #e8f0ff;
  --admin-grey-200: #d0e0ff;
  --admin-grey-300: #a8c4f0;
  --admin-grey-400: #90a8e0;
  --admin-grey-500: #6080c0;
  --admin-grey-600: #2a4a9a;
  --admin-grey-700: #1c3478;
  --admin-grey-800: #12266a;
  --admin-grey-900: #0a1840;
}
[data-theme='dark-airtable'] {
  --admin-body-bg: #0b1419;
  --admin-main-bg: #141e26;
  --admin-card-bg: #1a2530;
  --admin-header-bg: linear-gradient(135deg, #0b1419 0%, #2d7ff9 100%);
  --admin-drawer-bg: #0d1820;
  --admin-drawer-border: #1e3040;
  --admin-drawer-text: #6080a0;
  --admin-drawer-text-active: #4b9ffe;
  --admin-drawer-hover-bg: #162030;
  --admin-drawer-active-bg: rgba(75, 159, 254, 0.14);
  --admin-drawer-active-bar: 3px solid #4b9ffe;
  --admin-drawer-active-accent: #7ab8ff;
  --admin-drawer-focus-ring: rgba(75, 159, 254, 0.32);
  --admin-drawer-summary-open-bg: rgba(75, 159, 254, 0.06);
  --admin-drawer-summary-open-border: #1e3040;
  --admin-drawer-sublink-active-bg: rgba(75, 159, 254, 0.1);
  --admin-drawer-sublink-active-bar: 3px solid #7ab8ff;
  --admin-drawer-top-bg: #080e14;
  --admin-drawer-top-border: #1e3040;
  --admin-drawer-top-text: #c0d8f0;
  --admin-drawer-avatar-bg: #4b9ffe;
  --admin-border: #1e3040;
  --admin-border-light: #162030;
  --admin-border-strong: #2e4860;
  --admin-border-focus: #4b9ffe;
  --admin-outline: rgba(75, 159, 254, 0.1);
  --admin-outline-variant: rgba(75, 159, 254, 0.05);
  --admin-text: #d0e8ff;
  --admin-text-secondary: #6080a0;
  --admin-text-muted: #405870;
  --admin-text-disabled: #1e3040;
  --admin-text-tertiary: #90b8e0;
  --admin-text-inverse: #0b1419;
  --admin-primary: #4b9ffe;
  --admin-primary-rgb: 75, 159, 254;
  --admin-primary-hover: #7ab8ff;
  --admin-primary-light: rgba(75, 159, 254, 0.15);
  --admin-primary-border: rgba(75, 159, 254, 0.35);
  --admin-primary-text: #7ab8ff;
  --admin-on-primary: #0b1419;
  --admin-state-hover: rgba(75, 159, 254, 0.06);
  --admin-state-focus: rgba(75, 159, 254, 0.1);
  --admin-state-pressed: rgba(75, 159, 254, 0.14);
  --admin-state-drag: rgba(75, 159, 254, 0.18);
  --admin-focus-ring: 0 0 0 3px rgba(75, 159, 254, 0.28);
  --admin-focus-ring-border: 1px solid #4b9ffe;
  --admin-error-focus-ring: 0 0 0 3px rgba(239, 68, 68, 0.22);
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(75, 159, 254, 0.05);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(75, 159, 254, 0.06);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.7);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-modal-box-bg: #1a2530;
  --admin-modal-btn-bg: #1e2e40;
  --admin-modal-btn-color: #6080a0;
  --admin-modal-btn-hover-bg: #263850;
  --admin-white: #1a2530;
  --admin-theme-mode: dark;
  --admin-grey-50: #162030;
  --admin-grey-100: #1e2e40;
  --admin-grey-200: #263850;
  --admin-grey-300: #2e4860;
  --admin-grey-400: #405870;
  --admin-grey-500: #6080a0;
  --admin-grey-600: #90b8e0;
  --admin-grey-700: #a8c8f0;
  --admin-grey-800: #c0d8ff;
  --admin-grey-900: #d0e8ff;
  --admin-error: #ff8888;
  --admin-error-bg: rgba(220, 38, 38, 0.15);
  --admin-error-text: #fca5a5;
  --admin-error-border: rgba(220, 38, 38, 0.35);
  --admin-success: #88ddbb;
  --admin-success-bg: rgba(34, 197, 94, 0.13);
  --admin-success-text: #86efac;
  --admin-success-border: rgba(34, 197, 94, 0.3);
  --admin-warn: #ffdd66;
  --admin-warn-bg: rgba(234, 179, 8, 0.13);
  --admin-warn-text: #fde047;
  --admin-warn-border: rgba(234, 179, 8, 0.3);
  --admin-info: #88ccff;
  --admin-info-bg: rgba(59, 130, 246, 0.13);
  --admin-info-text: #93c5fd;
  --admin-header-notifications-pill-bg: rgba(75, 159, 254, 0.3);
  --admin-header-notifications-pill-fg: #07182e;
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}
[data-theme='light-gumroad'] {
  --admin-body-bg: #f4f4f0;
  --admin-main-bg: #ffffff;
  --admin-card-bg: #ffffff;
  --admin-header-bg: #000000;
  --admin-drawer-bg: #f0f0eb;
  --admin-drawer-border: #e0e0da;
  --admin-drawer-text: #777770;
  --admin-drawer-text-active: #000000;
  --admin-drawer-hover-bg: #eaeae4;
  --admin-drawer-active-bg: rgba(0, 0, 0, 0.06);
  --admin-drawer-active-bar: 3px solid #000000;
  --admin-drawer-active-accent: #000000;
  --admin-drawer-focus-ring: rgba(0, 0, 0, 0.22);
  --admin-drawer-summary-open-bg: #eaeae4;
  --admin-drawer-summary-open-border: #d8d8d2;
  --admin-drawer-sublink-active-bg: rgba(0, 0, 0, 0.05);
  --admin-drawer-sublink-active-bar: 3px solid #000000;
  --admin-drawer-top-bg: #e8e8e3;
  --admin-drawer-top-border: #d8d8d2;
  --admin-drawer-top-text: #000000;
  --admin-drawer-avatar-bg: #000000;
  --admin-border: #000000;
  --admin-border-light: #1c1c1a;
  --admin-border-strong: #000000;
  --admin-border-focus: #ff90e8;
  --admin-outline: rgba(255, 144, 232, 0.1);
  --admin-outline-variant: rgba(255, 144, 232, 0.05);
  --admin-text: #000000;
  --admin-text-secondary: #555555;
  --admin-text-muted: #999999;
  --admin-text-disabled: #cccccc;
  --admin-text-tertiary: #333333;
  --admin-text-inverse: #ffffff;
  --admin-primary: #ff90e8;
  --admin-primary-rgb: 255, 144, 232;
  --admin-primary-hover: #f060d0;
  --admin-primary-light: rgba(255, 144, 232, 0.12);
  --admin-primary-border: rgba(255, 144, 232, 0.4);
  --admin-primary-text: #d040b0;
  --admin-on-primary: #000000;
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(0, 0, 0, 0.04);
  --admin-elevation-2: 0 4px 12px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.04);
  --admin-elevation-3: 0 8px 24px rgba(0, 0, 0, 0.14);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-state-hover: rgba(0, 0, 0, 0.04);
  --admin-state-focus: rgba(255, 144, 232, 0.1);
  --admin-state-pressed: rgba(255, 144, 232, 0.14);
  --admin-state-drag: rgba(255, 144, 232, 0.18);
  --admin-focus-ring: 0 0 0 3px rgba(255, 144, 232, 0.35);
  --admin-focus-ring-border: 1px solid #ff90e8;
  --admin-error-focus-ring: 0 0 0 3px rgba(220, 52, 30, 0.22);
  --admin-modal-box-bg: #ffffff;
  --admin-modal-btn-bg: #f4f4f0;
  --admin-modal-btn-color: #555555;
  --admin-modal-btn-hover-bg: #e8e8e3;
  --admin-white: #ffffff;
  --admin-theme-mode: light;
  --admin-grey-50: #f4f4f0;
  --admin-grey-100: #ecece7;
  --admin-grey-200: #e0e0da;
  --admin-grey-300: #cccccc;
  --admin-grey-400: #aaaaaa;
  --admin-grey-500: #888888;
  --admin-grey-600: #666666;
  --admin-grey-700: #444444;
  --admin-grey-800: #222222;
  --admin-grey-900: #000000;
  --admin-error: #dc341e;
  --admin-error-bg: rgba(220, 52, 30, 0.1);
  --admin-error-text: #b02010;
  --admin-error-border: rgba(220, 52, 30, 0.3);
  --admin-success: #23a094;
  --admin-success-bg: rgba(35, 160, 148, 0.1);
  --admin-success-text: #1a7870;
  --admin-success-border: rgba(35, 160, 148, 0.3);
  --admin-warn: #ffc900;
  --admin-warn-bg: rgba(255, 201, 0, 0.12);
  --admin-warn-text: #a07800;
  --admin-warn-border: rgba(255, 201, 0, 0.35);
  --admin-info: #90a8ed;
  --admin-info-bg: rgba(144, 168, 237, 0.12);
  --admin-info-text: #5060b0;
  --admin-info-border: rgba(144, 168, 237, 0.35);
  --admin-header-notifications-pill-bg: rgba(255, 144, 232, 0.18);
  --admin-header-notifications-pill-fg: #000000;
  --admin-header-notifications-pill-border: rgba(255, 144, 232, 0.45);
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
}
[data-theme='dark-gumroad'] {
  --admin-body-bg: #0a0a08;
  --admin-main-bg: #141412;
  --admin-card-bg: #1c1c1a;
  --admin-header-bg: #000000;
  --admin-drawer-bg: #0e0e0c;
  --admin-drawer-border: #3a3a38;
  --admin-drawer-text: #888880;
  --admin-drawer-text-active: #ffffff;
  --admin-drawer-hover-bg: #222220;
  --admin-drawer-active-bg: transparent;
  --admin-drawer-active-bar: none;
  --admin-drawer-active-accent: #0a0a08;
  --admin-drawer-focus-ring: rgba(255, 144, 232, 0.3);
  --admin-drawer-summary-open-bg: rgba(255, 255, 255, 0.04);
  --admin-drawer-summary-open-border: #3a3a38;
  --admin-drawer-sublink-active-bg: rgba(255, 255, 255, 0.1);
  --admin-drawer-sublink-active-bar: 3px solid #ff90e8;
  --admin-drawer-top-bg: #080806;
  --admin-drawer-top-border: #3a3a38;
  --admin-drawer-top-text: #e0e0d8;
  --admin-drawer-avatar-bg: #2a2a28;
  --admin-border: rgba(255, 255, 255, 0.18);
  --admin-border-light: rgba(255, 255, 255, 0.08);
  --admin-border-strong: rgba(255, 255, 255, 0.35);
  --admin-border-focus: #ff90e8;
  --admin-outline: rgba(255, 144, 232, 0.1);
  --admin-outline-variant: rgba(255, 144, 232, 0.05);
  --admin-text: #f0f0e8;
  --admin-text-secondary: #a0a098;
  --admin-text-muted: #606058;
  --admin-text-disabled: #343430;
  --admin-text-tertiary: #c8c8c0;
  --admin-text-inverse: #0a0a08;
  --admin-primary: #ff90e8;
  --admin-primary-rgb: 255, 144, 232;
  --admin-primary-hover: #ffb0f0;
  --admin-primary-light: rgba(255, 144, 232, 0.18);
  --admin-primary-border: rgba(255, 144, 232, 0.45);
  --admin-primary-text: #ff90e8;
  --admin-on-primary: #000000;
  --admin-elevation-1: 0 1px 3px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(255, 144, 232, 0.04);
  --admin-elevation-2: 0 4px 16px rgba(0, 0, 0, 0.65), 0 0 0 1px rgba(255, 144, 232, 0.05);
  --admin-elevation-3: 0 8px 30px rgba(0, 0, 0, 0.75);
  --admin-shadow: var(--admin-elevation-1);
  --admin-shadow-card: var(--admin-elevation-2);
  --admin-state-hover: rgba(255, 144, 232, 0.06);
  --admin-state-focus: rgba(255, 144, 232, 0.1);
  --admin-state-pressed: rgba(255, 144, 232, 0.14);
  --admin-state-drag: rgba(255, 144, 232, 0.18);
  --admin-focus-ring: 0 0 0 3px rgba(255, 144, 232, 0.35);
  --admin-focus-ring-border: 1px solid #ff90e8;
  --admin-error-focus-ring: 0 0 0 3px rgba(220, 52, 30, 0.28);
  --admin-modal-box-bg: #1c1c1a;
  --admin-modal-btn-bg: #242422;
  --admin-modal-btn-color: #a0a098;
  --admin-modal-btn-hover-bg: #2c2c2a;
  --admin-white: #1c1c1a;
  --admin-theme-mode: dark;
  --admin-grey-50: #1a1a18;
  --admin-grey-100: #222220;
  --admin-grey-200: #2a2a28;
  --admin-grey-300: #3a3a38;
  --admin-grey-400: #606058;
  --admin-grey-500: #808078;
  --admin-grey-600: #a0a098;
  --admin-grey-700: #c0c0b8;
  --admin-grey-800: #dcdcd4;
  --admin-grey-900: #f0f0e8;
  --admin-error: #ff5544;
  --admin-error-bg: rgba(220, 52, 30, 0.18);
  --admin-error-text: #ff8870;
  --admin-error-border: rgba(220, 52, 30, 0.4);
  --admin-success: #30c8bc;
  --admin-success-bg: rgba(35, 160, 148, 0.18);
  --admin-success-text: #50e8dc;
  --admin-success-border: rgba(35, 160, 148, 0.4);
  --admin-warn: #ffd830;
  --admin-warn-bg: rgba(255, 201, 0, 0.16);
  --admin-warn-text: #ffe870;
  --admin-warn-border: rgba(255, 201, 0, 0.38);
  --admin-info: #b0c0ff;
  --admin-info-bg: rgba(144, 168, 237, 0.18);
  --admin-info-text: #c8d4ff;
  --admin-info-border: rgba(144, 168, 237, 0.4);
  --admin-header-notifications-pill-bg: rgba(255, 144, 232, 0.3);
  --admin-header-notifications-pill-fg: #2a0020;
  --admin-header-notifications-pill-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}
.admin {
  margin: 0;
  font-family:
    'Inter',
    system-ui,
    -apple-system,
    'Segoe UI',
    sans-serif;
  font-size: var(--admin-fs-body);
  line-height: 1.5;
  color: var(--admin-text);
  background: var(--admin-body-bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.admin__wrap {
  display: flex;
  min-height: 100vh;
}
.admin__content-wrap {
  flex: 1;
  min-width: 0;
  margin-left: var(--admin-drawer-width);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  transition: margin-left var(--admin-duration-long) ease;
}
.admin__main {
  flex: 1;
  padding: var(--admin-space-lg) var(--admin-space-2xl);
  background: var(--admin-body-bg);
  min-height: 0;
  overflow: auto;
}
.admin__content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--admin-space-sm);
}
.admin.admin--embed .admin__main--embed {
  min-height: 100vh;
  padding: var(--admin-space-lg) var(--admin-space-2xl);
}
.admin.admin--embed .admin__content--embed {
  max-width: 1200px;
  margin: 0 auto;
}
.admin--auth .admin__wrap {
  display: block;
}
.admin--auth .admin__content-wrap {
  margin-left: 0;
}
.admin-drawer-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: var(--admin-modal-backdrop-bg);
  z-index: 85;
  opacity: 0;
  transition: opacity var(--admin-duration-long) var(--admin-ease);
}
@media (min-width: 1280px) {
  .admin__main {
    padding: var(--admin-space-2xl) var(--admin-space-3xl);
  }
}
@media (min-width: 1280px) and (max-width: 1279px) {
  .admin__main {
    padding: var(--admin-space-xl) var(--admin-space-2xl);
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .admin__content-wrap {
    margin-left: 0;
  }
  .admin__main {
    padding: var(--admin-space-xl) var(--admin-space-2xl);
  }
  .admin__content {
    padding: 0;
  }
  .admin-drawer-overlay {
    display: block;
    pointer-events: none;
  }
  .admin--drawer-open .admin-drawer-overlay {
    pointer-events: auto;
    opacity: 1;
  }
  .admin.admin--drawer-open {
    overflow: hidden;
  }
}
@media (max-width: 767px) {
  .admin__content-wrap {
    margin-left: 0;
  }
  .admin__main {
    padding: var(--admin-space-lg) var(--admin-space-2xl);
  }
  .admin__content {
    padding: 0;
  }
  .admin-drawer-overlay {
    display: block;
    pointer-events: none;
  }
  .admin--drawer-open .admin-drawer-overlay {
    pointer-events: auto;
    opacity: 1;
  }
  .admin.admin--drawer-open {
    overflow: hidden;
  }
}
@media (max-width: 991px) {
  .admin-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.admin-auth__password-wrap {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  flex-wrap: nowrap;
  min-height: var(--admin-size-input-height);
  border-radius: var(--admin-radius-sm);
  border: 1px solid var(--admin-outline-variant);
  background: var(--admin-white);
  transition:
    border-color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
  overflow: hidden;
}
.admin-auth__password-wrap:hover {
  border-color: var(--admin-border);
  background: var(--admin-grey-50);
}
.admin-auth__password-wrap:focus-within {
  border-color: var(--admin-primary);
  border-width: 2px;
  box-shadow: 0 0 0 1px var(--admin-primary);
}
.admin-auth__password-wrap .admin-auth__input {
  flex: 1 1 auto;
  min-width: 0;
  min-height: var(--admin-size-input-height);
  border: none;
  border-radius: 0;
  padding-right: var(--admin-size-input-height);
  padding-left: var(--admin-space);
  background: rgba(0, 0, 0, 0);
  box-shadow: none;
}
.admin-auth__password-wrap .admin-auth__input:focus {
  box-shadow: none;
}
.admin-auth__password-toggle {
  flex: 0 0 var(--admin-size-input-height);
  width: var(--admin-size-input-height);
  min-width: var(--admin-size-input-height);
  align-self: stretch;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: none;
  border-left: 1px solid var(--admin-border-light);
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-muted);
  cursor: pointer;
  font: inherit;
  line-height: 1;
  -webkit-appearance: none;
  appearance: none;
  transition:
    color var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease);
}
.admin-auth__password-toggle:hover {
  color: var(--admin-text-secondary);
  background: var(--admin-state-hover);
}
.admin-auth__password-toggle:active {
  background: var(--admin-state-pressed);
}
.admin-auth__password-toggle:focus {
  outline: none;
}
.admin-auth__password-toggle:focus-visible {
  outline: var(--admin-focus-ring);
  outline-offset: -2px;
}
.admin-auth__password-toggle .admin-auth__toggle-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.admin-auth__password-toggle .admin-auth__toggle-icon i {
  font-size: var(--admin-fs-body);
}
.admin.admin--auth .admin-auth__password-wrap {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
}
.admin.admin--auth .admin-auth__password-wrap > .admin-auth__input {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}
.admin.admin--auth .admin-auth__password-wrap > .admin-auth__password-toggle {
  flex: 0 0 var(--admin-size-input-height) !important;
  width: var(--admin-size-input-height) !important;
  min-width: var(--admin-size-input-height) !important;
  display: inline-flex !important;
  align-self: stretch !important;
}
.admin-header {
  flex-shrink: 0;
  height: var(--admin-header-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--admin-space-lg) 0 var(--admin-space-lg);
  gap: var(--admin-space);
  background: var(--admin-header-bg);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow:
    0 2px 4px rgba(0, 0, 0, 0.15),
    0 1px 2px rgba(0, 0, 0, 0.1);
  z-index: 80;
}
.admin-header__menu-btn {
  display: none;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: none;
  border-radius: var(--admin-radius-sm);
  background: hsla(0, 0%, 100%, 0.1);
  color: hsla(0, 0%, 100%, 0.9);
  cursor: pointer;
  font: inherit;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
  flex-shrink: 0;
}
.admin-header__menu-btn:hover {
  background: hsla(0, 0%, 100%, 0.18);
  color: #fff;
}
.admin-header__menu-btn:focus-visible {
  outline: 2px solid hsla(0, 0%, 100%, 0.7);
  outline-offset: 2px;
}
.admin-header__menu-btn .admin-header__menu-icon {
  font-size: var(--admin-fs-body);
}
.admin-header__menu-btn .admin-header__menu-icon--close {
  display: none;
}
body.admin--drawer-open .admin-header__menu-icon--open {
  display: none;
}
body.admin--drawer-open .admin-header__menu-icon--close {
  display: inline-block !important;
}
.admin-header__breadcrumb {
  flex: 1;
  min-width: 0;
  margin: 0 var(--admin-space-sm) 0 0;
}
.admin-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: var(--admin-space-2xs);
  font-size: var(--admin-fs-sm);
}
.admin-breadcrumb__item {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  margin: 0;
}
.admin-breadcrumb__link {
  color: hsla(0, 0%, 100%, 0.55);
  text-decoration: none;
  font-weight: 400;
  transition: color var(--admin-duration) var(--admin-ease);
}
.admin-breadcrumb__link:hover {
  color: hsla(0, 0%, 100%, 0.85);
}
.admin-breadcrumb__link:focus-visible {
  outline: 2px solid hsla(0, 0%, 100%, 0.7);
  outline-offset: 2px;
}
.admin-breadcrumb__sep {
  color: hsla(0, 0%, 100%, 0.25);
  user-select: none;
  pointer-events: none;
  font-size: var(--admin-fs-xs);
}
.admin-breadcrumb__current {
  color: hsla(0, 0%, 100%, 0.95);
  font-weight: 600;
  letter-spacing: -0.01em;
}
.admin-header__actions {
  display: flex;
  align-items: center;
  gap: var(--admin-space-2xs);
}
.admin-header__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  min-height: 4rem;
  padding: 0 var(--admin-space-sm);
  border-radius: var(--admin-radius-full);
  color: hsla(0, 0%, 100%, 0.75);
  background: rgba(0, 0, 0, 0);
  border: none;
  cursor: pointer;
  font: inherit;
  font-size: var(--admin-fs-sm);
  font-weight: 500;
  text-decoration: none;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-header__action:hover {
  background: hsla(0, 0%, 100%, 0.1);
  color: hsla(0, 0%, 100%, 0.95);
}
.admin-header__action:focus-visible {
  outline: 2px solid hsla(0, 0%, 100%, 0.7);
  outline-offset: 2px;
}
.admin-header__action i {
  font-size: 1.8rem;
  flex-shrink: 0;
}
.admin-header__action-label {
  white-space: nowrap;
  font-size: var(--admin-fs-sm);
}
.admin-header__menu {
  position: relative;
}
.admin-header__menu > summary {
  list-style: none;
}
.admin-header__menu > summary::-webkit-details-marker,
.admin-header__menu > summary::marker {
  display: none;
}
.admin-header__menu[open] > summary {
  background: hsla(0, 0%, 100%, 0.12);
  color: hsla(0, 0%, 100%, 0.95);
}
.admin-header__menu[open] > summary .admin-header__action-caret {
  transform: rotate(180deg);
}
.admin-header__action--menu {
  cursor: pointer;
  gap: 0.4rem;
}
.admin-header__action-caret {
  font-size: var(--admin-fs-xs);
  opacity: 0.7;
  transition: transform var(--admin-duration) var(--admin-ease);
}
.admin-header__menu-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 200px;
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius-lg);
  box-shadow:
    0 12px 40px rgba(0, 0, 0, 0.14),
    0 4px 12px rgba(0, 0, 0, 0.08),
    0 0 0 1px rgba(0, 0, 0, 0.06);
  border: 1px solid var(--admin-border-light);
  padding: var(--admin-space-xs) 0;
  z-index: 200;
  overflow: hidden;
}
.admin-header__menu-item {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  width: 100%;
  padding: var(--admin-space-sm) var(--admin-space-lg);
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
  text-decoration: none;
  background: none;
  border: none;
  cursor: pointer;
  font-family: inherit;
  text-align: left;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
  box-sizing: border-box;
}
.admin-header__menu-item:hover {
  background: var(--admin-grey-50);
  color: var(--admin-text);
}
.admin-header__menu-item:focus-visible {
  outline: 2px solid var(--admin-primary);
  outline-offset: -2px;
}
.admin-header__menu-item i {
  flex-shrink: 0;
  width: 1.1em;
  text-align: center;
  color: var(--admin-grey-400);
  font-size: var(--admin-fs-body);
  transition: color var(--admin-duration) var(--admin-ease);
}
.admin-header__menu-item:hover i {
  color: var(--admin-grey-600);
}
.admin-header__menu-item > span {
  flex: 1;
  min-width: 0;
  font-weight: 500;
}
.admin-header__actions-divider {
  width: 1px;
  height: 20px;
  background: hsla(0, 0%, 100%, 0.12);
  flex-shrink: 0;
  margin: 0 var(--admin-space-2xs);
}
.admin-header__dropdown {
  position: relative;
}
.admin-header__dropdown[open] .admin-header__avatar {
  background: #fff;
  box-shadow:
    0 0 0 3px hsla(0, 0%, 100%, 0.25),
    0 2px 8px rgba(0, 0, 0, 0.3);
}
.admin-header__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #fff;
  border: none;
  cursor: pointer;
  list-style: none;
  padding: 0;
  box-shadow:
    0 0 0 2px hsla(0, 0%, 100%, 0.2),
    0 2px 6px rgba(0, 0, 0, 0.25);
  transition:
    background var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
}
.admin-header__avatar::-webkit-details-marker,
.admin-header__avatar::marker {
  display: none;
}
.admin-header__avatar:hover {
  background: hsla(0, 0%, 100%, 0.92);
  box-shadow:
    0 0 0 3px hsla(0, 0%, 100%, 0.3),
    0 3px 10px rgba(0, 0, 0, 0.3);
}
.admin-header__avatar:has(.admin-header__avatar-img) {
  background: var(--admin-grey-200);
  box-shadow:
    0 0 0 2px hsla(0, 0%, 100%, 0.2),
    0 2px 6px rgba(0, 0, 0, 0.25);
}
.admin-header__avatar--lg {
  width: 52px;
  height: 52px;
  cursor: default;
  background: #fff;
  box-shadow:
    0 0 0 3px hsla(0, 0%, 100%, 0.15),
    0 4px 12px rgba(0, 0, 0, 0.15);
  flex-shrink: 0;
}
.admin-header__avatar-letter {
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: #0a0a0a;
  line-height: 1;
  letter-spacing: -0.01em;
}
.admin-header__avatar-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}
.admin-header__avatar--lg .admin-header__avatar-letter {
  font-size: var(--admin-fs-body-lg);
  font-weight: 800;
  color: #0a0a0a;
}
.admin-header__avatar--lg .admin-header__avatar-img {
  width: 52px;
  height: 52px;
}
.admin-header__dropdown-menu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 268px;
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius-lg);
  box-shadow:
    0 12px 40px rgba(0, 0, 0, 0.14),
    0 4px 12px rgba(0, 0, 0, 0.08),
    0 0 0 1px rgba(0, 0, 0, 0.06);
  border: 1px solid var(--admin-border-light);
  padding: 0;
  z-index: 200;
  overflow: hidden;
}
.admin-header__dropdown-head {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--admin-space-xl) var(--admin-space-xl) var(--admin-space-lg);
  padding-top: calc(var(--admin-space-3xl) + var(--admin-space));
}
.admin-header__dropdown-head-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: var(--admin-size-dropdown-head-bg);
  background: linear-gradient(135deg, var(--admin-header-bg-hover) 0%, var(--admin-header-bg) 100%);
  border-radius: var(--admin-radius-lg) var(--admin-radius-lg) 0 0;
}
.admin-header__dropdown-head .admin-header__avatar--lg {
  position: relative;
  z-index: 1;
  margin-top: calc(var(--admin-size-icon-lg) * -1);
  box-shadow:
    0 4px 16px rgba(0, 0, 0, 0.18),
    0 0 0 3px hsla(0, 0%, 100%, 0.9);
}
.admin-header__dropdown-name {
  position: relative;
  z-index: 1;
  margin-top: var(--admin-space-sm);
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text);
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  letter-spacing: -0.01em;
}
.admin-header__dropdown-role {
  position: relative;
  z-index: 1;
  margin-top: var(--admin-space-3xs);
  font-size: var(--admin-fs-xs);
  font-weight: 500;
  color: var(--admin-text-muted);
  background: var(--admin-grey-100);
  padding: 2px var(--admin-space-xs);
  border-radius: var(--admin-radius-full);
}
.admin-header__dropdown-list {
  padding: var(--admin-space-xs) 0;
  border-top: 1px solid var(--admin-border-light);
}
.admin-header__dropdown-item {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  width: 100%;
  padding: var(--admin-space-sm) var(--admin-space-lg);
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
  text-decoration: none;
  background: none;
  border: none;
  cursor: pointer;
  font-family: inherit;
  text-align: left;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
  box-sizing: border-box;
}
.admin-header__dropdown-item:hover {
  background: var(--admin-grey-50);
  color: var(--admin-text);
}
.admin-header__dropdown-item:focus-visible {
  outline: 2px solid var(--admin-primary);
  outline-offset: -2px;
}
.admin-header__dropdown-item i {
  flex-shrink: 0;
  width: 1.1em;
  text-align: center;
  color: var(--admin-grey-400);
  font-size: var(--admin-fs-body);
  transition: color var(--admin-duration) var(--admin-ease);
}
.admin-header__dropdown-item:hover i {
  color: var(--admin-grey-600);
}
.admin-header__dropdown-item > span {
  flex: 1;
  min-width: 0;
  font-weight: 500;
}
.admin-header__dropdown-item--logout {
  color: var(--admin-error);
  font-weight: 500;
  margin-top: var(--admin-space-3xs);
  padding-top: var(--admin-space-sm);
  border-top: 1px solid var(--admin-border-light);
}
.admin-header__dropdown-item--logout:hover {
  background: var(--admin-error-bg);
  color: var(--admin-error);
}
.admin-header__dropdown-item--logout i {
  color: var(--admin-error);
  opacity: 0.7;
}
.admin-header__dropdown-item--logout:hover i {
  color: var(--admin-error);
  opacity: 1;
}
.admin-header__dropdown-form {
  margin: 0;
  padding: 0;
  border: none;
}
.admin-header__notifications {
  position: relative;
}
.admin-header__notifications-bell-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.admin-header__notifications-unread-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.6rem;
  height: 1.6rem;
  margin-left: 0.3rem;
  padding: 0 0.4rem;
  border-radius: var(--admin-radius-full);
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
  flex-shrink: 0;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
  background: hsla(0, 0%, 100%, 0.95);
  color: #111;
  border: 1.5px solid hsla(0, 0%, 100%, 0.7);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}
.admin-header__notifications-unread-pill.is-unread {
  background: #fff;
  color: #c81e1e;
  border-color: rgba(200, 30, 30, 0.25);
  box-shadow:
    0 0 0 1.5px rgba(200, 30, 30, 0.18),
    0 2px 8px rgba(0, 0, 0, 0.35);
}
.admin-header__notifications summary::-webkit-details-marker,
.admin-header__notifications summary::marker {
  display: none;
}
.admin-header__notifications-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 360px;
  max-width: 440px;
  max-height: 80vh;
  display: flex;
  flex-direction: column;
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius-lg);
  box-shadow:
    0 12px 40px rgba(0, 0, 0, 0.14),
    0 4px 12px rgba(0, 0, 0, 0.08),
    0 0 0 1px rgba(0, 0, 0, 0.06);
  border: 1px solid var(--admin-border-light);
  z-index: 200;
  overflow: hidden;
}
.admin-header__notifications-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-sm);
  padding: var(--admin-space) var(--admin-space-lg);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-header__notifications-head-title {
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-header__notifications-head-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.8rem;
  height: 1.6rem;
  padding: 0 0.5rem;
  border-radius: var(--admin-radius-full);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  color: var(--admin-text-secondary);
  background: var(--admin-grey-100);
}
.admin-header__notifications-head-count--unread,
.admin-header__notifications-head-count.is-unread {
  color: #fff;
  background: var(--admin-primary);
}
.admin-header__notifications-tabs {
  display: flex;
  gap: 0.25rem;
  padding: 0.5rem var(--admin-space-lg);
  overflow-x: auto;
  border-bottom: 1px solid var(--admin-border-light);
  scrollbar-width: thin;
}
.admin-header__notifications-tab {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  flex-shrink: 0;
  padding: 0.4rem 0.75rem;
  font-size: var(--admin-fs-sm);
  font-weight: 500;
  color: var(--admin-text-secondary);
  background: rgba(0, 0, 0, 0);
  border: 1px solid rgba(0, 0, 0, 0);
  border-radius: var(--admin-radius-full);
  cursor: pointer;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-header__notifications-tab:hover {
  background: var(--admin-grey-50);
  color: var(--admin-text);
}
.admin-header__notifications-tab--active {
  background: var(--admin-primary-soft, rgba(59, 130, 246, 0.1));
  color: var(--admin-primary);
  border-color: var(--admin-primary-soft, rgba(59, 130, 246, 0.2));
}
.admin-header__notifications-tab-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  height: 1.1rem;
  padding: 0 0.35rem;
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  background: var(--admin-primary);
  border-radius: var(--admin-radius-full);
}
.admin-header__notifications-list {
  padding: 0;
  max-height: 420px;
  overflow-y: auto;
}
.admin-header__notifications-loading {
  margin: 0;
  padding: var(--admin-space-xl);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  text-align: center;
}
.admin-header__notifications-item {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: var(--admin-space-sm);
  padding: var(--admin-space) var(--admin-space-lg);
  border-bottom: 1px solid var(--admin-border-light);
  transition: background var(--admin-duration) var(--admin-ease);
}
.admin-header__notifications-item:last-child {
  border-bottom: none;
}
.admin-header__notifications-item:hover {
  background: var(--admin-grey-50);
}
.admin-header__notifications-item.is-unread {
  background: var(--admin-primary-soft, rgba(59, 130, 246, 0.05));
}
.admin-header__notifications-item.is-unread::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3px;
  background: var(--admin-primary);
}
.admin-header__notifications-item.is-unread:hover {
  background: var(--admin-primary-soft, rgba(59, 130, 246, 0.08));
}
.admin-header__notifications-item-link {
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space-sm);
  flex: 1;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}
.admin-header__notifications-item-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: 0.95rem;
}
.admin-header__notifications-item.is-unread .admin-header__notifications-item-icon {
  background: var(--admin-primary-soft, rgba(59, 130, 246, 0.15));
  color: var(--admin-primary);
}
.admin-header__notifications-item-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}
.admin-header__notifications-item-title {
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-header__notifications-item-msg {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.4;
}
.admin-header__notifications-item-meta {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 2px;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-header__notifications-item-group-chip {
  display: inline-flex;
  align-items: center;
  padding: 0.1rem 0.45rem;
  font-size: 10.5px;
  font-weight: 500;
  color: var(--admin-text-secondary);
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-full);
}
.admin-header__notifications-item-time {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-header__notifications-item-mark {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  margin: 0;
}
.admin-header__notifications-item-mark button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  background: rgba(0, 0, 0, 0);
  border: 1px solid var(--admin-border-light);
  border-radius: 50%;
  color: var(--admin-text-muted);
  cursor: pointer;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-header__notifications-item-mark button:hover {
  background: var(--admin-primary);
  color: #fff;
  border-color: var(--admin-primary);
}
.admin-header__notifications-item--empty {
  display: block;
  padding: var(--admin-space-xl);
  color: var(--admin-text-muted);
  text-align: center;
  font-size: var(--admin-fs-sm);
}
.admin-header__notifications-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  border-top: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50);
}
.admin-header__notifications-mark-all-form {
  flex: 1;
  min-width: 0;
  margin: 0;
  border-right: 1px solid var(--admin-border-light);
}
.admin-header__notifications-mark-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  width: 100%;
  padding: var(--admin-space-sm) var(--admin-space);
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text-secondary);
  background: rgba(0, 0, 0, 0);
  border: none;
  cursor: pointer;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-header__notifications-mark-all:hover {
  background: var(--admin-grey-100);
  color: var(--admin-primary);
}
.admin-header__notifications-all,
.admin-header__notifications-log {
  flex: 1;
  min-width: 0;
  padding: var(--admin-space-sm) var(--admin-space);
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-primary);
  text-align: center;
  text-decoration: none;
  transition: background var(--admin-duration) var(--admin-ease);
}
.admin-header__notifications-all:hover,
.admin-header__notifications-log:hover {
  background: var(--admin-grey-100);
}
.admin-header__notifications-log {
  border-left: 1px solid var(--admin-border-light);
  color: var(--admin-text-secondary);
  font-weight: 500;
}
.admin-header__notifications-log:hover {
  color: var(--admin-primary);
}
.admin-header__theme-icon {
  font-size: 1.5rem;
  flex-shrink: 0;
}
.admin-header__theme-icon--system {
  display: inline-block;
}
.admin-header__theme-icon--light {
  display: none;
}
.admin-header__theme-icon--dark {
  display: none;
}
:root[data-theme='light'] .admin-header__theme-icon--system,
:root[data-theme='light-quiet'] .admin-header__theme-icon--system,
:root[data-theme='light-solarized'] .admin-header__theme-icon--system,
:root[data-theme='light-hc'] .admin-header__theme-icon--system,
[data-forced-theme='light'] .admin-header__theme-icon--system {
  display: none;
}
:root[data-theme='light'] .admin-header__theme-icon--light,
:root[data-theme='light-quiet'] .admin-header__theme-icon--light,
:root[data-theme='light-solarized'] .admin-header__theme-icon--light,
:root[data-theme='light-hc'] .admin-header__theme-icon--light,
[data-forced-theme='light'] .admin-header__theme-icon--light {
  display: inline-block;
}
:root[data-theme='light'] .admin-header__theme-icon--dark,
:root[data-theme='light-quiet'] .admin-header__theme-icon--dark,
:root[data-theme='light-solarized'] .admin-header__theme-icon--dark,
:root[data-theme='light-hc'] .admin-header__theme-icon--dark,
[data-forced-theme='light'] .admin-header__theme-icon--dark {
  display: none;
}
:root[data-theme='dark'] .admin-header__theme-icon--system,
:root[data-theme='dark-modern'] .admin-header__theme-icon--system,
:root[data-theme='dark-abyss'] .admin-header__theme-icon--system,
:root[data-theme='dark-dracula'] .admin-header__theme-icon--system,
:root[data-theme='dark-mongo'] .admin-header__theme-icon--system,
:root[data-theme='dark-red'] .admin-header__theme-icon--system,
[data-forced-theme='dark'] .admin-header__theme-icon--system {
  display: none;
}
:root[data-theme='dark'] .admin-header__theme-icon--light,
:root[data-theme='dark-modern'] .admin-header__theme-icon--light,
:root[data-theme='dark-abyss'] .admin-header__theme-icon--light,
:root[data-theme='dark-dracula'] .admin-header__theme-icon--light,
:root[data-theme='dark-mongo'] .admin-header__theme-icon--light,
:root[data-theme='dark-red'] .admin-header__theme-icon--light,
[data-forced-theme='dark'] .admin-header__theme-icon--light {
  display: none;
}
:root[data-theme='dark'] .admin-header__theme-icon--dark,
:root[data-theme='dark-modern'] .admin-header__theme-icon--dark,
:root[data-theme='dark-abyss'] .admin-header__theme-icon--dark,
:root[data-theme='dark-dracula'] .admin-header__theme-icon--dark,
:root[data-theme='dark-mongo'] .admin-header__theme-icon--dark,
:root[data-theme='dark-red'] .admin-header__theme-icon--dark,
[data-forced-theme='dark'] .admin-header__theme-icon--dark {
  display: inline-block;
}
.admin-header__theme-dropdown {
  min-width: 18rem;
}
.admin-header__theme-group-label {
  display: block;
  padding: 0.5rem 1rem 0.2rem;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
  cursor: default;
  user-select: none;
  border-top: 1px solid var(--admin-border-light);
  margin-top: 0.2rem;
}
.admin-header__theme-group-label:first-of-type {
  border-top: none;
  margin-top: 0;
}
.admin-header__theme-check {
  margin-left: auto;
  font-size: var(--admin-fs-xs);
  color: var(--admin-primary);
  opacity: 0;
  flex-shrink: 0;
}
.admin-header__theme-item[aria-checked='true'] .admin-header__theme-check {
  opacity: 1;
}
[data-theme='dark'] .admin-header__menu-dropdown,
[data-theme='dark'] .admin-header__dropdown-menu,
[data-theme='dark'] .admin-header__notifications-dropdown,
[data-theme='dark-modern'] .admin-header__menu-dropdown,
[data-theme='dark-modern'] .admin-header__dropdown-menu,
[data-theme='dark-modern'] .admin-header__notifications-dropdown,
[data-theme='dark-abyss'] .admin-header__menu-dropdown,
[data-theme='dark-abyss'] .admin-header__dropdown-menu,
[data-theme='dark-abyss'] .admin-header__notifications-dropdown,
[data-theme='dark-dracula'] .admin-header__menu-dropdown,
[data-theme='dark-dracula'] .admin-header__dropdown-menu,
[data-theme='dark-dracula'] .admin-header__notifications-dropdown,
[data-theme='dark-mongo'] .admin-header__menu-dropdown,
[data-theme='dark-mongo'] .admin-header__dropdown-menu,
[data-theme='dark-mongo'] .admin-header__notifications-dropdown,
[data-theme='dark-red'] .admin-header__menu-dropdown,
[data-theme='dark-red'] .admin-header__dropdown-menu,
[data-theme='dark-red'] .admin-header__notifications-dropdown {
  background: var(--admin-card-bg);
  border-color: var(--admin-border);
  box-shadow:
    0 12px 40px rgba(0, 0, 0, 0.45),
    0 4px 12px rgba(0, 0, 0, 0.3),
    0 0 0 1px var(--admin-border);
}
[data-theme='dark'] .admin-header__dropdown-list,
[data-theme='dark'] .admin-header__notifications-list,
[data-theme='dark'] .admin-header__notifications-footer,
[data-theme='dark-modern'] .admin-header__dropdown-list,
[data-theme='dark-modern'] .admin-header__notifications-list,
[data-theme='dark-modern'] .admin-header__notifications-footer,
[data-theme='dark-abyss'] .admin-header__dropdown-list,
[data-theme='dark-abyss'] .admin-header__notifications-list,
[data-theme='dark-abyss'] .admin-header__notifications-footer,
[data-theme='dark-dracula'] .admin-header__dropdown-list,
[data-theme='dark-dracula'] .admin-header__notifications-list,
[data-theme='dark-dracula'] .admin-header__notifications-footer,
[data-theme='dark-mongo'] .admin-header__dropdown-list,
[data-theme='dark-mongo'] .admin-header__notifications-list,
[data-theme='dark-mongo'] .admin-header__notifications-footer,
[data-theme='dark-red'] .admin-header__dropdown-list,
[data-theme='dark-red'] .admin-header__notifications-list,
[data-theme='dark-red'] .admin-header__notifications-footer {
  border-color: var(--admin-border);
}
[data-theme='dark'] .admin-header__notifications-item,
[data-theme='dark-modern'] .admin-header__notifications-item,
[data-theme='dark-abyss'] .admin-header__notifications-item,
[data-theme='dark-dracula'] .admin-header__notifications-item,
[data-theme='dark-mongo'] .admin-header__notifications-item,
[data-theme='dark-red'] .admin-header__notifications-item {
  border-color: var(--admin-border);
}
[data-theme='dark'] .admin-header__dropdown-item--logout,
[data-theme='dark-modern'] .admin-header__dropdown-item--logout,
[data-theme='dark-abyss'] .admin-header__dropdown-item--logout,
[data-theme='dark-dracula'] .admin-header__dropdown-item--logout,
[data-theme='dark-mongo'] .admin-header__dropdown-item--logout,
[data-theme='dark-red'] .admin-header__dropdown-item--logout {
  border-top-color: var(--admin-border);
}
[data-theme='dark'] .admin-header__notifications-log,
[data-theme='dark-modern'] .admin-header__notifications-log,
[data-theme='dark-abyss'] .admin-header__notifications-log,
[data-theme='dark-dracula'] .admin-header__notifications-log,
[data-theme='dark-mongo'] .admin-header__notifications-log,
[data-theme='dark-red'] .admin-header__notifications-log {
  border-left-color: var(--admin-border);
}
[data-theme='dark'] .admin-header__actions-divider,
[data-theme='dark-modern'] .admin-header__actions-divider,
[data-theme='dark-abyss'] .admin-header__actions-divider,
[data-theme='dark-dracula'] .admin-header__actions-divider,
[data-theme='dark-mongo'] .admin-header__actions-divider,
[data-theme='dark-red'] .admin-header__actions-divider {
  background: hsla(0, 0%, 100%, 0.1);
}
[data-theme='dark'] .admin-header__dropdown-role,
[data-theme='dark-modern'] .admin-header__dropdown-role,
[data-theme='dark-abyss'] .admin-header__dropdown-role,
[data-theme='dark-dracula'] .admin-header__dropdown-role,
[data-theme='dark-mongo'] .admin-header__dropdown-role,
[data-theme='dark-red'] .admin-header__dropdown-role {
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
}
@media (max-width: 992px) {
  .admin-header {
    padding: 0 var(--admin-space) 0 var(--admin-space);
  }
  .admin-header__menu-btn {
    display: inline-flex;
  }
  .admin-header__action-label {
    display: block;
    font-size: 9px;
    line-height: 1;
    text-align: center;
    margin-top: 2px;
  }
  .admin-header__action {
    position: relative;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 4px 8px;
    min-width: 44px;
    min-height: 48px;
  }
  .admin-header__action:not(.admin-header__action--link) {
    display: none;
  }
  .admin-header__actions .admin-header__action--link {
    display: inline-flex;
  }
  .admin-header__action-caret {
    display: none;
  }
  .admin-header__notifications-unread-pill {
    position: absolute;
    top: 4px;
    right: 4px;
    margin-left: 0;
  }
  .admin-header__notifications-bell-wrap {
    position: relative;
  }
  .admin-header__menu-dropdown {
    right: 0;
  }
  .admin-header__actions-divider {
    display: none;
  }
  .admin-header__breadcrumb {
    display: none !important;
    margin-right: var(--admin-space-2xs);
  }
  .admin-breadcrumb {
    font-size: var(--admin-fs-base);
  }
}
.admin-drawer {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: var(--admin-drawer-width);
  display: flex;
  flex-direction: column;
  background: var(--admin-drawer-bg);
  z-index: 90;
  overflow: hidden;
  border-right: 1px solid var(--admin-drawer-border);
  transition:
    transform var(--admin-duration-long) var(--admin-ease),
    box-shadow var(--admin-duration-long) var(--admin-ease);
}
.admin-drawer__brand {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  padding: var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-drawer-border);
  height: var(--admin-header-height);
}
.admin-drawer__logo {
  display: block;
  flex: 1;
  min-width: 0;
  text-decoration: none;
  transition: opacity var(--admin-duration) var(--admin-ease);
}
.admin-drawer__logo:hover {
  opacity: 0.85;
}
.admin-drawer__logo:focus-visible {
  outline: 2px solid var(--admin-primary);
  outline-offset: 2px;
}
.admin-drawer__logo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 44px;
  object-fit: contain;
  object-position: left center;
}
.admin-drawer--drilldown {
  width: var(--admin-drawer-width);
}
.admin-drawer__stack {
  position: relative;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}
.admin-drawer__panel {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  background: var(--admin-drawer-bg);
  transform: translateX(100%);
  transition: transform var(--admin-duration-long) var(--admin-ease);
  visibility: hidden;
}
.admin-drawer__panel.is-active {
  transform: translateX(0);
  visibility: visible;
}
.admin-drawer__panel.is-prev {
  transform: translateX(-100%);
  visibility: visible;
}
.admin-drawer__panel.is-no-animate {
  transition: none;
}
.admin-drawer__head {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  padding: var(--admin-space-2xs) var(--admin-space-2xs);
  min-height: var(--admin-header-height);
  border-bottom: 1px solid var(--admin-drawer-border);
}
.admin-drawer__back {
  width: 100%;
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  margin: 1px var(--admin-space-xs);
  padding: var(--admin-space-xs) var(--admin-space-sm);
  min-height: 40px;
  border: none;
  background: rgba(0, 0, 0, 0);
  border-radius: var(--admin-radius-sm);
  cursor: pointer;
  color: var(--admin-drawer-text);
  font: inherit;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.35;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer__back:hover {
  background: var(--admin-drawer-hover-bg);
  color: var(--admin-drawer-text-active);
}
.admin-drawer__back:focus-visible {
  outline: 2px solid var(--admin-drawer-focus-ring);
  outline-offset: 2px;
}
.admin-drawer__back-icon {
  font-size: 1.2rem;
  opacity: 0.85;
}
.admin-drawer__back-text {
  line-height: 1.2;
}
.admin-drawer__body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: var(--admin-space-2xs) 0 var(--admin-space-sm);
}
.admin-drawer__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.admin-drawer__divider {
  height: 1px;
  background: var(--admin-drawer-border);
  margin: var(--admin-space-xs) var(--admin-space-xs);
  list-style: none;
}
.admin-drawer__drill {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  width: calc(100% - 2 * var(--admin-space-xs));
  margin: 1px var(--admin-space-xs);
  padding: var(--admin-space-xs) var(--admin-space-sm);
  min-height: 40px;
  border: none;
  background: rgba(0, 0, 0, 0);
  border-radius: var(--admin-radius-sm);
  cursor: pointer;
  color: var(--admin-drawer-text);
  font: inherit;
  font-size: 1.4rem;
  font-weight: 600;
  text-align: left;
  letter-spacing: 0.01em;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer__drill:hover {
  background: var(--admin-drawer-hover-bg);
  color: var(--admin-drawer-text-active);
}
.admin-drawer__drill:focus-visible {
  outline: 2px solid var(--admin-drawer-focus-ring);
  outline-offset: 2px;
}
.admin-drawer__drill--active {
  background: var(--admin-drawer-active-bg);
  color: var(--admin-drawer-active-accent);
  font-weight: 700;
}
.admin-drawer__drill-icon {
  flex-shrink: 0;
  width: 1.6rem;
  text-align: center;
  font-size: 1.4rem;
  color: inherit;
  opacity: 0.75;
}
.admin-drawer__drill--active .admin-drawer__drill-icon {
  opacity: 1;
}
.admin-drawer__drill-text {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-drawer__drill-chevron {
  flex-shrink: 0;
  font-size: 1.1rem;
  opacity: 0.5;
  transition: transform var(--admin-duration) var(--admin-ease);
}
.admin-drawer__drill:hover .admin-drawer__drill-chevron {
  transform: translateX(2px);
  opacity: 0.8;
}
.admin-drawer__leaf {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  margin: 1px var(--admin-space-xs);
  padding: var(--admin-space-xs) var(--admin-space-sm);
  min-height: 40px;
  border-radius: var(--admin-radius-sm);
  text-decoration: none;
  color: var(--admin-drawer-text);
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.35;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer__leaf:hover {
  background: var(--admin-drawer-hover-bg);
  color: var(--admin-drawer-text-active);
}
.admin-drawer__leaf:focus-visible {
  outline: 2px solid var(--admin-drawer-focus-ring);
  outline-offset: 2px;
}
.admin-drawer__leaf--active {
  background: var(--admin-drawer-active-bg);
  color: var(--admin-drawer-active-accent);
  font-weight: 700;
  border-left: var(--admin-drawer-active-bar);
  border-radius: 0 var(--admin-radius-sm) var(--admin-radius-sm) 0;
}
.admin-drawer__leaf--active .admin-drawer__leaf-icon {
  color: var(--admin-drawer-active-accent);
  opacity: 1;
}
.admin-drawer__leaf--active:hover {
  background: var(--admin-drawer-active-bg);
  color: var(--admin-drawer-active-accent);
}
.admin-drawer__leaf-icon {
  flex-shrink: 0;
  width: 1.6rem;
  text-align: center;
  font-size: 1.4rem;
  color: inherit;
  opacity: 0.75;
}
.admin-drawer__leaf-text {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-drawer__badge {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  height: 16px;
  padding: 0 6px;
  border-radius: var(--admin-radius-full);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  background: rgba(245, 158, 11, 0.12);
  color: var(--admin-warn-text);
  margin-right: var(--admin-space-2xs);
}
@media (max-width: 991px) {
  .admin-drawer {
    transform: translateX(-100%);
  }
  .admin--drawer-open .admin-drawer {
    transform: translateX(0);
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.1);
  }
}
.admin-drawer--tree {
  width: var(--admin-drawer-width);
}
.admin-drawer--tree .admin-drawer__nav {
  overflow-y: auto;
  display: block;
}
.admin-drawer--tree .admin-sidebar__home {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  margin: 0 var(--admin-space-xs);
  padding: var(--admin-space-xs) var(--admin-space-sm);
  min-height: 40px;
  border-radius: var(--admin-radius-sm);
  text-decoration: none;
  color: var(--admin-drawer-text);
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__home:hover {
  background: var(--admin-drawer-hover-bg);
  color: var(--admin-drawer-text-active);
}
.admin-drawer--tree .admin-sidebar__home:focus-visible {
  outline: 2px solid var(--admin-drawer-focus-ring);
  outline-offset: 2px;
}
.admin-drawer--tree .admin-sidebar__home--active {
  background: var(--admin-drawer-active-bg);
  color: var(--admin-drawer-active-accent);
  font-weight: 700;
  border-left: var(--admin-drawer-active-bar);
  border-radius: 0 var(--admin-radius-sm) var(--admin-radius-sm) 0;
}
.admin-drawer--tree .admin-sidebar__home--active .admin-sidebar__home-icon {
  color: var(--admin-drawer-active-accent);
  opacity: 1;
}
.admin-drawer--tree .admin-sidebar__home-icon {
  flex-shrink: 0;
  width: 1.6rem;
  text-align: center;
  font-size: 1.4rem;
  opacity: 0.75;
  transition: opacity var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__home-text {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-drawer--tree .admin-sidebar__section {
  margin: 0;
  padding: 0;
  border: 0;
}
.admin-drawer--tree .admin-sidebar__section + .admin-sidebar__section {
  margin-top: var(--admin-space-xs);
  padding-top: var(--admin-space-xs);
  border-top: 1px solid var(--admin-drawer-border);
}
.admin-drawer--tree .admin-sidebar__home + .admin-sidebar__section {
  margin-top: var(--admin-space-xs);
  padding-top: var(--admin-space-xs);
  border-top: 1px solid var(--admin-drawer-border);
}
.admin-drawer--tree .admin-sidebar__section-hd {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  margin: 0 var(--admin-space-xs);
  padding: var(--admin-space-xs) var(--admin-space-sm);
  min-height: 36px;
  list-style: none;
  cursor: pointer;
  user-select: none;
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text-secondary);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__section-hd::-webkit-details-marker,
.admin-drawer--tree .admin-sidebar__section-hd::marker {
  display: none;
}
.admin-drawer--tree .admin-sidebar__section-hd:hover {
  background: var(--admin-drawer-hover-bg);
  color: var(--admin-text-secondary);
}
.admin-drawer--tree .admin-sidebar__section-hd:focus-visible {
  outline: 2px solid var(--admin-drawer-focus-ring);
  outline-offset: 2px;
}
.admin-drawer--tree .admin-sidebar__section-icon {
  flex-shrink: 0;
  width: 1.6rem;
  text-align: center;
  font-size: 1.4rem;
  opacity: 0.75;
}
.admin-drawer--tree .admin-sidebar__section-label {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-drawer--tree .admin-sidebar__section-badge {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  height: 16px;
  padding: 0 6px;
  border-radius: var(--admin-radius-full);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  background: var(--admin-grey-100);
  color: var(--admin-text-muted);
}
.admin-sidebar__section--system .admin-drawer--tree .admin-sidebar__section-badge {
  background: rgba(245, 158, 11, 0.12);
  color: var(--admin-warn-text);
}
.admin-drawer--tree .admin-sidebar__section-chevron {
  flex-shrink: 0;
  font-size: 9px;
  color: var(--admin-text-muted);
  transition:
    transform var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__section[open] > .admin-sidebar__section-hd .admin-sidebar__section-chevron {
  transform: rotate(180deg);
}
.admin-drawer--tree .admin-sidebar__section-body {
  padding: var(--admin-space-3xs) 0 var(--admin-space-xs);
}
.admin-drawer--tree .admin-sidebar__section-list {
  list-style: none;
  margin: 0 var(--admin-space-xs) 0 calc(var(--admin-space-xs) + 1.8rem);
  padding: 0 var(--admin-space-xs) 0 var(--admin-space-sm);
  border-left: 2px solid var(--admin-drawer-border);
}
.admin-drawer--tree .admin-sidebar__nav-item {
  margin: 0 0 1px;
}
.admin-drawer--tree .admin-sidebar__nav-link {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  margin: 0;
  padding: var(--admin-space-xs) var(--admin-space-sm);
  min-height: 38px;
  border-radius: var(--admin-radius-sm);
  text-decoration: none;
  color: var(--admin-drawer-text);
  font-size: 1.4rem;
  font-weight: 400;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__nav-link:hover {
  background: var(--admin-drawer-hover-bg);
  color: var(--admin-drawer-text-active);
}
.admin-drawer--tree .admin-sidebar__nav-link:focus-visible {
  outline: 2px solid var(--admin-drawer-focus-ring);
  outline-offset: 2px;
}
.admin-drawer--tree .admin-sidebar__nav-link--active {
  background: var(--admin-drawer-active-bg);
  color: var(--admin-drawer-active-accent);
  font-weight: 600;
  border-left: var(--admin-drawer-active-bar);
  border-radius: 0 var(--admin-radius-sm) var(--admin-radius-sm) 0;
}
.admin-drawer--tree .admin-sidebar__nav-link--active .admin-sidebar__nav-icon {
  opacity: 0.9;
}
.admin-drawer--tree .admin-sidebar__nav-text {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-drawer--tree .admin-sidebar__nav-icon {
  flex-shrink: 0;
  width: 1.6rem;
  text-align: center;
  font-size: 1.3rem;
  opacity: 0.65;
  transition: opacity var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__expandable {
  margin: 0;
}
.admin-drawer--tree .admin-sidebar__parent {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  margin: 0;
  padding: var(--admin-space-xs) var(--admin-space-sm);
  min-height: 38px;
  list-style: none;
  cursor: pointer;
  user-select: none;
  border-radius: var(--admin-radius-sm);
  color: var(--admin-drawer-text);
  font-size: 1.4rem;
  font-weight: 600;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__parent::-webkit-details-marker,
.admin-drawer--tree .admin-sidebar__parent::marker {
  display: none;
}
.admin-drawer--tree .admin-sidebar__parent:hover {
  background: var(--admin-drawer-hover-bg);
  color: var(--admin-drawer-text-active);
}
.admin-drawer--tree .admin-sidebar__parent:focus-visible {
  outline: 2px solid var(--admin-drawer-focus-ring);
  outline-offset: 2px;
}
.admin-drawer--tree .admin-sidebar__parent--open,
.admin-sidebar__expandable[open] .admin-drawer--tree .admin-sidebar__parent {
  color: var(--admin-drawer-active-accent);
}
.admin-drawer--tree .admin-sidebar__parent--open .admin-sidebar__nav-icon,
.admin-sidebar__expandable[open] .admin-drawer--tree .admin-sidebar__parent .admin-sidebar__nav-icon {
  opacity: 1;
}
.admin-drawer--tree .admin-sidebar__expandable-chevron {
  margin-left: auto;
  flex-shrink: 0;
  font-size: 10px;
  opacity: 0.45;
  transition:
    transform var(--admin-duration) var(--admin-ease),
    opacity var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__expandable[open] .admin-sidebar__expandable-chevron {
  transform: rotate(180deg);
  opacity: 0.75;
}
.admin-drawer--tree .admin-sidebar__subtree {
  margin: var(--admin-space-3xs) 0 var(--admin-space-xs) 1.6rem;
  padding: 0 0 0 var(--admin-space-sm);
  border-left: 2px solid var(--admin-drawer-border);
}
.admin-drawer--tree .admin-sidebar__children {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.admin-drawer--tree .admin-sidebar__child-link {
  display: flex;
  align-items: center;
  padding: 0.8rem 1.2rem;
  min-height: 34px;
  border-radius: var(--admin-radius-sm);
  text-decoration: none;
  color: var(--admin-drawer-text);
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.35;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-drawer--tree .admin-sidebar__child-link:hover {
  background: var(--admin-drawer-hover-bg);
  color: var(--admin-drawer-text-active);
}
.admin-drawer--tree .admin-sidebar__child-link:focus-visible {
  outline: 2px solid var(--admin-drawer-focus-ring);
  outline-offset: 2px;
}
.admin-drawer--tree .admin-sidebar__child-link--active {
  background: var(--admin-drawer-sublink-active-bg);
  color: var(--admin-drawer-active-accent);
  font-weight: 600;
  border-left: var(--admin-drawer-sublink-active-bar);
  border-radius: 0 var(--admin-radius-sm) var(--admin-radius-sm) 0;
}
[data-theme='dark-gumroad'] .admin-drawer__drill--active {
  background: #fff;
  color: #0a0a08;
  font-weight: 700;
  border-left: none;
  border-radius: var(--admin-radius-lg, 9999px);
  margin-inline: var(--admin-space-xs);
}
[data-theme='dark-gumroad'] .admin-drawer__drill--active .admin-drawer__drill-icon {
  color: #0a0a08;
  opacity: 1;
}
[data-theme='dark-gumroad'] .admin-drawer__drill--active .admin-drawer__drill-chevron {
  opacity: 0.5;
}
[data-theme='dark-gumroad'] .admin-drawer__drill--active:hover {
  background: #f0f0e8;
  color: #0a0a08;
}
[data-theme='dark-gumroad'] .admin-drawer__leaf--active {
  background: #fff;
  color: #0a0a08;
  font-weight: 700;
  border-left: none;
  border-radius: var(--admin-radius-lg, 9999px);
  margin-inline: var(--admin-space-xs);
}
[data-theme='dark-gumroad'] .admin-drawer__leaf--active .admin-drawer__leaf-icon {
  color: #0a0a08;
  opacity: 1;
}
[data-theme='dark-gumroad'] .admin-drawer__leaf--active:hover {
  background: #f0f0e8;
  color: #0a0a08;
}
[data-theme='dark-gumroad'] .admin-sidebar__nav-link--active {
  background: #fff;
  color: #0a0a08;
  font-weight: 700;
  border-left: none;
  border-radius: var(--admin-radius-lg, 9999px);
  padding-inline: var(--admin-space-md);
}
[data-theme='dark-gumroad'] .admin-sidebar__nav-link--active .admin-sidebar__nav-icon {
  opacity: 1;
  color: #0a0a08;
}
[data-theme='dark-gumroad'] .admin-sidebar__nav-link--active:hover {
  background: #f0f0e8;
  color: #0a0a08;
}
[data-theme='dark-gumroad'] .admin-sidebar__child-link--active {
  background: hsla(0, 0%, 100%, 0.9);
  color: #0a0a08;
  font-weight: 600;
  border-left: none;
  border-radius: var(--admin-radius-lg, 9999px);
}
[data-theme='dark-gumroad'] .admin-sidebar__child-link--active:hover {
  background: #f0f0e8;
  color: #0a0a08;
}
.admin-flash {
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space);
  padding: var(--admin-space) var(--admin-space-lg);
  margin-bottom: var(--admin-space-lg);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-body-lg);
  font-weight: 500;
  line-height: 1.5;
  border: 1px solid rgba(0, 0, 0, 0);
  border-left-width: 4px;
}
.admin-flash__icon {
  flex-shrink: 0;
  font-size: 1.4rem;
  margin-top: 0.1rem;
}
.admin-flash__body {
  flex: 1;
}
.admin-flash__title {
  font-weight: 600;
  margin-bottom: 0.2rem;
}
.admin-flash__msg {
  font-weight: 400;
  color: inherit;
  opacity: 0.85;
}
.admin-flash--success {
  background: var(--admin-success-bg);
  color: var(--admin-success-text);
  border-color: var(--admin-success);
}
.admin-flash--error {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
  border-color: var(--admin-error);
}
.admin-flash--warning {
  background: var(--admin-warn-bg);
  color: var(--admin-warn-text);
  border-color: var(--admin-warn);
}
.admin-flash--info {
  background: var(--admin-info-bg);
  color: var(--admin-info-text);
  border-color: var(--admin-info);
  border-left-color: var(--admin-info);
}
.admin-flash--premium {
  background: var(--admin-premium-bg);
  color: var(--admin-premium-text);
  border-color: var(--admin-premium);
}
.admin-footer {
  padding: var(--admin-space) var(--admin-space-2xl);
  font-size: var(--admin-fs-xs);
  font-weight: 500;
  color: var(--admin-text-muted);
  letter-spacing: 0.02em;
  border-top: 1px solid var(--admin-border-light);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space);
  flex-wrap: wrap;
  background: var(--admin-white);
}
.admin-footer__copy {
  flex: 1;
  min-width: 0;
  margin: 0;
}
.admin-footer__links {
  display: flex;
  gap: var(--admin-space-sm);
  align-items: center;
  flex-shrink: 0;
}
.admin-footer__link {
  color: var(--admin-text-muted);
  text-decoration: none;
  transition: color var(--admin-duration-short) var(--admin-ease);
}
.admin-footer__link:hover {
  color: var(--admin-primary);
}
.admin-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  height: 3.6rem;
  padding: 0 1.4rem;
  font-size: var(--admin-fs-body-lg);
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none !important;
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  cursor: pointer;
  font-family: inherit;
  background: var(--admin-white);
  color: var(--admin-text);
  position: relative;
  overflow: hidden;
  touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease),
    transform var(--admin-duration-short) var(--admin-ease);
}
.admin-btn::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: hsla(0, 0%, 100%, 0.2);
  transform: translate(-50%, -50%);
  transition:
    width 0.4s ease-out,
    height 0.4s ease-out,
    opacity 0.2s ease-out;
  pointer-events: none;
  opacity: 0;
}
.admin-btn:active::before {
  width: 200px;
  height: 200px;
  opacity: 1;
  transition:
    width 0.2s ease-out,
    height 0.2s ease-out,
    opacity 0.15s ease-out;
}
.admin-btn i,
.admin-btn svg {
  font-size: 1.3rem;
  flex-shrink: 0;
}
.admin-btn:hover {
  background: var(--admin-grey-100);
  border-color: var(--admin-border-strong);
  transform: scale(1.01);
}
.admin-btn:active {
  background: var(--admin-grey-200);
  transform: scale(0.99);
  transition-duration: 0.1s;
}
.admin-btn:focus-visible {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
.admin-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
  transform: none !important;
  box-shadow: none !important;
}
.admin-btn--primary {
  background: var(--admin-primary);
  border-color: rgba(0, 0, 0, 0);
  color: var(--admin-on-primary);
  font-weight: 600;
  box-shadow: 0 1px 3px rgba(var(--admin-primary-rgb), 0.12);
}
.admin-btn--primary:hover {
  background: var(--admin-primary-hover);
  border-color: rgba(0, 0, 0, 0);
  box-shadow: 0 2px 6px rgba(var(--admin-primary-rgb), 0.2);
}
.admin-btn--primary:active {
  background: var(--admin-primary-hover);
  filter: brightness(0.92);
}
.admin-btn--primary:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--admin-primary-rgb), 0.3);
}
.admin-btn--secondary {
  background: rgba(0, 0, 0, 0);
  border-color: rgba(var(--admin-primary-rgb), 0.45);
  color: var(--admin-primary-text, var(--admin-primary));
  font-weight: 500;
}
.admin-btn--secondary:hover {
  background: var(--admin-primary-light);
  border-color: var(--admin-primary);
  color: var(--admin-primary);
}
.admin-btn--secondary:active {
  background: rgba(var(--admin-primary-rgb), 0.12);
}
.admin-btn--secondary:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(var(--admin-primary-rgb), 0.22);
}
.admin-btn--outline {
  background: rgba(0, 0, 0, 0);
  border-color: var(--admin-border-strong);
  color: var(--admin-text-secondary);
  font-weight: 500;
}
.admin-btn--outline:hover {
  background: var(--admin-grey-100);
  border-color: var(--admin-border-strong);
  color: var(--admin-text);
}
.admin-btn--outline:active {
  background: var(--admin-grey-200);
}
.admin-btn--outline:focus-visible {
  outline: none;
  box-shadow: var(--admin-focus-ring);
}
.admin-btn--danger {
  background: var(--admin-error);
  border-color: rgba(0, 0, 0, 0);
  color: var(--admin-on-error, #fff);
  font-weight: 600;
  box-shadow: 0 1px 3px rgba(var(--admin-error-rgb), 0.12);
}
.admin-btn--danger:hover {
  background: var(--admin-error-hover);
  box-shadow: 0 2px 6px rgba(var(--admin-error-rgb), 0.2);
}
.admin-btn--danger:active {
  background: var(--admin-error-active);
}
.admin-btn--danger:focus-visible {
  box-shadow: 0 0 0 3px rgba(var(--admin-error-rgb), 0.3);
}
.admin-btn--success {
  background: var(--admin-success);
  border-color: rgba(0, 0, 0, 0);
  color: var(--admin-on-success, #fff);
  font-weight: 600;
  box-shadow: 0 1px 3px rgba(var(--admin-success-rgb), 0.12);
}
.admin-btn--success:hover {
  background: var(--admin-success-hover);
  box-shadow: 0 2px 6px rgba(var(--admin-success-rgb), 0.2);
}
.admin-btn--warn {
  background: var(--admin-warn);
  border-color: rgba(0, 0, 0, 0);
  color: var(--admin-on-warn, #fff);
  font-weight: 600;
}
.admin-btn--warn:hover {
  background: var(--admin-warn-hover);
}
.admin-btn--premium {
  background: var(--admin-premium);
  border-color: rgba(0, 0, 0, 0);
  color: var(--admin-grey-900);
  font-weight: 600;
}
.admin-btn--premium:hover {
  background: var(--admin-premium-hover);
}
.admin-btn--ghost {
  border-color: rgba(0, 0, 0, 0);
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-secondary);
}
.admin-btn--ghost:hover {
  background: var(--admin-grey-100);
  color: var(--admin-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-btn--ghost:focus-visible {
  outline: none;
  box-shadow: var(--admin-focus-ring);
  border-color: var(--admin-border-focus);
}
.admin-btn--icon {
  width: 3.6rem;
  padding: 0;
  flex-shrink: 0;
}
.admin-btn--icon i,
.admin-btn--icon svg {
  font-size: 1.4rem;
}
.admin-btn--icon.admin-btn--sm {
  width: 3rem;
}
.admin-btn--icon.admin-btn--sm i,
.admin-btn--icon.admin-btn--sm svg {
  font-size: 1.2rem;
}
.admin-btn--xs {
  height: 2.4rem;
  padding: 0 0.7rem;
  font-size: var(--admin-fs-xs);
  gap: 0.3rem;
  border-radius: var(--admin-radius-xs);
}
.admin-btn--xs i,
.admin-btn--xs svg {
  font-size: 1rem;
}
.admin-btn--sm {
  height: 3rem;
  padding: 0 1rem;
  font-size: var(--admin-fs-body);
  gap: 0.4rem;
}
.admin-btn--sm i,
.admin-btn--sm svg {
  font-size: 1.1rem;
}
.admin-btn--lg {
  height: 4.2rem;
  padding: 0 1.8rem;
  font-size: var(--admin-fs-body-lg);
  gap: 0.8rem;
}
.admin-btn--xl {
  height: 4.6rem;
  padding: 0 2.2rem;
  font-size: var(--admin-fs-lg);
  gap: 1rem;
}
@media (hover: none) and (pointer: coarse) {
  .admin-btn:hover {
    transform: none;
    box-shadow: none;
  }
  .admin-btn:active {
    transform: scale(0.96);
    transition: transform 0.1s ease;
  }
}
button.admin-btn {
  appearance: none;
  -webkit-appearance: none;
}
.admin-input-wrap {
  margin-bottom: var(--admin-space-lg);
}
.admin-input-wrap--sort-order {
  max-width: 140px;
}
.admin-input-wrap--sort-order .admin-form__hint {
  margin-bottom: 0;
}
.admin-input-label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-text);
  letter-spacing: 0.005em;
}
.admin-input,
.admin-textarea {
  display: block;
  width: 100%;
  height: var(--admin-size-input-height);
  padding: 0.9rem 1.2rem;
  font-size: var(--admin-fs-body-lg);
  line-height: 1.5;
  color: var(--admin-text);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: 0.6rem;
  font-family: inherit;
  box-sizing: border-box;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-input::placeholder,
.admin-textarea::placeholder {
  color: var(--admin-text-muted);
}
.admin-input:hover:not(:disabled):not(:focus),
.admin-textarea:hover:not(:disabled):not(:focus) {
  border-color: rgba(var(--admin-primary-rgb), 0.4);
}
.admin-input:focus,
.admin-textarea:focus {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: 0 0 0 0.2rem rgba(var(--admin-primary-rgb), 0.1);
}
.admin-input:-webkit-autofill,
.admin-textarea:-webkit-autofill,
.admin-input:-webkit-autofill:hover,
.admin-input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 100px var(--admin-white) inset;
  -webkit-text-fill-color: var(--admin-text);
}
.admin-input.admin-input--error,
.admin-input--error.admin-textarea {
  border-color: var(--admin-error);
}
.admin-input.admin-input--error:focus,
.admin-input--error.admin-textarea:focus {
  border-color: var(--admin-error);
  box-shadow: var(--admin-error-focus-ring);
}
.admin-input:disabled,
.admin-textarea:disabled {
  background: var(--admin-grey-50);
  color: var(--admin-text-disabled);
  cursor: not-allowed;
  border-color: var(--admin-border-light);
  opacity: 0.7;
}
.admin-textarea {
  height: auto;
  min-height: var(--admin-size-editor-min-height);
  padding: var(--admin-space-sm) var(--admin-space);
  line-height: 1.6;
  resize: vertical;
}
.admin-switch {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-sm);
  cursor: pointer;
  user-select: none;
  margin-bottom: var(--admin-space-2xs);
}
.admin-switch input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.admin-switch__track {
  position: relative;
  flex-shrink: 0;
  background: var(--admin-grey-300);
  border-radius: var(--admin-radius-full);
  transition: background var(--admin-duration-short) var(--admin-ease);
  width: 34px;
  height: 18px;
}
.admin-switch__thumb {
  position: absolute;
  background: var(--admin-white);
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  transition: transform var(--admin-duration-short) var(--admin-ease);
  top: 3px;
  left: 3px;
  width: 12px;
  height: 12px;
}
input:checked + .admin-switch__track {
  background: var(--admin-primary);
}
input:checked + .admin-switch__track .admin-switch__thumb {
  transform: translateX(16px);
}
input:focus-visible + .admin-switch__track {
  box-shadow: 0 0 0 3px rgba(var(--admin-primary-rgb), 0.2);
}
.admin-switch:hover .admin-switch__track {
  filter: brightness(0.94);
}
.admin-switch__label {
  font-size: var(--admin-fs-body-lg);
  font-weight: 500;
  color: var(--admin-text);
}
.admin-switch--disabled {
  cursor: not-allowed;
  opacity: 0.45;
}
.admin-switch--success input:checked + .admin-switch__track {
  background: var(--admin-success);
}
.admin-switch--xs .admin-switch__track {
  width: 26px;
  height: 14px;
}
.admin-switch--xs .admin-switch__thumb {
  top: 2px;
  left: 2px;
  width: 10px;
  height: 10px;
}
.admin-switch--xs input:checked + .admin-switch__track .admin-switch__thumb {
  transform: translateX(12px);
}
.admin-switch--sm .admin-switch__track {
  width: 34px;
  height: 18px;
}
.admin-switch--sm .admin-switch__thumb {
  top: 3px;
  left: 3px;
  width: 12px;
  height: 12px;
}
.admin-switch--sm input:checked + .admin-switch__track .admin-switch__thumb {
  transform: translateX(16px);
}
.admin-switch--md .admin-switch__track {
  width: 42px;
  height: 24px;
}
.admin-switch--md .admin-switch__thumb {
  top: 4px;
  left: 4px;
  width: 16px;
  height: 16px;
}
.admin-switch--md input:checked + .admin-switch__track .admin-switch__thumb {
  transform: translateX(18px);
}
.admin-switch--lg .admin-switch__track {
  width: 50px;
  height: 28px;
}
.admin-switch--lg .admin-switch__thumb {
  top: 4px;
  left: 4px;
  width: 20px;
  height: 20px;
}
.admin-switch--lg input:checked + .admin-switch__track .admin-switch__thumb {
  transform: translateX(22px);
}
.admin-switch--xl .admin-switch__track {
  width: 58px;
  height: 32px;
}
.admin-switch--xl .admin-switch__thumb {
  top: 4px;
  left: 4px;
  width: 24px;
  height: 24px;
}
.admin-switch--xl input:checked + .admin-switch__track .admin-switch__thumb {
  transform: translateX(26px);
}
.admin-checkbox-wrap {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-sm);
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text);
  cursor: pointer;
  margin-bottom: var(--admin-space-2xs);
  user-select: none;
}
.admin-checkbox-wrap input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.admin-checkbox-wrap .admin-checkbox__box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 3px;
  background: var(--admin-white);
  border: 2px solid var(--admin-grey-400);
  width: 18px;
  height: 18px;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    background var(--admin-duration-short) var(--admin-ease);
}
.admin-checkbox-wrap .admin-checkbox__box::after {
  content: '';
  border: solid var(--admin-white);
  transform: rotate(45deg) scale(0);
  transition: transform var(--admin-duration-short) var(--admin-ease);
  width: 5px;
  height: 9px;
  border-width: 0 2px 2px 0;
}
.admin-checkbox-wrap input:checked + .admin-checkbox__box {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
}
.admin-checkbox-wrap input:checked + .admin-checkbox__box::after {
  transform: rotate(45deg) scale(1);
}
.admin-checkbox-wrap:hover .admin-checkbox__box {
  border-color: var(--admin-grey-600);
}
.admin-checkbox-wrap input:focus-visible + .admin-checkbox__box {
  box-shadow: 0 0 0 3px rgba(var(--admin-primary-rgb), 0.2);
}
.admin-checkbox-wrap--disabled {
  cursor: not-allowed;
  opacity: 0.45;
}
.admin-checkbox-wrap .admin-checkbox__label {
  font-weight: 500;
}
.admin-checkbox-wrap--xs .admin-checkbox__box {
  width: 12px;
  height: 12px;
  border-width: 1.5px;
}
.admin-checkbox-wrap--xs .admin-checkbox__box::after {
  width: 4px;
  height: 6px;
  border-width: 0 1.5px 1.5px 0;
}
.admin-checkbox-wrap--sm .admin-checkbox__box {
  width: 15px;
  height: 15px;
  border-width: 1.5px;
}
.admin-checkbox-wrap--sm .admin-checkbox__box::after {
  width: 4px;
  height: 7px;
  border-width: 0 1.5px 1.5px 0;
}
.admin-checkbox-wrap--md .admin-checkbox__box {
  width: 18px;
  height: 18px;
  border-width: 2px;
}
.admin-checkbox-wrap--md .admin-checkbox__box::after {
  width: 5px;
  height: 9px;
  border-width: 0 2px 2px 0;
}
.admin-checkbox-wrap--lg .admin-checkbox__box {
  width: 20px;
  height: 20px;
  border-width: 2px;
}
.admin-checkbox-wrap--lg .admin-checkbox__box::after {
  width: 6px;
  height: 10px;
  border-width: 0 2px 2px 0;
}
.admin-checkbox-wrap--xl .admin-checkbox__box {
  width: 22px;
  height: 22px;
  border-width: 2px;
}
.admin-checkbox-wrap--xl .admin-checkbox__box::after {
  width: 7px;
  height: 11px;
  border-width: 0 2.5px 2.5px 0;
}
.admin-checkbox-wrap:not(:has(.admin-checkbox__box)) input {
  position: static;
  width: 18px;
  height: 18px;
  margin: 0;
  clip: auto;
  overflow: visible;
  accent-color: var(--admin-primary);
  cursor: pointer;
}
.admin-radio-group {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-radio-wrap {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-sm);
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text);
  cursor: pointer;
  user-select: none;
}
.admin-radio-wrap input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.admin-radio-wrap .admin-radio__dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  border: 1.5px solid var(--admin-grey-400);
  border-radius: 50%;
  background: var(--admin-white);
  transition: border-color var(--admin-duration-short) var(--admin-ease);
}
.admin-radio-wrap .admin-radio__dot::after {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--admin-primary);
  transform: scale(0);
  transition: transform var(--admin-duration-short) var(--admin-ease);
}
.admin-radio-wrap input:checked + .admin-radio__dot {
  border-color: var(--admin-primary);
}
.admin-radio-wrap input:checked + .admin-radio__dot::after {
  transform: scale(1);
}
.admin-radio-wrap:hover .admin-radio__dot {
  border-color: var(--admin-grey-600);
}
.admin-radio-wrap input:focus-visible + .admin-radio__dot {
  box-shadow: 0 0 0 3px rgba(var(--admin-primary-rgb), 0.2);
}
.admin-radio-wrap .admin-radio__label {
  font-weight: 500;
}
.admin-radio-wrap--disabled {
  cursor: not-allowed;
  opacity: 0.45;
}
.admin-radio-wrap:not(:has(.admin-radio__dot)) input {
  position: static;
  width: 18px;
  height: 18px;
  margin: 0;
  clip: auto;
  overflow: visible;
  accent-color: var(--admin-primary);
  cursor: pointer;
}
.admin-select {
  display: block;
  width: 100%;
  height: var(--admin-size-input-height);
  padding: 0 var(--admin-size-select-arrow) 0 var(--admin-space-lg);
  font-size: var(--admin-fs-body-lg);
  line-height: 1;
  color: var(--admin-text);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  font-family: inherit;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right var(--admin-space) center;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-select:hover:not(:disabled) {
  border-color: var(--admin-border-strong);
}
.admin-select:focus {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
.admin-select.admin-select--error {
  border-color: var(--admin-error);
}
.admin-select.admin-select--error:focus {
  border-color: var(--admin-error);
  box-shadow: var(--admin-error-focus-ring);
}
.admin-select:disabled {
  background-color: var(--admin-grey-50);
  color: var(--admin-text-muted);
  cursor: not-allowed;
}
select.admin-select[multiple] {
  height: auto;
  padding: var(--admin-space-sm) var(--admin-space);
  min-height: 120px;
  background-image: none;
}
[data-theme='dark'] .admin-select,
[data-theme='dark-modern'] .admin-select,
[data-theme='dark-abyss'] .admin-select,
[data-theme='dark-dracula'] .admin-select,
[data-theme='dark-mongo'] .admin-select,
[data-theme='dark-red'] .admin-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a8b4cc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
}
[data-theme='dark'] .admin-select:focus,
[data-theme='dark-modern'] .admin-select:focus,
[data-theme='dark-abyss'] .admin-select:focus,
[data-theme='dark-dracula'] .admin-select:focus,
[data-theme='dark-mongo'] .admin-select:focus,
[data-theme='dark-red'] .admin-select:focus {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2334affc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
}
.admin-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  height: 2rem;
  padding: 0 0.75rem;
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  line-height: 1;
  border-radius: var(--admin-radius-full);
  border: 1px solid rgba(0, 0, 0, 0);
  letter-spacing: 0.02em;
  white-space: nowrap;
  vertical-align: middle;
}
.admin-badge i,
.admin-badge svg {
  font-size: 1rem;
}
.admin-badge--default {
  background: var(--admin-grey-100);
  color: var(--admin-grey-700);
  border-color: var(--admin-grey-200);
}
.admin-badge--primary {
  background: var(--admin-primary-light);
  color: var(--admin-primary-text);
  border-color: var(--admin-primary-border);
}
.admin-badge--success {
  background: var(--admin-success-bg);
  color: var(--admin-success-text);
  border-color: var(--admin-success-border);
}
.admin-badge--error {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
  border-color: var(--admin-error-border);
}
.admin-badge--warn {
  background: var(--admin-warn-bg);
  color: var(--admin-warn-text);
  border-color: var(--admin-warn-border);
}
.admin-badge--premium {
  background: var(--admin-premium-bg);
  color: var(--admin-premium-text);
}
.admin-badge--info {
  background: var(--admin-info-bg);
  color: var(--admin-info-text);
}
.admin-badge--outline {
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-secondary);
  border-color: var(--admin-border);
}
.admin-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  height: 2.4rem;
  padding: 0 0.9rem;
  font-size: var(--admin-fs-sm);
  font-weight: 500;
  border-radius: var(--admin-radius-full);
  border: 1px solid var(--admin-border);
  background: var(--admin-white);
  color: var(--admin-text);
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    border-color var(--admin-duration-short) var(--admin-ease);
}
.admin-chip:hover {
  background: var(--admin-grey-50);
  border-color: #c6ccd2;
}
.admin-chip__remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.4rem;
  height: 1.4rem;
  padding: 0;
  border: none;
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-muted);
  border-radius: 50%;
  cursor: pointer;
  font-size: var(--admin-fs-body);
  line-height: 1;
  transition: background var(--admin-duration-short) var(--admin-ease);
}
.admin-chip__remove:hover {
  background: var(--admin-state-hover);
  color: var(--admin-text);
}
.admin-chip__remove:focus-visible {
  outline: 2px solid var(--admin-primary);
  outline-offset: 1px;
}
.admin-chip--success {
  background: var(--admin-success-bg);
  color: var(--admin-success-text);
  border-color: rgba(var(--admin-success-rgb), 0.3);
}
.admin-chip--error {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
  border-color: rgba(var(--admin-error-rgb), 0.3);
}
.admin-chip--warn {
  background: var(--admin-warn-bg);
  color: var(--admin-warn-text);
  border-color: rgba(var(--admin-warn-rgb), 0.3);
}
.admin-chip--premium {
  background: var(--admin-premium-bg);
  color: var(--admin-premium-text);
  border-color: rgba(var(--admin-premium-rgb), 0.3);
}
.admin-card {
  background: var(--admin-white);
  border-radius: 0.8rem;
  border: 1px solid var(--admin-border-light);
  margin-bottom: 2.4rem;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
@media (min-width: 992px) {
  .admin-card {
    margin-bottom: 3.2rem;
  }
}
.admin-card__header {
  padding: 2rem 2.4rem;
  border-bottom: 1px solid var(--admin-border-light);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.2rem;
  background: var(--admin-white);
}
.admin-card__title {
  font-size: 1.8rem;
  font-weight: 600;
  color: var(--admin-text);
  margin: 0;
  line-height: 1.4;
}
.admin-card__badge {
  display: inline-block;
  padding: 0.4rem 1.2rem;
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  border-radius: 1.2rem;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
}
.admin-card__body {
  padding: 0;
  background: var(--admin-white);
}
.admin-card__body--padded {
  padding: 2.4rem;
}
.admin-card__body--lg {
  padding: 3.2rem;
}
.admin-card__footer {
  padding: 1.6rem 2.4rem;
  border-top: 1px solid var(--admin-border-light);
  display: flex;
  align-items: center;
  gap: var(--admin-space);
  background: var(--admin-grey-50);
}
.admin-card__empty {
  padding: 6rem 2.4rem;
  text-align: center;
}
.admin-card__empty-text {
  color: var(--admin-text-muted);
  font-size: 1.4rem;
  margin: 0;
  line-height: 1.6;
}
.admin-card__empty-link {
  color: var(--admin-primary);
  text-decoration: none;
  font-weight: 500;
  margin-left: 0.4rem;
  transition: color 0.2s;
}
.admin-card__empty-link:hover {
  color: var(--admin-primary-hover);
  text-decoration: underline;
}
.admin-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
.admin-modal[hidden] {
  display: none;
}
.admin-modal__backdrop {
  position: absolute;
  inset: 0;
  background: var(--admin-modal-backdrop-bg);
}
.admin-modal__box {
  position: relative;
  background: var(--admin-modal-box-bg);
  border-radius: var(--admin-modal-box-radius);
  box-shadow: var(--admin-modal-box-shadow);
  max-width: 400px;
  width: 100%;
  max-height: 80vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.admin-modal__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--admin-modal-header-padding);
  border-bottom: var(--admin-modal-header-border);
}
.admin-modal__title {
  margin: 0;
  font-size: var(--admin-modal-title-fs);
  font-weight: var(--admin-modal-title-fw);
  color: var(--admin-modal-title-color);
}
.admin-modal__close {
  background: none;
  border: none;
  font-size: 2rem;
  cursor: pointer;
  line-height: 1;
  color: var(--admin-modal-close-color);
  width: 32px;
  height: 32px;
  border-radius: var(--admin-modal-close-radius);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease);
}
.admin-modal__close:hover {
  color: var(--admin-modal-close-hover-color);
  background: var(--admin-modal-close-hover-bg);
}
.admin-modal__close:focus-visible {
  outline: var(--admin-modal-close-focus-ring);
  outline-offset: 2px;
}
.admin-modal__body {
  padding: var(--admin-modal-body-padding);
  color: var(--admin-modal-body-color);
  font-size: var(--admin-modal-body-fs);
  line-height: var(--admin-modal-body-lh);
  overflow-y: auto;
}
.admin-modal__list {
  margin: 0;
  padding-left: 1.25rem;
}
.admin-modal__list li {
  margin: 0.25rem 0;
}
.admin-modal__box--image {
  max-width: min(90vw, 96rem);
  background: rgba(0, 0, 0, 0);
  box-shadow: none;
}
.admin-modal__box--image .admin-modal__head {
  background: rgba(0, 0, 0, 0.6);
  border-bottom: none;
  border-radius: var(--admin-modal-box-radius) var(--admin-modal-box-radius) 0 0;
}
.admin-modal__box--image .admin-modal__title {
  color: #fff;
  font-size: 1.4rem;
}
.admin-modal__box--image .admin-modal__close {
  color: #fff;
}
.admin-modal__box--image .admin-modal__close:hover {
  background: hsla(0, 0%, 100%, 0.15);
  color: #fff;
}
.admin-modal__box--image .admin-modal__body {
  padding: 0;
  background: #000;
  border-radius: 0 0 var(--admin-modal-box-radius) var(--admin-modal-box-radius);
  display: flex;
  align-items: center;
  justify-content: center;
}
.admin-modal__preview-img {
  display: block;
  max-width: 100%;
  max-height: 80vh;
  object-fit: contain;
}
.app-modal-backdrop {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--admin-modal-backdrop-bg);
  z-index: var(--admin-modal-backdrop-z);
  padding: var(--admin-modal-backdrop-padding);
  backdrop-filter: blur(0.4rem);
}
.app-modal-box {
  max-width: var(--admin-modal-max-width);
  width: 100%;
  background: var(--admin-modal-box-bg);
  border-radius: 1.6rem;
  box-shadow:
    0 2rem 2.5rem rgba(0, 0, 0, 0.15),
    0 0.8rem 1rem rgba(0, 0, 0, 0.1);
  overflow: hidden;
  border: 1px solid var(--admin-border-light);
  display: flex;
  flex-direction: column;
  animation: app-modal-appear 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes app-modal-appear {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.app-modal-header {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding: var(--admin-modal-header-padding);
  border-bottom: var(--admin-modal-header-border);
}
.app-modal-icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 50%;
  flex-shrink: 0;
}
.app-modal-icon-wrap--success {
  background: var(--admin-success-bg);
  color: var(--admin-success);
}
.app-modal-icon-wrap--error {
  background: var(--admin-error-bg);
  color: var(--admin-error);
}
.app-modal-icon-wrap--warning {
  background: var(--admin-warn-bg);
  color: var(--admin-warn);
}
.app-modal-icon-wrap--info {
  background: var(--admin-info-bg);
  color: var(--admin-info);
}
.app-modal-icon {
  font-size: 2.4rem;
}
.app-modal-title {
  font-size: clamp(1.8rem, 2vw, 2rem);
  font-weight: 600;
  color: var(--admin-modal-title-color);
  margin: 0;
  line-height: 1.2;
  flex: 1;
}
.app-modal-title--success {
  color: var(--admin-success-text);
}
.app-modal-title--error {
  color: var(--admin-error-text);
}
.app-modal-title--warning {
  color: var(--admin-warn-text);
}
.app-modal-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border: none;
  background: rgba(0, 0, 0, 0);
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 1;
  color: var(--admin-modal-close-color);
  border-radius: 0.8rem;
  padding: 0;
  margin-left: auto;
  flex-shrink: 0;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease),
    transform var(--admin-duration-short) var(--admin-ease);
}
.app-modal-close:hover {
  background: var(--admin-grey-100);
  color: var(--admin-text);
}
.app-modal-close:active {
  transform: scale(0.95);
}
.app-modal-close:focus-visible {
  outline: 2px solid rgba(var(--admin-primary-rgb), 0.4);
  outline-offset: 2px;
}
.app-modal-body {
  padding: var(--admin-modal-body-padding);
  font-size: var(--admin-fs-body-lg);
  line-height: 1.6;
  color: var(--admin-modal-body-color);
  white-space: pre-line;
  overflow-y: auto;
  max-height: 60vh;
  -webkit-overflow-scrolling: touch;
}
.app-modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--admin-space-sm);
  padding: var(--admin-modal-footer-padding);
  border-top: var(--admin-modal-footer-border);
}
.app-modal-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 10rem;
  padding: var(--admin-modal-btn-padding);
  border-radius: 0.6rem;
  font-size: var(--admin-modal-btn-fs);
  font-weight: 500;
  cursor: pointer;
  border: 1px solid var(--admin-border);
  background: var(--admin-white);
  color: var(--admin-text);
  font-family: inherit;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    border-color var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease),
    transform var(--admin-duration-short) var(--admin-ease);
}
.app-modal-btn:hover {
  background: var(--admin-grey-100);
  border-color: var(--admin-border-strong);
}
.app-modal-btn:active {
  transform: scale(0.98);
}
.app-modal-btn--primary {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
  color: var(--admin-on-primary);
  font-weight: 600;
}
.app-modal-btn--primary:hover {
  background: var(--admin-primary-hover);
  border-color: var(--admin-primary-hover);
}
.app-modal-btn--danger {
  background: var(--admin-error);
  border-color: var(--admin-error);
  color: #fff;
  font-weight: 600;
}
.app-modal-btn--danger:hover {
  background: var(--admin-error-hover);
  border-color: var(--admin-error-hover);
}
.admin-search-bar {
  position: relative;
  display: flex;
  align-items: center;
}
.admin-search-bar__icon {
  position: absolute;
  left: var(--admin-space);
  color: var(--admin-text-muted);
  font-size: 1.3rem;
  pointer-events: none;
  z-index: 1;
}
.admin-search-bar__input {
  width: 100%;
  height: var(--admin-size-input-height);
  padding: 0 var(--admin-space) 0 calc(var(--admin-space) + 1.6rem + var(--admin-space-xs));
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  font-family: inherit;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-search-bar__input::placeholder {
  color: var(--admin-text-muted);
}
.admin-search-bar__input:hover:not(:disabled) {
  border-color: var(--admin-border-strong);
}
.admin-search-bar__input:focus {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
.admin-search-bar__input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
}
.admin-search-bar__clear {
  position: absolute;
  right: var(--admin-space-xs);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  border: none;
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-muted);
  border-radius: var(--admin-radius-xs);
  cursor: pointer;
  font-size: 1.3rem;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease);
}
.admin-search-bar__clear:hover {
  background: var(--admin-grey-100);
  color: var(--admin-text);
}
.admin-nav-tabs {
  display: flex;
  gap: 0;
  padding: 0;
  margin: 0 0 1.5rem 0;
  border-bottom: 1px solid var(--admin-border-light);
  background: rgba(0, 0, 0, 0);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.admin-nav-tabs::-webkit-scrollbar {
  display: none;
}
.admin-nav-tabs--center {
  justify-content: center;
}
.admin-nav-tabs__tab {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.875rem 1.5rem;
  color: var(--admin-text-secondary);
  text-decoration: none;
  font-weight: 500;
  font-size: 1.4rem;
  white-space: nowrap;
  border: none;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  background: rgba(0, 0, 0, 0);
  cursor: pointer;
  font-family: inherit;
  transition: all 0.2s ease;
  position: relative;
  margin-bottom: -1px;
}
.admin-nav-tabs__tab i,
.admin-nav-tabs__tab svg {
  font-size: 1.3rem;
  transition: color 0.2s ease;
}
.admin-nav-tabs__tab:hover:not(.admin-nav-tabs__tab--active) {
  color: var(--admin-primary);
  background: var(--admin-grey-50);
}
.admin-nav-tabs__tab--active {
  color: var(--admin-primary);
  border-bottom-color: var(--admin-primary);
  font-weight: 600;
  background: rgba(0, 0, 0, 0);
}
.admin-nav-tabs__tab--active i,
.admin-nav-tabs__tab--active svg {
  color: var(--admin-primary);
}
.admin-nav-tabs__tab:focus-visible {
  outline: 2px solid rgba(var(--admin-primary-rgb), 0.4);
  outline-offset: 2px;
  border-radius: 4px;
}
.admin-nav-tabs__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 1.8rem;
  padding: 0 0.6rem;
  min-width: 1.8rem;
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  border-radius: var(--admin-radius-full);
  background: var(--admin-grey-200);
  color: var(--admin-text-secondary);
}
.admin-nav-tabs__tab--active .admin-nav-tabs__badge {
  background: rgba(var(--admin-primary-rgb), 0.12);
  color: var(--admin-primary);
}
.admin-toggle-switch-form {
  margin: 0;
  display: inline-flex;
}
.admin-toggle-switch {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  padding: 0;
  background: rgba(0, 0, 0, 0);
  border: 0;
  cursor: pointer;
  font: inherit;
  color: var(--admin-text-secondary);
}
.admin-toggle-switch:focus-visible {
  outline: none;
}
.admin-toggle-switch:focus-visible .admin-toggle-switch__track {
  box-shadow: 0 0 0 3px var(--admin-state-focus);
}
.admin-toggle-switch[disabled] {
  cursor: not-allowed;
  opacity: 0.55;
}
.admin-toggle-switch__track {
  position: relative;
  display: inline-block;
  width: 3rem;
  height: 1.625rem;
  background: var(--admin-grey-300);
  border: 1px solid var(--admin-grey-400);
  border-radius: 999px;
  transition:
    background var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
}
.admin-toggle-switch__thumb {
  position: absolute;
  top: 50%;
  left: 0.1875rem;
  width: 1.25rem;
  height: 1.25rem;
  background: var(--admin-white);
  border-radius: 50%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  transform: translateY(-50%);
  transition:
    left var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease);
}
.admin-toggle-switch__hint {
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: inherit;
  user-select: none;
}
.admin-toggle-switch.is-on {
  color: var(--admin-text);
}
.admin-toggle-switch.is-on .admin-toggle-switch__track {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
}
.admin-toggle-switch.is-on .admin-toggle-switch__thumb {
  left: calc(100% - 1.25rem - 0.1875rem);
  background: var(--admin-white);
}
.admin-toggle-switch.is-off .admin-toggle-switch__track {
  background: var(--admin-grey-200);
}
.admin-toggle-switch[disabled] .admin-toggle-switch__hint {
  opacity: 0.55;
  font-style: italic;
}
.admin-toggle-switch:not([disabled]):hover.is-on .admin-toggle-switch__track {
  background: var(--admin-primary-hover);
  border-color: var(--admin-primary-hover);
}
.admin-toggle-switch:not([disabled]):hover.is-off .admin-toggle-switch__track {
  background: var(--admin-grey-300);
  border-color: var(--admin-grey-500);
}
.admin-segmented-control-form {
  margin: 0;
  display: inline-flex;
}
.admin-segmented-control {
  display: inline-flex;
  align-items: stretch;
  padding: 0.1875rem;
  background: var(--admin-grey-200);
  border: 1px solid var(--admin-grey-300);
  border-radius: 999px;
  position: relative;
  font-size: var(--admin-fs-sm);
  user-select: none;
}
.admin-segmented-control.is-disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.admin-segmented-control__input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.admin-segmented-control__input:focus-visible + .admin-segmented-control__option {
  outline: 2px solid var(--admin-state-focus);
  outline-offset: 2px;
}
.admin-segmented-control__option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 5rem;
  padding: 0.375rem 0.875rem;
  border-radius: 999px;
  color: var(--admin-text-secondary);
  font-weight: 600;
  cursor: pointer;
  background: rgba(0, 0, 0, 0);
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
}
.admin-segmented-control__option:hover {
  color: var(--admin-text);
  background: rgba(0, 0, 0, 0.04);
}
.admin-segmented-control__option.is-selected {
  background: var(--admin-white);
  color: var(--admin-text);
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.08),
    0 0 0 1px var(--admin-grey-300);
}
.admin-segmented-control__option.is-selected:hover {
  background: var(--admin-white);
}
.admin-segmented-control.is-loading {
  pointer-events: none;
  opacity: 0.75;
}
.admin-segmented-control.is-disabled .admin-segmented-control__option {
  cursor: not-allowed;
}
.admin-segmented-control__label {
  display: inline-block;
  white-space: nowrap;
}
.admin-file-uploader-box {
  min-height: 120px;
  padding: var(--admin-space);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
}
.admin-file-uploader__fallback {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100px;
  padding: var(--admin-space-xl);
  border: 2px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  background: var(--admin-grey-50);
  cursor: pointer;
  text-align: center;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    background var(--admin-duration-short) var(--admin-ease);
}
.admin-file-uploader__fallback:hover {
  border-color: var(--admin-primary);
  background: var(--admin-primary-light);
}
.admin-file-uploader__fallback input[type='file'] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  font-size: 0;
  color: rgba(0, 0, 0, 0);
}
.admin-file-uploader__fallback input[type='file']::file-selector-button {
  display: none;
}
.admin-file-uploader__dropzone input[type='file'] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  font-size: 0;
  color: rgba(0, 0, 0, 0);
}
.admin-file-uploader__dropzone input[type='file']::file-selector-button {
  display: none;
}
.admin-file-uploader-box--inited .admin-file-uploader__fallback {
  display: none;
}
.admin-file-uploader__list {
  margin-top: var(--admin-space);
}
.admin-file-uploader__grid {
  display: grid;
  gap: var(--admin-space-sm);
  margin-top: var(--admin-space-sm);
}
.admin-file-uploader__grid--image {
  grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
}
.admin-file-uploader__grid--video,
.admin-file-uploader__grid--audio {
  grid-template-columns: 1fr;
}
.admin-file-uploader__grid--document,
.admin-file-uploader__grid--archive {
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
}
.admin-file-uploader__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--admin-space-xs);
  padding: var(--admin-space-sm);
  background: var(--admin-grey-50);
  border-radius: var(--admin-radius-sm);
  border: 1px solid var(--admin-border-light);
  transition: box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-file-uploader__item:hover {
  box-shadow: var(--admin-elevation-1);
}
.admin-file-uploader__thumb {
  width: 100%;
  height: auto;
  max-height: 110px;
  object-fit: cover;
  border-radius: var(--admin-radius-xs);
}
.admin-file-uploader__preview-video {
  width: 100%;
  max-height: 160px;
  border-radius: var(--admin-radius-xs);
}
.admin-file-uploader__preview-audio {
  width: 100%;
  max-width: 320px;
}
.admin-file-uploader__icon {
  font-size: var(--admin-fs-body-xl);
  color: var(--admin-text-muted);
}
.admin-file-uploader__dropzone {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100px;
  padding: var(--admin-space-xl);
  border: 2px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  background: var(--admin-grey-50);
  cursor: pointer;
  text-align: center;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    background var(--admin-duration-short) var(--admin-ease);
}
.admin-file-uploader__dropzone:hover,
.admin-file-uploader__dropzone--dragover {
  border-color: var(--admin-primary);
  background: var(--admin-primary-light);
}
.admin-file-uploader__dropzone--disabled {
  pointer-events: none;
  opacity: 0.55;
  cursor: not-allowed;
}
.admin-file-uploader__dropzone-icon {
  display: block;
  font-size: 2.4rem;
  color: var(--admin-text-muted);
  margin-bottom: var(--admin-space-sm);
}
.admin-file-uploader__dropzone-icon i {
  font-size: inherit;
}
.admin-file-uploader__dropzone-text {
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  color: var(--admin-text);
  margin-bottom: 0.3rem;
}
.admin-file-uploader__dropzone-hint {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-file-uploader__dropzone-loader {
  display: none;
  position: absolute;
  inset: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--admin-space);
  background: hsla(0, 0%, 100%, 0.92);
  border-radius: inherit;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  backdrop-filter: blur(2px);
}
.admin-file-uploader__dropzone-loader .fa-spinner {
  font-size: 1.8rem;
  color: var(--admin-primary);
  animation: spin 0.8s linear infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.admin-file-uploader-box--loading .admin-file-uploader__dropzone .admin-file-uploader__dropzone-loader {
  display: flex;
}
.admin-file-uploader-box--loading .admin-file-uploader__dropzone .admin-file-uploader__dropzone-icon,
.admin-file-uploader-box--loading .admin-file-uploader__dropzone .admin-file-uploader__dropzone-text,
.admin-file-uploader-box--loading .admin-file-uploader__dropzone .admin-file-uploader__dropzone-hint {
  visibility: hidden;
}
.admin-file-uploader__meta {
  width: 100%;
  margin-top: var(--admin-space-2xs);
}
.admin-file-uploader__name {
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  color: var(--admin-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-file-uploader__size {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  margin-top: 0.1rem;
}
.admin-file-uploader__actions {
  display: flex;
  gap: var(--admin-space-2xs);
  flex-wrap: wrap;
  margin-top: var(--admin-space-xs);
}
.admin-file-uploader-box--cms-slot {
  min-height: 0;
  padding: 0;
  border: none;
  border-radius: inherit;
  background: rgba(0, 0, 0, 0);
}
.admin-file-uploader-box--cms-slot .admin-file-uploader__dropzone--cms-slot {
  width: 100%;
  min-height: 100%;
  flex: 1;
  margin: 0;
  gap: var(--admin-space-xs);
}
.admin-cms-media-placeholder--list-uploader.admin-file-uploader-box--cms-slot .admin-file-uploader__dropzone--cms-slot {
  min-height: 140px;
  flex: 0 0 auto;
}
.admin-file-uploader-box--cms-slot .admin-file-uploader__dropzone.is-cms-slot-overlay {
  position: absolute;
  inset: 0;
  min-height: 0;
  border-radius: inherit;
  background: rgba(0, 0, 0, 0.15);
  border-color: hsla(0, 0%, 100%, 0.25);
  opacity: 1;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    border-color var(--admin-duration-short) var(--admin-ease);
}
.admin-file-uploader-box--cms-slot:hover .admin-file-uploader__dropzone.is-cms-slot-overlay,
.admin-file-uploader-box--cms-slot
  .admin-file-uploader__dropzone.is-cms-slot-overlay.admin-file-uploader__dropzone--dragover {
  background: rgba(37, 99, 235, 0.12);
  border-color: rgba(37, 99, 235, 0.6);
}
.admin-file-uploader-box--cms-slot .admin-file-uploader__dropzone-icon {
  margin-bottom: var(--admin-space-2xs);
}
.admin-file-uploader-box--cms-slot .admin-file-uploader__dropzone-text {
  margin-bottom: 0;
  text-align: center;
}
.admin-single-img-uploader__rules {
  margin-bottom: var(--admin-space-lg);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.6;
}
.admin-single-img-uploader__dropzone {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 180px;
  padding: var(--admin-space-2xl);
  border: 2px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  background: var(--admin-grey-50);
  cursor: pointer;
  text-align: center;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    background var(--admin-duration-short) var(--admin-ease);
}
.admin-single-img-uploader__dropzone:hover,
.admin-single-img-uploader__dropzone--dragover {
  border-color: var(--admin-primary);
  background: var(--admin-primary-light);
}
.admin-single-img-uploader__dropzone input[type='file'] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  font-size: 0;
  color: rgba(0, 0, 0, 0);
}
.admin-single-img-uploader__dropzone input[type='file']::file-selector-button {
  display: none;
}
.admin-single-img-uploader__dropzone-icon {
  font-size: 3rem;
  color: var(--admin-text-muted);
  margin-bottom: var(--admin-space);
  display: block;
}
.admin-single-img-uploader__dropzone-text {
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  color: var(--admin-text);
  margin-bottom: 0.4rem;
}
.admin-single-img-uploader__dropzone-hint {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-single-img-uploader__preview {
  display: flex;
  align-items: center;
  gap: var(--admin-space-lg);
  max-width: 440px;
  padding: var(--admin-space);
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  margin-top: var(--admin-space);
}
.admin-single-img-uploader__thumb {
  width: 80px;
  height: 80px;
  flex-shrink: 0;
  object-fit: cover;
  border-radius: var(--admin-radius-sm);
  border: 1px solid var(--admin-border-light);
}
.admin-single-img-uploader__meta {
  flex: 1;
  min-width: 0;
}
.admin-single-img-uploader__name {
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  color: var(--admin-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-single-img-uploader__size {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  margin-top: 0.2rem;
}
.admin-single-img-uploader__actions {
  display: flex;
  gap: var(--admin-space-xs);
  margin-top: var(--admin-space-sm);
  flex-wrap: wrap;
}
.admin-single-video-uploader__rules {
  margin-bottom: var(--admin-space-lg);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.6;
}
.admin-single-video-uploader__dropzone {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 120px;
  padding: var(--admin-space-xl);
  border: 2px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  background: var(--admin-grey-50);
  cursor: pointer;
  text-align: center;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    background var(--admin-duration-short) var(--admin-ease);
}
.admin-single-video-uploader__dropzone:hover,
.admin-single-video-uploader__dropzone--dragover {
  border-color: var(--admin-primary);
  background: var(--admin-primary-light);
}
.admin-single-video-uploader__dropzone input[type='file'] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  font-size: 0;
  color: rgba(0, 0, 0, 0);
}
.admin-single-video-uploader__dropzone input[type='file']::file-selector-button {
  display: none;
}
.admin-single-video-uploader__icon {
  font-size: 2.8rem;
  color: var(--admin-text-muted);
  margin-bottom: var(--admin-space-sm);
  display: block;
}
.admin-single-video-uploader__text {
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  color: var(--admin-text);
  margin-bottom: 0.3rem;
}
.admin-single-video-uploader__hint {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-single-video-uploader__preview {
  margin-top: var(--admin-space);
  padding: var(--admin-space);
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
}
.admin-single-video-uploader video {
  width: 100%;
  max-height: 200px;
  border-radius: var(--admin-radius-sm);
}
.admin-cpf {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
}
.admin-cpf__modes {
  display: inline-flex;
  border: 1px solid var(--admin-border-light, #eee);
  border-radius: var(--admin-radius-sm, 6px);
  overflow: hidden;
}
.admin-cpf__modes[hidden] {
  display: none;
}
.admin-cpf__mode {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  margin: 0;
  background: var(--admin-grey-50, #fafafa);
  color: var(--admin-text-secondary, #525252);
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  padding: 6px 12px;
  cursor: pointer;
}
.admin-cpf__mode + .admin-cpf__mode {
  border-left: 1px solid var(--admin-border-light, #eee);
}
.admin-cpf__mode.is-active {
  background: var(--admin-primary, #171717);
  color: var(--admin-on-primary, #fff);
}
.admin-cpf__pane[hidden] {
  display: none;
}
.admin-cpf__pane--gradient {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-width: 320px;
}
.admin-cpf__grad-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}
.admin-cpf__grad-field {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 12px;
  color: var(--admin-text-secondary, #525252);
}
.admin-cpf__grad-type {
  font: inherit;
  font-size: 12px;
  padding: 3px 6px;
  border: 1px solid var(--admin-border-light, #eee);
  border-radius: var(--admin-radius-xs, 4px);
  background: #fff;
}
.admin-cpf__grad-angle,
.admin-cpf__stop-pos {
  width: 3.5rem;
  font: inherit;
  font-size: 12px;
  padding: 3px 6px;
  border: 1px solid var(--admin-border-light, #eee);
  border-radius: var(--admin-radius-xs, 4px);
  background: #fff;
}
.admin-cpf__grad-unit {
  font-size: 11px;
  color: var(--admin-text-secondary, #525252);
}
.admin-cpf__stops {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.admin-cpf__stop {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}
.admin-cpf__stop-tag {
  width: 2.6em;
  font-size: 11px;
  font-weight: 700;
  color: var(--admin-text-secondary, #525252);
}
.admin-cpf__grad-preview {
  width: 100%;
  min-width: 12rem;
  height: 1.75rem;
  border-radius: var(--admin-radius-xs, 4px);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.12);
}
.admin-cpf .pickr {
  position: relative;
  z-index: 2;
}
.admin-cpf .pcr-app {
  z-index: 40;
}
.admin-cpf__pickr .pickr .pcr-button {
  width: 2.5rem;
  height: 2.5rem;
  min-width: 2.25rem;
  min-height: 2.25rem;
  padding: 0.35rem;
  border-radius: var(--admin-radius-sm, 6px);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.12);
}
.admin-cpf__stop-pickr .pickr .pcr-button {
  width: 1.9rem;
  height: 1.9rem;
  min-width: 1.75rem;
  min-height: 1.75rem;
  padding: 0.25rem;
  border-radius: var(--admin-radius-xs, 4px);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.12);
}
.admin-si-deep {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 0.2588996764vw + 0.9029126214rem, 1.4rem);
}
.admin-si-deep__hint-top {
  margin: 0 0 8px;
  font-size: 13px;
  color: var(--admin-on-surface-variant);
}
.admin-si-deep__guide {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  padding: clamp(1rem, 0.1294498382vw + 0.9514563107rem, 1.2rem) clamp(1.2rem, 0.1294498382vw + 1.1514563107rem, 1.4rem);
  background: rgba(var(--admin-primary-rgb), 0.06);
  border: 1px solid var(--admin-outline-variant);
  border-radius: 8px;
  font-size: 12px;
  line-height: 1.4;
}
.admin-si-deep__toolbar-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.admin-si-deep__toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.admin-si-deep__guide-label {
  font-weight: 700;
  color: var(--admin-on-surface);
  margin-right: 4px;
}
.admin-si-deep__guide-doc {
  width: 100%;
  margin-top: 2px;
  font-size: 11px;
  color: var(--admin-on-surface-variant);
}
.admin-si-deep__guide-doc code {
  font-size: 11px;
}
.admin-si-deep__chip {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  border: 1px solid rgba(0, 0, 0, 0);
}
.admin-si-deep__chip--section {
  background: var(--admin-accent-purple-bg);
  color: var(--admin-accent-purple-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__chip--end {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__chip--title {
  background: var(--admin-accent-teal-bg);
  color: var(--admin-accent-teal-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__chip--sep {
  background: var(--admin-premium-bg);
  color: var(--admin-premium-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__chip--at {
  background: var(--admin-info-bg);
  color: var(--admin-info-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__tool {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid var(--admin-outline-variant);
  border-radius: 8px;
  background: var(--admin-white);
  color: var(--admin-on-surface);
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
  transition:
    border-color 0.16s ease,
    background-color 0.16s ease,
    color 0.16s ease,
    transform 0.16s ease;
}
.admin-si-deep__tool:hover {
  transform: translateY(-1px);
}
.admin-si-deep__tool:focus-visible {
  outline: 2px solid rgba(var(--admin-primary-rgb), 0.35);
  outline-offset: 2px;
}
.admin-si-deep__tool--section {
  background: var(--admin-accent-purple-bg);
  color: var(--admin-accent-purple-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__tool--end {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__tool--title {
  background: var(--admin-accent-teal-bg);
  color: var(--admin-accent-teal-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__tool--sep {
  background: var(--admin-premium-bg);
  color: var(--admin-premium-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__tool--at {
  background: var(--admin-info-bg);
  color: var(--admin-info-text);
  border-color: rgba(0, 0, 0, 0);
}
.admin-si-deep__editor-shell {
  min-height: 460px;
  border: 1px solid var(--admin-outline-variant);
  border-radius: 10px;
  background: var(--admin-white);
  overflow: hidden;
}
.admin-si-deep__ta {
  display: block;
  margin: 0;
  padding: 16px 18px;
  font-size: 14px;
  line-height: 1.7;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  border: none;
  border-radius: 0;
  box-sizing: border-box;
  width: 100%;
  min-height: 460px;
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-word;
  tab-size: 4;
}
.admin-si-deep__ta {
  resize: vertical;
  background: var(--admin-white) !important;
  color: var(--admin-text);
  caret-color: var(--admin-text);
}
.admin-si-deep__ta::placeholder {
  color: var(--admin-text-muted);
}
.admin-si-deep__ta::selection {
  background: rgba(var(--admin-primary-rgb), 0.2);
}
.admin-si-deep__ta:focus {
  outline: 2px solid rgba(var(--admin-primary-rgb), 0.35);
  outline-offset: -1px;
}
.admin-si-deep__result {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid var(--admin-outline-variant);
  border-radius: 10px;
  background: var(--admin-white);
  overflow: hidden;
}
.admin-si-deep__tabs {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px;
  background: var(--admin-grey-50);
  border-bottom: 1px solid var(--admin-outline-variant);
}
.admin-si-deep__tab {
  min-width: 84px;
  height: 36px;
  padding: 0 14px;
  border: 1px solid rgba(0, 0, 0, 0);
  border-radius: 8px;
  background: rgba(0, 0, 0, 0);
  color: var(--admin-on-surface-variant);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition:
    background-color 0.16s ease,
    border-color 0.16s ease,
    color 0.16s ease;
}
.admin-si-deep__tab:hover {
  background: rgba(var(--admin-primary-rgb), 0.08);
  color: var(--admin-on-surface);
}
.admin-si-deep__tab.is-active {
  background: var(--admin-white);
  border-color: var(--admin-outline-variant);
  color: var(--admin-on-surface);
}
.admin-si-deep__tab:focus-visible {
  outline: 2px solid rgba(var(--admin-primary-rgb), 0.35);
  outline-offset: 2px;
}
.admin-si-deep__panel {
  display: none;
  background: var(--admin-white);
}
.admin-si-deep__panel.is-active {
  display: block;
}
.admin-si-deep__output {
  margin: 0;
  padding: 16px 18px;
  min-height: 240px;
  max-height: 360px;
  overflow: auto;
  background: var(--admin-white);
  color: var(--admin-text);
  font-size: 13px;
  line-height: 1.7;
  white-space: pre-wrap;
  word-break: break-word;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.admin-btn--excel {
  background: var(--admin-white);
  border-color: var(--admin-border);
  color: #217346;
}
.admin-btn--excel:hover {
  background: var(--admin-success-bg);
  border-color: var(--admin-success-border);
  color: var(--admin-success-text);
}
.admin-btn--excel i {
  color: #217346;
}
.admin-table__check {
  width: 40px !important;
  padding-left: 1rem !important;
  padding-right: 0 !important;
}
.admin-table__check input[type='checkbox'] {
  accent-color: var(--admin-primary);
  width: 15px;
  height: 15px;
  cursor: pointer;
}
table tr.is-selected td,
.admin-table tbody tr.is-selected td {
  background: var(--admin-primary-light);
}
.admin-index-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-xs) var(--admin-space);
  margin: 0 0 var(--admin-space);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  transition:
    background 150ms ease,
    border-color 150ms ease;
}
.admin-index-toolbar.is-active {
  background: var(--admin-primary-light);
  border-color: rgba(var(--admin-primary-rgb), 0.35);
}
.admin-index-toolbar .admin-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
  height: var(--admin-size-input-height);
}
.admin-index-toolbar .admin-btn i {
  font-size: 1.2rem;
  line-height: 1;
}
.admin-index-toolbar__group {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
}
.admin-index-toolbar__group--page {
  flex-wrap: wrap;
  gap: var(--admin-space-xs);
  padding-left: var(--admin-space);
  margin-left: var(--admin-space-xs);
  border-left: 1px solid var(--admin-border-light);
}
.admin-index-toolbar__group--end {
  margin-left: auto;
}
.admin-index-toolbar__page-jump {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-body);
}
.admin-index-toolbar__page-input {
  width: 52px;
  height: var(--admin-size-input-height);
  padding: 0 0.5rem;
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-xs);
  background: var(--admin-white);
  color: var(--admin-text);
  font-size: var(--admin-fs-body-lg);
  text-align: center;
  -moz-appearance: textfield;
}
.admin-index-toolbar__page-input::-webkit-outer-spin-button,
.admin-index-toolbar__page-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.admin-index-toolbar__page-input:focus {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
.admin-index-toolbar__page-info {
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-body);
}
.admin-index-toolbar__page-info strong {
  color: var(--admin-text);
  font-weight: 600;
}
.admin-index-toolbar__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.8rem;
  height: 1.8rem;
  padding: 0 0.5rem;
  margin-left: 0.2rem;
  border-radius: 99px;
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  line-height: 1;
}
.admin-index-toolbar [data-bulk-action='delete']:disabled .admin-index-toolbar__count {
  background: var(--admin-grey-100);
  color: var(--admin-text-muted);
}
.admin-sortable__handle.admin-sortable__handle--sm {
  width: 1.5rem;
  height: 1.5rem;
  font-size: 0.875rem;
}
.admin-table-cards {
  display: none;
}
@media (max-width: 992px) {
  [data-table-manager] table,
  [data-listing-table] table {
    display: none;
  }
  .admin-table-cards {
    display: flex;
    flex-direction: column;
    gap: var(--admin-space-sm);
  }
}
.admin-table-card {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: rgba(0, 0, 0, 0);
  overflow: hidden;
}
.admin-table-card--current,
.admin-table-card.user-sessions__row--current {
  border-left: 3px solid var(--admin-primary);
}
.admin-table-card__header {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-xs) var(--admin-space);
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50);
}
.admin-table-card__check {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}
.admin-table-card__check .admin-checkbox-wrap {
  margin: 0;
}
.admin-table-card__icon {
  display: flex;
  align-items: center;
  color: var(--admin-text-muted);
  font-size: 1.3rem;
}
.admin-table-card__body {
  padding: var(--admin-space-sm) var(--admin-space);
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
}
.admin-table-card__row {
  display: flex;
  align-items: baseline;
  gap: var(--admin-space-sm);
}
.admin-table-card__label {
  flex-shrink: 0;
  min-width: 80px;
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.admin-table-card__value {
  flex: 1;
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text);
  word-break: break-all;
}
.admin-table-card__value code {
  font-family: ui-monospace, 'Cascadia Code', 'Source Code Pro', monospace;
  font-size: var(--admin-fs-sm);
  background: var(--admin-grey-100);
  padding: 1px 5px;
  border-radius: 3px;
  color: var(--admin-accent-coral);
}
.admin-table-card__action {
  padding: var(--admin-space-sm) var(--admin-space);
  border-top: 1px solid var(--admin-border-light);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--admin-space-sm);
  background: var(--admin-grey-50);
}
.cs-wrap {
  position: relative;
  display: block;
}
.cs-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-xs);
  width: 100%;
  min-height: var(--admin-size-input-height);
  padding: 0 var(--admin-space-sm) 0 var(--admin-space-lg);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-body-lg);
  font-family: inherit;
  color: var(--admin-text);
  cursor: pointer;
  text-align: left;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.cs-trigger:hover:not(:disabled) {
  border-color: var(--admin-border-strong);
}
.cs-trigger:focus-visible,
.cs-trigger--open,
.cs-trigger[aria-expanded='true'] {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
.cs-trigger:disabled {
  background: var(--admin-grey-50);
  color: var(--admin-text-disabled);
  cursor: not-allowed;
  opacity: 0.7;
}
.cs-trigger__value {
  flex: 1 1 0;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cs-trigger__value--empty {
  color: var(--admin-text-muted);
}
.cs-trigger__arrow {
  flex-shrink: 0;
  color: var(--admin-text-muted);
  display: flex;
  align-items: center;
  transition:
    transform var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease);
}
.cs-trigger--open .cs-trigger__arrow,
.cs-trigger[aria-expanded='true'] .cs-trigger__arrow {
  transform: rotate(180deg);
  color: var(--admin-primary);
}
.cs-dropdown {
  position: absolute;
  z-index: 1050;
  top: calc(100% + 4px);
  left: 0;
  min-width: 100%;
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-2);
  overflow: hidden;
  animation: cs-in var(--admin-duration-short) var(--admin-ease) both;
}
.cs-dropdown--up {
  top: auto;
  bottom: calc(100% + 4px);
  animation-name: cs-in-up;
}
.cs-dropdown__search {
  padding: var(--admin-space-xs) var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50);
}
.cs-dropdown__search-input {
  width: 100%;
  height: 3rem;
  padding: 0 var(--admin-space-sm);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-xs);
  font-size: var(--admin-fs-body-lg);
  font-family: inherit;
  color: var(--admin-text);
}
.cs-dropdown__search-input::placeholder {
  color: var(--admin-text-muted);
}
.cs-dropdown__search-input:focus {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
@keyframes cs-in {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes cs-in-up {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.cs-list {
  list-style: none;
  margin: 0;
  padding: 4px 0;
  max-height: min(240px, 60vh);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.cs-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.65rem var(--admin-space);
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text);
  cursor: pointer;
  transition: background var(--admin-duration-short) var(--admin-ease);
}
.cs-option:hover:not(.cs-option--disabled):not(.cs-option--empty):not(.cs-option--selected) {
  background: var(--admin-grey-50);
}
.cs-option--active:not(.cs-option--selected):not(.cs-option--disabled) {
  background: var(--admin-grey-100);
}
.cs-option--selected {
  background: var(--admin-primary-light);
  color: var(--admin-primary-text);
  font-weight: 500;
}
.cs-option--disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.cs-option--empty {
  cursor: default;
  justify-content: center;
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-sm);
  padding: 1.2rem var(--admin-space);
}
.cs-option__label {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cs-option__check {
  flex-shrink: 0;
  margin-left: var(--admin-space-sm);
  color: var(--admin-primary);
  display: flex;
  align-items: center;
}
.mcs-wrap {
  position: relative;
  display: block;
}
.mcs-trigger {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-2xs);
  min-height: var(--admin-size-input-height);
  padding: var(--admin-space-xs) var(--admin-space-sm);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  cursor: text;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.mcs-trigger:hover {
  border-color: var(--admin-border-strong);
}
.mcs-trigger--open,
.mcs-trigger:focus-within,
.mcs-trigger[aria-expanded='true'] {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
.mcs-tags {
  display: contents;
}
.mcs-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  height: 2rem;
  padding: 0 0.4rem 0 0.65rem;
  background: var(--admin-primary-light);
  color: var(--admin-primary-text);
  border: 1px solid rgba(var(--admin-primary-rgb), 0.25);
  border-radius: var(--admin-radius-full);
  font-size: var(--admin-fs-body);
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  max-width: 200px;
}
.mcs-tag__label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mcs-tag__remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.4rem;
  height: 1.4rem;
  padding: 0;
  border: none;
  background: rgba(0, 0, 0, 0);
  color: inherit;
  opacity: 0.65;
  border-radius: 50%;
  cursor: pointer;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    opacity var(--admin-duration-short) var(--admin-ease);
}
.mcs-tag__remove:hover {
  background: rgba(var(--admin-primary-rgb), 0.18);
  opacity: 1;
}
.mcs-search {
  flex: 1 1 80px;
  min-width: 80px;
  height: 2.4rem;
  padding: 0 var(--admin-space-2xs);
  border: none;
  outline: none;
  background: rgba(0, 0, 0, 0);
  font-size: var(--admin-fs-body-lg);
  font-family: inherit;
  color: var(--admin-text);
}
.mcs-search::placeholder {
  color: var(--admin-text-muted);
}
.mcs-dropdown {
  position: absolute;
  z-index: 1050;
  top: calc(100% + 4px);
  left: 0;
  min-width: 100%;
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-2);
  overflow: hidden;
  animation: cs-in var(--admin-duration-short) var(--admin-ease) both;
}
.mcs-dropdown--up {
  top: auto;
  bottom: calc(100% + 4px);
  animation-name: cs-in-up;
}
.mcs-list {
  list-style: none;
  margin: 0;
  padding: 4px 0;
  max-height: min(240px, 60vh);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.mcs-option {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: 0.65rem var(--admin-space);
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text);
  cursor: pointer;
  transition: background var(--admin-duration-short) var(--admin-ease);
}
.mcs-option:hover:not(.mcs-option--disabled):not(.mcs-option--empty) {
  background: var(--admin-grey-50);
}
.mcs-option--active:not(.mcs-option--disabled) {
  background: var(--admin-grey-100);
}
.mcs-option--selected {
  font-weight: 500;
}
.mcs-option--disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.mcs-option--empty {
  cursor: default;
  justify-content: center;
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-sm);
  padding: 1.2rem var(--admin-space);
}
.mcs-option--addable {
  color: var(--admin-primary);
  font-weight: 500;
}
.mcs-option__check {
  flex-shrink: 0;
  width: 1.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--admin-primary);
}
.mcs-option__label {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mcs-option__add-icon {
  flex-shrink: 0;
  width: 1.4rem;
  text-align: center;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--admin-primary);
}
.mcs-wrap--search-top .mcs-trigger {
  cursor: pointer;
  padding: var(--admin-space-xs) var(--admin-space-sm);
  min-height: var(--admin-size-input-height);
}
.mcs-wrap--search-top .mcs-trigger-placeholder {
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-body-lg);
  pointer-events: none;
  user-select: none;
}
.mcs-search-bar {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  padding: var(--admin-space-xs) var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50);
  position: sticky;
  top: 0;
  z-index: 1;
}
.mcs-search-bar__icon {
  flex-shrink: 0;
  color: var(--admin-text-muted);
  display: flex;
  align-items: center;
}
.mcs-search-bar .mcs-search {
  flex: 1 1 0;
  min-width: 0;
  height: 2.8rem;
  padding: 0 var(--admin-space-xs);
  font-size: var(--admin-fs-body-lg);
}
.admin-tag-input {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--admin-space-2xs);
  min-height: var(--admin-size-input-height);
  padding: var(--admin-space-xs) var(--admin-space-sm);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  cursor: text;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-tag-input:focus-within {
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
  outline: none;
}
.admin-tag-input--error {
  border-color: var(--admin-error);
}
.admin-tag-input--error:focus-within {
  box-shadow: 0 0 0 0.2rem rgba(var(--admin-error-rgb, 220, 38, 38), 0.12);
}
.admin-tag-input__tags {
  display: contents;
}
.admin-tag-input__chip {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  height: 2.2rem;
  padding: 0 0.4rem 0 0.7rem;
  background: var(--admin-primary-light);
  color: var(--admin-primary-text);
  border: 1px solid rgba(var(--admin-primary-rgb), 0.25);
  border-radius: var(--admin-radius-full);
  font-size: var(--admin-fs-body);
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  max-width: 180px;
}
.admin-tag-input__chip-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-tag-input__chip-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  padding: 0;
  border: none;
  background: rgba(0, 0, 0, 0);
  color: inherit;
  opacity: 0.55;
  border-radius: 50%;
  cursor: pointer;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    opacity var(--admin-duration-short) var(--admin-ease);
}
.admin-tag-input__chip-remove:hover {
  background: rgba(var(--admin-primary-rgb), 0.18);
  opacity: 1;
}
.admin-tag-input__field {
  flex: 1 1 100px;
  min-width: 100px;
  height: 2.4rem;
  padding: 0 var(--admin-space-2xs);
  border: none;
  outline: none;
  background: rgba(0, 0, 0, 0);
  font-size: var(--admin-fs-body-lg);
  font-family: inherit;
  color: var(--admin-text);
}
.admin-tag-input__field::placeholder {
  color: var(--admin-text-muted);
}
.admin-number-stepper {
  display: inline-flex;
  align-items: stretch;
  align-self: flex-start;
  height: var(--admin-size-input-height);
  width: auto;
  max-width: 100%;
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-number-stepper:focus-within {
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
.admin-number-stepper__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 3.8rem;
  padding: 0;
  border: none;
  background: var(--admin-grey-50);
  color: var(--admin-text-muted);
  cursor: pointer;
  font-family: inherit;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease);
  user-select: none;
}
.admin-number-stepper__btn:hover:not(:disabled) {
  background: var(--admin-grey-100);
  color: var(--admin-text);
}
.admin-number-stepper__btn:active:not(:disabled) {
  background: var(--admin-grey-200, #e5e7eb);
}
.admin-number-stepper__btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}
.admin-number-stepper__btn--minus {
  border-right: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius) 0 0 var(--admin-radius);
}
.admin-number-stepper__btn--plus {
  border-left: 1px solid var(--admin-border-light);
  border-radius: 0 var(--admin-radius) var(--admin-radius) 0;
}
.admin-number-stepper__input {
  flex: 0 1 auto;
  display: inline-block;
  width: auto;
  min-width: 5ch;
  field-sizing: content;
  height: 100%;
  padding: 0 var(--admin-space-xs);
  border: none;
  outline: none;
  background: rgba(0, 0, 0, 0);
  font-size: var(--admin-fs-body-lg);
  font-family: inherit;
  color: var(--admin-text);
  text-align: center;
  -moz-appearance: textfield;
}
.admin-number-stepper__input::-webkit-inner-spin-button,
.admin-number-stepper__input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.admin-number-stepper__suffix {
  display: inline-flex;
  align-items: center;
  padding: 0 var(--admin-space-sm) 0 0;
  font-size: var(--admin-fs-body);
  color: var(--admin-text-muted);
  white-space: nowrap;
}
.admin-char-counter__header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--admin-space-sm);
  margin-bottom: var(--admin-space-sm);
}
.admin-char-counter__header .admin-form__label {
  margin-bottom: 0;
}
.admin-char-counter__count {
  display: inline-flex;
  align-items: baseline;
  gap: 0.1rem;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  white-space: nowrap;
  flex-shrink: 0;
}
.admin-char-counter__current {
  font-weight: 600;
  color: var(--admin-text);
  transition: color var(--admin-duration-short) var(--admin-ease);
}
.admin-char-counter__current--warn {
  color: var(--admin-warn-text, #92400e);
}
.admin-char-counter__current--limit {
  color: var(--admin-error-text, #991b1b);
}
.admin-char-counter__sep {
  color: var(--admin-border);
  margin: 0 0.15rem;
}
.admin-char-counter__max {
  color: var(--admin-text-muted);
}
.admin-char-counter__wrap {
  position: relative;
}
.admin-char-counter__wrap textarea {
  display: block;
  width: 100%;
  padding: var(--admin-space-sm) var(--admin-space);
  min-height: var(--admin-size-editor-min-height);
  resize: vertical;
  font-size: var(--admin-fs-body-lg);
  font-family: inherit;
  line-height: 1.6;
  color: var(--admin-text);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-char-counter__wrap textarea::placeholder {
  color: var(--admin-text-muted);
}
.admin-char-counter__wrap textarea:focus {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: var(--admin-focus-ring);
}
.admin-char-counter__wrap--warn textarea {
  border-color: var(--admin-warn, #d97706);
}
.admin-char-counter__wrap--limit textarea {
  border-color: var(--admin-error, #dc2626);
}
.admin-intl-phone {
  position: relative;
}
.admin-intl-phone .iti {
  width: 100%;
  display: block;
}
.admin-intl-phone .iti__selected-country {
  height: 3.2rem;
  padding: 0 var(--admin-space-xs) 0 var(--admin-space-sm);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-right: none;
  border-radius: var(--admin-radius-sm) 0 0 var(--admin-radius-sm);
  color: var(--admin-text);
  gap: var(--admin-space-xs);
  transition: border-color var(--admin-duration-short) var(--admin-ease);
}
.admin-intl-phone .iti__selected-country:hover:not(:disabled) {
  border-color: var(--admin-border-strong);
}
.admin-intl-phone .iti__selected-country:focus {
  outline: none;
  border-color: var(--admin-border-focus);
}
.admin-intl-phone__input {
  border-radius: 0 var(--admin-radius-sm) var(--admin-radius-sm) 0;
}
.admin-intl-phone .iti__dropdown-content {
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-card-bg);
  box-shadow: var(--admin-elevation-2);
  color: var(--admin-text);
}
.admin-intl-phone .iti__country {
  color: var(--admin-text);
  font-size: var(--admin-fs-body);
}
.admin-intl-phone .iti__country.iti__highlight,
.admin-intl-phone .iti__country:hover {
  background: var(--admin-grey-100);
}
.admin-intl-phone .iti__dial-code {
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-sm);
}
.admin-intl-phone .iti__search-input {
  border-bottom: 1px solid var(--admin-border-light);
  color: var(--admin-text);
  background: var(--admin-white);
  font-family: inherit;
  font-size: var(--admin-fs-body);
}
.admin-intl-phone .iti__search-input::placeholder {
  color: var(--admin-text-muted);
}
.admin-db__body {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-3xl);
}
.admin-db__group-title {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--admin-text-muted);
  margin-bottom: var(--admin-space-lg);
}
.admin-db__group-title-bar {
  display: inline-block;
  width: 3px;
  height: 1.4em;
  border-radius: 2px;
  background: var(--admin-primary);
  flex-shrink: 0;
}
.admin-db__group-title-bar--orange {
  background: var(--admin-accent-coral);
}
.admin-db__group-title-bar--grey {
  background: var(--admin-grey-300);
}
.admin-db__cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--admin-space-lg);
}
@media (max-width: 767px) {
  .admin-db__cards {
    grid-template-columns: 1fr;
    gap: var(--admin-space-sm);
  }
}
.admin-db__card {
  display: flex;
  align-items: center;
  gap: var(--admin-space-lg);
  padding: 2rem 2.2rem;
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-lg);
  text-decoration: none;
  color: inherit;
  position: relative;
  overflow: hidden;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease),
    transform var(--admin-duration-short) var(--admin-ease);
}
.admin-db__card::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: rgba(0, 0, 0, 0);
  border-radius: var(--admin-radius-lg) 0 0 var(--admin-radius-lg);
  transition: background var(--admin-duration-short) var(--admin-ease);
}
.admin-db__card:hover {
  border-color: rgba(var(--admin-primary-rgb), 0.2);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07);
  transform: translateY(-2px);
}
.admin-db__card:hover::before {
  background: var(--admin-primary);
}
.admin-db__card:hover .admin-db__card-arrow {
  opacity: 1;
  transform: translateX(2px);
}
.admin-db__card:hover .admin-db__card-title {
  color: var(--admin-primary);
}
.admin-db__card--alert {
  background: color-mix(in srgb, var(--admin-accent-coral) 4%, var(--admin-card-bg));
  border-color: color-mix(in srgb, var(--admin-accent-coral) 22%, var(--admin-border-light));
}
.admin-db__card--alert::before {
  background: var(--admin-accent-coral);
}
.admin-db__card--alert .admin-db__card-title {
  color: var(--admin-text);
}
.admin-db__card--alert .admin-db__card-desc {
  color: var(--admin-text-secondary);
}
.admin-db__card--alert:hover {
  border-color: var(--admin-accent-coral);
  box-shadow: 0 4px 20px color-mix(in srgb, var(--admin-accent-coral) 18%, transparent);
}
.admin-db__card--alert:hover .admin-db__card-title {
  color: var(--admin-accent-coral);
}
.admin-db__card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 5rem;
  height: 5rem;
  border-radius: 1.4rem;
  font-size: 2rem;
}
.admin-db__card-icon--blue {
  background: color-mix(in srgb, var(--admin-primary) 14%, var(--admin-card-bg));
  color: var(--admin-primary);
}
.admin-db__card-icon--teal {
  background: color-mix(in srgb, var(--admin-accent-teal) 14%, var(--admin-card-bg));
  color: var(--admin-accent-teal);
}
.admin-db__card-icon--purple {
  background: color-mix(in srgb, var(--admin-accent-purple) 14%, var(--admin-card-bg));
  color: var(--admin-accent-purple);
}
.admin-db__card-icon--green {
  background: color-mix(in srgb, var(--admin-success) 14%, var(--admin-card-bg));
  color: var(--admin-success);
}
.admin-db__card-icon--orange {
  background: color-mix(in srgb, var(--admin-accent-coral) 14%, var(--admin-card-bg));
  color: var(--admin-accent-coral);
}
.admin-db__card-icon--amber {
  background: color-mix(in srgb, var(--admin-premium) 14%, var(--admin-card-bg));
  color: var(--admin-premium);
}
.admin-db__card-icon--cyan {
  background: color-mix(in srgb, var(--admin-accent-cyan) 14%, var(--admin-card-bg));
  color: var(--admin-accent-cyan);
}
.admin-db__card-icon--red {
  background: color-mix(in srgb, var(--admin-error) 14%, var(--admin-card-bg));
  color: var(--admin-error);
}
.admin-db__card-body {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  flex: 1;
  min-width: 0;
}
.admin-db__card-title {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  font-size: var(--admin-fs-body-xl);
  font-weight: 700;
  color: var(--admin-text);
  line-height: 1.3;
  transition: color var(--admin-duration-short) var(--admin-ease);
}
.admin-db__card-desc {
  font-size: var(--admin-fs-body);
  color: var(--admin-text-muted);
  line-height: 1.5;
}
.admin-db__card-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 2rem;
  padding: 0 0.5rem;
  background: var(--admin-accent-coral);
  color: var(--admin-on-primary, #fff);
  border-radius: var(--admin-radius-full);
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1;
}
.admin-db__card-arrow {
  color: var(--admin-text-muted);
  font-size: 1.2rem;
  flex-shrink: 0;
  opacity: 0;
  transition:
    opacity var(--admin-duration-short) var(--admin-ease),
    transform var(--admin-duration-short) var(--admin-ease);
}
.admin-stat-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--admin-space-lg);
  margin-bottom: var(--admin-space-2xl);
}
@media (max-width: 1279px) {
  .admin-stat-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .admin-stat-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--admin-space-sm);
  }
}
.admin-stat-card {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 2.4rem;
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-elevation-1);
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}
.admin-stat-card:hover {
  border-color: rgba(var(--admin-primary-rgb), 0.35);
  box-shadow: 0 4px 12px rgba(var(--admin-primary-rgb), 0.1);
  transform: translateY(-2px);
}
.admin-stat-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6rem;
  height: 6rem;
  border-radius: 1.4rem;
  flex-shrink: 0;
  font-size: 2.2rem;
  transition: all 0.2s ease;
}
.admin-stat-card__icon--blue {
  background: color-mix(in srgb, var(--admin-primary) 14%, var(--admin-card-bg));
  color: var(--admin-primary);
}
.admin-stat-card__icon--green {
  background: color-mix(in srgb, var(--admin-success) 14%, var(--admin-card-bg));
  color: var(--admin-success);
}
.admin-stat-card__icon--orange {
  background: color-mix(in srgb, var(--admin-premium) 14%, var(--admin-card-bg));
  color: var(--admin-premium);
}
.admin-stat-card__icon--yellow {
  background: color-mix(in srgb, var(--admin-warn) 14%, var(--admin-card-bg));
  color: var(--admin-warn-text);
}
.admin-stat-card__icon--red {
  background: color-mix(in srgb, var(--admin-error) 14%, var(--admin-card-bg));
  color: var(--admin-error);
}
.admin-stat-card__icon--purple {
  background: color-mix(in srgb, var(--admin-accent-purple) 14%, var(--admin-card-bg));
  color: var(--admin-accent-purple);
}
.admin-stat-card__icon--teal {
  background: color-mix(in srgb, var(--admin-accent-teal) 14%, var(--admin-card-bg));
  color: var(--admin-accent-teal);
}
.admin-stat-card__icon--cyan {
  background: color-mix(in srgb, var(--admin-accent-cyan) 14%, var(--admin-card-bg));
  color: var(--admin-accent-cyan);
}
.admin-stat-card__body {
  flex: 1;
  min-width: 0;
}
.admin-stat-card__label {
  font-size: 1.3rem;
  font-weight: 500;
  color: var(--admin-text-secondary);
  margin-bottom: 0.6rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
}
.admin-stat-card__value {
  font-size: 2.4rem;
  font-weight: 700;
  color: var(--admin-text);
  line-height: 1.2;
  letter-spacing: -0.02em;
  word-break: break-word;
}
.admin-stat-card__sub {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  margin-top: var(--admin-space-3xs);
}
@media (max-width: 767px) {
  .admin-stat-card {
    padding: 1.4rem;
    gap: 1rem;
  }
  .admin-stat-card__icon {
    width: 4.4rem;
    height: 4.4rem;
    border-radius: 1rem;
    font-size: 1.8rem;
  }
  .admin-stat-card__value {
    font-size: var(--admin-fs-xl);
  }
}
.admin-dash-section {
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
  margin-bottom: var(--admin-space-xl);
  overflow: hidden;
}
.admin-dash-section__hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--admin-space-lg) var(--admin-space-2xl);
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50);
}
.admin-dash-section__title {
  font-size: var(--admin-fs-body-lg);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-dash-section__meta {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-dash-section__body {
  padding: 0;
}
.admin-dash-section table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--admin-fs-body);
}
.admin-dash-section table thead th {
  padding: var(--admin-space-sm) var(--admin-space-xl);
  background: var(--admin-grey-50);
  border-bottom: 1px solid var(--admin-border-light);
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text-secondary);
  text-align: left;
  white-space: nowrap;
}
.admin-dash-section table tbody td {
  padding: var(--admin-space-sm) var(--admin-space-xl);
  border-bottom: 1px solid var(--admin-border-light);
  color: var(--admin-text);
  vertical-align: middle;
}
.admin-dash-section table tbody tr:last-child td {
  border-bottom: none;
}
.admin-dash-section table tbody tr:hover td {
  background: var(--admin-grey-50);
}
.admin-dash-section__empty {
  padding: var(--admin-space-3xl);
  text-align: center;
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-body);
}
.admin-dash-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: var(--admin-space-lg);
  padding: var(--admin-space-xl) var(--admin-space-2xl);
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  margin-bottom: var(--admin-space-xl);
}
.admin-dash-filter__group {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
  flex: 1;
  min-width: 160px;
}
.admin-dash-filter__label {
  font-size: var(--admin-fs-sm);
  font-weight: 500;
  color: var(--admin-text-secondary);
}
.admin-dash-filter__actions {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding-bottom: 0;
}
@media (max-width: 767px) {
  .admin-dash-filter {
    flex-direction: column;
    gap: var(--admin-space);
  }
  .admin-dash-filter__group {
    min-width: 100%;
  }
  .admin-dash-filter__actions {
    width: 100%;
  }
}
.admin-auth {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--admin-main-bg);
  padding: var(--admin-space-lg);
}
.admin-auth__card {
  width: 100%;
  max-width: 400px;
  padding: var(--admin-space-2xl) var(--admin-space-xl);
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-elevation-2);
  border: 1px solid var(--admin-border-light);
}
.admin-auth__title {
  margin: 0 0 var(--admin-space-lg);
  font-size: var(--admin-fs-body-xl);
  font-weight: 600;
  letter-spacing: -0.01em;
  text-align: center;
  color: var(--admin-text);
}
.admin-auth__hint {
  margin: 0 0 var(--admin-space-lg);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
}
.admin-auth__form {
  margin: 0;
}
.admin-auth__form-group {
  margin-bottom: var(--admin-space);
}
.admin-auth__label {
  display: block;
  margin-bottom: var(--admin-space-2xs);
  font-size: var(--admin-fs-sm);
  font-weight: 500;
  color: var(--admin-text-secondary);
  letter-spacing: 0.01em;
}
.admin-auth__input {
  width: 100%;
  padding: var(--admin-space-sm) var(--admin-space-lg);
  border: 1px solid var(--admin-outline-variant);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-body-lg);
  font-family: inherit;
  box-sizing: border-box;
  color: var(--admin-text);
  background: var(--admin-white);
  transition:
    border-color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease);
}
.admin-auth__input::placeholder {
  color: var(--admin-text-muted);
}
.admin-auth__input:hover:not(:focus) {
  border-color: var(--admin-border);
  background: var(--admin-grey-50);
}
.admin-auth__input:focus {
  outline: none;
  border-color: var(--admin-primary);
  border-width: 2px;
  padding: calc(var(--admin-space-sm) - 1px) calc(var(--admin-space) - 1px);
  box-shadow: 0 0 0 1px var(--admin-primary);
}
.admin-auth__password-wrap {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  flex-wrap: nowrap;
  min-height: var(--admin-size-input-height);
  height: auto;
  border-radius: var(--admin-radius);
  border: 1px solid var(--admin-outline-variant);
  background: var(--admin-white);
  transition:
    border-color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
  overflow: hidden;
}
.admin-auth__password-wrap:hover {
  border-color: var(--admin-border);
  background: var(--admin-grey-50);
}
.admin-auth__password-wrap:focus-within {
  border-color: var(--admin-primary);
  border-width: 2px;
  box-shadow: 0 0 0 1px var(--admin-primary);
}
.admin-auth__password-wrap .admin-auth__input {
  flex: 1 1 auto;
  min-width: 0;
  min-height: var(--admin-size-input-height);
  border: none;
  border-radius: 0;
  padding-right: var(--admin-size-input-height);
  padding-left: var(--admin-space);
  background: rgba(0, 0, 0, 0);
  box-shadow: none;
}
.admin-auth__password-wrap .admin-auth__input:focus {
  box-shadow: none;
}
.admin-auth__password-toggle {
  flex: 0 0 var(--admin-size-input-height);
  width: var(--admin-size-input-height);
  min-width: var(--admin-size-input-height);
  min-height: var(--admin-size-input-height);
  align-self: stretch;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: none;
  border-left: 1px solid var(--admin-border-light);
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-muted);
  cursor: pointer;
  font: inherit;
  line-height: 1;
  -webkit-appearance: none;
  appearance: none;
  transition:
    color var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease);
}
.admin-auth__password-toggle:hover {
  color: var(--admin-text-secondary);
  background: var(--admin-state-hover);
}
.admin-auth__password-toggle:active {
  background: var(--admin-state-pressed);
}
.admin-auth__password-toggle:focus {
  outline: none;
}
.admin-auth__password-toggle:focus-visible {
  outline: var(--admin-focus-ring);
  outline-offset: -2px;
}
.admin-auth__password-toggle .admin-auth__toggle-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.admin-auth__password-toggle .admin-auth__toggle-icon i {
  font-size: var(--admin-fs-body);
}
.admin-auth__link {
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-primary);
  text-decoration: none;
  border-radius: var(--admin-radius-xs);
  padding: var(--admin-space-3xs) var(--admin-space-2xs);
  margin: calc(var(--admin-space-3xs) * -1) calc(var(--admin-space-2xs) * -1);
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-auth__link:hover {
  color: var(--admin-primary-hover);
  background: var(--admin-state-hover);
}
.admin-auth__link:active {
  background: var(--admin-state-pressed);
}
.admin-auth__link:focus-visible {
  outline: var(--admin-focus-ring);
  outline-offset: 2px;
}
.admin-auth__submit {
  width: 100%;
  padding: var(--admin-space) var(--admin-space);
  margin-top: var(--admin-space-sm);
  background: var(--admin-primary);
  color: var(--admin-on-primary);
  border: none;
  border-radius: var(--admin-radius-sm);
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  letter-spacing: 0.01em;
  cursor: pointer;
  font-family: inherit;
  transition:
    background var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
}
.admin-auth__submit:hover {
  background: var(--admin-primary-hover);
  box-shadow: var(--admin-elevation-1);
}
.admin-auth__submit:active {
  background: var(--admin-grey-900);
}
.admin-auth__submit:focus-visible {
  outline: var(--admin-focus-ring);
  outline-offset: var(--admin-focus-ring-offset);
}
.admin-auth__footer {
  margin-top: var(--admin-space-lg);
  padding-top: var(--admin-space);
  border-top: 1px solid var(--admin-border-light);
  text-align: center;
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-text-secondary);
}
.admin.admin--auth .admin-auth__password-wrap {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
}
.admin.admin--auth .admin-auth__password-wrap > .admin-auth__input {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: block !important;
}
.admin.admin--auth .admin-auth__password-wrap > .admin-auth__password-toggle {
  flex: 0 0 var(--admin-size-input-height) !important;
  width: var(--admin-size-input-height) !important;
  min-width: var(--admin-size-input-height) !important;
  display: inline-flex !important;
  align-self: stretch !important;
}
.admin-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: var(--admin-radius);
  border: 1px solid var(--admin-border-light);
  box-shadow: var(--admin-elevation-1);
  background: var(--admin-card-bg);
}
.admin-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--admin-card-bg);
}
.admin-table thead {
  position: sticky;
  top: 0;
  z-index: 1;
}
.admin-table th {
  padding: 1rem var(--admin-space-lg);
  text-align: left;
  background: var(--admin-grey-50);
  font-weight: 600;
  font-size: var(--admin-fs-sm);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--admin-text-muted);
  border-bottom: 2px solid var(--admin-border);
  white-space: nowrap;
  user-select: none;
}
.admin-table th.admin-table__col-sortable {
  cursor: pointer;
}
.admin-table th.admin-table__col-sortable:hover {
  color: var(--admin-text-secondary);
}
.admin-table td {
  padding: 1.1rem var(--admin-space-lg);
  text-align: left;
  border-bottom: 1px solid var(--admin-border-light);
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text);
  vertical-align: middle;
}
.admin-table tbody tr {
  background: var(--admin-card-bg);
  position: relative;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-table tbody tr td:first-child {
  box-shadow: inset 2px 0 0 rgba(0, 0, 0, 0);
  transition: box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-table tbody tr:hover {
  background: var(--admin-grey-50);
}
.admin-table tbody tr:hover td:first-child {
  box-shadow: inset 2px 0 0 rgba(var(--admin-primary-rgb), 0.55);
}
.admin-table tbody tr:last-child td {
  border-bottom: none;
}
.admin-table tbody tr.is-selected {
  background: var(--admin-primary-light);
}
.admin-table tbody tr.is-selected td:first-child {
  box-shadow: inset 2px 0 0 rgba(var(--admin-primary-rgb), 0.7);
}
.admin-table tbody tr.is-selected td {
  border-bottom-color: var(--admin-primary-border);
}
.admin-table tbody tr.is-selected:hover {
  background: rgba(var(--admin-primary-rgb), 0.07);
}
.admin-table tbody tr.admin-table__row--current,
.admin-table tbody tr.user-sessions__row--current {
  background: var(--admin-white);
}
.admin-table--compact th {
  padding: 0.7rem var(--admin-space);
  font-size: var(--admin-fs-xs);
}
.admin-table--compact td {
  padding: 0.7rem var(--admin-space);
  font-size: var(--admin-fs-body);
}
.admin-table--comfortable th {
  padding: 1.4rem var(--admin-space-xl);
}
.admin-table--comfortable td {
  padding: 1.4rem var(--admin-space-xl);
}
.admin-table__col-check,
.admin-table__cell-check {
  width: 40px;
  max-width: 40px;
  text-align: center;
}
.admin-table__col-handle,
.admin-table__cell-handle {
  width: 32px;
  max-width: 32px;
  color: var(--admin-text-muted);
  cursor: grab;
  text-align: center;
}
.admin-table__col-handle:active,
.admin-table__cell-handle:active {
  cursor: grabbing;
}
.admin-table__col-thumb,
.admin-table__cell-thumb {
  width: 140px;
  max-width: 140px;
}
.admin-table__col-thumb--portfolio-logo,
.admin-table__cell-thumb--portfolio-logo {
  width: 112px;
  max-width: 112px;
}
.admin-table__col-compact {
  white-space: nowrap;
  vertical-align: middle;
}
.admin-table__thumb {
  display: block;
  width: 40px;
  height: 40px;
  object-fit: cover;
  border-radius: var(--admin-radius-sm);
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
}
.admin-table__thumb[data-preview-url] {
  cursor: zoom-in;
}
.admin-table__thumb--16-10 {
  width: 112px;
  height: 70px;
  aspect-ratio: 16/10;
}
.admin-table__thumb-empty {
  display: block;
  border-radius: var(--admin-radius-sm);
  background: var(--admin-grey-100);
  border: 1px dashed var(--admin-border-light);
}
.admin-table__thumb-empty.admin-table__thumb--16-10 {
  width: 112px;
  height: 70px;
}
.admin-table__name-link {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: var(--admin-border-light);
}
.admin-table__name-link:hover {
  color: var(--admin-color-primary);
  text-decoration-color: var(--admin-color-primary);
}
.admin-table__thumb--service-item {
  width: 120px;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  object-fit: cover;
}
.admin-table__thumb--portfolio-logo {
  width: 96px;
  max-width: 100%;
  height: 40px;
  object-fit: contain;
  object-position: center left;
  aspect-ratio: auto;
}
.admin-table__thumb-placeholder {
  display: block;
  width: 120px;
  max-width: 100%;
  aspect-ratio: 16/9;
  border-radius: var(--admin-radius-sm);
  background: var(--admin-grey-100);
  border: 1px dashed var(--admin-border-light);
}
.admin-table__thumb-placeholder--portfolio-logo {
  width: 96px;
  height: 40px;
  aspect-ratio: auto;
}
.admin-table .admin-badge {
  white-space: nowrap;
  flex-shrink: 0;
}
.admin-table td:has(.admin-badge) {
  white-space: nowrap;
  vertical-align: middle;
}
.admin-table__muted {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-table__sub {
  display: block;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  margin-top: 2px;
}
.admin-table__col-actions,
.admin-table__cell-actions {
  width: 1px;
  text-align: right;
  white-space: nowrap;
}
.admin-table__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--admin-space-xs);
  flex-wrap: nowrap;
  white-space: nowrap;
}
.admin-table__actions > form,
.admin-table__actions > .admin-form-inline {
  display: inline-flex;
  align-items: center;
  margin: 0;
}
.admin-table__actions > form {
  gap: var(--admin-space-xs);
}
.admin-table__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  height: 2.8rem;
  padding: 0 1rem;
  font-size: var(--admin-fs-body);
  font-weight: 500;
  border-radius: var(--admin-radius-sm);
  text-decoration: none;
  border: 1px solid rgba(0, 0, 0, 0);
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-secondary);
  cursor: pointer;
  font-family: inherit;
  white-space: nowrap;
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    border-color var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease);
}
.admin-table__btn i,
.admin-table__btn svg {
  font-size: 1.2rem;
  flex-shrink: 0;
}
.admin-table__btn:hover {
  background: var(--admin-grey-100);
  border-color: var(--admin-border);
  color: var(--admin-text);
}
.admin-table__btn:active {
  background: var(--admin-grey-200);
}
.admin-table__btn:focus-visible {
  outline: none;
  box-shadow: var(--admin-focus-ring);
  border-color: var(--admin-border-focus);
}
.admin-table__btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}
.admin-table__btn--primary {
  background: var(--admin-primary);
  border-color: rgba(0, 0, 0, 0);
  color: var(--admin-on-primary);
  font-weight: 600;
}
.admin-table__btn--primary:hover {
  background: var(--admin-primary-hover);
  color: var(--admin-on-primary);
  border-color: rgba(0, 0, 0, 0);
}
.admin-table__btn--danger {
  color: var(--admin-error-text);
}
.admin-table__btn--danger:hover {
  background: var(--admin-error-bg);
  border-color: var(--admin-error-border);
  color: var(--admin-error-text);
}
.admin-table__btn--danger:focus-visible {
  box-shadow: var(--admin-error-focus-ring);
}
.admin-table__empty td {
  padding: 4.8rem var(--admin-space-lg);
  text-align: center;
  border-bottom: none;
}
.admin-table-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--admin-space-sm);
}
.admin-table-empty__icon {
  font-size: 3.2rem;
  color: var(--admin-grey-300);
  line-height: 1;
}
.admin-table-empty__title {
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  color: var(--admin-text-secondary);
}
.admin-table-empty__desc {
  font-size: var(--admin-fs-body);
  color: var(--admin-text-muted);
  max-width: 320px;
  line-height: 1.6;
}
.admin-table-empty__action {
  margin-top: var(--admin-space-xs);
}
.admin-table__skeleton td {
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
}
@keyframes admin-skeleton-pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
.admin-skeleton {
  display: inline-block;
  height: 1.4rem;
  border-radius: var(--admin-radius-xs);
  background: var(--admin-grey-200);
  animation: admin-skeleton-pulse 1.6s ease-in-out infinite;
}
.admin-skeleton--sm {
  height: 1rem;
}
.admin-skeleton--lg {
  height: 1.8rem;
}
.admin-skeleton--full {
  width: 100%;
  display: block;
}
.admin-skeleton--w60 {
  width: 60%;
}
.admin-skeleton--w80 {
  width: 80%;
}
.admin-skeleton--circle {
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
}
.admin-page__breadcrumb {
  display: none;
  margin-bottom: var(--admin-space);
  padding: var(--admin-space-sm) 0;
}
.admin-page__breadcrumb .admin-breadcrumb {
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
}
.admin-page__breadcrumb .admin-breadcrumb__link {
  color: var(--admin-primary);
  text-decoration: none;
}
.admin-page__breadcrumb .admin-breadcrumb__link:hover {
  text-decoration: underline;
}
.admin-page__breadcrumb .admin-breadcrumb__sep {
  color: var(--admin-text-tertiary);
}
.admin-page__breadcrumb .admin-breadcrumb__current {
  color: var(--admin-text);
  font-weight: 600;
}
@media (max-width: 992px) {
  .admin-page__breadcrumb {
    display: block;
  }
}
.admin-invite-created-banner {
  margin-bottom: var(--admin-space-lg);
  padding: var(--admin-space-lg);
  background: rgba(22, 101, 52, 0.08);
  border: 1px solid rgba(22, 101, 52, 0.22);
  border-radius: var(--admin-radius);
}
.admin-invite-created-banner__title {
  margin: 0 0 var(--admin-space-xs);
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-invite-created-banner__title .fa-link {
  margin-right: 0.35em;
  opacity: 0.85;
}
.admin-invite-created-banner__desc {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
  line-height: 1.45;
}
.admin-invite-url--banner {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-sm);
  align-items: center;
}
.admin-invite-url--banner .admin-form__input {
  flex: 1;
  min-width: min(100%, 280px);
}
.admin-page__header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 3.2rem;
}
.admin-page__header > .admin-page__header-left {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.2rem;
}
.admin-page__header > .admin-page__header-info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  align-items: flex-start;
}
.admin-page__header > .admin-page__header-info .admin-page__header-title-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.2rem;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .admin-page__header {
    flex-direction: column;
    gap: 1.6rem;
    margin-bottom: 2.4rem;
    align-items: flex-start;
  }
  .admin-page__header > .admin-page__header-left {
    flex-direction: column;
    gap: 0.8rem;
    align-items: flex-start;
  }
  .admin-page__header > .admin-page__header-info {
    gap: 0.4rem;
  }
  .admin-page__header .admin-page__header-actions {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.8rem;
  }
}
.admin-page__header-actions {
  display: flex;
  gap: 1.2rem;
  flex-shrink: 0;
  width: auto;
  justify-content: flex-end;
}
.admin-page__title {
  margin: 0;
  font-size: clamp(2rem, 2.8vw, 2.8rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--admin-text);
  line-height: 1.2;
  word-break: break-word;
}
.admin-page__subtitle {
  display: inline-flex;
  align-items: center;
  font-size: clamp(1.3rem, 1.4vw, 1.4rem);
  color: var(--admin-primary-text);
  background: var(--admin-primary-light);
  padding: 0.4rem 1rem;
  border-radius: 1.2rem;
  margin: 0;
  line-height: 1.5;
  font-weight: 600;
  border: 1px solid rgba(var(--admin-primary-rgb), 0.2);
  white-space: nowrap;
}
@media (min-width: 767px) {
  .admin-page__subtitle {
    font-size: 1.4rem;
    padding: 0.5rem 1.2rem;
  }
}
@media (min-width: 991px) {
  .admin-page__subtitle {
    padding: 0.6rem 1.4rem;
  }
}
.admin-page__desc {
  margin: 0;
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-text-secondary);
  line-height: 1.5;
}
.admin-page__toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-sm);
  margin-bottom: var(--admin-space-lg);
}
.admin-empty {
  padding: var(--admin-space-2xl) var(--admin-space-lg);
  text-align: center;
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius);
  border: 1px dashed var(--admin-border);
}
.admin-empty__text {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-text-secondary);
}
.admin-index-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: var(--admin-space) var(--admin-space-lg);
  margin-bottom: var(--admin-space-lg);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius);
  border: 1px solid var(--admin-border-light);
}
.admin-index-filter .admin-search-bar__input,
.admin-index-filter .admin-form__input,
.admin-index-filter .admin-select,
.admin-index-filter .admin-btn {
  height: var(--admin-size-input-height);
}
.admin-index-filter .cs-trigger {
  min-height: var(--admin-size-input-height);
  height: var(--admin-size-input-height);
}
.admin-index-filter__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--admin-space-2xs);
}
.admin-index-filter__item--date .admin-index-filter__date-inputs {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
}
.admin-index-filter__item--date .admin-index-filter__sep {
  color: var(--admin-text-tertiary);
  font-weight: 500;
}
.admin-index-filter__item--date .admin-form__input {
  width: auto;
}
.admin-index-filter__label {
  display: flex;
  align-items: center;
  gap: 0.35em;
  margin: 0;
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  color: var(--admin-text-muted);
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.admin-index-filter__label i {
  font-size: 0.85em;
}
.admin-index-filter__input {
  min-width: 140px;
}
.admin-index-filter__select {
  width: auto;
  min-width: 12rem;
}
.admin-index-filter__item--search {
  flex: 1 1 0;
  min-width: 0;
}
.admin-index-filter__search-row {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  width: 100%;
}
.admin-index-filter__search-row .admin-search-bar {
  flex: 1 1 0;
  min-width: 0;
}
.admin-index-filter__search-row .admin-index-filter__action-btns {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  flex-shrink: 0;
}
.admin-index-filter__actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
}
.admin-pagination-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.4rem;
  margin-top: 2.4rem;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .admin-pagination-wrapper {
    flex-direction: column;
    align-items: stretch;
    gap: 1.6rem;
    margin-top: 1.6rem;
  }
}
.admin-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  flex-wrap: wrap;
  flex: 1;
}
@media (max-width: 767px) {
  .admin-pagination {
    gap: 0.4rem;
    width: 100%;
  }
}
.admin-pagination__info {
  margin: 0;
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-text-secondary);
}
.admin-pagination__info strong {
  color: var(--admin-text);
  font-weight: 600;
}
.admin-pagination__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.8rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 767px) {
  .admin-pagination__list {
    gap: 0.4rem;
  }
}
.admin-pagination__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.2rem;
  height: 3.2rem;
  padding: 0 0.8rem;
  font-size: 1.3rem;
  font-weight: 500;
  color: var(--admin-text-secondary);
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: 0.6rem;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  user-select: none;
  touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  position: relative;
}
@media (min-width: 767px) {
  .admin-pagination__btn {
    min-width: 3.6rem;
    height: 3.6rem;
    padding: 0 1.2rem;
  }
}
.admin-pagination__btn:hover:not(.admin-pagination__btn--disabled):not(.admin-pagination__btn--current):not(
    .admin-pagination__btn--ellipsis
  ) {
  background: var(--admin-primary-light);
  border-color: rgba(var(--admin-primary-rgb), 0.4);
  color: var(--admin-primary);
  transform: translateY(-0.15rem) scale(1.05);
  box-shadow: 0 0.3rem 0.6rem rgba(var(--admin-primary-rgb), 0.15);
}
.admin-pagination__btn:active:not(.admin-pagination__btn--disabled):not(.admin-pagination__btn--current):not(
    .admin-pagination__btn--ellipsis
  ) {
  transform: translateY(0) scale(0.98);
  box-shadow: 0 0.1rem 0.2rem rgba(0, 0, 0, 0.1);
}
.admin-pagination__btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 0.2rem rgba(var(--admin-primary-rgb), 0.25);
}
.admin-pagination__btn--current {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
  color: var(--admin-on-primary);
  font-weight: 600;
  cursor: default;
  box-shadow: 0 0.2rem 0.4rem rgba(var(--admin-primary-rgb), 0.25);
  transform: scale(1.05);
}
.admin-pagination__btn--current:hover {
  background: var(--admin-primary-hover);
  transform: scale(1.08);
  box-shadow: 0 0.3rem 0.6rem rgba(var(--admin-primary-rgb), 0.3);
}
.admin-pagination__btn--disabled {
  color: var(--admin-text-disabled);
  cursor: not-allowed;
  opacity: 0.5;
  pointer-events: none;
}
.admin-pagination__btn--ellipsis {
  border-color: rgba(0, 0, 0, 0);
  background: rgba(0, 0, 0, 0);
  cursor: default;
  pointer-events: none;
  color: var(--admin-text-muted);
  padding: 0 0.4rem;
}
.admin-pagination__btn--ellipsis:hover {
  background: rgba(0, 0, 0, 0);
}
.admin-pagination__btn i,
.admin-pagination__btn svg {
  font-size: 1.2rem;
}
.admin-pagination__per-page {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .admin-pagination__per-page {
    width: 100%;
    justify-content: space-between;
  }
}
.admin-pagination__per-page-label {
  font-size: 1.3rem;
  color: var(--admin-text-secondary);
  display: flex;
  align-items: center;
  gap: 0.6rem;
  white-space: nowrap;
}
.admin-pagination__per-page-label i {
  font-size: 1.2rem;
}
.admin-pagination__per-page-select {
  padding: 0.7rem 2.8rem 0.7rem 1rem;
  border: 1px solid var(--admin-border);
  border-radius: 0.6rem;
  font-size: 1.3rem;
  background: var(--admin-white);
  color: var(--admin-text);
  cursor: pointer;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.8rem center;
  background-size: 1.2rem;
  min-width: 7rem;
  font-family: inherit;
}
.admin-pagination__per-page-select:focus {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: 0 0 0 0.2rem rgba(var(--admin-primary-rgb), 0.1);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%230076cb' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
}
.admin-pagination__per-page-select:hover {
  border-color: rgba(var(--admin-primary-rgb), 0.4);
}
@media (max-width: 767px) {
  .admin-pagination__per-page-select {
    flex: 1;
    max-width: 12rem;
  }
}
.admin-form-inline {
  display: inline;
}
.admin-table__link {
  font-weight: 600;
  color: var(--admin-text);
  text-decoration: none;
}
.admin-table__link:hover {
  text-decoration: underline;
  color: var(--admin-primary);
}
.admin-message {
  padding: var(--admin-space) var(--admin-space-lg);
  border-radius: var(--admin-radius-sm);
  margin-bottom: var(--admin-space);
  font-size: var(--admin-fs-body);
  font-weight: 500;
}
.admin-message--error {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
  border: 1px solid rgba(var(--admin-error-rgb), 0.3);
}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.admin-tab-nav {
  display: flex;
  gap: 0;
  border-bottom: 2px solid var(--admin-border-light);
  margin-bottom: var(--admin-space-xl);
  overflow-x: auto;
  scrollbar-width: none;
}
.admin-tab-nav::-webkit-scrollbar {
  display: none;
}
.admin-tab-nav__item {
  flex-shrink: 0;
  padding: var(--admin-space-sm) var(--admin-space-lg);
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-text-secondary);
  text-decoration: none;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  margin-bottom: -2px;
  transition:
    color var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
  white-space: nowrap;
}
.admin-tab-nav__item:hover {
  color: var(--admin-text);
}
.admin-tab-nav__item--active {
  color: var(--admin-primary);
  font-weight: 600;
  border-bottom-color: var(--admin-primary);
}
.admin-siteinfo-logo-list {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-siteinfo-logo-item {
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space-lg);
  padding: var(--admin-space);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-bg-subtle, #fafafa);
}
.admin-siteinfo-logo-item__left {
  flex: 0 0 220px;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
}
.admin-siteinfo-logo-item__right {
  flex: 1 1 0;
  min-width: 0;
}
.admin-siteinfo-logo-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100px;
  border-radius: var(--admin-radius-sm);
  border: 1px solid var(--admin-border-light);
  overflow: hidden;
}
.admin-siteinfo-logo-preview--dark {
  background: var(--admin-grey-900);
}
.admin-siteinfo-logo-preview--light {
  background: var(--admin-grey-50);
}
.admin-siteinfo-logo-preview--admin {
  background: var(--admin-drawer-bg);
  border-color: var(--admin-drawer-border);
}
.admin-siteinfo-logo-preview__img {
  max-height: 72px;
  max-width: 90%;
  object-fit: contain;
}
.admin-form__label-hint {
  margin-left: var(--admin-space-xs);
  font-size: var(--admin-fs-xs);
  font-weight: 400;
  color: var(--admin-text-muted);
}
[data-theme='dark'] .admin-pagination__per-page-select,
[data-theme='dark-modern'] .admin-pagination__per-page-select,
[data-theme='dark-abyss'] .admin-pagination__per-page-select,
[data-theme='dark-dracula'] .admin-pagination__per-page-select,
[data-theme='dark-mongo'] .admin-pagination__per-page-select,
[data-theme='dark-red'] .admin-pagination__per-page-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23a8b4cc' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
}
[data-theme='dark'] .admin-pagination__per-page-select:focus,
[data-theme='dark-modern'] .admin-pagination__per-page-select:focus,
[data-theme='dark-abyss'] .admin-pagination__per-page-select:focus,
[data-theme='dark-dracula'] .admin-pagination__per-page-select:focus,
[data-theme='dark-mongo'] .admin-pagination__per-page-select:focus,
[data-theme='dark-red'] .admin-pagination__per-page-select:focus {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2334affc' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
}
.admin-form {
  max-width: 640px;
}
.admin-form--wide {
  max-width: 1280px;
}
.admin-form__section {
  margin-bottom: var(--admin-space-2xl);
}
.admin-form__section:last-child {
  margin-bottom: 0;
}
.admin-form__section:has(+ .admin-form__actions) {
  margin-bottom: 0;
}
.admin-form__section-title {
  font-size: var(--admin-fs-body-xl);
  font-weight: 700;
  color: var(--admin-text);
  margin-bottom: var(--admin-space-lg);
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
}
.admin-form__section-title::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--admin-border-light);
}
.admin-form__fieldset {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-lg);
  margin-bottom: var(--admin-space-lg);
}
.admin-form__block {
  margin-bottom: var(--admin-space-2xl);
}
.admin-form__block:last-child {
  margin-bottom: 0;
}
.admin-form__group {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-form__label {
  display: block;
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text);
  letter-spacing: 0.005em;
}
.admin-form__label--required::after {
  content: ' *';
  color: var(--admin-error);
  font-weight: 700;
}
.admin-form__input,
.admin-form__textarea {
  display: block;
  width: 100%;
  height: var(--admin-size-input-height);
  padding: 0.9rem 1.2rem;
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text);
  background: var(--admin-white);
  border: 1px solid var(--admin-border);
  border-radius: 0.6rem;
  font-family: inherit;
  transition:
    border-color var(--admin-duration-short) var(--admin-ease),
    box-shadow var(--admin-duration-short) var(--admin-ease);
}
.admin-form__input::placeholder,
.admin-form__textarea::placeholder {
  color: var(--admin-text-muted);
}
.admin-form__input:hover:not(:disabled):not(:focus),
.admin-form__textarea:hover:not(:disabled):not(:focus) {
  border-color: rgba(var(--admin-primary-rgb), 0.4);
}
.admin-form__input:focus,
.admin-form__textarea:focus {
  outline: none;
  border-color: var(--admin-border-focus);
  box-shadow: 0 0 0 0.2rem rgba(var(--admin-primary-rgb), 0.1);
}
.admin-form__input:-webkit-autofill,
.admin-form__input:-webkit-autofill:hover,
.admin-form__input:-webkit-autofill:focus,
.admin-form__textarea:-webkit-autofill,
.admin-form__textarea:-webkit-autofill:hover,
.admin-form__textarea:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 100px var(--admin-white) inset;
  -webkit-text-fill-color: var(--admin-text);
}
.admin-form__input:disabled,
.admin-form__textarea:disabled {
  background: var(--admin-grey-50);
  color: var(--admin-text-muted);
  cursor: not-allowed;
}
.admin-form__textarea {
  height: auto;
  min-height: var(--admin-size-editor-min-height);
  padding: var(--admin-space-sm) var(--admin-space);
  resize: vertical;
  line-height: 1.6;
}
.admin-form__hint {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  line-height: 1.5;
  margin-top: 0.2rem;
}
.admin-form__hint--below {
  margin-bottom: var(--admin-space-xs);
}
.admin-form__hint--readable {
  padding: var(--admin-space-sm) var(--admin-space);
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-xs);
}
.admin-form__hint--rules {
  padding: var(--admin-space-sm) var(--admin-space);
  background: var(--admin-warn-bg);
  color: var(--admin-warn-text);
  border: 1px solid rgba(var(--admin-warn-rgb), 0.25);
  border-radius: var(--admin-radius-xs);
}
.admin-form__hint--rules ul {
  padding-left: 1.4em;
  list-style: disc;
}
.admin-form__hint--rules li {
  margin-bottom: 0.2rem;
}
.admin-form__error {
  font-size: var(--admin-fs-sm);
  color: var(--admin-error-text);
  font-weight: 500;
  margin-top: 0.2rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.admin-form__field--narrow {
  max-width: 10rem;
}
.admin-form__field--narrow:has(.admin-number-stepper) {
  max-width: max-content;
}
.admin-form__avatar {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--admin-border-light);
  background: var(--admin-grey-100);
}
.admin-form__grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--admin-space-lg);
}
@media (max-width: 992px) {
  .admin-form__grid-2 {
    grid-template-columns: 1fr;
  }
}
.admin-form__color-picker-wrap {
  display: flex;
  align-items: center;
  gap: var(--admin-space);
}
.admin-form__loader {
  display: none;
  margin-left: var(--admin-space-2xs);
}
.admin-form__loader--hidden {
  display: none;
}
.admin-form__actions {
  display: flex;
  align-items: center;
  gap: var(--admin-space);
  padding-top: var(--admin-space-xl);
  border-top: 1px solid var(--admin-border-light);
  margin-top: var(--admin-space-xl);
  flex-wrap: wrap;
}
.admin-form__actions--right {
  justify-content: flex-end;
}
.admin-form__actions--between {
  justify-content: space-between;
}
.admin-notice-tabs {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--admin-border-light);
  margin-bottom: var(--admin-space);
}
.admin-notice-tabs__tab {
  padding: var(--admin-space-sm) var(--admin-space);
  border: none;
  background: none;
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
  cursor: pointer;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  margin-bottom: -1px;
}
.admin-notice-tabs__tab:hover {
  color: var(--admin-text);
}
.admin-notice-tabs__tab--active {
  color: var(--admin-primary);
  font-weight: 600;
  border-bottom-color: var(--admin-primary);
}
.admin-notice-panel--hidden {
  display: none;
}
.admin-notice-panel__body-en {
  margin-top: var(--admin-space);
}
.admin-notice-thumbnail-current {
  margin-bottom: var(--admin-space);
}
.admin-editor-quill .ql-editor {
  min-height: var(--admin-size-editor-min-height);
}
.admin-editor-quill .ql-container {
  font-size: var(--admin-fs-body-lg);
}
.admin-form__section-badge {
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  color: var(--admin-text-secondary);
  margin-left: var(--admin-space-2xs);
}
.admin-artist-tabs {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--admin-border-light);
  margin-bottom: var(--admin-space);
}
.admin-artist-tabs__tab {
  padding: var(--admin-space-sm) var(--admin-space);
  border: none;
  background: none;
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
  cursor: pointer;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  margin-bottom: -1px;
}
.admin-artist-tabs__tab:hover {
  color: var(--admin-text);
}
.admin-artist-tabs__tab--active {
  color: var(--admin-primary);
  font-weight: 600;
  border-bottom-color: var(--admin-primary);
}
.admin-artist-panel--hidden {
  display: none;
}
.admin-form__list-area {
  margin-top: var(--admin-space-2xl);
  padding-top: var(--admin-space-lg);
  border-top: 1px solid var(--admin-border-light);
  width: 100%;
}
.admin-form__list-title {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-menu);
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--admin-text);
}
.admin-form__list-area .admin-table-wrap {
  width: 100%;
}
.admin-artists-form .admin-form__section .admin-form__block {
  margin-bottom: var(--admin-space);
}
.admin-artists-form .admin-form__section .admin-form__row {
  gap: var(--admin-space-sm) var(--admin-space);
}
.admin-artists-form .admin-form__row--add-row {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: var(--admin-space-sm) var(--admin-space);
}
.admin-artists-form .admin-form__group--flex {
  flex: 1;
  min-width: 200px;
}
.admin-form__section--nested {
  margin-bottom: 0;
}
.admin-form__section--nested .admin-form__section-title {
  font-size: var(--admin-fs-body);
  margin-bottom: var(--admin-space-sm);
}
.admin-user-edit-tabs {
  display: flex;
  gap: 0;
  flex-wrap: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  border-bottom: 1px solid var(--admin-border-light);
  margin-bottom: var(--admin-space);
}
.admin-user-edit-tabs::-webkit-scrollbar {
  display: none;
}
.admin-user-edit-tabs__tab {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  white-space: nowrap;
  padding: var(--admin-space-sm) var(--admin-space-lg);
  font-size: var(--admin-fs-body-lg);
  font-weight: 500;
  color: var(--admin-text-secondary);
  text-decoration: none;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  margin-bottom: -1px;
  border-radius: var(--admin-radius-xs) var(--admin-radius-xs) 0 0;
  transition:
    color var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease);
}
.admin-user-edit-tabs__tab:hover {
  color: var(--admin-text);
  background: var(--admin-grey-50);
}
.admin-user-edit-tabs__tab--active {
  color: var(--admin-primary);
  font-weight: 600;
  border-bottom-color: var(--admin-primary);
  background: rgba(0, 0, 0, 0);
}
.admin-user-edit-panel--hidden {
  display: none;
}
.admin-form__actions--page {
  margin-top: var(--admin-space-2xl);
  border-top: none;
  padding-top: 0;
}
[data-controller='UserController'][data-action='edit'] .admin-form__section--tabs {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.user-sessions__table th,
.user-sessions__table td {
  vertical-align: middle;
}
.user-sessions__row--current {
  background: var(--admin-white);
}
.user-sessions__icon-cell {
  text-align: center;
  color: var(--admin-text-secondary);
}
.user-sessions__device-icon {
  font-size: 1.25rem;
}
.user-sessions__ip-code {
  font-family: var(--admin-font-mono, monospace);
  font-size: var(--admin-fs-sm);
  background: var(--admin-grey-100);
  padding: 2px 6px;
  border-radius: 4px;
  color: var(--admin-text);
}
.user-sessions__ua {
  line-height: 1.4;
}
.user-sessions__browser {
  color: var(--admin-text-secondary);
}
.user-sessions__time,
.user-sessions__created {
  white-space: nowrap;
  color: var(--admin-text-secondary);
}
.user-sessions__current-badge {
  display: inline-block;
  white-space: nowrap;
  font-weight: 600;
  color: var(--admin-primary);
  border: 1px solid currentColor;
  border-radius: 999px;
  padding: 2px 10px;
}
.admin-board-edit-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  border-bottom: 1px solid var(--admin-border-light);
  margin-top: var(--admin-space-lg);
  margin-bottom: var(--admin-space-lg);
}
.admin-board-edit-tabs__tab {
  padding: var(--admin-space-sm) var(--admin-space);
  border: none;
  background: none;
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
  cursor: pointer;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  margin-bottom: -1px;
}
.admin-board-edit-tabs__tab:hover {
  color: var(--admin-text);
}
.admin-board-edit-tabs__tab--active {
  color: var(--admin-primary);
  font-weight: 600;
  border-bottom-color: var(--admin-primary);
}
.admin-board-edit-panel--hidden {
  display: none;
}
.admin-form__block--row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space) var(--admin-space-lg);
}
.admin-input-wrap--select .admin-select--board {
  min-width: 12rem;
  width: auto;
}
.admin-input-wrap--sort-order .admin-input--narrow {
  width: 6rem;
}
.admin-input--narrow {
  width: 5rem;
}
.admin-input--hours {
  width: 5rem;
  min-width: 4rem;
}
.admin-input--role-code {
  width: 10rem;
  max-width: 100%;
}
.admin-board-approval-fields {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-board-approval-fields__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--admin-space-sm) var(--admin-space);
}
.admin-board-approval-fields__row .admin-form__inline-unit {
  margin-left: 0;
}
.admin-form__section-note {
  margin-bottom: var(--admin-space-sm);
}
.admin-form__inline-unit {
  color: var(--admin-text-secondary);
}
.admin-form__row--wrap {
  flex-wrap: wrap;
  gap: var(--admin-space) var(--admin-space-lg);
}
.admin-form__row--tag-list {
  gap: var(--admin-space-2xs) var(--admin-space);
}
.admin-board-tag-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 28rem;
}
.admin-board-tag-list__item {
  border-bottom: 1px solid var(--admin-border-light, #e2e8f0);
}
.admin-board-tag-list__item:last-child {
  border-bottom: none;
}
.admin-board-tag-list__label {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-sm) 0;
  cursor: pointer;
  min-height: 2.25rem;
}
.admin-board-tag-list__label:hover .admin-board-tag-list__box {
  border-color: var(--admin-primary, #0f172a);
  background: var(--admin-card-bg, #fff);
}
.admin-board-tag-list__input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.admin-board-tag-list__input:focus-visible + .admin-board-tag-list__box {
  outline: 2px solid var(--admin-primary, #0f172a);
  outline-offset: 2px;
}
.admin-board-tag-list__input:checked + .admin-board-tag-list__box {
  background: var(--admin-primary, #0f172a);
  border-color: var(--admin-primary, #0f172a);
}
.admin-board-tag-list__input:checked + .admin-board-tag-list__box::after {
  opacity: 1;
}
.admin-board-tag-list__box {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  border: 2px solid var(--admin-grey-400, #94a3b8);
  border-radius: 4px;
  background: var(--admin-card-bg, #fff);
  position: relative;
  transition:
    border-color 0.15s,
    background 0.15s;
}
.admin-board-tag-list__box::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0.375rem;
  height: 0.625rem;
  margin-left: -0.1875rem;
  margin-top: -0.3125rem;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity 0.15s;
}
.admin-board-tag-list__name {
  font-size: var(--admin-fs-body);
  color: var(--admin-text);
}
.admin-index-filter select[name='board_id'] {
  min-width: 20rem;
}
.admin-tags-add {
  margin-bottom: 1.5rem;
}
.admin-tags-add__form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0.75rem;
}
.admin-tags-add__group {
  margin-bottom: 0;
}
.admin-tags-add__hint {
  margin-top: 0.35rem;
}
.admin-tags-boards-cell .admin-btn {
  margin-left: 0.35rem;
}
.admin-form--inline {
  display: inline;
}
.admin-modal__body .admin-form__hint {
  margin-top: 0;
}
.admin-detail {
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius);
  padding: var(--admin-space-lg) var(--admin-space-xl);
  box-shadow: var(--admin-elevation-1);
  border: 1px solid var(--admin-border-light);
}
.admin-detail__list {
  margin: 0;
}
.admin-detail__row {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: var(--admin-space);
  padding: var(--admin-space-sm) 0;
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-detail__row:last-child {
  border-bottom: none;
}
.admin-detail__row--full {
  grid-template-columns: 1fr;
}
.admin-detail__term {
  margin: 0;
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-text-secondary);
}
.admin-detail__value {
  margin: 0;
  font-size: var(--admin-fs-body-lg);
  font-weight: 500;
  color: var(--admin-text);
}
.admin-detail__value a {
  color: var(--admin-primary);
  text-decoration: none;
  border-radius: var(--admin-radius-xs);
  padding: var(--admin-space-3xs) var(--admin-space-3xs);
  margin: calc(var(--admin-space-3xs) * -1);
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-detail__value a:hover {
  color: var(--admin-primary-hover);
  background: var(--admin-state-hover);
}
.admin-detail__value a:active {
  background: var(--admin-state-pressed);
}
.admin-detail__value a:focus-visible {
  outline: var(--admin-focus-ring);
  outline-offset: 2px;
}
.admin-detail__value--block {
  white-space: pre-wrap;
  word-break: break-word;
  line-height: 1.6;
}
.admin-site__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--admin-space);
  margin-top: var(--admin-space-lg);
}
.admin-site__card {
  display: flex;
  flex-direction: column;
  padding: var(--admin-space-lg) var(--admin-space-xl);
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
  text-decoration: none;
  color: inherit;
  border: 1px solid var(--admin-border-light);
  transition:
    box-shadow var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease),
    transform var(--admin-duration) var(--admin-ease);
}
.admin-site__card:hover {
  box-shadow: var(--admin-elevation-2);
  background: var(--admin-white);
  border-color: var(--admin-border);
  transform: translateY(-1px);
}
.admin-site__card:active {
  transform: translateY(0);
  box-shadow: var(--admin-elevation-1);
}
.admin-site__card:focus-visible {
  outline: var(--admin-focus-ring);
  outline-offset: var(--admin-focus-ring-offset);
}
.admin-site__card-icon {
  display: block;
  font-size: var(--admin-fs-menu);
  margin-bottom: var(--admin-space);
  opacity: 0.9;
  color: var(--admin-text);
}
.admin-site__card-icon i {
  font-size: inherit;
}
.admin-site__card-title {
  margin: 0;
  font-size: var(--admin-fs-menu);
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.3;
}
.admin-site__card-desc {
  margin: var(--admin-space-sm) 0 0;
  font-size: var(--admin-fs-body);
  font-weight: 500;
  color: var(--admin-text-secondary);
  line-height: 1.45;
  flex: 1;
}
.admin-site-meta-aux {
  margin-top: var(--admin-space-xl);
  padding-top: var(--admin-space-lg);
  border-top: 1px solid var(--admin-border-light);
}
.admin-site-meta__robots-pre {
  padding: 12px;
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  white-space: pre-wrap;
  font-size: var(--admin-fs-xs);
}
.admin-favicon {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-favicon__summary {
  display: grid;
  grid-template-columns: 1fr minmax(200px, 280px);
  gap: var(--admin-space);
  align-items: center;
  padding: var(--admin-space);
  background: linear-gradient(135deg, var(--admin-grey-50) 0%, var(--admin-grey-100) 100%);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
}
@media (max-width: 720px) {
  .admin-favicon__summary {
    grid-template-columns: 1fr;
  }
}
.admin-favicon__title {
  margin: 0 0 var(--admin-space-3xs) 0;
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-favicon__desc {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.5;
}
.admin-favicon__desc code {
  padding: 1px 5px;
  background: var(--admin-grey-200);
  border-radius: var(--admin-radius-xs);
  font-size: 0.9em;
}
.admin-favicon__summary-stats {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-3xs);
}
.admin-favicon__progress {
  position: relative;
  width: 100%;
  height: 6px;
  background: var(--admin-grey-200);
  border-radius: var(--admin-radius-full);
  overflow: hidden;
}
.admin-favicon__progress-bar {
  height: 100%;
  background: linear-gradient(90deg, var(--admin-success) 0%, var(--admin-primary) 100%);
  border-radius: inherit;
  transition: width var(--admin-duration) var(--admin-ease);
}
.admin-favicon__progress-text {
  margin: 0;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
}
.admin-favicon__progress-text strong {
  color: var(--admin-text);
  font-size: var(--admin-fs-sm);
  font-weight: 700;
}
.admin-favicon__updated {
  margin: 0;
  font-size: 11px;
  color: var(--admin-text-secondary);
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.admin-favicon__updated i {
  opacity: 0.7;
}
.admin-favicon__grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: var(--admin-space-sm);
}
.admin-favicon__card {
  position: relative;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-white);
  overflow: hidden;
  transition:
    border-color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
}
.admin-favicon__card:hover {
  border-color: var(--admin-grey-400);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.admin-favicon__card--missing {
  background: var(--admin-grey-50);
  border-style: dashed;
}
.admin-favicon__card--present {
  border-color: rgba(var(--admin-success-rgb), 0.35);
}
.admin-favicon__card-preview {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--admin-grey-100);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-favicon__preview-checker {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--admin-white);
  background-image:
    linear-gradient(45deg, var(--admin-grey-200) 25%, transparent 25%),
    linear-gradient(-45deg, var(--admin-grey-200) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, var(--admin-grey-200) 75%),
    linear-gradient(-45deg, transparent 75%, var(--admin-grey-200) 75%);
  background-size: 12px 12px;
  background-position:
    0 0,
    0 6px,
    6px -6px,
    -6px 0;
}
.admin-favicon__preview-img {
  max-width: 62%;
  max-height: 62%;
  object-fit: contain;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.08));
}
.admin-favicon__preview-icon {
  font-size: 28px;
  color: var(--admin-grey-400);
}
.admin-favicon__card--present .admin-favicon__preview-icon {
  color: var(--admin-text-secondary);
}
.admin-favicon__status {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 18px;
  height: 18px;
  border-radius: var(--admin-radius-full);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  color: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}
.admin-favicon__status--ok {
  background: var(--admin-success);
}
.admin-favicon__status--missing {
  background: var(--admin-grey-400);
}
.admin-favicon__card-body {
  padding: var(--admin-space-xs) var(--admin-space-sm);
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.admin-favicon__card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
}
.admin-favicon__card-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--admin-text);
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-favicon__card-size {
  flex-shrink: 0;
  padding: 1px 6px;
  border-radius: var(--admin-radius-full);
  background: var(--admin-grey-200);
  font-size: 10px;
  font-weight: 600;
  color: var(--admin-text-secondary);
  letter-spacing: 0.2px;
}
.admin-favicon__card-purpose {
  margin: 0;
  font-size: 11px;
  color: var(--admin-text-secondary);
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
}
.admin-favicon__card-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 2px;
  font-size: 11px;
  color: var(--admin-primary);
  text-decoration: none;
  font-weight: 500;
}
.admin-favicon__card-link:hover {
  text-decoration: underline;
}
.admin-favicon__form {
  margin: 0;
}
.admin-favicon__upload {
  padding: var(--admin-space);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
}
.admin-favicon__upload-head {
  margin-bottom: var(--admin-space-sm);
}
.admin-favicon__upload-title {
  margin: 0 0 var(--admin-space-3xs) 0;
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.admin-favicon__upload-title i {
  color: var(--admin-primary);
}
.admin-favicon__upload-desc {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.5;
}
.admin-project-docs__filemeta {
  margin: var(--admin-space-2xs) 0 var(--admin-space);
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-project-docs__filemeta code {
  padding: 1px 5px;
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
}
.admin-project-docs__form {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-project-docs__card {
  box-sizing: border-box;
  padding: var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
}
.admin-project-docs__card + .admin-project-docs__card {
  margin-top: 0;
}
.admin-project-docs__card--preview {
  background: var(--admin-grey-50);
}
.admin-project-docs__card-header {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: var(--admin-space);
  padding-bottom: var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-project-docs__card-title {
  margin: 0;
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  color: var(--admin-text);
  letter-spacing: -0.01em;
}
.admin-project-docs__card-desc {
  margin: 0;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-project-docs__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space) var(--admin-space-lg);
}
@media (max-width: 992px) {
  .admin-project-docs__grid {
    grid-template-columns: 1fr;
  }
}
.admin-project-docs__grid-row {
  min-width: 0;
}
.admin-project-docs__grid-row--full {
  grid-column: 1/-1;
}
.admin-project-docs__grid-row .admin-form__block {
  margin: 0;
}
.admin-project-docs__textarea {
  width: 100%;
  box-sizing: border-box;
  min-height: max(var(--admin-size-editor-min-height), 60vh);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: var(--admin-fs-sm);
  line-height: 1.7;
  tab-size: 2;
  white-space: pre;
  overflow: auto;
  resize: vertical;
  padding: var(--admin-space-sm) var(--admin-space);
}
.admin-project-docs__meta-box {
  margin: 0 0 var(--admin-space-lg);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  display: grid;
  grid-template-columns: minmax(110px, max-content) 1fr;
  gap: var(--admin-space-2xs) var(--admin-space);
  font-size: var(--admin-fs-sm);
}
.admin-project-docs__meta-row {
  display: contents;
}
.admin-project-docs__meta-row dt {
  font-weight: 600;
  color: var(--admin-text-muted);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.92em;
  padding-top: 1px;
}
.admin-project-docs__meta-row dd {
  margin: 0;
  color: var(--admin-text);
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  word-break: break-word;
}
.admin-project-docs__chip {
  display: inline-flex;
  align-items: center;
  padding: 1px 9px;
  background: rgba(var(--admin-primary-rgb), 0.06);
  color: var(--admin-primary);
  border: 1px solid rgba(var(--admin-primary-rgb), 0.18);
  border-radius: var(--admin-radius-full);
  font-size: 0.88em;
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  line-height: 1.7;
}
.admin-project-docs__chip--empty {
  background: rgba(0, 0, 0, 0);
  border-color: rgba(0, 0, 0, 0);
  color: var(--admin-text-muted);
  font-style: italic;
  padding: 0;
}
.admin-project-docs__preview {
  box-sizing: border-box;
  min-height: 40vh;
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text);
  font-size: var(--admin-fs-body);
  line-height: 1.75;
  word-break: break-word;
  overflow: auto;
}
.admin-project-docs__preview > :first-child {
  margin-top: 0;
}
.admin-project-docs__preview h1,
.admin-project-docs__preview h2,
.admin-project-docs__preview h3,
.admin-project-docs__preview h4,
.admin-project-docs__preview h5,
.admin-project-docs__preview h6 {
  margin: 1.3em 0 0.5em;
  line-height: 1.3;
}
.admin-project-docs__preview h1 {
  font-size: 1.5em;
  padding-bottom: 0.2em;
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-project-docs__preview h2 {
  font-size: 1.28em;
  padding-bottom: 0.15em;
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-project-docs__preview h3 {
  font-size: 1.12em;
}
.admin-project-docs__preview p {
  margin: 0.6em 0;
}
.admin-project-docs__preview a {
  color: var(--admin-primary);
}
.admin-project-docs__preview code {
  padding: 1px 5px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-sm);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Consolas, monospace);
  font-size: 0.88em;
}
.admin-project-docs__preview pre {
  margin: 0.8em 0;
  padding: var(--admin-space-sm) var(--admin-space);
  background: var(--admin-grey-900);
  color: var(--admin-grey-100);
  border-radius: var(--admin-radius-sm);
  overflow: auto;
}
.admin-project-docs__preview pre code {
  padding: 0;
  background: none;
  color: inherit;
  font-size: 0.85em;
}
.admin-project-docs__preview blockquote {
  margin: 0.6em 0;
  padding: 0.2em 0.9em;
  border-left: 3px solid var(--admin-border);
  color: var(--admin-text-secondary);
}
.admin-project-docs__preview ul,
.admin-project-docs__preview ol {
  margin: 0.5em 0;
  padding-left: 1.4em;
}
.admin-project-docs__preview li {
  margin: 0.2em 0;
}
.admin-project-docs__preview hr {
  margin: 1.3em 0;
  border: 0;
  border-top: 1px solid var(--admin-border-light);
}
.admin-project-docs__preview table {
  margin: 0.6em 0;
  border-collapse: collapse;
  width: 100%;
}
.admin-project-docs__preview th,
.admin-project-docs__preview td {
  padding: 0.4em 0.7em;
  border: 1px solid var(--admin-border-light);
}
.admin-project-docs__preview th {
  background: var(--admin-grey-50);
  font-weight: 600;
}
.admin-library__layout {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: var(--admin-space-xl, 32px);
  align-items: start;
  margin-top: var(--admin-space-lg);
}
@media (max-width: 992px) {
  .admin-library__layout {
    grid-template-columns: 1fr;
    gap: var(--admin-space);
  }
}
.admin-library__sidebar {
  position: sticky;
  top: var(--admin-space);
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-lg);
}
@media (max-width: 992px) {
  .admin-library__sidebar {
    position: static;
  }
}
.admin-library__sidebar-section {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
}
.admin-library__sidebar-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--admin-space-2xs);
}
.admin-library__sidebar-title {
  margin: 0;
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--admin-text-muted);
}
.admin-library__sidebar-clear {
  appearance: none;
  background: none;
  border: 0;
  padding: 2px 6px;
  border-radius: var(--admin-radius-sm);
  font-size: var(--admin-fs-xs);
  color: var(--admin-primary);
  cursor: pointer;
  transition: background var(--admin-duration) var(--admin-ease);
}
.admin-library__sidebar-clear:hover {
  background: rgba(59, 130, 246, 0.08);
}
.admin-library__sidebar-clear.is-hidden {
  display: none;
}
.admin-library__sidebar-hint {
  margin: var(--admin-space-xs) 0 0;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  line-height: 1.5;
}
.admin-library__cats {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.admin-library__cat {
  appearance: none;
  background: none;
  border: 0;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text);
  text-align: left;
  font-size: var(--admin-fs-sm);
  line-height: 1.3;
  cursor: pointer;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-library__cat:hover:not(:disabled) {
  background: var(--admin-grey-50);
}
.admin-library__cat--active,
.admin-library__cat--active:hover:not(:disabled),
.admin-library__cat--active:focus-visible {
  background: var(--admin-grey-900);
  color: var(--admin-white);
}
.admin-library__cat--empty {
  opacity: 0.45;
  cursor: not-allowed;
}
.admin-library__cat:disabled {
  cursor: not-allowed;
}
.admin-library__cat-check {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1.5px solid var(--admin-border);
  border-radius: 5px;
  background: var(--admin-card-bg);
  font-size: 10px;
  color: rgba(0, 0, 0, 0);
  transition:
    background var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-library__cat--active .admin-library__cat-check {
  background: var(--admin-white);
  border-color: var(--admin-white);
  color: var(--admin-grey-900);
}
.admin-library__cat-label {
  flex: 1;
  min-width: 0;
  font-weight: 500;
}
.admin-library__cat-count {
  font-variant-numeric: tabular-nums;
  font-size: var(--admin-fs-xs);
  opacity: 0.6;
}
.admin-library__main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-library__searchbar {
  display: flex;
  gap: var(--admin-space);
  align-items: center;
  flex-wrap: wrap;
}
.admin-library__search {
  position: relative;
  flex: 1;
  min-width: 280px;
}
.admin-library__search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-sm);
  pointer-events: none;
}
.admin-library__search-input {
  width: 100%;
  box-sizing: border-box;
  padding: 12px 40px;
  border: 1px solid var(--admin-border-light);
  border-radius: 10px;
  background: var(--admin-card-bg);
  color: var(--admin-text);
  font-size: var(--admin-fs-body);
  line-height: 1.4;
  transition:
    border-color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
}
.admin-library__search-input::placeholder {
  color: var(--admin-text-muted);
}
.admin-library__search-input:focus {
  outline: none;
  border-color: var(--admin-grey-900);
  box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}
.admin-library__search-clear {
  appearance: none;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--admin-text-muted);
  background: none;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-library__search-clear:hover {
  background: var(--admin-grey-100);
  color: var(--admin-text);
}
.admin-library__search-clear.is-hidden {
  display: none;
}
.admin-library__searchbar-meta {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  font-variant-numeric: tabular-nums;
}
.admin-library__searchbar-meta strong {
  color: var(--admin-text);
  font-weight: 700;
}
.admin-library__activefilters {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.admin-library__activefilters.is-hidden {
  display: none;
}
.admin-library__chip {
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 999px;
  background: var(--admin-grey-900);
  color: var(--admin-white);
  border: 0;
  font-size: var(--admin-fs-xs);
  cursor: pointer;
  transition:
    opacity var(--admin-duration) var(--admin-ease),
    transform var(--admin-duration) var(--admin-ease);
}
.admin-library__chip:hover {
  opacity: 0.85;
  transform: translateY(-1px);
}
.admin-library__chip strong {
  font-weight: 600;
}
.admin-library__chip i {
  font-size: 10px;
  opacity: 0.7;
}
.admin-library__empty {
  padding: calc(var(--admin-space-lg) * 2.5) var(--admin-space);
  text-align: center;
  color: var(--admin-text-secondary);
  background: var(--admin-card-bg);
  border: 1px dashed var(--admin-border-light);
  border-radius: var(--admin-radius);
}
.admin-library__empty.is-hidden {
  display: none;
}
.admin-library__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space);
}
@media (max-width: 720px) {
  .admin-library__grid {
    grid-template-columns: 1fr;
  }
}
.admin-library__card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--admin-card-bg);
  border-radius: 14px;
  border: 1px solid var(--admin-border-light);
  overflow: hidden;
  transition:
    box-shadow var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease),
    transform var(--admin-duration) var(--admin-ease);
}
.admin-library__card:hover {
  box-shadow: 0 6px 24px rgba(15, 23, 42, 0.08);
  border-color: var(--admin-grey-300, #d1d5db);
  transform: translateY(-2px);
}
.admin-library__card:hover .admin-library__card-cta {
  color: var(--admin-text);
  opacity: 1;
  transform: translateX(2px);
}
.admin-library__card[hidden] {
  display: none;
}
.admin-library__card-link {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 22px 24px 18px;
  text-decoration: none;
  color: inherit;
  flex: 1;
  min-height: 200px;
}
.admin-library__card-head {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.admin-library__card-cats {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.admin-library__card-cats li {
  padding: 3px 10px;
  border-radius: 999px;
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: 11px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.01em;
}
.admin-library__card-title {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.35;
  color: var(--admin-text);
  letter-spacing: -0.01em;
}
.admin-library__card-desc {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.55;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.admin-library__card-foot {
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid var(--admin-grey-100);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--admin-space-xs);
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-library__card-rel {
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 11px;
  color: var(--admin-text-muted);
  word-break: break-all;
  min-width: 0;
  flex: 1;
}
.admin-library__card-cta {
  flex-shrink: 0;
  color: var(--admin-text-muted);
  font-weight: 500;
  opacity: 0.7;
  transition:
    color var(--admin-duration) var(--admin-ease),
    opacity var(--admin-duration) var(--admin-ease),
    transform var(--admin-duration) var(--admin-ease);
}
.admin-library__card-cta i {
  margin-left: 4px;
  font-size: 10px;
}
.admin-library__copy {
  appearance: none;
  position: absolute;
  top: 14px;
  right: 14px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid var(--admin-border-light);
  background: var(--admin-white);
  color: var(--admin-text);
  font-size: var(--admin-fs-xs);
  font-weight: 500;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  opacity: 0;
  transform: translateY(-2px);
  transition:
    opacity var(--admin-duration) var(--admin-ease),
    transform var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-library__copy:hover {
  background: var(--admin-grey-900);
  color: var(--admin-white);
  border-color: var(--admin-grey-900);
}
.admin-library__card:hover .admin-library__copy,
.admin-library__card:focus-within .admin-library__copy {
  opacity: 1;
  transform: translateY(0);
}
.admin-library--show .admin-library__detail-crumb {
  margin: 0 0 var(--admin-space-2xs);
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-library--show .admin-library__detail-crumb .admin-breadcrumb__link {
  color: inherit;
  text-decoration: none;
}
.admin-library--show .admin-library__detail-crumb .admin-breadcrumb__link:hover {
  color: var(--admin-text);
}
.admin-library--show .admin-library__detail-layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: var(--admin-space-lg);
  align-items: start;
  margin-top: var(--admin-space);
}
@media (max-width: 992px) {
  .admin-library--show .admin-library__detail-layout {
    grid-template-columns: 1fr;
  }
}
.admin-library--show .admin-library__detail-body {
  box-sizing: border-box;
  padding: var(--admin-space-lg) var(--admin-space-xl, 32px);
  border: 1px solid var(--admin-border-light);
  border-radius: 12px;
  background: var(--admin-card-bg);
  color: var(--admin-text);
  font-size: var(--admin-fs-body);
  line-height: 1.7;
  word-break: break-word;
  min-height: 60vh;
}
.admin-library--show .admin-library__detail-body > :first-child {
  margin-top: 0;
}
.admin-library--show .admin-library__detail-body h1,
.admin-library--show .admin-library__detail-body h2,
.admin-library--show .admin-library__detail-body h3,
.admin-library--show .admin-library__detail-body h4,
.admin-library--show .admin-library__detail-body h5,
.admin-library--show .admin-library__detail-body h6 {
  margin: 1.3em 0 0.5em;
  line-height: 1.3;
}
.admin-library--show .admin-library__detail-body h1 {
  font-size: 1.5em;
  padding-bottom: 0.2em;
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-library--show .admin-library__detail-body h2 {
  font-size: 1.28em;
  padding-bottom: 0.15em;
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-library--show .admin-library__detail-body h3 {
  font-size: 1.12em;
}
.admin-library--show .admin-library__detail-body p {
  margin: 0.6em 0;
}
.admin-library--show .admin-library__detail-body a {
  color: var(--admin-primary);
}
.admin-library--show .admin-library__detail-body code {
  padding: 1px 5px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-sm);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Consolas, monospace);
  font-size: 0.88em;
}
.admin-library--show .admin-library__detail-body pre {
  margin: 0.8em 0;
  padding: var(--admin-space-sm) var(--admin-space);
  background: var(--admin-grey-900);
  color: var(--admin-grey-100);
  border-radius: var(--admin-radius-sm);
  overflow: auto;
}
.admin-library--show .admin-library__detail-body pre code {
  padding: 0;
  background: none;
  color: inherit;
  font-size: 0.85em;
}
.admin-library--show .admin-library__detail-body blockquote {
  margin: 0.6em 0;
  padding: 0.2em 0.9em;
  border-left: 3px solid var(--admin-border);
  color: var(--admin-text-secondary);
}
.admin-library--show .admin-library__detail-body ul,
.admin-library--show .admin-library__detail-body ol {
  margin: 0.5em 0;
  padding-left: 1.4em;
}
.admin-library--show .admin-library__detail-body li {
  margin: 0.2em 0;
}
.admin-library--show .admin-library__detail-body hr {
  margin: 1.3em 0;
  border: 0;
  border-top: 1px solid var(--admin-border-light);
}
.admin-library--show .admin-library__detail-body table {
  margin: 0.6em 0;
  border-collapse: collapse;
}
.admin-library--show .admin-library__detail-body th,
.admin-library--show .admin-library__detail-body td {
  padding: 0.3em 0.6em;
  border: 1px solid var(--admin-border-light);
}
.admin-library--show .admin-library__detail-meta {
  position: sticky;
  top: var(--admin-space);
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
  padding: var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: 12px;
  font-size: var(--admin-fs-sm);
}
@media (max-width: 992px) {
  .admin-library--show .admin-library__detail-meta {
    position: static;
  }
}
.admin-library--show .admin-library__meta-list {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.admin-library--show .admin-library__meta-list > div {
  display: flex;
  justify-content: space-between;
  gap: var(--admin-space);
}
.admin-library--show .admin-library__meta-list dt {
  color: var(--admin-text-muted);
  margin: 0;
  font-size: var(--admin-fs-xs);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.admin-library--show .admin-library__meta-list dd {
  margin: 0;
  color: var(--admin-text);
  text-align: right;
}
.admin-library--show .admin-library__meta-list dd a {
  color: var(--admin-primary);
  text-decoration: none;
}
.admin-library--show .admin-library__meta-list dd span {
  margin: 0 4px;
  color: var(--admin-text-muted);
}
.admin-library--show .admin-library__meta-list dd code {
  font-family: var(--admin-mono, ui-monospace, Menlo, Consolas, monospace);
  font-size: 0.85em;
  color: var(--admin-text-secondary);
}
.admin-library--show .admin-library__meta-block h3 {
  margin: 0 0 var(--admin-space-2xs);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--admin-text-muted);
}
.admin-library--show .admin-library__meta-related {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.admin-library--show .admin-library__meta-related a {
  color: var(--admin-primary);
  text-decoration: none;
  font-size: var(--admin-fs-sm);
}
.admin-library--show .admin-library__meta-related a:hover {
  text-decoration: underline;
}
.admin-library--show .admin-library__raw {
  width: 100%;
  box-sizing: border-box;
  min-height: 140px;
  max-height: 280px;
  padding: 10px 12px;
  border: 1px solid var(--admin-border-light);
  border-radius: 8px;
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 11px;
  line-height: 1.6;
  resize: vertical;
  background: var(--admin-grey-50);
  color: var(--admin-text);
}
.admin-work-sections__grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--admin-space);
}
.admin-work-sections__thumb {
  overflow: hidden;
  margin: calc(-1 * var(--admin-space)) calc(-1 * var(--admin-space)) var(--admin-space-2xs);
  aspect-ratio: 16/10;
  background: var(--admin-grey-100);
  display: flex;
  align-items: center;
  justify-content: center;
}
.admin-work-sections__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.admin-work-sections__thumb-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 72px;
  color: var(--admin-grey-400);
  font-size: 1.75rem;
}
.admin-work-sections__card {
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  overflow: hidden;
  padding: var(--admin-space);
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-2xs);
}
.admin-work-sections__card--off {
  opacity: 0.7;
  background: var(--admin-grey-50);
}
.admin-work-sections__card--orphan {
  border-color: var(--admin-danger, #b91c1c);
  background: rgba(185, 28, 28, 0.04);
}
.admin-work-sections__card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-2xs);
}
.admin-work-sections__slug code {
  background: var(--admin-grey-100);
  padding: 2px 6px;
  border-radius: var(--admin-radius-xs);
  font-size: 12px;
}
.admin-work-sections__badge {
  padding: 2px 8px;
  border-radius: var(--admin-radius-full);
  font-size: 11px;
  font-weight: 600;
}
.admin-work-sections__badge--ok {
  background: var(--admin-success);
  color: var(--admin-on-success, #fff);
}
.admin-work-sections__badge--off {
  background: var(--admin-grey-400);
  color: var(--admin-text-inverse, #fff);
}
.admin-work-sections__badge--info {
  background: var(--admin-grey-200);
  color: var(--admin-text);
}
.admin-work-sections__badge--warn {
  background: var(--admin-danger, #b91c1c);
  color: var(--admin-on-error, #fff);
}
.admin-work-sections__title {
  margin: 0;
  font-size: var(--admin-fs-body);
  font-weight: 700;
}
.admin-work-sections__desc {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
}
.admin-work-sections__fields summary {
  cursor: pointer;
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-sm);
}
.admin-work-sections__fields ul {
  list-style: none;
  padding-left: 0;
  margin: var(--admin-space-2xs) 0 0 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.admin-work-sections__fields ul li {
  font-size: 12px;
}
.admin-work-sections__fields ul code {
  margin-right: 6px;
}
.admin-work-sections__ft {
  display: inline-block;
  padding: 1px 6px;
  border-radius: var(--admin-radius-xs);
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: 10px;
  margin-right: 4px;
}
.admin-work-sections__req {
  color: var(--admin-danger, #b91c1c);
}
.admin-work-sections__actions {
  display: flex;
  gap: var(--admin-space-2xs);
  margin-top: auto;
}
.admin-work-blocks {
  margin-top: var(--admin-space-lg);
}
.admin-work-blocks__head {
  margin-bottom: var(--admin-space);
}
.admin-work-blocks__palette {
  border: 1px dashed var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: var(--admin-space);
  margin-bottom: var(--admin-space);
}
.admin-work-blocks__palette-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.admin-work-blocks__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-work-blocks__palette-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  text-align: left;
}
.admin-work-blocks__palette-btn i:first-child {
  opacity: 0.85;
  font-size: 14px;
}
.admin-work-blocks__palette-slug {
  opacity: 0.65;
  font-weight: 400;
  margin-left: 2px;
}
.admin-work-blocks__item {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  padding: var(--admin-space);
}
.admin-work-blocks__item-head {
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space-2xs);
  margin-bottom: var(--admin-space-sm);
  flex-wrap: wrap;
}
.admin-work-blocks__drag {
  flex-shrink: 0;
  margin-top: 2px;
  border: none;
  background: rgba(0, 0, 0, 0);
  padding: 0;
}
.admin-work-blocks__icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: var(--admin-radius-xs);
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: 14px;
}
.admin-work-blocks__meta {
  flex: 1;
  min-width: 140px;
}
.admin-work-blocks__label {
  display: block;
  font-size: var(--admin-fs-body);
}
.admin-work-blocks__desc {
  margin: 4px 0 0 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.4;
}
.admin-work-blocks__slug {
  padding: 2px 6px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  font-size: 11px;
  align-self: center;
}
.admin-work-blocks__item-body {
  padding-top: var(--admin-space-2xs);
  border-top: 1px solid var(--admin-border-light);
}
.admin-work-blocks__advanced-sum {
  cursor: pointer;
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text-secondary);
}
.admin-work-blocks__advanced-body {
  margin-top: var(--admin-space-sm);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: var(--admin-space);
}
.admin-work-templates-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space-lg);
  align-items: start;
  margin-top: var(--admin-space-lg);
}
@media (max-width: 1100px) {
  .admin-work-templates-layout {
    grid-template-columns: 1fr;
  }
}
.admin-work-templates--canvas .admin-page__header,
.admin-work-templates--canvas .admin-page__toolbar {
  display: none;
}
.admin__content:has(> .admin-work-templates--canvas.is-canvas-only),
.admin__content:has(> .admin-work.admin-work--canvas) {
  max-width: 1280px;
}
.admin-work-templates--canvas .admin-work-templates__preview--canvas {
  border: 0;
  background: rgba(0, 0, 0, 0);
  padding: 0;
  max-height: none;
  overflow: visible;
}
.admin-work-template-canvas {
  height: calc(100vh - var(--admin-space) * 2);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: var(--admin-space);
}
.admin-work-template-canvas__toolbar {
  display: grid;
  grid-template-rows: auto auto auto;
  gap: var(--admin-space-sm);
  align-items: stretch;
  padding: var(--admin-space-sm);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  position: sticky;
  top: var(--admin-space);
  z-index: 2;
}
.admin-work-template-canvas__toolbar-title {
  min-width: 0;
}
.admin-work-template-canvas__toolbar-blocks {
  min-width: 0;
}
.admin-work-template-canvas__toolbar-blocks--work {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.admin-work-template-canvas__add-label {
  margin: 0;
  font-size: 12px;
}
.admin-work-template-canvas__add-select {
  max-width: 280px;
  min-width: 160px;
}
.admin-work-template-canvas__toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.admin-work--canvas [data-work-canvas-force-save].is-loading {
  opacity: 0.85;
  cursor: progress;
}
.admin-work-template-canvas__title {
  font-size: var(--admin-fs-body);
  font-weight: 800;
  margin: 0;
  display: block;
}
.admin-work-template-canvas__desc {
  margin: 6px 0 0;
  font-size: 12px;
  color: var(--admin-text-muted);
  line-height: 1.4;
}
.admin-work-blocks-palette__swiper-host {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.admin-work-blocks-palette-swiper {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}
.admin-work-blocks-palette__slide {
  width: auto;
  height: auto;
  padding: 2px 4px;
  box-sizing: border-box;
}
.admin-work-blocks-palette__slide .admin-work-blocks__palette-btn {
  white-space: nowrap;
}
.admin-work-blocks-palette__nav {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border-radius: var(--admin-radius-xs);
  border: 1px solid var(--admin-border-light);
  background: var(--admin-white);
  color: var(--admin-text-secondary);
  cursor: pointer;
  transition:
    background var(--tran-15, 0.15s),
    border-color var(--tran-15, 0.15s),
    color var(--tran-15, 0.15s);
}
.admin-work-blocks-palette__nav:hover:not(.swiper-button-disabled) {
  border-color: rgba(99, 102, 241, 0.45);
  color: #4338ca;
  background: rgba(99, 102, 241, 0.06);
}
.admin-work-blocks-palette__nav.swiper-button-disabled {
  opacity: 0.35;
  cursor: default;
}
.admin-work-blocks-palette__nav i {
  font-size: 12px;
}
.admin-work-template-canvas__body {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(320px, 420px) minmax(0, 1fr);
  gap: var(--admin-space);
  align-items: stretch;
}
.admin-work-templates--canvas.is-canvas-only .admin-work-template-canvas__body {
  grid-template-columns: 1fr;
}
.admin-work-templates--canvas.is-canvas-only .admin-work-template-canvas__structure {
  display: none;
}
.admin-work-template-canvas__structure {
  min-width: 0;
  min-height: 0;
  overflow: auto;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  padding: var(--admin-space);
}
.admin-work-template-canvas__preview {
  min-width: 0;
  min-height: 0;
}
.admin-work-templates--canvas .admin-work-templates__preview {
  height: 100%;
  max-height: none;
  position: static;
  padding: 0;
}
.admin-work-templates-layout__main {
  min-width: 0;
}
.admin-work-templates__preview {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-grey-50, #fafafa);
  padding: var(--admin-space);
}
@media (min-width: 1101px) {
  .admin-work-templates__preview {
    position: sticky;
    top: var(--admin-space);
    max-height: calc(100vh - var(--admin-space) * 3);
    overflow: auto;
  }
}
.admin-work-templates__preview-box {
  display: flex;
  flex-direction: column;
  min-height: 520px;
}
.admin-work-templates__canvas-form {
  flex: 1;
  min-height: 420px;
}
.admin-work-templates__preview-cms-body {
  min-height: 420px;
}
.admin-work-templates__preview-head {
  margin-bottom: var(--admin-space-sm);
}
.admin-work-templates__preview-title {
  margin: 0 0 var(--admin-space-3xs);
  font-size: var(--admin-fs-body);
  font-weight: 700;
}
.admin-work-templates__preview-hint {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  line-height: 1.45;
}
.admin-work-templates__preview-actions {
  margin: var(--admin-space-sm) 0 0;
}
.admin-work-templates__canvas-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50, #fafafa);
}
.admin-work-templates__canvas-form {
  display: block;
}
.admin-work-templates__preview-tabs {
  margin-top: var(--admin-space-sm);
  display: inline-flex;
  gap: 6px;
  flex-wrap: wrap;
}
.admin-work-templates__preview-tab {
  appearance: none;
  border: 1px solid var(--admin-border-light);
  background: var(--admin-white);
  color: var(--admin-text-secondary);
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.admin-work-templates__preview-tab.is-active {
  background: var(--admin-grey-100);
  color: var(--admin-text);
}
.admin-work-templates__preview-tab:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.admin-work-templates__preview-box {
  position: relative;
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  min-height: 120px;
}
.admin-work-templates__preview-loading {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--admin-space-2xs);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  background: hsla(0, 0%, 100%, 0.85);
  z-index: 1;
}
.admin-work-templates__preview-body {
  padding: var(--admin-space-sm);
}
.admin-work-templates__preview-cms-body {
  padding: var(--admin-space-sm);
}
.admin-cms-block {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  overflow: hidden;
  margin-bottom: var(--admin-space);
}
.admin-work--canvas .admin-work-templates-cms-preview .admin-cms-block {
  content-visibility: auto;
  contain: layout paint style;
  contain-intrinsic-size: 900px;
}
.admin-cms-block__head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50, #fafafa);
}
.admin-cms-block__drag {
  border: none;
  background: rgba(0, 0, 0, 0);
  padding: 0;
  cursor: grab;
  color: var(--admin-text-secondary);
}
.admin-cms-block__move {
  display: inline-flex;
  gap: 4px;
}
.admin-cms-block__move-btn {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  border: 1px solid var(--admin-border-light);
  background: var(--admin-white);
  color: var(--admin-text-secondary);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.admin-cms-block__move-btn:disabled,
.admin-cms-block__move-btn[aria-disabled='true'] {
  opacity: 0.4;
  cursor: not-allowed;
}
.admin-cms-block__move-btn:hover:not(:disabled) {
  background: var(--admin-grey-100);
}
.admin-cms-block__label {
  font-size: 13px;
  font-weight: 800;
}
.admin-cms-block__slug {
  margin-left: auto;
  padding: 2px 6px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  font-size: 11px;
}
.admin-cms-block__badge {
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(99, 102, 241, 0.12);
  color: #4338ca;
  font-size: 11px;
  font-weight: 700;
}
.admin-cms-block__body {
  padding: 12px;
}
.admin-cms-block__fit-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 14px;
  padding: 6px 10px;
  margin-bottom: 10px;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-grey-50, #fafafa);
  font-size: 12px;
}
.admin-cms-block__fit-label {
  font-weight: 700;
  color: var(--admin-text-secondary);
}
.admin-cms-block__fit-bar .admin-radio-wrap {
  font-size: 12px;
}
.admin-cms-block-color {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: var(--admin-space);
  padding: 10px 12px;
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50, #fafafa);
  color: var(--admin-text);
}
.admin-cms-block-color__label {
  font-size: 12px;
  font-weight: 700;
  color: var(--admin-text-secondary);
  padding-top: 6px;
}
.admin-cms-block-color__value {
  margin-left: auto;
  align-self: flex-start;
  padding: 2px 6px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  font-size: 11px;
}
.admin-cms-block-color-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  padding: 10px 12px;
  background: var(--admin-grey-50, #fafafa);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-cms-block-color-grid__card {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-white, #fff);
  overflow: hidden;
}
.admin-cms-block-color-grid .admin-cms-block-color {
  flex: 1;
  background: rgba(0, 0, 0, 0);
}
.admin-cms-block-color-grid__card .admin-cms-block-color:last-child {
  border-bottom: 0;
}
@media (max-width: 640px) {
  .admin-cms-block-color-grid {
    grid-template-columns: 1fr;
  }
}
.admin-work-templates-cms-preview [data-field-key] {
  outline: 1px dashed rgba(99, 102, 241, 0.35);
  outline-offset: 2px;
  border-radius: 4px;
  cursor: text;
}
.admin-work-templates-cms-preview [data-field-type='text'],
.admin-work-templates-cms-preview [data-field-type='richtext'],
.admin-work-templates-cms-preview [data-field-type='json'] {
  background: rgba(99, 102, 241, 0.06);
  padding: 2px 4px;
  border-radius: 4px;
  caret-color: #0f172a;
}
.admin-work-templates-cms-preview .is-cms-editing {
  outline: 2px solid rgba(99, 102, 241, 0.65);
  background: rgba(99, 102, 241, 0.1);
}
.admin-work-templates-cms-preview [data-field-type='text']:empty::before,
.admin-work-templates-cms-preview [data-field-type='richtext']:empty::before {
  content: '텍스트 입력';
  opacity: 0.45;
}
.admin-work-templates-cms-preview [data-field-key][data-cms-placeholder]:empty::before {
  content: attr(data-cms-placeholder);
}
.admin-work-templates-cms-preview
  [data-field-key][data-cms-placeholder][data-cms-empty='1']:not(:focus-within)::before {
  content: attr(data-cms-placeholder);
  opacity: 0.45;
  pointer-events: none;
}
.admin-work-templates-cms-preview [data-field-type='text']:focus-within,
.admin-work-templates-cms-preview [data-field-type='richtext']:focus-within,
.admin-work-templates-cms-preview [data-field-type='json']:focus-within {
  outline: 2px solid rgba(79, 70, 229, 0.65);
  outline-offset: 3px;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2);
}
.admin-work-templates-cms-preview [data-field-type='json']:empty::before {
  content: 'JSON 입력';
  opacity: 0.45;
}
.admin-work-templates-cms-preview [data-field-type='image'],
.admin-work-templates-cms-preview [data-field-type='video'],
.admin-work-templates-cms-preview [data-field-type='image_list'],
.admin-work-templates-cms-preview [data-field-type='json'] {
  cursor: default;
}
.admin-cms-media-placeholder {
  min-height: 220px;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.06), rgba(15, 23, 42, 0.04));
  border: 1px dashed rgba(99, 102, 241, 0.4);
  position: relative;
}
.admin-cms-media-slot {
  overflow: hidden;
  height: 100%;
}
.admin-cms-media-slot > img,
.admin-cms-media-slot > video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.admin-work-templates-cms-preview .no-block-media-slot,
.admin-work-templates-cms-preview .no-work-section__media,
.admin-work-templates-cms-preview figure.no-work-section__media {
  position: relative;
}
.admin-work-templates-cms-preview .no-block-media-slot > .admin-cms-media-slot,
.admin-work-templates-cms-preview .no-work-section__media > .admin-cms-media-slot,
.admin-work-templates-cms-preview figure.no-work-section__media > .admin-cms-media-slot {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.admin-work-templates-cms-preview .no-work-section--gallery-swiper .no-work-section__swiper {
  overflow: visible;
  scroll-snap-type: none;
  padding-inline: 0;
}
.admin-work-templates-cms-preview .no-work-section--gallery-swiper .no-work-section__track {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: var(--spacing-md, 16px);
}
.admin-work-templates-cms-preview .no-work-section--gallery-swiper .no-work-section__slide {
  width: auto;
  scroll-snap-align: unset;
}
.admin-work-templates-cms-preview .no-work-section--gallery-swiper .no-work-section__slide img {
  width: 100%;
  height: auto;
  display: block;
}
.admin-cms-media-placeholder::before {
  content: '클릭/드롭으로 업로드';
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--admin-text-muted);
  font-size: 12px;
}
.admin-cms-media-placeholder:has(.admin-file-uploader__dropzone)::before {
  display: none;
}
.admin-cms-media-placeholder.admin-file-uploader-box--cms-slot {
  display: flex;
  flex-direction: column;
}
.admin-cms-media-placeholder--hero {
  min-height: 340px;
}
.admin-work-templates-cms-preview .is-drop-over {
  outline: 2px solid rgba(99, 102, 241, 0.55);
  outline-offset: 2px;
}
.admin-cms-media__delete {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  background: hsla(0, 0%, 100%, 0.92);
  color: var(--admin-error);
  font-size: 18px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.admin-cms-media__delete:hover {
  background: var(--admin-white);
  border-color: rgba(185, 28, 28, 0.25);
}
.admin-work-templates__preview-error {
  margin: 0;
  padding: var(--admin-space-sm);
  font-size: var(--admin-fs-sm);
  color: var(--admin-error-text, #b91c1c);
  background: var(--admin-error-bg, rgba(185, 28, 28, 0.06));
}
.admin-work-templates-preview-empty__text {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  text-align: center;
  padding: var(--admin-space);
}
.admin-work--canvas .admin-work-template-canvas {
  height: auto;
  max-height: none;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.admin-work--canvas .admin-work-template-canvas__toolbar {
  flex-shrink: 0;
}
.admin-work--canvas .admin-work-template-canvas__body {
  flex: 1;
  min-height: 0;
  overflow: visible;
  display: flex;
  flex-direction: column;
}
.admin-work--canvas .admin-work-template-canvas__preview {
  flex: 1;
  min-height: 0;
  overflow: visible;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-work--canvas .admin-work-template-canvas__preview > form[data-work-canvas-form],
.admin-work--canvas .admin-work-template-canvas__preview > .admin-work-templates__preview-loading,
.admin-work--canvas .admin-work-template-canvas__preview > .admin-work-templates__preview-error {
  flex-shrink: 0;
}
.admin-work--canvas .admin-work-templates__preview-cms-body {
  flex: 1;
  min-height: auto;
  overflow: visible;
  overscroll-behavior: auto;
  padding: 0;
}
.admin-work--canvas .admin-cms-block {
  border: 1px dashed rgba(99, 102, 241, 0.35);
  background: rgba(0, 0, 0, 0);
}
.admin-work--canvas .admin-cms-block__body {
  padding: 0;
  background: rgba(0, 0, 0, 0);
}
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='text'],
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='richtext'],
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='json'] {
  background: hsla(0, 0%, 100%, 0.1);
  color: #f8fafc;
  caret-color: #f8fafc;
}
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-key][data-cms-placeholder]:empty::before {
  content: attr(data-cms-placeholder);
  color: hsla(0, 0%, 100%, 0.62);
  font-weight: 500;
}
.admin-work--canvas
  .no-blocks-showcase--cms-preview
  [data-field-key][data-cms-placeholder][data-cms-empty='1']:not(:focus-within)::before {
  content: attr(data-cms-placeholder);
  color: hsla(0, 0%, 100%, 0.62);
  font-weight: 500;
  pointer-events: none;
}
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='text']:empty::before,
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='richtext']:empty::before,
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='json']:empty::before {
  color: hsla(0, 0%, 100%, 0.45);
  opacity: 1;
}
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='text']:focus-within,
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='richtext']:focus-within,
.admin-work--canvas .no-blocks-showcase--cms-preview [data-field-type='json']:focus-within {
  outline: 2px solid rgba(56, 189, 248, 0.95);
  outline-offset: 3px;
  box-shadow: 0 0 0 4px rgba(56, 189, 248, 0.22);
  background: hsla(0, 0%, 100%, 0.14);
}
.admin-work--canvas .no-blocks-showcase--cms-preview .admin-cms-media-placeholder {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
  border-color: hsla(0, 0%, 100%, 0.28);
}
.admin-work--canvas .no-blocks-showcase--cms-preview .admin-cms-media-placeholder::before {
  color: hsla(0, 0%, 100%, 0.65);
  font-weight: 600;
}
.admin-work--canvas .no-blocks-showcase--cms-preview .admin-file-uploader__dropzone--cms-slot {
  background: hsla(0, 0%, 100%, 0.07);
  border-color: hsla(0, 0%, 100%, 0.35);
  color: #f8fafc;
}
.admin-work--canvas .no-blocks-showcase--cms-preview .admin-file-uploader__dropzone--cms-slot:hover,
.admin-work--canvas
  .no-blocks-showcase--cms-preview
  .admin-file-uploader__dropzone--cms-slot.admin-file-uploader__dropzone--dragover {
  border-color: rgba(56, 189, 248, 0.85);
  background: rgba(56, 189, 248, 0.12);
}
.admin-work--canvas
  .no-blocks-showcase--cms-preview
  .admin-file-uploader__dropzone--cms-slot
  .admin-file-uploader__dropzone-icon {
  color: hsla(0, 0%, 100%, 0.85);
}
.admin-work--canvas
  .no-blocks-showcase--cms-preview
  .admin-file-uploader__dropzone--cms-slot
  .admin-file-uploader__dropzone-text {
  color: rgba(248, 250, 252, 0.92);
}
.admin-work--canvas
  .no-blocks-showcase--cms-preview
  .admin-file-uploader-box--cms-slot.admin-file-uploader-box--loading
  .admin-file-uploader__dropzone-loader {
  background: rgba(15, 23, 42, 0.82);
  color: rgba(248, 250, 252, 0.9);
}
.admin-work-templates-preview-stack {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-work-templates-preview-card {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: var(--admin-space-sm);
  background: var(--admin-grey-50, #fafafa);
  position: relative;
  overflow: hidden;
}
.admin-work-templates-preview-card__bar {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--admin-primary, #111);
  opacity: 0.85;
}
.admin-work-templates-preview-card__head {
  display: flex;
  gap: var(--admin-space-2xs);
  align-items: flex-start;
  padding-left: 8px;
}
.admin-work-templates-preview-card__icon {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--admin-radius-xs);
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  color: var(--admin-text-secondary);
  font-size: 14px;
}
.admin-work-templates-preview-card__titles {
  flex: 1;
  min-width: 0;
}
.admin-work-templates-preview-card__step {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  color: var(--admin-text-muted);
  margin-right: 6px;
}
.admin-work-templates-preview-card__title {
  margin: 0;
  display: inline;
  font-size: var(--admin-fs-sm);
  font-weight: 700;
}
.admin-work-templates-preview-card__desc {
  margin: 4px 0 0 0;
  font-size: 12px;
  color: var(--admin-text-secondary);
  line-height: 1.4;
}
.admin-work-templates-preview-card__meta {
  margin-top: var(--admin-space-2xs);
  padding-left: calc(2rem + var(--admin-space-2xs) + 8px);
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}
.admin-work-templates-preview-card__slug {
  font-size: 11px;
  padding: 2px 6px;
  background: var(--admin-white);
  border-radius: var(--admin-radius-xs);
  border: 1px solid var(--admin-border-light);
}
.admin-work-templates-preview-card__variant {
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: var(--admin-radius-full);
  background: var(--admin-grey-200);
  color: var(--admin-text);
}
.admin-work-templates-preview-fields {
  list-style: none;
  padding: var(--admin-space-2xs) 0 0 0;
  margin: var(--admin-space-2xs) 0 0 0;
  border-top: 1px dashed var(--admin-border-light);
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.admin-work-templates-preview-fields__item {
  font-size: 11px;
  padding: 3px 8px;
  border-radius: var(--admin-radius-xs);
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
}
.admin-work-templates-preview-fields__key {
  font-weight: 600;
  margin-right: 4px;
}
.admin-work-templates-preview-fields__type {
  font-family: ui-monospace, monospace;
  font-size: 10px;
  color: var(--admin-text-muted);
}
.admin-work-templates-preview-fields__req {
  color: var(--admin-danger, #b91c1c);
  font-weight: 700;
}
.admin-work-templates-preview-card__wireframe {
  margin-top: var(--admin-space-sm);
  padding-top: var(--admin-space-sm);
  border-top: 1px dashed var(--admin-border-light);
}
.admin-work-wireframe {
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  padding: var(--admin-space-sm);
  font-size: 11px;
}
.admin-work-wireframe__slot {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 8px 10px;
  border-radius: var(--admin-radius-xs);
  border: 1px dashed var(--admin-grey-400, #9ca3af);
  background: var(--admin-grey-50, #fafafa);
  min-height: 2.25rem;
  justify-content: center;
}
.admin-work-wireframe__slot-key {
  font-family: ui-monospace, monospace;
  font-size: 10px;
  font-weight: 700;
  color: var(--admin-text-secondary);
}
.admin-work-wireframe__slot-meta {
  font-size: 10px;
  color: var(--admin-text-muted);
  line-height: 1.35;
}
.admin-work-wireframe--hero-visual {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-2xs);
}
.admin-work-wireframe__hero-media {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  min-height: 100px;
}
.admin-work-wireframe__hero-caption {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.admin-work-wireframe--project-summary .admin-work-wireframe__ps-grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: var(--admin-space-sm);
}
@media (max-width: 520px) {
  .admin-work-wireframe--project-summary .admin-work-wireframe__ps-grid {
    grid-template-columns: 1fr;
  }
}
.admin-work-wireframe__ps-col {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.admin-work-wireframe--gallery-grid .admin-work-wireframe__gg-title {
  margin-bottom: 6px;
}
.admin-work-wireframe__gg-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  min-height: 120px;
  padding: 8px;
  border-radius: var(--admin-radius-xs);
  background: repeating-linear-gradient(-45deg, var(--admin-grey-100), var(--admin-grey-100) 6px, #fff 6px, #fff 12px);
}
.admin-work-wireframe--cols-2 .admin-work-wireframe__gg-grid {
  grid-template-columns: repeat(2, 1fr);
}
.admin-work-wireframe--cols-3 .admin-work-wireframe__gg-grid {
  grid-template-columns: repeat(3, 1fr);
}
.admin-work-wireframe--cols-4 .admin-work-wireframe__gg-grid {
  grid-template-columns: repeat(4, 1fr);
}
.admin-work-wireframe__gg-cell {
  min-height: 36px;
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  background: hsla(0, 0%, 100%, 0.65);
}
.admin-work-wireframe__gg-hint {
  position: absolute;
  bottom: 6px;
  right: 8px;
  font-size: 10px;
  color: var(--admin-text-muted);
  background: hsla(0, 0%, 100%, 0.9);
  padding: 2px 6px;
  border-radius: var(--admin-radius-xs);
}
.admin-work-wireframe--gallery-swiper .admin-work-wireframe__gs-title {
  margin-bottom: 6px;
}
.admin-work-wireframe__gs-track {
  display: flex;
  gap: 8px;
  align-items: stretch;
  min-height: 88px;
  padding: 8px;
  border-radius: var(--admin-radius-xs);
  background: var(--admin-grey-100);
  overflow-x: auto;
  position: relative;
}
.admin-work-wireframe__gs-slide {
  flex: 0 0 72px;
  height: 72px;
  border-radius: 4px;
  border: 1px dashed var(--admin-grey-400);
  background: var(--admin-white);
}
.admin-work-wireframe__gs-hint {
  position: absolute;
  bottom: 4px;
  right: 6px;
  font-size: 10px;
  color: var(--admin-text-muted);
}
.admin-work-wireframe--full-image {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.admin-work-wireframe--full-image > .admin-work-wireframe__slot:first-child {
  min-height: 120px;
}
.admin-work-wireframe__fi-caption {
  max-width: 100%;
}
.admin-work-wireframe--callout-quote {
  padding: var(--admin-space);
}
.admin-work-wireframe--theme-dark {
  background: #1f2937;
  color: #f9fafb;
}
.admin-work-wireframe--theme-dark .admin-work-wireframe__slot {
  border-color: hsla(0, 0%, 100%, 0.25);
  background: hsla(0, 0%, 100%, 0.06);
}
.admin-work-wireframe--theme-brand {
  background: rgba(59, 130, 246, 0.08);
  border-color: rgba(59, 130, 246, 0.35);
}
.admin-work-wireframe--theme-light {
  background: #f3f4f6;
}
.admin-work-wireframe__cq-quote .admin-work-wireframe__slot {
  min-height: 72px;
}
.admin-work-wireframe__cq-attr {
  margin-top: 6px;
  max-width: 80%;
}
.admin-work-wireframe--outro .admin-work-wireframe__outro-stack {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.admin-work-wireframe--two-col .admin-work-wireframe__tc-grid {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: var(--admin-space-sm);
  align-items: start;
}
@media (max-width: 520px) {
  .admin-work-wireframe--two-col .admin-work-wireframe__tc-grid {
    grid-template-columns: 1fr;
  }
}
.admin-work-wireframe--image-right .admin-work-wireframe__tc-grid {
  direction: rtl;
}
.admin-work-wireframe--image-right .admin-work-wireframe__tc-grid > * {
  direction: ltr;
}
.admin-work-wireframe__tc-media .admin-work-wireframe__slot {
  min-height: 140px;
}
.admin-work-wireframe__tc-text {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.admin-work-wireframe--generic .admin-work-wireframe__variant-badge {
  margin: 0 0 8px 0;
  font-size: 10px;
}
.admin-work-wireframe--generic .admin-work-wireframe__stack {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.admin-work-block-editor {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-work-block-editor__block {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  padding: var(--admin-space-sm) var(--admin-space);
}
.admin-work-block-editor__summary {
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  flex-wrap: wrap;
  font-weight: 600;
}
.admin-work-block-editor__slug,
.admin-work-block-editor__key {
  padding: 2px 6px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  font-size: 11px;
  font-weight: 500;
  color: var(--admin-text-secondary);
}
.admin-work-block-editor__field {
  margin-top: var(--admin-space);
}
.admin-work-block-editor__ft {
  margin-left: 6px;
  padding: 1px 6px;
  border-radius: var(--admin-radius-xs);
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: 10px;
  font-weight: 500;
}
.admin-work-block-editor__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: var(--admin-space-sm);
}
.admin-form__block--inline {
  display: flex;
  gap: var(--admin-space-sm);
  align-items: flex-start;
  flex-wrap: wrap;
}
.admin-form__block--inline .admin-form__field {
  flex: 1;
  min-width: 0;
}
.admin-form__block--inline .admin-form__input {
  min-width: 140px;
}
.admin-form-row {
  display: contents;
}
.admin-form__block--grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--admin-space);
}
@media (max-width: 720px) {
  .admin-form__block--grid-2 {
    grid-template-columns: 1fr;
  }
}
.admin-form__block--grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--admin-space);
}
@media (max-width: 720px) {
  .admin-form__block--grid-3 {
    grid-template-columns: 1fr;
  }
}
.admin-form__checkgroup {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-sm) var(--admin-space-lg);
  align-items: center;
}
.admin-add-section {
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: var(--admin-space-lg);
  margin-bottom: var(--admin-space-xl);
  box-shadow: var(--admin-elevation-1);
}
.admin-add-section__title {
  margin: 0 0 var(--admin-space-sm);
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text);
}
.admin-add-section__form .admin-form__block--inline {
  gap: var(--admin-space-sm);
}
.admin-form__field {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-3xs);
}
.admin-form__field .admin-form__label {
  margin: 0;
  font-size: var(--admin-fs-sm);
  font-weight: 500;
  color: var(--admin-text-secondary);
  white-space: nowrap;
}
.admin-form__field .admin-form__input {
  flex: none;
}
.admin-list-section {
  margin-bottom: var(--admin-space-xl);
}
.admin-list-section__header {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  margin-bottom: var(--admin-space-xs);
}
.admin-list-section__title {
  margin: 0;
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text);
}
.admin-list-section__count {
  font-size: var(--admin-fs-sm);
  font-weight: 400;
  color: var(--admin-text-muted);
}
.admin-list-section__hint {
  margin: 0 0 var(--admin-space-sm);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-list-section__hint .fa-grip-lines {
  margin-right: 0.35em;
}
.admin-table__col-handle {
  width: 2.5rem;
  padding: 0 var(--admin-space-xs) !important;
}
.admin-sortable__handle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  color: var(--admin-text-muted);
  cursor: grab;
  border-radius: var(--admin-radius-xs);
  transition:
    background var(--admin-duration-short) var(--admin-ease),
    color var(--admin-duration-short) var(--admin-ease);
}
.admin-sortable__handle:hover {
  background: var(--admin-grey-100);
  color: var(--admin-text);
}
.admin-sortable__handle:active {
  cursor: grabbing;
}
.admin-sortable__ghost {
  opacity: 0.4;
  background: var(--admin-primary-light);
}
.admin-sortable__drag {
  box-shadow: var(--admin-elevation-3);
  background: var(--admin-card-bg) !important;
  opacity: 1;
}
.admin-sortable__saving {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  align-items: center;
  justify-content: center;
  padding: var(--admin-space-xl);
  background: hsla(0, 0%, 100%, 0.72);
  backdrop-filter: blur(2px);
  color: var(--admin-text-muted);
}
.admin-sortable__saving--visible {
  display: flex;
}
.admin-sortable__saving-inner {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--admin-space-sm);
  min-width: 240px;
  padding: var(--admin-space-lg) var(--admin-space-xl);
  font-size: var(--admin-fs-body);
  font-weight: 600;
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-2);
}
.admin-sortable__saving-inner .fa-spinner {
  font-size: 2rem;
  color: var(--admin-grey-400);
}
.admin-sortable__error {
  display: none;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-sm) var(--admin-space-lg);
  font-size: var(--admin-fs-sm);
  font-weight: 500;
  color: var(--admin-error-text);
  background: var(--admin-error-bg);
  border-bottom: 2px solid var(--admin-error);
}
.admin-sortable__error i {
  flex-shrink: 0;
}
.admin-sortable__error--visible {
  display: flex;
}
html.admin--loading,
html.admin--loading body {
  cursor: progress;
}
.admin-work-block-picker {
  z-index: 1100;
}
.admin-work-block-picker .admin-work-block-picker__box {
  max-width: min(960px, 96vw);
  width: 100%;
  max-height: 88vh;
}
.admin-work-block-picker .admin-work-block-picker__body {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-work-block-picker .admin-work-block-picker__filter-wrap {
  display: block;
  margin: 0;
}
.admin-work-block-picker .admin-search-bar {
  max-width: 440px;
}
.admin-work-block-picker .admin-work-block-picker__grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--admin-space-sm);
}
.admin-work-block-picker .admin-work-block-picker__cell {
  margin: 0;
}
.admin-work-block-picker .admin-work-block-picker__card {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  cursor: pointer;
  text-align: left;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}
.admin-work-block-picker .admin-work-block-picker__card:hover {
  border-color: var(--admin-primary, #0ea5e9);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}
.admin-work-block-picker .admin-work-block-picker__card:focus-visible {
  outline: 2px solid var(--admin-primary, #0ea5e9);
  outline-offset: 2px;
}
.admin-work-block-picker .admin-work-block-picker__thumb-wrap {
  aspect-ratio: 16/10;
  background: var(--admin-grey-100);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.admin-work-block-picker .admin-work-block-picker__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.admin-work-block-picker .admin-work-block-picker__thumb-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 80px;
  color: var(--admin-grey-400);
  font-size: 2rem;
}
.admin-work-block-picker .admin-work-block-picker__meta {
  padding: var(--admin-space-sm);
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.admin-work-block-picker .admin-work-block-picker__label {
  font-size: var(--admin-fs-body);
  font-weight: 700;
  margin: 0;
}
.admin-work-block-picker .admin-work-block-picker__slug {
  font-size: 11px;
  color: var(--admin-text-secondary);
  background: var(--admin-grey-100);
  padding: 2px 6px;
  border-radius: var(--admin-radius-xs);
  align-self: flex-start;
}
.admin-work-block-picker .admin-work-block-picker__desc {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.admin-work-block-picker .admin-work-block-picker__hint {
  margin: 0;
  margin-top: var(--admin-space-xs);
}
.admin-work-templates--canvas-thumb .admin-work-template-canvas {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-lg);
}
.admin-work-templates--canvas-thumb .admin-work-template-canvas__header {
  display: flex;
  align-items: center;
  gap: var(--admin-space);
  padding: var(--admin-space-sm) var(--admin-space);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  box-shadow: var(--admin-elevation-1);
  flex-wrap: wrap;
}
.admin-work-templates--canvas-thumb .admin-work-template-canvas__header-title {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-sm);
  flex: 1 1 auto;
  min-width: 0;
}
.admin-work-templates--canvas-thumb .admin-work-template-canvas__title {
  font-size: var(--admin-fs-body-lg);
  font-weight: 700;
  color: var(--admin-text-primary);
  line-height: 1.2;
}
.admin-work-templates--canvas-thumb .admin-work-template-canvas__slug {
  padding: 3px 8px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Consolas, monospace);
}
.admin-work-templates--canvas-thumb .admin-work-template-canvas__header-actions {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-xs);
  flex: 0 0 auto;
}
.admin-work-templates--canvas-thumb .admin-work-template-canvas__body {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: var(--admin-space-lg);
  align-items: start;
}
@media (max-width: 1100px) {
  .admin-work-templates--canvas-thumb .admin-work-template-canvas__body {
    grid-template-columns: 1fr;
  }
}
.admin-work-templates--canvas-thumb .admin-work-template-canvas__target {
  min-width: 0;
}
.admin-work-blocks-thumb-palette {
  display: flex;
  flex-direction: column;
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  box-shadow: var(--admin-elevation-1);
  position: sticky;
  top: var(--admin-space-lg);
  max-height: calc(100vh - var(--admin-space-2xl));
  overflow: hidden;
  min-width: 0;
}
.admin-work-blocks-thumb-palette__head {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
  flex: 0 0 auto;
  padding: var(--admin-space-sm) var(--admin-space) var(--admin-space-xs);
  border-bottom: 1px solid var(--admin-grey-100);
}
.admin-work-blocks-thumb-palette__title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0;
  color: var(--admin-text-secondary);
}
.admin-work-blocks-thumb-palette__filter {
  display: block;
}
.admin-work-blocks-thumb-palette__filter input {
  width: 100%;
  padding: 6px 10px;
  font-size: var(--admin-fs-sm);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-xs);
  background: var(--admin-grey-50, #fafafa);
  transition:
    border-color 120ms ease,
    background 120ms ease;
}
.admin-work-blocks-thumb-palette__filter input:focus {
  outline: none;
  border-color: var(--admin-primary);
  background: var(--admin-white);
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12);
}
.admin-work-blocks-thumb-palette__list {
  list-style: none;
  margin: 0;
  padding: var(--admin-space-2xs);
  display: flex;
  flex-direction: column;
  gap: 2px;
  overflow-y: auto;
  flex: 1 1 auto;
  min-height: 0;
}
.admin-work-blocks-thumb-palette__cell {
  list-style: none;
}
.admin-work-blocks-thumb-palette__cell[hidden] {
  display: none;
}
.admin-work-blocks-thumb-palette__card {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: var(--admin-space-2xs);
  align-items: center;
  width: 100%;
  padding: 6px 8px;
  border: 1px solid rgba(0, 0, 0, 0);
  border-radius: var(--admin-radius-xs);
  background: rgba(0, 0, 0, 0);
  text-align: left;
  cursor: pointer;
  transition:
    background 120ms ease,
    border-color 120ms ease;
}
.admin-work-blocks-thumb-palette__card:hover {
  background: var(--admin-grey-50, #fafafa);
  border-color: var(--admin-grey-100);
}
.admin-work-blocks-thumb-palette__card:focus-visible {
  outline: none;
  background: var(--admin-white);
  border-color: var(--admin-primary);
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15);
}
.admin-work-blocks-thumb-palette__thumb-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  background: var(--admin-grey-100);
  border-radius: 3px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.admin-work-blocks-thumb-palette__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.admin-work-blocks-thumb-palette__thumb-fallback {
  font-size: 12px;
  color: var(--admin-text-secondary);
}
.admin-work-blocks-thumb-palette__meta {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 1px;
  align-self: center;
}
.admin-work-blocks-thumb-palette__label {
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text-primary);
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  line-height: 1.25;
}
.admin-work-blocks-thumb-palette__slug {
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Consolas, monospace);
  font-size: 10px;
  color: var(--admin-text-secondary);
  background: rgba(0, 0, 0, 0);
  padding: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  line-height: 1.2;
}
.admin-work-blocks--canvas-target {
  background: rgba(0, 0, 0, 0);
  border: none;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.admin-work-blocks--canvas-target .admin-work-blocks__head {
  padding: 0 var(--admin-space-2xs) var(--admin-space-sm);
  margin: 0;
  border: none;
}
.admin-work-blocks--canvas-target .admin-work-blocks__head .admin-form__section-title {
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text-primary);
  margin: 0 0 4px;
}
.admin-work-blocks--canvas-target .admin-work-blocks__head .admin-form__hint {
  margin: 0;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
}
.admin-work-blocks--canvas-target .admin-work-blocks__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-work-blocks__item--thumb {
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  overflow: hidden;
  box-shadow: var(--admin-elevation-1);
  transition: box-shadow 150ms ease;
}
.admin-work-blocks__item--thumb:hover {
  box-shadow: var(--admin-elevation-2);
}
.admin-work-blocks__item--thumb .admin-work-blocks__item-head {
  display: grid;
  grid-template-columns: auto auto 220px minmax(0, 1fr) auto;
  gap: var(--admin-space);
  align-items: center;
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-white);
  border-bottom: 1px solid var(--admin-grey-100);
}
@media (max-width: 760px) {
  .admin-work-blocks__item--thumb .admin-work-blocks__item-head {
    grid-template-columns: auto auto minmax(0, 1fr) auto;
    grid-template-areas: 'drag move thumb remove' 'meta meta meta meta';
    row-gap: var(--admin-space-sm);
  }
  .admin-work-blocks__item--thumb .admin-work-blocks__drag {
    grid-area: drag;
  }
  .admin-work-blocks__item--thumb .admin-work-blocks__move {
    grid-area: move;
  }
  .admin-work-blocks__item--thumb .admin-work-blocks__thumb-wrap {
    grid-area: thumb;
    width: 140px;
  }
  .admin-work-blocks__item--thumb .admin-work-blocks__meta {
    grid-area: meta;
  }
  .admin-work-blocks__item--thumb .admin-work-blocks__remove {
    grid-area: remove;
    justify-self: end;
  }
}
.admin-work-blocks__item--thumb .admin-work-blocks__drag {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-secondary);
  cursor: grab;
  border-radius: var(--admin-radius-xs);
  transition:
    background 120ms ease,
    color 120ms ease;
}
.admin-work-blocks__item--thumb .admin-work-blocks__drag:hover {
  background: var(--admin-grey-50, #fafafa);
  color: var(--admin-text-primary);
}
.admin-work-blocks__item--thumb .admin-work-blocks__drag:active {
  cursor: grabbing;
}
.admin-work-blocks__move {
  display: inline-flex;
  flex-direction: column;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-xs);
  overflow: hidden;
  background: var(--admin-white);
}
.admin-work-blocks__move-btn {
  width: 24px;
  height: 18px;
  border: none;
  background: var(--admin-white);
  color: var(--admin-text-secondary);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 10px;
  padding: 0;
  transition:
    background 100ms ease,
    color 100ms ease;
}
.admin-work-blocks__move-btn + .admin-work-blocks__move-btn {
  border-top: 1px solid var(--admin-border-light);
}
.admin-work-blocks__move-btn:hover:not(:disabled) {
  background: var(--admin-grey-50, #fafafa);
  color: var(--admin-text-primary);
}
.admin-work-blocks__move-btn:disabled,
.admin-work-blocks__move-btn[aria-disabled='true'] {
  opacity: 0.35;
  cursor: not-allowed;
}
.admin-work-blocks__thumb-wrap {
  width: 220px;
  aspect-ratio: 16/9;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.admin-work-blocks__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.admin-work-blocks__thumb-fallback {
  font-size: 28px;
  color: var(--admin-text-secondary);
}
.admin-work-blocks__item--thumb .admin-work-blocks__meta {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.admin-work-blocks__item--thumb .admin-work-blocks__label {
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text-primary);
  line-height: 1.2;
}
.admin-work-blocks__item--thumb .admin-work-blocks__slug {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  padding: 2px 6px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Consolas, monospace);
  font-size: 10px;
  color: var(--admin-text-secondary);
}
.admin-work-blocks__item--thumb .admin-work-blocks__desc {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  margin: 2px 0 0;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.admin-work-blocks__item--thumb .admin-work-blocks__item-foot {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: var(--admin-space-lg);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-grey-50, #fafafa);
  border-top: 1px solid var(--admin-grey-100);
}
@media (max-width: 760px) {
  .admin-work-blocks__item--thumb .admin-work-blocks__item-foot {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--admin-space-sm);
  }
}
.admin-work-blocks__inline-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
}
.admin-work-blocks__inline-field .admin-form__label--sm {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--admin-text-secondary);
  margin: 0;
}
.admin-work-blocks__inline-field input,
.admin-work-blocks__inline-field select {
  padding: 6px 10px;
  font-size: var(--admin-fs-sm);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-xs);
  background: var(--admin-white);
  width: 100%;
}
.admin-work-blocks__empty {
  list-style: none;
  padding: var(--admin-space-2xl) var(--admin-space-lg);
  border: 1.5px dashed var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  text-align: center;
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-sm);
}
.admin-work-blocks__empty p {
  margin: 0;
}
.admin-work-blocks__item--thumb .admin-work-blocks__remove {
  white-space: nowrap;
}
.admin-comp-section {
  margin-bottom: var(--admin-space-2xl);
  padding: var(--admin-space-lg);
  background: var(--admin-card-bg);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
  border: 1px solid var(--admin-border-light);
}
.admin-comp-section__title {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-body);
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--admin-text);
  padding-bottom: var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-comp-section__row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space);
  align-items: center;
}
.admin-comp-section__row--col {
  flex-direction: column;
  align-items: stretch;
  max-width: 400px;
}
.admin-comp-section__note {
  margin: var(--admin-space) 0 0;
  font-size: var(--admin-fs-sm);
  font-weight: 500;
  color: var(--admin-text-secondary);
  word-break: keep-all;
  overflow-wrap: normal;
}
.admin-comp-section__note code {
  padding: var(--admin-space-3xs) var(--admin-space-2xs);
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  font-size: var(--admin-fs-sm);
}
.admin-comp-section--file-uploader .admin-file-uploader-demo {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: var(--admin-space-lg);
  margin-top: var(--admin-space);
}
.admin-file-uploader-box {
  min-height: 140px;
  padding: var(--admin-space);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-card-bg);
}
.admin-file-uploader-demo__item .admin-input-label {
  font-weight: 600;
  color: var(--admin-text);
}
.admin-file-uploader__list {
  margin-top: var(--admin-space);
}
.admin-file-uploader__grid {
  display: grid;
  gap: var(--admin-space);
  margin-top: var(--admin-space-sm);
}
.admin-file-uploader__grid--image {
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
}
.admin-file-uploader__grid--video,
.admin-file-uploader__grid--audio {
  grid-template-columns: 1fr;
}
.admin-file-uploader__grid--document,
.admin-file-uploader__grid--archive {
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}
.admin-file-uploader__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--admin-space-sm);
  padding: var(--admin-space);
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius);
  border: 1px solid var(--admin-border-light);
}
.admin-file-uploader__thumb {
  width: 100%;
  height: auto;
  max-height: 120px;
  object-fit: cover;
  border-radius: var(--admin-radius-xs);
}
.admin-file-uploader__preview-video {
  width: 100%;
  max-height: 180px;
  border-radius: var(--admin-radius-xs);
}
.admin-file-uploader__preview-audio {
  width: 100%;
  max-width: 320px;
}
.admin-file-uploader__icon {
  font-size: var(--admin-fs-body-xl);
  color: var(--admin-text-secondary);
}
.admin-file-uploader__dropzone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 120px;
  padding: var(--admin-space);
  border: 2px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  background: var(--admin-grey-100);
  cursor: pointer;
  transition:
    border-color var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease);
}
.admin-file-uploader__dropzone:hover,
.admin-file-uploader__dropzone--dragover {
  border-color: var(--admin-primary);
  background: rgba(var(--admin-primary-rgb), 0.06);
}
.admin-file-uploader__dropzone--disabled {
  pointer-events: none;
  opacity: 0.65;
  cursor: not-allowed;
}
.admin-file-uploader__dropzone-text {
  font-weight: 600;
  color: var(--admin-text);
  margin-bottom: var(--admin-space-2xs);
}
.admin-file-uploader__dropzone-hint {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
}
.admin-file-uploader__meta {
  width: 100%;
  margin-top: var(--admin-space-2xs);
}
.admin-file-uploader__name {
  font-size: var(--admin-fs-xs);
  font-weight: 500;
  color: var(--admin-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-file-uploader__size {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  margin-top: var(--admin-space-3xs);
}
.admin-file-uploader__actions {
  display: flex;
  gap: var(--admin-space-2xs);
  flex-wrap: wrap;
  margin-top: var(--admin-space-sm);
}
.admin-datetime-input-wrap,
.admin-time-input-wrap {
  display: flex;
  align-items: center;
  border: 1px solid var(--admin-border, #e2e8f0);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-white);
  cursor: pointer;
}
.admin-datetime-input-wrap:focus-within,
.admin-time-input-wrap:focus-within {
  border-color: var(--admin-primary, #3b82f6);
  outline: 1px solid var(--admin-primary, #3b82f6);
}
.admin-datetime-input,
.admin-time-input {
  flex: 1;
  border: none;
  background: none;
  cursor: pointer;
}
.admin-datetime-input__icon,
.admin-time-input__icon {
  padding: 0 var(--admin-space);
  color: var(--admin-text-secondary, #64748b);
  pointer-events: none;
}
.admin-comp-editor-wrap {
  min-height: 180px;
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border, #e2e8f0);
  border-radius: var(--admin-radius);
}
.admin-comp-editor-wrap .ql-editor {
  min-height: 160px;
}
.admin-comp-section__row--calendars {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-lg);
  align-items: flex-start;
  margin-top: var(--admin-space);
}
.admin-comp-calendar-box {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
}
.admin-comp-calendar-box__label {
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text-secondary);
}
.admin-comp-calendar-box__inner {
  display: inline-block;
  border-radius: var(--admin-radius);
  overflow: hidden;
  box-shadow: var(--admin-elevation-2);
}
.admin-comp-calendar-box__inner .flatpickr-calendar {
  position: static;
  box-shadow: none;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  font-family: inherit;
}
.admin-comp-calendar-box__inner .flatpickr-day.selected,
.admin-comp-calendar-box__inner .flatpickr-day.selected:hover {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
}
.admin-comp-calendar-box__inner .flatpickr-day.inRange {
  background: rgba(var(--admin-primary-rgb), 0.12);
  border-color: rgba(0, 0, 0, 0);
}
.admin-comp-calendar-box__inner .flatpickr-day.startRange,
.admin-comp-calendar-box__inner .flatpickr-day.endRange {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
}
.admin-guide {
  max-width: 100%;
}
.guide-section {
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: 2.4rem;
  margin-bottom: 2.4rem;
}
.guide-section:last-child {
  margin-bottom: 0;
}
.guide-section__header {
  margin-bottom: 2rem;
}
.guide-section__tag {
  display: inline-block;
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--admin-primary);
  background: var(--admin-primary-light);
  border: 1px solid rgba(var(--admin-primary-rgb), 0.2);
  border-radius: var(--admin-radius-full);
  padding: 0.3rem 1rem;
  margin-bottom: 0.8rem;
  text-transform: uppercase;
}
.guide-section__title {
  font-size: clamp(1.6rem, 2vw, 2rem);
  font-weight: 700;
  color: var(--admin-text);
  margin: 0 0 0.6rem;
  line-height: 1.3;
}
.guide-section__desc {
  font-size: 1.4rem;
  color: var(--admin-text-secondary);
  margin: 0;
  line-height: 1.6;
}
.guide-grid {
  display: grid;
  gap: 1.6rem;
}
.guide-grid--2 {
  grid-template-columns: repeat(2, 1fr);
}
.guide-grid--3 {
  grid-template-columns: repeat(3, 1fr);
}
.guide-grid--4 {
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 991px) {
  .guide-grid--3,
  .guide-grid--4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .guide-grid--2,
  .guide-grid--3,
  .guide-grid--4 {
    grid-template-columns: 1fr;
  }
}
.guide-card {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: 2rem;
  background: var(--admin-white);
}
.guide-card--highlight {
  background: var(--admin-primary-light);
  border-color: rgba(var(--admin-primary-rgb), 0.18);
}
.guide-card__icon {
  font-size: 2.4rem;
  color: var(--admin-primary);
  margin-bottom: 1.2rem;
}
.guide-card__title {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--admin-text);
  margin: 0 0 0.8rem;
}
.guide-card__body {
  font-size: 1.4rem;
  color: var(--admin-text-secondary);
  line-height: 1.6;
  margin: 0;
}
.guide-value-card {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: 1.6rem;
  background: var(--admin-white);
  position: relative;
  overflow: hidden;
}
.guide-value-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--admin-primary);
  border-radius: var(--admin-radius) var(--admin-radius) 0 0;
}
.guide-value-card__num {
  display: block;
  font-size: 2.4rem;
  font-weight: 800;
  color: rgba(var(--admin-primary-rgb), 0.15);
  line-height: 1;
  margin-bottom: 0.8rem;
  letter-spacing: -0.04em;
}
.guide-value-card__title {
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--admin-text);
  margin: 0 0 0.4rem;
}
.guide-value-card__body {
  font-size: 1.3rem;
  color: var(--admin-text-secondary);
  margin: 0;
  line-height: 1.5;
}
.guide-colors {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.guide-color-group {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.guide-color-group__label {
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--admin-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin: 0;
}
.guide-color-swatches {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.guide-swatch {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 9.6rem;
  height: 6.4rem;
  border-radius: var(--admin-radius-sm);
  padding: 0.6rem 0.8rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.guide-swatch--bordered {
  border: 1px solid var(--admin-border-light);
}
@media (max-width: 767px) {
  .guide-swatch {
    width: 7.2rem;
    height: 5.2rem;
  }
}
.guide-swatch__name {
  font-size: 1.1rem;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.55);
  line-height: 1;
}
.guide-swatch__hex {
  font-size: 1rem;
  color: rgba(0, 0, 0, 0.45);
  font-family: ui-monospace, 'Cascadia Code', monospace;
  margin-top: 0.2rem;
}
.guide-voice-card {
  border-radius: var(--admin-radius);
  padding: 2rem;
  border: 1px solid var(--admin-border-light);
}
.guide-voice-card--do {
  background: var(--admin-success-bg);
  border-color: rgba(var(--admin-success-rgb), 0.25);
}
.guide-voice-card--do .guide-voice-card__badge {
  background: var(--admin-success);
  color: #fff;
}
.guide-voice-card--dont {
  background: var(--admin-error-bg);
  border-color: rgba(var(--admin-error-rgb), 0.2);
}
.guide-voice-card--dont .guide-voice-card__badge {
  background: var(--admin-error);
  color: #fff;
}
.guide-voice-card__badge {
  display: inline-block;
  font-size: 1.1rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  padding: 0.3rem 1rem;
  border-radius: var(--admin-radius-full);
  margin-bottom: 1.2rem;
}
.guide-voice-card__list {
  margin: 0;
  padding: 0 0 0 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.guide-voice-card__list li {
  font-size: 1.4rem;
  color: var(--admin-text-secondary);
  line-height: 1.5;
}
.guide-type-table {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  overflow: hidden;
}
.guide-type-row {
  display: grid;
  grid-template-columns: 10rem 16rem 12rem 1fr;
  align-items: center;
  gap: 1.2rem;
  padding: 1.2rem 1.6rem;
  border-bottom: 1px solid var(--admin-border-light);
}
.guide-type-row:last-child {
  border-bottom: none;
}
.guide-type-row--header {
  background: var(--admin-grey-50);
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--admin-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 1rem 1.6rem;
}
@media (max-width: 991px) {
  .guide-type-row {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
  }
  .guide-type-row--header span:nth-child(n + 3) {
    display: none;
  }
}
@media (max-width: 767px) {
  .guide-type-row {
    grid-template-columns: 1fr;
  }
}
.guide-type-role {
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--admin-text);
}
.guide-type-token {
  font-size: 1.1rem;
  font-family: ui-monospace, 'Cascadia Code', monospace;
  color: var(--admin-accent-coral);
  background: var(--admin-grey-50);
  padding: 0.2rem 0.6rem;
  border-radius: 3px;
}
.guide-type-size {
  font-size: 1.2rem;
  color: var(--admin-text-muted);
}
.guide-type-sample {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.guide-spacing-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.guide-spacing-row {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.guide-spacing-token {
  flex: 0 0 14rem;
  font-size: 1.1rem;
  font-family: ui-monospace, 'Cascadia Code', monospace;
  color: var(--admin-accent-coral);
  background: var(--admin-grey-50);
  padding: 0.2rem 0.6rem;
  border-radius: 3px;
  white-space: nowrap;
}
.guide-spacing-bar {
  height: 1.2rem;
  background: var(--admin-primary);
  border-radius: 2px;
  opacity: 0.7;
  flex-shrink: 0;
}
.guide-spacing-size {
  flex: 0 0 10rem;
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--admin-text);
}
.guide-spacing-desc {
  font-size: 1.3rem;
  color: var(--admin-text-secondary);
}
.guide-breakpoints {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.guide-bp {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
.guide-bp__bar {
  height: 3.2rem;
  background: linear-gradient(90deg, var(--admin-primary) 0%, rgba(var(--admin-primary-rgb), 0.4) 100%);
  border-radius: var(--admin-radius-sm);
  flex-shrink: 0;
  min-width: 4rem;
}
.guide-bp__label {
  flex: 0 0 6rem;
  font-size: 1.3rem;
  font-weight: 700;
  color: var(--admin-text);
}
.guide-bp__val {
  flex: 0 0 14rem;
  font-size: 1.2rem;
  color: var(--admin-text-secondary);
  font-family: ui-monospace, monospace;
}
.guide-bp__cols {
  font-size: 1.3rem;
  color: var(--admin-primary);
  font-weight: 600;
}
.guide-motion-card {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: 1.6rem;
  text-align: center;
  background: var(--admin-white);
}
.guide-motion-card__demo {
  height: 6.4rem;
  border-radius: var(--admin-radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.4rem;
  margin-bottom: 1.2rem;
  cursor: default;
}
.guide-motion-card__demo--fade {
  background: var(--admin-primary-light);
  color: var(--admin-primary);
  transition: opacity 200ms ease-out;
}
.guide-motion-card__demo--fade:hover {
  opacity: 0.4;
}
.guide-motion-card__demo--slide {
  background: var(--admin-success-bg);
  color: var(--admin-success-text);
  transition: transform 300ms cubic-bezier(0.4, 0, 0.2, 1);
}
.guide-motion-card__demo--slide:hover {
  transform: translateY(-4px);
}
.guide-motion-card__demo--scale {
  background: var(--admin-warn-bg);
  color: var(--admin-warn-text);
  transition: transform 150ms ease;
}
.guide-motion-card__demo--scale:hover {
  transform: scale(1.05);
}
.guide-motion-card__label {
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--admin-text);
  margin: 0 0 0.4rem;
}
.guide-motion-card__code {
  font-size: 1.1rem;
  font-family: ui-monospace, 'Cascadia Code', monospace;
  color: var(--admin-text-muted);
  background: var(--admin-grey-50);
  padding: 0.2rem 0.5rem;
  border-radius: 3px;
}
.admin-docs {
  display: grid;
  grid-template-columns: 220px 1fr 200px;
  gap: var(--admin-space-3xl);
  align-items: start;
  max-width: 1280px;
  margin: 0 auto;
  padding: var(--admin-space-2xl) var(--admin-space-lg);
  font-size: var(--admin-fs-body);
  line-height: 1.65;
}
.admin-docs__tabs {
  grid-column: 1/-1;
  display: flex;
  gap: 0;
  margin-bottom: var(--admin-space);
  border-bottom: 2px solid var(--admin-border-light);
  background: var(--admin-main-bg);
}
.admin-docs__tab {
  padding: var(--admin-space) var(--admin-space-lg);
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text-secondary);
  text-decoration: none;
  border-bottom: 3px solid rgba(0, 0, 0, 0);
  margin-bottom: -2px;
  transition:
    color var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-docs__tab:hover {
  color: var(--admin-text);
}
.admin-docs__tab.is-active {
  color: var(--admin-primary);
  border-bottom-color: var(--admin-primary);
}
.admin-docs__tab-panel {
  display: none;
}
.admin-docs__tab-panel.is-active {
  display: block;
}
.admin-docs__tab-panel-title {
  margin: 0 0 var(--admin-space-sm);
  font-size: var(--admin-fs-menu);
  font-weight: 600;
  color: var(--admin-text);
}
.admin-docs__tab-panel-lead {
  margin: 0 0 var(--admin-space-xl);
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
}
.admin-docs__nav-group {
  margin-bottom: var(--admin-space);
  list-style: none;
}
.admin-docs__nav-group-title {
  display: block;
  padding: var(--admin-space-2xs) 0 var(--admin-space-2xs) var(--admin-space-sm);
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--admin-text-muted);
}
.admin-docs__nav-sublist {
  margin: 0;
  padding: 0;
  list-style: none;
}
.admin-docs__nav {
  padding: var(--admin-space) var(--admin-space-sm) var(--admin-space-xl) 0;
  margin: 0 var(--admin-space-sm) 0 0;
  border-right: 1px solid var(--admin-border-light);
  background: var(--admin-main-bg);
  z-index: 2;
}
.admin-docs__nav-title {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--admin-text-muted);
}
.admin-docs__nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.admin-docs__nav-list li {
  margin-bottom: 0;
}
.admin-docs__nav-link {
  display: block;
  padding: var(--admin-space-2xs) 0 var(--admin-space-2xs) var(--admin-space-sm);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  text-decoration: none;
  border-left: 2px solid rgba(0, 0, 0, 0);
  margin-left: -2px;
  transition:
    color var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-docs__nav-link:hover {
  color: var(--admin-text);
  border-left-color: var(--admin-grey-300);
}
.admin-docs__main {
  min-width: 0;
  max-width: 720px;
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-main-bg);
  border-radius: var(--admin-radius-sm);
}
.admin-docs__header {
  margin-bottom: var(--admin-space-2xl);
  padding-bottom: var(--admin-space-xl);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-docs__title {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-title);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.25;
  color: var(--admin-text);
}
.admin-docs__lead {
  margin: 0;
  font-size: var(--admin-fs-body-lg);
  line-height: 1.6;
  color: var(--admin-text-secondary);
}
.admin-docs__section {
  margin-bottom: var(--admin-space-2xl);
  padding-bottom: var(--admin-space-xl);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-docs__section:last-child {
  border-bottom: none;
}
.admin-docs__section-title {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-menu);
  font-weight: 600;
  letter-spacing: -0.01em;
  color: var(--admin-text);
  scroll-margin-top: calc(var(--admin-header-height) + var(--admin-space-lg));
}
.admin-docs__subsection {
  margin: var(--admin-space-xl) 0 var(--admin-space);
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  color: var(--admin-text);
  scroll-margin-top: calc(var(--admin-header-height) + var(--admin-space-lg));
}
.admin-docs__subsection:first-child {
  margin-top: 0;
}
.admin-docs__subsubsection {
  margin: var(--admin-space-lg) 0 var(--admin-space-sm);
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text-secondary);
}
.admin-docs__main p {
  margin: 0 0 var(--admin-space);
  font-size: inherit;
  line-height: 1.7;
  color: var(--admin-text);
}
.admin-docs__main code {
  font-family: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Consolas, monospace;
  font-size: 0.9em;
  padding: 0.15em 0.45em;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  color: var(--admin-text);
  border: 1px solid var(--admin-grey-200);
}
.admin-docs__main a {
  color: var(--admin-primary);
  text-decoration: none;
  transition: color var(--admin-duration) var(--admin-ease);
}
.admin-docs__main a:hover {
  color: var(--admin-primary-hover);
  text-decoration: underline;
}
.admin-docs__list {
  margin: 0 0 var(--admin-space);
  padding-left: 1.5em;
}
.admin-docs__list li {
  margin-bottom: var(--admin-space-2xs);
  line-height: 1.65;
}
.admin-docs__list--ordered {
  list-style: decimal;
  padding-left: 1.75em;
}
.admin-docs__list--ordered li {
  margin-bottom: var(--admin-space-sm);
}
.admin-docs__table {
  width: 100%;
  margin: var(--admin-space) 0;
  border-collapse: collapse;
  font-size: var(--admin-fs-sm);
  line-height: 1.5;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  overflow: hidden;
  box-shadow: var(--admin-elevation-1);
}
.admin-docs__table thead {
  background: var(--admin-grey-50);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-docs__table th {
  padding: var(--admin-space-sm) var(--admin-space);
  font-weight: 600;
  text-align: left;
  color: var(--admin-text);
  font-size: var(--admin-fs-xs);
  text-transform: none;
  letter-spacing: 0;
}
.admin-docs__table td {
  padding: var(--admin-space-sm) var(--admin-space);
  border-bottom: 1px solid var(--admin-border-light);
  color: var(--admin-text);
  vertical-align: top;
}
.admin-docs__table td:first-child {
  color: var(--admin-text-secondary);
  font-weight: 500;
  white-space: nowrap;
  width: 1%;
}
.admin-docs__table tbody tr {
  transition: background var(--admin-duration) var(--admin-ease);
}
.admin-docs__table tbody tr:last-child td {
  border-bottom: none;
}
.admin-docs__table tbody tr:hover {
  background: var(--admin-grey-50);
}
.admin-docs__table code {
  font-size: 0.88em;
  padding: 0.12em 0.35em;
  word-break: break-all;
}
.admin-docs__hero {
  position: relative;
  overflow: hidden;
  padding: var(--admin-space-2xl);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: linear-gradient(135deg, rgba(17, 24, 39, 0.04), rgba(17, 24, 39, 0.01));
}
.admin-docs__eyebrow {
  display: inline-flex;
  align-items: center;
  margin-bottom: var(--admin-space-sm);
  padding: 0.35rem 0.7rem;
  border-radius: var(--admin-radius-full);
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.admin-docs__hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-sm);
  margin-top: var(--admin-space-lg);
}
.admin-docs__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 var(--admin-space-lg);
  border-radius: var(--admin-radius-full);
  background: var(--admin-text);
  color: #fff !important;
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  text-decoration: none;
  transition:
    transform var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
}
.admin-docs__button:hover {
  background: var(--admin-primary);
  transform: translateY(-1px);
  text-decoration: none !important;
  box-shadow: var(--admin-elevation-2);
}
.admin-docs__button--secondary {
  background: var(--admin-white);
  color: var(--admin-text) !important;
  border: 1px solid var(--admin-border-light);
}
.admin-docs__callout,
.admin-docs__tip {
  margin: 0 0 var(--admin-space-lg);
  padding: var(--admin-space-lg);
  border-radius: var(--admin-radius);
  border: 1px solid var(--admin-border-light);
}
.admin-docs__callout {
  background: rgba(15, 23, 42, 0.04);
}
.admin-docs__callout strong {
  display: inline-block;
  margin-bottom: var(--admin-space-2xs);
  color: var(--admin-text);
}
.admin-docs__callout p:last-child {
  margin-bottom: 0;
}
.admin-docs__tip {
  background: hsla(0, 0%, 100%, 0.92);
}
.admin-docs__tip strong {
  display: inline-block;
  margin-bottom: var(--admin-space-2xs);
  color: var(--admin-primary);
}
.admin-docs__tip p:last-child {
  margin-bottom: 0;
}
.admin-docs__card-grid,
.admin-docs__link-grid {
  display: grid;
  gap: var(--admin-space);
}
.admin-docs__card-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.admin-docs__link-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.admin-docs__mini-card,
.admin-docs__link-card {
  padding: var(--admin-space-lg);
  border-radius: var(--admin-radius);
  border: 1px solid var(--admin-border-light);
  background: var(--admin-card-bg);
  box-shadow: var(--admin-elevation-1);
}
.admin-docs__mini-card p:last-child {
  margin-bottom: 0;
}
.admin-docs__link-card {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-2xs);
  text-decoration: none;
  transition:
    transform var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-docs__link-card strong {
  color: var(--admin-text);
  font-size: var(--admin-fs-body);
}
.admin-docs__link-card span {
  color: var(--admin-text-secondary);
  line-height: 1.6;
}
.admin-docs__link-card:hover {
  transform: translateY(-2px);
  border-color: var(--admin-border);
  box-shadow: var(--admin-elevation-2);
  text-decoration: none !important;
}
.admin-docs--ops-manual .admin-docs__section:first-of-type {
  padding-top: 0;
}
.admin-docs__hub-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: var(--admin-space);
  margin-top: var(--admin-space-lg);
}
.admin-docs__hub-card {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-2xs);
  padding: var(--admin-space-lg);
  border-radius: var(--admin-radius);
  border: 1px solid var(--admin-border-light);
  background: var(--admin-card-bg);
  box-shadow: var(--admin-elevation-1);
  text-decoration: none;
  transition:
    transform var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-docs__hub-card strong {
  color: var(--admin-text);
  font-size: var(--admin-fs-body);
}
.admin-docs__hub-card span {
  color: var(--admin-text-secondary);
  line-height: 1.6;
}
.admin-docs__hub-card:hover {
  transform: translateY(-2px);
  border-color: var(--admin-border);
  box-shadow: var(--admin-elevation-2);
  text-decoration: none !important;
}
.admin-docs__hub-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 3.6rem;
  margin-bottom: var(--admin-space-2xs);
  border-radius: var(--admin-radius-full);
  background: var(--admin-primary-light);
  color: var(--admin-primary);
  font-size: var(--admin-fs-xl);
}
.admin-docs__section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space);
  margin-bottom: var(--admin-space);
}
.admin-docs__section-head .admin-docs__section-title {
  margin-bottom: 0;
}
.admin-docs__section-icon {
  margin-right: var(--admin-space-xs);
  color: var(--admin-primary);
}
.admin-docs__section-link {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  flex-shrink: 0;
  min-height: 3.4rem;
  padding: 0 var(--admin-space);
  border-radius: var(--admin-radius-full);
  background: var(--admin-white);
  border: 1px solid var(--admin-border-light);
  color: var(--admin-text) !important;
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  transition:
    background var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-docs__section-link i {
  font-size: 0.85em;
}
.admin-docs__section-link:hover {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
  color: var(--admin-on-primary, #fff) !important;
  text-decoration: none !important;
}
.admin-docs__badge {
  display: inline-flex;
  align-items: center;
  margin-left: var(--admin-space-xs);
  padding: 0.2rem 0.6rem;
  border-radius: var(--admin-radius-full);
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  vertical-align: middle;
}
.admin-docs__steps {
  counter-reset: admin-docs-step;
  list-style: none;
  margin: var(--admin-space) 0 var(--admin-space-lg);
  padding: 0;
}
.admin-docs__step {
  position: relative;
  display: flex;
  gap: var(--admin-space);
  padding: var(--admin-space) 0 var(--admin-space) calc(3.2rem + var(--admin-space));
  margin: 0;
}
.admin-docs__step::before {
  counter-increment: admin-docs-step;
  content: counter(admin-docs-step);
  position: absolute;
  left: 0;
  top: var(--admin-space);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: var(--admin-radius-full);
  background: var(--admin-primary);
  color: var(--admin-on-primary, #fff);
  font-size: var(--admin-fs-body);
  font-weight: 700;
  z-index: 1;
}
.admin-docs__step:not(:last-child)::after {
  content: '';
  position: absolute;
  left: 1.6rem;
  top: calc(var(--admin-space) + 3.2rem);
  bottom: 0;
  width: 2px;
  background: var(--admin-border-light);
}
.admin-docs__step-body {
  padding-top: 0.35rem;
}
.admin-docs__step-body strong {
  display: block;
  margin-bottom: var(--admin-space-3xs);
  color: var(--admin-text);
  font-size: var(--admin-fs-body-lg);
}
.admin-docs__step-body p:last-child {
  margin-bottom: 0;
}
.admin-docs__toc {
  padding: var(--admin-space) 0 var(--admin-space-xl) var(--admin-space-sm);
  margin: 0 0 0 var(--admin-space-sm);
  border-left: 1px solid var(--admin-border-light);
  background: var(--admin-main-bg);
  z-index: 2;
}
.admin-docs__toc-title {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--admin-text-muted);
}
.admin-docs__toc-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.admin-docs__toc-list li {
  margin-bottom: var(--admin-space-2xs);
}
.admin-docs__toc-link {
  display: block;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  text-decoration: none;
  padding: var(--admin-space-2xs) 0;
  transition: color var(--admin-duration) var(--admin-ease);
}
.admin-docs__toc-link:hover {
  color: var(--admin-primary);
}
@media (max-width: 992px) {
  .admin-docs {
    grid-template-columns: 1fr;
    gap: var(--admin-space-xl);
    padding: var(--admin-space) var(--admin-space);
  }
  .admin-docs__nav {
    position: static;
    max-height: none;
    overflow: visible;
    margin: 0;
    padding: 0 0 var(--admin-space);
    margin-bottom: var(--admin-space);
    border-right: none;
    border-bottom: 1px solid var(--admin-border-light);
    background: rgba(0, 0, 0, 0);
  }
  .admin-docs__main {
    max-width: none;
    padding: 0;
  }
  .admin-docs__hero {
    padding: var(--admin-space-xl);
  }
  .admin-docs__hero-actions,
  .admin-docs__link-grid,
  .admin-docs__card-grid,
  .admin-docs__hub-grid {
    grid-template-columns: 1fr;
  }
  .admin-docs__section-head {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--admin-space-sm);
  }
  .admin-docs__table {
    font-size: 1.15rem;
  }
  .admin-docs__table th,
  .admin-docs__table td {
    padding: var(--admin-space) var(--admin-space-sm);
  }
  .admin-docs__table td:first-child {
    white-space: normal;
  }
  .admin-docs__toc {
    position: static;
    max-height: none;
    overflow: visible;
    margin: 0;
    padding: var(--admin-space) 0 0;
    border-left: none;
    border-top: 1px solid var(--admin-border-light);
    background: rgba(0, 0, 0, 0);
  }
}
.admin-notifications {
  max-width: 900px;
  padding-bottom: var(--admin-space-2xl);
}
.admin-notifications__tabs {
  margin-top: var(--admin-space);
  margin-bottom: var(--admin-space);
}
.admin-notifications__filters {
  display: flex;
  align-items: flex-end;
  gap: var(--admin-space);
  margin-bottom: var(--admin-space);
}
.admin-notifications__filters .admin-form__field {
  max-width: 14rem;
}
.admin-notifications__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--admin-space);
  padding: var(--admin-space-2xl) var(--admin-space);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  color: var(--admin-text-muted);
}
.admin-notifications__empty-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--admin-grey-100);
  color: var(--admin-text-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
}
.admin-notifications__empty-text {
  margin: 0;
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
}
.admin-notifications__list {
  margin: 0;
  padding: 0;
  list-style: none;
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  overflow: hidden;
}
.admin-notifications__item {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space);
  padding: var(--admin-space) var(--admin-space-lg);
  border-bottom: 1px solid var(--admin-border-light);
  min-height: 72px;
  transition: background var(--admin-duration) var(--admin-ease);
}
.admin-notifications__item:last-child {
  border-bottom: none;
}
.admin-notifications__item:hover {
  background: var(--admin-grey-50);
}
.admin-notifications__item--unread {
  background: var(--admin-primary-soft, rgba(59, 130, 246, 0.05));
}
.admin-notifications__item--unread::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3px;
  background: var(--admin-primary);
}
.admin-notifications__item--unread:hover {
  background: var(--admin-primary-soft, rgba(59, 130, 246, 0.08));
}
.admin-notifications__item-icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: 1.05rem;
}
.admin-notifications__item--unread .admin-notifications__item-icon {
  background: var(--admin-primary-soft, rgba(59, 130, 246, 0.15));
  color: var(--admin-primary);
}
.admin-notifications__item-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-2xs);
}
.admin-notifications__item-link {
  text-decoration: none;
  color: inherit;
}
.admin-notifications__item-link:hover .admin-notifications__title {
  color: var(--admin-primary);
}
.admin-notifications__title {
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text);
  transition: color var(--admin-duration) var(--admin-ease);
}
.admin-notifications__msg {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.5;
}
.admin-notifications__meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-notifications__group-chip {
  display: inline-flex;
  align-items: center;
  padding: 0.15rem 0.5rem;
  font-size: 11px;
  font-weight: 500;
  color: var(--admin-text-secondary);
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-full);
}
.admin-notifications__time {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-notifications__unread-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--admin-primary);
  flex-shrink: 0;
}
.admin-notifications__mark-form {
  flex-shrink: 0;
  margin: 0;
}
.admin-notifications__mark-form button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  background: rgba(0, 0, 0, 0);
  border: 1px solid var(--admin-border-light);
  border-radius: 50%;
  color: var(--admin-text-muted);
  cursor: pointer;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-notifications__mark-form button:hover {
  background: var(--admin-primary);
  color: #fff;
  border-color: var(--admin-primary);
}
.admin-notifications__mark-all-form {
  display: inline-flex;
  margin: 0;
}
.admin-notifications-config__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-notifications-config__card {
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: var(--admin-space-lg);
}
.admin-notifications-config__form {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-notifications-config__head {
  display: flex;
  align-items: center;
  gap: var(--admin-space);
}
.admin-notifications-config__icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-body-lg);
}
.admin-notifications-config__title-block {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-3xs);
}
.admin-notifications-config__title {
  margin: 0;
  font-size: var(--admin-fs-body-lg);
  font-weight: 600;
  color: var(--admin-text);
}
.admin-notifications-config__group {
  display: inline-block;
  align-self: flex-start;
  padding: 2px 8px;
  border-radius: 999px;
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-xs);
}
.admin-notifications-config__enable {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text);
  cursor: pointer;
  user-select: none;
}
.admin-notifications-config__enable input[type='checkbox'] {
  width: 18px;
  height: 18px;
  accent-color: var(--admin-primary);
  cursor: pointer;
}
.admin-notifications-config__enable-label {
  font-weight: 500;
}
.admin-notifications-config__desc {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.5;
}
.admin-notifications-config__field {
  margin: 0;
}
.admin-notifications-config__field[hidden] {
  display: none;
}
.admin-notifications-config__actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--admin-space-2xs);
  padding-top: var(--admin-space-2xs);
  border-top: 1px dashed var(--admin-border-light);
}
.admin-notifications-config__empty {
  margin: var(--admin-space-lg) 0;
  padding: var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px dashed var(--admin-border-light);
  border-radius: var(--admin-radius);
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-body);
  text-align: center;
}
.admin-notifications-config__empty code {
  padding: 2px 6px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-sm, 4px);
  font-family: var(--admin-font-mono, ui-monospace, SFMono-Regular, monospace);
  font-size: 0.92em;
}
.admin-analytics {
  --an-accent: var(--admin-primary);
}
.admin-analytics .analytics-header__range {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-2xs);
  align-items: center;
}
.admin-analytics .analytics-header__chip {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-3xs);
  padding: var(--admin-space-3xs) var(--admin-space-sm);
  border-radius: var(--admin-radius-full);
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  background: var(--admin-primary);
  color: var(--admin-on-primary);
  white-space: nowrap;
}
.admin-analytics .analytics-header__chip i {
  font-size: 0.92em;
  opacity: 0.85;
}
.admin-analytics .analytics-header__chip--soft {
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
}
.admin-analytics .analytics-header__chip--soft i {
  color: var(--admin-text-muted);
  opacity: 1;
}
.admin-analytics .analytics-header__dash {
  opacity: 0.65;
}
.admin-analytics .analytics-manual {
  margin-bottom: var(--admin-space-lg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  background: var(--admin-card-bg);
  overflow: hidden;
  box-shadow: var(--admin-elevation-1);
}
.admin-analytics .analytics-manual__summary {
  display: flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  padding: var(--admin-space-sm) var(--admin-space-lg);
  cursor: pointer;
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text);
  background: var(--admin-grey-50);
  list-style: none;
}
.admin-analytics .analytics-manual__summary::-webkit-details-marker {
  display: none;
}
.admin-analytics .analytics-manual__summary:hover {
  background: var(--admin-grey-100);
}
.admin-analytics .analytics-manual__summary .fa-circle-question {
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-manual__summary .analytics-manual__chev {
  margin-left: auto;
  transition: transform 0.2s ease;
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-manual[open] .analytics-manual__chev {
  transform: rotate(180deg);
}
.admin-analytics .analytics-manual__body {
  padding: var(--admin-space-lg) var(--admin-space-xl) var(--admin-space-xl);
  border-top: 1px solid var(--admin-border-light);
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
}
.admin-analytics .analytics-manual__body p {
  margin: 0 0 var(--admin-space-sm);
}
.admin-analytics .analytics-manual__body ul {
  margin: 0 0 var(--admin-space) 1.3em;
  padding: 0;
}
.admin-analytics .analytics-manual__body ul li {
  margin-bottom: var(--admin-space-3xs);
}
.admin-analytics .analytics-manual__body strong {
  color: var(--admin-text);
}
.admin-analytics .analytics-manual__body code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.92em;
  background: var(--admin-grey-100);
  padding: 0.05em 0.35em;
  border-radius: var(--admin-radius-xs);
  color: var(--admin-text);
}
.admin-analytics .analytics-manual__h {
  margin: var(--admin-space-lg) 0 var(--admin-space-2xs);
  font-size: var(--admin-fs-body-lg);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-analytics .analytics-manual__h:first-child {
  margin-top: 0;
}
.admin-analytics .analytics-manual__code {
  margin: 0 0 var(--admin-space);
  padding: var(--admin-space-sm) var(--admin-space);
  background: var(--admin-grey-900);
  color: var(--admin-grey-200);
  border-radius: var(--admin-radius-sm);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: var(--admin-fs-sm);
  overflow-x: auto;
  white-space: pre;
}
.admin-analytics .analytics-toolbar {
  display: grid;
  gap: var(--admin-space-sm);
  padding: var(--admin-space) var(--admin-space-lg);
  margin-bottom: var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-elevation-1);
}
.admin-analytics .analytics-toolbar__main {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--admin-space-sm) var(--admin-space-lg);
}
.admin-analytics .analytics-toolbar__sub {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-sm) var(--admin-space-lg);
  padding-top: var(--admin-space-sm);
  border-top: 1px dashed var(--admin-border);
}
.admin-analytics .analytics-fg {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-2xs);
}
.admin-analytics .analytics-fg__label {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-3xs);
  font-size: var(--admin-fs-sm);
  font-weight: 800;
  color: var(--admin-text-muted);
  letter-spacing: -0.01em;
  white-space: nowrap;
}
.admin-analytics .analytics-fg__label i {
  font-size: 0.95em;
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-seg {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 3px;
  padding: 3px;
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-full);
}
.admin-analytics .analytics-seg__item {
  display: inline-flex;
  align-items: center;
  padding: var(--admin-space-3xs) var(--admin-space-sm);
  border-radius: var(--admin-radius-full);
  background: rgba(0, 0, 0, 0);
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  white-space: nowrap;
  transition:
    background-color 0.15s ease,
    color 0.15s ease,
    box-shadow 0.15s ease;
}
.admin-analytics .analytics-seg__item:hover {
  background: var(--admin-white);
  color: var(--admin-text);
}
.admin-analytics .analytics-seg__item.is-active {
  background: var(--admin-primary);
  color: var(--admin-on-primary);
  font-weight: 700;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
}
.admin-analytics .analytics-toolbar__dates {
  display: flex;
  align-items: center;
  gap: var(--admin-space-2xs);
}
.admin-analytics .analytics-toolbar__date {
  padding: var(--admin-space-3xs) var(--admin-space-2xs);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text);
  background: var(--admin-white);
}
.admin-analytics .analytics-toolbar__tilde {
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-summary {
  margin-bottom: var(--admin-space-lg);
  padding: var(--admin-space-lg);
  background: linear-gradient(180deg, var(--admin-grey-50), var(--admin-white));
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-elevation-1);
}
.admin-analytics .analytics-summary__head {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  margin-bottom: var(--admin-space-sm);
  padding-bottom: var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-analytics .analytics-summary__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.6rem;
  height: 2.6rem;
  flex: 0 0 auto;
  border-radius: var(--admin-radius);
  background: var(--admin-primary);
  color: var(--admin-on-primary);
  font-size: var(--admin-fs-body);
}
.admin-analytics .analytics-summary__title {
  margin: 0;
  font-size: var(--admin-fs-body-xl);
  font-weight: 800;
  color: var(--admin-text);
}
.admin-analytics .analytics-summary__sub {
  margin: 1px 0 0;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-summary__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space-2xs) var(--admin-space-lg);
}
.admin-analytics .analytics-summary__item {
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space-2xs);
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
  line-height: 1.5;
}
.admin-analytics .analytics-summary__item i {
  margin-top: 0.2em;
  color: var(--admin-success-text);
  font-size: 0.95em;
  flex: 0 0 auto;
}
.admin-analytics .analytics-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--admin-space);
  margin-bottom: var(--admin-space);
}
.admin-analytics .analytics-kpi {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto auto;
  column-gap: var(--admin-space-sm);
  row-gap: var(--admin-space-3xs);
  align-items: center;
  padding: var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-elevation-1);
  overflow: hidden;
  transition:
    box-shadow 0.2s ease,
    transform 0.2s ease;
}
.admin-analytics .analytics-kpi:hover {
  box-shadow: var(--admin-elevation-2);
  transform: translateY(-1px);
}
.admin-analytics .analytics-kpi--accent {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
}
.admin-analytics .analytics-kpi--accent .analytics-kpi__label,
.admin-analytics .analytics-kpi--accent .analytics-kpi__hint {
  color: color-mix(in srgb, var(--admin-on-primary, #fff) 70%, transparent);
}
.admin-analytics .analytics-kpi--accent .analytics-kpi__value {
  color: var(--admin-on-primary, #fff);
}
.admin-analytics .analytics-kpi--accent .analytics-kpi__icon {
  background: color-mix(in srgb, var(--admin-on-primary, #fff) 14%, transparent);
  color: var(--admin-on-primary, #fff);
}
.admin-analytics .analytics-kpi--accent .analytics-kpi__delta--none {
  color: color-mix(in srgb, var(--admin-on-primary, #fff) 50%, transparent);
}
.admin-analytics .analytics-kpi__icon {
  grid-row: 1 / span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: var(--admin-radius);
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  font-size: var(--admin-fs-menu);
}
.admin-analytics .analytics-kpi__label {
  align-self: end;
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-kpi__hint {
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  color: var(--admin-grey-500);
}
.admin-analytics .analytics-kpi__value {
  align-self: start;
  font-size: var(--admin-fs-display);
  font-weight: 800;
  line-height: 1.05;
  color: var(--admin-text);
  letter-spacing: -0.02em;
}
.admin-analytics .analytics-kpi__deltawrap {
  grid-column: 1/-1;
  margin-top: var(--admin-space-3xs);
}
.admin-analytics .analytics-kpi__delta {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-3xs);
  padding: 2px var(--admin-space-2xs);
  border-radius: var(--admin-radius-full);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
}
.admin-analytics .analytics-kpi__delta--up {
  background: var(--admin-success-bg);
  color: var(--admin-success-text);
}
.admin-analytics .analytics-kpi__delta--down {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
}
.admin-analytics .analytics-kpi__delta--flat {
  background: var(--admin-grey-100);
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-kpi__delta--none {
  padding: 0;
  background: rgba(0, 0, 0, 0);
  color: var(--admin-grey-500);
  font-weight: 600;
}
.admin-analytics .analytics-kpi__delta-cap {
  font-weight: 500;
  color: inherit;
  opacity: 0.7;
}
.admin-analytics .analytics-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--admin-space);
  margin-bottom: var(--admin-space-lg);
}
.admin-analytics .analytics-metric {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
}
.admin-analytics .analytics-metric__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  flex: 0 0 auto;
  border-radius: var(--admin-radius-sm);
  background: var(--admin-grey-100);
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-body);
}
.admin-analytics .analytics-metric__text {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.admin-analytics .analytics-metric__label {
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-metric__value {
  font-size: var(--admin-fs-menu);
  font-weight: 800;
  line-height: 1.1;
  color: var(--admin-text);
}
.admin-analytics .analytics-metric__hint {
  margin-left: auto;
  font-size: var(--admin-fs-xs);
  color: var(--admin-grey-500);
  white-space: nowrap;
}
.admin-analytics .analytics-grid {
  display: grid;
  gap: var(--admin-space);
  margin-bottom: var(--admin-space);
}
.admin-analytics .analytics-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.admin-analytics .analytics-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.admin-analytics .analytics-card {
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  margin-bottom: var(--admin-space);
  overflow: hidden;
  box-shadow: var(--admin-elevation-1);
}
.admin-analytics .analytics-card--wide {
  width: 100%;
}
.admin-analytics .analytics-card__header {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space) var(--admin-space-lg);
  border-bottom: 1px solid var(--admin-border-light);
  background: linear-gradient(180deg, var(--admin-grey-50), var(--admin-white));
}
.admin-analytics .analytics-card__ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.2rem;
  height: 2.2rem;
  flex: 0 0 auto;
  border-radius: var(--admin-radius-sm);
  background: var(--admin-primary);
  color: var(--admin-on-primary);
  font-size: var(--admin-fs-body);
}
.admin-analytics .analytics-card__title {
  margin: 0;
  font-size: var(--admin-fs-body-xl);
  font-weight: 800;
  color: var(--admin-text);
}
.admin-analytics .analytics-card__desc {
  margin: 1px 0 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-card__body {
  padding: var(--admin-space-lg);
  position: relative;
}
.admin-analytics .analytics-card__body--flush {
  padding: 0;
}
.admin-analytics .analytics-chart-canvas {
  width: 100% !important;
  min-height: 240px;
  max-height: 340px;
}
.admin-analytics .analytics-funnel {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--admin-space-sm);
}
.admin-analytics .analytics-funnel__empty {
  text-align: center;
  color: var(--admin-text-muted);
  padding: var(--admin-space-2xl);
}
.admin-analytics .analytics-funnel__row {
  display: grid;
  grid-template-columns: 130px 1fr 120px;
  align-items: center;
  gap: var(--admin-space-sm);
}
.admin-analytics .analytics-funnel__label {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  font-weight: 700;
}
.admin-analytics .analytics-funnel__bar {
  height: 24px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-sm);
  overflow: hidden;
}
.admin-analytics .analytics-funnel__bar span {
  display: block;
  height: 100%;
  min-width: 4px;
  background: linear-gradient(90deg, var(--admin-grey-600), var(--admin-grey-900));
  border-radius: var(--admin-radius-sm);
  transition: width 0.4s ease;
}
.admin-analytics .analytics-funnel__meta {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: var(--admin-space-3xs);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-funnel__meta strong {
  color: var(--admin-text);
  font-size: var(--admin-fs-body-lg);
  font-weight: 800;
}
.admin-analytics .analytics-funnel__meta em {
  font-style: normal;
}
.admin-analytics .analytics-table {
  margin: 0;
}
.admin-analytics .analytics-table th.num,
.admin-analytics .analytics-table td.num {
  text-align: right;
  white-space: nowrap;
}
.admin-analytics .analytics-table td.empty {
  text-align: center;
  color: var(--admin-text-muted);
  padding: var(--admin-space-2xl);
}
.admin-analytics .analytics-table tbody tr:hover {
  background: var(--admin-grey-50);
}
.admin-analytics .analytics-path {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text);
  word-break: break-all;
}
.admin-analytics .analytics-rate {
  display: inline-block;
  padding: 1px var(--admin-space-2xs);
  border-radius: var(--admin-radius-full);
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-rate.is-positive {
  background: var(--admin-success-bg);
  color: var(--admin-success-text);
}
.admin-analytics .analytics-heatmap {
  display: grid;
  gap: 3px;
  overflow-x: auto;
}
.admin-analytics .analytics-heatmap__hours,
.admin-analytics .analytics-heatmap__row {
  display: grid;
  grid-template-columns: 44px repeat(24, minmax(20px, 1fr));
  gap: 3px;
  align-items: center;
}
.admin-analytics .analytics-heatmap__hour-spacer,
.admin-analytics .analytics-heatmap__weekday {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  text-align: center;
  font-weight: 700;
}
.admin-analytics .analytics-heatmap__hour {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  text-align: center;
}
.admin-analytics .analytics-heatmap__cell {
  aspect-ratio: 1/1;
  min-height: 22px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8rem;
  font-weight: 600;
  color: rgba(15, 23, 42, 0.7);
  background: var(--admin-grey-100);
}
.admin-analytics .analytics-heatmap__cell.has-value {
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.04);
}
.admin-analytics .analytics-heatmap__legend {
  display: flex;
  align-items: center;
  gap: var(--admin-space-3xs);
  justify-content: flex-end;
  margin-top: var(--admin-space-sm);
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-heatmap__legend i {
  width: 16px;
  height: 16px;
  border-radius: 3px;
  border: 1px solid rgba(0, 0, 0, 0.06);
}
.admin-analytics .analytics-heatmap__legend span:first-child {
  margin-right: var(--admin-space-3xs);
}
.admin-analytics .analytics-heatmap__legend span:last-child {
  margin-left: var(--admin-space-3xs);
}
.admin-analytics .analytics-heatmap__legend-step--1 {
  background: color-mix(in srgb, var(--admin-text) 10%, transparent);
}
.admin-analytics .analytics-heatmap__legend-step--2 {
  background: color-mix(in srgb, var(--admin-text) 30%, transparent);
}
.admin-analytics .analytics-heatmap__legend-step--3 {
  background: color-mix(in srgb, var(--admin-text) 55%, transparent);
}
.admin-analytics .analytics-heatmap__legend-step--4 {
  background: color-mix(in srgb, var(--admin-text) 80%, transparent);
}
.admin-analytics .analytics-tabs {
  margin-top: var(--admin-space);
}
.admin-analytics .analytics-condbar {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-2xs);
  align-items: center;
  margin-bottom: var(--admin-space-sm);
}
.admin-analytics .analytics-realtime {
  margin-bottom: var(--admin-space-lg);
}
.admin-analytics .analytics-realtime__head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-2xs);
  margin-bottom: var(--admin-space-sm);
  padding: 0 var(--admin-space-3xs);
}
.admin-analytics .analytics-realtime__dot {
  width: 9px;
  height: 9px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--admin-success);
  box-shadow: 0 0 0 0 rgba(var(--admin-success-rgb), 0.45);
  animation: analyticsPulse 2s infinite;
}
@keyframes analyticsPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(var(--admin-success-rgb), 0.45);
  }
  70% {
    box-shadow: 0 0 0 8px rgba(var(--admin-success-rgb), 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(var(--admin-success-rgb), 0);
  }
}
.admin-analytics .analytics-realtime__title {
  font-size: var(--admin-fs-body-lg);
  font-weight: 800;
  color: var(--admin-text);
}
.admin-analytics .analytics-realtime__sub {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-realtime__sub strong {
  color: var(--admin-text);
  font-weight: 800;
}
.admin-analytics .analytics-realtime__nums {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--admin-space);
  margin-bottom: var(--admin-space);
}
.admin-analytics .analytics-realtime__num {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-3xs);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-elevation-1);
}
.admin-analytics .analytics-realtime__num.is-accent {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
}
.admin-analytics .analytics-realtime__num.is-accent .analytics-realtime__num-value {
  color: var(--admin-on-primary);
}
.admin-analytics .analytics-realtime__num.is-accent .analytics-realtime__num-label {
  color: hsla(0, 0%, 100%, 0.7);
}
.admin-analytics .analytics-realtime__num.is-accent .analytics-realtime__num-ico {
  color: hsla(0, 0%, 100%, 0.85);
}
.admin-analytics .analytics-realtime__num-ico {
  position: absolute;
  top: var(--admin-space);
  right: var(--admin-space-lg);
  font-size: var(--admin-fs-body);
  color: var(--admin-grey-400);
}
.admin-analytics .analytics-realtime__num-label {
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-realtime__num-value {
  font-size: var(--admin-fs-subtitle);
  font-weight: 800;
  line-height: 1.05;
  color: var(--admin-text);
  letter-spacing: -0.02em;
}
.admin-analytics .analytics-realtime__panel {
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-elevation-1);
}
.admin-analytics .analytics-realtime__panel-head {
  display: flex;
  align-items: center;
  gap: var(--admin-space-3xs);
  margin-bottom: var(--admin-space-sm);
  padding-bottom: var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-border-light);
  font-size: var(--admin-fs-sm);
  font-weight: 800;
  color: var(--admin-text-secondary);
}
.admin-analytics .analytics-realtime__panel-head i {
  color: var(--admin-warn);
}
.admin-analytics .analytics-realtime__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 var(--admin-space-2xl);
}
.admin-analytics .analytics-realtime__list li {
  display: flex;
  align-items: baseline;
  gap: var(--admin-space-2xs);
  padding: var(--admin-space-3xs) 0;
  border-bottom: 1px dashed var(--admin-border-light);
  font-size: var(--admin-fs-sm);
}
.admin-analytics .analytics-realtime__list li .analytics-path {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-analytics .analytics-realtime__list li em {
  font-style: normal;
  font-weight: 800;
  color: var(--admin-text);
  flex: 0 0 auto;
}
.admin-analytics .analytics-realtime__rank {
  flex: 0 0 1.4rem;
  text-align: center;
  font-size: var(--admin-fs-xs);
  font-weight: 800;
  color: var(--admin-text-muted);
  font-variant-numeric: tabular-nums;
}
.admin-analytics .analytics-realtime__empty {
  grid-column: 1/-1;
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-sm);
  padding: var(--admin-space) 0;
  border: 0;
}
.admin-analytics .analytics-table th.rank,
.admin-analytics .analytics-table td.rank {
  width: 2.6rem;
  text-align: center;
  color: var(--admin-text-muted);
  font-variant-numeric: tabular-nums;
}
.admin-analytics .analytics-rate.is-warn {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
}
.admin-analytics .analytics-muted {
  color: var(--admin-text-muted);
  font-weight: 600;
}
.admin-analytics .analytics-note {
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space-2xs);
  margin: 0 0 var(--admin-space-lg);
  padding: var(--admin-space-sm) var(--admin-space);
  background: var(--admin-grey-50);
  border: 1px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
.admin-analytics .analytics-note i {
  margin-top: 0.15em;
  color: var(--admin-text-muted);
  flex: 0 0 auto;
}
.admin-analytics .analytics-note code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.92em;
  background: var(--admin-grey-100);
  padding: 0.05em 0.35em;
  border-radius: var(--admin-radius-xs);
  color: var(--admin-text);
}
.admin-analytics .analytics-table td.empty code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.92em;
  background: var(--admin-grey-100);
  padding: 0.05em 0.35em;
  border-radius: var(--admin-radius-xs);
  color: var(--admin-text);
}
.admin-analytics .analytics-metrics--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 1100px) {
  .admin-analytics .analytics-kpis,
  .admin-analytics .analytics-metrics,
  .admin-analytics .analytics-realtime__nums {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .admin-analytics .analytics-metrics--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .admin-analytics .analytics-realtime__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 992px) {
  .admin-analytics .analytics-grid--2,
  .admin-analytics .analytics-grid--3 {
    grid-template-columns: 1fr;
  }
  .admin-analytics .analytics-summary__list {
    grid-template-columns: 1fr;
  }
  .admin-analytics .analytics-funnel__row {
    grid-template-columns: 96px 1fr 96px;
  }
  .admin-analytics .analytics-header__range {
    width: 100%;
  }
}
@media (max-width: 560px) {
  .admin-analytics .analytics-kpis,
  .admin-analytics .analytics-metrics,
  .admin-analytics .analytics-metrics--3,
  .admin-analytics .analytics-realtime__nums,
  .admin-analytics .analytics-realtime__list {
    grid-template-columns: 1fr;
  }
  .admin-analytics .analytics-kpi__value {
    font-size: var(--admin-fs-subtitle);
  }
  .admin-analytics .analytics-metric__hint {
    display: none;
  }
  .admin-analytics .analytics-toolbar {
    padding: var(--admin-space) var(--admin-space);
  }
}
.admin-features {
  max-width: 880px;
}
.admin-features__section {
  margin-top: var(--admin-space-2xl);
}
.admin-features__section:first-of-type {
  margin-top: var(--admin-space-xl);
}
.admin-features__section-title {
  margin: 0 0 var(--admin-space-sm);
  padding-bottom: var(--admin-space-2xs);
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text-secondary);
  letter-spacing: 0.02em;
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-features__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-2xs);
}
.admin-features__item {
  display: flex;
  align-items: center;
  gap: var(--admin-space);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  transition:
    border-color var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease);
}
.admin-features__item:hover {
  border-color: var(--admin-border);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}
.admin-features__item.is-off {
  background: var(--admin-grey-50);
}
.admin-features__item.is-off .admin-features__item-icon {
  opacity: 0.45;
}
.admin-features__item.is-off .admin-features__item-label {
  color: var(--admin-text-secondary);
}
.admin-features__item.is-off .admin-features__item-state {
  color: var(--admin-text-muted);
}
.admin-features__item.is-on {
  border-left: 3px solid var(--admin-success);
  padding-left: calc(var(--admin-space-lg) - 2px);
}
.admin-features__item.is-core {
  border-left: 3px solid var(--admin-primary);
  padding-left: calc(var(--admin-space-lg) - 2px);
}
.admin-features__item-icon {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--admin-radius-sm);
  background: color-mix(in srgb, var(--admin-primary) 8%, transparent);
  color: var(--admin-primary);
  font-size: 1.7rem;
  transition: opacity var(--admin-duration) var(--admin-ease);
}
.is-off .admin-features__item-icon {
  background: var(--admin-grey-100);
  color: var(--admin-text-muted);
}
.admin-features__item-info {
  flex: 1 1 auto;
  min-width: 0;
}
.admin-features__item-heading {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-sm);
  margin-bottom: var(--admin-space-3xs);
}
.admin-features__item-label {
  font-size: var(--admin-fs-lg);
  font-weight: 600;
  color: var(--admin-text);
  line-height: 1.4;
}
.admin-features__item-state {
  display: inline-flex;
  align-items: center;
  padding: 1px 8px;
  font-size: var(--admin-fs-xs);
  font-weight: 500;
  color: var(--admin-success-text, var(--admin-success));
  background: color-mix(in srgb, var(--admin-success) 12%, transparent);
  border-radius: var(--admin-radius-full);
}
.is-off .admin-features__item-state {
  color: var(--admin-text-muted);
  background: var(--admin-grey-100);
}
.admin-features__item-desc {
  margin: 0;
  font-size: var(--admin-fs-body);
  color: var(--admin-text-secondary);
  line-height: 1.55;
}
.admin-features__item-toggle {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}
.admin-features .admin-toggle-switch.is-on .admin-toggle-switch__hint {
  color: var(--admin-success-text);
}
.admin-features .admin-toggle-switch.is-off .admin-toggle-switch__hint {
  color: var(--admin-text-muted);
}
.admin-features__badge {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  padding: var(--admin-space-3xs) var(--admin-space-sm);
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  letter-spacing: 0.04em;
  border-radius: var(--admin-radius-full);
  white-space: nowrap;
}
.admin-features__badge i {
  font-size: 1.1rem;
}
.admin-features__badge--core {
  background: color-mix(in srgb, var(--admin-primary) 12%, transparent);
  color: var(--admin-primary);
  border: 1px solid color-mix(in srgb, var(--admin-primary) 25%, transparent);
}
.admin-features__empty {
  padding: var(--admin-space-xl);
  background: var(--admin-card-bg);
  border: 1px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-body);
  text-align: center;
}
@media (max-width: 992px) {
  .admin-features__item {
    flex-wrap: wrap;
    padding: var(--admin-space) var(--admin-space);
  }
  .admin-features__item-toggle {
    width: 100%;
    padding-top: var(--admin-space-xs);
    justify-content: flex-end;
  }
}
.admin-prefs {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-2xl);
}
.admin-prefs__section {
  background: var(--admin-card-bg, var(--admin-surface));
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  overflow: hidden;
}
.admin-prefs__section-head {
  display: flex;
  align-items: center;
  gap: var(--admin-space);
  padding: var(--admin-space-lg) var(--admin-space-xl);
  background: linear-gradient(180deg, var(--admin-grey-50, var(--admin-surface)) 0%, transparent 100%);
  border-bottom: 1px solid var(--admin-border);
}
.admin-prefs__section-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: var(--admin-radius);
  background: var(--admin-primary-light, var(--admin-grey-100));
  color: var(--admin-primary);
  font-size: 1.6rem;
}
.admin-prefs__section-headtxt {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-3xs);
}
.admin-prefs__section-title {
  margin: 0;
  font-size: var(--admin-fs-xl);
  font-weight: 700;
  color: var(--admin-text);
  letter-spacing: -0.01em;
}
.admin-prefs__section-desc {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.5;
}
.admin-prefs__section-body {
  display: flex;
  flex-direction: column;
}
.admin-prefs__block {
  padding: var(--admin-space-xl);
}
.admin-prefs__block + .admin-prefs__block {
  border-top: 1px solid var(--admin-border-light, var(--admin-border));
}
.admin-prefs__block-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--admin-space-xl);
}
.admin-prefs__block-headtxt {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-3xs);
}
.admin-prefs__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-3xs);
  align-self: flex-start;
  padding: 0.2rem 0.6rem;
  margin-bottom: var(--admin-space-3xs);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--admin-text-secondary);
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-full);
}
.admin-prefs__eyebrow > i {
  font-size: 0.9em;
}
.admin-prefs__eyebrow--light {
  color: #b45309;
  background: #fef3c7;
}
.admin-prefs__eyebrow--dark {
  color: #4338ca;
  background: #e0e7ff;
}
.admin-prefs__block-title {
  margin: 0;
  font-size: var(--admin-fs-lg);
  font-weight: 700;
  color: var(--admin-text);
  letter-spacing: -0.005em;
}
.admin-prefs__block-desc {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.55;
  max-width: 64ch;
}
.admin-prefs__block-control {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
.admin-prefs__block--variants .admin-prefs__block-head {
  margin-bottom: var(--admin-space-lg);
}
.admin-prefs__mode-group {
  display: inline-flex;
  padding: 0.3rem;
  background: var(--admin-grey-100, var(--admin-surface));
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  gap: 0.2rem;
}
.admin-prefs__mode-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  padding: 0.55rem 1.1rem;
  background: rgba(0, 0, 0, 0);
  border: none;
  border-radius: var(--admin-radius-sm);
  font: inherit;
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text-secondary);
  cursor: pointer;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-prefs__mode-btn > i {
  font-size: 1em;
}
.admin-prefs__mode-btn:hover {
  background: var(--admin-state-hover);
  color: var(--admin-text);
}
.admin-prefs__mode-btn:focus-visible {
  outline: none;
  box-shadow: var(--admin-focus-ring);
}
.admin-prefs__mode-btn[aria-checked='true'] {
  background: var(--admin-main-bg, #fff);
  color: var(--admin-primary);
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.08),
    0 0 0 1px var(--admin-primary-border, var(--admin-border));
}
.admin-prefs__theme-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  gap: var(--admin-space);
}
@media (max-width: 991px) {
  .admin-prefs__theme-grid {
    grid-template-columns: repeat(2, minmax(160px, 1fr));
  }
}
@media (max-width: 767px) {
  .admin-prefs__theme-grid {
    grid-template-columns: 1fr;
  }
}
.admin-prefs__theme-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
  padding: var(--admin-space);
  background: var(--admin-main-bg, var(--admin-surface));
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: var(--admin-text);
  transition:
    transform var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease),
    box-shadow var(--admin-duration) var(--admin-ease),
    background var(--admin-duration) var(--admin-ease);
}
.admin-prefs__theme-card:hover {
  border-color: var(--admin-primary-border, var(--admin-primary));
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}
.admin-prefs__theme-card:focus-visible {
  outline: none;
  border-color: var(--admin-primary);
  box-shadow: 0 0 0 3px var(--admin-state-focus, rgba(0, 118, 203, 0.25));
}
.admin-prefs__theme-card[aria-checked='true'] {
  border-color: var(--admin-primary);
  background: var(--admin-primary-light, var(--admin-surface));
  box-shadow: 0 0 0 1px var(--admin-primary);
}
.admin-prefs__theme-card[aria-checked='true'] .admin-prefs__theme-card-check {
  opacity: 1;
  transform: scale(1);
}
.admin-prefs__theme-card-preview {
  display: flex;
  align-items: center;
  gap: 4px;
  height: 52px;
  padding: 0 var(--admin-space-2xs);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface);
  border: 1px solid var(--admin-border);
  overflow: hidden;
}
.admin-prefs__theme-card-swatch {
  flex: 1;
  height: 28px;
  border-radius: 4px;
  box-shadow:
    inset 0 0 0 1px rgba(0, 0, 0, 0.1),
    inset 0 0 0 2px hsla(0, 0%, 100%, 0.06);
}
.admin-prefs__theme-card-label {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  font-size: var(--admin-fs-base);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-prefs__theme-card-label > i {
  font-size: 0.95em;
  color: var(--admin-text-secondary);
}
.admin-prefs__theme-card-desc {
  display: block;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  line-height: 1.45;
}
.admin-prefs__theme-card-check {
  position: absolute;
  top: var(--admin-space-xs);
  right: var(--admin-space-xs);
  font-size: 1.4rem;
  color: var(--admin-primary);
  background: var(--admin-main-bg, #fff);
  border-radius: 50%;
  opacity: 0;
  transform: scale(0.85);
  transition:
    opacity var(--admin-duration) var(--admin-ease),
    transform var(--admin-duration) var(--admin-ease);
}
.admin-prefs__block--brand-pairs .admin-prefs__block-head {
  margin-bottom: var(--admin-space-lg);
}
.admin-prefs__pair-cols {
  display: grid;
  grid-template-columns: 10rem 1fr 1fr;
  gap: var(--admin-space);
  padding: 0 var(--admin-space-xl) var(--admin-space-xs);
  margin-bottom: var(--admin-space-xs);
}
.admin-prefs__pair-col-label {
  display: flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--admin-text-muted);
}
.admin-prefs__pair-col-label > i {
  font-size: 0.9em;
}
.admin-prefs__brand-row {
  display: grid;
  grid-template-columns: 10rem 1fr 1fr;
  gap: var(--admin-space);
  padding: 0 var(--admin-space-xl) var(--admin-space);
  align-items: start;
}
.admin-prefs__brand-row + .admin-prefs__brand-row {
  border-top: 1px solid var(--admin-border-light, var(--admin-border));
  padding-top: var(--admin-space);
}
.admin-prefs__brand-name {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--admin-space-2xs);
  padding-top: var(--admin-space);
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text-secondary);
}
.admin-prefs__brand-name > i {
  font-size: 1.4rem;
  color: var(--admin-text-muted);
}
@media (max-width: 1279px) {
  .admin-prefs__pair-cols {
    grid-template-columns: 7rem 1fr 1fr;
  }
  .admin-prefs__brand-row {
    grid-template-columns: 7rem 1fr 1fr;
  }
  .admin-prefs__brand-name {
    font-size: var(--admin-fs-xs);
  }
}
@media (max-width: 991px) {
  .admin-prefs__section-head {
    padding: var(--admin-space) var(--admin-space-lg);
  }
  .admin-prefs__block {
    padding: var(--admin-space-lg);
  }
  .admin-prefs__block-head {
    flex-direction: column;
    align-items: stretch;
    gap: var(--admin-space);
  }
  .admin-prefs__block-control {
    width: 100%;
  }
  .admin-prefs__mode-group {
    width: 100%;
  }
  .admin-prefs__mode-btn {
    flex: 1;
    justify-content: center;
  }
  .admin-prefs__pair-cols {
    display: none;
  }
  .admin-prefs__brand-row {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    padding-inline: var(--admin-space-lg);
  }
  .admin-prefs__brand-name {
    grid-column: 1/-1;
    flex-direction: row;
    align-items: center;
    padding-top: 0;
  }
}
@media (max-width: 767px) {
  .admin-prefs__brand-row {
    grid-template-columns: 1fr;
  }
  .admin-prefs__brand-name {
    grid-column: 1;
  }
}
.admin-ops {
  max-width: 1080px;
  margin: 0 auto;
  padding: var(--admin-space-xl) var(--admin-space-lg);
}
.admin-ops__header {
  margin-bottom: var(--admin-space-lg);
}
.admin-ops__title {
  margin: 0 0 var(--admin-space-sm);
  font-size: var(--admin-fs-title);
  font-weight: 700;
  color: var(--admin-text);
  line-height: 1.25;
}
.admin-ops__desc {
  margin: 0;
  font-size: var(--admin-fs-body);
  line-height: 1.65;
  color: var(--admin-text-secondary);
}
.admin-ops__desc code {
  padding: 1px 6px;
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.9em;
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text);
}
.admin-ops__tabs {
  display: flex;
  gap: 2px;
  margin-bottom: var(--admin-space-lg);
  border-bottom: 2px solid var(--admin-border-light);
}
.admin-ops__tab {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  padding: var(--admin-space-sm) var(--admin-space);
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text-secondary);
  background: rgba(0, 0, 0, 0);
  border: none;
  border-bottom: 2px solid rgba(0, 0, 0, 0);
  margin-bottom: -2px;
  cursor: pointer;
  transition:
    color var(--admin-duration) var(--admin-ease),
    border-color var(--admin-duration) var(--admin-ease);
}
.admin-ops__tab i {
  font-size: 0.95em;
}
.admin-ops__tab:hover {
  color: var(--admin-text);
}
.admin-ops__tab.is-active,
.admin-ops__tab[aria-selected='true'] {
  color: var(--admin-primary);
  border-bottom-color: var(--admin-primary);
}
.admin-ops__tab:focus-visible {
  outline: var(--admin-focus-ring);
  outline-offset: 2px;
  border-radius: var(--admin-radius-sm) var(--admin-radius-sm) 0 0;
}
.admin-ops__tab-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  color: var(--admin-warn-text);
  background: var(--admin-warn-bg);
  border-radius: 999px;
}
.admin-ops__tab-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--admin-warn);
  flex-shrink: 0;
}
.admin-ops__tab-dot--danger {
  background: var(--admin-error);
}
.admin-ops__panel[hidden] {
  display: none;
}
.admin-ops__result {
  margin-bottom: var(--admin-space-xl);
  padding: var(--admin-space) var(--admin-space-lg);
  border-radius: var(--admin-radius);
  border: 1px solid rgba(0, 0, 0, 0);
}
.admin-ops__result.is-ok {
  background: var(--admin-success-bg);
  border-color: rgba(var(--admin-success-rgb), 0.35);
  color: var(--admin-success-text);
}
.admin-ops__result.is-fail {
  background: var(--admin-error-bg);
  border-color: rgba(var(--admin-error-rgb), 0.35);
  color: var(--admin-error-text);
}
.admin-ops__result-title {
  display: flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  margin: 0;
  font-size: var(--admin-fs-body-lg);
  font-weight: 700;
}
.admin-ops__result-title i {
  font-size: 1.1em;
}
.admin-ops__result-log {
  margin: var(--admin-space-sm) 0 0;
  padding: var(--admin-space-sm) var(--admin-space);
  max-height: 22rem;
  overflow: auto;
  background: var(--admin-grey-900);
  color: var(--admin-grey-100);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: var(--admin-fs-xs);
  line-height: 1.6;
  white-space: pre;
  border-radius: var(--admin-radius-sm);
}
.admin-ops__inline-log {
  margin-top: var(--admin-space-sm);
  padding: var(--admin-space-sm) var(--admin-space);
  max-height: 16rem;
  overflow: auto;
  background: var(--admin-grey-900);
  color: var(--admin-grey-100);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: var(--admin-fs-xs);
  line-height: 1.6;
  white-space: pre;
  border-radius: var(--admin-radius-sm);
}
.admin-ops__inline-log.is-fail {
  border-left: 3px solid var(--admin-error);
}
.admin-ops__summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--admin-space);
  margin-bottom: var(--admin-space-xl);
}
.admin-ops__summary--single {
  grid-template-columns: 1fr;
}
.admin-ops__summary-card {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
}
.admin-ops__summary-card code {
  padding: 1px 6px;
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.9em;
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text);
}
.admin-ops__summary-row {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
}
.admin-ops__summary-label {
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  color: var(--admin-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  flex: 1 1 auto;
}
.admin-ops__summary-sub {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
}
.admin-ops__pending-alert {
  margin-bottom: var(--admin-space-xl);
  background: var(--admin-warn-bg);
  border: 1px solid var(--admin-warn-border);
  border-left: 4px solid var(--admin-warn);
  border-radius: var(--admin-radius);
  overflow: hidden;
}
.admin-ops__pending-alert--missing {
  background: var(--admin-error-bg);
  border-color: rgba(var(--admin-error-rgb), 0.4);
  border-left-color: var(--admin-error);
}
.admin-ops__pending-alert-hd {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: var(--admin-space-xs);
  padding: var(--admin-space-sm) var(--admin-space-lg);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
.admin-ops__pending-alert-hd i {
  color: var(--admin-warn);
  font-size: 0.95em;
  flex-shrink: 0;
  align-self: center;
}
.admin-ops__pending-alert-hd strong {
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-ops__pending-alert--missing .admin-ops__pending-alert-hd i {
  color: var(--admin-error);
}
.admin-ops__pending-alert-hint {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
}
.admin-ops__pending-list {
  margin: 0;
  padding: var(--admin-space-sm) var(--admin-space-lg);
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.admin-ops__pending-item {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: 6px var(--admin-space-sm);
  background: hsla(0, 0%, 100%, 0.7);
  border-radius: var(--admin-radius-sm);
  border: 1px solid rgba(0, 0, 0, 0.06);
}
.admin-ops__pending-item--missing {
  background: hsla(0, 0%, 100%, 0.5);
}
.admin-ops__pending-kind {
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--admin-warn-text);
  background: var(--admin-warn-bg);
  padding: 1px 6px;
  border-radius: var(--admin-radius-full);
}
.admin-ops__pending-date {
  flex-shrink: 0;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  font-variant-numeric: tabular-nums;
  min-width: 6rem;
}
.admin-ops__pending-slug {
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.8rem;
  color: var(--admin-text);
  word-break: break-all;
  background: var(--admin-grey-100);
  padding: 1px 6px;
  border-radius: var(--admin-radius-sm);
  border: 1px solid var(--admin-border-light);
}
.admin-ops__group {
  margin-bottom: var(--admin-space-2xl);
}
.admin-ops__group-title {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-menu);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-ops__cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--admin-space);
}
.admin-ops__card {
  display: flex;
  flex-direction: column;
  padding: var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
  transition:
    box-shadow var(--admin-duration) var(--admin-ease),
    transform var(--admin-duration) var(--admin-ease);
}
.admin-ops__card:hover {
  box-shadow: var(--admin-elevation-2);
}
.admin-ops__card--danger {
  border-color: rgba(var(--admin-error-rgb), 0.35);
  background: linear-gradient(to bottom, var(--admin-error-bg), var(--admin-white) 35%);
}
.admin-ops__card-title {
  margin: 0 0 var(--admin-space-2xs);
  font-size: var(--admin-fs-body-lg);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-ops__card-desc {
  margin: 0 0 var(--admin-space);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.55;
  flex: 1 1 auto;
}
.admin-ops__card-form {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-ops__card-field {
  margin: 0;
}
.admin-ops__card-check {
  margin: 0;
}
.admin-ops__card-btn {
  align-self: flex-start;
  margin-top: var(--admin-space-sm);
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
  padding: var(--admin-space-2xs) var(--admin-space);
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-on-primary);
  background: var(--admin-primary);
  border: 1px solid var(--admin-primary);
  border-radius: var(--admin-radius-sm);
  cursor: pointer;
  transition: background var(--admin-duration) var(--admin-ease);
}
.admin-ops__card-btn:hover {
  background: var(--admin-primary-hover);
  border-color: var(--admin-primary-hover);
}
.admin-ops__card-btn:focus-visible {
  outline: var(--admin-focus-ring);
  outline-offset: var(--admin-focus-ring-offset);
}
.admin-ops__card--danger .admin-ops__card-btn {
  background: var(--admin-error);
  border-color: var(--admin-error);
  color: var(--admin-on-primary);
}
.admin-ops__card--danger .admin-ops__card-btn:hover {
  background: var(--admin-error-hover);
  border-color: var(--admin-error-hover);
}
.admin-ops__migrations {
  margin-bottom: var(--admin-space-2xl);
}
.admin-ops__table-wrap {
  overflow-x: auto;
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
}
.admin-ops__empty {
  padding: var(--admin-space-xl);
  background: var(--admin-card-bg);
  border: 1px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  color: var(--admin-text-muted);
  text-align: center;
}
.admin-ops__table {
  width: 100%;
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
}
.admin-ops__table th,
.admin-ops__table td {
  padding: var(--admin-space-sm) var(--admin-space);
  text-align: left;
  font-size: var(--admin-fs-sm);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-ops__table th {
  background: var(--admin-grey-50);
  font-weight: 700;
  color: var(--admin-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: var(--admin-fs-xs);
}
.admin-ops__table tbody tr:last-child td {
  border-bottom: 0;
}
.admin-ops__table tbody tr:hover {
  background: var(--admin-grey-50);
}
.admin-ops__table code {
  padding: 1px 5px;
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.9em;
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text);
}
.admin-ops__row--pending {
  background: var(--admin-warn-bg) !important;
}
.admin-ops__row--pending:hover {
  background: rgba(var(--admin-warn-rgb), 0.2) !important;
}
.admin-ops__row--missing {
  background: var(--admin-error-bg) !important;
}
.admin-ops__row--missing:hover {
  background: rgba(var(--admin-error-rgb), 0.12) !important;
}
.admin-ops__col-date {
  white-space: nowrap;
  color: var(--admin-text-secondary);
  font-variant-numeric: tabular-nums;
}
.admin-ops__mig-slug {
  word-break: break-all;
}
.admin-ops__group--devsync {
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  padding: var(--admin-space-lg);
  box-shadow: var(--admin-elevation-1);
}
.admin-ops__group--devsync .admin-ops__group-title {
  margin-bottom: var(--admin-space-sm);
}
.admin-ops__group--devsync .admin-ops__cards {
  margin-top: var(--admin-space-lg);
}
.admin-ops__devsync-intro {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
}
.admin-ops__devsync-what {
  margin: 0;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.65;
}
.admin-ops__devsync-what strong {
  color: var(--admin-text);
}
.admin-ops__devsync-steps {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--admin-space-sm);
}
.admin-ops__devsync-step {
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space-sm);
  flex: 1 1 200px;
  padding: var(--admin-space-sm) var(--admin-space);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-sm);
  line-height: 1.55;
}
.admin-ops__devsync-step strong {
  display: block;
  font-weight: 700;
  color: var(--admin-text);
}
.admin-ops__devsync-step-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  font-size: 13px;
  font-weight: 700;
  color: var(--admin-on-primary);
  background: var(--admin-primary);
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 1px;
}
.admin-ops__devsync-step-sub {
  display: block;
  margin-top: 2px;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
}
.admin-ops__devsync-step-sub code {
  font-size: 0.9em;
  padding: 1px 4px;
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
}
.admin-ops__devsync-arrow {
  color: var(--admin-text-muted);
  font-size: 1rem;
  flex-shrink: 0;
}
@media (max-width: 640px) {
  .admin-ops__devsync-arrow {
    display: none;
  }
}
.admin-ops__ssl-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--admin-space);
  margin-bottom: var(--admin-space-xl);
}
.admin-ops__ssl-card {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
}
.admin-ops__ssl-card-hd {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--admin-text-secondary);
}
.admin-ops__ssl-card-hd i {
  font-size: 0.9em;
  opacity: 0.8;
}
.admin-ops__ssl-card-val {
  font-size: var(--admin-fs-body);
  font-weight: 600;
  color: var(--admin-text);
}
.admin-ops__ssl-card-val small {
  font-weight: 400;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-ops__ssl-card-val code {
  padding: 1px 6px;
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.9em;
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text);
}
.admin-ops__ssl-card-val.is-ok {
  color: var(--admin-success-text);
}
.admin-ops__ssl-card-val.is-warn {
  color: var(--admin-warn-text);
}
.admin-ops__ssl-card-val.is-fail {
  color: var(--admin-error-text);
}
.admin-ops__ssl-guide {
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  margin-bottom: var(--admin-space-xl);
}
.admin-ops__ssl-guide-title {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  margin: 0 0 var(--admin-space-sm);
  font-size: var(--admin-fs-body);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-ops__ssl-guide-title i {
  color: var(--admin-primary);
}
.admin-ops__ssl-guide-list {
  margin: 0;
  padding: 0 0 0 var(--admin-space-lg);
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xs);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  line-height: 1.6;
}
.admin-ops__ssl-guide-list code {
  padding: 1px 5px;
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.9em;
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text);
}
.admin-ops__badge {
  display: inline-flex;
  align-items: center;
  padding: var(--admin-space-3xs) var(--admin-space-sm);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  letter-spacing: 0.04em;
  border-radius: var(--admin-radius-full);
  white-space: nowrap;
}
.admin-ops__badge--ok {
  background: var(--admin-success-bg);
  color: var(--admin-success-text);
}
.admin-ops__badge--warn {
  background: var(--admin-warn-bg);
  color: var(--admin-warn-text);
}
.admin-ops__badge--danger {
  background: var(--admin-error-bg);
  color: var(--admin-error-text);
}
.admin-ops__badge--pending {
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
}
.admin-activity-logs__filters {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: var(--admin-space-sm);
  margin-bottom: var(--admin-space-lg);
  padding: var(--admin-space);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
}
.admin-activity-logs__field {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-3xs);
  min-width: 0;
}
.admin-activity-logs__field span {
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  color: var(--admin-text-secondary);
}
.admin-activity-logs__field .admin-input {
  min-width: 8rem;
}
.admin-activity-logs__summary {
  margin: 0 0 var(--admin-space-sm);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
}
.admin-activity-logs__summary strong {
  color: var(--admin-text);
}
.admin-activity-logs__table-wrap {
  overflow-x: auto;
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
}
.admin-activity-logs__table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--admin-fs-sm);
  background: var(--admin-card-bg);
}
.admin-activity-logs__table th,
.admin-activity-logs__table td {
  padding: var(--admin-space-sm) var(--admin-space);
  text-align: left;
  border-bottom: 1px solid var(--admin-border-light);
  vertical-align: middle;
}
.admin-activity-logs__table th {
  background: var(--admin-grey-50);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  color: var(--admin-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.admin-activity-logs__table tbody tr:last-child td {
  border-bottom: 0;
}
.admin-activity-logs__table tbody tr:hover {
  background: var(--admin-grey-50);
}
.admin-activity-logs__table code {
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.85em;
  padding: 1px 5px;
  background: var(--admin-grey-100);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text);
}
.admin-activity-logs__row--security {
  background: var(--admin-error-bg) !important;
  border-left: 3px solid var(--admin-error);
}
.admin-activity-logs__row--security:hover {
  background: rgba(var(--admin-error-rgb), 0.1) !important;
}
.admin-activity-logs__col-level {
  width: 110px;
  white-space: nowrap;
}
.admin-activity-logs__col-event {
  width: 200px;
}
.admin-activity-logs__col-actor {
  width: 110px;
}
.admin-activity-logs__col-subject {
  width: 110px;
}
.admin-activity-logs__col-ip {
  width: 130px;
  white-space: nowrap;
}
.admin-activity-logs__col-time {
  width: 140px;
  white-space: nowrap;
  color: var(--admin-text-secondary);
  font-variant-numeric: tabular-nums;
}
.admin-activity-logs__col-message {
  min-width: 200px;
}
.admin-activity-logs__event-code {
  word-break: break-all;
}
.admin-activity-logs__context {
  margin-top: var(--admin-space-2xs);
}
.admin-activity-logs__context summary {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  cursor: pointer;
  user-select: none;
}
.admin-activity-logs__context summary:hover {
  color: var(--admin-primary);
}
.admin-activity-logs__context pre {
  margin: var(--admin-space-2xs) 0 0;
  padding: var(--admin-space-sm);
  background: var(--admin-grey-900);
  color: var(--admin-grey-100);
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: var(--admin-fs-xs);
  border-radius: var(--admin-radius-sm);
  max-height: 12rem;
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-word;
}
.admin-activity-logs__actor {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
}
.admin-activity-logs__id {
  font-family: var(--admin-mono, ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace);
  font-size: 0.9em;
  color: var(--admin-text-muted);
}
.admin-ui-audit__summary {
  display: flex;
  gap: var(--admin-space-lg);
  margin-bottom: var(--admin-space-2xl);
  flex-wrap: wrap;
}
.admin-ui-audit__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 120px;
  padding: var(--admin-space-lg) var(--admin-space-xl);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  box-shadow: var(--admin-elevation-1);
}
.admin-ui-audit__stat--warn {
  border-color: rgba(var(--admin-warn-rgb), 0.4);
  background: var(--admin-warn-bg);
}
.admin-ui-audit__stat--warn .admin-ui-audit__stat-num {
  color: var(--admin-warn-text);
}
.admin-ui-audit__stat--ok {
  border-color: rgba(var(--admin-success-rgb), 0.35);
  background: var(--admin-success-bg);
}
.admin-ui-audit__stat--ok .admin-ui-audit__stat-num {
  color: var(--admin-success-text);
}
.admin-ui-audit__stat-num {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.1;
  color: var(--admin-text);
}
.admin-ui-audit__stat-label {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  margin-top: 0.3rem;
}
.admin-ui-audit__filters {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-xs);
  margin-bottom: var(--admin-space-xl);
}
.admin-ui-audit__filter-badge {
  cursor: pointer;
  text-decoration: none;
}
.admin-ui-audit__filter-badge:hover {
  opacity: 0.8;
}
.admin-ui-audit__empty {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-2xl);
  background: var(--admin-success-bg);
  border: 1px solid rgba(var(--admin-success-rgb), 0.3);
  border-radius: var(--admin-radius);
  color: var(--admin-success-text);
  font-weight: 600;
}
.admin-ui-audit__empty i {
  font-size: 1.2em;
}
.admin-ui-audit__list {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xl);
}
.admin-ui-audit__file {
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  overflow: hidden;
}
.admin-ui-audit__file-header {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-sm) var(--admin-space-lg);
  background: var(--admin-grey-50);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-ui-audit__file-path {
  flex: 1;
  font-size: var(--admin-fs-sm);
  color: var(--admin-text);
  font-family: var(--admin-font-mono, monospace);
  word-break: break-all;
}
.admin-ui-audit__file-count {
  flex-shrink: 0;
}
.admin-ui-audit__table {
  margin: 0;
  border-radius: 0;
  border: none;
}
.admin-ui-audit__col-line {
  width: 60px;
  text-align: center;
}
.admin-ui-audit__col-type {
  width: 160px;
  white-space: nowrap;
}
.admin-ui-audit__lineno {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 24px;
  background: var(--admin-grey-100);
  border-radius: var(--admin-radius-xs);
  font-size: var(--admin-fs-xs);
  font-family: var(--admin-font-mono, monospace);
  color: var(--admin-text-muted);
}
.admin-ui-audit__type-badge {
  font-size: var(--admin-fs-xs);
}
.admin-ui-audit__type-badge--inline-style {
  background: rgba(239, 68, 68, 0.12);
  color: #b91c1c;
}
.admin-ui-audit__type-badge--raw-input {
  background: rgba(245, 158, 11, 0.12);
  color: #92400e;
}
.admin-ui-audit__type-badge--raw-textarea {
  background: rgba(245, 158, 11, 0.12);
  color: #92400e;
}
.admin-ui-audit__type-badge--raw-select {
  background: rgba(239, 68, 68, 0.12);
  color: #b91c1c;
}
.admin-ui-audit__type-badge--checkbox-no-wrap-false {
  background: rgba(99, 102, 241, 0.12);
  color: #3730a3;
}
.admin-ui-audit__type-badge--component-inline-style {
  background: rgba(239, 68, 68, 0.12);
  color: #b91c1c;
}
.admin-ui-audit__code {
  display: block;
  font-size: var(--admin-fs-xs);
  font-family: var(--admin-font-mono, monospace);
  white-space: pre-wrap;
  word-break: break-all;
  color: var(--admin-text);
  max-height: 4.5em;
  overflow: hidden;
}
.admin-ui-audit__hint {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  max-width: 280px;
}
.admin-theme-audit {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xl);
}
.admin-theme-audit__legend {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-sm);
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
}
.admin-theme-audit__legend-item {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-2xs);
}
.admin-theme-audit__legend-sep {
  color: var(--admin-border-strong);
  margin: 0 var(--admin-space-2xs);
}
.admin-theme-audit__legend-note {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
  color: var(--admin-text-muted);
  font-style: italic;
}
.admin-theme-audit__dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}
.admin-theme-audit__dot--light {
  background: #60a5fa;
}
.admin-theme-audit__dot--dark {
  background: #6366f1;
}
.admin-theme-audit__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: var(--admin-space-lg);
}
.admin-theme-audit__card {
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  overflow: hidden;
  box-shadow:
    0 2px 8px rgba(0, 0, 0, 0.12),
    0 0 0 1px rgba(0, 0, 0, 0.07);
  display: flex;
  flex-direction: column;
}
.admin-theme-audit__card-head {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  padding: var(--admin-space-sm) var(--admin-space);
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50);
}
.admin-theme-audit__card-label {
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text);
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-theme-audit__card-slug {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  font-family: monospace;
  background: var(--admin-grey-100);
  padding: 1px var(--admin-space-2xs);
  border-radius: var(--admin-radius-sm);
}
.admin-theme-audit__apply-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.3em;
  padding: 4px var(--admin-space-xs);
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  color: var(--admin-primary);
  background: var(--admin-primary-light);
  border: 1px solid var(--admin-primary-border);
  border-radius: var(--admin-radius-sm);
  cursor: pointer;
  font-family: inherit;
  flex-shrink: 0;
  transition:
    background var(--admin-duration) var(--admin-ease),
    color var(--admin-duration) var(--admin-ease);
}
.admin-theme-audit__apply-btn:hover {
  background: var(--admin-primary);
  color: var(--admin-on-primary);
}
.admin-theme-audit__fake-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  min-height: 48px;
}
.admin-theme-audit__fake-breadcrumb {
  display: flex;
  align-items: center;
}
.admin-theme-audit__fake-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.admin-theme-audit__fake-action {
  display: flex;
  align-items: center;
  gap: 4px;
  position: relative;
}
.admin-theme-audit__fake-action--gap {
  margin-left: 4px;
}
.admin-theme-audit__pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  height: 1.5rem;
  padding: 0 0.35rem;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  border: 1.5px solid rgba(0, 0, 0, 0);
  flex-shrink: 0;
}
.admin-theme-audit__pill--unread {
  background: #fff !important;
  color: #c81e1e !important;
  border-color: rgba(200, 30, 30, 0.25) !important;
  box-shadow:
    0 0 0 1.5px rgba(200, 30, 30, 0.18),
    0 2px 6px rgba(0, 0, 0, 0.3);
}
.admin-theme-audit__fake-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #fff;
  color: #0a0a0a;
  font-size: 11px;
  font-weight: 800;
  flex-shrink: 0;
  box-shadow: 0 0 0 2px hsla(0, 0%, 100%, 0.3);
}
.admin-theme-audit__swatch-row {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-xs) 14px;
  flex-wrap: wrap;
}
.admin-theme-audit__swatch {
  padding: 3px var(--admin-space-xs);
  border-radius: var(--admin-radius-sm);
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  color: var(--admin-text);
  white-space: nowrap;
}
.admin-theme-audit__swatch-text,
.admin-theme-audit__swatch-primary {
  font-size: var(--admin-fs-xs);
  font-weight: 600;
  white-space: nowrap;
}
.admin-theme-audit__checks {
  padding: var(--admin-space-xs) 0;
  border-top: 1px solid var(--admin-border-light);
  flex: 1;
}
.admin-theme-audit__check-item {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  padding: 5px var(--admin-space);
  cursor: pointer;
  border-radius: 0;
  transition: background var(--admin-duration) var(--admin-ease);
}
.admin-theme-audit__check-item:hover {
  background: var(--admin-grey-50);
}
.admin-theme-audit__check-input {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  accent-color: var(--admin-success, #22c55e);
  cursor: pointer;
}
.admin-theme-audit__check-label {
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text);
  min-width: 0;
  white-space: nowrap;
}
.admin-theme-audit__check-desc {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-theme-audit__check-input:checked ~ .admin-theme-audit__check-label {
  color: var(--admin-success, #22c55e);
  text-decoration: line-through;
  opacity: 0.7;
}
.admin-theme-audit__card-foot {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-xs) var(--admin-space);
  border-top: 1px solid var(--admin-border-light);
  background: var(--admin-grey-50);
}
.admin-theme-audit__score {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  white-space: nowrap;
  flex-shrink: 0;
}
.admin-theme-audit__score-pass {
  font-weight: 700;
  color: var(--admin-success, #22c55e);
}
.admin-theme-audit__score-bar {
  flex: 1;
  height: 4px;
  border-radius: 99px;
  background: var(--admin-border);
  overflow: hidden;
}
.admin-theme-audit__score-fill {
  height: 100%;
  background: var(--admin-success, #22c55e);
  border-radius: 99px;
  transition: width 0.3s ease;
}
.admin-theme-audit__summary {
  display: flex;
  gap: var(--admin-space-xl);
  padding: var(--admin-space-lg) var(--admin-space-xl);
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  box-shadow: var(--admin-shadow);
}
.admin-theme-audit__summary-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--admin-space-3xs);
}
.admin-theme-audit__summary-num {
  font-size: var(--admin-fs-3xl, 2.8rem);
  font-weight: 800;
  color: var(--admin-text);
  line-height: 1;
  letter-spacing: -0.03em;
}
.admin-theme-audit__summary-label {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
}
@media (max-width: 992px) {
  .admin-theme-audit__grid {
    grid-template-columns: 1fr;
  }
  .admin-theme-audit__summary {
    gap: var(--admin-space-lg);
  }
}
.rp-page .admin-page__header {
  margin-bottom: var(--admin-space-xl);
}
.rp-toolbar {
  display: flex;
  align-items: center;
  gap: var(--admin-space);
  margin-bottom: var(--admin-space-xl);
  flex-wrap: wrap;
}
.rp-toolbar__hint {
  font-size: var(--admin-fs-body);
  color: var(--admin-text-muted);
  display: flex;
  align-items: center;
  gap: var(--admin-space-2xs);
}
.rp-matrix-wrap {
  width: 100%;
  overflow-x: auto;
  border-radius: var(--admin-radius-lg);
  border: 1px solid var(--admin-border);
  background: var(--admin-card-bg);
  box-shadow: var(--admin-elevation-1);
}
.rp-matrix {
  min-width: 640px;
}
.rp-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--admin-fs-body-lg);
  table-layout: auto;
}
.rp-table th,
.rp-table td {
  padding: 0;
  border: none;
}
.rp-table__role-col {
  text-align: center;
  min-width: 120px;
  width: 120px;
  vertical-align: top;
  border-left: 1px solid var(--admin-border);
  background: var(--admin-grey-50);
}
.rp-table__role-col--owner {
  background: linear-gradient(160deg, #fff8e6 0%, #fffdf5 100%);
}
.rp-table__perm-col {
  text-align: left;
  min-width: 200px;
  width: 220px;
  background: var(--admin-grey-50);
  border-right: 1px solid var(--admin-border);
  font-weight: 600;
  padding: var(--admin-space) var(--admin-space-lg);
  font-size: var(--admin-fs-base);
  color: var(--admin-text-muted);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.rp-table__group-row {
  background: var(--admin-grey-50);
  border-top: 2px solid var(--admin-border);
}
.rp-table__group-row:first-child {
  border-top: none;
}
.rp-table__group-cell {
  padding: var(--admin-space-sm) var(--admin-space-lg);
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text-muted);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
}
.rp-table__group-cell .fa-solid {
  font-size: 0.9em;
  color: var(--admin-primary);
  opacity: 0.7;
}
.rp-table__perm-row {
  border-top: 1px solid var(--admin-border);
  transition: background var(--admin-duration-short);
}
.rp-table__perm-row:hover {
  background: var(--admin-primary-light);
}
.rp-table__perm-label {
  padding: var(--admin-space-sm) var(--admin-space-lg) var(--admin-space-sm) 1.6rem;
  color: var(--admin-text);
  font-size: var(--admin-fs-body-lg);
  border-right: 1px solid var(--admin-border);
  vertical-align: middle;
}
.rp-table__cell {
  text-align: center;
  vertical-align: middle;
  padding: var(--admin-space-xs) 0;
  border-left: 1px solid var(--admin-border);
  position: relative;
}
.rp-table__cell--owner {
  background: rgba(251, 191, 36, 0.04);
}
.rp-role-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--admin-space-3xs);
  padding: var(--admin-space) var(--admin-space-xs);
}
.rp-role-head__name {
  font-size: var(--admin-fs-body-lg);
  font-weight: 700;
  color: var(--admin-text);
  line-height: 1.2;
}
.rp-role-head__code {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  font-family: monospace;
  background: var(--admin-grey-100);
  padding: 0.1em 0.45em;
  border-radius: var(--admin-radius-xs);
  letter-spacing: 0.03em;
}
.rp-role-head__level {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.rp-role-head__badge {
  font-size: var(--admin-fs-xs);
  padding: 0.15em 0.55em;
  border-radius: var(--admin-radius-full);
  font-weight: 700;
  letter-spacing: 0.03em;
  display: flex;
  align-items: center;
  gap: var(--admin-space-3xs);
  margin-top: var(--admin-space-3xs);
}
.rp-role-head__badge--owner {
  background: var(--admin-warn-bg);
  color: var(--admin-warn-text);
  border: 1px solid var(--admin-warn-border);
}
.rp-checkbox {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  position: relative;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: var(--admin-radius);
  transition:
    background var(--admin-duration-short),
    transform 0.1s;
}
.rp-checkbox__input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
.rp-checkbox__box {
  width: 2.2rem;
  height: 2.2rem;
  border-radius: var(--admin-radius-sm);
  border: 2px solid var(--admin-border);
  background: var(--admin-white);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--admin-duration) var(--admin-ease);
  position: relative;
  overflow: hidden;
}
.rp-checkbox__icon {
  font-size: 1.1rem;
  position: absolute;
  transition: all var(--admin-duration) var(--admin-ease);
}
.rp-checkbox__icon--check {
  color: var(--admin-white);
  opacity: 0;
  transform: scale(0.4);
}
.rp-checkbox__icon--x {
  color: var(--admin-text-muted);
  opacity: 0.35;
  transform: scale(0.8);
}
.rp-checkbox.is-checked .rp-checkbox__box {
  background: var(--admin-primary);
  border-color: var(--admin-primary);
  box-shadow: 0 2px 6px rgba(var(--admin-primary-rgb), 0.3);
}
.rp-checkbox.is-checked .rp-checkbox__icon--check {
  opacity: 1;
  transform: scale(1);
}
.rp-checkbox.is-checked .rp-checkbox__icon--x {
  opacity: 0;
  transform: scale(0.4);
}
.rp-checkbox.is-loading {
  pointer-events: none;
  opacity: 0.6;
}
.rp-checkbox--fixed {
  cursor: default;
}
.rp-checkbox--fixed .rp-checkbox__box {
  background: var(--admin-success-bg);
  border-color: var(--admin-success-border);
}
.rp-checkbox--fixed .rp-checkbox__icon--check {
  color: var(--admin-success);
  opacity: 1;
  transform: scale(1);
}
.rp-checkbox:not(.rp-checkbox--fixed):hover {
  background: var(--admin-primary-light);
  transform: scale(1.08);
}
.rp-checkbox:not(.rp-checkbox--fixed):active {
  transform: scale(0.95);
}
.e-403 {
  min-height: 70vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: var(--admin-space-4xl) var(--admin-space-xl);
  gap: var(--admin-space);
}
.e-403__graphic {
  width: 12rem;
  height: 12rem;
  color: var(--admin-primary);
  opacity: 0.6;
  margin-bottom: var(--admin-space-xs);
}
.e-403__svg {
  width: 100%;
  height: 100%;
}
.e-403__num {
  font-size: clamp(4.8rem, 8vw, 8rem);
  font-weight: 900;
  color: var(--admin-primary);
  opacity: 0.15;
  letter-spacing: -0.04em;
  line-height: 1;
  margin: -0.5rem 0;
}
.e-403__title {
  font-size: clamp(2rem, 3vw, 2.8rem);
  font-weight: 700;
  color: var(--admin-text);
  margin: 0;
}
.e-403__desc {
  font-size: var(--admin-fs-body-lg);
  color: var(--admin-text-muted);
  line-height: 1.65;
  max-width: 42rem;
  margin: 0;
}
.e-403__actions {
  display: flex;
  gap: var(--admin-space-sm);
  flex-wrap: wrap;
  justify-content: center;
  margin-top: var(--admin-space-xs);
}
.e-403__foot {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-muted);
  margin-top: var(--admin-space-xl);
}
.e-403__brand {
  font-weight: 700;
  letter-spacing: 0.04em;
}
.admin-role-perm {
  margin-top: var(--admin-space-2xl);
}
.admin-role-perm__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--admin-space-sm);
  margin-bottom: var(--admin-space);
}
.admin-role-perm__header-left {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  flex-wrap: wrap;
}
.admin-role-perm__title {
  margin: 0;
  font-size: var(--admin-fs-xl);
  font-weight: 700;
  color: var(--admin-text);
}
.admin-role-perm__owner-note {
  padding: var(--admin-space-sm) var(--admin-space-lg);
  background: var(--admin-warn-bg);
  border: 1px solid var(--admin-warn-border);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-body);
  color: var(--admin-warn-text);
  margin: 0;
}
.admin-role-perm__empty {
  padding: var(--admin-space-2xl);
  background: var(--admin-card-bg);
  border: 1px dashed var(--admin-border);
  border-radius: var(--admin-radius);
  color: var(--admin-text-muted);
  text-align: center;
  font-size: var(--admin-fs-body);
  margin: 0;
}
.admin-role-perm__empty a {
  color: var(--admin-primary);
}
.rp-save-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.8rem;
  height: 1.8rem;
  padding: 0 var(--admin-space-xs);
  border-radius: var(--admin-radius-full);
  font-size: var(--admin-fs-xs);
  font-weight: 700;
  background: hsla(0, 0%, 100%, 0.3);
  color: var(--admin-white);
  margin-left: var(--admin-space-3xs);
  line-height: 1;
}
.rp-crud-grid {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-lg, 1.25rem);
}
.rp-crud-card {
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  overflow: hidden;
  background: var(--admin-card-bg);
  box-shadow: var(--admin-elevation-1);
}
.rp-crud-card__head {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 1rem 1.5rem;
  background: var(--admin-grey-50);
  border-bottom: 1px solid var(--admin-border);
  font-size: var(--admin-fs-sm);
  font-weight: 800;
  color: var(--admin-text-secondary);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.rp-crud-card__head .fa-solid {
  font-size: 1em;
  color: var(--admin-primary);
  opacity: 0.7;
}
.rp-crud-card__body {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.rp-crud-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}
.rp-crud-table th,
.rp-crud-table td {
  border: none;
}
.rp-crud-table thead tr {
  border-bottom: 1px solid var(--admin-border);
}
.rp-crud-table__th-feature {
  text-align: left;
  padding: 0.8rem 1.5rem 0.8rem 2rem;
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text-muted);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  background: var(--admin-grey-50);
  border-right: 1px solid var(--admin-border);
  min-width: 200px;
}
.rp-crud-table__th-action {
  text-align: center;
  padding: 0.8rem 0.5rem;
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  color: var(--admin-text-muted);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  background: var(--admin-grey-50);
  border-left: 1px solid var(--admin-border-light);
  white-space: nowrap;
  width: 96px;
  min-width: 84px;
}
.rp-crud-table__row {
  border-top: 1px solid var(--admin-border-light);
  transition: background var(--admin-duration-short);
}
.rp-crud-table__row:hover {
  background: var(--admin-primary-light);
}
.rp-crud-table__row:first-child {
  border-top: none;
}
.rp-crud-table__feature {
  padding: 1rem 1.5rem 1rem 2rem;
  color: var(--admin-text);
  font-size: var(--admin-fs-body-lg);
  font-weight: 500;
  border-right: 1px solid var(--admin-border);
  vertical-align: middle;
}
.rp-crud-table__cell {
  text-align: center;
  vertical-align: middle;
  padding: 0.6rem 0;
  border-left: 1px solid var(--admin-border-light);
}
.rp-crud-table__empty {
  display: inline-block;
  font-size: 1.1rem;
  line-height: 1;
  color: var(--admin-text-muted);
  opacity: 0.2;
  user-select: none;
  pointer-events: none;
}
@media (max-width: 767px) {
  .rp-crud-card__body {
    overflow-x: visible;
  }
  .rp-crud-table {
    display: block;
  }
  .rp-crud-table thead {
    display: none;
  }
  .rp-crud-table tbody {
    display: block;
  }
  .rp-crud-table__row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0.5rem;
    padding: 0.85rem 1.25rem 0.75rem;
    border-top: 1px solid var(--admin-border-light);
  }
  .rp-crud-table__row:first-child {
    border-top: none;
  }
  .rp-crud-table__row:hover {
    background: var(--admin-primary-light);
  }
  .rp-crud-table__feature {
    flex: 1 1 100%;
    padding: 0 0 0.5rem;
    border-right: none;
    font-size: var(--admin-fs-body-lg);
    font-weight: 600;
    color: var(--admin-text);
  }
  .rp-crud-table__cell {
    flex: 0 0 auto;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    padding: 0.25rem 0.4rem;
    border-left: none;
  }
  .rp-crud-table__cell::before {
    content: attr(data-label);
    font-size: 0.9rem;
    color: var(--admin-text-muted);
    letter-spacing: 0.04em;
    font-weight: 600;
    text-transform: uppercase;
  }
  .rp-crud-table__cell--empty {
    display: none;
  }
}
.admin-map-preview {
  margin-bottom: var(--admin-space-2xl);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-md);
  overflow: hidden;
}
.admin-map-preview__search-bar {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-md);
  background: var(--admin-bg-subtle);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-map-preview__radio-group {
  display: flex;
  gap: var(--admin-space-lg);
  align-items: center;
  flex-wrap: wrap;
}
.admin-map-preview__radio-group label {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  font-size: var(--admin-fs-body-sm);
  cursor: pointer;
}
.admin-map-preview__radio--disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.admin-map-preview__radio--disabled input {
  cursor: not-allowed;
}
.admin-map-preview__radio-hint {
  font-size: var(--admin-fs-body-xs);
  color: var(--admin-text-muted);
  margin-left: 0.15rem;
}
.admin-map-preview__input-row {
  position: relative;
  display: flex;
  gap: var(--admin-space-sm);
  align-items: center;
}
.admin-map-preview__input-row .admin-form__field {
  flex: 1;
  min-width: 0;
  margin-bottom: 0;
}
.admin-map-preview__input-row input {
  flex: 1;
  min-width: 0;
}
.admin-map-preview__dropdown {
  position: absolute;
  top: calc(100% + 2px);
  left: 0;
  right: 0;
  z-index: 100;
  background: var(--admin-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
  max-height: 200px;
  overflow-y: auto;
}
.admin-map-preview__dropdown-item {
  padding: 0.5rem 0.75rem;
  font-size: var(--admin-fs-body-sm);
  cursor: pointer;
  line-height: 1.4;
}
.admin-map-preview__dropdown-item:hover {
  background: var(--admin-bg-hover);
}
.admin-map-preview__dropdown-item + .admin-map-preview__dropdown-item {
  border-top: 1px solid var(--admin-border-light);
}
.admin-map-preview__map {
  display: block;
  width: 100%;
  height: 380px;
  background: var(--admin-bg-subtle);
}
.admin-map-preview__apply-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-sm) var(--admin-space-md);
  background: var(--admin-bg-subtle);
  border-top: 1px solid var(--admin-border-light);
  flex-wrap: wrap;
}
.admin-map-preview__result-label {
  flex: 1;
  min-width: 0;
  font-size: var(--admin-fs-body-sm);
  color: var(--admin-text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-map-preview__no-key {
  padding: var(--admin-space-lg) var(--admin-space-md);
  font-size: var(--admin-fs-body-sm);
  color: var(--admin-text-muted);
  text-align: center;
  background: var(--admin-bg-subtle);
}
.admin-map-preview__no-key a {
  color: var(--admin-primary);
  text-decoration: underline;
}
.admin-menu-categories__add-section {
  margin-top: var(--admin-space-3xl);
}
.admin-menu-categories__add-fields {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xl);
  margin-bottom: var(--admin-space-xl);
}
.admin-menu-categories__edit-fields {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-lg);
  margin-bottom: var(--admin-space-lg);
}
.admin-menu-categories__edit-actions {
  display: flex;
  gap: var(--admin-space-sm);
}
.admin-menu-tags__add-section {
  margin-top: var(--admin-space-3xl);
}
.admin-menu-tags__add-fields {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-xl);
  margin-bottom: var(--admin-space-xl);
}
.admin-menu-tags__edit-fields {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-lg);
  margin-bottom: var(--admin-space-lg);
}
.admin-menu-tags__edit-actions {
  display: flex;
  gap: var(--admin-space-sm);
}
.admin-menu-tags__inline-form {
  margin-top: var(--admin-space-sm);
  padding: var(--admin-space) var(--admin-space-lg);
  background: var(--admin-grey-50);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
}
.admin-menu-tags__color-chip {
  display: inline-block;
  width: 18px;
  height: 18px;
  border-radius: 3px;
  vertical-align: middle;
  border: 1px solid rgba(0, 0, 0, 0.15);
  flex-shrink: 0;
  background: var(--chip-color, var(--admin-grey-200));
}
.admin-set-item {
  position: relative;
  margin-bottom: var(--admin-space-lg);
  padding: var(--admin-space-lg);
  background: var(--admin-surface, #fff);
  border: 1px solid var(--admin-border-light);
  border-radius: var(--admin-radius-lg, 8px);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}
.admin-set-item:hover {
  border-color: var(--admin-border);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
}
.admin-set-item__header {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  margin-bottom: var(--admin-space);
  padding-bottom: var(--admin-space-sm);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-set-item__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  padding: 0 var(--admin-space-sm);
  background: var(--admin-primary, #0ea5e9);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  border-radius: 999px;
  line-height: 1;
  flex-shrink: 0;
}
.admin-set-item__title {
  font-size: var(--admin-fs-body);
  font-weight: 700;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--admin-text);
}
.admin-set-item__menu-link {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-sm);
  padding: var(--admin-space-sm) var(--admin-space);
  margin-bottom: var(--admin-space);
  background: rgba(14, 165, 233, 0.05);
  border: 1px solid rgba(14, 165, 233, 0.15);
  border-radius: var(--admin-radius);
}
.admin-set-item__menu-link-label {
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-primary, #0ea5e9);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 4px;
}
.admin-set-item__menu-link-label i {
  font-size: 11px;
  opacity: 0.8;
}
.admin-set-item__selected-menu {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
  flex: 1;
  min-width: 0;
}
.admin-set-item__selected-thumb {
  width: 60px;
  height: 44px;
  object-fit: cover;
  border-radius: var(--admin-radius-xs);
  border: 1px solid var(--admin-border-light);
  flex-shrink: 0;
  background: var(--admin-grey-100);
  display: block;
}
.admin-set-item__selected-thumb--empty {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--admin-grey-400);
  font-size: 1.1rem;
}
.admin-set-item__selected-name {
  font-size: var(--admin-fs-sm);
  font-weight: 700;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--admin-text);
}
.admin-set-item__body {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-set-item .admin-form__block--inline {
  margin-bottom: 0;
}
#set-items-list:empty::before {
  display: block;
  padding: var(--admin-space-xl) var(--admin-space-lg);
  margin-bottom: var(--admin-space-lg);
  content: '+ 아이템 추가 버튼을 눌러 구성 메뉴를 추가하세요.';
  color: var(--admin-grey-500);
  background: var(--admin-grey-50);
  border: 1px dashed var(--admin-border-light);
  border-radius: var(--admin-radius);
  text-align: center;
  font-size: 13px;
}
.admin-menu-picker {
  z-index: 1100;
}
.admin-menu-picker .admin-menu-picker__box {
  max-width: min(880px, 96vw);
  width: 100%;
  max-height: 88vh;
}
.admin-menu-picker .admin-menu-picker__body {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space);
  overflow: hidden;
}
.admin-menu-picker .admin-search-bar {
  max-width: 440px;
}
.admin-menu-picker .admin-menu-picker__grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: var(--admin-space-sm);
  overflow-y: auto;
  max-height: 56vh;
}
.admin-menu-picker .admin-menu-picker__cell {
  margin: 0;
}
.admin-menu-picker .admin-menu-picker__cell[hidden] {
  display: none;
}
.admin-menu-picker .admin-menu-picker__card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  border: 2px solid var(--admin-border-light);
  border-radius: var(--admin-radius);
  background: var(--admin-white);
  cursor: pointer;
  overflow: hidden;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}
.admin-menu-picker .admin-menu-picker__card:hover {
  border-color: var(--admin-primary, #0ea5e9);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.admin-menu-picker .admin-menu-picker__card:has(.admin-menu-picker__radio:checked) {
  border-color: var(--admin-primary, #0ea5e9);
  box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.18);
}
.admin-menu-picker .admin-menu-picker__thumb-wrap {
  aspect-ratio: 4/3;
  background: var(--admin-grey-100);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}
.admin-menu-picker .admin-menu-picker__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.admin-menu-picker .admin-menu-picker__thumb-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 60px;
  color: var(--admin-grey-400);
  font-size: 1.8rem;
}
.admin-menu-picker .admin-menu-picker__meta {
  padding: var(--admin-space-sm);
  display: flex;
  flex-direction: column;
  gap: 3px;
  flex: 1;
}
.admin-menu-picker .admin-menu-picker__name {
  font-size: var(--admin-fs-body);
  font-weight: 700;
  margin: 0;
  line-height: 1.3;
}
.admin-menu-picker .admin-menu-picker__name-en {
  font-size: 11px;
  color: var(--admin-text-secondary);
  line-height: 1.2;
}
.admin-menu-picker .admin-menu-picker__price {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
  margin-top: 2px;
}
.admin-menu-picker .admin-menu-picker__toolbar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-sm);
  flex-shrink: 0;
}
.admin-menu-picker .admin-menu-picker__cat-filter,
.admin-menu-picker .admin-menu-picker__sort-select {
  appearance: auto;
  padding: 6px 10px;
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  font-size: var(--admin-fs-sm);
  background: var(--admin-white);
  color: var(--admin-text);
  cursor: pointer;
  min-width: 130px;
  height: 36px;
}
.admin-menu-picker .admin-menu-picker__cat-badge {
  display: inline-block;
  font-size: 11px;
  padding: 1px 6px;
  background: var(--admin-grey-100);
  color: var(--admin-text-secondary);
  border-radius: 999px;
  align-self: flex-start;
  line-height: 1.6;
}
.admin-menu-picker .admin-menu-picker__empty {
  text-align: center;
  color: var(--admin-grey-500);
  padding: var(--admin-space-xl);
  font-size: var(--admin-fs-sm);
  margin: 0;
}
.admin-set-item__selected-category {
  font-size: 11px;
  color: var(--admin-text-secondary);
  background: var(--admin-grey-100);
  padding: 1px 5px;
  border-radius: 999px;
  white-space: nowrap;
  flex-shrink: 0;
}
.admin-mail-settings__test {
  margin-top: var(--admin-space-2xl);
  padding-top: var(--admin-space-2xl);
  border-top: 1px solid var(--admin-border-light);
}
.admin-contact-thread {
  margin-top: 24px;
  padding: 24px;
  background: var(--admin-surface, #fff);
  border: 1px solid var(--admin-border-light, #e5e7eb);
  border-radius: 10px;
}
.admin-contact-thread__header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--admin-border-light, #e5e7eb);
}
.admin-contact-thread__title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--admin-text, #111);
}
.admin-contact-thread__count {
  color: var(--admin-text-secondary, #6b7280);
  font-weight: 500;
}
.admin-contact-thread__empty {
  padding: 24px 16px;
  text-align: center;
  color: var(--admin-text-secondary, #6b7280);
  background: var(--admin-bg-subtle, #f9fafb);
  border-radius: 8px;
  font-size: 14px;
}
.admin-contact-thread__list {
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.admin-contact-thread__form {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--admin-border-light, #e5e7eb);
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.admin-contact-bubble {
  position: relative;
  padding: 14px 16px 14px 18px;
  background: var(--admin-bg-subtle, #f9fafb);
  border: 1px solid var(--admin-border-light, #e5e7eb);
  border-radius: 10px;
  overflow-wrap: anywhere;
}
.admin-contact-bubble::before {
  content: '';
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 0;
  width: 3px;
  background: var(--admin-primary, #0076cb);
  border-radius: 2px;
}
.admin-contact-bubble--admin {
  background: var(--admin-surface, #fff);
}
.admin-contact-bubble__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  flex-wrap: wrap;
  font-size: 13px;
  color: var(--admin-text-secondary, #6b7280);
}
.admin-contact-bubble__author {
  font-weight: 600;
  color: var(--admin-text, #111);
}
.admin-contact-bubble__time {
  color: var(--admin-text-muted, #9ca3af);
  font-variant-numeric: tabular-nums;
}
.admin-contact-bubble__body {
  font-size: 15px;
  line-height: 1.65;
  color: var(--admin-text, #111);
  white-space: pre-wrap;
  word-break: break-word;
}
.admin-contact-bubble__files {
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 13px;
}
.admin-contact-bubble__files li {
  display: flex;
  align-items: center;
  gap: 6px;
}
.admin-contact-bubble__files a {
  color: var(--admin-primary-text, #1d4ed8);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.admin-contact-bubble__files a:hover {
  text-decoration: underline;
}
.admin-contact-bubble__file-size {
  color: var(--admin-text-muted, #9ca3af);
  font-variant-numeric: tabular-nums;
}
.admin-multi-file-input__input {
  width: 100%;
  padding: 10px 12px;
  background: var(--admin-surface, #fff);
  border: 1px dashed var(--admin-border, #d1d5db);
  border-radius: 8px;
  font-size: 14px;
  color: var(--admin-text, #111);
}
.admin-multi-file-input__input:focus {
  outline: none;
  border-color: var(--admin-border-focus, var(--admin-primary, #0076cb));
}
.admin-multi-file-input__input::file-selector-button {
  margin-right: 10px;
  padding: 6px 12px;
  background: var(--admin-primary, #0076cb);
  color: #fff;
  border: 0;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.admin-multi-file-input__input::file-selector-button:hover {
  background: var(--admin-primary-hover, #1d4ed8);
}
.admin-chat-composer {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 14px;
  background: var(--admin-surface, #fff);
  border: 1px solid var(--admin-border, #d1d5db);
  border-radius: 24px;
  transition:
    border-color 0.15s,
    box-shadow 0.15s;
}
.admin-chat-composer:focus-within {
  border-color: var(--admin-border-focus, var(--admin-primary, #0076cb));
  box-shadow: 0 0 0 3px rgba(0, 118, 203, 0.12);
}
.admin-chat-composer__attachments {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 4px 0 0;
}
.admin-chat-composer__attachments[hidden] {
  display: none;
}
.admin-chat-composer__chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--admin-bg-subtle, #f3f4f6);
  border: 1px solid var(--admin-border-light, #e5e7eb);
  border-radius: 12px;
  padding: 4px 8px 4px 6px;
  font-size: 12px;
  max-width: 220px;
  color: var(--admin-text, #111);
}
.admin-chat-composer__chip-thumb {
  width: 28px;
  height: 28px;
  object-fit: cover;
  border-radius: 6px;
  flex: 0 0 auto;
}
.admin-chat-composer__chip-icon {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  background: var(--admin-surface, #fff);
  color: var(--admin-text-secondary, #6b7280);
  flex: 0 0 auto;
}
.admin-chat-composer__chip-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-chat-composer__chip-remove {
  border: 0;
  background: rgba(0, 0, 0, 0);
  cursor: pointer;
  color: var(--admin-text-secondary, #6b7280);
  padding: 2px;
  display: inline-flex;
  align-items: center;
  line-height: 1;
  border-radius: 4px;
}
.admin-chat-composer__chip-remove:hover {
  color: var(--admin-text, #111);
  background: rgba(0, 0, 0, 0.04);
}
.admin-chat-composer__input {
  width: 100%;
  border: 0;
  outline: 0;
  resize: none;
  background: rgba(0, 0, 0, 0);
  font: inherit;
  line-height: 1.5;
  padding: 6px 4px;
  max-height: 240px;
  overflow-y: auto;
  color: var(--admin-text, #111);
}
.admin-chat-composer__input::placeholder {
  color: var(--admin-text-muted, #9ca3af);
}
.admin-chat-composer__toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}
.admin-chat-composer__attach {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--admin-bg-subtle, #f3f4f6);
  color: var(--admin-text-secondary, #374151);
  cursor: pointer;
  transition:
    background 0.15s,
    color 0.15s;
  flex: 0 0 auto;
}
.admin-chat-composer__attach:hover {
  background: var(--admin-border-light, #e5e7eb);
  color: var(--admin-text, #111);
}
.admin-chat-composer__attach i {
  font-size: 14px;
  line-height: 1;
}
.admin-chat-composer__attach-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.admin-chat-composer__send {
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  padding: 0;
  border-radius: 50%;
  font-size: 0;
  line-height: 1;
  gap: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--admin-primary, #0076cb);
  color: #fff;
  border: 0;
  cursor: pointer;
  transition:
    background 0.15s,
    opacity 0.15s;
  flex: 0 0 auto;
  position: relative;
  overflow: hidden;
}
.admin-chat-composer__send:hover:not(:disabled) {
  background: var(--admin-primary-hover, #1d4ed8);
}
.admin-chat-composer__send:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.admin-chat-composer__send-icon {
  font-size: 14px;
  line-height: 1;
}
.admin-chat-composer__send .admin-form__loader {
  position: absolute;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  color: #fff;
}
.admin-chat-composer__send .admin-form__loader:not([hidden]) {
  display: inline-flex;
}
.admin-chat-composer__send:has(.admin-form__loader:not([hidden])) .admin-chat-composer__send-icon {
  visibility: hidden;
}
.admin-chat-composer.admin-chat-composer--dragover {
  border-color: var(--admin-border-focus, var(--admin-primary, #0076cb));
  background: rgba(0, 118, 203, 0.04);
  box-shadow: 0 0 0 3px rgba(0, 118, 203, 0.15);
}
.admin-contact-thread__form.admin-chat-composer {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--admin-border-light, #e5e7eb);
}
.admin-sql-editor {
  max-width: 960px;
  margin: 0 auto;
  padding: var(--admin-space-xl) var(--admin-space-lg);
}
.admin-sql-editor__shell {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-lg);
}
.admin-sql-editor__card {
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius-lg);
  overflow: hidden;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}
.admin-sql-editor__card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--admin-space-sm) var(--admin-space-lg);
  border-bottom: 1px solid var(--admin-border-light);
  background: var(--admin-body-bg);
}
.admin-sql-editor__card-title {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  font-size: var(--admin-fs-base);
  font-weight: 600;
  color: var(--admin-text);
}
.admin-sql-editor__card-icon {
  font-size: 1.6rem;
  color: var(--admin-primary);
}
.admin-sql-editor__card-meta {
  display: flex;
  align-items: center;
  gap: var(--admin-space-sm);
}
.admin-sql-editor__hint {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  background: var(--admin-border-light);
  padding: 2px var(--admin-space-xs);
  border-radius: var(--admin-radius-xs);
  font-family: 'Menlo', 'Monaco', 'Consolas', monospace;
  letter-spacing: 0.02em;
}
.admin-sql-editor__editor-wrap {
  position: relative;
}
.admin-sql-editor__textarea {
  display: block;
  width: 100%;
  min-height: 260px;
  padding: var(--admin-space-lg);
  font-family: 'Menlo', 'Monaco', 'Consolas', 'Courier New', monospace;
  font-size: 1.35rem;
  line-height: 1.75;
  color: var(--admin-text);
  background: var(--admin-card-bg);
  border: none;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
  tab-size: 2;
}
.admin-sql-editor__textarea::placeholder {
  color: var(--admin-text-muted);
}
.admin-sql-editor__textarea:focus {
  background: var(--admin-card-bg);
}
.admin-sql-editor__card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-md);
  padding: var(--admin-space-sm) var(--admin-space-lg);
  border-top: 1px solid var(--admin-border-light);
  background: var(--admin-body-bg);
  flex-wrap: wrap;
}
.admin-sql-editor__tx-label {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  cursor: pointer;
  user-select: none;
}
.admin-sql-editor__tx-checkbox {
  accent-color: var(--admin-primary);
  width: 1.5rem;
  height: 1.5rem;
  cursor: pointer;
  flex-shrink: 0;
}
.admin-sql-editor__tx-text {
  font-size: var(--admin-fs-sm);
  color: var(--admin-text-secondary);
}
.admin-sql-editor__tx-text em {
  font-style: normal;
  color: var(--admin-text-muted);
}
.admin-sql-editor__footer-actions {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
}
.admin-sql-editor__run-btn {
  gap: var(--admin-space-xs);
  padding-left: var(--admin-space-lg);
  padding-right: var(--admin-space-lg);
  font-weight: 600;
}
.admin-sql-editor__run-btn i {
  font-size: 1.6rem;
}
.admin-sql-editor__result {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-sm);
}
.admin-sql-editor__result-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--admin-space-xs) 0;
}
.admin-sql-editor__result-label {
  font-size: var(--admin-fs-sm);
  font-weight: 600;
  color: var(--admin-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.admin-sql-editor__time {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
}
.admin-sql-editor__time i {
  font-size: 1.3rem;
}
.admin-sql-editor__block {
  background: var(--admin-card-bg);
  border: 1px solid var(--admin-border);
  border-radius: var(--admin-radius);
  overflow: hidden;
}
.admin-sql-editor__block.is-ok {
  border-left: 3px solid var(--admin-success);
}
.admin-sql-editor__block.is-select {
  border-left: 3px solid var(--admin-primary);
}
.admin-sql-editor__block.is-error {
  border-left: 3px solid var(--admin-danger, #c81e1e);
}
.admin-sql-editor__block-head {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  padding: var(--admin-space-xs) var(--admin-space-md);
  background: var(--admin-body-bg);
  border-bottom: 1px solid var(--admin-border-light);
}
.admin-sql-editor__block-seq {
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-secondary);
  font-weight: 500;
}
.admin-sql-editor__badge {
  display: inline-flex;
  align-items: center;
  padding: 1px 7px;
  border-radius: var(--admin-radius-xs);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.8;
}
.admin-sql-editor__badge--ok {
  background: var(--admin-success-bg);
  color: var(--admin-success-text);
}
.admin-sql-editor__badge--select {
  background: var(--admin-primary-light);
  color: var(--admin-primary-text);
}
.admin-sql-editor__badge--error {
  background: rgba(200, 30, 30, 0.1);
  color: var(--admin-danger, #c81e1e);
}
.admin-sql-editor__error {
  display: flex;
  align-items: flex-start;
  gap: var(--admin-space-xs);
  padding: var(--admin-space-md) var(--admin-space-lg);
  color: var(--admin-danger, #c81e1e);
  font-size: var(--admin-fs-sm);
  font-family: 'Menlo', 'Monaco', 'Consolas', monospace;
  white-space: pre-wrap;
  word-break: break-all;
  line-height: 1.6;
}
.admin-sql-editor__error i {
  font-size: 1.6rem;
  flex-shrink: 0;
  margin-top: 1px;
}
.admin-sql-editor__empty {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  padding: var(--admin-space-md) var(--admin-space-lg);
  color: var(--admin-text-muted);
  font-size: var(--admin-fs-sm);
  margin: 0;
}
.admin-sql-editor__empty i {
  font-size: 1.8rem;
}
.admin-sql-editor__affected {
  display: flex;
  align-items: center;
  gap: var(--admin-space-xs);
  padding: var(--admin-space-md) var(--admin-space-lg);
  font-size: var(--admin-fs-sm);
  color: var(--admin-success-text);
  font-weight: 600;
}
.admin-sql-editor__affected i {
  font-size: 1.6rem;
}
.admin-sql-editor__count {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: var(--admin-space-xs) var(--admin-space-md);
  font-size: var(--admin-fs-xs);
  color: var(--admin-text-muted);
  border-top: 1px solid var(--admin-border-light);
  background: var(--admin-body-bg);
}
.admin-sql-editor__count i {
  font-size: 1.3rem;
}
.admin-sql-editor__table-wrap {
  overflow-x: auto;
}
.admin-sql-editor__table {
  width: 100%;
  font-size: var(--admin-fs-sm);
}
.admin-sql-editor__table th,
.admin-sql-editor__table td {
  white-space: nowrap;
}
.admin-sql-editor__null {
  font-style: italic;
  color: var(--admin-text-muted);
  font-size: 0.9em;
} /*# sourceMappingURL=style.css.map */
