
:root{
  --bg:#f7f3e8;--soft:#faf7ef;--paper:#fffdf8;--brown:#76551d;--ink:#443827;
  --gold:#b58628;--gold2:#8f671b;--line:#dfcfaa;--muted:#8d7d66;--shadow:0 8px 24px rgba(94,66,24,.08)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif}
button,input,textarea{font:inherit}
button{cursor:pointer}
.top-strip{height:8px;background:#e2e7ed}
.site-header{height:82px;position:sticky;top:0;z-index:50;background:rgba(252,250,244,.97);border-bottom:1px solid rgba(120,88,28,.08);backdrop-filter:blur(10px)}
.header-inner{width:min(1160px,calc(100% - 48px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;flex-direction:column;text-decoration:none;color:#a87516;line-height:1}
.brand-cn{font-weight:900;font-size:21px}.brand-en{font-size:8px;letter-spacing:2px;margin-top:6px;font-weight:900}
.nav{display:flex;align-items:center;gap:38px;height:100%}
.nav a{position:relative;height:100%;display:flex;align-items:center;text-decoration:none;color:#493d2d;font-size:17px;font-weight:800}
.nav a.active,.nav a:hover{color:#a87516}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:15px;height:3px;border-radius:6px;background:#b58628}
.mobile-menu-btn{display:none;border:0;background:none}.mobile-menu-btn span{display:block;width:24px;height:2px;margin:5px;background:#76551d}
.section{scroll-margin-top:82px}.content-wrap{width:min(1200px,calc(100% - 56px));margin:auto}

.hero{padding:90px 0 62px;overflow:hidden;position:relative}
.hero:before{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#d9ad51;left:5%;top:150px;box-shadow:240px 310px #d9ad51,520px 70px #d9ad51,1040px 150px #d9ad51}
.hero-inner{width:min(1040px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 470px;gap:62px;align-items:center}
.social-tags{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px}.social-tags span{padding:7px 13px;border-radius:20px;background:#f4e4ad;color:#9c6e16;font-size:12px;font-weight:800}
.hero h1{margin:0;color:#76551d;font-size:74px;line-height:1.12;letter-spacing:2px;font-weight:900}
.hero-en{margin-top:12px;color:#76551d;font-size:39px;line-height:1.32;letter-spacing:3px;font-weight:900}
.stats{display:flex;margin-top:56px}.stat{min-width:145px;padding-right:28px}.stat+.stat{border-left:1px solid #b9c6b8;padding-left:28px}.stat strong{display:block;color:#876020;font-size:30px}.stat span{display:block;font-size:11px;color:#786d5b;margin-top:8px}
.hero-line{width:144px;height:2px;background:#b78a30;margin-top:42px}.hero-slogan{display:flex;flex-direction:column;gap:10px;margin-top:24px;font-size:17px;line-height:1.5}.hero-slogan b{font-weight:800}
.hero-art{width:470px;height:650px}.hero-art img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.banner-carousel{width:min(1040px,calc(100% - 48px));margin:58px auto 0;overflow:hidden}.banner-track{display:flex;height:410px;transition:transform .65s cubic-bezier(.22,.61,.36,1)}.banner-slide{flex:0 0 100%;height:410px;border-radius:26px;overflow:hidden}.banner-slide img{width:100%;height:100%;object-fit:cover;display:block}.banner-slide:nth-child(even) img{object-fit:contain;background:#faf7ef}
.carousel-dots{height:30px;display:flex;align-items:center;justify-content:center;gap:8px}.carousel-dots button{border:0;padding:0;width:7px;height:7px;border-radius:50%;background:#bfc0bd}.carousel-dots button.active{width:18px;border-radius:9px;background:#b18528}

.menu-section{padding:92px 0 116px;background:#f7f3e8}.menu-heading-row{display:flex;justify-content:space-between;align-items:flex-start;gap:28px}.eyebrow{font-size:12px;letter-spacing:4px;color:#b28123;font-weight:900;margin-bottom:8px}.menu-head-copy h2,.section-title{margin:0;color:#a46f12;font-size:50px;line-height:1.03;font-weight:900}.menu-head-copy p,.section-subtitle{margin:10px 0 0;font-size:14px;color:#766b5a}
.quick-actions{display:flex;gap:12px;margin-top:10px}.quick-actions button{min-width:112px;height:42px;padding:0 16px;border-radius:12px;font-size:15px;font-weight:800}.outline-btn{border:1px solid #d9c594;background:#fffdfa;color:#765822}.gold-btn{border:0;background:linear-gradient(135deg,#be8d2f,#92701f);color:#fff;box-shadow:0 7px 18px rgba(123,87,22,.16)}.active-dot{display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%;background:#f6db7b;box-shadow:0 0 8px #f6db7b}
.menu-feature-panel{margin-top:28px;padding:18px;border:1px solid #d5b368;border-radius:16px;background:linear-gradient(135deg,#fffdf8,#f7efd9);box-shadow:var(--shadow)}.menu-feature-panel[hidden]{display:none}.feature-panel-title{font-size:18px;font-weight:900;color:#a46f12}.feature-panel-subtitle{font-size:11px;color:#8c7b62;margin-top:4px}.feature-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.feature-row{min-height:50px;border:1px solid #decba0;background:#fffdfa;border-radius:12px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:#735722}.feature-row em{font-style:normal;font-size:9px;border-radius:999px;padding:3px 7px;margin-left:5px;background:#efe0b3;color:#a07727}.feature-row b{font-size:12px;color:#9b6b14}.activity-text-row{margin-top:12px;border:1px solid #e1d2ae;background:#fff;border-radius:12px;padding:16px;color:#654f27}
.menu-tools{width:min(720px,100%);margin:34px auto 0}.search-box{height:52px;display:flex;align-items:center;border:1px solid #dbc79a;border-radius:16px;background:#fffdf9;box-shadow:0 4px 14px rgba(104,76,27,.05)}.search-icon{margin:0 12px 0 16px;color:#8a7b64;font-size:16px}.search-box input{flex:1;border:0;outline:none;background:transparent;font-size:15px;color:#5c513f;padding-right:15px}
.segmented{height:62px;margin-top:22px;padding:4px;display:grid;border:1px solid #dfd1aa;border-radius:32px;background:#fffdf9;box-shadow:0 4px 14px rgba(104,76,27,.05)}.segmented button{border:0;background:transparent;border-radius:28px;color:#5f513a;font-size:17px;font-weight:800}.segmented button.active{background:linear-gradient(90deg,#c6952d,#8f671c);color:#fff}
.menu-tab-panels{margin-top:32px}.menu-tab-panel{display:none}.menu-tab-panel.active{display:block}.all-group{padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #e1d2ae}.menu-list-group{margin-bottom:26px}.menu-group-title{margin:0 0 10px;color:#b17814;font-size:17px;font-weight:900}.menu-list-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.menu-list-item{height:42px;border:1px solid #dfcfab;background:#fffdfa;border-radius:11px;display:flex;align-items:center;padding:0 13px;color:#66522e;box-shadow:0 3px 10px rgba(89,67,31,.035)}.menu-list-item:hover{transform:translateY(-1px);box-shadow:0 7px 15px rgba(89,67,31,.075)}.menu-item-main{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;font-weight:700}.menu-mini-tag{margin-left:7px;padding:2px 7px;border-radius:999px;background:#efe0ab;color:#a17824;font-size:9px;font-weight:800}.menu-item-arrow{margin-left:auto;color:#986e1b;font-size:18px}.menu-list-item[hidden],.all-group[hidden],.menu-list-group[hidden]{display:none}

.activity-section,.play-section{padding:105px 0}.activity-section{background:#faf7ef}.play-section{background:#f7f3e8}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px;align-items:start}.feature-card{border:1px solid #e2d5b6;border-radius:18px;background:#fffdf7;padding:28px;min-height:0}.feature-card:first-child{grid-row:auto;min-height:0;background:#e5f2ee}.feature-card small{font-size:9px;letter-spacing:2px;color:#ae7f2a;font-weight:900}.feature-card h3{margin:12px 0 8px;color:#72531f}.feature-card p{font-size:12px;color:#7c705e;line-height:1.8;margin-bottom:0}
.player-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}.player-card{display:flex;align-items:center;gap:14px;border:1px solid #e5d8ba;background:#fffdf7;border-radius:17px;padding:18px}.avatar{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#f3dfa8;color:#8e671e;font-weight:900;font-size:18px;border:4px solid #faf3dc}.player-card h3{font-size:14px;margin:0 0 5px;color:#6d501e}.player-card p{font-size:10px;color:#938671;margin:0}.online{margin-left:auto;align-self:flex-start;font-size:9px;padding:4px 7px;border-radius:10px;background:#dfeeda;color:#5e7b55}

.reviews-showcase{padding:112px 0 135px;background:#f7f3e8;overflow:hidden}.reviews-heading{display:flex;align-items:center;gap:24px}.review-bubbles{position:relative;width:84px;height:82px;flex:0 0 84px}.review-bubbles span{position:absolute;width:72px;height:72px;border-radius:50%;background:#f1e4bc;left:0;top:0}.review-bubbles i{position:absolute;width:38px;height:38px;border-radius:50%;background:#e6c87c;right:0;bottom:0}.reviews-heading h2{margin:0;color:#806022;font-size:49px;line-height:1;font-weight:900}.reviews-heading p{margin:14px 0 0;color:#b0822d;font-size:17px;letter-spacing:8px;font-weight:900}
.review-marquee-window{width:min(1400px,100%);margin:46px auto 0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.review-marquee-track{display:flex;width:max-content;gap:38px;will-change:transform;animation:reviewScroll var(--review-speed,28s) linear infinite}.review-marquee-window:hover .review-marquee-track{animation-play-state:paused}.review-shot{width:193px;height:420px;flex:0 0 auto;border-radius:22px;overflow:hidden;background:#eee;box-shadow:0 12px 28px rgba(75,58,27,.08);cursor:zoom-in}.review-shot img{width:100%;height:100%;object-fit:cover;display:block}
@keyframes reviewScroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 19px))}}

.contact-section{padding:105px 0;background:#faf7ef}.contact-wrap{position:relative;display:grid;grid-template-columns:1fr 1.1fr;min-height:310px;border-radius:22px;background:#dff1ed;overflow:hidden;padding:55px 60px}.contact-main-text{font-family:"KaiTi","STKaiti",serif;font-size:23px;color:#425644}.contact-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.contact-pills span{padding:7px 10px;border-radius:20px;background:rgba(255,255,255,.62);font-size:10px;color:#52644d}.contact-art{position:relative}.hills{position:absolute;left:-50px;right:-80px;bottom:-100px;height:210px;border-radius:50% 50% 0 0;background:#a9c98e;transform:rotate(-3deg)}.hills:after{content:"";position:absolute;left:100px;right:-50px;top:50px;height:190px;border-radius:50% 50% 0 0;background:#c2d8a6}.cloud{position:absolute;background:#fffdf4;border-radius:50px;width:130px;height:35px;opacity:.88}.cloud:before,.cloud:after{content:"";position:absolute;background:inherit;border-radius:50%}.cloud:before{width:45px;height:45px;left:18px;top:-20px}.cloud:after{width:60px;height:60px;right:15px;top:-30px}.c1{top:35px;left:10px}.c2{top:95px;right:-15px;transform:scale(.72)}
.footer{padding:38px 0;background:#6f5225;color:#f7f0df}.footer .content-wrap{display:flex;justify-content:space-between;align-items:center}.footer .brand{color:#f3d992}.footer p{font-size:11px;color:#d8c8aa}

.image-modal{position:fixed;inset:0;z-index:999;display:none;align-items:center;justify-content:center;padding:24px}.image-modal.open{display:flex}.image-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(40,31,18,.62);backdrop-filter:blur(4px)}.image-modal-dialog{position:relative;z-index:1;width:min(760px,94vw);max-height:92vh;border-radius:18px;background:#fffdf8;border:1px solid #d9c38d;box-shadow:0 24px 70px rgba(45,32,13,.28);overflow:hidden}.image-modal-head{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #eadfc8}.image-modal-head h3{margin:0;color:#8b641d;font-size:18px}.image-modal-close{width:36px;height:36px;border:0;border-radius:50%;background:#f5ead1;color:#73531d;font-size:24px}.image-modal-body{max-height:calc(92vh - 58px);overflow:auto;background:#f4efdf}.image-modal-body img{display:block;width:100%;height:auto}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,18px);padding:10px 18px;border-radius:22px;background:#5f491f;color:white;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:1000}.toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:980px){
  .nav{gap:18px}.nav a{font-size:15px}.hero-inner{grid-template-columns:1fr}.hero-art{width:min(430px,92vw);height:500px;margin:auto;order:-1;opacity:.85}.menu-heading-row{flex-direction:column}.quick-actions{width:100%;flex-wrap:wrap}.quick-actions button{flex:1 1 150px}.menu-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-panel-grid{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.feature-card:first-child{grid-row:auto}.player-grid{grid-template-columns:1fr 1fr}.reviews-heading h2{font-size:42px}.contact-wrap{grid-template-columns:1fr}.contact-art{height:170px}
}
@media(max-width:700px){
  .site-header{height:66px}.header-inner{width:calc(100% - 28px)}.brand-cn{font-size:17px}.brand-en{font-size:6px}.mobile-menu-btn{display:block}.nav{position:absolute;top:60px;left:14px;right:14px;height:auto;padding:8px;border:1px solid #e4d8bc;border-radius:14px;background:#fffdf7;box-shadow:var(--shadow);display:none;grid-template-columns:repeat(3,1fr)}.nav.open{display:grid}.nav a{height:42px;justify-content:center}.nav a.active:after{bottom:2px;left:25%;right:25%}
  .content-wrap{width:calc(100% - 28px)}.hero{padding:45px 0}.hero-inner{width:calc(100% - 28px)}.hero h1{font-size:50px}.hero-en{font-size:28px}.stats{overflow:auto}.stat{min-width:120px}.hero-art{height:410px}.banner-carousel{width:calc(100% - 28px);margin-top:34px}.banner-track,.banner-slide{height:auto;aspect-ratio:1026/446}.menu-head-copy h2,.section-title{font-size:38px}.menu-list-grid{grid-template-columns:1fr}.player-grid{grid-template-columns:1fr}.reviews-showcase{padding:78px 0 95px}.reviews-heading{align-items:flex-start}.review-bubbles{width:58px;height:58px;flex-basis:58px}.review-bubbles span{width:50px;height:50px}.review-bubbles i{width:28px;height:28px}.reviews-heading h2{font-size:34px}.reviews-heading p{font-size:11px;letter-spacing:4px}.review-marquee-track{gap:24px}.review-shot{width:170px;height:370px}.contact-wrap{padding:38px 24px}.footer .content-wrap{flex-direction:column;align-items:flex-start;gap:16px}
}


/* ===== V21 menu detail card ===== */
.menu-detail-modal{
  position:fixed;
  inset:0;
  z-index:1002;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.menu-detail-modal.open{display:flex}
.menu-detail-backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(48,38,23,.62);
  backdrop-filter:blur(5px);
}
.menu-detail-dialog{
  position:relative;
  z-index:1;
  width:min(840px,94vw);
  max-height:92vh;
  overflow:hidden;
  border:1px solid #dbc590;
  border-radius:20px;
  background:#fffdf8;
  box-shadow:0 28px 80px rgba(45,32,13,.30);
}
.menu-detail-head{
  height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 20px;
  border-bottom:1px solid #eadfc8;
  background:#fffdf8;
}
.menu-detail-head h3{
  margin:0;
  color:#8b641d;
  font-size:20px;
}
.menu-detail-close{
  width:39px;
  height:39px;
  border:0;
  border-radius:50%;
  background:#f5ead1;
  color:#73531d;
  font-size:26px;
  line-height:1;
}
.menu-detail-scroll{
  max-height:calc(92vh - 62px);
  overflow:auto;
  padding:60px 58px;
  background:#f7f2e5;
}
.menu-detail-card{
  width:min(690px,100%);
  min-height:950px;
  margin:0 auto;
  padding:70px 54px 58px;
  border:2px solid #d7b665;
  border-radius:34px;
  background:linear-gradient(180deg,#fffaf0,#f5e8c8);
  box-shadow:0 18px 40px rgba(110,80,28,.10);
}
.menu-detail-kicker{
  color:#b17a19;
  font-size:16px;
  letter-spacing:7px;
  font-weight:800;
}
.menu-detail-card h2{
  margin:34px 0 24px;
  color:#76551d;
  font-size:56px;
  line-height:1;
}
.menu-detail-rule-line{
  height:2px;
  background:#d4b56e;
}
.menu-detail-intro{
  margin:55px 0 38px;
  white-space:pre-line;
  color:#6a5739;
  font-size:24px;
  line-height:1.85;
}
.menu-detail-media{
  width:100%;
  min-height:300px;
  border:1px solid #ddc99d;
  border-radius:24px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.menu-detail-media img{
  display:block;
  width:100%;
  height:auto;
  max-height:620px;
  object-fit:contain;
  background:#fff;
}
.menu-detail-empty{
  min-height:300px;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  color:#9d7c3a;
  text-align:center;
  padding:30px;
}
.menu-detail-empty b{
  color:#a97413;
  font-size:34px;
}
.menu-detail-empty span{
  color:#9e8a66;
  font-size:18px;
}
.menu-special-rules{
  margin-top:32px;
  padding:25px 28px;
  border:1px solid #dbc38d;
  border-radius:20px;
  background:rgba(255,255,255,.78);
}
.menu-special-rules-title{
  color:#8c631c;
  font-size:22px;
  font-weight:900;
}
.menu-special-rules-text{
  margin-top:13px;
  color:#5d4c34;
  font-size:18px;
  line-height:1.8;
  white-space:pre-wrap;
}
.menu-detail-footer{
  margin-top:72px;
  color:#a06c16;
  font-size:19px;
  white-space:pre-wrap;
}

@media(max-width:700px){
  .menu-detail-modal{padding:10px}
  .menu-detail-dialog{width:100%;max-height:95vh}
  .menu-detail-scroll{max-height:calc(95vh - 58px);padding:28px 16px}
  .menu-detail-head{height:58px}
  .menu-detail-card{
    min-height:720px;
    padding:45px 25px 38px;
    border-radius:25px;
  }
  .menu-detail-kicker{font-size:11px;letter-spacing:5px}
  .menu-detail-card h2{font-size:42px}
  .menu-detail-intro{margin:38px 0 28px;font-size:18px}
  .menu-detail-media,.menu-detail-empty{min-height:230px}
  .menu-detail-empty b{font-size:26px}
  .menu-detail-empty span{font-size:15px}
  .menu-special-rules-title{font-size:19px}
  .menu-special-rules-text{font-size:16px}
  .menu-detail-footer{margin-top:48px;font-size:17px}
}


/* ===== V24: first activity item is a two-card feature ===== */
.activity-section .feature-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr) !important;
  grid-template-rows:repeat(2,minmax(168px,auto)) !important;
  gap:16px !important;
  align-items:stretch !important;
}

/* Only the first activity card spans two normal card heights. */
.activity-section .feature-card-primary{
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  min-height:352px !important;
  padding:38px 42px !important;
  display:flex !important;
  flex-direction:column !important;
  background:#e5f2ee !important;
  overflow:hidden !important;
}

/* The remaining activity cards stay normal and stack on the right. */
.activity-section .feature-card:not(.feature-card-primary){
  min-height:168px !important;
  padding:26px 28px !important;
  background:#fffdf7 !important;
}

/* First-card eyebrow is larger but still secondary. */
.activity-section .feature-card-primary small{
  flex:0 0 auto !important;
  font-size:12px !important;
  letter-spacing:3px !important;
}

/* Fill the whole large card rather than leaving the lower half blank. */
.activity-section .feature-primary-content{
  flex:1 1 auto !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:24px 0 10px !important;
}

/* Sizes are calculated in site.js from the first item's character count. */
.activity-section .feature-card-primary h3{
  margin:0 0 22px !important;
  color:#72531f !important;
  font-size:var(--primary-title-size,36px) !important;
  line-height:1.22 !important;
  letter-spacing:.2px !important;
  overflow-wrap:anywhere !important;
}

.activity-section .feature-card-primary p{
  margin:0 !important;
  max-width:92% !important;
  color:#675c4b !important;
  font-size:var(--primary-text-size,20px) !important;
  line-height:1.75 !important;
  white-space:pre-wrap !important;
  overflow-wrap:anywhere !important;
}

/* Normal activity cards retain their regular typography. */
.activity-section .feature-card:not(.feature-card-primary) h3{
  margin:12px 0 8px !important;
  font-size:18px !important;
}
.activity-section .feature-card:not(.feature-card-primary) p{
  margin:0 !important;
  font-size:12px !important;
  line-height:1.8 !important;
}

/* Tablet/phone: keep special styling but stack naturally. */
@media(max-width:980px){
  .activity-section .feature-grid{
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
  }
  .activity-section .feature-card-primary{
    grid-column:auto !important;
    grid-row:auto !important;
    min-height:330px !important;
  }
}

@media(max-width:560px){
  .activity-section .feature-card-primary{
    min-height:300px !important;
    padding:30px 26px !important;
  }
  .activity-section .feature-card-primary h3{
    font-size:min(var(--primary-title-size,34px),34px) !important;
  }
  .activity-section .feature-card-primary p{
    max-width:100% !important;
    font-size:min(var(--primary-text-size,18px),18px) !important;
  }
}


/* ===== V25 top menu actions ===== */
#vipBtn,
#activityBtn{
  cursor:pointer;
}
#activityBtn:active,
#vipBtn:active{
  transform:translateY(1px);
}
