.ranking-scene{z-index:-1;pointer-events:none;background:linear-gradient(#080e202b,#080e2045),url(/backgrounds/voting-council.webp) 50%/cover no-repeat;position:fixed;inset:0}.ranking-page{gap:38px;padding-block:36px 64px}.ranking-page>header{padding:8px 0 6px}.ranking-page>header h1{margin-top:12px}.ranking-page>header>p:last-child{max-width:640px;line-height:1.75}.ranking-page .hub-panel{background:linear-gradient(125deg,#151d36e6,#0b1728e3);border:1px solid #899de447;border-radius:18px;padding:28px;box-shadow:0 16px 48px #00000024,inset 0 1px #b6c8ff0d}.ranking-page .hub-panel>p{line-height:1.8}.ranking-page>section>h2{margin-bottom:24px}.ranking-page article+article{margin-top:24px}.ranking-page article>div:first-child{gap:12px 24px;margin-bottom:24px}.ranking-page article li{gap:16px;padding:18px}.ranking-page .voting-content{margin-top:24px}.ranking-page .voting-content>div:first-child{padding:20px}.ranking-page .voting-content>div:first-child p{line-height:1.75}.ranking-page .voting-content>p{margin-block:22px}.ranking-page .voting-candidate{background:#101c32b3;border-color:#8ba4e333;padding:20px}.ranking-page .voting-candidate+li{margin-top:14px}.ranking-page .voting-candidate>div{gap:18px}.ranking-page .voting-candidate h3+p{margin-top:7px}.ranking-page .voting-controls{gap:10px}.ranking-page .vote-distribution-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-block:22px;padding:12px 2px;display:flex}.ranking-page .vote-total{align-items:baseline;gap:10px;display:flex}.ranking-page .vote-total strong{font-variant-numeric:tabular-nums;color:#eee8ff;font-size:34px;line-height:1.3}.ranking-page .vote-total span{color:var(--muted);font-size:14px}.ranking-page .vote-distribution-summary>p{line-height:1.8}.ranking-page .voting-candidate>.vote-share{margin-top:20px}.ranking-page .vote-share-label{color:#aeb8d5;font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;margin-bottom:8px;font-size:12px;display:flex}.ranking-page .vote-share-label strong{color:#d1c6fa;font-weight:500}.ranking-page .vote-share-track{background:#080f228c;border-radius:8px;height:8px;overflow:hidden;box-shadow:inset 0 0 0 1px #899de418}.ranking-page .vote-share-track>span{border-radius:inherit;background:linear-gradient(90deg,#6d62c2,#548cce 60%,#56b8ae);height:100%;transition:width .35s;display:block;box-shadow:0 0 12px #618be63d}@media (prefers-reduced-motion:reduce){.ranking-page .vote-share-track>span{transition:none}}.ranking-page button{transition:background .2s,border-color .2s}.ranking-page button:enabled:hover{background-color:#6352bb55;border-color:#b2a2f4}.ranking-page button:focus-visible{outline-offset:4px;outline:2px solid #b4beff}@media (max-width:600px){.ranking-page{gap:28px;padding-block:24px 40px}.ranking-page .hub-panel{padding:20px 16px}.ranking-page .voting-candidate{padding:16px}.ranking-page .voting-controls{justify-content:flex-end;width:100%;padding-top:4px}.ranking-page article li{gap:12px;padding:14px}}.ranking-page .voting-candidate figure img{width:96px;height:96px}@media (max-width:600px){.ranking-page .voting-candidate figure img{width:80px;height:80px}}.ranking-summon-invite{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:24px;display:flex}.ranking-summon-button{color:#191c2b;background:linear-gradient(120deg,#e2c895,#b59660);border:1px solid #ead19f;border-radius:10px;justify-content:center;align-items:center;gap:14px;padding:12px 18px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 4px 18px #d8bd871a}.ranking-summon-button:hover{background:#ecd5aa}.ranking-summon-button:focus-visible{outline-offset:4px;outline:2px solid #f5e2b8}.ranking-summon-invite p{color:var(--muted);flex:240px;margin:0;font-size:14px;line-height:1.6}@media (max-width:500px){.ranking-summon-button{width:100%}}.ranking-page .voting-candidate .summon-reference-strip{flex-wrap:nowrap;flex:0 0 210px;justify-content:center;align-items:center;gap:18px;width:210px;min-height:96px}@media (max-width:600px){.ranking-page .voting-candidate .summon-reference-strip{flex-basis:170px;gap:10px;width:170px;min-height:80px}}
