/* cyrillic */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/8d697b304b401681-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/ba015fad6dcf6784-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/569ce4b8f30dc480-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Geist Fallback';src: local("Arial");ascent-override: 95.94%;descent-override: 28.16%;line-gap-override: 0.00%;size-adjust: 104.76%
}.__className_5cfdac {font-family: 'Geist', 'Geist Fallback', system-ui, arial, sans-serif;font-style: normal
}.__variable_5cfdac {--font-geist-sans: 'Geist', 'Geist Fallback', system-ui, arial, sans-serif
}

/* cyrillic */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/9610d9e46709d722-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/747892c23ea88013-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/media/93f479601ee12b01-s.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Geist Mono Fallback';src: local("Arial");ascent-override: 74.67%;descent-override: 21.92%;line-gap-override: 0.00%;size-adjust: 134.59%
}.__className_580fd3 {font-family: 'Geist Mono', 'Geist Mono Fallback', Menlo, Monaco, Courier New, monospace;font-style: normal
}.__variable_580fd3 {--font-geist-mono: 'Geist Mono', 'Geist Mono Fallback', Menlo, Monaco, Courier New, monospace
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/55c55f0601d81cf3-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/26a46d62cd723877-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/97e0cb1ae144a2a9-s.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/581909926a08bbc8-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/df0a9ae256c0569c-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/8e9860b6e62d6359-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/55c55f0601d81cf3-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/26a46d62cd723877-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/97e0cb1ae144a2a9-s.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/581909926a08bbc8-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/df0a9ae256c0569c-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/8e9860b6e62d6359-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/55c55f0601d81cf3-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/26a46d62cd723877-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/97e0cb1ae144a2a9-s.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/581909926a08bbc8-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/df0a9ae256c0569c-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/8e9860b6e62d6359-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/55c55f0601d81cf3-s.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/26a46d62cd723877-s.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/97e0cb1ae144a2a9-s.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/581909926a08bbc8-s.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/df0a9ae256c0569c-s.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/8e9860b6e62d6359-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Inter Fallback';src: local("Arial");ascent-override: 90.44%;descent-override: 22.52%;line-gap-override: 0.00%;size-adjust: 107.12%
}.__className_7c159a {font-family: 'Inter', 'Inter Fallback', system-ui, sans-serif;font-style: normal
}.__variable_7c159a {--font-inter: 'Inter', 'Inter Fallback', system-ui, sans-serif
}

/* latin-ext */
@font-face {
  font-family: 'Cinzel';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/b497598118275079-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cinzel';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/_next/static/media/37417c97fb0b4bc9-s.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cinzel';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/b497598118275079-s.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cinzel';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/_next/static/media/37417c97fb0b4bc9-s.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}@font-face {font-family: 'Cinzel Fallback';src: local("Times New Roman");ascent-override: 71.31%;descent-override: 27.18%;line-gap-override: 0.00%;size-adjust: 136.86%
}.__className_d89d4d {font-family: 'Cinzel', 'Cinzel Fallback', serif;font-style: normal
}.__variable_d89d4d {--font-cinzel: 'Cinzel', 'Cinzel Fallback', serif
}

/* Core Animation Utilities */

/* Base animation classes */
.animate-fade-in {
  animation: fadeIn 0.6s ease-out forwards;
  opacity: 0;
}

.animate-fade-in-up {
  animation: fadeInUp 0.8s ease-out forwards;
  opacity: 0;
  transform: translateY(20px);
}

.animate-fade-in-down {
  animation: fadeInDown 0.6s ease-out forwards;
  opacity: 0;
  transform: translateY(-20px);
}

.animate-fade-in-left {
  animation: fadeInLeft 0.7s ease-out forwards;
  opacity: 0;
  transform: translateX(-30px);
}

.animate-fade-in-right {
  animation: fadeInRight 0.7s ease-out forwards;
  opacity: 0;
  transform: translateX(30px);
}

.animate-scale-in {
  animation: scaleIn 0.5s ease-out forwards;
  opacity: 0;
  transform: scale(0.9);
}

.animate-bounce-in {
  animation: bounceIn 0.8s ease-out forwards;
  opacity: 0;
  transform: scale(0.3);
}

/* Staggered animations */
.animate-stagger-1 { animation-delay: 0.1s; }
.animate-stagger-2 { animation-delay: 0.2s; }
.animate-stagger-3 { animation-delay: 0.3s; }
.animate-stagger-4 { animation-delay: 0.4s; }
.animate-stagger-5 { animation-delay: 0.5s; }
.animate-stagger-6 { animation-delay: 0.6s; }

/* Hover effects */
.hover-lift {
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}

.hover-lift:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

.hover-scale {
  transition: transform 0.3s ease-out;
}

