/* ===========================
   Cotentin Games – Scoreboard
   =========================== */

/* --- Conteneur --- */
.cgs-board{max-width:1200px;margin:40px auto;padding:0 16px;color:#fff;text-align:left}
.cgs-title{text-align:center;font-size:40px;margin:0 0 18px;font-weight:800}

/* ===== 1) LISTE ===== */
.cgs-rows{display:grid;gap:12px}
.cgs-row{display:grid;grid-template-columns:64px 1fr 120px;align-items:center;background:rgba(255,255,255,.08);border-radius:14px;padding:14px 18px;gap:20px}
.cgs-rank{font-size:38px;font-weight:900;text-align:center}
.cgs-brand{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:14px}
.cgs-logo{width:56px;height:56px;object-fit:contain;background:#fff;border-radius:10px}
.cgs-names{display:flex;flex-direction:column}
.cgs-company{font-size:28px;font-weight:800;line-height:1.3;word-break:break-word;overflow-wrap:anywhere}
.cgs-team{font-size:18px;opacity:.85;margin-top:4px}
.cgs-score{font-size:40px;font-weight:900;text-align:right}
.cgs-empty,.cgs-error{text-align:center;font-size:22px;opacity:.9}
@media(max-width:700px){.cgs-row{grid-template-columns:48px 1fr 90px;gap:14px}.cgs-logo{width:48px;height:48px}.cgs-company{font-size:22px}.cgs-score{font-size:32px}}

/* ===== 2) CARDS ===== */
.cgs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.cgs-card{background:#fff;color:#111;border-radius:22px;box-shadow:0 12px 30px rgba(0,0,0,.08);padding:26px;text-align:center;transition:transform .2s, box-shadow .2s}
.cgs-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.12)}
.cgs-card .cgs-logo{width:92px;height:92px;object-fit:contain;margin:6px auto 18px;display:block;background:transparent}
.cgs-card .cgs-company{font-size:1.2rem;font-weight:700;margin:0 0 8px;color:#111}
.cgs-card .cgs-team{font-size:1rem;font-weight:500;color:#666;margin:0 0 16px}
.cgs-card .cgs-score{font-size:2.6rem;font-weight:800;line-height:1;margin:6px 0 14px;color:#111}
.cgs-card .cgs-meta{display:flex;justify-content:center;gap:14px;font-size:.85rem;color:#888}

/* ===== 3) PODIUM ===== */
.cgs-podium{display:flex;justify-content:center;align-items:flex-end;gap:30px;margin:40px auto;text-align:center;flex-wrap:wrap}
.cgs-podium-item{flex:1 1 220px;max-width:320px;background:#fff;color:#111;border-radius:18px;box-shadow:0 10px 25px rgba(0,0,0,.1);padding:26px 20px;position:relative}
.cgs-podium-item .cgs-logo{width:110px;height:110px;object-fit:contain;margin:10px auto;display:block;background:transparent}
.cgs-podium-rank{font-size:1.3rem;font-weight:800;margin-bottom:6px}
.cgs-podium-company{font-size:1.25rem;font-weight:700;margin:8px 0}
.cgs-podium-score{font-size:2.2rem;font-weight:900;margin-top:10px}
.cgs-podium-item.rank-1{transform:scale(1.12);background:linear-gradient(180deg,#ffd700,#ffef9f)}
.cgs-podium-item.rank-2{background:linear-gradient(180deg,#c0c0c0,#e6e6e6)}
.cgs-podium-item.rank-3{background:linear-gradient(180deg,#cd7f32,#e0a572)}
.cgs-podium-item.rank-1,.cgs-podium-item.rank-2,.cgs-podium-item.rank-3{color:#111}
@media(max-width:900px){.cgs-podium{gap:18px}.cgs-podium-item{max-width:100%}.cgs-podium-item.rank-1{transform:none}}

/* ===== 4) HERO ===== */
.cgs-hero{max-width:900px;margin:40px auto;padding:28px 24px;background:#fff;color:#111;border-radius:26px;text-align:center;box-shadow:0 14px 40px rgba(0,0,0,.10)}
.cgs-hero .cgs-logo{width:110px;height:110px;object-fit:contain;margin:4px auto 12px;display:block;background:transparent}
.cgs-hero .cgs-company{font-size:1.4rem;font-weight:800;margin:0 0 6px}
.cgs-hero .cgs-team{font-size:1.1rem;color:#666;margin:0 0 18px}
.cgs-hero .cgs-score{font-size:3.2rem;font-weight:900;margin:6px 0 20px}
.cgs-hero .cgs-meta{font-size:.95rem;color:#888;display:flex;justify-content:center;gap:16px}
