/* 共享榜单层调色板与基础令牌（--ru-*）：唯一调色来源。白天 = 外榜白天 = ojweb default 皮肤；夜间 = 外榜夜间 = ojweb dark_stage 皮肤。
   取值与 tools/ui-kit/css/tokens.css 一致（外榜站点壳另用 ui-kit 的无前缀令牌，两者数值相同）。 */
.csg-rank-ui{
  --ru-font-sans:"Geist","CsgRank SC","Outrank Sans SC","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei",system-ui,sans-serif;
  --ru-font-mono:"Geist Mono","CsgRank Latin",ui-monospace,"SFMono-Regular",Menlo,Consolas,"CsgRank SC",monospace;
  --ru-paper:#f3f4f7;--ru-surface:#ffffff;--ru-surface-2:#f8f9fb;--ru-sunken:#eceef2;
  --ru-ink:#0f1520;--ru-ink-2:#444c5c;--ru-ink-3:#6b7384;--ru-ink-4:#9aa1af;
  --ru-rule:#e3e6ec;--ru-rule-2:#cfd4de;
  --ru-accent:#2a4fd6;--ru-accent-wash:#e9eefc;
  --ru-ok:#0d7a4f;--ru-danger:#b8312a;
  --ru-r-sm:4px;--ru-r:5px;--ru-r-lg:8px;
  --ru-shadow-pop:0 1px 2px rgba(15,21,32,.08),0 8px 24px -6px rgba(15,21,32,.2);
  --ru-shadow-modal:0 24px 60px -16px rgba(15,21,32,.35);
  --ru-ring:0 0 0 2px var(--ru-surface),0 0 0 4px color-mix(in srgb,var(--ru-accent) 55%,transparent);
  --ru-ease-out:cubic-bezier(.22,.61,.36,1);
}
.csg-rank-ui.csg-rank-ui--dark{
  --ru-paper:#0b0d11;--ru-surface:#12151b;--ru-surface-2:#161a21;--ru-sunken:#0e1116;
  --ru-ink:#e9ebf0;--ru-ink-2:#b4bac6;--ru-ink-3:#808899;--ru-ink-4:#575e6d;
  --ru-rule:#1f242d;--ru-rule-2:#2c323d;
  --ru-accent:#8ea2ff;--ru-accent-wash:#182049;
  --ru-ok:#4cc38d;--ru-danger:#f2766d;
  --ru-shadow-pop:0 1px 2px rgba(0,0,0,.5),0 10px 28px -6px rgba(0,0,0,.7);
  --ru-shadow-modal:0 24px 60px -16px rgba(0,0,0,.8);}
.csg-rank-ui.csg-rank-ui--dark .rank-system{
  --roll-judging-row-base-bg:#1e2f4d;
  --roll-judging-row-inset-marker:rgba(142,162,255,.82);
  --roll-judging-shine-edge:rgba(255,255,255,.06);
  --roll-judging-shine-mid:rgba(255,255,255,.14);
  --roll-judging-grad-a:142,162,255;
  --roll-judging-grad-b:30,58,95;
  --roll-judging-grad-c:142,162,255;
  --roll-judging-grad-a-alpha:0.16;
  --roll-judging-grad-b-alpha:0.28;
  --roll-judging-grad-c-alpha:0.12;
}

@font-face{font-family:"Geist";font-style:normal;font-weight:100 900;font-display:swap;src:url("../fonts/Geist-Latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:100 900;font-display:swap;src:url("../fonts/GeistMono-Latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ───── 浅色马卡龙（light_macaron）：暖纸底、低饱和粉彩成绩色、深色字（不用白字压浅底）；版式/字体/圆角与默认一致 ───── */
.csg-rank-ui.csg-rank-ui--skin-light_macaron{
  --ru-paper:#f7f2ec;--ru-surface:#fffdf9;--ru-surface-2:#fbf6f0;--ru-sunken:#f2ebe2;
  --ru-ink:#2b2420;--ru-ink-2:#5a4f47;--ru-ink-3:#857a70;--ru-ink-4:#b3a89d;
  --ru-rule:#ece4d9;--ru-rule-2:#dccfbf;--ru-accent:#b4587a;--ru-accent-wash:#f7e6ec;
}
.csg-rank-ui.csg-rank-ui--skin-light_macaron .contest-rank-page-shell,
.csg-rank-ui.csg-rank-ui--skin-light_macaron .contest-rank-page-shell .rank-system.fullscreen,
.csg-rank-ui.csg-rank-ui--skin-light_macaron .contest-rank-page-shell .rank-system[data-rank-mode="roll"]{
  --rk-ac:#bfe3cc;--rk-wa:#f4c9c6;--rk-pend:#f6e2a4;--rk-pend-ink:#4a3900;--rk-fb:#c9d6f3;
  --rk-ac-ink:#14472d;--rk-wa-ink:#6e2026;--rk-fb-ink:#1e3a6e;--rk-none:var(--ru-sunken);--rk-none-ink:var(--ru-ink-4);
}
.csg-rank-ui.csg-rank-ui--skin-light_macaron .contest-rank-page-shell .rank-system .problem-item.pro-ac{color:var(--rk-ac-ink)}
.csg-rank-ui.csg-rank-ui--skin-light_macaron .contest-rank-page-shell .rank-system .problem-item.pro-wa{color:var(--rk-wa-ink)}
.csg-rank-ui.csg-rank-ui--skin-light_macaron .contest-rank-page-shell .rank-system .problem-item.pro-first-blood-regular{color:var(--rk-fb-ink)}

/* ───── 素表（plain）：中性灰阶纸面、细线、几乎无圆角；成绩色降为浅底深字，强调信息密度 ───── */
.csg-rank-ui.csg-rank-ui--skin-plain{
  --ru-paper:#ffffff;--ru-surface:#ffffff;--ru-surface-2:#fafafa;--ru-sunken:#f4f4f5;
  --ru-ink:#18181b;--ru-ink-2:#3f3f46;--ru-ink-3:#71717a;--ru-ink-4:#a1a1aa;
  --ru-rule:#e4e4e7;--ru-rule-2:#d4d4d8;--ru-r-sm:2px;--ru-r:3px;--ru-r-lg:4px;--ru-shadow-pop:0 1px 2px rgba(24,24,27,.06),0 6px 18px -8px rgba(24,24,27,.18);
}
