
/* Fusion Pixel Font — Chinese pixel type for marquee */
@font-face{font-family:'Fusion Pixel CN';src:url('fonts/fusion-pixel-12px-proportional-zh_hans.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}

:root{--bg:#06070d;--bg2:#0e1126;--cyan:#00f0ff;--magenta:#ff2dff;--pink-hot:#ff2d75;--yellow:#ffe600;--bone:#f8f6ff;--mute:#a8a8c8;--mute-soft:#c2c2dc;
  --d:'Press Start 2P',VT323,monospace;
  --b:'Fira Code','JetBrains Mono','VT323',monospace;
  --m:'VT323',monospace;
  --cn:'Source Han Sans SC','Source Han Sans CN','Noto Sans SC','PingFang SC',sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--bone);font-family:var(--b);font-size:20px;line-height:1.5;font-weight:400;letter-spacing:-.005em;-webkit-font-smoothing:antialiased}
body{overflow-x:hidden;background:radial-gradient(ellipse at top,#1a103a 0%,var(--bg) 70%) fixed}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
::selection{background:var(--magenta);color:var(--bg)}

body::before{content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 2px,rgba(255,255,255,.03) 2px,rgba(255,255,255,.03) 3px);pointer-events:none;z-index:1000;mix-blend-mode:overlay}
body::after{content:"";position:fixed;inset:0;background:url('img/bg/grain.png');opacity:.3;pointer-events:none;mix-blend-mode:overlay;z-index:999}
@media(prefers-reduced-motion:reduce){body::before{display:none}}

@view-transition{navigation:auto}
::view-transition-old(root){animation:nout 600ms cubic-bezier(.5,0,.5,1) both}
::view-transition-new(root){animation:nin 700ms cubic-bezier(.2,.7,.2,1) both}
@keyframes nout{0%{opacity:1}50%{opacity:.7;filter:hue-rotate(120deg) saturate(2)}100%{opacity:0;filter:hue-rotate(360deg) blur(8px)}}
@keyframes nin{0%{opacity:0;filter:hue-rotate(-90deg) blur(10px)}100%{opacity:1;filter:none}}
.nav{view-transition-name:sage-nav}
::view-transition-old(sage-nav),::view-transition-new(sage-nav){animation:none}

.shell{max-width:1320px;margin:0 auto;padding:0 32px;position:relative}
.nav{position:sticky;top:0;z-index:100;background:rgba(6,7,13,.92);backdrop-filter:blur(14px);border-bottom:none;transition:transform .35s cubic-bezier(.4,0,.2,1)}
.nav::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;pointer-events:none;background:linear-gradient(90deg,rgba(0,240,255,0) 0%,rgba(0,240,255,.45) 50%,rgba(0,240,255,0) 100%)}
@media(max-width:900px){
  .nav.hide{transform:translateY(-100%)}
}
.nav-inner{display:flex;justify-content:space-between;align-items:center;padding:12px 32px 10px;max-width:1320px;margin:0 auto;gap:14px;flex-wrap:nowrap}
.nav-toggle{display:none;background:transparent;border:none;color:var(--bone);cursor:pointer;padding:10px;font-size:24px;line-height:1}
.nav-toggle:hover{color:var(--cyan);text-shadow:0 0 10px var(--cyan)}
@media(max-width:900px){
  .nav-inner{justify-content:center;position:relative;flex-wrap:nowrap;padding:10px 20px}
  .brand{margin:0 auto}
  .nav-toggle{display:block;position:absolute;right:14px;top:50%;transform:translateY(-50%)}
  .nav-links{display:none!important;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:rgba(6,7,13,.98);backdrop-filter:blur(14px);padding:12px 20px;gap:0;border-top:1px solid rgba(0,240,255,.15)}
  .nav-links.open{display:flex!important}
  .nav-links a{padding:14px 8px;border-bottom:1px solid rgba(0,240,255,.08);font-size:16px}
  .nav-links a:last-child{border-bottom:none}
}
.brand{display:flex;align-items:center;gap:12px}
.brand-logo{height:57px}
.brand .wm{font-family:var(--d);font-size:14px;letter-spacing:.18em;color:var(--cyan);text-shadow:0 0 12px rgba(0,240,255,.7)}

.nav-links{display:flex;gap:4px;flex-wrap:nowrap}
.nav-links a{font-family:var(--m);font-size:18px;letter-spacing:.18em;text-transform:uppercase;padding:8px 14px;color:var(--bone);transition:all .25s}
.nav-links a:hover,.nav-links a.active{color:var(--cyan);text-shadow:0 0 10px var(--cyan)}
.nav-links a .cn{font-family:var(--cn);font-size:11px;color:var(--mute);margin-left:5px;text-shadow:none}

/* Narrow desktop: hide Chinese labels to prevent nav wrapping */
@media(min-width:901px) and (max-width:1350px){
  .nav-links a .cn{display:none}
}

main{position:relative;z-index:2}
.kicker{font-family:var(--m);font-size:18px;letter-spacing:.18em;color:var(--yellow);text-transform:uppercase;margin-bottom:18px;text-shadow:0 0 10px var(--yellow)}
.cn{font-family:var(--cn)}

h1.d,h2.d{font-family:var(--d);text-transform:uppercase;line-height:1;letter-spacing:.04em}
h1.d{font-size:clamp(54px,11vw,80px);text-shadow:0 0 30px var(--cyan),3px 0 0 var(--magenta),-3px 0 0 var(--cyan)}
@media(max-width:600px){h1.d{font-size:clamp(28px,9vw,54px);word-break:break-word;overflow-wrap:break-word}.hero h1.d{font-size:18vw;width:80vw;max-width:80vw;margin-left:0;margin-right:auto;white-space:nowrap;word-break:keep-all;overflow-wrap:normal;text-align:left}}

/* === Title glitch entrance (Razor: 500ms · single chromatic pulse + mid-tear · dim → bright settle) === */
h1.d.has-glitch{position:relative}
.g-stage{position:relative;display:inline-block;filter:brightness(1)}
.g-base{display:block;position:relative;z-index:1}
.g-layer,.g-half{position:absolute;inset:0;pointer-events:none;display:block;text-shadow:none;will-change:transform,opacity,clip-path;opacity:0}
.g-layer{mix-blend-mode:screen}
.g-layer.g-r{color:#ff0028;text-shadow:0 0 8px #ff0028}
.g-layer.g-g{color:#00d96b;text-shadow:0 0 8px #00d96b}
.g-half{color:#f8f6ff;text-shadow:0 0 30px var(--cyan),3px 0 0 var(--magenta),-3px 0 0 var(--cyan)}

h1.d.glitch-play .g-stage{animation:gDim .5s ease-out forwards}
h1.d.glitch-play .g-base{animation:gBase .5s ease-out forwards}
h1.d.glitch-play .g-r{animation:gR .5s steps(8,end) forwards}
h1.d.glitch-play .g-g{animation:gG .5s steps(8,end) forwards}
h1.d.glitch-play .g-top{animation:gTop .5s steps(8,end) forwards}
h1.d.glitch-play .g-bot{animation:gBot .5s steps(8,end) forwards}

@keyframes gDim{0%{filter:brightness(.55)}25%{filter:brightness(.6)}55%{filter:brightness(.75)}80%{filter:brightness(.9)}100%{filter:brightness(1)}}
@keyframes gBase{0%{opacity:0}20%{opacity:1}100%{opacity:1}}
@keyframes gR{0%,100%{opacity:0;transform:none}10%{opacity:1;transform:translateX(-22px)}40%{opacity:1;transform:translateX(8px)}70%{opacity:0;transform:none}}
@keyframes gG{0%,100%{opacity:0;transform:none}10%{opacity:1;transform:translateX(20px)}40%{opacity:1;transform:translateX(-10px)}70%{opacity:0;transform:none}}
@keyframes gTop{0%,100%{clip-path:inset(0 0 50% 0);opacity:0;transform:none}15%{opacity:1;transform:translate(-14px,-4px)}40%{transform:translate(8px,-2px);opacity:.7}65%{opacity:0}}
@keyframes gBot{0%,100%{clip-path:inset(50% 0 0 0);opacity:0;transform:none}15%{opacity:1;transform:translate(16px,4px)}40%{transform:translate(-8px,2px);opacity:.7}65%{opacity:0}}

@media(prefers-reduced-motion:reduce){
  h1.d.glitch-play .g-stage,h1.d.glitch-play .g-layer,h1.d.glitch-play .g-half,h1.d.glitch-play .g-base{animation:none!important;opacity:1!important;filter:none!important}
  h1.d.glitch-play .g-layer,h1.d.glitch-play .g-half{opacity:0!important}
}
.d.stack .cn{display:block;margin-top:18px;font-family:inherit;font-size:.55em;color:inherit;letter-spacing:inherit;text-shadow:0 0 30px var(--cyan),3px 0 0 var(--magenta),-3px 0 0 var(--cyan);text-transform:none;font-weight:inherit}
h2.d{font-size:clamp(22px,5vw,52px);margin-bottom:30px;text-shadow:0 0 20px var(--magenta),2px 0 0 var(--cyan),-2px 0 0 var(--magenta)}
h2.d .cn{display:block;font-family:var(--cn);font-size:.5em;color:var(--mute);margin-top:14px;letter-spacing:.18em;text-shadow:none;text-transform:none;font-weight:500}

.hero{min-height:80vh;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:0 0 50px}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center 10%;opacity:1;filter:contrast(1.05) saturate(1.05)}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,7,13,.25) 0%,rgba(6,7,13,.08) 22%,rgba(6,7,13,0) 45%,rgba(6,7,13,0) 60%,rgba(6,7,13,.25) 78%,rgba(6,7,13,.7) 92%,rgba(6,7,13,1) 100%)}
.hero .shell{position:relative;z-index:2;width:100%}
.hero .hero-content{max-width:920px}
.hero-text{padding:0 0 50px;border-top:none}
@media(max-width:780px){.hero-text{padding-top:0}}
.hero-text+section{padding-top:50px}
.hero{border-top:none}
.hero .kicker{font-size:25px;letter-spacing:.22em;margin-bottom:24px}
.midas-feature{position:relative;overflow:hidden;isolation:isolate}
.midas-feature .midas-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.55;z-index:-1;filter:contrast(1.05) saturate(1.05)}
@media(max-width:780px){.midas-feature .midas-bg{background-position:65% center}}
.midas-feature .midas-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,7,13,.85) 0%,rgba(6,7,13,.45) 30%,rgba(6,7,13,.45) 70%,rgba(6,7,13,.9) 100%)}
.midas-feature .shell{position:relative;z-index:1}
.hero-text .hero-content{max-width:920px}
.hero-content{position:relative;z-index:2;max-width:920px;margin:0;text-align:left}
.hero-text p.lead{margin-top:32px;font-family:'VT323',monospace;font-size:37px;max-width:920px;font-weight:400;line-height:1.15;letter-spacing:.01em;text-align:left;text-transform:uppercase}
.hero-text p.lead .cn{display:block;margin-top:14px;font-family:var(--cn);font-size:22px;color:var(--mute-soft);font-weight:400;letter-spacing:0;line-height:1.5;opacity:0;transition:opacity .5s ease .15s}
.hero-text p.lead .lead-en{display:inline;word-spacing:inherit}
.hero-text p.lead .lead-en::after{content:"▌";display:inline;margin:0;color:var(--cyan);text-shadow:0 0 10px var(--cyan);animation:lead-cursor 1s steps(1) infinite;white-space:nowrap}
.hero-text p.lead .lead-en.done ~ .cn{opacity:1}
@keyframes lead-cursor{0%,49%{opacity:1}50%,100%{opacity:0}}
@media(max-width:780px){body section.hero-text p.lead{font-size:31px;line-height:1.1;letter-spacing:.01em;word-spacing:0}body section.hero-text p.lead .cn{font-size:18px;line-height:1.4;letter-spacing:0;word-spacing:0}}
.hero-cta{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-start}

