/* Combien de points ? — thème v2 de l'application (v1.15).
   Chargé après les styles de chaque page : il aligne l'app sur le site (polices, or, rayons, bas de casse)
   sans toucher à la logique. Polices auto-hébergées (SIL OFL), partagées avec le site. */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(/assets/fonts/bricolage-grotesque-latin-wdth.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:300 900;font-display:swap;src:url(/assets/fonts/figtree-latin.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-style:italic;font-weight:300 900;font-display:swap;src:url(/assets/fonts/figtree-latin-italic.woff2) format('woff2')}

:root{
  --felt:#14322A;--deep:#0D211B;--line:#2A4A40;--chalk:#F1F4EE;--card:#F1F4EE;--ink:#14211C;
  --gold:#E0A94B;--mute:#8DA096;--brick:#C8463B;
  --display:'Bricolage Grotesque',system-ui,sans-serif;
  --ui:'Figtree','Segoe UI',system-ui,-apple-system,sans-serif;
}
body{font-family:var(--ui);-webkit-font-smoothing:antialiased}
button,input,select{font-family:var(--ui)}

/* titres et noms : bas de casse, condensé léger pour rester compact */
.n,.name,.tb-main,.sheet-name,.sheet-title,.setup .ttl,.statname,.team .tn,.sbox .tn,.teams div b,.mene .ttl,.bareme .ttl,.tools .ttl,.mode b,
.total td.cat,.section td.cat{text-transform:none;letter-spacing:-.015em;font-variation-settings:"wdth" 92}
.tb-main{font-size:19px;font-weight:700}
.tb-game,.grp,.bitem label,.sitem span,.cnt .lbl b,.dir{letter-spacing:.06em}
.n{font-size:22px;font-weight:700}
.name{font-size:21px;font-weight:700}
.sheet-name{font-size:26px}
.sheet-title{font-size:23px}
.setup .ttl{font-size:17px}
.statname{font-size:20px}
.tot{font-size:38px;font-variation-settings:"wdth" 88}
.big{font-size:40px;font-variation-settings:"wdth" 88}
.rank,.left b,.ps-t{font-variation-settings:"wdth" 90}

/* boutons : pilules comme sur le site */
.cta{border-radius:999px;font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.005em;height:54px}
.cta[disabled]{border-color:var(--line)}
.sub{border-radius:999px}
.btn-gold{border-radius:999px}
.toggle{border-radius:999px}
.tb-back,.tb-btn{border-radius:999px}
.ps-cta{border-radius:999px}
.key{border-radius:12px;font-family:var(--display);font-weight:700;font-variation-settings:"wdth" 92;box-shadow:0 1px 0 rgba(0,0,0,.25)}
.key.alt{font-family:var(--ui);font-weight:600}

/* cartes et lignes : rayon 18 px, feuille 24 px */
.row,.game,.setup,.addbox,.confirm,.statcard,.team,.mene,.bareme,.mode,.bidrow,.tools{border-radius:18px}
.add{border-radius:18px}
.sheet{border-radius:24px 24px 0 0}
.mark{transform:none;border-radius:14px;box-shadow:none}
.chip{border-radius:999px;padding:1px 7px}
.banner{font-family:var(--ui)}

/* focus visible homogène */
button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
input:focus,input:focus-visible{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(224,169,75,.22)}
