.landing .rank-main{max-width:1100px;margin:0 auto;padding:56px 20px 96px}.landing .rank-shell{background:var(--panel-hi);border:1px solid var(--border);padding:36px 32px 40px;position:relative}.landing .rank-shell:before{content:"";border:1px solid var(--border);pointer-events:none;opacity:.55;position:absolute;inset:6px}.landing .rank-head{text-align:center;margin-bottom:28px}.landing .rank-eyebrow{font-family:var(--pixel);letter-spacing:.28em;text-transform:uppercase;color:var(--accent);font-size:11px}.landing .rank-title{font-family:var(--display);letter-spacing:.04em;color:var(--ink);margin:6px 0 8px;font-size:clamp(28px,4vw,40px)}.landing .rank-lede{color:var(--ink-dim);max-width:540px;margin:0 auto;font-size:15px}.landing .rank-controls{border-bottom:1px dashed var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding-bottom:20px;display:flex}.landing .rank-tabs,.landing .rank-server{background:var(--bg-2);border:1px solid var(--border);align-items:center;gap:6px;padding:4px;display:inline-flex}.landing .rank-tabs button,.landing .rank-server button{font-family:var(--sans);letter-spacing:.04em;color:var(--ink-dim);cursor:pointer;background:0 0;border:0;padding:8px 14px;font-size:13px;font-weight:600;transition:color .12s,background .12s}.landing .rank-tabs button:hover,.landing .rank-server button:hover{color:var(--ink)}.landing .rank-tabs button.on,.landing .rank-server button.on{background:var(--ink);color:var(--bg)}.landing .rank-podium{grid-template-columns:1fr;gap:18px;margin-bottom:32px;display:grid}@media (min-width:720px){.landing .rank-podium{grid-template-columns:repeat(3,1fr);align-items:end}}.landing .rank-podium-card{background:var(--panel);border:1px solid var(--border);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:22px 18px 20px;display:flex;position:relative}.landing .rank-podium-card--1{background:linear-gradient(180deg, var(--panel-hi), var(--panel));border-color:var(--accent);box-shadow:0 8px 28px -16px #9a6f1e99}@media (min-width:720px){.landing .rank-podium-card--1{padding-top:32px;padding-bottom:28px;transform:translateY(-12px)}}.landing .rank-podium-medal{font-size:30px;line-height:1}.landing .rank-podium-card--1 .rank-podium-medal{font-size:38px}.landing .rank-podium-rank{font-family:var(--pixel);letter-spacing:.22em;color:var(--ink-faint);text-transform:uppercase;font-size:10px}.landing .rank-podium-name{font-family:var(--display);letter-spacing:.04em;color:var(--ink);word-break:break-word;max-width:100%;font-size:20px}.landing .rank-podium-card--1 .rank-podium-name{color:var(--accent);font-size:24px}.landing .rank-podium-meta{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.landing .rank-chip{font-family:var(--sans);letter-spacing:.06em;background:var(--bg-2);border:1px solid var(--border);color:var(--ink-dim);text-transform:uppercase;padding:3px 8px;font-size:11px;font-weight:600}.landing .rank-podium-metric{flex-direction:column;align-items:center;gap:2px;margin-top:6px;display:flex}.landing .rank-podium-metric-value{font-family:var(--display);color:var(--ink);letter-spacing:.02em;font-size:28px}.landing .rank-podium-card--1 .rank-podium-metric-value{color:var(--accent);font-size:34px}.landing .rank-podium-metric-label{font-family:var(--pixel);letter-spacing:.24em;color:var(--ink-faint);text-transform:uppercase;font-size:9px}.landing .rank-podium-equipped{color:var(--ink-dim);letter-spacing:.04em;margin-top:4px;font-size:11px}.landing .rank-rest{border:1px solid var(--border);background:var(--panel)}.landing .rank-rest-head,.landing .rank-rest-row{grid-template-columns:64px 1fr 110px 130px;align-items:center;gap:12px;padding:10px 16px;display:grid}.landing .rank-rest-head{background:var(--bg-2);border-bottom:1px solid var(--border);font-family:var(--pixel);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);font-size:10px}.landing .rank-rest-list{margin:0;padding:0;list-style:none}.landing .rank-rest-row{font-family:var(--sans);color:var(--ink);border-bottom:1px solid var(--border);font-size:14px}.landing .rank-rest-row:last-child{border-bottom:0}.landing .rank-rest-row:nth-child(2n){background:#2a201606}.landing .rank-rest-row .col-rank{font-family:var(--pixel);letter-spacing:.12em;color:var(--accent);font-size:11px}.landing .rank-rest-row .col-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.landing .rank-rest-row .col-class{color:var(--ink-dim);font-size:13px}.landing .rank-rest-row .col-metric{font-family:var(--display);text-align:right;letter-spacing:.02em;font-size:16px}.landing .col-metric-unit{font-family:var(--pixel);letter-spacing:.18em;color:var(--ink-faint);text-transform:uppercase;margin-left:4px;font-size:9px;font-style:normal}@media (max-width:640px){.landing .rank-rest-head{display:none}.landing .rank-rest-row{grid-template-columns:48px 1fr auto;grid-template-areas:"rank name metric"".class class";row-gap:4px}.landing .rank-rest-row .col-rank{grid-area:rank}.landing .rank-rest-row .col-name{grid-area:name}.landing .rank-rest-row .col-class{grid-area:class;font-size:12px}.landing .rank-rest-row .col-metric{grid-area:metric}}.landing .rank-rest-empty{text-align:center;color:var(--ink-faint);border:1px dashed var(--border);background:var(--panel);padding:24px;font-size:13px}.landing .rank-state{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:56px 24px;display:flex}.landing .rank-state-mark{margin-bottom:6px;font-size:42px;line-height:1}.landing .rank-state h2{font-family:var(--display);letter-spacing:.04em;color:var(--ink);margin:0;font-size:22px}.landing .rank-state p{color:var(--ink-dim);max-width:420px;margin:0 0 8px}.landing .rank-state-detail{font-family:var(--font-mono);color:var(--ink-faint);word-break:break-word;font-size:12px}.landing .rank-state--error h2{color:var(--danger)}.landing .rank-state--locked .btn{margin-top:8px}.landing .rank-skeleton .skeleton{background:var(--bg-2);border:1px solid var(--border);color:#0000;min-height:56px;position:relative;overflow:hidden}.landing .rank-skeleton .rank-podium-card.skeleton{min-height:180px}.landing .rank-skeleton .skeleton-tall{min-height:220px}.landing .rank-skeleton .skeleton:after{content:"";background:linear-gradient(90deg,#0000 0%,#9a6f1e1f 50%,#0000 100%);animation:1.4s linear infinite rank-shimmer;position:absolute;inset:0}@keyframes rank-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.landing .rank-skeleton .skeleton:after{animation:none}}
