
.vo2-ranking-page .ranking-intro{margin:12px 0 22px;color:#182338}
.vo2-ranking-page .ranking-intro h1{font-size:24px;font-weight:800;line-height:1.6;margin:0 0 8px}
.vo2-ranking-page .ranking-intro p{font-size:14px;line-height:1.9;color:#64718a;margin:0}
.vo2-ranking-page .vo2-ranking-panel{background:#fff;border:1px solid #e0e6ef;box-shadow:none;border-radius:18px;overflow:hidden}
.vo2-ranking-page .vo2-ranking-panel__header{padding:18px 20px;text-align:right;font-size:17px;font-weight:800;background:white;border-bottom:1px solid #e8ecf2}
.vo2-ranking-page .ranking-filters-shell{padding:20px;background:white}
.vo2-ranking-page .ranking-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.vo2-ranking-page .ranking-filters__item{width:auto;min-width:0;max-width:none;margin:0}
.vo2-ranking-page .ranking-filters__item label{font-size:14px;color:#34445e;display:block;margin-bottom:8px;line-height:1.7}
.vo2-ranking-page .ranking-filters .form-control{height:48px;min-height:48px;border:1px solid #d9e1ed;border-radius:10px;background:#fafbfd;color:#182338;box-shadow:none;font-size:14px;padding:8px 12px}
.vo2-ranking-page .ranking-filters .form-control:focus{border-color:#df1269;outline:2px solid #f7c3d9;outline-offset:1px;box-shadow:none}
.ranking-help{display:block;font-size:12px;color:#6a778d;line-height:1.8;margin-top:7px}
.ranking-required{font-size:11px;color:#a51653;font-weight:400;margin-right:4px}
.vo2-ranking-page .ranking-filters__age-panel{grid-column:1/-1;width:100%;min-width:0;max-width:none}
.vo2-ranking-page .ranking-age-panel{border:1px solid #e3e8f0;background:#f7f9fc;box-shadow:none;border-radius:12px}
.vo2-ranking-page .ranking-age-panel__header{min-height:48px;padding:12px}
.vo2-ranking-page .ranking-age-panel__title{font-size:13px}
.vo2-ranking-page .ranking-age-panel__hint{font-size:12px;line-height:1.9}
.vo2-ranking-page .ranking-filters__item--submit{grid-column:1/-1;max-width:none;width:100%}
.vo2-ranking-page .ranking-filters__item--submit label{display:none!important}
.vo2-ranking-page .ranking-filters__submit-btn{min-height:48px;background:#df1269;color:white;border:0;border-radius:12px;box-shadow:none;font-size:15px;font-weight:700}
.vo2-ranking-page .ranking-filters__submit-btn:hover{background:#be0f59;color:white}
.vo2-ranking-page .ranking-filters__submit-btn:focus-visible{outline:3px solid #496bac;outline-offset:3px}
.ranking-message{padding:18px 20px;margin:0;border-top:1px solid #e8ecf2;color:#526078;font-size:14px;line-height:1.9}
.ranking-message p{margin:5px 0 0}
@media(max-width:767px){.vo2-ranking-page .ranking-filters{grid-template-columns:1fr;gap:18px}.vo2-ranking-page .ranking-filters-shell{padding:16px}.vo2-ranking-page .ranking-intro h1{font-size:21px}.vo2-ranking-page .ranking-intro{margin:12px 4px 18px}}

.vo2-ranking-page .ranking-glossary{background:#fff;border:1px solid #dfe5ee;border-radius:16px;padding:16px;margin:20px 0;color:#34445e}
.ranking-glossary summary{cursor:pointer;min-height:44px;line-height:1.8;font-size:15px;font-weight:700}
.ranking-glossary summary:focus-visible{outline:3px solid #c51b66;outline-offset:4px}
.ranking-glossary p{font-size:13px;line-height:1.9;color:#66748a}
.ranking-glossary h3{font-size:14px;font-weight:700;margin:22px 0 10px}
.ranking-glossary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.ranking-glossary dl>div{display:flex;align-items:center;gap:12px;background:#f5f7fa;padding:12px;border-radius:9px}
.ranking-glossary dt{flex:0 0 55px;color:#ab1554;font-size:13px;text-align:center}
.ranking-glossary dd{margin:0;font-size:13px;line-height:1.8}
@media(max-width:575px){.ranking-glossary dl{grid-template-columns:1fr}}

.vo2-ranking-page #lastRanking{background:#fff;border:1px solid #e0e6ef;box-shadow:none;border-radius:18px;padding:20px 12px!important}
#lastRanking .container{padding:0;width:100%}
#lastRanking .section-header{text-align:right;margin-bottom:18px}
#lastRanking .section-header h3{font-size:18px;font-weight:800;color:#182338;line-height:1.7}
#lastRanking .section-header p{font-size:13px;line-height:1.9;color:#65748b;margin:8px 0}
#lastRanking .ranking-archive__label{font-size:13px;font-weight:700;color:#44536b;margin:18px 0 8px}
#lastRanking .ranking-archive__choices{display:flex;gap:7px;flex-wrap:wrap;border:0;margin:0 0 16px;padding:0}
#lastRanking .nav-link{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #dce3ed;border-radius:10px;padding:9px 12px;font-size:13px;color:#53627a;background:#f8f9fc}
#lastRanking .nav-link.active{background:#fce8f1;color:#b31357;border-color:#ea8fb7;font-weight:700}
#lastRanking .nav-link:focus-visible{outline:3px solid #496bac;outline-offset:2px}
#lastRanking .ranking-archive__admin{margin:12px 0;font-size:12px;color:#6c788c}
#lastRanking .ranking-archive__admin summary{cursor:pointer;padding:8px 0}
#lastRanking .vo2-ranking-mini-table{width:100%;max-width:100%;padding:0 8px}
#lastRanking .table{font-size:13px;margin:12px 0 0;table-layout:fixed;width:100%}
#lastRanking .table th,#lastRanking .table td{padding:12px 5px;vertical-align:middle;border-bottom:1px solid #e4e9f1;overflow-wrap:anywhere}
#lastRanking .table th:nth-child(1){width:40px}
#lastRanking .table th:nth-child(3){width:35px}
#lastRanking .table th:nth-child(4){width:50px}
#lastRanking .table th[colspan]{width:auto;color:#34445e!important;line-height:1.9}
#lastRanking .vo2-ranking-rider-cell{display:flex;gap:5px;font-size:13px}
#lastRanking .rider_profile_image{width:26px!important;height:26px!important}