/* === BIG CENTERED LOGO ABOVE TICKER === */
.logo-stage{display:flex;justify-content:center;align-items:center;padding:100px 32px 50px;position:relative;z-index:3}
.big-logo-wrap{position:relative;display:inline-block;line-height:0}
.logo-stage .big-logo{height:clamp(126px,19vw,230px);filter:drop-shadow(0 0 24px rgba(0,240,255,.35)) drop-shadow(0 0 60px rgba(0,240,255,.18));display:block;animation:bigLogoFrames 6.5s steps(2,end) infinite}
/* Tear slices stacked above base logo, only visible during scan phase */
.logo-stage .big-logo.tear{position:absolute;top:0;left:0;height:100%;animation:none;mix-blend-mode:normal}
.logo-stage .big-logo.t1{clip-path:inset(20% 0 70% 0);animation:bigLogoTear1 6.5s steps(2,end) infinite}
.logo-stage .big-logo.t2{clip-path:inset(45% 0 40% 0);animation:bigLogoTear2 6.5s steps(2,end) infinite}
.logo-stage .big-logo.t3{clip-path:inset(70% 0 18% 0);animation:bigLogoTear3 6.5s steps(2,end) infinite}

/* === Combined glitch sequence: idle → scanline tear → frame drops → idle === */
@keyframes bigLogoFrames{
  /* 0-55% idle */
  0%,55%{opacity:1;filter:drop-shadow(0 0 24px rgba(0,240,255,.35)) drop-shadow(0 0 60px rgba(0,240,255,.18))}
  /* 55-72% scanline tear phase: base stays steady, tear layers do the work below */
  72%{opacity:1;filter:drop-shadow(0 0 24px rgba(0,240,255,.35)) drop-shadow(0 0 60px rgba(0,240,255,.18))}
  /* 73-92% frame drops phase: aggressive opacity cuts, no color */
  74%{opacity:.15;filter:saturate(0) brightness(.4) contrast(1.5)}
  76%{opacity:1;filter:drop-shadow(0 0 24px rgba(0,240,255,.35)) drop-shadow(0 0 60px rgba(0,240,255,.18))}
  78%{opacity:.05}
  80%{opacity:1;filter:drop-shadow(0 0 24px rgba(0,240,255,.35)) drop-shadow(0 0 60px rgba(0,240,255,.18))}
  82%{opacity:.4;filter:saturate(0) brightness(1.3) contrast(.9) blur(1px)}
  85%{opacity:1;filter:drop-shadow(0 0 24px rgba(0,240,255,.35)) drop-shadow(0 0 60px rgba(0,240,255,.18))}
  88%{opacity:.2;filter:saturate(0) brightness(.5)}
  92%{opacity:1;filter:drop-shadow(0 0 24px rgba(0,240,255,.35)) drop-shadow(0 0 60px rgba(0,240,255,.18))}
  100%{opacity:1;filter:drop-shadow(0 0 24px rgba(0,240,255,.35)) drop-shadow(0 0 60px rgba(0,240,255,.18))}
}
/* Tears: only animate during 55-72% (scanline phase), invisible otherwise so they don't ghost during frame drops */
@keyframes bigLogoTear1{
  0%,55%,72%,100%{transform:translateX(0);opacity:0}
  58%{transform:translateX(-22px);opacity:1}
  62%{transform:translateX(14px);opacity:1}
  66%{transform:translateX(-8px);opacity:1}
  70%{transform:translateX(0);opacity:1}
}
@keyframes bigLogoTear2{
  0%,55%,72%,100%{transform:translateX(0);opacity:0}
  58%{transform:translateX(18px);opacity:1}
  62%{transform:translateX(-12px);opacity:1}
  66%{transform:translateX(10px);opacity:1}
  70%{transform:translateX(0);opacity:1}
}
@keyframes bigLogoTear3{
  0%,55%,72%,100%{transform:translateX(0);opacity:0}
  58%{transform:translateX(-16px);opacity:1}
  62%{transform:translateX(20px);opacity:1}
  66%{transform:translateX(-6px);opacity:1}
  70%{transform:translateX(0);opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .logo-stage .big-logo,.logo-stage .big-logo.tear{animation:none}
  .logo-stage .big-logo.tear{display:none}
}

.btn{display:inline-block;padding:14px 28px;font-family:var(--d);font-size:11px;letter-spacing:.18em;text-transform:uppercase;border:2px solid var(--cyan);color:var(--cyan);background:transparent;cursor:pointer;transition:all .25s;text-shadow:0 0 8px var(--cyan);box-shadow:0 0 20px rgba(0,240,255,.3),inset 0 0 20px rgba(0,240,255,.08)}
@media(max-width:780px){.btn{padding:12px 18px}}
.btn:hover{background:var(--cyan);color:var(--bg);text-shadow:none;box-shadow:0 0 30px var(--cyan)}
.btn.magenta{border-color:var(--magenta);color:var(--magenta);text-shadow:0 0 8px var(--magenta);box-shadow:0 0 20px rgba(255,45,255,.3)}
.btn.magenta:hover{background:var(--magenta);color:var(--bg);box-shadow:0 0 30px var(--magenta)}
.btn.yellow{border-color:var(--yellow);color:var(--yellow);text-shadow:0 0 8px var(--yellow);box-shadow:0 0 20px rgba(255,230,0,.3)}
.btn.yellow:hover{background:var(--yellow);color:var(--bg);box-shadow:0 0 30px var(--yellow)}

section{padding:90px 0;border-top:1px solid rgba(0,240,255,.1);position:relative}
section.page-top{padding:60px 0 50px}
body:not(.page-home) p.lead{font-size:19px}
main section:first-of-type,main>div>section:first-of-type{border-top:none}
@media(max-width:780px){
  section{padding:50px 0}
  section.page-top{padding-top:45px}
  section.catalog-head{padding-bottom:60px}
  body:not(.page-home) p.lead{font-size:16px;line-height:1.3;letter-spacing:-0.05em}
}
.row{display:grid;grid-template-columns:1fr 1fr;gap:60px}
@media(max-width:780px){.row{grid-template-columns:1fr;gap:32px}}

p.body{font-size:18px;font-weight:400;line-height:1.55}
p.body.cn{font-size:18px;color:var(--mute-soft);font-weight:400}
@media(max-width:780px){p.body.cn{margin-top:14px}}
@media(max-width:780px){p.body,p.body.cn{word-spacing:-.07em;letter-spacing:-.01em;line-height:1.45}p.body.cn{line-height:1.52}}
p.body strong{color:var(--cyan);font-weight:700;text-shadow:0 0 8px rgba(0,240,255,.5)}

.marquee{overflow:hidden;border-block:2px solid var(--magenta);padding:7px 0;display:flex;align-items:center;white-space:nowrap;font-family:var(--d);font-size:20px;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(90deg,rgba(0,240,255,.08),rgba(255,45,255,.08));line-height:1;cursor:pointer;user-select:none}
.marquee-wrap{position:relative;z-index:60}
.stream-dropdown{position:absolute;left:0;right:0;top:100%;display:flex;background:rgba(6,7,13,.95);backdrop-filter:blur(8px);border-bottom:2px solid var(--magenta);overflow:hidden;max-height:0;border-bottom-width:0;transition:max-height .75s cubic-bezier(.22,1,.36,1),border-bottom-width .75s cubic-bezier(.22,1,.36,1);box-shadow:0 8px 24px rgba(0,0,0,.5)}
.stream-dropdown.open{max-height:80px;border-bottom-width:2px}
@media(max-width:780px){.stream-dropdown.open{max-height:200px}}
.stream-dropdown a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 8px;color:var(--bone);text-decoration:none;font-family:var(--m);font-size:13px;letter-spacing:.18em;text-transform:uppercase;border-right:1px solid rgba(0,240,255,.12);transition:background .2s,color .2s}
.stream-dropdown a:last-child{border-right:none}
.stream-dropdown a img{width:18px;height:18px;object-fit:contain}
.stream-dropdown a:hover{background:rgba(0,240,255,.08);color:var(--cyan)}
@media(max-width:780px){.stream-dropdown{flex-wrap:wrap}.stream-dropdown a{flex:1 1 33.333%;font-size:12px;padding:10px 6px;border-bottom:1px solid rgba(0,240,255,.12)}}
.marquee-track{display:inline-flex;align-items:center;gap:24px;animation:mq 28s linear infinite}
.marquee-track span{display:inline-flex;align-items:center;line-height:1;font-family:var(--d)}
.marquee-track span.div{font-family:'Sora',-apple-system,sans-serif;font-size:.55em;color:var(--magenta);text-shadow:0 0 10px var(--magenta);transform:translateY(-1px)}
.marquee-track span.cn{font-family:'Fusion Pixel CN',var(--cn);transform:translateY(-2px);font-size:1em;font-weight:700}
.marquee-track span:not(.div):nth-of-type(odd){color:var(--cyan);text-shadow:0 0 12px var(--cyan)}
.marquee-track span:not(.div):nth-of-type(even){color:var(--magenta);text-shadow:0 0 12px var(--magenta)}
@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

