/* Préparation au TCF IRN */
.tcf-head{background:#F3EEE4;padding:44px 0 34px;border-bottom:1px solid var(--line)}
.tcf-head h1{margin:6px 0 8px}
.tcf-head p{margin:0;max-width:720px}
.tcf-retour{font-size:15px;color:var(--gold);text-decoration:none}
.tcf-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.tcf-carte{display:flex;flex-direction:column;gap:8px;background:var(--white);border:1px solid var(--line);border-radius:10px;padding:20px;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s}
.tcf-carte:hover{border-color:var(--gold);transform:translateY(-2px)}
.tcf-carte h3{margin:0;font-size:21px}
.tcf-carte p{margin:0;color:#5A6472;font-size:15px}
.tcf-niv{display:inline-block;font-size:12px;letter-spacing:.08em;padding:2px 9px;border-radius:20px;background:#EFE8DA;color:#7E5F28;font-weight:bold;align-self:flex-start}
.tcf-niv.fait{background:#2E6B4F;color:#fff}
.tcf-bloc{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:24px;margin:0 0 22px}
.tcf-bloc h2,.tcf-bloc h3{margin-top:0}
.tcf-ex{border-top:1px solid var(--line);padding:16px 0}
.tcf-ex:first-of-type{border-top:0}
.tcf-q{font-size:19px;margin:0 0 10px}
.tcf-choix{display:grid;gap:8px}
.tcf-choix button{font:inherit;font-size:17px;text-align:left;padding:11px 14px;border:1.5px solid var(--line);border-radius:8px;background:var(--white);cursor:pointer;color:inherit}
.tcf-choix button:hover:not(:disabled){border-color:var(--gold)}
.tcf-choix button.bon{background:#2E6B4F;border-color:#2E6B4F;color:#fff}
.tcf-choix button.faux{background:#A63D2F;border-color:#A63D2F;color:#fff}
.tcf-choix button:disabled{cursor:default}
.tcf-expl{margin:10px 0 0;padding:10px 14px;background:#F6F1E7;border-radius:8px;font-size:16px;display:none}
.tcf-expl.vu{display:block}
.tcf-doc{white-space:pre-line;background:#FBF9F4;border:1px solid var(--line);border-left:0;border-radius:8px;padding:16px 18px;font-size:17px;line-height:1.55;margin:0 0 14px}
.tcf-barre{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.tcf-chrono{font-weight:bold;font-variant-numeric:tabular-nums}
.tcf-chrono.urgent{color:#A63D2F}
.tcf-prog{height:6px;background:var(--line);border-radius:6px;overflow:hidden;margin-bottom:18px}
.tcf-prog i{display:block;height:100%;width:0;background:var(--gold);transition:width .3s}
.tcf-ecoute{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.tcf-ecoute button{font:inherit}
.tcf-res{text-align:center;padding:10px 0}
.tcf-res .gros{font-size:54px;font-weight:bold;line-height:1;color:var(--gold)}
.tcf-tableau{width:100%;border-collapse:collapse;font-size:16px}
.tcf-tableau th,.tcf-tableau td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left}
.tcf-modele{white-space:pre-line;background:#FBF9F4;border-radius:8px;padding:14px 16px;margin:10px 0 0;display:none;line-height:1.55}
.tcf-modele.vu{display:block}
.tcf-zone{width:100%;min-height:220px;font:inherit;font-size:17px;line-height:1.5;padding:12px 14px;border:1px solid var(--line);border-radius:8px;box-sizing:border-box}
.tcf-mots{font-size:14px;color:#5A6472}
.tcf-mots.ok{color:#2E6B4F}
.tcf-liste{margin:8px 0 0;padding-left:20px}
.tcf-liste li{margin:4px 0}
.tcf-coche{display:flex;gap:10px;align-items:flex-start;margin:6px 0;font-size:16px}
.tcf-coche input{margin-top:5px}
.tcf-onglets{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}
.tcf-onglets a,.tcf-onglets button{font:inherit;font-size:15px;padding:8px 14px;border:1px solid var(--line);border-radius:20px;background:var(--white);color:inherit;text-decoration:none;cursor:pointer}
.tcf-onglets .on{background:var(--gold);border-color:var(--gold);color:#fff}
.tcf-tableau-niv{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}
.tcf-tableau-niv div{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:16px;text-align:center}
.tcf-tableau-niv strong{display:block;font-size:30px;color:var(--gold)}
.tcf-lire{font:inherit;font-size:13px;margin:4px 0 0 8px;padding:3px 10px;border:1px solid var(--line);border-radius:14px;background:var(--white);color:var(--gold);cursor:pointer;vertical-align:middle}
.tcf-lire:hover{border-color:var(--gold)}
.tcf-lire.en-cours{background:var(--gold);border-color:var(--gold);color:#fff}
.tcf-modele + .tcf-lire{display:none}
.tcf-modele.vu + .tcf-lire{display:inline-block;margin:8px 0 0}
@media (max-width:720px){.tcf-tableau-niv{grid-template-columns:1fr}.tcf-q{font-size:18px}.tcf-bloc{padding:18px}}
