/* xuhuan-cosmos 1.2.18 — homepage content deck */
body.home.xhc-cosmos .fluid-widget-wrap{display:none!important}
body.home.xhc-cosmos main.container{display:none!important}
body.home.xhc-cosmos:not(.xhc-home-ready) #xhc-home-deck{visibility:hidden;animation:xhc-unhide 0s 1.2s forwards}

.xhd{--xhd-gap:22px;--xhd-radius:18px;--xhd-card-w:240px;--xhd-ease:cubic-bezier(.22,1,.36,1);
  position:relative;z-index:2;max-width:1240px;margin:0 auto 48px;padding:8px 24px 24px;
  color:var(--xhc-ink,#1a2238)}
body.dark-theme .xhd,body.xhc-cosmos.dark-theme .xhd{color:#e8eefc}
.xhd-section{margin-top:36px}
.xhd-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}
.xhd-eyebrow{display:block;font-size:11px;letter-spacing:.18em;font-weight:600;opacity:.55;margin-bottom:4px}
.xhd-section-head h2{margin:0;font-size:clamp(20px,2.2vw,28px);letter-spacing:.02em;line-height:1.25;font-weight:700}
.xhd-more{flex:0 0 auto;font-size:13px;font-weight:600;letter-spacing:.04em;color:inherit;opacity:.72;text-decoration:none;
  padding:8px 12px;border-radius:999px;border:1px solid var(--xe-line,rgba(80,100,160,.18));
  transition:transform .25s var(--xhd-ease),opacity .25s,border-color .25s,background .25s}
.xhd-more:hover{opacity:1;transform:translateY(-1px);border-color:var(--xe-line-strong,rgba(100,160,255,.35));background:rgba(100,140,255,.06)}
.xhd-rail-count{margin-left:10px;font-size:12px;opacity:.5;font-weight:500}

/* —— Showcase —— */
.xhd-showcase{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.85fr);gap:18px;margin-top:12px}
.xhd-carousel{position:relative;border-radius:22px;overflow:hidden;isolation:isolate;
  border:1px solid var(--xe-line,rgba(80,100,160,.16));
  background:linear-gradient(145deg,rgba(20,28,56,.06),rgba(80,40,120,.05));
  box-shadow:var(--xe-card-shadow,0 18px 50px -28px rgba(20,30,80,.35))}
body.dark-theme .xhd-carousel{background:linear-gradient(145deg,rgba(10,14,28,.9),rgba(40,24,72,.55));border-color:rgba(120,160,255,.12)}
.xhd-carousel-viewport{overflow:hidden;touch-action:pan-y}
.xhd-carousel-track{display:flex;will-change:transform;transition:transform .7s var(--xhd-ease)}
.xhd-slide{position:relative;flex:0 0 100%;min-width:100%;min-height:340px;display:grid;grid-template-rows:1fr auto}
.xhd-slide-media{display:block;position:absolute;inset:0;z-index:0}
.xhd-slide-media img,.xhd-side-media img,.xhd-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.xhd-slide-media::after{content:"";position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(6,10,24,0) 28%,rgba(6,10,24,.78) 78%,rgba(6,10,24,.92)),
  linear-gradient(90deg,rgba(6,10,24,.55),transparent 55%)}
body.white-theme .xhd-slide-media::after{background:
  linear-gradient(180deg,rgba(255,255,255,0) 20%,rgba(248,250,255,.55) 62%,rgba(248,250,255,.92)),
  linear-gradient(90deg,rgba(248,250,255,.72),transparent 58%)}
.xhd-slide-body{position:relative;z-index:1;padding:28px 28px 26px;max-width:min(560px,92%);align-self:end}
.xhd-slide-title{margin:8px 0 14px;font-size:clamp(22px,2.6vw,34px);line-height:1.22;letter-spacing:.01em;font-weight:750}
.xhd-slide-title a{color:inherit;text-decoration:none}
.xhd-slide-title a:hover{opacity:.9}
.xhd-slide-price{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}
.xhd-slide-cta{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;font-weight:650;font-size:14px;
  text-decoration:none;color:#0b1020;background:linear-gradient(120deg,#c9e7ff,#a78bfa 55%,#f0abfc);
  box-shadow:0 10px 28px -12px rgba(120,80,220,.55);transition:transform .25s var(--xhd-ease),filter .25s}
