@scope(.group-standings){:scope{background:var(--card);border:1px solid var(--border);border-radius:var(--medium-radius);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.title{color:var(--foreground);font-size:1rem;font-weight:600}.link{color:var(--muted-foreground);font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s}.link:hover{color:var(--foreground)}.grid{grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1rem;display:grid}.group{background:var(--muted);border-radius:var(--medium-radius);flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.group-name{color:var(--foreground);text-transform:uppercase;font-size:.75rem;font-weight:600}.table{border-collapse:collapse;width:100%;font-size:.6875rem}.table th{color:var(--muted-foreground);text-align:center;padding:.25rem;font-weight:500}.table td{color:var(--foreground);text-align:center;padding:.25rem}.table .col-rank{width:1rem;font-weight:600}.table .col-team{text-align:left}.table .col-stat{width:1.75rem}.table .col-points{font-weight:600}.table tbody tr.qualifies td:first-child{box-shadow:inset 3px 0 #22c55e}.table tbody tr{transition:background .15s}.table tbody tr:hover{background:color-mix(in srgb, var(--card) 60%, transparent)}.table .team-link{color:inherit;align-items:center;gap:.375rem;text-decoration:none;display:flex}.table .team-link:hover .team-name{text-decoration:underline}.table .team-logo{object-fit:contain;width:1rem;height:1rem}.table .team-name{text-overflow:ellipsis;white-space:nowrap;max-width:6rem;line-height:1.25;overflow:hidden}}
@scope(.knockout-bracket){:scope{scrollbar-width:none;background:var(--card);border:1px solid var(--border);border-radius:var(--medium-radius);flex-direction:column;gap:.75rem;padding:1rem;display:flex;overflow-x:auto}:scope::-webkit-scrollbar{display:none}.header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.title{color:var(--foreground);font-size:1rem;font-weight:600}.link{color:var(--muted-foreground);font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s}.link:hover{color:var(--foreground)}.rounds{align-items:flex-start;gap:2rem;min-width:max-content;display:flex}.round{flex-direction:column;gap:.5rem;min-width:11rem;display:flex}.round-name{color:var(--muted-foreground);text-align:center;text-transform:uppercase;border-bottom:1px solid var(--border);padding-bottom:.375rem;font-size:.6875rem;font-weight:600}.matches{flex-direction:column;justify-content:space-around;gap:.5rem;min-height:100%;display:flex}.match-pair{flex-direction:column;gap:.5rem;display:flex;position:relative}.match-pair.has-connector:after{border-top:1px solid var(--border);border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0 var(--small-radius) var(--small-radius) 0;content:"";width:1rem;height:calc(50% + .25rem);position:absolute;top:50%;right:-1rem;transform:translateY(-50%)}.match{background:var(--muted);border-radius:var(--medium-radius);flex-direction:column;gap:.25rem;padding:.5rem;text-decoration:none;transition:all .2s;display:flex}.match:hover{background:var(--accent)}.team{align-items:center;gap:.375rem;display:flex}.team.winner .team-name{font-weight:600}.team .logo{object-fit:contain;width:1rem;height:1rem}.team .team-name{text-overflow:ellipsis;color:var(--foreground);white-space:nowrap;flex:1;font-size:.6875rem;line-height:1.25;overflow:hidden}.team .team-score{min-width:1rem;color:var(--foreground);text-align:right;font-size:.75rem;font-weight:600}.penalty{color:var(--muted-foreground);text-align:center;font-size:.5rem}}
@scope(.standings-table){:scope{background:var(--card);border:1px solid var(--border);border-radius:var(--medium-radius);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.title{color:var(--foreground);font-size:1rem;font-weight:600}.link{color:var(--muted-foreground);font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s}.link:hover{color:var(--foreground)}.table-wrapper{scrollbar-width:none;overflow-x:auto}.table-wrapper::-webkit-scrollbar{display:none}.content{border-collapse:collapse;width:100%;min-width:28rem;font-size:.75rem}.content th{color:var(--muted-foreground);text-align:center;border-bottom:1px solid var(--border);padding:.5rem .25rem;font-weight:500}.content td{color:var(--foreground);text-align:center;border-bottom:1px solid var(--border);padding:.5rem .25rem}.content tr:last-child td{border-bottom:none}.content tbody tr:nth-child(2n){background:color-mix(in srgb, var(--muted) 40%, transparent)}.content tbody tr{transition:background .15s}.content tbody tr:hover{background:color-mix(in srgb, var(--muted) 80%, transparent)}.content tbody tr.zone-promotion td:first-child{box-shadow:inset 3px 0 #22c55e}.content tbody tr.zone-playoff td:first-child{box-shadow:inset 3px 0 #f59e0b}.content tbody tr.zone-relegation td:first-child{box-shadow:inset 3px 0 #ef4444}.content .col-rank{width:1.5rem;font-weight:600}.content .col-team{text-align:left;min-width:8rem}.content .col-stat{width:2rem}.content .col-points{font-weight:600}.content .col-form{width:4.5rem}.content .team-link{color:inherit;align-items:center;gap:.5rem;text-decoration:none;display:flex}.content .team-link:hover .team-name{text-decoration:underline}.content .team-logo{object-fit:contain;width:1.25rem;height:1.25rem}.content .team-name{text-overflow:ellipsis;white-space:nowrap;max-width:10rem;line-height:1.25;overflow:hidden}.form-dots{justify-content:center;align-items:center;gap:.25rem;display:flex}.form-dot{border-radius:var(--circle-radius);width:.5rem;height:.5rem}.form-dot.win{background:#22c55e}.form-dot.draw{background:#f59e0b}.form-dot.loss{background:#ef4444}}
@scope(.competition-standings){:scope{flex-direction:column;gap:1rem;display:flex}.empty{color:var(--muted-foreground);text-align:center;background:var(--card);border:1px solid var(--border);border-radius:var(--medium-radius);padding:2rem;font-size:.875rem}}
