/* 时光服专区（/wow/titan/*，10-11）—— 只做简体中文，叠在 wow_en.css 之上。
   ⛔ 颜色一律走 wow_en.css 的变量（浅色主题要能翻，scripts/gi_theme_lint.py 拦）：
      职业色文字 = var(--cc-txt, var(--cc))，元素上写 style="--cc:#xxxxxx"；物品品质 = .q0–.q5 / var(--q0..--q5)。 */

.gt-wrap { max-width: 1100px; margin: 0 auto; padding: 28px 20px 72px; }
.gt-crumbs { font-size: 13px; color: var(--text3); margin-bottom: 14px; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.gt-crumbs a { color: var(--text2); text-decoration: none; }
.gt-crumbs a:hover { color: var(--gold); }

/* 专区子导航：首页 / 强度榜 / BiS / 顶尖玩家 */
.gt-sub { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 20px; }
.gt-sub a { padding: 6px 14px; border: 1px solid var(--border); border-radius: 999px; background: var(--s1);
            color: var(--text2); text-decoration: none; font-size: 13.5px; }
.gt-sub a:hover { border-color: var(--bhl); color: var(--gold); }
.gt-sub a.on { color: var(--gold); border-color: var(--bhl); background: var(--s2); font-weight: 600; }

.gt-h1 { font-size: 26px; font-weight: 800; margin: 0 0 8px; color: var(--text); line-height: 1.3; }
.gt-h1 .cc { color: var(--cc-txt, var(--cc)); }
.gt-h2 { font-size: 18px; font-weight: 700; margin: 30px 0 12px; color: var(--text); display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.gt-h2 small { font-size: 12.5px; font-weight: 400; color: var(--text3); }
.gt-lede { color: var(--text2); font-size: 14.5px; line-height: 1.75; margin: 0 0 6px; max-width: 760px; }
.gt-note { color: var(--text3); font-size: 12.5px; line-height: 1.7; }
.gt-chip { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 12px; border: 1px solid var(--border); color: var(--text2); background: var(--s1); white-space: nowrap; }
.gt-chip.gold { color: var(--gold); border-color: var(--bhl); }
.gt-chip.guess { color: var(--warn); border-color: color-mix(in srgb, var(--warn) 50%, transparent); }
.gt-card { background: var(--s1); border: 1px solid var(--border); border-radius: var(--r); padding: 16px 18px; }
.gt-ico { width: 32px; height: 32px; border-radius: 6px; border: 1px solid var(--border); flex: none; vertical-align: middle; background: var(--s3); }
.gt-ico.sm { width: 22px; height: 22px; border-radius: 4px; }
.gt-ico.lg { width: 44px; height: 44px; border-radius: 8px; }
.gt-ico.q2 { border-color: var(--q2); } .gt-ico.q3 { border-color: var(--q3); }
.gt-ico.q4 { border-color: var(--q4); } .gt-ico.q5 { border-color: var(--q5); }

/* ── 首页：阶段横幅 ── */
.gt-hero { background: linear-gradient(135deg, color-mix(in srgb, var(--gold) 12%, var(--s1)), var(--s1) 60%);
           border: 1px solid var(--bhl); border-radius: 14px; padding: 22px 24px; display: flex; gap: 18px; align-items: center; flex-wrap: wrap; }
.gt-hero-ic { width: 64px; height: 64px; border-radius: 12px; border: 1px solid var(--bhl); }
.gt-hero-t { font-size: 13px; color: var(--gold); letter-spacing: .04em; }
.gt-hero h1 { font-size: 28px; margin: 2px 0 6px; color: var(--text); }
.gt-hero p { margin: 0; color: var(--text2); font-size: 14px; line-height: 1.7; }
.gt-phases { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; margin: 16px 0 4px; }
.gt-ph { border: 1px solid var(--border); border-radius: 8px; padding: 8px 8px 7px; background: var(--s1); font-size: 12px; color: var(--text3); min-width: 0; }
.gt-ph b { display: block; font-size: 14px; color: var(--text2); }
.gt-ph span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gt-ph.done { opacity: .75; }
.gt-ph.cur { border-color: var(--gold); background: var(--s2); }
.gt-ph.cur b { color: var(--gold); }
.gt-ph.guess { border-style: dashed; }
.gt-ph.guess b { color: var(--warn); }

/* ── 首页：选专精 ── */
.gt-classes { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 10px; }
.gt-cls { background: var(--s1); border: 1px solid var(--border); border-left: 3px solid var(--cc-txt, var(--cc)); border-radius: var(--r); padding: 12px 14px; scroll-margin-top: 80px; }
.gt-cls:target { border-color: var(--cc); box-shadow: 0 0 0 1px var(--cc); }
.gt-cls-h { display: flex; align-items: center; gap: 8px; font-weight: 700; color: var(--cc-txt, var(--cc)); margin-bottom: 8px; }
.gt-spec { display: flex; align-items: center; gap: 8px; padding: 6px 4px; border-top: 1px solid var(--border); }
.gt-spec:first-of-type { border-top: 0; }
.gt-spec a.nm { flex: 1 1 auto; color: var(--text); text-decoration: none; font-size: 14px; min-width: 0; }
.gt-spec a.nm:hover { color: var(--gold); }
.gt-spec .rl { font-size: 11.5px; color: var(--text3); }
.gt-spec a.tp { font-size: 12px; color: var(--text2); text-decoration: none; border: 1px solid var(--border); border-radius: 999px; padding: 1px 8px; white-space: nowrap; }
.gt-spec a.tp:hover { color: var(--gold); border-color: var(--bhl); }

/* ── 入口卡片 ── */
.gt-entries { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.gt-entry { display: flex; gap: 12px; align-items: center; background: var(--s1); border: 1px solid var(--border); border-radius: var(--r);
            padding: 14px 16px; text-decoration: none; color: var(--text); }
.gt-entry:hover { border-color: var(--bhl); }
.gt-entry b { display: block; font-size: 15px; color: var(--text); }
.gt-entry span { font-size: 12.5px; color: var(--text3); }

/* ── 强度榜 ── */
.gt-roles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.gt-tl { --tc: var(--q0); }
.gt-tl.S { --tc: var(--q5); } .gt-tl.A { --tc: var(--q4); } .gt-tl.B { --tc: var(--q3); } .gt-tl.C { --tc: var(--q2); } .gt-tl.D { --tc: var(--q0); }
.gt-tbadge { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 6px; font-weight: 800; font-size: 14px;
             color: var(--tc); border: 1px solid var(--tc); background: color-mix(in srgb, var(--tc) 12%, transparent); flex: none; }
.gt-trow { display: flex; align-items: center; gap: 8px; padding: 6px 0; border-top: 1px solid var(--border); font-size: 14px; }
.gt-trow:first-child { border-top: 0; }
.gt-trow .nm { flex: 1 1 auto; min-width: 0; color: var(--cc-txt, var(--cc)); text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gt-trow .sc { color: var(--text2); font-variant-numeric: tabular-nums; font-size: 13px; }
.gt-tier { display: grid; grid-template-columns: 54px 1fr; gap: 10px; align-items: start; padding: 10px 0; border-top: 1px solid var(--border); }
.gt-tier:first-of-type { border-top: 0; }
.gt-tier .gt-tbadge { width: 44px; height: 44px; font-size: 22px; border-radius: 10px; }
.gt-det { background: var(--s2); border: 1px solid var(--border); border-radius: 8px; margin: 0 0 6px; }
.gt-det > summary { display: flex; align-items: center; gap: 8px; padding: 7px 10px; cursor: pointer; list-style: none; flex-wrap: wrap; }
.gt-det > summary::-webkit-details-marker { display: none; }
.gt-det > summary::after { content: '▾'; margin-left: auto; color: var(--text3); font-size: 12px; }
.gt-det[open] > summary::after { content: '▴'; }
.gt-det .nm { font-weight: 600; color: var(--cc-txt, var(--cc)); }
.gt-det .sc { color: var(--text2); font-size: 13px; font-variant-numeric: tabular-nums; }
.gt-det .gt-bar { flex: 1 1 120px; max-width: 260px; }
.gt-bosses { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 4px 14px; padding: 4px 12px 12px; }
.gt-boss { display: flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--text2); min-width: 0; }
.gt-boss .bn { width: 92px; flex: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gt-boss .bv { width: 36px; text-align: right; font-variant-numeric: tabular-nums; color: var(--text); flex: none; }
.gt-boss .gt-bar { flex: 1 1 auto; }

/* 通用条 */
.gt-bar { height: 6px; border-radius: 3px; background: var(--s3); overflow: hidden; min-width: 40px; }
.gt-bar i { display: block; height: 100%; border-radius: 3px; background: var(--gold); }
.gt-bar.cc i { background: var(--cc-txt, var(--cc)); }

/* ── BiS ── */
.gt-sibs { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 0; }
.gt-sib { display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px 4px 5px; border: 1px solid var(--border); border-radius: 999px;
          background: var(--s1); color: var(--text2); text-decoration: none; font-size: 13px; }
.gt-sib img { width: 22px; height: 22px; border-radius: 50%; }
.gt-sib.on { border-color: var(--cc); background: var(--s2); color: var(--cc-txt, var(--cc)); font-weight: 600; }
.gt-sib:hover { border-color: var(--cc); }
.gt-slots { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.gt-slot { background: var(--s1); border: 1px solid var(--border); border-radius: var(--r); padding: 10px 14px 6px; min-width: 0; }
.gt-slot-h { display: flex; align-items: baseline; gap: 8px; font-weight: 700; color: var(--text); margin-bottom: 4px; }
.gt-slot-h small { font-weight: 400; color: var(--text3); font-size: 12px; }
.gt-it { display: grid; grid-template-columns: 32px minmax(0, 1fr) 74px; gap: 4px 10px; align-items: center; padding: 6px 0; border-top: 1px solid var(--border); }
.gt-it:first-of-type { border-top: 0; }
.gt-it-nm { font-size: 14px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gt-it-sub { font-size: 12px; color: var(--text3); display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; margin-top: 2px; }
.gt-it-sub .src { color: var(--text2); }
.gt-it-pct { text-align: right; font-variant-numeric: tabular-nums; font-size: 14px; font-weight: 700; color: var(--text); }
.gt-it-pct .gt-bar { margin-top: 4px; }
.gt-gems { display: inline-flex; gap: 3px; }
.gt-ench { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 10px; }
.gt-ench .gt-card { padding: 10px 14px; }
.gt-ench h3 { font-size: 14px; margin: 0 0 6px; color: var(--text); }
.gt-en-row { display: grid; grid-template-columns: minmax(0, 1fr) 54px; gap: 8px; align-items: center; font-size: 13px; padding: 3px 0; color: var(--text2); }
.gt-en-row.first { color: var(--text); font-weight: 600; }
.gt-en-row .p { text-align: right; font-variant-numeric: tabular-nums; }
.gt-en-row .lb { font-size: 11px; color: var(--text3); font-weight: 400; margin-left: 6px; }
.gt-stats { max-width: 620px; }
.gt-st { display: grid; grid-template-columns: 92px minmax(0, 1fr) 56px 70px; gap: 10px; align-items: center; font-size: 13.5px; padding: 4px 0; color: var(--text2); }
.gt-st b { color: var(--text); font-weight: 600; }
.gt-st .p, .gt-st .a { text-align: right; font-variant-numeric: tabular-nums; }
.gt-st .a { color: var(--text3); font-size: 12px; }
.gt-st .gt-bar { height: 8px; }

/* ── 顶尖玩家 ── */
.gt-pl { background: var(--s1); border: 1px solid var(--border); border-radius: var(--r); margin-bottom: 8px; }
.gt-pl > summary { display: grid; grid-template-columns: 30px minmax(0, 1.2fr) minmax(0, 1fr) 110px; gap: 4px 12px; align-items: center;
                   padding: 10px 14px; cursor: pointer; list-style: none; }
.gt-pl > summary::-webkit-details-marker { display: none; }
.gt-rank { font-weight: 800; font-size: 16px; color: var(--text3); text-align: center; }
.gt-rank.r1 { color: var(--goldb); } .gt-rank.r2 { color: var(--text); } .gt-rank.r3 { color: var(--amber); }
.gt-pn { font-weight: 700; color: var(--cc-txt, var(--cc)); font-size: 15px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gt-ps { font-size: 12px; color: var(--text3); }
.gt-pb { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--text2); min-width: 0; }
.gt-pb span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gt-pa { text-align: right; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--text); }
.gt-pa .gt-bar { margin-top: 4px; }
.gt-gear { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 4px; padding-top: 4px; }
.gt-gear img { cursor: help; }
.gt-pl[open] > summary .gt-gear { display: none; }
.gt-glist { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 2px 16px; padding: 0 14px 12px; }
.gt-gi { display: flex; align-items: center; gap: 8px; font-size: 13px; padding: 3px 0; min-width: 0; }
.gt-gi .sl { width: 64px; flex: none; color: var(--text3); font-size: 12px; }
.gt-gi .nm { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gt-gi a { text-decoration: none; }
.gt-hint { font-size: 12px; color: var(--text3); padding: 0 14px 10px; }

.gt-foot { margin-top: 36px; font-size: 12px; color: var(--text3); line-height: 1.8; text-align: center; }

@media (max-width: 860px) {
  .gt-roles, .gt-slots { grid-template-columns: 1fr; }
  .gt-phases { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .gt-wrap { padding: 20px 14px 60px; }
  .gt-hero { padding: 16px; }
  .gt-hero h1 { font-size: 22px; }
  .gt-phases { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .gt-pl > summary { grid-template-columns: 26px minmax(0, 1fr) 90px; }
  .gt-pl > summary .gt-pb { grid-column: 2 / -1; grid-row: 2; }
  .gt-st { grid-template-columns: 80px minmax(0, 1fr) 50px; }
  .gt-st .a { display: none; }
  .gt-it { grid-template-columns: 32px minmax(0, 1fr) 60px; }
}

/* 插件下载卡（10-11 首发 0.5.0） */
.gt-dl { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; margin: 14px 0; padding: 14px 16px;
  background: var(--s1); border: 1px solid var(--border); border-radius: var(--r); }
.gt-dl-t { flex: 1 1 280px; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.gt-dl-t b { font-size: 16px; color: var(--text); }
.gt-dl-t span { color: var(--text2); font-size: 13px; line-height: 1.5; }
.gt-dl-t a { color: var(--gold); }
.gt-dl-btn { flex: 0 0 auto; padding: 10px 22px; border-radius: 10px; background: var(--gold); color: var(--bg);
  font-weight: 700; text-decoration: none; }
.gt-dl-btn:hover { filter: brightness(1.08); }

/* Titan equipment directory: restrained gold navigation, readable class rows. */
.gt-wrap { max-width:1200px; --text2:color-mix(in srgb,var(--text) 82%,var(--s1)); --text3:color-mix(in srgb,var(--text) 72%,var(--s1)); }
.gt-wrap .gt-note,.gt-wrap .gt-h2 small { color:var(--text2); }
.gt-sub { border-bottom:1px solid var(--border);padding-bottom:14px;gap:12px; }
.gt-sub a { border-radius:7px;min-height:40px;display:inline-flex;align-items:center;box-sizing:border-box; }
.gt-hero { padding:26px 28px;border-radius:12px;background:var(--s1);border-color:var(--border);border-top:2px solid var(--gold); }
.gt-hero h1 { font-size:34px;letter-spacing:-.03em; }
.gt-hero p { max-width:850px; }
.gt-directory-head { display:flex;align-items:end;justify-content:space-between;gap:20px;margin:34px 0 18px;scroll-margin-top:100px; }
.gt-directory-head .gt-h2 { margin:4px 0 6px;font-size:25px; }
.gt-eyebrow { font-size:12px;letter-spacing:.1em;color:var(--gold);margin:0; }
.gt-search { display:grid;gap:6px;font-size:12px;color:var(--text2);min-width:230px; }
.gt-search input { background:var(--s1);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:12px 14px;font:inherit;font-size:14px; }
.gt-search input::placeholder {color:var(--text2);}
.gt-classes { grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start; }
.gt-cls { padding:0;border-left:1px solid var(--border);border-top:3px solid var(--cc);overflow:hidden; }
.gt-cls-h { padding:16px 18px;margin:0;font-size:18px;background:color-mix(in srgb,var(--cc) 7%,var(--s1)); }
.gt-cls-h .gt-ico.sm { width:30px;height:30px; }
.gt-spec { padding:12px 16px;gap:12px;min-height:64px;box-sizing:border-box; }
.gt-spec .gt-ico.sm { width:30px;height:30px; }
.gt-spec a.nm {font-size:15px;font-weight:600;line-height:1.5;}
.gt-spec .rl {display:block;font-size:12px;font-weight:400;color:var(--text2);margin-top:3px;}
.gt-spec a.tp {border:0;border-radius:4px;padding:10px 0;font-size:12px;color:var(--text2);}
.gt-spec:focus-within,.gt-spec:hover {background:var(--s2);}
.gt-cls[hidden],.gt-spec[hidden],.gt-search[hidden],[hidden]#gt-search-empty {display:none;}
.gt-wrap a:focus-visible,.gt-wrap input:focus-visible,.gt-wrap summary:focus-visible {outline:2px solid var(--gold);outline-offset:4px;}
.gt-dl {margin-top:28px;}
.gt-timeline {margin:24px 0;border-block:1px solid var(--border);padding:16px 0;color:var(--text2);}
.gt-timeline summary {cursor:pointer;font-size:14px;}
.gt-ph.done {opacity:1;}
.gt-ph span {white-space:normal;overflow:visible;text-overflow:clip;}
.gt-ench {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.gt-ench .gt-card {padding:18px;}
.gt-ench h3 {font-size:16px;padding-bottom:10px;border-bottom:1px solid var(--border);margin-bottom:4px;}
.gt-en-row {grid-template-columns:36px minmax(0,1fr) 58px;gap:12px;padding:12px 0;align-items:start;border-bottom:1px solid var(--border);}
.gt-en-row:last-child {border-bottom:0;}
.gt-en-row .gt-ico {width:36px;height:36px;}
.gt-en-info {min-width:0;line-height:1.5;overflow-wrap:anywhere;}
.gt-en-info b {font-size:14px;color:var(--text);font-weight:600;}
.gt-en-stats {display:block;color:var(--text2);font-size:12px;font-weight:400;margin-top:4px;}
.gt-en-row .lb {display:inline-block;margin:5px 0 0;color:var(--gold);}
.gt-en-row .p {font-size:14px;padding-top:2px;}
@media(max-width:1000px){.gt-classes{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){
 .gt-wrap{padding:20px 16px 70px;}.gt-hero{padding:20px;gap:14px;}.gt-hero h1{font-size:28px;}
 .gt-directory-head{align-items:stretch;flex-direction:column;gap:12px;}.gt-search{min-width:0;}
 .gt-classes,.gt-ench{grid-template-columns:minmax(0,1fr);}.gt-spec{min-height:70px;}
 .gt-phases{grid-template-columns:repeat(2,minmax(0,1fr));}.gt-en-row{gap:9px;grid-template-columns:32px minmax(0,1fr) 52px;}
 .gt-en-row .gt-ico{width:32px;height:32px;}.gt-ench .gt-card{padding:14px;}
}
