/**
 * Tailwind CSS v3.4.1 - Precompiled for 花雨庭玩家纪念网
 * Generated for production use to replace CDN version
 */

/* ===== CSS Reset & Base ===== */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
::before,::after{--tw-content:''}
html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}
body{margin:0;line-height:inherit}
hr{height:0;color:inherit;border-top-width:1px}
abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-0.25em}
sup{top:-0.5em}
table{text-indent:0;border-color:inherit;border-collapse:collapse}
button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}
button,select{text-transform:none}
button,[type='button'],[type='reset'],[type='submit']{-webkit-appearance:button;background-color:transparent;background-image:none}
:-moz-focusring{outline:auto}
:-moz-ui-invalid{box-shadow:none}
progress{vertical-align:baseline}
::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}
[type='search']{-webkit-appearance:textfield;outline-offset:-2px}
::-webkit-search-decoration{-webkit-appearance:none}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
summary{display:list-item}
blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}
fieldset{margin:0;padding:0}
legend{padding:0}
ol,ul,menu{list-style:none;margin:0;padding:0}
dialog{padding:0}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}
button,[role="button"]{cursor:pointer}
:disabled{cursor:default}
img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}
img,video{max-width:100%;height:auto}
[hidden]{display:none}

/* ===== CSS Variables ===== */
:root{
  --tw-bg-opacity:1;
  --tw-text-opacity:1;
  --tw-border-opacity:1;
  --tw-shadow:0 0 #0000;
  --tw-ring-inset:var(--tw-empty,);
  --tw-ring-offset-width:0px;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-blur:0px;
  --tw-brightness:1;
  --tw-contrast:1;
  --tw-grayscale:0; 
  --tw-hue-rotate:0deg;
  --tw-invert:0;
  --tw-saturate:1;
  --tw-sepia:0;
  --tw-drop-shadow:0 0 #0000;
  --tw-backdrop-blur:0px;
  --tw-backdrop-brightness:1;
  --tw-backdrop-contrast:1;
  --tw-backdrop-grayscale:0; 
  --tw-backdrop-hue-rotate:0deg;
  --tw-backdrop-invert:0;
  --tw-backdrop-opacity:1;
  --tw-backdrop-saturate:1;
  --tw-backdrop-sepia:0;
}

/* Custom Colors */
:root{
  --color-primary:#ffb8c2;
  --color-primary-dark:#e89da8;
  --color-background-light:#f8f5f6;
  --color-background-dark:#230f12;
}

/* Dark mode */
.dark{
  color-scheme:dark;
}

/* ===== Layout ===== */
.relative{position:relative}
.absolute{position:absolute}
.fixed{position:fixed}
.inset-0{inset:0px}
.top-0{top:0px}
.bottom-0{bottom:0px}
.left-0{left:0px}
.right-0{right:0px}
.left-4{left:1rem}
.z-0{z-index:0}
.z-10{z-index:10}
.z-40{z-index:40}
.z-50{z-index:50}
.mx-auto{margin-left:auto;margin-right:auto}
.mb-2{margin-bottom:0.5rem}
.mb-3{margin-bottom:0.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.mb-10{margin-bottom:2.5rem}
.mb-12{margin-bottom:3rem}
.mt-2{margin-top:0.5rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2rem}
.mt-12{margin-top:3rem}
.mt-20{margin-top:5rem}
.ml-12{margin-left:3rem}
.mr-auto{margin-right:auto}
.block{display:block}
.inline-block{display:inline-block}
.inline-flex{display:inline-flex}
.flex{display:flex}
.grid{display:grid}
.hidden{display:none}
.size-4{width:1rem;height:1rem}
.size-8{width:2rem;height:2rem}
.size-10{width:2.5rem;height:2.5rem}
.size-12{width:3rem;height:3rem}
.size-16{width:4rem;height:4rem}
.h-1{height:0.25rem}
.h-10{height:2.5rem}
.h-14{height:3.5rem}
.h-full{height:100%}
.h-screen{height:100vh}
.min-h-screen{min-height:100vh}
.min-h-\[520px\]{min-height:520px}
.w-14{width:3.5rem}
.w-24{width:6rem}
.w-full{width:100%}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-5xl{max-width:64rem}
.max-w-xs{max-width:20rem}
.max-w-xl{max-width:36rem}
.max-w-3xl{max-width:48rem}
.flex-1{flex:1 1 0%}
.flex-shrink-0{flex-shrink:0}
.flex-grow{flex-grow:1}
.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
.translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}

