/* 完整排行榜頁（/leaderboard）：2026-11-11 Tina 選定設計稿重做。
   版面：左邊前三名大卡（金銀銅六角金屬章）、右邊 4–10 名；右上結算倒數；期間 本週／本月／本季／本年；整頁一個畫面、不捲動。
   全部規則都掛在 #lbp 底下，不影響其他頁。尺寸以 1920 寬設計（page.js 依視窗寬度等比縮放，--vhd 是換算後的視窗高） */

#lbp{--pk:clamp(0px,calc(var(--vhd,1080px) - 900px),180px);--md:clamp(60px,calc(var(--vhd,1080px) * .105),104px);
  height:var(--vhd,1080px);box-sizing:border-box;padding:calc(120px + var(--pk) * .1) var(--m) calc(32px + var(--pk) * .1);
  display:flex;flex-direction:column;color:var(--text)}

/* 標題區：左邊標題＋日期＋「怎麼算？」，右邊結算倒數＋期間頁籤 */
#lbp .top{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:48px}
#lbp h1.h2{font-size:76px;margin-top:0;line-height:.92}
#lbp .meta{display:flex;align-items:center;gap:24px;margin-top:16px;font-size:19px;color:var(--text2);min-height:40px}
#lbp .dt{font-family:var(--mono);font-size:30px;font-weight:700;color:var(--text);letter-spacing:.02em;white-space:nowrap}
#lbp .howw{position:relative}
#lbp .how{font:inherit;color:var(--text);background:none;border:0;border-bottom:1px solid var(--text2);padding:0;cursor:pointer;white-space:nowrap}
#lbp .how:focus-visible,#lbp .tb button:focus-visible,#lbp .pop .x:focus-visible{outline:2px solid var(--text);outline-offset:4px}
#lbp .rtop{display:flex;flex-direction:column;align-items:stretch;gap:16px;width:560px}

/* 結算倒數：換成會員中心的計時器（Tina 2026-11-12）。照 member.css .stimer（切角機殼）、wall.css .silk（機殼上的印字）、.bezel（金屬框四顆內六角螺絲）、
   .win（深紅玻璃窗）與 member.js seg7（七段 LED，淡淡的 8 底影，本年天數三位）。
   尺寸對的是會員中心在頭盔 1280×720 時的值（機殼內距 8、框內距 6～8、窗內距 8、數字高約 42、切角約 9），數字高 40，整塊 88，比原本只高 16。
   會員中心機殼寫了落地陰影，但被切角一起裁掉、畫面上看不到（2026-11-12 實測），所以這裡不寫。
   窗內數字靠右（同會員中心 .win、改前排行榜），換頁籤時時間的位置不動；機殼標題寬度固定成四個期間裡最長的那個（page.js 疊四個字、只顯示目前這個） */