.hover-scale:hover {
  transform: scale(1.05);
}

.hover-glow {
  transition: box-shadow 0.3s ease-out;
}

.hover-glow:hover {
  box-shadow: 0 0 20px rgba(184, 134, 11, 0.3);
}

/* Card flip animation */
.card-flip {
  perspective: 1000px;
}

.card-flip-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}

.card-flip.flipped .card-flip-inner {
  transform: rotateY(180deg);
}

.card-flip-front,
.card-flip-back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}

.card-flip-back {
  transform: rotateY(180deg);
}

/* Loading animations */
.pulse-glow {
  animation: pulseGlow 2s ease-in-out infinite;
}

.rotate-slow {
  animation: rotateSlow 3s linear infinite;
}

.float {
  animation: float 3s ease-in-out infinite;
}

/* Keyframes */
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes pulseGlow {
  0%, 100% {
    box-shadow: 0 0 5px rgba(184, 134, 11, 0.5);
  }
  50% {
    box-shadow: 0 0 20px rgba(184, 134, 11, 0.8);
  }
}

@keyframes rotateSlow {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-10px);
  }
}

/* Intersection Observer triggered animations */
.animate-on-scroll {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.animate-on-scroll.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Reduce motion for accessibility */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  
  .animate-fade-in,
  .animate-fade-in-up,
  .animate-fade-in-down,
  .animate-fade-in-left,
  .animate-fade-in-right,
  .animate-scale-in,
  .animate-bounce-in {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/**
 * Tailwind CSS 强制编译类名
 * 确保所有动态类名都被正确编译
 */

/* 纯毛玻璃效果 */
.backdrop-blur-lg { -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.backdrop-blur-xl { -webkit-backdrop-filter: blur(24px); backdrop-filter: blur(24px); }
.backdrop-saturate-150 { -webkit-backdrop-filter: saturate(1.5); backdrop-filter: saturate(1.5); }
.bg-transparent { background-color: transparent; }

/* 文字颜色 - 适合透明背景 */
.text-gray-100 { color: rgb(243 244 246); }
.text-amber-100 { color: rgb(254 243 199); }
.text-amber-200 { color: rgb(253 230 138); }
.text-amber-300 { color: rgb(252 211 77); }
.text-violet-100 { color: rgb(237 233 254); }
.text-violet-200 { color: rgb(221 214 254); }
.text-violet-300 { color: rgb(196 181 253); }
.text-emerald-100 { color: rgb(209 250 229); }
.text-emerald-200 { color: rgb(167 243 208); }
.text-emerald-300 { color: rgb(110 231 183); }

/* 专业图标设计色阶 - 纯毛玻璃风格 */
.bg-amber-300\/30 { background-color: rgb(252 211 77 / 0.3); }
.bg-amber-200\/20 { background-color: rgb(253 230 138 / 0.2); }
.from-amber-500\/40 { --tw-gradient-from: rgb(245 158 11 / 0.4); }
.to-orange-400\/40 { --tw-gradient-to: rgb(251 146 60 / 0.4); }
.from-amber-200\/20 { --tw-gradient-from: rgb(253 230 138 / 0.2); }
.from-amber-500\/50 { --tw-gradient-from: rgb(245 158 11 / 0.5); }
.via-orange-400\/20 { --tw-gradient-via: rgb(251 146 60 / 0.2); }
.via-orange-400\/40 { --tw-gradient-via: rgb(251 146 60 / 0.4); }
.to-amber-500\/30 { --tw-gradient-to: rgb(245 158 11 / 0.3); }
.to-amber-500\/50 { --tw-gradient-to: rgb(245 158 11 / 0.5); }

.bg-violet-300\/30 { background-color: rgb(196 181 253 / 0.3); }
.bg-violet-200\/20 { background-color: rgb(221 214 254 / 0.2); }
.from-violet-500\/40 { --tw-gradient-from: rgb(139 92 246 / 0.4); }
.to-blue-400\/40 { --tw-gradient-to: rgb(96 165 250 / 0.4); }
.from-violet-200\/20 { --tw-gradient-from: rgb(221 214 254 / 0.2); }
.from-violet-500\/50 { --tw-gradient-from: rgb(139 92 246 / 0.5); }
.via-blue-400\/20 { --tw-gradient-via: rgb(96 165 250 / 0.2); }
.via-blue-400\/40 { --tw-gradient-via: rgb(96 165 250 / 0.4); }
.to-violet-500\/30 { --tw-gradient-to: rgb(139 92 246 / 0.3); }
.to-violet-500\/50 { --tw-gradient-to: rgb(139 92 246 / 0.5); }

.bg-emerald-300\/30 { background-color: rgb(110 231 183 / 0.3); }
.bg-emerald-200\/20 { background-color: rgb(167 243 208 / 0.2); }
.from-emerald-500\/40 { --tw-gradient-from: rgb(16 185 129 / 0.4); }
.to-cyan-400\/40 { --tw-gradient-to: rgb(34 211 238 / 0.4); }
.from-emerald-200\/20 { --tw-gradient-from: rgb(167 243 208 / 0.2); }
.from-emerald-500\/50 { --tw-gradient-from: rgb(16 185 129 / 0.5); }
.via-cyan-400\/20 { --tw-gradient-via: rgb(34 211 238 / 0.2); }
.via-cyan-400\/40 { --tw-gradient-via: rgb(34 211 238 / 0.4); }
.to-emerald-500\/30 { --tw-gradient-to: rgb(16 185 129 / 0.3); }
.to-emerald-500\/50 { --tw-gradient-to: rgb(16 185 129 / 0.5); }

/* 渐变标题 */
.from-amber-200 { --tw-gradient-from: rgb(253 230 138); }
.via-amber-100 { --tw-gradient-via: rgb(254 243 199); }
.to-orange-200 { --tw-gradient-to: rgb(254 215 170); }

.from-violet-200 { --tw-gradient-from: rgb(221 214 254); }
.via-violet-100 { --tw-gradient-via: rgb(237 233 254); }
.to-blue-200 { --tw-gradient-to: rgb(191 219 254); }

.from-emerald-200 { --tw-gradient-from: rgb(167 243 208); }
.via-emerald-100 { --tw-gradient-via: rgb(209 250 229); }
.to-teal-200 { --tw-gradient-to: rgb(153 246 228); }

/* 颜色变体 */
.text-amber-950 { color: rgb(69 26 3); }
.text-violet-950 { color: rgb(46 16 101); }
.text-emerald-950 { color: rgb(2 44 34); }

/* 专业图标设计色阶 - 翡翠绿主题 */
.bg-emerald-100\/70 { background-color: rgb(209 250 229 / 0.7); }
.bg-emerald-200\/50 { background-color: rgb(167 243 208 / 0.5); }
.from-emerald-500\/30 { --tw-gradient-from: rgb(16 185 129 / 0.3); }
.to-cyan-400\/30 { --tw-gradient-to: rgb(34 211 238 / 0.3); }
.from-emerald-50\/60 { --tw-gradient-from: rgb(236 253 245 / 0.6); }
.from-emerald-200\/70 { --tw-gradient-from: rgb(167 243 208 / 0.7); }
.via-emerald-300\/60 { --tw-gradient-via: rgb(110 231 183 / 0.6); }
.to-emerald-200\/70 { --tw-gradient-to: rgb(167 243 208 / 0.7); }
.from-emerald-300\/80 { --tw-gradient-from: rgb(110 231 183 / 0.8); }
.via-cyan-300\/70 { --tw-gradient-via: rgb(103 232 249 / 0.7); }
.to-emerald-300\/80 { --tw-gradient-to: rgb(110 231 183 / 0.8); }
.text-emerald-950 { color: rgb(2 44 34); }

.backdrop-blur-md { -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.backdrop-blur-xl { -webkit-backdrop-filter: blur(24px); backdrop-filter: blur(24px); }
.backdrop-saturate-150 { -webkit-backdrop-filter: saturate(1.5); backdrop-filter: saturate(1.5); }

/* 通用文字颜色 */
.text-slate-800 { color: rgb(30 41 59); }

/* 金色主题 */
.border-amber-300\/60 { border-color: rgb(252 211 77 / 0.6); }
.border-amber-300\/90 { border-color: rgb(252 211 77 / 0.9); }
.bg-amber-300 { background-color: rgb(252 211 77); }
.text-amber-300 { color: rgb(252 211 77); }
.text-amber-400 { color: rgb(251 191 36); }
.text-amber-500 { color: rgb(245 158 11); }
.text-amber-700 { color: rgb(180 83 9); }
.text-amber-900 { color: rgb(120 53 15); }
.bg-amber-500 { background-color: rgb(245 158 11); }
.ring-amber-300\/30 { --tw-ring-color: rgb(252 211 77 / 0.3); }
.shadow-amber-300\/20 { box-shadow: 0 0 20px rgb(252 211 77 / 0.2); }

/* 紫色主题 */
.border-violet-400\/60 { border-color: rgb(167 139 250 / 0.6); }
.border-violet-400\/90 { border-color: rgb(167 139 250 / 0.9); }
.bg-violet-300 { background-color: rgb(196 181 253); }
.bg-violet-500 { background-color: rgb(139 92 246); }
.text-violet-400 { color: rgb(167 139 250); }
.text-violet-700 { color: rgb(109 40 217); }
.text-violet-900 { color: rgb(76 29 149); }
.ring-violet-400\/30 { --tw-ring-color: rgb(167 139 250 / 0.3); }
.shadow-violet-400\/20 { box-shadow: 0 0 20px rgb(167 139 250 / 0.2); }

/* 翡翠绿主题 */
.border-emerald-300\/60 { border-color: rgb(110 231 183 / 0.6); }
.border-emerald-300\/90 { border-color: rgb(110 231 183 / 0.9); }
.bg-emerald-300 { background-color: rgb(110 231 183); }
.bg-emerald-500 { background-color: rgb(16 185 129); }
.text-emerald-300 { color: rgb(110 231 183); }
.text-emerald-400 { color: rgb(52 211 153); }
.text-emerald-700 { color: rgb(4 120 87); }
.text-emerald-900 { color: rgb(6 78 59); }
.ring-emerald-300\/30 { --tw-ring-color: rgb(110 231 183 / 0.3); }
.shadow-emerald-300\/20 { box-shadow: 0 0 20px rgb(110 231 183 / 0.2); }

/* 渐变背景 */
.bg-gradient-to-r { background-image: linear-gradient(to right, var(--tw-gradient-stops)); }
.bg-gradient-to-br { background-image: linear-gradient(to bottom right, var(--tw-gradient-stops)); }
.bg-gradient-to-tr { background-image: linear-gradient(to top right, var(--tw-gradient-stops)); }
.bg-gradient-to-b { background-image: linear-gradient(to bottom, var(--tw-gradient-stops)); }

/* 动态渐变色值 */
.from-amber-300\/30 { --tw-gradient-from: rgb(252 211 77 / 0.3); }
.from-amber-500 { --tw-gradient-from: rgb(245 158 11); }
.from-amber-600 { --tw-gradient-from: rgb(217 119 6); }
.via-amber-300 { --tw-gradient-via: rgb(252 211 77); }
.via-orange-400\/25 { --tw-gradient-via: rgb(251 146 60 / 0.25); }
.via-orange-500 { --tw-gradient-via: rgb(249 115 22); }
.to-amber-300\/30 { --tw-gradient-to: rgb(252 211 77 / 0.3); }
.to-orange-500 { --tw-gradient-to: rgb(249 115 22); }

.from-violet-400\/30 { --tw-gradient-from: rgb(167 139 250 / 0.3); }
.from-violet-600 { --tw-gradient-from: rgb(124 58 237); }
.via-violet-400 { --tw-gradient-via: rgb(167 139 250); }
.via-blue-500\/25 { --tw-gradient-via: rgb(59 130 246 / 0.25); }
.via-blue-600 { --tw-gradient-via: rgb(37 99 235); }
.to-violet-400\/30 { --tw-gradient-to: rgb(167 139 250 / 0.3); }
.to-blue-600 { --tw-gradient-to: rgb(37 99 235); }

.from-emerald-300\/30 { --tw-gradient-from: rgb(110 231 183 / 0.3); }
.from-emerald-600 { --tw-gradient-from: rgb(5 150 105); }
.via-emerald-400 { --tw-gradient-via: rgb(52 211 153); }
.via-cyan-400\/25 { --tw-gradient-via: rgb(34 211 238 / 0.25); }
.to-emerald-300\/30 { --tw-gradient-to: rgb(110 231 183 / 0.3); }
.to-teal-600 { --tw-gradient-to: rgb(13 148 136); }

/* 360全景图片优化显示样式 */

.panoramic-container {
  position: absolute;
  inset: 0;
  overflow: hidden;
  /* 添加微妙的透视效果 */
  perspective: 1000px;
}

.panoramic-image {
  /* 基础变换，让图片看起来更立体 */
  transform: scale(1.1) rotateY(-2deg);
  transition: transform 0.6s ease-out;
  
  /* 确保图片填满容器但保持比例 */
  width: 110% !important;
  height: 110% !important;
  left: -5% !important;
  top: -5% !important;
}

/* 悬停效果：模拟轻微的相机移动 */
.group:hover .panoramic-image {
  transform: scale(1.05) rotateY(0deg);
}

/* 针对不同设备的优化 */
@media (max-width: 768px) {
  .panoramic-image {
    /* 移动设备上减少变换，避免性能问题 */
    transform: scale(1.05) rotateY(-1deg);
  }
  
  .group:hover .panoramic-image {
    transform: scale(1.02) rotateY(0deg);
  }
}

/* 可选：添加伪3D边框效果 */
.panoramic-container::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    45deg,
    transparent 0%,
    rgba(255, 255, 255, 0.1) 50%,
    transparent 100%
  );
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.group:hover .panoramic-container::after {
  opacity: 1;
}