.translate-x-full{--tw-translate-x:100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
.cursor-pointer{cursor:pointer}
.cursor-grab{cursor:grab}
.cursor-grabbing{cursor:grabbing}
.select-none{user-select:none}
.resize-none{resize:none}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.items-start{align-items:flex-start}
.items-end{align-items:flex-end}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.gap-2{gap:0.5rem}
.gap-3{gap:0.75rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}
.gap-10{gap:2.5rem}
.gap-12{gap:3rem}
.space-y-4 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}
.space-y-6 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}
.overflow-hidden{overflow:hidden}
.overflow-x-auto{overflow-x:auto}
.overflow-x-hidden{overflow-x:hidden}
.scroll-smooth{scroll-behavior:smooth}
.rounded-2xl{border-radius:1rem}
.rounded-3xl{border-radius:1.5rem}
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:0.5rem}
.rounded-xl{border-radius:0.75rem}
.rounded-none{border-radius:0}
.border{border-width:1px}
.border-2{border-width:2px}
.border-b{border-bottom-width:1px}
.border-t{border-top-width:1px}
.border-primary\/10{border-color:rgb(255 184 194 / 0.1)}
.border-primary\/20{border-color:rgb(255 184 194 / 0.2)}
.border-primary\/30{border-color:rgb(255 184 194 / 0.3)}
.border-white\/20{border-color:rgb(255 255 255 / 0.2)}
.bg-background-light{background-color:#f8f5f6}
.bg-background-dark{background-color:#230f12}
.bg-black\/20{background-color:rgb(0 0 0 / 0.2)}
.bg-black\/40{background-color:rgb(0 0 0 / 0.4)}
.bg-black\/80{background-color:rgb(0 0 0 / 0.8)}
.bg-primary{background-color:#ffb8c2}
.bg-primary\/5{background-color:rgb(255 184 194 / 0.05)}
.bg-primary\/10{background-color:rgb(255 184 194 / 0.1)}
.bg-primary\/20{background-color:rgb(255 184 194 / 0.2)}
.bg-white{background-color:#ffffff}
.bg-white\/80{background-color:rgb(255 255 255 / 0.8)}
.bg-white\/20{background-color:rgb(255 255 255 / 0.2)}
.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}
.from-background-light{--tw-gradient-from:#f8f5f6 var(--tw-gradient-from-position);--tw-gradient-to:rgb(248 245 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-black\/80{--tw-gradient-from:rgb(0 0 0 / 0.8) var(--tw-gradient-from-position);--tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.via-transparent{--tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),transparent var(--tw-gradient-via-position),var(--tw-gradient-to)}
.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}
.fill-1{font-variation-settings:'FILL' 1}
.object-contain{object-fit:contain}
.p-4{padding:1rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.px-3{padding-left:0.75rem;padding-right:0.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.px-8{padding-left:2rem;padding-right:2rem}
.py-1{padding-top:0.25rem;padding-bottom:0.25rem}
.py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-16{padding-top:4rem;padding-bottom:4rem}
.py-24{padding-top:6rem;padding-bottom:6rem}
.pb-8{padding-bottom:2rem}
.pb-24{padding-bottom:6rem}
.pt-8{padding-top:2rem}
.text-center{text-align:center}
.text-right{text-align:right}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-4xl{font-size:2.25rem;line-height:2.5rem}
.text-5xl{font-size:3rem;line-height:1}
.text-\[10px\]{font-size:10px}
.text-\[10px\]{font-size:10px}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-sm{font-size:0.875rem;line-height:1.25rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-xs{font-size:0.75rem;line-height:1rem}
.font-black{font-weight:900}
.font-bold{font-weight:700}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.uppercase{text-transform:uppercase}
.italic{font-style:italic}
.leading-\[1\.1\]{line-height:1.1}
.leading-none{line-height:1}
.leading-relaxed{line-height:1.625}
.leading-snug{line-height:1.375}
.leading-tight{line-height:1.25}
.tracking-tight{letter-spacing:-0.025em}
.tracking-tighter{letter-spacing:-0.05em}
.tracking-wider{letter-spacing:0.05em}
.tracking-widest{letter-spacing:0.1em}
.text-background-dark{color:#230f12}
.text-primary{color:#ffb8c2}
.text-slate-500{color:#64748b}
.text-slate-900{color:#0f172a}
.text-white{color:#ffffff}
.opacity-40{opacity:0.4}
.opacity-60{opacity:0.6}
.opacity-70{opacity:0.7}
.opacity-80{opacity:0.8}
.opacity-90{opacity:0.9}
.bg-cover{background-size:cover}
.bg-center{background-position:center}
.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}
.backdrop-blur-md{--tw-backdrop-blur:blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}
.backdrop-blur-lg{--tw-backdrop-blur:blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.duration-300{transition-duration:300ms}
.animate-bounce{animation:bounce 1s infinite}
.animate-pulse{animation:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite}
.pointer-events-none{pointer-events:none}
.last\:mb-0:last-child{margin-bottom:0}
.hover\:gap-3:hover{gap:0.75rem}
.hover\:bg-primary\/10:hover{background-color:rgb(255 184 194 / 0.1)}
.hover\:bg-primary\/30:hover{background-color:rgb(255 184 194 / 0.3)}
.hover\:bg-white\/40:hover{background-color:rgb(255 255 255 / 0.4)}
.hover\:text-primary:hover{color:#ffb8c2}
.hover\:opacity-100:hover{opacity:1}
.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1),0 4px 6px -4px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}
.hover\:shadow-2xl:hover{--tw-shadow:0 25px 50px -12px rgb(0 0 0 / 0.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}
.hover\:shadow-primary\/20:hover{--tw-shadow-color:rgb(255 184 194 / 0.2);--tw-shadow:var(--tw-shadow-colored)}
.hover\:brightness-105:hover{--tw-brightness:brightness(1.05);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}
.group:hover .group-hover\:text-primary{color:#ffb8c2}
.group:hover .group-hover\:shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0 / 0.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}
.group:hover .group-hover\:shadow-primary\/20{--tw-shadow-color:rgb(255 184 194 / 0.2);--tw-shadow:var(--tw-shadow-colored)}
.group:active .group-active\:cursor-grabbing{cursor:grabbing}

/* Dark mode styles */
.dark .dark\:block{display:block}
.dark .dark\:hidden{display:none}
.dark .dark\:border-background-dark{border-color:#230f12}
.dark .dark\:bg-background-dark{background-color:#230f12}
.dark .dark\:bg-black\/40{background-color:rgb(0 0 0 / 0.4)}
.dark .dark\:from-background-dark{--tw-gradient-from:#230f12 var(--tw-gradient-from-position);--tw-gradient-to:rgb(35 15 18 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.dark .dark\:bg-primary\/5{background-color:rgb(255 184 194 / 0.05)}
.dark .dark\:text-slate-100{color:#f1f5f9}
.dark .dark\:text-slate-400{color:#94a3b8}
.dark .hover\:dark\:bg-black\/40:hover{background-color:rgb(0 0 0 / 0.4)}

/* Responsive styles */
@media (min-width:640px){
.sm\:flex{display:flex}
.sm\:hidden{display:none}
.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (min-width:768px){
.md\:block{display:block}
.md\:flex{display:flex}
.md\:hidden{display:none}
.md\:w-1\/2{width:50%}
.md\:w-full{width:100%}
.md\:flex-row{flex-direction:row}
.md\:flex-row-reverse{flex-direction:row-reverse}
.md\:items-center{align-items:center}
.md\:justify-center{justify-content:center}
.md\:gap-10{gap:2.5rem}
.md\:px-20{padding-left:5rem;padding-right:5rem}
.md\:pr-12{padding-right:3rem}
.md\:pl-12{padding-left:3rem}
.md\:text-right{text-align:right}
.md\:text-5xl{font-size:3rem;line-height:1}
.md\:text-7xl{font-size:4.5rem;line-height:1}
.md\:ml-auto{margin-left:auto}
.md\:left-1\/2{left:50%}
.md\:ml-0{margin-left:0}
.md\:-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
}

@media (min-width:1024px){
.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Aspect ratio for video */
.aspect-video{aspect-ratio:16/9}

/* Animations */
@keyframes bounce{
0%,100%{transform:translateY(-25%);animation-timing-function:cubic-bezier(0.8,0,1,1)}
50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,0.2,1)}
}
@keyframes pulse{
0%,100%{opacity:1}
50%{opacity:.5}
}

/* Font family */
.font-display{font-family:"Space Grotesk",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}

/* Size utility */
.size-10{width:2.5rem;height:2.5rem}
.size-16{width:4rem;height:4rem}
