/* UI polish layer — loaded last. Refines hierarchy, rhythm and mobile ergonomics without changing content. */
:root{--glass:#10262acc;--gold:#e8cb89;--gold-soft:#e8cb8926;--ease:cubic-bezier(.22,1,.36,1)}
body.garden-theme{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
::selection{background:#e8cb8955;color:#fff}

/* Sticky, frosted header on wide screens */
@media(min-width:1001px){
  .garden-theme>header{position:sticky;top:0;z-index:30;max-width:none;padding-left:max(4%,calc((100% - 1360px)/2));padding-right:max(4%,calc((100% - 1360px)/2));background:linear-gradient(#0d1f22e6,#0d1f22b8);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);transition:box-shadow .3s}
  .garden-theme>header:hover{box-shadow:0 10px 30px #03090b55}
  html{scroll-padding-top:90px}
}
.garden-theme header nav a{transition:background .2s,color .2s}
.garden-theme header nav a:not([aria-current]):hover{background:#ffffff0d;color:#f4e5c0}
.garden-theme .nav-cta{display:inline-flex;align-items:center;gap:6px;transition:background .2s,border-color .2s,color .2s}
.garden-theme .nav-cta:hover{background:var(--gold);border-color:var(--gold);color:#102126}

/* Home: portals become quiet glass tiles so the CTA buttons stay the focal point */
.garden-portals a{background:linear-gradient(135deg,#ffffff0f,#ffffff05);border:1px solid #e8cb8933;color:#efe6cf;box-shadow:inset 0 1px 0 #ffffff12,0 6px 18px #02080a33;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:transform .25s var(--ease),border-color .25s,background .25s,box-shadow .25s;min-height:56px}
.garden-portals a:hover{color:#fff4d8;border-color:#e8cb8988;background:linear-gradient(135deg,#e8cb891f,#ffffff08);box-shadow:inset 0 1px 0 #ffffff1a,0 10px 26px #02080a55}
.garden-portals a:after{color:#e8cb8999;transition:transform .25s var(--ease),color .25s}
.garden-portals a:hover:after{transform:translate(2px,-2px);color:var(--gold)}
.garden-portals .portal-icon{background:#e8cb8914;border-color:#e8cb8940;color:var(--gold);box-shadow:none}
.garden-portals a:hover .portal-icon{background:var(--gold);color:#16302c;border-color:var(--gold)}
.garden-theme .hero .actions .button{padding-left:26px;padding-right:26px;font-weight:500;letter-spacing:.5px}
.garden-theme .hero .actions .primary{box-shadow:0 8px 26px #e8cb8933}
.garden-theme .hero .actions .primary:hover{box-shadow:0 12px 32px #e8cb8955}
.garden-theme .hero .actions .secondary:hover{background:#ffffff0d;border-color:#8bd6c388;color:#fff}
.hero-art-link{transition:background .2s,color .2s,border-color .2s}
.hero-art-link:hover{background:var(--gold);color:#16302c;border-color:var(--gold)}

/* Subpages: compact title row so the in-panel heading isn't repeated at the same weight */
.garden-theme .page-heading{padding:0 4px;margin-bottom:22px}
.garden-theme .page-heading h1{display:flex;align-items:center;gap:12px;font-size:clamp(24px,2.6vw,32px);letter-spacing:6px;color:#f1dbac}
.garden-theme .page-heading h1:before{content:"";width:28px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.garden-theme .page-heading a{display:inline-flex;align-items:center;padding:6px 14px;border:1px solid #e8cb8933;border-radius:999px;font-size:13px;color:#cfdcd3;transition:background .2s,color .2s,border-color .2s}
.garden-theme .page-heading a:hover{background:#e8cb891a;border-color:#e8cb8977;color:#f8dfa5}

/* Panels & section headings */
.garden-theme .section{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.garden-theme .section-heading h2{letter-spacing:3px}
.garden-theme .section-heading .text-link{transition:color .2s,border-color .2s}
.garden-theme .section-heading .text-link:hover{color:#fff1cc;border-color:var(--gold)}

/* Video cards: even rhythm, clamped copy, clearer affordance */
.garden-theme .cards{gap:22px}
.garden-theme .card{position:relative}
.garden-theme .card:hover{transform:translateY(-5px)}
.garden-theme .card .cover{background:#0c1c1f}
.garden-theme .card .cover img{transition:transform .5s var(--ease),filter .3s}
.garden-theme .card:hover .cover img{transform:scale(1.04)}
.garden-theme .card .cover:after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,#0a161a99);pointer-events:none}
.garden-theme .duration{z-index:1;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-variant-numeric:tabular-nums}
.garden-theme .card h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.1em;font-size:17px}
.garden-theme .card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.75}
.garden-theme .card-meta{font-variant-numeric:tabular-nums;letter-spacing:.3px}
.garden-theme .card .watch{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border:1px solid #8bd6c340;border-radius:999px;transition:background .2s,color .2s}
.garden-theme .card:hover .watch{background:#8bd6c3;color:#0f2427}
.garden-theme .data-note{line-height:1.7}

/* Gallery: uniform tiles */
.garden-theme .gallery{gap:24px}
.garden-theme .gallery .gallery-open img{height:auto;aspect-ratio:16/10;object-fit:cover}
.garden-theme .gallery figure:nth-child(n+3) .gallery-open img{height:auto;object-fit:contain;background:#121212}
.garden-theme .gallery-open{box-shadow:0 10px 28px #02080a40;outline:1px solid #e8cb8922;outline-offset:-1px}
.garden-theme .gallery-open span{transition:background .2s,color .2s}
.garden-theme .gallery-open:hover span{background:var(--gold);color:#16302c}
.garden-theme figcaption a{transition:color .2s}
.garden-theme figcaption a:hover{color:var(--gold)}

/* Tags / chips */
.garden-theme .tags span{background:#ffffff08}

/* Lightbox */
.garden-theme dialog{border-radius:20px;box-shadow:0 30px 80px #000a}
.garden-theme dialog>img{border-radius:12px}
.garden-theme .close{transition:background .2s,transform .2s}
.garden-theme .close:hover{background:var(--gold);color:#16302c;transform:rotate(90deg)}

/* Back-to-top */
.garden-top{transition:transform .25s var(--ease),background .2s,color .2s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#203b35d9}
.garden-top:hover{transform:translateY(-3px);background:var(--gold);color:#16302c}

/* Footer */
.garden-theme footer{color:#9db0ac}
.garden-theme footer>a:last-child{padding:6px 14px;border:1px solid #e8cb8926;border-radius:999px;transition:border-color .2s,color .2s}
.garden-theme footer>a:last-child:hover{border-color:#e8cb8977;color:#f8dfa5}

/* Mobile */
@media(max-width:1000px){
  .garden-theme header nav{scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent);padding-right:28px}
  .garden-theme header nav::-webkit-scrollbar{display:none}
}
@media(max-width:600px){
  .garden-theme header{padding-bottom:10px}
  .garden-theme header nav{scroll-snap-type:x proximity}
  .garden-theme header nav a{scroll-snap-align:start;padding:6px 12px;font-size:13px}
  .garden-theme .page-heading h1{font-size:24px;letter-spacing:4px}
  .garden-theme .page-heading h1:before{width:18px}
  .garden-theme .page-heading a{padding:5px 12px;font-size:12px}
  .garden-portals a{min-height:52px}
  .garden-theme .card h3{min-height:0}
  .garden-theme footer{flex-direction:column;align-items:center;text-align:center;gap:14px;padding:30px 20px 80px}
  .garden-theme footer p{margin:0}
}
@media(hover:none){.garden-theme .card:hover,.garden-portals a:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.garden-theme .card .cover img,.garden-portals a,.garden-top,.garden-theme .close{transition:none}.garden-theme .card:hover .cover img{transform:none}}

/* 鼠标拖尾：金色与青绿色交替 */
.cursor-spark{background:#fff1c4;box-shadow:0 0 4px 1px #fff8e1,0 0 12px 3px #e8cb89cc}
.cursor-spark:after{background:#fffbe9}
.cursor-spark.is-green{background:#d4fff1;box-shadow:0 0 4px 1px #effff9,0 0 12px 3px #5fe0c0cc}
.live-offline-note[hidden]{display:none!important}
.garden-top{opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .25s,visibility 0s .25s,background .2s,color .2s}
.garden-top.is-visible{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .25s,visibility 0s,background .2s,color .2s}
.garden-top.is-visible:hover{transform:translateY(-3px)}
.identity-mobile-note{position:fixed;left:50%;bottom:28px;z-index:150;max-width:92vw;white-space:nowrap;padding:11px 18px;border:1px solid #e8cb8966;border-radius:999px;background:#10262af2;color:#f3e6c4;font-size:14px;text-align:center;box-shadow:0 12px 30px #02080a88;transform:translate(-50%,16px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
.identity-mobile-note.is-visible{opacity:1;transform:translate(-50%,0)}

/* 直播提示：左下角悬浮胶囊，带脉冲红点，显眼但不占页头 */
body .live-banner{position:fixed;left:20px;bottom:22px;z-index:40;display:flex;align-items:center;gap:10px;flex:none;max-width:min(380px,calc(100vw - 100px));
  padding:8px 16px 8px 8px;border:1px solid #ff6b7a88;border-radius:999px;background:linear-gradient(110deg,#2a1d24f2,#13262af2);color:#fff1d6;font-size:13px;line-height:1.3;text-align:left;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 10px 28px #02080a88,0 0 0 0 #ff4d6a66;animation:liveGlow 2.2s ease-out infinite;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
body .live-banner::before{content:"LIVE";flex:none;display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 22px;border-radius:999px;background:#ff3d5a;color:#fff;font:700 11px/1 Inter,sans-serif;letter-spacing:1.5px;
  background-image:radial-gradient(circle at 11px 50%,#fff 0 3.5px,transparent 4.5px)}
body .live-banner::after{content:"→";flex:none;margin-left:2px;color:#f3d799;transition:transform .2s}
body .live-banner:hover{background:linear-gradient(110deg,#3a2430f2,#1a3236f2);color:#fff}
body .live-banner:hover::after{transform:translateX(3px)}
body .live-banner[hidden],body[data-page=live] .live-banner,.identity-mode .live-banner{display:none}
@keyframes liveGlow{0%{box-shadow:0 10px 28px #02080a88,0 0 0 0 #ff4d6a66}70%{box-shadow:0 10px 28px #02080a88,0 0 0 10px #ff4d6a00}100%{box-shadow:0 10px 28px #02080a88,0 0 0 0 #ff4d6a00}}
@media(max-width:600px){body .live-banner{left:12px;bottom:14px;max-width:calc(100vw - 80px);font-size:12px}}
@media(prefers-reduced-motion:reduce){body .live-banner{animation:none}}

/* 子页面：直播提示放在页面标题这一行的中间 */
body .live-banner.is-inline{position:static;margin:0 auto;max-width:min(460px,46%);padding:9px 18px 9px 9px;font-size:14px}
/* 手机：回到屏幕底部悬浮 */
@media(max-width:700px){body .live-banner.is-inline{position:fixed;left:12px;bottom:14px;margin:0;max-width:calc(100vw - 80px);padding:8px 14px 8px 8px;font-size:12px}}

/* 电脑端首页等没有标题行的页面：同样放在页面顶部正中（随页面滚走，不遮挡内容） */
@media(min-width:701px){body .live-banner{position:fixed;top:var(--live-top,116px);transition:top .2s;left:50%;bottom:auto;transform:translateX(-50%);max-width:min(460px,46vw);padding:9px 18px 9px 9px;font-size:14px}}

/* ---------- 查看大图：透明底、立绘悬浮在光晕里，金绿配色 ---------- */
.garden-theme dialog#lightbox{width:min(1100px,94vw);max-height:94vh;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;color:#f5ead0}
.garden-theme dialog#lightbox::backdrop{background:radial-gradient(ellipse at 50% 45%,#1d4a42cc 0%,#0c1e21ee 55%,#060f11f5 100%);backdrop-filter:blur(10px) saturate(.8);-webkit-backdrop-filter:blur(10px) saturate(.8)}
.garden-theme dialog#lightbox[open]{display:grid;justify-items:center;gap:14px;animation:lbIn .35s cubic-bezier(.22,1,.36,1)}
.garden-theme dialog#lightbox::before{content:"";position:absolute;left:50%;top:44%;z-index:-1;width:min(70vh,640px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,#e8cb8926 0%,#5fe0c014 45%,transparent 70%);box-shadow:0 0 0 1px #e8cb8930,0 0 0 18px #e8cb8908;pointer-events:none}
.garden-theme dialog#lightbox>img{width:auto;max-width:100%;max-height:80vh;border-radius:0;background:transparent;object-fit:contain;filter:drop-shadow(0 24px 40px #000a)}
.garden-theme dialog#lightbox>div{display:flex;align-items:center;gap:16px;padding:8px 10px 8px 22px;border:1px solid #e8cb8944;border-radius:999px;background:#0d2124cc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.garden-theme dialog#lightbox h3{margin:0;font:500 20px/1.4 "Songti SC","Noto Serif CJK SC",serif;letter-spacing:4px;color:#f3dc9f}
.garden-theme dialog#lightbox>div a{padding:6px 14px;border:1px solid #e8cb8955;border-radius:999px;font-size:13px;color:#e8cb89}
.garden-theme dialog#lightbox>div a[hidden]{display:none}
.garden-theme dialog#lightbox>div:has(a[hidden]){padding:8px 22px}
.garden-theme dialog#lightbox .close{position:fixed;top:22px;right:24px;width:46px;height:46px;border:1px solid #e8cb8977;border-radius:50%;background:#0d2124cc;color:#f3dc9f;font-size:26px;line-height:1}
.garden-theme dialog#lightbox .close:hover{background:#e8cb89;color:#16302c}
@keyframes lbIn{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
@media(max-width:600px){.garden-theme dialog#lightbox>img{max-height:72vh}.garden-theme dialog#lightbox h3{font-size:16px;letter-spacing:2px}.garden-theme dialog#lightbox .close{top:14px;right:14px}}
@media(prefers-reduced-motion:reduce){.garden-theme dialog#lightbox[open]{animation:none}}