#lbp .cd{position:relative;display:flex;align-items:center;gap:24px;padding:8px 8px 8px 24px;
  --tc:10px;clip-path:polygon(var(--tc) 0,calc(100% - var(--tc)) 0,100% var(--tc),100% calc(100% - var(--tc)),calc(100% - var(--tc)) 100%,var(--tc) 100%,0 calc(100% - var(--tc)),0 var(--tc));
  background:linear-gradient(180deg,#3a3936 0%,#272624 50%,#1d1c1a 100%)}
#lbp .cd::before{content:"";position:absolute;inset:0;clip-path:inherit;box-shadow:inset 0 2px 0 rgba(255,255,255,.18),inset 0 -3px 0 rgba(0,0,0,.6);pointer-events:none}
#lbp .cd .cl{flex:none;display:grid;font-size:14px;letter-spacing:.18em;color:#bdb6a6;text-transform:uppercase;white-space:nowrap}
#lbp .cd .cl>span{grid-area:1/1}
#lbp .cd .cl .gh{visibility:hidden}
#lbp .bezel{flex:1;min-width:0;position:relative;padding:8px;background:linear-gradient(180deg,#5b5954,#2f2e2b 50%,#4a4844);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),inset 0 -1px 0 rgba(0,0,0,.6)}
#lbp .bezel .sc{position:absolute;width:11px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#a5a29a,#4a4844 60%,#262523);box-shadow:inset 0 0 0 1px rgba(0,0,0,.5)}
#lbp .bezel .sc::after{content:"";position:absolute;inset:28%;background:#1a1918;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
#lbp .bezel .sc:nth-child(1){left:2px;top:2px}
#lbp .bezel .sc:nth-child(2){right:2px;top:2px}
#lbp .bezel .sc:nth-child(3){left:2px;bottom:2px}
#lbp .bezel .sc:nth-child(4){right:2px;bottom:2px}
#lbp .win{position:relative;overflow:hidden;display:flex;justify-content:flex-end;align-items:flex-end;gap:10px;min-height:56px;padding:8px 16px;
  background:radial-gradient(130% 150% at 50% 0%,#1d0a08 0%,#0b0403 72%);box-shadow:inset 0 4px 12px rgba(0,0,0,.95),inset 0 0 0 1px rgba(0,0,0,.9)}
#lbp .win::after{content:"";position:absolute;inset:0;background:linear-gradient(162deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.03) 34%,transparent 35%);pointer-events:none}
#lbp .win .sg{display:block}
#lbp .win svg{height:40px;width:auto;display:block}
#lbp .win .unit{font-family:var(--mono);font-weight:700;font-size:16px;color:rgba(255,90,70,.75);letter-spacing:.08em}

/* 期間頁籤：四個等寬，選中是紅底線 */
#lbp .tb{display:flex;border-bottom:1px solid var(--line)}
#lbp .tb button{flex:1;text-align:center;padding:10px 0;font:inherit;font-size:20px;color:var(--text2);background:none;border:0;
  border-bottom:3px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap}
#lbp .tb button.on{color:var(--text);border-bottom-color:var(--red)}

/* 內容：左邊三張一樣大的卡，右邊 4–10 名 */
#lbp .split{flex:1;min-height:0;display:grid;grid-template-columns:600px 1fr;gap:32px;margin-top:calc(32px + var(--pk) * .08)}
#lbp .podium{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:16px;min-height:0}
#lbp .pd{position:relative;isolation:isolate;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:24px;padding:0 36px;min-height:0;overflow:hidden;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.4))}
#lbp .pd.vac{opacity:.55}
/* 前三名卡：釘在牆上的噴砂黑金屬牌（Tina 2026-11-12）。照 wall.css .plate::before（霧黑、細顆粒、切角亮邊）與 member.css 大片金屬牌四角螺絲，
   數值取 1920 寬時的值；有螺絲，左右內距從 24 加到 36（同會員中心） */
#lbp .pd::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px);
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='s'><feTurbulence type='fractalNoise' baseFrequency='1.6' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .16 0'/></filter><rect width='100%' height='100%' filter='url(%23s)'/></svg>"),
    linear-gradient(180deg,#323335 0%,#26272a 50%,#1f2023 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(0,0,0,.7),inset 1px 0 0 rgba(255,255,255,.08),inset -1px 0 0 rgba(0,0,0,.5)}
#lbp .pd::after{content:"";position:absolute;inset:13px;pointer-events:none;--s:13px;
  background:
    radial-gradient(circle closest-side,#141312 0 26%,transparent 34%) left top/var(--s) var(--s) no-repeat,
    radial-gradient(circle closest-side,#141312 0 26%,transparent 34%) right top/var(--s) var(--s) no-repeat,
    radial-gradient(circle closest-side,#141312 0 26%,transparent 34%) left bottom/var(--s) var(--s) no-repeat,
    radial-gradient(circle closest-side,#141312 0 26%,transparent 34%) right bottom/var(--s) var(--s) no-repeat,
    radial-gradient(circle closest-side at 40% 35%,#b9b6ae 0,#6a6862 45%,#2e2d2a 82%,rgba(0,0,0,.5) 90%,transparent 100%) left top/var(--s) var(--s) no-repeat,
    radial-gradient(circle closest-side at 40% 35%,#b9b6ae 0,#6a6862 45%,#2e2d2a 82%,rgba(0,0,0,.5) 90%,transparent 100%) right top/var(--s) var(--s) no-repeat,
    radial-gradient(circle closest-side at 40% 35%,#b9b6ae 0,#6a6862 45%,#2e2d2a 82%,rgba(0,0,0,.5) 90%,transparent 100%) left bottom/var(--s) var(--s) no-repeat,
    radial-gradient(circle closest-side at 40% 35%,#b9b6ae 0,#6a6862 45%,#2e2d2a 82%,rgba(0,0,0,.5) 90%,transparent 100%) right bottom/var(--s) var(--s) no-repeat}
#lbp .medal{width:var(--md);height:calc(var(--md) * 1.12);filter:drop-shadow(0 6px 10px rgba(0,0,0,.6))}
#lbp .pi{min-width:0;display:flex;flex-direction:column;gap:calc(6px + var(--pk) * .03)}
#lbp .pw{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:700;min-width:0}
/* 頭像：正方形（Tina 2026-11-12，同會員中心）；金屬牌上的頭像用會員中心牌上的深色底，不然跟牌面同色看不出方框 */
#lbp .av{flex:none;width:32px;height:32px;background:#2a2d33;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text2);overflow:hidden}
#lbp .av img{width:100%;height:100%;object-fit:cover}
#lbp .pd .av{background:#141416}
#lbp .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#lbp .pp{font-size:calc(48px + var(--pk) * .07);font-weight:700;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}
#lbp .pp small{font-size:16px;font-weight:400;color:var(--text2);margin-left:8px}
#lbp .ps{display:flex;align-items:center;gap:24px;font-size:18px}
#lbp .ps>span{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
#lbp .ps em{font-style:normal;font-size:14px;color:var(--text2)}
#lbp .vac .pw{color:var(--text2);font-weight:400}

/* 金屬評級章：圓形金屬章（「精密計時」風格），六色沿用 VR 結算面板（F 用網站調亮版）。光影左上亮、右下暗，跟名次章一致（--s 為直徑） */
#lbp .coin{--s:40px;position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;width:var(--s);height:var(--s);border-radius:50%;
  background:radial-gradient(circle at 50% 50%,#24272d 0,#15171b calc(var(--s) * .37),transparent calc(var(--s) * .37 + .5px)),
    radial-gradient(circle at 50% 50%,transparent calc(var(--s) * .37 + .5px),rgba(0,0,0,.55) calc(var(--s) * .37 + 1.5px),transparent calc(var(--s) * .37 + 3px)),
    conic-gradient(from 0deg,rgba(255,255,255,.28) 0deg,rgba(255,255,255,.05) 70deg,rgba(0,0,0,.38) 135deg,rgba(0,0,0,.05) 200deg,rgba(255,255,255,.5) 300deg,rgba(255,255,255,.28) 360deg),
    var(--gc);
  box-shadow:0 0 0 1.5px #0a0c0f,0 0 0 2.5px rgba(255,255,255,.1),0 4px 8px rgba(0,0,0,.6),inset 0 1px 1px rgba(255,255,255,.45),inset 0 -1px 1px rgba(0,0,0,.35)}
#lbp .coin b{font-size:calc(var(--s) * .4);font-weight:800;line-height:1;color:#e9edf1;text-shadow:0 -1px 0 rgba(0,0,0,.9),0 1px 0 rgba(255,255,255,.12);letter-spacing:-.02em}
#lbp .coin.sp b{font-size:calc(var(--s) * .34)}
#lbp .ps .coin{--s:34px}
#lbp .ag{display:inline-flex;align-items:center;gap:10px;color:var(--text2)}

/* 4–10 名 */
#lbp .tbl{display:flex;flex-direction:column;min-height:0;position:relative}
#lbp .lh,#lbp .row{display:grid;grid-template-columns:72px minmax(0,1.6fr) 1fr .8fr 1fr;align-items:center;column-gap:24px;padding:0 24px}
#lbp .lh{font-size:14px;letter-spacing:.12em;color:var(--text2);padding-bottom:8px;border-bottom:1px solid var(--line)}
#lbp .r{text-align:right}
#lbp .ar{display:flex;justify-content:flex-end}
#lbp .rows{flex:1;min-height:0;display:grid;grid-template-rows:repeat(7,minmax(0,1fr))}
#lbp .row{border-bottom:1px solid rgba(236,230,216,.12);font-size:20px;font-variant-numeric:tabular-nums;min-height:0}
#lbp .rk{font-family:var(--mono);font-weight:700;font-size:22px}
#lbp .who{display:flex;align-items:center;gap:16px;min-width:0}
#lbp .pt{font-weight:700;font-size:23px}
#lbp .num{color:var(--text2)}
#lbp .msg{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font-size:20px;color:var(--text2)}

/* 「怎麼算？」展開層 */
#lbp .pop{position:absolute;left:-48px;top:calc(100% + 16px);z-index:5;width:600px;padding:24px;background:#2b2a23;border:1px solid var(--text2);
  box-shadow:0 24px 48px rgba(0,0,0,.7);font-size:17px;line-height:1.6;color:var(--text2)}
#lbp .pop[hidden]{display:none}
#lbp .pop::before{content:"";position:absolute;left:72px;top:-8px;width:14px;height:14px;background:#2b2a23;border-left:1px solid var(--text2);border-top:1px solid var(--text2);transform:rotate(45deg)}
#lbp .pop h2{font-size:20px;color:var(--text);margin-bottom:8px}
#lbp .pop p+p,#lbp .pop .scl+p{margin-top:8px}
#lbp .pop .scl{display:flex;gap:16px;margin-top:8px}
#lbp .pop .scl span{display:flex;flex-direction:column;align-items:center;gap:4px}
#lbp .pop .scl i{font-style:normal;font-size:14px;color:var(--text)}
#lbp .pop .sm{font-size:15px}
#lbp .pop .x{float:right;font:inherit;font-size:15px;color:var(--text);background:none;border:0;border-bottom:1px solid var(--text2);padding:0;cursor:pointer}

/* 視窗很矮（設計高度 ≤ 820，即寬高比 ≥ 1920/820）：卡片縮字，標題大小不動 */
@media (min-aspect-ratio: 1920/820){
  #lbp .pp{font-size:38px}
  #lbp .pi{gap:4px}
  #lbp .split{margin-top:24px}
  #lbp .podium{gap:8px}
  #lbp .row .coin{--s:34px}
}
@media (min-aspect-ratio: 1920/680){
  #lbp{padding-top:104px;padding-bottom:16px}
  #lbp .pp{font-size:30px}
  #lbp .pw{font-size:18px}
  #lbp .pd .av{width:26px;height:26px;font-size:11px}
  #lbp .ps{font-size:16px}
  #lbp .ps .coin{--s:28px}
  #lbp .row .coin{--s:30px}
  #lbp .row{font-size:18px}
  #lbp .pt{font-size:20px}
  #lbp .rk{font-size:19px}
  #lbp .pop{padding:16px 20px;font-size:16px;line-height:1.45}
  #lbp .pop .scl .coin{--s:34px}
}

/* 頁首右側「排行榜」按鈕：在排行榜頁時外框變亮，表示目前在這一頁（按鈕樣式見 site.css .util .ubtn） */
#phd #lbbtn[aria-current="page"]{border-color:var(--text)}