.xhd-slide-cta:hover{transform:translateY(-2px);filter:brightness(1.05)}
.xhd-carousel-ui{position:absolute;left:0;right:0;bottom:14px;z-index:2;display:flex;align-items:center;justify-content:center;gap:10px;pointer-events:none}
.xhd-carousel-ui > *{pointer-events:auto}
.xhd-nav{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(8,12,28,.45);
  color:#fff;font-size:22px;line-height:1;cursor:pointer;backdrop-filter:blur(8px);transition:transform .2s,background .2s}
body.white-theme .xhd-nav{background:rgba(255,255,255,.7);color:#1a2238;border-color:rgba(40,60,120,.18)}
.xhd-nav:hover{transform:scale(1.06);background:rgba(8,12,28,.7)}
.xhd-dots{display:flex;gap:7px;padding:6px 10px;border-radius:999px;background:rgba(8,12,28,.35);backdrop-filter:blur(8px)}
body.white-theme .xhd-dots{background:rgba(255,255,255,.65)}
.xhd-dot{width:8px;height:8px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.35);cursor:pointer;transition:transform .25s,background .25s,width .25s}
body.white-theme .xhd-dot{background:rgba(30,40,80,.25)}
.xhd-dot.is-active{width:22px;border-radius:999px;background:linear-gradient(90deg,#7dd3fc,#a78bfa)}

.xhd-sides{display:flex;flex-direction:column;gap:10px;min-height:0}
.xhd-sides-head{display:flex;align-items:baseline;justify-content:space-between;padding:0 2px 2px}
.xhd-sides-head span{font-weight:700;font-size:15px;letter-spacing:.04em}
.xhd-sides-head small{font-size:10px;letter-spacing:.16em;opacity:.45}
.xhd-side{display:grid;grid-template-columns:112px 1fr;gap:12px;padding:10px;border-radius:16px;text-decoration:none;color:inherit;
  border:1px solid var(--xe-line,rgba(80,100,160,.14));background:rgba(255,255,255,.55);
  box-shadow:var(--xe-card-shadow,0 10px 28px -20px rgba(20,30,80,.3));
  transition:transform .35s var(--xhd-ease),box-shadow .35s,border-color .35s}
body.dark-theme .xhd-side{background:rgba(16,22,42,.72);border-color:rgba(120,160,255,.1)}
.xhd-side:hover{transform:translateY(-2px);border-color:var(--xe-line-strong,rgba(120,180,255,.35))}
.xhd-side-media{display:block;border-radius:12px;overflow:hidden;aspect-ratio:16/10;background:rgba(20,30,60,.12)}
.xhd-side-body{display:flex;flex-direction:column;gap:6px;min-width:0;padding:2px 2px 2px 0}
.xhd-side-title{font-size:13.5px;font-weight:650;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.xhd-side-price{margin-top:auto}

.xhd-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:650;letter-spacing:.04em;
  background:rgba(120,80,220,.14);color:inherit;border:1px solid rgba(160,120,255,.22);backdrop-filter:blur(6px);width:fit-content}
.xhd-card-media .xhd-badge{position:absolute;left:10px;top:10px;z-index:1}

/* —— Prices —— */
.xhd-price-main{display:inline-flex;align-items:baseline;gap:3px;font-variant-numeric:tabular-nums}
.xhd-price-main small{font-size:10px;opacity:.65;letter-spacing:.04em}
.xhd-price-main b{font-size:18px;font-weight:750;letter-spacing:-.01em}
.xhd-price-tiers{display:inline-flex;gap:6px;flex-wrap:wrap}
.xhd-tier{display:inline-flex;flex-direction:column;padding:3px 8px;border-radius:9px;background:rgba(100,140,255,.08);border:1px solid rgba(100,140,255,.12);line-height:1.15}
.xhd-tier em{font-style:normal;font-size:9px;opacity:.65;letter-spacing:.02em}
.xhd-tier b{font-size:12px;font-weight:700}
.xhd-tier[data-level="1"]{background:rgba(234,179,8,.1);border-color:rgba(234,179,8,.22)}
.xhd-tier[data-level="2"]{background:rgba(167,139,250,.12);border-color:rgba(167,139,250,.28)}
.xhd-price-free{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border-radius:11px;
  background:linear-gradient(120deg,rgba(52,211,153,.15),rgba(125,211,252,.12));border:1px solid rgba(52,211,153,.28)}
.xhd-price-free i{font-style:normal;font-size:9px;letter-spacing:.14em;opacity:.7}
.xhd-price-free b{font-size:15px}
.xhd-price-na{font-size:12px;opacity:.55}

/* —— Category grid —— */
.xhd-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px}
.xhd-cat{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px 14px;border-radius:16px;text-decoration:none;color:inherit;
  border:1px solid var(--xe-line,rgba(80,100,160,.14));background:rgba(255,255,255,.5);
  transition:transform .35s var(--xhd-ease),border-color .35s,box-shadow .35s}
body.dark-theme .xhd-cat{background:rgba(14,20,40,.65)}
.xhd-cat:hover{transform:translateY(-3px);border-color:rgba(125,211,252,.4);box-shadow:0 14px 30px -18px rgba(80,140,255,.45)}
.xhd-cat-ico{width:28px;height:28px;border-radius:10px;background:
  radial-gradient(circle at 30% 30%,#7dd3fc,transparent 55%),
  radial-gradient(circle at 70% 70%,#a78bfa,transparent 50%),
  rgba(80,100,180,.15)}
.xhd-cat[data-key="blender"] .xhd-cat-ico{background:linear-gradient(135deg,#f97316,#ea580c)}
.xhd-cat[data-key="photoshop"] .xhd-cat-ico{background:linear-gradient(135deg,#38bdf8,#0284c7)}
.xhd-cat[data-key="ue"] .xhd-cat-ico{background:linear-gradient(135deg,#a3a3a3,#404040)}
.xhd-cat[data-key="zbrush"] .xhd-cat-ico{background:linear-gradient(135deg,#f472b6,#db2777)}
.xhd-cat[data-key="houdini"] .xhd-cat-ico{background:linear-gradient(135deg,#fbbf24,#d97706)}
.xhd-cat[data-key="ae"] .xhd-cat-ico{background:linear-gradient(135deg,#c084fc,#7c3aed)}
.xhd-cat[data-key="substance"] .xhd-cat-ico{background:linear-gradient(135deg,#34d399,#059669)}
.xhd-cat-name{font-size:13.5px;font-weight:650;line-height:1.25}
.xhd-cat-count{font-size:11px;opacity:.55}

/* —— Resources —— */
.xhd-res-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.xhd-res{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:16px;border-radius:16px;text-decoration:none;color:inherit;
  border:1px solid var(--xe-line,rgba(80,100,160,.14));
  background:linear-gradient(135deg,rgba(125,211,252,.08),rgba(167,139,250,.08));
  transition:transform .35s var(--xhd-ease),border-color .35s}
body.dark-theme .xhd-res{background:linear-gradient(135deg,rgba(30,50,90,.5),rgba(60,30,90,.4))}
.xhd-res:hover{transform:translateY(-2px);border-color:rgba(167,139,250,.4)}
.xhd-res-ico{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.35);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
body.dark-theme .xhd-res-ico{background:rgba(255,255,255,.08)}
.xhd-res[data-icon="pose"] .xhd-res-ico{background:radial-gradient(circle at 40% 30%,#fda4af,#be123c)}
.xhd-res[data-icon="book"] .xhd-res-ico{background:radial-gradient(circle at 40% 30%,#93c5fd,#1d4ed8)}
.xhd-res[data-icon="pack"] .xhd-res-ico{background:radial-gradient(circle at 40% 30%,#86efac,#15803d)}
.xhd-res[data-icon="brush"] .xhd-res-ico{background:radial-gradient(circle at 40% 30%,#fcd34d,#b45309)}
.xhd-res-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.xhd-res-text strong{font-size:14px;font-weight:700}
.xhd-res-text small{font-size:11px;opacity:.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xhd-res-count{font-size:12px;font-weight:650;opacity:.55;font-variant-numeric:tabular-nums}

/* —— Rails —— */
.xhd-rail-scroller{position:relative}
.xhd-rail-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;
  padding:4px 2px 14px;scrollbar-width:none;-ms-overflow-style:none}
.xhd-rail-track::-webkit-scrollbar{display:none}
.xhd-card{flex:0 0 var(--xhd-card-w);scroll-snap-align:start;display:flex;flex-direction:column;text-decoration:none;color:inherit;
  border-radius:var(--xhd-radius);overflow:hidden;border:1px solid var(--xe-line,rgba(80,100,160,.14));
  background:rgba(255,255,255,.62);box-shadow:var(--xe-card-shadow,0 12px 32px -22px rgba(20,30,80,.35));
  transition:transform .4s var(--xhd-ease),box-shadow .4s,border-color .4s}
body.dark-theme .xhd-card{background:rgba(14,20,40,.78);border-color:rgba(120,160,255,.1)}
.xhd-card:hover{transform:translateY(-4px);border-color:rgba(125,211,252,.35);box-shadow:0 18px 40px -20px rgba(80,120,255,.45)}
.xhd-card-media{position:relative;display:block;aspect-ratio:16/9;background:rgba(20,30,60,.15);overflow:hidden}
.xhd-card-media img{transition:transform .7s var(--xhd-ease)}
.xhd-card:hover .xhd-card-media img{transform:scale(1.05)}
.xhd-card-body{display:flex;flex-direction:column;gap:10px;padding:12px 13px 14px;flex:1}
.xhd-card-title{font-size:13.5px;font-weight:650;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}
.xhd-card-price{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.xhd-rail-nav{position:absolute;top:42%;z-index:2;width:40px;height:40px;border-radius:50%;border:1px solid rgba(120,160,255,.25);
  background:rgba(255,255,255,.85);color:#1a2238;font-size:22px;cursor:pointer;box-shadow:0 8px 24px -10px rgba(20,30,80,.45);
  backdrop-filter:blur(8px);transition:transform .2s,opacity .2s}
body.dark-theme .xhd-rail-nav{background:rgba(12,18,36,.82);color:#e8eefc}
.xhd-rail-prev{left:-6px}.xhd-rail-next{right:-6px}
.xhd-rail-nav:hover{transform:scale(1.06)}
.xhd-rail-nav[hidden]{display:none}
.xhd-rail-special .xhd-section-head h2{background:linear-gradient(90deg,#c4b5fd,#7dd3fc);-webkit-background-clip:text;background-clip:text;color:transparent}
.xhd-rail-special .xhd-card{border-color:rgba(167,139,250,.22)}
.xhd-ph{display:block;width:100%;height:100%;background:linear-gradient(120deg,rgba(100,120,180,.12),rgba(160,100,220,.1))}

/* —— Membership spacing after deck —— */
body.home.xhc-cosmos #xhc-membership{margin-top:28px}

/* —— Responsive —— */
@media (max-width:1100px){
  .xhd-showcase{grid-template-columns:1fr}
  .xhd-sides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .xhd-sides-head{grid-column:1/-1}
  .xhd-res-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  .xhd{padding:4px 14px 18px;margin-bottom:28px;--xhd-card-w:72vw;--xhd-gap:14px}
  .xhd-section{margin-top:28px}
  .xhd-slide{min-height:300px}
  .xhd-slide-body{padding:20px 18px 56px;max-width:100%}
  .xhd-slide-title{font-size:22px}
  .xhd-sides{grid-template-columns:1fr;gap:8px}
  .xhd-side{grid-template-columns:96px 1fr}
  .xhd-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .xhd-cat{padding:12px 10px}
  .xhd-res-grid{grid-template-columns:1fr}
  .xhd-rail-nav{display:none}
  .xhd-carousel-ui{bottom:10px}
}
@media (max-width:420px){
  .xhd-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .xhd{--xhd-card-w:78vw}
}

@media (prefers-reduced-motion:reduce){
  .xhd-carousel-track,.xhd-card,.xhd-side,.xhd-cat,.xhd-res,.xhd-more,.xhd-slide-cta,.xhd-card-media img{transition:none!important}
}
body.xhc-idle .xhd-carousel-track,body.xhc-still .xhd-carousel-track{transition-duration:.01ms}
/* 1.2.23 · 数量单位使用含中文字形的字体，避免出现缺字方框 */
.xhd-cat-count .xhd-unit{font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC","Noto Sans SC","Source Han Sans SC",sans-serif;font-variant:normal}