.wall{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:36px}
.wall>div{position:relative;overflow:hidden;background:#000;border:2px solid transparent;transition:border-color .3s,box-shadow .3s}
.wall>div:hover{border-color:var(--cyan);box-shadow:0 0 30px var(--cyan)}
.wall img{width:100%;height:100%;object-fit:cover;transition:transform .8s,filter .4s}
.wall>div:hover img{filter:hue-rotate(40deg) saturate(1.4)}
.wall .a{grid-column:1/8;grid-row:1/3;aspect-ratio:16/12}
.wall .b{grid-column:8/13;grid-row:1/2;aspect-ratio:16/9}
.wall .c{grid-column:8/13;grid-row:2/3;aspect-ratio:16/9}
.wall .d{grid-column:1/5;grid-row:3/4;aspect-ratio:1}
.wall .e{grid-column:5/9;grid-row:3/4;aspect-ratio:1}
.wall .f{grid-column:9/13;grid-row:3/4;aspect-ratio:1}
@media(max-width:780px){.wall{grid-template-columns:repeat(2,1fr)}.wall>div{grid-column:auto!important;grid-row:auto!important;aspect-ratio:1}}

/* === MEMBERS — 3-photo gallery layout === */
.member{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;padding:70px 0;border-bottom:1px solid rgba(0,240,255,.12)}
.member:first-child{padding-top:40px}
@media(max-width:780px){.member{grid-template-columns:1fr;gap:24px;padding:40px 0}}
.member .gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.member .gallery>*{aspect-ratio:4/5;overflow:hidden;background:#000;border:1px solid rgba(0,240,255,.18)}
.member .gallery>*:nth-child(1){grid-column:span 2;aspect-ratio:5/4}
.member .gallery img{width:100%;height:100%;object-fit:cover;filter:url(#sage-grade) contrast(1.04);transition:filter .4s,transform .8s}
.member .gallery img.pre-graded{filter:none}
.member .gallery img.rich-bright{filter:url(#sage-grade) brightness(1.18) saturate(1.35) contrast(1.04)}
.member:hover .gallery img.rich-bright{filter:url(#sage-grade) brightness(1.22) saturate(1.45) contrast(1.06)}
.member:hover .gallery img{filter:url(#sage-grade) contrast(1.06) saturate(1.1)}
.member:hover .gallery img.pre-graded{filter:saturate(1.1)}
.member .role{font-family:var(--m);font-size:16px;letter-spacing:.32em;color:var(--yellow);text-transform:uppercase;text-shadow:0 0 10px var(--yellow)}
.member .nm{font-family:var(--d);font-size:36px;text-transform:uppercase;letter-spacing:.04em;line-height:1;margin:14px 0 6px;text-shadow:0 0 20px var(--cyan),2px 0 0 var(--magenta),-2px 0 0 var(--cyan)}
.member .ori{font-family:var(--m);font-size:16px;letter-spacing:.18em;color:var(--mute);margin-bottom:18px;text-transform:uppercase}
.member .qt{font-family:var(--b);font-size:21px;font-weight:500;color:var(--cyan);margin:18px 0;border-left:2px solid var(--cyan);padding-left:16px;font-style:italic;text-shadow:0 0 8px rgba(0,240,255,.5);line-height:1.4}
.member .qt .cn{display:block;color:var(--mute);font-style:normal;font-size:15px;margin-top:8px;text-shadow:none;font-weight:400}
.member .bio{font-size:16px;font-weight:400;line-height:1.6}
.member .bio .cn{display:block;margin-top:14px;color:var(--mute);font-size:15px;font-weight:400}

/* tracks */
.tracks{margin-top:30px}
.tk{display:grid;grid-template-columns:60px 1fr auto;gap:24px;padding:22px 0;border-bottom:1px dashed rgba(0,240,255,.18);align-items:center;cursor:pointer;transition:background .2s}
.tk:hover{background:rgba(0,240,255,.04)}
.tk .n{font-family:var(--d);font-size:26px;color:var(--magenta);text-shadow:0 0 8px var(--magenta);line-height:1}
.tk .ttl{font-family:var(--d);font-size:18px;text-transform:uppercase;letter-spacing:.04em;text-shadow:0 0 12px var(--cyan)}
.tk .ttl .cn{display:block;font-family:var(--cn);font-size:.6em;color:var(--mute);margin-top:6px;text-shadow:none;font-weight:500;letter-spacing:.05em;text-transform:none}
.tk .tag{margin-top:10px;font-size:15px;color:#fff;font-style:italic;font-weight:400}
.tk .tag .cn{display:block;font-size:14px;margin-top:4px;font-style:normal;color:#fff}
.tk .lk{display:flex;gap:6px;flex-wrap:wrap}
.tk .lk a{font-family:var(--m);font-size:13px;letter-spacing:.18em;padding:5px 10px;color:var(--cyan);text-transform:uppercase;border:1px solid rgba(0,240,255,.2)}
.tk .lk a:hover{background:var(--cyan);color:var(--bg)}
.tk.open .lyr{display:grid}
.tk .lyr{display:none;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:36px;margin-top:18px;padding-top:18px;border-top:1px dashed rgba(0,240,255,.18)}
@media(max-width:780px){.tk.open .lyr{grid-template-columns:1fr}}
.tk .lyr h4{font-family:var(--d);font-size:11px;color:var(--yellow);text-shadow:0 0 8px var(--yellow);margin-bottom:8px}
.tk .lyr p{color:var(--mute);font-size:15px;white-space:pre-wrap;font-family:var(--m);line-height:1.4}

/* EP info card */
.ep-card{background:linear-gradient(135deg,rgba(0,240,255,.08),rgba(255,45,255,.08));border:2px solid rgba(0,240,255,.4);padding:36px;margin-top:30px;position:relative}
.ep-card-grid{display:grid;grid-template-columns:280px 1fr;gap:32px;align-items:center}
.ep-cover img{width:100%;height:auto;display:block;border:2px solid rgba(0,240,255,.35);box-shadow:0 0 40px rgba(0,240,255,.25),0 0 0 1px rgba(255,45,255,.3)}
.ep-card-text p{line-height:1.35}
.ep-card-text p.cn{line-height:1.5;margin-top:10px}
@media(max-width:780px){.ep-card-grid{grid-template-columns:1fr;gap:24px;align-items:start}.ep-cover{max-width:340px;margin:0 auto}}
.ep-card::before{content:"";position:absolute;inset:-2px;background:linear-gradient(135deg,var(--cyan),var(--magenta),var(--yellow));z-index:-1;filter:blur(14px);opacity:.4}
.ep-card .meta{font-family:var(--m);font-size:17px;letter-spacing:.18em;color:var(--yellow);text-transform:uppercase;margin-bottom:14px;text-shadow:0 0 8px var(--yellow)}
.ep-card .meta .cn{display:block;font-family:var(--cn);font-size:13px;color:var(--mute);margin-top:4px;text-shadow:none;letter-spacing:.1em}
.ep-card h3{font-family:var(--d);font-size:24px;text-transform:uppercase;text-shadow:0 0 16px var(--cyan);margin-bottom:14px;line-height:1.2}
.ep-card h3 .cn{display:block;font-family:var(--cn);font-size:.55em;color:var(--mute);margin-top:10px;letter-spacing:.05em;text-shadow:none;font-weight:500;text-transform:none}
.ep-card p{font-size:18px;line-height:1.6;color:var(--bone);font-weight:400}
.ep-card p.cn{margin-top:14px;color:var(--mute);font-size:16px}
.ep-card .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:24px;padding-top:22px;border-top:1px dashed rgba(0,240,255,.3)}
@media(max-width:780px){.ep-card .stats{grid-template-columns:repeat(2,1fr)}}
.ep-card .stat{text-align:center}
.ep-card .stat .n{font-family:var(--d);font-size:24px;color:var(--magenta);text-shadow:0 0 10px var(--magenta)}
.ep-card .stat .l{font-family:var(--m);font-size:13px;letter-spacing:.18em;color:var(--mute);text-transform:uppercase;margin-top:6px}
.ep-card .stat .l .cn{display:block;font-size:12px;margin-top:2px}

/* === SHOW CARDS — redesigned + photo bg === */
.show-card{display:grid;grid-template-columns:auto 1fr auto;gap:40px;align-items:center;padding:32px;background:#06070d linear-gradient(135deg,rgba(0,240,255,.06),rgba(255,45,255,.04));border:2px solid rgba(0,240,255,.28);position:relative;overflow:hidden;margin-bottom:18px;transition:border-color .3s,box-shadow .3s}
.show-card.featured{border-color:var(--yellow);box-shadow:0 0 36px rgba(255,230,0,.18)}
.show-card:hover{border-color:var(--cyan);box-shadow:0 0 30px rgba(0,240,255,.4)}
/* Photo bg layer */
.show-card .photo-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.55;filter:saturate(1.05) contrast(1.05);transition:opacity .35s;z-index:0}
.show-card:hover .photo-bg{opacity:.85}
.show-card>*:not(.photo-bg){position:relative;z-index:1}

.show-card .date-block{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:170px;padding:20px 26px;background:rgba(6,7,13,.6);border:2px solid var(--yellow);box-shadow:0 0 24px rgba(255,230,0,.4),inset 0 0 16px rgba(255,230,0,.06)}
.show-card.featured .date-block{box-shadow:0 0 36px rgba(255,230,0,.6)}
.show-card .date-block .day{font-family:var(--d);font-size:64px;color:var(--yellow);line-height:.85;letter-spacing:-.02em;text-shadow:0 0 24px var(--yellow);margin-bottom:8px}
@media(max-width:800px){.show-card .date-block .day{font-size:42px;line-height:.95}.show-card .date-block .mon-year{font-size:12px}}
.show-card .date-block .mon-year{font-family:var(--d);font-size:14px;color:var(--yellow);letter-spacing:.18em;text-shadow:0 0 10px var(--yellow);text-align:center;line-height:1.3}
.show-card .date-block .mon-year .cn{display:block;font-family:var(--cn);font-size:11px;color:var(--yellow);margin-top:4px;letter-spacing:.05em;text-shadow:0 0 8px var(--yellow)}

.show-card .info{min-width:0;text-align:left}
.show-card .info .meta-row{justify-content:flex-start}
.show-card .info .venue{font-family:var(--d);font-size:24px;text-transform:uppercase;letter-spacing:.04em;color:var(--bone);text-shadow:0 0 18px var(--cyan);margin-bottom:14px;line-height:1.1}
@media(max-width:800px){.show-card .info .venue{font-size:20px}}
.show-card .info .meta-row{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;margin-bottom:10px}
.show-card .info .city{font-family:var(--m);font-size:24px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);text-shadow:0 0 12px var(--cyan)}
.show-card .info .city-cn{font-family:var(--cn);font-size:22px;font-weight:700;color:var(--magenta);text-shadow:0 0 12px var(--magenta);letter-spacing:.05em}
.show-card .info .country{font-family:var(--m);font-size:18px;letter-spacing:.22em;color:var(--mute);text-transform:uppercase;display:inline-flex;align-items:center;gap:6px}
.show-card .info .time{font-family:var(--m);font-size:18px;letter-spacing:.18em;color:var(--bone);text-shadow:0 0 18px var(--cyan);text-transform:uppercase;margin-top:4px}
.show-card .info .time::before{content:"⏱  ";font-size:.7em}
.show-card .info .extra{font-family:var(--cn);font-size:14px;color:var(--bone);text-shadow:0 0 18px var(--cyan);margin-top:6px}

.show-card .tix{font-family:var(--d);font-size:13px;letter-spacing:.18em;text-transform:uppercase;text-align:center;color:var(--bg);background:var(--cyan);border:0;padding:18px 26px;box-shadow:0 0 24px var(--cyan);transition:all .25s;display:inline-block;white-space:nowrap}
.show-card.featured .tix{background:var(--yellow);box-shadow:0 0 30px var(--yellow)}
.show-card .tix:hover{background:var(--magenta);box-shadow:0 0 30px var(--magenta)}
.show-card .tix.free{background:transparent;color:var(--yellow);border:2px solid var(--yellow);box-shadow:none;padding:16px 22px;cursor:default}
.show-card.featured .tix.free{background:transparent;color:var(--yellow);box-shadow:0 0 18px rgba(255,230,0,.35)}
.show-card .tix.soon{background:transparent;color:var(--yellow);border:2px dashed var(--yellow);box-shadow:none;padding:16px 22px;cursor:not-allowed;opacity:.9;font-size:11px}

.past-show{display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center;padding:20px 28px;background:rgba(14,17,38,.5);border:1px solid rgba(122,122,156,.25);margin-bottom:12px;transition:all .25s}
.past-show:hover{border-color:rgba(0,240,255,.35);background:rgba(14,17,38,.7)}
@media(max-width:800px){.past-show{grid-template-columns:1fr;gap:12px}}
.past-show .date-block-small{display:flex;flex-direction:column;align-items:center;min-width:120px;padding:12px 18px;background:rgba(6,7,13,.6);border:1px solid rgba(122,122,156,.4)}
.past-show .date-block-small .day{font-family:var(--d);font-size:34px;color:var(--mute);line-height:.85;text-shadow:0 0 8px rgba(122,122,156,.5)}
.past-show .date-block-small .mon-year{font-family:var(--d);font-size:11px;color:var(--mute);letter-spacing:.18em;margin-top:6px}
.past-show .info{min-width:0}
.past-show .info .venue{font-family:var(--d);font-size:18px;text-transform:uppercase;letter-spacing:.04em;color:var(--bone);text-shadow:0 0 10px rgba(0,240,255,.3)}
.past-show .info .city{font-family:var(--m);font-size:18px;color:var(--mute);letter-spacing:.18em;text-transform:uppercase;margin-top:4px}
.past-show .info .city-cn{font-family:var(--cn);color:var(--mute);font-size:14px;margin-left:8px}
.past-show .time{font-family:var(--m);font-size:16px;color:var(--mute);letter-spacing:.18em}

.tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:36px}
@media(max-width:880px){.tiles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.tiles{grid-template-columns:repeat(2,1fr)}}
.tile{background:rgba(14,17,38,.6);border:2px solid rgba(0,240,255,.2);padding:30px 18px;text-align:center;transition:all .25s;display:flex;flex-direction:column;align-items:center;gap:14px;color:var(--cyan)}
.tile:hover{border-color:var(--magenta);box-shadow:0 0 25px var(--magenta);color:var(--magenta)}
.tile svg{filter:drop-shadow(0 0 12px currentColor)}
.tile .lb{font-family:var(--m);font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--bone)}
.tile .lb .cn{display:block;font-family:var(--cn);font-size:11px;color:var(--mute);margin-top:2px;letter-spacing:.05em}
.tile:nth-child(2){color:var(--magenta)}
.tile:nth-child(2):hover{color:var(--cyan);border-color:var(--cyan);box-shadow:0 0 25px var(--cyan)}
.tile:nth-child(3){color:var(--yellow)}
.tile:nth-child(3):hover{color:var(--magenta);border-color:var(--magenta);box-shadow:0 0 25px var(--magenta)}
.tile:nth-child(4){color:var(--cyan)}
.tile:nth-child(5){color:var(--magenta)}

/* Social tiles — keep brand colors, no palette grading */
.tiles.social{grid-template-columns:repeat(4,1fr)}
@media(max-width:880px){.tiles.social{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.tiles.social{grid-template-columns:1fr}}
button.tile{font:inherit;cursor:pointer;text-align:center;width:100%}
.tile.brand-em{color:#00c8d8}
.tile.brand-em:hover{color:#00c8d8;border-color:#00c8d8;box-shadow:0 0 25px rgba(0,200,216,.55)}
.tile.brand-wc{color:#07c160}
.tile.brand-wc:hover{color:#07c160;border-color:#07c160;box-shadow:0 0 25px rgba(7,193,96,.5)}
.tile.brand-ig{color:#d62976}
.tile.brand-ig:hover{color:#962fbf;border-color:#d62976;box-shadow:0 0 25px rgba(214,41,118,.55)}
.tile.brand-rn{color:#ff2741}
.tile.brand-rn:hover{color:#ff2741;border-color:#ff2741;box-shadow:0 0 25px rgba(255,39,65,.55)}
.tile.brand-sp{color:#1ed760}
.tile.brand-sp:hover{color:#1ed760;border-color:#1ed760;box-shadow:0 0 25px rgba(30,215,96,.55)}
.tile.brand-am{color:#fa233b}
.tile.brand-am:hover{color:#fa233b;border-color:#fa233b;box-shadow:0 0 25px rgba(250,35,59,.55)}
.tile.brand-qq{color:#1ad28e}
.tile.brand-qq:hover{color:#1ad28e;border-color:#1ad28e;box-shadow:0 0 25px rgba(26,210,142,.55)}
.tile.brand-nt{color:#c20c0c}
.tile.brand-nt:hover{color:#c20c0c;border-color:#c20c0c;box-shadow:0 0 25px rgba(194,12,12,.55)}
.tile.brand-yt{color:#ff0000}
.tile.brand-yt:hover{color:#ff0000;border-color:#ff0000;box-shadow:0 0 25px rgba(255,0,0,.55)}
.tile.brand-em svg,.tile.brand-wc svg,.tile.brand-ig svg,.tile.brand-rn svg{filter:drop-shadow(0 0 10px rgba(0,0,0,.4))}
.tile .brand-img-rn{width:54px;height:54px;padding:5px;border-radius:13px;object-fit:contain;display:block;margin:0 auto;filter:drop-shadow(0 0 12px rgba(255,39,65,.5));box-sizing:border-box}
/* All social icons same OUTER height so labels baseline-align */
.tiles.social .tile > svg{width:54px;height:54px}

/* Streaming brand logos — original colors, no grading */
.tile .brand-png{height:38px;width:38px;object-fit:contain;display:block;margin:0 auto;transition:transform .25s,filter .25s}
.tile:hover .brand-png{transform:scale(1.08);filter:drop-shadow(0 0 10px rgba(0,240,255,.35))}
.tile .brand-png-qq{height:42px;width:42px}

/* Persistent floating social rail (homepage) */
.float-social{position:fixed;right:14px;top:auto;bottom:14px;transform:none;z-index:50;display:flex;flex-direction:column;gap:8px;padding:5px 5px;background:rgba(220,220,232,.18);backdrop-filter:blur(10px);border:none;border-radius:12px;box-shadow:none;transition:background .25s}
.float-social:hover{background:rgba(220,220,232,.22)}
.float-social{transition:padding .28s cubic-bezier(.34,1.56,.64,1),gap .28s cubic-bezier(.34,1.56,.64,1),background .2s ease}
.float-social a{transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .18s ease,width .28s cubic-bezier(.34,1.56,.64,1),height .28s cubic-bezier(.34,1.56,.64,1)}
.float-social.collapsed{padding:4px;gap:0;background:rgba(220,220,232,.22);box-shadow:0 4px 18px rgba(0,0,0,.4)}
.float-social.collapsed > a:not(:first-child){transform:scale(0);opacity:0;height:0;width:0;overflow:hidden;pointer-events:none}
.float-social.collapsed.expanded{padding:6px;gap:8px;background:rgba(220,220,232,.22)}
.float-social.collapsed.expanded > a{transform:scale(1);opacity:1;overflow:visible;pointer-events:auto}
.float-social.collapsed.expanded > a{width:44px;height:44px}
@media(max-width:900px){
  .float-social{right:10px;bottom:10px;padding:6px;gap:6px}
  .float-social a{width:36px;height:36px}
  .float-social svg{width:22px;height:22px}
  .float-social .rn-img,.float-social .qq-img,.float-social .bb-img{width:18px;height:18px}
  .float-social.collapsed.expanded > a{width:36px;height:36px}
}
.float-social a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;transition:transform .25s,box-shadow .25s;position:relative}
.float-social a:hover{transform:scale(1.12)}
.float-social a.ig:hover{box-shadow:0 0 22px rgba(214,41,118,.7)}
.float-social a.rn:hover{box-shadow:0 0 22px rgba(255,39,65,.7)}
.float-social a.yt:hover{box-shadow:0 0 22px rgba(255,0,0,.6)}
.float-social a.sp:hover{box-shadow:0 0 22px rgba(30,215,96,.65)}
.float-social a.qq:hover{box-shadow:0 0 22px rgba(26,210,142,.65)}
.float-social a.bb:hover{box-shadow:0 0 22px rgba(0,174,236,.7)}
.float-social svg{width:28px;height:28px;display:block}
.float-social .rn-img,.float-social .qq-img,.float-social .bb-img{width:22px;height:22px;object-fit:contain;display:block}
body[data-region="global"] .float-social a.region-only[data-region-show="cn"],body[data-region="cn"] .float-social a.region-only[data-region-show="global"]{display:none!important}
.float-social .label-pop{position:absolute;right:54px;top:50%;transform:translateY(-50%) translateX(8px);background:rgba(6,7,13,.95);border:1px solid rgba(0,240,255,.35);padding:6px 12px;font-family:var(--m);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--bone);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;border-radius:6px}
.float-social a:hover .label-pop{opacity:1;transform:translateY(-50%) translateX(0)}
@media(max-width:780px){.float-social{right:10px;padding:8px 6px;gap:8px}.float-social a{width:38px;height:38px}.float-social svg{width:22px;height:22px}.float-social .label-pop{display:none}}

/* ===== Mobile floating-social: full-size cascade above anchor ===== */
@media(max-width:780px){
  .float-social{
    flex-direction:column-reverse;
    transition:padding .5s cubic-bezier(.22,1,.36,1),gap .5s cubic-bezier(.22,1,.36,1),background .35s ease;
  }
  .float-social a{
    transition:opacity .35s ease,height .5s cubic-bezier(.22,1,.36,1),margin .5s cubic-bezier(.22,1,.36,1);
  }
  .float-social.collapsed > a:not(:first-child){
    transform:none;opacity:0;height:0;width:38px;margin:0;overflow:hidden;pointer-events:none;
  }
  .float-social.collapsed.expanded > a{
    transform:none;opacity:1;width:38px;height:38px;overflow:visible;pointer-events:auto;
  }
  .float-social.collapsed.expanded > a:nth-child(2){transition-delay:.08s}
  .float-social.collapsed.expanded > a:nth-child(3){transition-delay:.16s}
  .float-social.collapsed.expanded > a:nth-child(4){transition-delay:.24s}
  .float-social.collapsed.expanded > a:nth-child(5){transition-delay:.32s}
  .float-social.collapsed.expanded > a:nth-child(6){transition-delay:.40s}
  .float-social.collapsed:not(.expanded) > a:nth-child(2){transition-delay:.32s}
  .float-social.collapsed:not(.expanded) > a:nth-child(3){transition-delay:.24s}
  .float-social.collapsed:not(.expanded) > a:nth-child(4){transition-delay:.16s}
  .float-social.collapsed:not(.expanded) > a:nth-child(5){transition-delay:.08s}
  .float-social.collapsed:not(.expanded) > a:nth-child(6){transition-delay:0s}
}

.copy-row{margin:30px 0;display:flex;flex-direction:column;gap:12px}
.copy-row .it{display:flex;justify-content:space-between;align-items:center;background:rgba(14,17,38,.5);padding:20px 24px;border-left:3px solid var(--magenta);gap:14px}
.copy-row .ic{display:inline-flex;align-items:center;color:var(--magenta);filter:drop-shadow(0 0 8px var(--magenta))}
.copy-row .lb{font-family:var(--m);font-size:14px;letter-spacing:.18em;color:var(--mute);text-transform:uppercase}
.copy-row .vv{font-family:var(--d);font-size:14px;color:var(--cyan);text-shadow:0 0 8px var(--cyan)}
.copy-row .copy-btn{font-family:var(--d);font-size:11px;letter-spacing:.18em;padding:10px 16px;background:transparent;border:2px solid var(--cyan);color:var(--cyan);cursor:pointer;text-shadow:0 0 8px var(--cyan)}
.copy-row .copy-btn:hover{background:var(--cyan);color:var(--bg);text-shadow:none}

footer{padding:38px 0 40px;border-top:none;margin-top:80px;background:rgba(6,7,13,.85);position:relative;z-index:5}
footer::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;pointer-events:none;background:linear-gradient(90deg,rgba(0,240,255,0) 0%,rgba(0,240,255,.45) 50%,rgba(0,240,255,0) 100%)}
footer .shell{display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:end}
@media(max-width:780px){footer .shell{grid-template-columns:1fr}}
footer img{height:38px;display:block;margin-bottom:15px}
.shows-bg{position:fixed;inset:0;z-index:0;background-size:cover;background-position:center;opacity:.65;filter:contrast(1.05) saturate(.95);pointer-events:none}
@media(max-width:780px){.shows-bg{background-position:25% center}}
.shows-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,7,13,.55) 0%,rgba(6,7,13,.4) 50%,rgba(6,7,13,.7) 100%)}
body:has(.shows-bg) main{position:relative;z-index:1;background:transparent}
body:has(.shows-bg){background:transparent}
.music-bg{position:fixed;inset:0;z-index:0;background-size:cover;background-position:center 25%;background-repeat:no-repeat;opacity:.65;filter:brightness(1.55) contrast(1.18) saturate(1.35) hue-rotate(-4deg);pointer-events:none}
.music-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,7,13,.45) 0%,rgba(6,7,13,.3) 50%,rgba(6,7,13,.6) 100%)}
body:has(.music-bg) main{position:relative;z-index:1;background:transparent}
body:has(.music-bg){background:transparent}
footer p{font-family:var(--m);font-size:14px;letter-spacing:.18em;color:var(--mute);text-transform:uppercase;margin-top:4px}
footer p .cn{font-family:var(--cn);font-size:13px;letter-spacing:.05em;margin-left:8px}
footer .links{display:flex;gap:8px;flex-wrap:wrap}
footer .links a{font-family:var(--m);font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);padding:6px 10px;border:1px solid rgba(0,240,255,.2)}
footer .links a:hover{background:var(--cyan);color:var(--bg)}

.video-wrap{position:relative;padding-bottom:56.25%;background:#000;border:2px solid var(--cyan);box-shadow:0 0 24px rgba(0,240,255,.45),0 0 60px rgba(0,240,255,.25);border-radius:12px;overflow:hidden}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.spotify{margin-top:30px;border:2px solid var(--cyan);box-shadow:0 0 24px rgba(0,240,255,.45),0 0 60px rgba(0,240,255,.25);border-radius:12px;overflow:hidden;transition:max-width .35s ease}
.spotify iframe{width:100%;height:352px;border:0;display:block;transition:height .35s ease}
.spotify iframe[data-region-iframe="track"]{height:152px}
body[data-region="global"] .spotify{max-width:660px;margin-left:auto;margin-right:auto}
body[data-region="global"] .spotify iframe{height:450px}
body[data-region="global"] .spotify iframe[data-region-iframe="track"]{height:175px}

/* Region toggle (floating bottom-left) */
.region-toggle{position:fixed;left:14px;bottom:14px;z-index:120;display:flex;gap:0;background:rgba(6,7,13,.78);backdrop-filter:blur(10px);border:1px solid rgba(244,237,225,.18);border-radius:4px;overflow:hidden;font-family:var(--m)}
.region-toggle button{background:transparent;border:none;color:#8a8a98;padding:7px 11px;font-family:inherit;font-size:10px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:all .2s}
.region-toggle button:hover{color:var(--cyan)}
.region-toggle button.on{background:transparent;color:var(--cyan)}
.region-toggle button[data-r="global"]{font-size:12px;padding-left:7px;padding-right:7px}
@media(max-width:600px){.region-toggle{left:10px;bottom:10px}.region-toggle button{padding:6px 9px;font-size:9px}}

.live-tracks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px}
@media(max-width:780px){.live-tracks{grid-template-columns:repeat(2,minmax(0,1fr))}}
.live-tracks > div{padding:18px 0;font-family:var(--d);font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--bone);text-align:center}
.live-tracks > div .cn{display:block;font-family:var(--cn);font-size:11px;color:var(--mute);margin-top:5px;letter-spacing:.05em;text-transform:none}

/* Full lyrics — always two columns */
.lyrics-full{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:40px;background:rgba(14,17,38,.55);border:2px solid rgba(0,240,255,.25);padding:42px}
@media(max-width:780px){.lyrics-full{grid-template-columns:1fr;gap:30px;padding:24px 20px;margin-left:-6px;margin-right:-6px}}
.lyrics-full h3{font-family:var(--d);font-size:14px;line-height:24px;color:var(--yellow);text-shadow:0 0 12px var(--yellow);text-transform:uppercase;letter-spacing:.18em;margin-bottom:24px;padding-bottom:14px;border-bottom:1px dashed rgba(255,230,0,.3)}
.lyrics-full .col-cn h3{font-size:18px}
.lyrics-full .col{display:flex;flex-direction:column;gap:18px}
.lyrics-full .stanza{font-family:var(--m);font-size:21px;line-height:1.3;letter-spacing:-0.02em;word-spacing:-0.02em;color:var(--bone);white-space:pre-line}
.lyrics-full .stanza-cn{font-family:var(--cn);font-size:16px;line-height:1.7;color:var(--bone);white-space:pre-line;font-weight:400}
.lyrics-full .label{font-family:var(--d);font-size:11px;line-height:20px;color:var(--magenta);text-shadow:0 0 8px var(--magenta);letter-spacing:.18em;margin-bottom:6px;text-transform:uppercase}
.lyrics-full .col-cn .label{font-size:15px}
.lyrics-note{margin-top:16px;font-family:var(--m);font-size:14px;color:var(--mute);letter-spacing:.12em;font-style:italic}

[data-reveal]{opacity:0;transform:translateY(36px);transition:opacity 2s cubic-bezier(.2,.7,.2,1),transform 2s cubic-bezier(.2,.7,.2,1)}
[data-reveal].in{opacity:1;transform:none}
.copy-toast{position:fixed;top:30px;left:50%;transform:translateX(-50%);background:rgba(255,45,117,.95);color:#fff;padding:12px 22px;font-family:var(--d);font-size:11px;letter-spacing:.18em;opacity:0;pointer-events:none;transition:opacity .3s;z-index:9999;box-shadow:0 0 30px var(--pink-hot)}
.copy-toast.show{opacity:1}
body[data-region="cn"] [data-region-only="global"]{display:none}
body[data-region="global"] [data-region-only="cn"]{display:none}
/* Midas Touch custom player */
.midas-player{display:grid;grid-template-columns:170px 1fr;gap:24px;align-items:stretch;padding:28px;background:linear-gradient(135deg,rgba(0,240,255,.08),rgba(255,45,255,.08));border:2px solid rgba(0,240,255,.4);position:relative}
.midas-player::before{content:"";position:absolute;inset:-2px;background:linear-gradient(135deg,var(--cyan),var(--magenta),var(--yellow));z-index:-1;filter:blur(14px);opacity:.4;pointer-events:none}
.midas-player>*{position:relative;z-index:1}
.midas-player .mp-cover{width:170px;height:170px;object-fit:cover;border:1px solid rgba(255,230,0,.4);box-shadow:0 0 22px rgba(255,230,0,.25)}
.midas-player .mp-info{display:flex;flex-direction:column;gap:14px;justify-content:space-between;min-width:0}
.midas-player .mp-track{font-family:var(--d);font-size:20px;color:var(--bone);text-shadow:0 0 14px var(--cyan);letter-spacing:.04em}
.midas-player .mp-artist{font-family:var(--m);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mute);margin-top:6px}
.midas-player .mp-controls{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
.midas-player .mp-play{font-family:var(--d);font-size:14px;width:46px;height:46px;border:2px solid var(--cyan);background:rgba(0,240,255,.08);color:var(--cyan);cursor:pointer;text-shadow:0 0 10px var(--cyan);box-shadow:0 0 16px rgba(0,240,255,.4);display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s;line-height:1}
.midas-player .mp-play:hover{background:var(--cyan);color:var(--bg);text-shadow:none;box-shadow:0 0 28px var(--cyan)}
.midas-player .mp-play.playing{background:var(--magenta);border-color:var(--magenta);color:var(--bg);text-shadow:none;box-shadow:0 0 24px var(--magenta)}
.midas-player .mp-bar{position:relative;height:6px;background:rgba(122,122,156,.25);border:1px solid rgba(0,240,255,.3)}
.midas-player .mp-fill{position:absolute;left:0;top:0;bottom:0;width:0%;background:linear-gradient(90deg,var(--cyan),var(--magenta));box-shadow:0 0 12px var(--cyan)}
.midas-player .mp-seek{position:absolute;inset:-6px 0;width:100%;height:calc(100% + 12px);opacity:0;cursor:pointer;margin:0;padding:0}
.midas-player .mp-time{font-family:var(--m);font-size:11px;letter-spacing:.14em;color:var(--mute);font-variant-numeric:tabular-nums;white-space:nowrap}
.midas-player .mp-time .mp-sep{opacity:.5;margin:0 4px}
.midas-player .mp-links{display:flex;flex-wrap:wrap;gap:8px}
.midas-player .mp-links a{font-family:var(--d);font-size:10px;letter-spacing:.18em;padding:7px 11px;border:1px solid rgba(0,240,255,.4);color:var(--cyan);text-shadow:0 0 8px var(--cyan);text-decoration:none;transition:all .2s;background:rgba(0,240,255,.04)}
.midas-player .mp-links a:hover{background:var(--cyan);color:var(--bg);text-shadow:none;box-shadow:0 0 18px var(--cyan)}
@media(max-width:600px){
  .midas-player{grid-template-columns:1fr;gap:16px;padding:16px}
  .midas-player .mp-cover{width:100%;height:auto;max-width:300px;justify-self:center;aspect-ratio:1/1}
  .midas-player .mp-track{font-size:18px;text-align:center}
  .midas-player .mp-artist{text-align:center}
  .midas-player .mp-links{justify-content:center}
}

/* ===== Mobile show cards — full rewrite, last in cascade ===== */
@media(max-width:800px){
  .show-card,.show-card.featured{
    display:flex;flex-direction:column;align-items:stretch;
    gap:0;padding:0;
    grid-template-columns:none;
    background:#06070d;
    border:2px solid rgba(0,240,255,.32);
    margin-bottom:22px;
    overflow:hidden;
    box-sizing:border-box;
    width:100%;max-width:100%;
  }
  .show-card.featured{border-color:var(--yellow);box-shadow:0 0 24px rgba(255,230,0,.18)}
  .show-card .photo-bg{
    position:relative;inset:auto;
    width:100%;height:200px;
    background-size:cover;background-position:center;
    opacity:1;filter:saturate(1.05) contrast(1.05);
    z-index:0;
  }
  .show-card>*:not(.photo-bg){position:relative;z-index:1}
  .show-card .date-block{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    width:auto;min-width:0;
    align-self:center;
    margin:-50px auto 14px;
    padding:12px 24px;
    background:rgba(6,7,13,.92);
    border:2px solid var(--yellow);
    box-shadow:0 0 20px rgba(255,230,0,.4);
    box-sizing:border-box;max-width:calc(100% - 32px);
  }
  .show-card .date-block .day{font-size:38px;line-height:.95;margin-bottom:4px;color:var(--yellow);font-family:var(--d);text-shadow:0 0 16px var(--yellow);letter-spacing:-.02em}
  .show-card .date-block .mon-year{font-size:11px;letter-spacing:.16em;color:var(--yellow);font-family:var(--d);text-align:center;line-height:1.3;text-shadow:0 0 8px var(--yellow)}
  .show-card .date-block .mon-year .cn{display:block;font-family:var(--cn);font-size:10px;margin-top:3px;letter-spacing:.05em}
  .show-card .info{
    text-align:center;
    width:100%;padding:0 16px;margin:0;
    box-sizing:border-box;
    display:flex;flex-direction:column;align-items:center;gap:8px;
  }
  .show-card .info .venue{
    font-family:var(--d);font-size:20px;line-height:1.15;margin:0;
    color:var(--bone);text-shadow:0 0 14px var(--cyan);
    letter-spacing:.04em;text-transform:uppercase;
    overflow-wrap:break-word;word-break:break-word;max-width:100%;
  }
  .show-card .info .meta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;align-items:center;margin:0}
  .show-card .info .city{font-family:var(--m);font-size:18px;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);text-shadow:0 0 10px var(--cyan)}
  .show-card .info .city-cn{font-family:var(--cn);font-size:18px;font-weight:700;color:var(--magenta);text-shadow:0 0 10px var(--magenta);letter-spacing:.05em}
  .show-card .info .country{font-family:var(--m);font-size:14px;letter-spacing:.18em;color:var(--mute);text-transform:uppercase;display:inline-flex;align-items:center;gap:4px}
  .show-card .info .time{font-family:var(--m);font-size:14px;letter-spacing:.16em;color:var(--bone);text-shadow:0 0 12px var(--cyan);text-transform:uppercase;margin:0}
  .show-card .info .extra{
    font-family:var(--cn);font-size:12px;line-height:1.5;
    color:var(--bone);text-shadow:0 0 10px var(--cyan);margin:0;
    overflow-wrap:break-word;word-break:break-word;
    max-width:100%;
  }
  .show-card .tix{
    align-self:stretch;
    margin:14px 16px 18px;
    padding:14px 16px;
    font-family:var(--d);font-size:11px;letter-spacing:.16em;text-align:center;
    text-transform:uppercase;
    white-space:normal;line-height:1.5;
    box-sizing:border-box;max-width:calc(100% - 32px);
    display:block;
  }
  .show-card .tix.soon{
    background:transparent;color:var(--yellow);
    border:2px dashed var(--yellow);box-shadow:none;opacity:.9;
  }
}

/* ===== Home: persistent Edward bg from midas-feature to footer ===== */
.home-tail-bg{
  position:relative;
  isolation:isolate;
  background-size:cover;
  background-position:50% 35%;
  background-attachment:fixed;
  background-repeat:no-repeat;
}
.home-tail-bg::before{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(6,7,13,.95) 0%,rgba(6,7,13,.7) 6%,rgba(6,7,13,.55) 50%,rgba(6,7,13,.85) 95%,rgba(6,7,13,1) 100%);
  z-index:-1;
  pointer-events:none;
}
@media(max-width:780px){
  /* iOS doesn't support background-attachment:fixed reliably; fall back to scroll */
  .home-tail-bg{background-attachment:scroll;background-position:50% center}
}
