/* ============================================================
   模拟 Windows 更新界面 —— 栏目首页样式
   原站地址：https://www.bitsoo.cn/fakeupdate/
   说明：原站 style.css 未取得，本文件按原站缩略图观感复刻。
        卡片缩略图尺寸 235x132（原站素材原始尺寸）。
   ============================================================ */

* { box-sizing: border-box; }

/* 第40轮（2026-10-02）：弃用黑色主题，改为配色库同款浅色版面 */
html, body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  background:
    radial-gradient(1100px 520px at 100% 0%, rgba(106,92,255,.07), transparent 60%),
    radial-gradient(900px 480px at 0% 100%, rgba(236,72,153,.05), transparent 55%),
    #f5f6fb;
  color: #33384a;
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Segoe UI", "Microsoft YaHei", Tahoma, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.centerDiv {
  max-width: 1800px;
  margin: 0 auto;
  padding: 44px 32px 72px;
  display: flex;
  align-items: flex-start;
  gap: 56px;
}

/* ---------- 左侧：标题与使用说明（对应原站 .div1 / #leftside） ---------- */
.div1 {
  flex: 0 0 auto;
  width: 480px;
}

#leftside {
  line-height: 1.9em;
  font-size: 22px;
  color: #5a5878;
}

#leftside h1 {
  margin: 0 0 10px;
  font-size: 40px;
  font-weight: 800;
  color: #1d1b3a;
  letter-spacing: .5px;
  line-height: 1.5;
}

#leftside span {
  display: inline-block;
  color: #6b6985;
}

/* ---------- 右侧：系统卡片网格（对应原站 .div2 / #rightside） ---------- */
.div2 {
  flex: 1 1 auto;
  min-width: 0;
}

#rightside {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

#rightside a {
  display: block;
  line-height: 0;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #e9eaf4;
  background: #fff;
  box-shadow: 0 1px 2px rgba(26,23,58,.04), 0 12px 32px rgba(26,23,58,.06);
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

#rightside a img {
  display: block;
  width: 353px;      /* 原站 235x132 放大 50%（付工 2026-09-29 需求） */
  height: 198px;
}

#rightside a:hover {
  transform: translateY(-3px);
  border-color: #c9c5f0;
  box-shadow: 0 26px 52px rgba(99,82,255,.18);
}

#rightside br {
  display: none;   /* 原站用 <br> 断行，这里交给 flex 自动换行 */
}

.select {
  margin-top: 30px;
  text-align: center;
  font-size: 21px;
  letter-spacing: 2px;
  color: #9a97b8;
}

/* ---------- 内嵌全屏播放器 ---------- */
#player {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: #000;
  display: none;
}
#player.active { display: block; }

#player iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: #000;
}

#playerbar {
  position: absolute;
  top: 14px; left: 0; right: 0;   /* 第40轮：播放期间全局导航条已隐藏，顶栏不再需要避让 64px */
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  height: 56px;
  padding: 0 18px;
  background: linear-gradient(180deg, rgba(0,0,0,.6), rgba(0,0,0,0));
  opacity: 0;
  transition: opacity .25s ease;
}
/* 第36轮（付工 2026-10-01）：全屏播放时顶栏默认完全隐藏，
   只有鼠标移到顶部 56px 区域才浮现 —— 避免鼠标在画面中移动时
   按钮反复闪出，破坏"全屏干净、有真实感"的观感。 */
#player:not(.fs) #playerbar { opacity: 1; }      /* 非全屏播放：顶栏常显 */
#player.fs #playerbar { opacity: 0; }            /* 全屏：默认不显示 */
#player.fs #playerbar:hover { opacity: 1; }      /* 全屏：鼠标移到顶部才出现 */

#playerbar button {
  appearance: none;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(0,0,0,.55);
  color: #ddd;
  font: 15px/1 "Segoe UI", "Microsoft YaHei", sans-serif;
  padding: 10px 16px;
  border-radius: 6px;
  cursor: pointer;
}
#playerbar button:hover {
  background: rgba(255,255,255,.14);
  color: #fff;
  border-color: rgba(255,255,255,.5);
}

/* ---------- 窄屏自适应 ---------- */
@media (max-width: 1500px) {
  .centerDiv {
    flex-direction: column;
    gap: 34px;
    padding: 30px 22px 56px;
  }
  .div1 { width: auto; }
  #rightside a img { width: 100%; height: auto; }
  #rightside a { width: calc(50% - 12px); }
}

