.match-soon,.match-app{max-width:960px;margin:2rem auto;padding:0 1.25rem 3rem;color:#e8eef5;font-family:"Segoe UI",system-ui,sans-serif}
.match-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;opacity:.65;margin:0 0 .35rem}
.match-soon h1,.match-head h1{font-size:clamp(1.8rem,4vw,2.6rem);margin:0 0 .75rem;font-weight:700}
.match-soon p,.match-muted{opacity:.8;line-height:1.5}
.match-head{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:flex-end;margin-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:1rem}
.match-nav{display:flex;flex-wrap:wrap;gap:.5rem}
.match-nav a{color:#9ecbff;text-decoration:none;padding:.35rem .7rem;border-radius:6px;background:rgba(255,255,255,.04)}
.match-nav a:hover,.match-nav a.is-active{background:rgba(80,160,255,.2);color:#fff}
.match-flash{background:#3a1d1d;border:1px solid #a33;color:#fcc;padding:.65rem .9rem;border-radius:8px;margin-bottom:1rem}
.match-grid{display:grid;gap:.75rem}
.match-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:1rem 1.1rem}
.match-card h3{margin:0 0 .35rem;font-size:1.05rem}
.match-meta{font-size:.85rem;opacity:.7}
.match-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}
.btn,.match-actions button,.match-form button{appearance:none;border:0;border-radius:8px;padding:.55rem 1rem;background:#2f6fed;color:#fff;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block}
.btn.secondary,button.secondary{background:rgba(255,255,255,.1)}
.btn.danger,button.danger{background:#a33}
.match-form{display:grid;gap:.65rem;max-width:420px}
.match-form label{display:grid;gap:.25rem;font-size:.9rem}
.match-form select,.match-form input{padding:.5rem .65rem;border-radius:6px;border:1px solid rgba(255,255,255,.15);background:#0f1722;color:#fff}
.match-teams{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:700px){.match-teams{grid-template-columns:1fr}}
.match-slot{padding:.45rem .6rem;border-radius:6px;background:rgba(0,0,0,.25);margin:.3rem 0;font-size:.92rem}
.match-slot.ready{outline:1px solid #3c8}
.match-connect{font-family:ui-monospace,monospace;background:#0b1220;padding:.75rem 1rem;border-radius:8px;word-break:break-all}
.match-table{width:100%;border-collapse:collapse;font-size:.92rem}
.match-table th,.match-table td{text-align:left;padding:.45rem .35rem;border-bottom:1px solid rgba(255,255,255,.08)}
.match-empty{opacity:.65;padding:1.5rem 0}
