.csmpe-tournoi{--ct-accent:#1e88e5;--ct-line:rgba(127,127,127,.35);--ct-soft:rgba(127,127,127,.12);font-size:1rem;line-height:1.4}
.csmpe-tournoi h3{margin:.4rem 0 .3rem;font-size:1.15rem}
.csmpe-tournoi h4{margin:1.1rem 0 .4rem;font-size:1rem}
.ct-muted{opacity:.7}.ct-hint{font-weight:400;font-size:.85em;opacity:.7}
.ct-error{color:#c62828}.ct-notice{background:#fff3cd;color:#5a4600;padding:.5rem .7rem;border-radius:6px}
.ct-foot{margin-top:1.5rem;font-size:.85em}
.ct-tabs{display:flex;gap:.3rem;flex-wrap:wrap;border-bottom:1px solid var(--ct-line);margin-bottom:.8rem}
.ct-tab{background:none;border:0;border-bottom:3px solid transparent;padding:.5rem .8rem;cursor:pointer;font:inherit;color:inherit}
.ct-tab.ct-on{border-bottom-color:var(--ct-accent);font-weight:600}
.ct-head{margin-bottom:.6rem}
.ct-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:.4rem 0}
.ct-btn{font:inherit;padding:.45rem .8rem;border:1px solid var(--ct-line);border-radius:6px;background:var(--ct-soft);color:inherit;cursor:pointer}
.ct-btn:disabled{opacity:.45;cursor:default}
.ct-primary{background:var(--ct-accent);border-color:var(--ct-accent);color:#fff}
.ct-ghost{background:none}
.ct-link{background:none;border:0;padding:0;font:inherit;color:var(--ct-accent);cursor:pointer;text-decoration:underline}
.ct-add{margin:.5rem 0 1rem}.ct-add summary{cursor:pointer}
.ct-add textarea{width:100%;margin:.4rem 0;font:inherit;padding:.4rem;box-sizing:border-box}
.ct-chips{display:flex;flex-wrap:wrap;gap:.4rem}
.ct-chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--ct-line);border-radius:999px;padding:.25rem .3rem .25rem .7rem;background:var(--ct-soft)}
.ct-chip-name{cursor:pointer}
.ct-chip-pts{font-size:.8em;opacity:.7}
.ct-chip-x{border:0;background:none;cursor:pointer;font:inherit;opacity:.6;padding:0 .3rem}
.ct-chip.ct-busy{opacity:.5}.ct-chip.ct-parti{opacity:.4;text-decoration:line-through}
.ct-chip.ct-sel{outline:2px solid var(--ct-accent)}
.ct-games{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.ct-game{border:1px solid var(--ct-line);border-radius:8px;padding:.5rem .7rem;display:flex;flex-direction:column;gap:.4rem}
.ct-game.ct-finished{opacity:.85}
.ct-game-players{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}
.ct-num{font-size:.8em;opacity:.6;min-width:1.2em}
.ct-vs{opacity:.5}
.ct-game-buttons{display:flex;gap:.4rem}.ct-game-buttons .ct-btn{flex:1;text-align:center}
.ct-game-result{display:flex;justify-content:space-between;align-items:center}
.ct-res{font-weight:600}
.ct-table{width:100%;border-collapse:collapse;font-size:.95em}
.ct-table th,.ct-table td{padding:.35rem .5rem;border-bottom:1px solid var(--ct-line);text-align:left}
.ct-table td:nth-child(n+3),.ct-table th:nth-child(n+3){text-align:right}
.ct-table td:first-child,.ct-table th:first-child{text-align:right;width:2em}
.ct-table tr.ct-prov td{font-style:italic;opacity:.8}
.ct-past{margin-top:1.2rem}.ct-past summary{cursor:pointer}.ct-past-s{margin:.5rem 0}
.ct-field{display:block;margin:.5rem 0}.ct-field select{font:inherit;margin-left:.4rem;max-width:100%}
.ct-statcard{border:1px solid var(--ct-line);border-radius:8px;padding:.8rem 1rem;margin-top:.6rem}
.ct-big{font-size:1.8rem;font-weight:600;margin:.2rem 0}.ct-big small{font-size:.5em;font-weight:400;opacity:.7}
.ct-spark{width:100%;max-width:260px;height:60px;display:block;margin:.3rem 0;color:var(--ct-accent)}
.ct-dl{display:grid;grid-template-columns:auto 1fr;gap:.2rem .8rem;margin:.6rem 0 0}.ct-dl dt{opacity:.7}.ct-dl dd{margin:0}
@media (max-width:480px){.ct-game-buttons .ct-btn{padding:.6rem .4rem}.ct-tab{padding:.5rem .55rem}}
.ct-login{margin-top:1rem}.ct-login summary{cursor:pointer;opacity:.75}
.ct-login form{display:flex;gap:.4rem;margin-top:.4rem;flex-wrap:wrap}
.ct-login input{font:inherit;padding:.4rem;flex:1;min-width:10rem}