/* ============================================================
   第39轮（2026-10-02）：顶部 Hero 横幅
   版式与配色库主页（/apps/colors/）完全一致：
   橙色渐变 + 光斑 + 描边幽灵字 + 标题行 + 统计胶囊。
   ============================================================ */
.hero{position:relative;color:#fff;overflow:hidden;background:
  radial-gradient(920px 500px at 88% -18%,rgba(251,191,36,.42),transparent 62%),
  radial-gradient(720px 460px at 4% 118%,rgba(239,68,68,.32),transparent 58%),
  radial-gradient(560px 420px at 52% 30%,rgba(251,146,60,.38),transparent 62%),
  linear-gradient(118deg,#a63a06 0%,#d4520b 40%,#f97316 74%,#fb923c 100%)}
.hero::before{content:"";position:absolute;inset:0;background:
  repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px 96px),
  repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 96px);
  -webkit-mask-image:radial-gradient(75% 95% at 50% 0%,#000 25%,transparent 100%);mask-image:radial-gradient(75% 95% at 50% 0%,#000 25%,transparent 100%)}
.hero-ghost{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:168px;font-weight:900;letter-spacing:10px;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.15);user-select:none;pointer-events:none;font-family:Arial,"Helvetica Neue",sans-serif;line-height:1}
.orb{position:absolute;border-radius:50%;filter:blur(38px);opacity:.5;animation:heroFloat 9s ease-in-out infinite;pointer-events:none}
.o1{width:180px;height:180px;background:#f472b6;right:11%;top:-46px}
.o2{width:130px;height:130px;background:#38bdf8;right:36%;bottom:-56px;animation-delay:-3s}
.o3{width:104px;height:104px;background:#fbbf24;right:23%;top:36%;animation-delay:-6s;opacity:.38}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}
.hero-in{max-width:1680px;margin:0 auto;padding:46px 26px 40px;position:relative;z-index:1}
.hero-en{display:inline-flex;align-items:center;gap:10px;font-size:13.1px;letter-spacing:9px;opacity:.85;margin-bottom:13px;font-weight:600}
.hero-en::before{content:"";width:26px;height:1.5px;background:linear-gradient(90deg,#f472b6,#fbbf24);border-radius:2px}
.hero-in h1{margin:0 0 10px;font-size:46.8px;font-weight:900;letter-spacing:3px;text-shadow:0 2px 18px rgba(90,30,5,.35);line-height:1.3}
.hero-in h1 small{font-size:18.2px;font-weight:500;opacity:.85;margin-left:14px;padding-left:15px;letter-spacing:2px;border-left:1px solid rgba(255,255,255,.32)}
.hero-in p{font-size:16.2px;opacity:.92;line-height:1.8;max-width:none;letter-spacing:.2px;margin:0}
@media (max-width:1360px){.hero-in p{white-space:normal}}
.hero-stats{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.hero-stats span{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:99px;padding:7px 16px;font-size:16.2px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:.18s}
.hero-stats span:hover{background:rgba(255,255,255,.2);transform:translateY(-1px)}
.hero-stats b{font-size:17.6px}

/* 窄屏：Hero 标题与幽灵字缩小 */
@media (max-width:900px){
  .hero-ghost{font-size:96px;letter-spacing:6px}
  .hero-in{padding:34px 18px 30px}
  .hero-in h1{font-size:32px}
  .hero-in h1 small{display:block;margin:8px 0 0;padding-left:0;border-left:0}
  .hero-stats span{font-size:14px;padding:6px 12px}
}

/* 第41轮（2026-10-02）：播放期间强制隐藏全局导航条（双保险之二）。
   topnav.js 注入的 #gx-bar 是 fixed 定位且 z-index(10999) 高于播放器(9999)，
   全屏（fullscreenElement=documentElement，导航条是其子元素）时仍会浮在画面上。
   body.moyu-playing 由 script.js 的 hideBar()/showBar() 在播放开始/结束时增删；
   即使脚本被缓存走旧版，样式表带 ?v=41 强制刷新后此规则仍然生效。 */
body.moyu-playing #gx-bar { display: none !important; }
body.moyu-playing { padding-top: 0 !important; }
