:root{--blue:#0057bf;--blue2:#003f91;--navy:#041b3d;--sky:#eaf4ff;--white:#fff;--ink:#0f172a;--muted:#64748b;--line:#dbe5f0;--green:#16a34a;--red:#dc2626;--gold:#f5b52c}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(140deg,#f8fbff,#eaf4ff 42%,#fff)}a{color:var(--blue);font-weight:800;text-decoration:none}.container{max-width:1180px;margin:0 auto;padding:24px}.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 6px 18px rgba(2,8,23,.05)}.nav-inner{max-width:1180px;margin:auto;padding:12px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:900;color:var(--blue2)}.brand img{height:42px;width:auto;display:block}.nav a{margin-left:14px;color:#334155}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:linear-gradient(135deg,var(--blue),#003f91);color:#fff!important;border-radius:14px;padding:12px 18px;font-weight:900;cursor:pointer;box-shadow:0 12px 24px rgba(0,87,191,.2)}.btn.secondary{background:#64748b}.btn.green{background:linear-gradient(135deg,#0f9f59,#22c55e)}.btn.red{background:linear-gradient(135deg,#dc2626,#ef4444)}.card{background:rgba(255,255,255,.96);border:1px solid rgba(219,229,240,.95);border-radius:26px;padding:26px;box-shadow:0 20px 45px rgba(15,23,42,.09);margin-bottom:20px}.alert{padding:12px 14px;border-radius:14px;margin:10px 0}.alert.ok{background:#ecfdf5;color:#047857}.alert.err{background:#fef2f2;color:#b91c1c}.badge{padding:7px 11px;border-radius:999px;font-weight:900;font-size:12px}.pending{background:#fff7ed;color:#c2410c}.done{background:#ecfdf5;color:#047857}.muted{color:var(--muted)}.stat{font-size:42px;font-weight:900;color:var(--blue)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}input,select{width:100%;padding:13px 14px;border:1px solid #cbd5e1;border-radius:14px;margin:7px 0 15px;background:#fff;font-size:15px}label{font-weight:900;font-size:13px}.table{width:100%;border-collapse:collapse;min-width:760px;background:#fff}.table th{background:var(--blue);color:#fff;text-align:left}.table th,.table td{padding:12px;border-bottom:1px solid var(--line)}.table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--line)}
/* Visual landing */.landing{min-height:calc(100vh - 68px);display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:center;padding-top:28px}.landing-copy{position:relative;z-index:2}.logo-panel{display:inline-flex;background:#fff;border:1px solid #dbeafe;border-radius:22px;padding:12px 18px;box-shadow:0 16px 30px rgba(0,87,191,.12);margin-bottom:20px}.logo-panel img{width:260px;max-width:72vw;height:auto;display:block}.pill{display:inline-flex;gap:8px;align-items:center;border:1px solid #bfdbfe;background:#eff6ff;color:#0b4ea2;padding:10px 16px;border-radius:999px;font-weight:900}.landing h1{font-size:56px;line-height:1.02;margin:18px 0;color:#07152f}.landing h1 span{color:var(--blue)}.landing p{font-size:18px;line-height:1.55}.hero-art{position:relative;border-radius:32px;overflow:hidden;box-shadow:0 26px 60px rgba(0,63,145,.24)}.hero-art img{width:100%;display:block}.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.feature{background:#fff;border:1px solid #dbeafe;border-radius:20px;padding:16px;text-align:center;box-shadow:0 12px 24px rgba(15,23,42,.06);font-weight:800}.feature b{font-size:27px;display:block;margin-bottom:7px}.date-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:#061a3a;color:#fff;border-radius:24px;padding:16px;margin-top:22px}.date-strip div{border-right:1px solid rgba(255,255,255,.18);padding:6px 10px}.date-strip div:last-child{border-right:0}.date-strip small{display:block;color:#bfdbfe;font-weight:800}.date-strip b{display:block;margin-top:6px}
/* Auth */.auth-page{min-height:100vh;background:radial-gradient(circle at top right,#0a58c6 0,#061b3d 34%,#eff6ff 34.2%,#fff 74%);display:grid;place-items:center;padding:30px}.auth-shell{width:min(1060px,100%);display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:stretch}.auth-brand{background:linear-gradient(145deg,#051b3f,#0057bf);border-radius:34px;padding:30px;color:#fff;position:relative;overflow:hidden;box-shadow:0 30px 70px rgba(0,63,145,.28)}.auth-brand:after{content:'365';position:absolute;right:-20px;bottom:-55px;font-size:170px;font-weight:900;opacity:.09}.auth-logo{background:#fff;border-radius:22px;padding:14px 18px;display:inline-flex;box-shadow:0 18px 40px rgba(0,0,0,.18);position:relative;z-index:2}.auth-logo img{width:280px;height:auto;display:block}.auth-brand h2{font-size:38px;line-height:1.05;margin:32px 0 12px;position:relative;z-index:3}.auth-brand p{color:#dbeafe;line-height:1.55;position:relative;z-index:3}.auth-ball{position:absolute;right:-70px;bottom:-70px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,#38bdf8 0,#0057bf 45%,transparent 70%);box-shadow:none;opacity:.22;z-index:1;pointer-events:none}.auth-card{background:rgba(255,255,255,.98);border-radius:34px;padding:42px;box-shadow:0 30px 70px rgba(2,8,23,.18);border:1px solid #e2e8f0;align-self:center}.auth-card h1{text-align:center;font-size:32px;margin:0 0 10px;color:var(--blue2)}.auth-card .sub{text-align:center;margin-bottom:28px;color:#475569}.auth-card .mini-logo{text-align:center;margin-bottom:18px}.auth-card .mini-logo img{width:220px;height:auto}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.closed-box{text-align:center;padding:24px;border:1px dashed #fca5a5;background:#fef2f2;border-radius:18px}
/* Existing app */.hero{display:flex;align-items:center;justify-content:space-between;gap:20px}.toolbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:18px 0}.match-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:16px}.match-card{border:1px solid var(--line);border-radius:20px;padding:16px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 8px 22px rgba(15,23,42,.05)}.match-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:12px}.teams{font-size:18px;font-weight:900;color:#0f172a;line-height:1.35}.score-row{display:grid;grid-template-columns:1fr 70px 24px 70px 1fr;align-items:center;gap:7px;text-align:center}.score-row input{text-align:center;font-size:22px;font-weight:900;margin:0;padding:10px}.team-label{font-weight:800}.points-pill{margin-top:12px;display:flex;justify-content:space-between;align-items:center;background:#eef6ff;padding:10px 12px;border-radius:14px;font-weight:800;color:#0b4ea2}.progress{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),#22c55e)}.rank-card{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid var(--line);padding:14px;border-radius:18px;background:#fff;margin-bottom:10px}.rank-pos{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eff6ff;color:var(--blue);font-weight:900}.rank-points{font-size:24px;font-weight:900;color:var(--blue)}
@media(max-width:900px){.landing,.auth-shell{grid-template-columns:1fr}.landing h1{font-size:40px}.feature-row,.date-strip{grid-template-columns:1fr}.auth-brand{min-height:310px}.auth-ball{display:none}.nav-inner{display:block}.nav a{display:inline-block;margin:10px 12px 0 0}.toolbar{grid-template-columns:1fr}.score-row{grid-template-columns:1fr 58px 16px 58px 1fr}.auth-page{padding:14px}.auth-card{padding:26px}.container{padding:15px}}

.back-home{position:fixed;left:24px;top:24px;z-index:50;background:#fff;color:#0057bf!important;border:1px solid #bfdbfe;border-radius:999px;padding:11px 16px;font-weight:900;box-shadow:0 14px 28px rgba(2,8,23,.14)}
.back-home:hover{transform:translateY(-1px)}
@media(max-width:900px){.back-home{position:static;display:inline-flex;margin:0 0 14px 0}.auth-page{display:block}}

/* Ajuste solicitado: header sin logo y logo visible solo en ranking */
.nav .brand img{display:none!important}
.ranking-logo-box{background:#fff;border:1px solid #dbeafe;border-radius:22px;padding:10px 16px;box-shadow:0 12px 24px rgba(0,87,191,.12)}
.ranking-logo-box img{width:220px;max-width:70vw;height:auto;display:block}
.ranking-hero{align-items:center}
@media(max-width:900px){.ranking-hero{display:block}.ranking-hero .btn{margin-top:10px}}


/* ===== Módulos de reglas con diseño Grupo365 azul ===== */
.g365-rules-hero{
    position:relative;
    overflow:hidden;
    border-radius:28px;
    padding:32px;
    color:#fff;
    background:
        radial-gradient(circle at top right, rgba(255,255,255,.22), transparent 34%),
        linear-gradient(135deg,#002b65,#0059c9 52%,#003a8c);
    box-shadow:0 22px 50px rgba(0,43,101,.28);
    margin-bottom:22px;
}
.g365-rules-hero:after{
    content:"365";
    position:absolute;
    right:20px;
    bottom:-45px;
    font-size:155px;
    font-weight:950;
    opacity:.12;
}
.g365-rules-logo{
    width:180px;
    background:#fff;
    border-radius:18px;
    padding:10px 14px;
    box-shadow:0 12px 28px rgba(0,0,0,.22);
    margin-bottom:18px;
}
.g365-rules-hero h1{font-size:38px;margin:0 0 8px;font-weight:950}
.g365-rules-hero p{font-size:17px;color:rgba(255,255,255,.88);max-width:760px}
.g365-rules-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.g365-btn-light{
    display:inline-flex;align-items:center;gap:8px;
    background:#fff;color:#0b4ea2;text-decoration:none;
    padding:12px 18px;border-radius:999px;font-weight:900;
}
.g365-rules-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:16px;
}
.g365-rule-card{
    position:relative;
    overflow:hidden;
    background:linear-gradient(180deg,#fff,#eef6ff);
    border:1px solid #dbeafe;
    border-radius:24px;
    padding:20px;
    box-shadow:0 14px 34px rgba(15,23,42,.08);
}
.g365-rule-card:before{
    content:"⚽";
    position:absolute;
    right:14px;
    top:10px;
    font-size:42px;
    opacity:.10;
}
.g365-rule-title{font-weight:900;color:#0f172a;padding-right:46px}
.g365-rule-points{
    margin-top:14px;
    font-size:38px;
    font-weight:950;
    color:#0b4ea2;
}
.g365-rule-points small{font-size:14px;color:#64748b}
.g365-note{
    background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;
    padding:14px 16px;border-radius:18px;font-weight:900;margin-top:18px;
}
.g365-stage-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:16px;
}
.g365-stage-box{
    background:rgba(255,255,255,.94);
    border:1px solid #dbeafe;
    border-radius:24px;
    padding:18px;
    box-shadow:0 14px 34px rgba(15,23,42,.08);
}
.g365-stage-box h3{margin:0 0 12px;color:#0b4ea2;font-weight:950}
.g365-stage-box textarea{
    width:100%;min-height:120px;border:1px solid #bfdbfe;
    border-radius:16px;padding:12px;resize:vertical;background:#f8fbff;
}
@media(max-width:760px){
    .g365-rules-hero h1{font-size:30px}
    .g365-rules-logo{width:145px}
}

/* ===== Correccion final: logo Grupo365 compacto y responsive ===== */
.logo-panel{padding:8px 12px!important;border-radius:16px!important;margin-bottom:14px!important}
.logo-panel img{width:150px!important;max-width:48vw!important;height:auto!important}
.auth-logo{padding:8px 12px!important;border-radius:16px!important}
.auth-logo img{width:150px!important;max-width:46vw!important;height:auto!important}
.auth-card .mini-logo img{width:120px!important;max-width:42vw!important;height:auto!important}
.ranking-logo-box img{width:145px!important;max-width:45vw!important;height:auto!important}
.ranking-logo,.g365-rules-logo{width:130px!important;max-width:46vw!important;height:auto!important;padding:8px 12px!important;border-radius:14px!important}
.brand img{height:30px!important;width:auto!important}
.logo365-watermark,.logo365-bg,.logo365-integrated{width:120px!important;max-width:32vw!important;opacity:.08!important;right:14px!important;bottom:10px!important;left:auto!important;top:auto!important;transform:none!important;position:absolute!important;z-index:1!important;pointer-events:none!important}
.auth-brand:after{font-size:125px!important;right:-10px!important;bottom:-38px!important;opacity:.07!important}
.g365-rules-hero:after{font-size:110px!important;right:12px!important;bottom:-32px!important;opacity:.09!important}
@media(max-width:900px){
  .logo-panel img,.auth-logo img{width:118px!important;max-width:54vw!important}
  .auth-card .mini-logo img{width:100px!important}
  .ranking-logo-box img,.ranking-logo,.g365-rules-logo{width:105px!important;max-width:55vw!important}
  .logo365-watermark,.logo365-bg,.logo365-integrated{width:82px!important;opacity:.06!important;right:8px!important;bottom:8px!important}
  .auth-brand:after,.g365-rules-hero:after{font-size:90px!important;bottom:-24px!important}
}


/* ===== Ranking Premium Mejorado - Grupo365 ===== */
.g365-ranking-body{min-height:100vh;background:radial-gradient(circle at 18% 10%,rgba(45,132,255,.22),transparent 28%),radial-gradient(circle at 86% 18%,rgba(0,190,255,.16),transparent 30%),linear-gradient(135deg,#eaf4ff 0%,#f8fbff 45%,#ffffff 100%)}
.g365-ranking-shell{max-width:1180px;margin:0 auto;padding:28px 18px 46px}.g365-ranking-hero{position:relative;overflow:hidden;border-radius:30px;padding:30px;color:#fff;background:linear-gradient(135deg,rgba(0,43,101,.98),rgba(8,91,190,.96) 54%,rgba(0,153,219,.90));box-shadow:0 24px 54px rgba(0,43,101,.24);display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}.g365-ranking-hero:after{content:'⚽';position:absolute;right:30px;bottom:-50px;font-size:170px;opacity:.13;transform:rotate(-12deg)}
.g365-ranking-logo{width:145px!important;max-width:45vw!important;height:auto!important;background:#fff;padding:10px 14px;border-radius:18px;box-shadow:0 12px 28px rgba(0,0,0,.22);position:relative;z-index:2}.g365-ranking-hero h1{position:relative;z-index:2;font-size:42px;line-height:1.05;margin:0 0 8px;font-weight:950;letter-spacing:-.03em}.g365-ranking-hero p{position:relative;z-index:2;margin:0;color:rgba(255,255,255,.88);font-size:17px}.g365-ranking-actions{position:relative;z-index:2;display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.g365-ranking-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:11px 17px;font-weight:900;text-decoration:none;border:1px solid rgba(255,255,255,.35);color:#fff!important;background:rgba(255,255,255,.14);backdrop-filter:blur(8px)}.g365-ranking-btn.primary{background:#fff;color:#0b4ea2!important}
.g365-ranking-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 26px}.g365-rank-stat{background:rgba(255,255,255,.92);border:1px solid rgba(219,234,254,.95);border-radius:24px;padding:20px;box-shadow:0 16px 34px rgba(15,23,42,.08)}.g365-rank-stat .label{color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.g365-rank-stat .value{color:#0b4ea2;font-size:32px;font-weight:950;margin-top:6px;line-height:1.1}.g365-winner-banner{border-radius:24px;padding:16px 18px;margin-bottom:24px;background:linear-gradient(135deg,#fff7ed,#eef6ff);border:1px solid #fed7aa;box-shadow:0 12px 28px rgba(15,23,42,.07);display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#92400e;font-weight:950}
.g365-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:end;margin:10px 0 28px}.g365-podium-card{position:relative;overflow:hidden;text-align:center;border-radius:30px;background:linear-gradient(180deg,#fff,#f5faff);border:1px solid #dbeafe;box-shadow:0 20px 44px rgba(15,23,42,.10);padding:24px 16px 20px;min-height:210px}.g365-podium-card:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top,rgba(11,78,162,.16),transparent 45%)}.g365-podium-card.first{min-height:250px;transform:translateY(-18px);border:2px solid rgba(245,158,11,.62);box-shadow:0 24px 54px rgba(245,158,11,.16)}.g365-medal{position:relative;z-index:2;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;margin:0 auto 13px;font-size:34px;background:#fff;box-shadow:0 12px 26px rgba(15,23,42,.14)}.g365-podium-name{position:relative;z-index:2;color:#0f172a;font-size:20px;font-weight:950}.g365-podium-points{position:relative;z-index:2;color:#0b4ea2;font-size:36px;font-weight:950;margin-top:8px}.g365-podium-meta{position:relative;z-index:2;color:#64748b;font-size:13px;font-weight:800}
.g365-ranking-list{background:rgba(255,255,255,.94);border:1px solid #dbeafe;border-radius:28px;box-shadow:0 18px 40px rgba(15,23,42,.08);padding:18px}.g365-ranking-list h2{margin:8px 8px 18px;color:#0f172a;font-size:24px}.g365-rank-row{display:grid;grid-template-columns:58px minmax(0,1fr) 190px 105px;gap:14px;align-items:center;padding:14px;margin-bottom:10px;border-radius:20px;background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #e5e7eb;transition:.18s ease}.g365-rank-row:hover{transform:translateY(-2px);box-shadow:0 14px 26px rgba(15,23,42,.08)}.g365-rank-number{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;color:#0b4ea2;background:#eff6ff;font-weight:950;font-size:18px}.g365-rank-user{color:#0f172a;font-weight:950;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g365-rank-meta{color:#64748b;font-size:13px;font-weight:750;margin-top:3px}.g365-points-bar{height:12px;background:#e2e8f0;border-radius:999px;overflow:hidden}.g365-points-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0b4ea2,#17c3ff,#22c55e)}.g365-rank-score{text-align:right;color:#0b4ea2;font-size:22px;font-weight:950}@media(max-width:850px){.g365-ranking-hero{grid-template-columns:1fr}.g365-ranking-summary{grid-template-columns:1fr}.g365-podium{grid-template-columns:1fr}.g365-podium-card.first{transform:none}.g365-rank-row{grid-template-columns:48px minmax(0,1fr) 84px}.g365-points-bar{display:none}.g365-ranking-hero h1{font-size:32px}.g365-ranking-logo{width:110px!important}}


/* ===== Selector de equipos por fases ===== */
.g365-select-help{color:#64748b;font-size:13px;font-weight:700;margin:8px 0 10px;}
.g365-team-select{width:100%;min-height:170px;border:1px solid #bfdbfe;border-radius:16px;padding:10px;background:#f8fbff;color:#0f172a;font-weight:750;}
.g365-team-select option{padding:8px;}
.g365-champion-select{width:100%;border:1px solid #bfdbfe;border-radius:16px;padding:12px;background:#f8fbff;color:#0f172a;font-weight:850;}
.g365-admin-team-form{display:grid;grid-template-columns:2fr 1fr auto;gap:12px;align-items:end;}
@media(max-width:760px){.g365-admin-team-form{grid-template-columns:1fr}}
.advance-box{margin-top:10px;padding:10px 12px;border:1px dashed #bfdbfe;border-radius:14px;background:#f8fbff;display:grid;gap:6px}.advance-box select{width:100%;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;font-weight:800}


/* ===== Alertas de pendiente por empate ===== */
.empate-alert{
    background:#fef2f2!important;
    border:2px solid #ef4444!important;
    color:#7f1d1d!important;
    border-radius:20px;
    padding:16px 18px;
    margin:16px 0 22px;
    box-shadow:0 14px 30px rgba(239,68,68,.16);
}
.empate-alert h3{margin:0 0 6px;color:#991b1b;font-weight:950;}
.pending-links{display:grid;gap:8px;margin-top:12px;}
.pending-link{
    display:block;
    padding:10px 12px;
    border-radius:14px;
    background:#fff;
    color:#991b1b!important;
    text-decoration:none;
    font-weight:900;
    border:1px solid #fecaca;
}
.pending-link:hover{background:#fee2e2;transform:translateY(-1px);}
.match-card.needs-penalty{
    border:3px solid #ef4444!important;
    box-shadow:0 0 0 5px rgba(239,68,68,.14),0 18px 38px rgba(127,29,29,.18)!important;
    position:relative;
}
.match-card.needs-penalty:before{
    content:'Pendiente por empate';
    position:absolute;
    top:-13px;
    right:16px;
    background:#dc2626;
    color:#fff;
    font-size:12px;
    font-weight:950;
    padding:6px 10px;
    border-radius:999px;
    z-index:2;
}
.penalty-warning{
    background:#fee2e2;
    color:#991b1b;
    border:1px solid #fca5a5;
    padding:8px 10px;
    border-radius:12px;
    font-weight:950;
}
.save-after-groups{
    margin:18px 0 4px;
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    background:#f0fdf4;
    border:1px solid #bbf7d0;
    border-radius:18px;
    padding:14px;
}
.match-card:target{scroll-margin-top:95px;}
@media(max-width:760px){.match-card.needs-penalty:before{position:static;display:inline-block;margin-bottom:8px}.save-after-groups{align-items:flex-start}}

/* ===== Cruces de eliminación agrupados por fase ===== */
.elimination-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    align-items:stretch;
}
.phase-separator{
    grid-column:1 / -1;
    margin:20px 0 0;
    background:linear-gradient(135deg,var(--blue),var(--blue2));
    color:#fff;
    border-radius:18px;
    padding:13px 18px;
    font-weight:950;
    letter-spacing:.3px;
    box-shadow:0 12px 24px rgba(0,87,191,.18);
}
.phase-separator span{
    display:flex;
    align-items:center;
    gap:8px;
}
.phase-separator span:before{
    content:'🏆';
}
.elimination-grid .match-card{
    min-height:100%;
}
@media(max-width:980px){.elimination-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:680px){.elimination-grid{grid-template-columns:1fr}.phase-separator{border-radius:16px;text-align:center}.phase-separator span{justify-content:center}}


.group-phase-title{
    margin:16px 0 12px;
}
.group-phase-title span:before{
    content:'⚽';
}
