@font-face{font-family:Golos;src:url('/static/fonts/golos-text-cyrillic.woff2') format('woff2');unicode-range:U+0400-04FF;font-display:swap}
/* All section links remain reachable without a sideways swipe. */
@media(max-width:900px){.team-sidebar .team-nav-links{flex-wrap:wrap}}
@font-face{font-family:Golos;src:url('/static/fonts/golos-text-latin.woff2') format('woff2');unicode-range:U+0000-024F;font-display:swap}
:root{color-scheme:dark;--bg:#100329;--ink:#fbf8ff;--muted:#bfa4d2;--line:#3b2351;--pink:#ed008c;--active:#360956}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 Golos,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid #f06bbe;outline-offset:5px;border-radius:6px}img{max-width:100%;object-fit:contain}h1,h2,h3,p{margin:0}h2{font-size:22px;font-weight:600;line-height:1.3}h3{font-weight:500}b,strong{font-weight:500}[hidden]{display:none!important}
.skip-link{position:absolute;top:-100px;padding:14px;background:var(--active);z-index:20}.skip-link:focus{top:8px;left:8px}
.team-site-header{height:70px;display:flex;align-items:center;gap:62px;padding:0 44px;border-bottom:1px solid var(--line)}.team-site-header>a{display:flex;align-items:center;min-height:44px}.team-site-header>a img{width:72px;height:54px}.team-city{display:flex;align-items:center;gap:12px}.demo-notice{margin-left:auto;color:var(--muted);font-size:14px}
.profile-layout{display:grid;grid-template-columns:278px minmax(0,1fr);min-height:calc(100vh - 70px)}.team-sidebar{padding:22px 14px 32px 24px;border-right:1px solid var(--line)}.back-to-rating{display:block;padding:0 20px 18px;color:var(--muted);min-height:54px}.team-nav-links{display:grid;gap:12px;position:sticky;top:20px}.section-link{display:flex;align-items:center;gap:17px;min-height:54px;padding:12px 21px;color:var(--muted);border-radius:16px}.section-link img{opacity:.7;flex-shrink:0}.section-link[aria-current]{color:white;background:var(--active)}.section-link[aria-current] img{opacity:1}.section-link:hover{background:#270840;color:white}
.team-main{min-width:0;max-width:1550px;padding:18px 52px 44px 66px}.team-formats{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:42px;margin-bottom:9px}.team-formats a,.team-formats>span{padding:6px 23px;border:1px solid transparent;color:var(--muted);min-height:38px;border-radius:24px}.team-formats [aria-current]{background:#420d64;color:white;border-color:#73318c}.team-formats [aria-disabled]{color:#ac99ba}
.team-identity{padding:0 0 19px;border-bottom:1px solid var(--line);margin-bottom:20px}.team-heading{display:flex;align-items:center;min-height:122px;gap:28px}.league-floppy{width:104px;height:112px;flex-shrink:0;image-rendering:pixelated}.team-title{min-width:0;flex:1}.team-title h1{font-size:40px;line-height:1.2;font-weight:600;letter-spacing:-.8px;overflow-wrap:anywhere}.team-title p{margin-top:8px;color:var(--muted);font-size:18px}.team-rank{display:flex;align-items:center;justify-content:flex-end;gap:24px;padding-left:30px;border-left:1px solid var(--line);min-height:110px;max-width:34%;flex-shrink:0}.team-rank span{white-space:normal;max-width:155px;font-size:18px;min-width:0}/* Высота не задаётся: размер приходит атрибутами из реестра, где значки
   выровнены по видимой площади при своих пропорциях. */
/* max-width:none — иначе узкий контейнер ранга ужимает значок, и
   выравнивание из реестра до карточки не доходит. Ширина значка
   ограничена самим реестром (не более 168 px). */
/* Ранг и Оскар живут в одной полосе высоты и на одной оси: разная высота
   читалась как «разные по важности знаки», хотя это соседи одного ряда. */
.team-rank{align-items:center}.rank-art{max-width:none;max-height:64px;height:auto;flex:none;image-rendering:pixelated}.oscar-art{max-height:64px;height:auto;width:auto;max-width:72px;image-rendering:pixelated}.team-stats{display:flex;align-items:center;flex-wrap:wrap;gap:12px 26px;list-style:none;padding:0;margin:12px 0 0;font-size:16px}.team-stats li+li{border-left:2px solid var(--muted);padding-left:26px}.calibration-note{margin-top:12px;color:var(--muted)}
.profile-section{scroll-margin-top:24px}.profile-section:not(.achievements-layout){padding-top:24px}.profile-section:not(.achievements-layout)>h2{margin-bottom:24px}.achievements-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(275px,1fr);gap:68px;align-items:start}.collection-main{min-width:0}.collection-main>h2{margin:4px 0 8px}.achievement-chain{display:grid;grid-template-columns:111px minmax(0,1fr);border-bottom:1px solid var(--line);padding:0 0 14px;margin-bottom:8px;min-height:155px;align-items:start}.achievement-chain h3{font-size:16px;line-height:1.35;padding-top:25px;padding-right:8px}.chain-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.achievement-tile{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;min-height:44px;border-radius:8px;padding:4px 3px 8px}.achievement-tile:hover{background:#251039}.achievement-art{width:128px;height:116px;image-rendering:pixelated}.tile-title{font-size:14px;line-height:1.3;overflow-wrap:anywhere}.tile-progress,.tile-state{font-size:13px;line-height:1.35;color:var(--muted);margin-top:4px}.earned-label{font-size:11px;color:#c7b6d2}.nomination-label{color:#fb55b6}.achievement-tile[aria-current] .achievement-art{outline:1px solid var(--pink);outline-offset:-1px;border-radius:4px}.other-achievements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.collection-footer{display:grid;grid-template-columns:1fr 1.35fr;margin-top:16px;gap:20px}.collection-footer>section+section{border-left:1px solid var(--line);padding-left:20px}.collection-footer h2{font-size:16px;margin-bottom:8px}.small-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.small-tiles:has(>.achievement-tile:only-child){grid-template-columns:1fr}.compact .achievement-art{width:110px;height:108px}.muted{color:var(--muted);font-size:14px}.season-nominations>.muted{margin-top:12px;text-align:center}
.goal-panel{border-left:1px solid var(--line);padding-left:38px;min-width:0;min-height:660px;text-align:center;position:sticky;top:24px;display:flex;flex-direction:column}.goal-panel>h2{margin:4px 0 20px}.achievement-detail{scroll-margin-top:28px}.detail-art{width:250px;height:250px;image-rendering:pixelated;margin:20px auto 18px}.achievement-detail h3{font-size:30px;font-weight:600;line-height:1.2;overflow-wrap:anywhere}.detail-state{color:var(--muted);font-size:18px;margin-top:14px}.detail-condition{color:var(--muted);font-size:15px;line-height:1.6;margin-top:12px}.detail-progress{font-size:32px;font-weight:500;line-height:1.3;margin-top:38px}.detail-remaining{color:var(--muted);margin-top:10px}.panel-hint{font-size:13px;color:var(--muted);margin-top:auto;padding-top:40px}.back-to-goal{border:1px solid var(--line);background:transparent;border-radius:12px;min-height:44px;padding:10px;margin-top:24px}.detail-library{margin-top:40px}.detail-library .achievement-detail{max-width:650px;padding:24px 0;border-bottom:1px solid var(--line)}.team-enhanced .detail-library{display:none}.team-enhanced .profile-section[hidden]{display:none}
.game-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.game-row h3{font-size:17px}.game-row p,.game-row span{font-size:14px;color:var(--muted)}.game-row>div:last-child{text-align:right}.game-row strong{display:block;font-size:24px}.game-row span{display:block}.empty-state{padding:24px 0;color:var(--muted);max-width:620px}.history-awards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}.history-awards article{display:flex;align-items:center;gap:12px}.history-awards small{display:block;color:var(--muted)}.how-section{max-width:750px}.how-section p{color:var(--muted);margin:20px 0;font-size:18px;line-height:1.8}
.achievement-sheet{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:24px 24px 0 0;padding:20px 24px 32px;text-align:center;max-height:88dvh;overflow:auto;width:100%;max-width:600px;margin:auto auto 0;position:fixed}.achievement-sheet::backdrop{background:rgba(0,0,0,.7)}.sheet-close{display:block;margin-left:auto;padding:8px 16px;min-height:44px;border:1px solid var(--line);border-radius:12px;background:#260c3a}.achievement-sheet .detail-art{width:170px;height:170px;margin:4px auto 12px}.achievement-sheet .detail-progress{margin-top:20px;font-size:26px}
@media(min-width:1600px){.team-main{margin:0 auto;width:100%}.achievement-art{height:128px}.achievement-chain{min-height:175px}}
@media(max-width:1240px){.profile-layout{grid-template-columns:220px minmax(0,1fr)}.team-main{padding-left:30px;padding-right:30px}.team-sidebar{padding-left:12px}.section-link{gap:12px;padding-left:14px;font-size:15px}.team-title h1{font-size:31px}.team-heading{gap:18px}.team-rank{gap:14px;padding-left:18px}.team-rank span{font-size:16px}.rank-art{max-height:56px}.achievements-layout{gap:24px;grid-template-columns:minmax(0,1.65fr) minmax(230px,1fr)}.goal-panel{padding-left:24px}.achievement-chain{grid-template-columns:1fr}.achievement-chain h3{padding:8px 0}.achievement-art{height:105px}.detail-art{width:210px;height:210px}.achievement-detail h3{font-size:25px}.team-stats{font-size:14px;gap:10px 15px}.team-stats li+li{padding-left:15px}}
@media(max-width:900px){.profile-layout{display:block}.team-site-header{padding:0 24px;height:66px;gap:32px}.team-sidebar{border:0;padding:16px 24px 0}.back-to-rating{padding:0 0 12px;min-height:40px}.team-nav-links{display:flex;gap:8px;overflow-x:auto;position:static;padding-bottom:6px}.section-link{white-space:nowrap;min-height:44px;border-radius:12px;padding:9px 14px}.section-link img{width:18px;height:18px}.team-main{padding:10px 24px 36px}.team-rank{max-width:38%}.achievements-layout{grid-template-columns:minmax(0,1fr) 250px;gap:24px}.team-title h1{font-size:30px}.team-stats{font-size:14px}}
@media(max-width:650px){body{font-size:16px}.team-site-header{padding:0 20px;gap:26px}.team-site-header>a img{width:63px;height:46px}.team-city{font-size:15px;gap:7px}.demo-notice{font-size:11px;max-width:80px;text-align:right}.team-sidebar{padding:13px 18px 0}.team-nav-links{gap:5px}.section-link{font-size:13px;padding:8px 10px;gap:7px}.team-main{padding:8px 18px 32px}.team-formats{gap:0;margin:0 0 14px;flex-wrap:nowrap}.team-formats a,.team-formats>span{font-size:14px;padding:9px 14px}.team-heading{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px 16px;min-height:0}.league-floppy{width:70px;height:82px}.team-title h1{font-size:26px;letter-spacing:-.5px}.team-title p{font-size:14px;margin-top:5px}.team-rank{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:8px 0 0;margin-top:4px;max-width:none;justify-content:flex-start;min-height:66px;gap:20px}.team-rank span{font-size:15px;max-width:none}.rank-art{max-height:44px}.oscar-art{max-height:44px;max-width:66px}.team-stats{display:grid;gap:5px;font-size:13px;margin-top:12px}.team-stats li+li{padding:0;border:0}.team-identity{padding-bottom:18px;margin-bottom:18px}.calibration-note{font-size:14px}.achievements-layout{display:flex;flex-direction:column;gap:22px}.collection-main{width:100%;order:2}.collection-main>h2{font-size:21px;margin-bottom:14px}.goal-panel{order:1;width:100%;min-height:0;border:1px solid var(--line);border-radius:16px;padding:16px;position:static;text-align:left}.goal-panel>h2{font-size:16px;margin:0 0 12px}.goal-panel .achievement-detail{display:flow-root;min-height:108px}.goal-panel .detail-art{width:98px;height:108px;float:right;margin:0 0 6px 12px}.goal-panel .achievement-detail h3{font-size:21px;margin-top:3px}.goal-panel .detail-state{font-size:13px;margin-top:6px}.goal-panel .detail-condition{display:none}.goal-panel .detail-progress{font-size:19px;margin-top:10px}.goal-panel .detail-remaining{font-size:13px;clear:both;margin-top:10px}.panel-hint{font-size:11px;margin-top:12px;padding-top:0}.back-to-goal{margin-top:14px}.achievement-chain{min-height:0;padding-bottom:12px;margin-bottom:12px}.achievement-chain h3{font-size:15px;padding:0 0 10px}.chain-tiles{gap:7px}.achievement-art{height:100px;width:104px}.tile-title{font-size:12px;line-height:1.35}.tile-progress,.tile-state{font-size:11px;line-height:1.4}.earned-label{font-size:10px}.achievement-tile{padding:3px 1px 6px}.collection-footer{grid-template-columns:1fr;gap:24px}.collection-footer>section+section{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:18px}.collection-footer h2{font-size:17px}.small-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.small-tiles:has(>.achievement-tile:only-child){grid-template-columns:repeat(3,minmax(0,1fr))}.history-awards{grid-template-columns:1fr}.other-achievements{gap:8px}.game-row{gap:12px}.game-row h3{font-size:15px}.game-row span{font-size:12px}.game-row strong{font-size:22px}.how-section p{font-size:16px}.profile-section>h2{font-size:22px}}
@media(max-width:350px){.team-main{padding-left:14px;padding-right:14px}.team-site-header{padding:0 14px;gap:16px}.team-city{font-size:14px}.team-formats a,.team-formats>span{padding:9px 10px;font-size:13px}.team-title h1{font-size:23px}.achievement-art{height:88px}.tile-title{font-size:11px}.detail-progress{font-size:24px}}
.team-level{margin:28px 0 20px;min-width:0}
.level-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.level-heading h2{font-size:22px;margin:0}.level-value{font-size:22px;font-weight:700;color:var(--pink);font-variant-numeric:tabular-nums}.level-value span{color:var(--muted);font-size:16px}
.level-note{color:var(--muted);font-size:13px;margin:6px 0 22px}
.level-track{height:22px;position:relative;margin:0 5px;isolation:isolate}
.level-colors,.level-unfilled,.level-cells{position:absolute;inset:0}
.level-colors{background:linear-gradient(to right,#c98045 0 var(--pro),#c4c6d3 var(--pro) var(--top),#f2cd35 var(--top) 100%)}
.level-unfilled{left:var(--fill);background:rgba(16,3,41,.86)}
.level-cells{background:repeating-linear-gradient(to right,transparent 0 calc(1% - 2px),var(--bg) calc(1% - 2px) 1%)}
.level-pointer{position:absolute;left:var(--fill);top:-12px;transform:translateX(-50%);width:10px;height:8px;background:var(--pink);clip-path:polygon(0 0,100% 0,50% 100%)}
.level-ticks{height:29px;position:relative;margin:5px 5px 0;font-size:12px;color:var(--muted)}
.level-ticks span{position:absolute;transform:translateX(-50%)}
.level-leagues{display:grid;gap:4px}.level-league{display:flex;flex-direction:column;align-items:center;gap:4px;border-top:2px solid #c98045;padding-top:12px;min-width:0;font-size:14px}
.level-league[data-league="Про"]{border-color:#c4c6d3}.level-league[data-league="Топ"]{border-color:#f2cd35}.level-league img{object-fit:contain;image-rendering:pixelated}
@media(max-width:650px){.team-level{margin-top:20px}.level-heading h2,.level-value{font-size:18px}.level-track{height:16px}.level-cells{background:repeating-linear-gradient(to right,transparent 0 calc(2% - 2px),var(--bg) calc(2% - 2px) 2%)}.level-league img{width:40px;height:40px}.level-league{font-size:12px}}
.section-link img{filter:invert(1)}
.demo-notice{overflow-wrap:anywhere;min-width:0}
.team-rank.with-oscar{display:grid;grid-template-columns:1fr auto;gap:8px 20px;min-width:250px}
.team-rank.with-oscar>span{grid-column:1/-1;max-width:none;font-size:16px}
.team-rank.with-oscar .rank-art{max-height:52px;justify-self:start}.team-rank.with-oscar .oscar-art{max-height:52px}
@media(min-width:1241px){.achievement-chain{padding-bottom:0!important;margin-bottom:6px;min-height:145px!important}}
@media(max-width:650px){.team-rank.with-oscar{display:flex;flex-wrap:wrap;min-width:0;gap:8px 18px}.team-rank.with-oscar>span{width:100%;font-size:14px}.team-rank.with-oscar .rank-art{max-height:40px}.team-rank.with-oscar .oscar-art{max-height:40px}}
.team-nav-links{scrollbar-width:none}.team-nav-links::-webkit-scrollbar{display:none}
.movement-history{margin-top:24px;color:var(--muted)}.movement-history summary{cursor:pointer;min-height:44px;padding:10px 0}.movement-history p{margin:12px 0}
@media(min-width:1241px) and (max-width:1599px){.achievement-art{height:105px}.achievement-chain{padding-bottom:10px;min-height:153px}.team-identity{margin-bottom:16px;padding-bottom:15px}.team-stats{margin-top:8px}.goal-panel{min-height:650px}.detail-art{margin-top:14px;margin-bottom:12px}.detail-progress{margin-top:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Ранее полученные достижения — прежний набор, у которого своих рисунков нет.
   Свёрнутый блок: награды никуда не делись, но не спорят с новой коллекцией. */
.previous-awards { margin: 24px 0 0; border-top: 1px solid rgba(255,255,255,.12); padding-top: 16px; }
.previous-awards > summary { cursor: pointer; font-size: 15px; opacity: .82; list-style: none; }
.previous-awards > summary::-webkit-details-marker { display: none; }
.previous-awards > summary::before { content: "▸ "; }
.previous-awards[open] > summary::before { content: "▾ "; }
.previous-awards .detail-count { margin-left: 8px; opacity: .6; }
.previous-list { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 8px; }
.previous-list li { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; }
.previous-title { font-weight: 600; }
.previous-note { font-size: 13px; opacity: .7; }

/* Общий рейтинг по баллам: кнопка направления и колонка баллов. */
.sort-switch { margin: 12px 0 0; }
.sort-button { display: inline-block; padding: 8px 16px; min-height: 40px;
  border: 1px solid rgba(255,255,255,.22); border-radius: 999px;
  text-decoration: none; font-weight: 600; }
.sort-button:hover { border-color: rgba(255,255,255,.45); }
.team-points { font-variant-numeric: tabular-nums; }
.points-blocks { display: flex; flex-wrap: wrap; gap: 12px; margin: 16px 0 0; }
.points-block { flex: 1 1 180px; min-width: 0; padding: 12px 16px;
  border: 1px solid rgba(255,255,255,.14); border-radius: 16px;
  display: flex; flex-direction: column; gap: 2px; }
.points-title { font-size: 13px; opacity: .7; }
.points-value { font-size: 26px; font-weight: 700; font-variant-numeric: tabular-nums; }
.points-note { font-size: 13px; opacity: .7; }
.team-heading{display:grid;grid-template-columns:104px minmax(0,1fr);gap:16px 24px;padding:16px 0}
.team-heading.has-points{grid-template-columns:104px minmax(0,1fr) minmax(280px,360px)}
.team-heading>.points-blocks{grid-column:3;grid-row:1;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.team-heading>.team-rank{grid-column:1/-1;max-width:100%;min-height:0;border:0;padding:0;justify-content:flex-start;flex-wrap:wrap}
.team-heading>.team-rank.with-oscar{display:flex;min-width:0}
.team-heading>.team-rank.with-oscar>span{width:auto}
#games .game-row>div{text-align:left;min-width:0;overflow-wrap:anywhere}
@media(max-width:1240px){.team-heading,.team-heading.has-points{grid-template-columns:104px minmax(0,1fr)}.team-heading>.points-blocks{grid-column:1/-1;grid-row:2}}
@media(max-width:650px){.team-heading,.team-heading.has-points{grid-template-columns:70px minmax(0,1fr);gap:12px 16px}.team-heading .points-block{padding:10px}.team-heading .points-value{font-size:23px}.team-heading .points-note{font-size:12px}.team-heading>.team-rank{border-top:1px solid var(--line);padding-top:8px}}
@media(max-width:360px){.team-heading>.points-blocks{grid-template-columns:minmax(0,1fr)}}
