/* Community pages: profiles, match pages and tournament statistics. Uses the tokens of style.css. */
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0 18px}
.table-wrap table{margin:0}
.rank-table td.num,.rank-table th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.rank-table td{vertical-align:middle}





.dc-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 26px}
.dc-tile{display:flex;flex-direction:column;gap:3px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:rgba(18,25,34,.92)}
.dc-tile strong{font-size:1.7rem;line-height:1.1;font-variant-numeric:tabular-nums;font-family:'Russo One','Arial Narrow','Segoe UI',Arial,sans-serif}
.dc-tile span{color:var(--muted);font-size:.78rem}
.dc-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:860px){.dc-grid-2{grid-template-columns:1fr}}
.dc-note{color:var(--muted);font-size:.85rem;margin:6px 0 0}

/* People */
.person{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-weight:700;min-width:0}
.person img{width:28px;height:28px;border-radius:6px;object-fit:cover;flex:none;border:1px solid var(--line)}
.person span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
a.person:hover span{color:var(--coral)}
.person-hidden{color:var(--muted);font-weight:400;font-style:italic}
.place-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;border:1px solid var(--line);font-weight:800;font-size:.8rem;white-space:nowrap}
.place-badge.gold{border-color:#e7bd6c;color:#f6d38f;background:rgba(217,173,110,.14)}
.place-badge.silver{border-color:#b9c4cc;color:#dfe7ec;background:rgba(185,196,204,.1)}
.place-badge.bronze{border-color:#c98b5a;color:#e6ac7c;background:rgba(201,139,90,.12)}

/* Profile header */
.profile-head{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.profile-avatar{width:112px;height:112px;border-radius:18px;object-fit:cover;border:2px solid rgba(233,177,110,.55);box-shadow:0 10px 30px rgba(0,0,0,.35);flex:none}
.profile-head h1{margin:6px 0 10px;font-size:clamp(2rem,4.5vw,3.4rem);word-break:break-word}
.profile-meta{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.profile-own{margin-top:18px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:700}
.switch input{width:44px;height:24px;appearance:none;-webkit-appearance:none;border-radius:999px;background:#2b3a44;border:1px solid var(--line);position:relative;cursor:pointer;transition:background .2s;margin:0}
.switch input::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#cabca7;transition:transform .2s}
.switch input:checked{background:#3d8f78}
.switch input:checked::after{transform:translateX(20px);background:#fff}
.hero-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.hero-img{width:64px;height:36px;border-radius:5px;object-fit:cover;border:1px solid rgba(255,255,255,.12);background:#1b2730;display:inline-block;flex:none}
.hero-img.small{width:44px;height:25px}
.hero-stat{display:flex;align-items:center;gap:10px}
.hero-stat .meta{font-size:.8rem}

/* Match page */
.match-hero{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;text-align:center}
.match-hero .team{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}
.match-hero .team h2{margin:0;font-size:clamp(1.3rem,3vw,2.2rem);word-break:break-word}
.match-hero .team.winner h2{color:var(--gold)}
.match-hero .team h2 a{color:inherit;text-decoration:none}
.match-hero .team h2 a:hover{color:var(--coral)}
.match-score{font:900 clamp(2.4rem,6vw,4.4rem)/1 'Russo One','Arial Narrow','Segoe UI',Arial,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}
.match-score span{color:var(--muted);padding:0 10px}
.lineup{display:flex;flex-direction:column;gap:6px;align-items:center;font-size:.85rem}
@media (max-width:640px){.match-hero{grid-template-columns:1fr}}
.game-card{margin-top:22px}
.game-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.game-head h3{margin:0}
.draft{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:10px 0 16px}
.draft-side h4{margin:0 0 8px;font-size:.85rem;color:var(--muted);font-weight:700}
.draft-side .hero-row+.hero-row{margin-top:6px}
.draft-ban{filter:grayscale(1) brightness(.6)}
@media (max-width:640px){.draft{grid-template-columns:1fr}}
.score-table td,.score-table th{padding:9px 10px;font-size:.85rem;white-space:nowrap}
.score-table tr.radiant td:first-child{border-left:3px solid #69d8ba}
.score-table tr.dire td:first-child{border-left:3px solid #ff7d6b}
.score-table .items{display:flex;gap:2px}
.score-table .items img{width:30px;height:22px;border-radius:3px;object-fit:cover}
.mvp-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 14px;border-radius:10px;background:rgba(217,173,110,.1);border:1px solid rgba(217,173,110,.35);margin-bottom:12px}

/* Tournament statistics */
.records{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.record{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:rgba(17,26,33,.92);display:flex;flex-direction:column;gap:8px}
.record .label{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);font-weight:800}
.record .value{font:900 1.8rem/1 'Russo One','Arial Narrow','Segoe UI',Arial,sans-serif}
.record .who{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.85rem}
.bar-cell{position:relative;min-width:120px}
.bar-cell i{display:block;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--coral),var(--gold))}

.dc-status{min-height:1.4em;margin-top:10px;font-size:.85rem}
.dc-status.error{color:#ffb39f}.dc-status.ok{color:var(--teal)}




.bracket-match a.match-open{position:absolute;inset:0;z-index:2;border-radius:inherit}
.bracket-match a.match-open:focus-visible{outline:3px solid var(--teal)}
/* Badge of the project team (admins, organizers, moderators) on a public profile. */
.staff-badge{display:inline-flex;align-items:center;gap:7px;padding:5px 12px 5px 9px;border-radius:999px;border:1px solid rgba(243,144,96,.4);background:linear-gradient(135deg,rgba(243,144,96,.18),rgba(123,48,45,.25));color:#ffd2b5;font:700 .76rem/1.2 var(--font-body,'Segoe UI',Arial,sans-serif);letter-spacing:.03em;white-space:nowrap}
.staff-badge .icon{width:14px;height:14px;stroke:currentColor;vertical-align:0}
.staff-badge.staff-organizer{border-color:rgba(217,173,110,.45);background:rgba(217,173,110,.14);color:#f0d39c}
.staff-badge.staff-moderator{border-color:rgba(105,216,186,.4);background:rgba(105,216,186,.12);color:#a6ecd8}
.staff-badge.staff-streamer{border-color:rgba(160,130,255,.4);background:rgba(160,130,255,.14);color:#d2c4ff}
