/* Entraînement : commandes du jeu en violet, messages reçus sur des écrans neutres. */
.training-page{--tr-violet:#4e49ce;--tr-violet-dark:#3832a7;--tr-violet-soft:#eeedff;--tr-ok:#2f6b3f;--tr-ok-soft:#e5f4e2;--tr-warn:#9a4a12;--tr-warn-soft:#fff1e3;--tr-scam:#b4322d;--tr-scam-soft:#fdeceb;--tr-glow:#ffe27a;max-width:1080px;padding-top:20px;color:var(--ink);overflow-wrap:anywhere}
.training-page *{box-sizing:border-box}
.training-page h1,.training-page h2,.training-page p{margin:0}
.training-page button{min-height:44px}
.training-page .companion-controls button{min-width:44px}
.training-page button:focus-visible{outline:3px solid #968bf4;outline-offset:3px}
/* Les titres reçoivent le focus pour guider les lecteurs d’écran, sans cadre visible. */
.training-page [tabindex="-1"]:focus{outline:none}

/* Carte de l’accueil. */
.lobby-play-training .role-symbol{background:#e3f3e8;color:#2f6b3f}
.lobby-play-training:hover{border-color:#6fae7b}

/* Reprendre une partie depuis l’accueil, et retour à l’accueil depuis le choix d’affaire. */
.lobby-resume{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:26px;padding:16px 20px;border-radius:16px;background:#eeedff;border:2px solid #4e49ce;color:#26334c}
.lobby-resume>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.lobby-resume small{font-size:11px;font-weight:750;letter-spacing:.08em;color:#4e49ce}
.lobby-resume strong{font-size:18px;line-height:1.3}
.lobby-resume span{font-size:14px;color:#63738a}
.lobby-resume button{min-height:48px;flex:none}
.cases-home{display:flex;margin:18px auto 0;min-height:44px}
.home-icon{width:18px;height:18px}
.tr-command svg{width:18px;height:18px}
@media(max-width:420px){.lobby-resume button{width:100%}}

/* Barre des commandes du jeu. */
.tr-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 8px 8px 16px;margin-bottom:22px;background:var(--tr-violet);color:#fff;border-radius:14px}
.tr-toolbar-brand{font-size:13px;font-weight:750;letter-spacing:.04em}
.tr-toolbar-nav{display:flex;gap:8px;flex-wrap:wrap}
.tr-command{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid #ffffff55;border-radius:10px;background:#ffffff1a;color:#fff!important;font-size:14px;font-weight:650}
.tr-command:hover{background:#ffffff33}
.tr-command .lumi-avatar{width:30px;height:30px;margin:-4px 0}
.tr-command[aria-expanded="true"]{background:#fff;color:var(--tr-violet-dark)!important}

.tr-kicker{display:block;font-size:12px;font-weight:750;letter-spacing:.08em;color:var(--tr-violet);margin-bottom:8px}
.tr-intro{font-size:16px;color:var(--muted);margin-top:8px!important;max-width:720px}
.tr-game-head{margin-bottom:20px}
.tr-game-head h1,.tr-hub-head h1,.tr-bilan h1{font-size:clamp(24px,3.2vw,34px);letter-spacing:-.025em;line-height:1.2}
.tr-help{margin:-6px 0 18px}
.tr-help .companion-card{margin:0}

.tr-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border-radius:12px;border:1px solid #c9c6ef;background:#fff;color:var(--tr-violet-dark)!important;font-size:15px;font-weight:700;transition:background .15s,border-color .15s,transform .15s}
.tr-button:hover:not(:disabled){background:var(--tr-violet-soft);border-color:var(--tr-violet)}
.tr-primary{background:var(--tr-violet);border-color:var(--tr-violet);color:#fff!important}
.tr-primary:hover:not(:disabled){background:var(--tr-violet-dark);border-color:var(--tr-violet-dark)}
.tr-actions,.tr-final-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}

.tr-feedback{margin-top:16px!important;padding:13px 16px;border-radius:12px;border:1px solid;font-size:15px;line-height:1.55}
.tr-feedback strong{margin-right:4px}
.tr-feedback-success{background:var(--tr-ok-soft);border-color:#a9d1a7;color:#1f4a2b}
.tr-feedback-warning{background:var(--tr-warn-soft);border-color:#ecbf91;color:#5f300c}

/* Accueil de l’entraînement. */
.tr-hub-head{margin-bottom:22px}
.tr-game-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tr-game-list li:last-child:nth-child(odd){grid-column:1 / -1}
.tr-game-card{width:100%;height:100%;display:flex;align-items:center;gap:16px;text-align:left;padding:18px;border-radius:16px;border:1px solid var(--line);background:#fff;box-shadow:0 5px 16px #27234208;transition:transform .15s,border-color .15s,box-shadow .15s}
.tr-game-card:hover{transform:translateY(-2px);border-color:var(--tr-violet);box-shadow:0 10px 25px #42337114}
.tr-game-card.is-next{border:2px solid var(--tr-violet);background:#fbfaff}
.tr-game-number{flex:none;width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:var(--tr-violet-soft);color:var(--tr-violet-dark);font-size:21px;font-weight:800}
.tr-game-card.is-next .tr-game-number{background:var(--tr-violet);color:#fff}
.tr-game-copy{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
.tr-game-copy strong{font-size:18px;line-height:1.3}
.tr-game-copy>span{font-size:14px;color:var(--muted)}
.tr-game-copy small{font-size:13px;color:var(--subtle)}
.tr-game-copy small b{color:var(--tr-ok)}
.tr-badge{align-self:flex-start;font-style:normal;font-size:12px;font-weight:750;padding:2px 9px;border-radius:999px;background:var(--tr-violet);color:#fff}
.tr-game-arrow{font-size:22px;color:var(--tr-violet)}
.tr-hub-lumi{display:flex;align-items:center;gap:14px;margin-top:22px;padding:14px 18px;border-radius:14px;background:#f4f1fd;border:1px solid #e1d9f4;color:#4a5670;font-size:14px}
.tr-hub-lumi .lumi-avatar{width:64px;height:64px;flex:none}

/* Écrans simulés : mail et téléphone. */
.tr-screen{background:#fff;border:1px solid #d5dbe6;border-radius:16px;box-shadow:0 14px 40px #24355414;overflow:hidden;color:#1f2b3d}
.tr-screen-bar{display:flex;align-items:center;gap:8px;padding:9px 16px;background:#eef1f6;border-bottom:1px solid #dde3ee;font-size:13px;color:#56657c}
.tr-avatar{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#dfe7f3;color:#36506f;font-weight:750}

/* Un morceau de message touchable : texte normal, souligné en pointillé pour inviter au clic. */
.tr-spot{display:flex;flex-wrap:wrap;align-items:center;gap:6px;width:100%;text-align:left;background:transparent;border:1px dashed transparent;border-radius:8px;padding:6px 8px;margin:0 -8px;width:calc(100% + 16px);line-height:1.45;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .3s}
.tr-spot-text{text-decoration:underline dotted #b4bccb;text-underline-offset:4px}
.tr-spot:hover{background:#f3f2ff;border-color:#b9b4f2}
.tr-spot.is-found{background:#fff6cf;border:1px solid #e3c34d;box-shadow:0 0 0 4px #ffe27a66}
.tr-spot.is-found .tr-spot-text,.tr-spot.is-revealed .tr-spot-text{text-decoration:none}
.tr-spot.is-revealed{background:#f1f0ff;border:1px dashed var(--tr-violet)}
.tr-spot.is-missed{opacity:.72}
.tr-spot.is-missed .tr-spot-text{text-decoration-color:transparent}
.tr-spot-tag{font-size:12px;font-weight:750;padding:1px 8px;border-radius:999px;background:#7a5a00;color:#fff}
.tr-spot.is-revealed .tr-spot-tag{background:var(--tr-violet)}
@media(prefers-reduced-motion:no-preference){.tr-spot.is-found{animation:tr-glow .9s ease-out}@keyframes tr-glow{0%{box-shadow:0 0 0 0 #ffe27a}60%{box-shadow:0 0 0 10px #ffe27a55}100%{box-shadow:0 0 0 4px #ffe27a66}}}

.tr-hunt{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:20px;align-items:start}
.tr-mail-head{padding:16px 22px 10px;border-bottom:1px solid #edf0f5}
.tr-spot-subject{font-size:20px;font-weight:750;letter-spacing:-.01em}
.tr-mail-from{display:flex;align-items:flex-start;gap:12px;margin-top:8px}
.tr-mail-sender{flex:1;min-width:0;display:flex;flex-direction:column}
.tr-mail-sender small{font-size:12px;color:#7a879b}
.tr-mail-sender .tr-spot:first-of-type{font-weight:700}
.tr-mail-sender .tr-spot+.tr-spot{font-size:14px;color:#566479}
.tr-spot-time{width:auto;margin:0;font-size:13px;color:#6c7a90;flex:none}
.tr-mail-body{padding:14px 22px 20px;font-size:16px}
.tr-mail-body>.tr-spot{margin-top:2px}
.tr-spot-cta{width:auto;margin:12px 0 0;display:inline-flex;background:#1d63c9;color:#fff;border:0;padding:10px 18px;border-radius:9px;font-weight:700}
.tr-spot-cta .tr-spot-text{text-decoration:none}
.tr-spot-cta:hover{background:#174f9f}
.tr-spot-cta.is-missed{opacity:.6}
.tr-link-label{display:block;margin-top:10px;font-size:12px;color:#7a879b}
.tr-spot-link{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#1d63c9}
.tr-phone{max-width:420px;width:100%;justify-self:center;border-radius:28px;border:8px solid #1f2836}
.tr-phone-head{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#f3f5f9;border-bottom:1px solid #e1e6ee}
.tr-phone-from{flex:1;min-width:0;display:flex;flex-direction:column;font-weight:700}
.tr-phone-from small{font-size:12px;font-weight:500;color:#7a879b}
.tr-phone-thread{padding:14px 14px 22px;background:#fff;display:flex;flex-direction:column;gap:8px}
.tr-phone-thread>.tr-spot-time{align-self:center}
.tr-bubble{align-self:flex-start;max-width:96%;background:#e9ecf2;border-radius:18px 18px 18px 6px;padding:8px 18px;font-size:16px}

.tr-hunt-side{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;position:sticky;top:12px}
.tr-counter{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;font-size:18px}
.tr-counter small{font-size:13px;color:var(--tr-warn)}
.tr-dots{display:flex;gap:8px;margin:10px 0 2px}
.tr-dots i{width:100%;height:8px;border-radius:999px;background:#e4e7ee;transition:background .3s}
.tr-dots i.is-on{background:#e3b41b}
.tr-dots i.is-revealed{background:#b4b0ee}
.tr-round-done{margin-top:14px!important;font-weight:750;color:var(--tr-ok)}
.tr-clue-list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px}
.tr-clue-list li{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;background:#fff8dc;border-left:4px solid #e3b41b;font-size:14px}
.tr-clue-list li.is-revealed{background:var(--tr-violet-soft);border-left-color:var(--tr-violet)}
.tr-clue-list em{font-style:normal;color:var(--muted)}
.tr-empty{margin-top:14px!important;font-size:14px;color:var(--muted)}
.tr-hunt-side .tr-actions .tr-button{width:100%}

/* 2 · Vrai ou arnaque ? */
.tr-verdict,.tr-quiz{max-width:720px}
.tr-stats{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;font-size:15px;color:var(--muted)}
.tr-stats strong{color:var(--ink)}
.tr-chrono{font-variant-numeric:tabular-nums;font-weight:750;color:var(--ink);padding:2px 10px;border-radius:8px;background:#eef1f6}
.tr-progress,.tr-timebar{height:8px;border-radius:999px;background:#e4e7ee;margin:10px 0 18px;overflow:hidden}
.tr-progress i,.tr-timebar i{display:block;height:100%;background:var(--tr-violet);border-radius:inherit;transition:width .3s ease}
.tr-timebar i{transition:width .25s linear}
.tr-item{display:flex;flex-direction:column;gap:10px}
.tr-item-kind{align-self:flex-start;font-size:13px;font-weight:750;padding:3px 10px;border-radius:999px;background:#eef1f6;color:#44546b}
.tr-item-context{font-size:15px;color:#4d5a6e;padding:8px 12px;border-left:3px solid #c9c6ef;background:#f8f8fd;border-radius:0 8px 8px 0}
.tr-item-card{position:relative;padding:18px 20px;border-radius:16px;border:1px solid #d5dbe6;background:#fff;box-shadow:0 10px 30px #2435540f;font-size:17px;line-height:1.55}
.tr-item-from{display:block;font-size:14px;font-weight:750;color:#56657c;margin-bottom:6px}
.tr-item-sms .tr-item-card{border-radius:20px 20px 20px 6px;background:#e9ecf2;border-color:#e9ecf2;max-width:560px}
.tr-item-appel .tr-item-card{background:#1f2836;border-color:#1f2836;color:#eef3fa}
.tr-item-appel .tr-item-from{color:#fff;font-size:18px}
.tr-call-status{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#93e0a9;margin-bottom:4px}
.tr-item-affiche .tr-item-card{background:#fff6c9;border:2px solid #e8cf66;border-radius:6px;padding-right:96px;min-height:120px;transform:rotate(-.6deg)}
.tr-item-affiche .tr-item-from{color:#7a6413}
.tr-poster-qr{position:absolute;right:16px;top:50%;width:64px;height:64px;margin-top:-32px;background:repeating-linear-gradient(90deg,#1f2836 0 6px,transparent 6px 12px),repeating-linear-gradient(0deg,#1f2836 0 6px,#fff 6px 12px);background-blend-mode:multiply;border:4px solid #1f2836;border-radius:4px}
.tr-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.tr-choice-button,.tr-sort-button{min-height:60px!important;border-radius:14px;border:2px solid;background:#fff;font-size:18px;font-weight:750;transition:background .15s,transform .15s}
.tr-choice-button.is-safe,.tr-sort-button.is-safe{border-color:#6fae7b;color:var(--tr-ok)!important}
.tr-choice-button.is-scam,.tr-sort-button.is-scam{border-color:#e08e89;color:var(--tr-scam)!important}
.tr-choice-button.is-safe:hover,.tr-sort-button.is-safe:hover,.tr-sort-button.is-safe.is-picked{background:var(--tr-ok-soft)}
.tr-choice-button.is-scam:hover,.tr-sort-button.is-scam:hover,.tr-sort-button.is-scam.is-picked{background:var(--tr-scam-soft)}
.tr-keys{margin-top:10px!important;font-size:13px;color:var(--subtle)}
@media(hover:none){.tr-keys{display:none}}

/* 3 · Rembobiner : une pellicule d’images. */
.tr-film{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.tr-frame{width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;padding:12px;border-radius:14px;border:1px solid #cfd5e2;background:#fff;box-shadow:0 6px 16px #2435540d;transition:border-color .15s,background .15s,opacity .2s}
.tr-frame:hover:not(:disabled){border-color:var(--tr-violet);background:#fbfaff}
.tr-frame:disabled{cursor:default;opacity:1}
.tr-frame-top{display:flex;justify-content:space-between;width:100%;font-size:12px;font-weight:750;color:var(--subtle)}
.tr-frame-icon{font-size:30px;line-height:1}
.tr-frame-text{font-size:14px;line-height:1.45}
.tr-frame.is-tried{border-style:dashed;opacity:.75}
.tr-frame.is-stop{border:2px solid var(--tr-ok);background:var(--tr-ok-soft);opacity:1}
.tr-frame.is-after{opacity:.62;filter:grayscale(1)}
.tr-mark{font-style:normal;font-size:13px;font-weight:750;margin-top:auto;color:var(--muted)}
.tr-mark-ok{color:var(--tr-ok)}
.tr-mark-no{color:var(--tr-warn)}
.tr-subquestion{font-size:22px;margin-top:22px!important}
.tr-options{display:grid;gap:10px;margin-top:14px}
.tr-option{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px 16px;border-radius:12px;border:1px solid #cfd5e2;background:#fff;font-size:16px;transition:border-color .15s,background .15s}
.tr-option:hover:not(:disabled){border-color:var(--tr-violet);background:#fbfaff}
.tr-option:disabled{cursor:default}
.tr-option.is-picked{border:2px solid var(--tr-ok);background:var(--tr-ok-soft)}
.tr-option.is-tried{border-style:dashed;opacity:.7}
.tr-option>span:not(.tr-option-key){flex:1 1 120px;min-width:0}
.tr-option{flex-wrap:wrap}
.tr-option .tr-mark{margin:0 0 0 auto;flex:none}
.tr-option-key{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--tr-violet-soft);color:var(--tr-violet-dark);font-weight:800}
.tr-cut{margin-top:12px!important;font-weight:650;color:var(--tr-ok)}
@media(prefers-reduced-motion:no-preference){.tr-film li{animation:tr-rise .35s ease-out both;animation-delay:calc(var(--i)*70ms)}@keyframes tr-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}

/* 4 · Boîte à trier. */
.tr-mailbox{background:#fff;border:1px solid #d5dbe6;border-radius:16px;overflow:hidden;box-shadow:0 14px 40px #24355414;color:#1f2b3d}
.tr-mailbox-grid{display:grid;grid-template-columns:minmax(230px,320px) minmax(0,1fr);min-height:420px}
.tr-inbox-list{border-right:1px solid #e4e8ef;background:#f8f9fc}
.tr-inbox-list ul{list-style:none;margin:0;padding:6px}
.tr-inbox-item{width:100%;display:flex;flex-direction:column;gap:2px;text-align:left;padding:10px 12px;border:0;border-radius:10px;background:transparent}
.tr-inbox-item:hover{background:#eef1f7}
.tr-inbox-item.is-selected{background:#e3e9ff;box-shadow:inset 3px 0 0 #1d63c9}
.tr-inbox-line{display:flex;justify-content:space-between;gap:8px;font-size:14px}
.tr-inbox-line time{flex:none;font-size:12px;color:#7a879b}
.tr-inbox-subject{font-size:14px;color:#4d5a6e}
.tr-inbox-tags{display:flex;align-items:center;gap:8px;margin-top:4px}
.tr-tag{font-style:normal;font-size:12px;font-weight:750;padding:1px 8px;border-radius:999px;background:#e4e7ee;color:#56657c}
.tr-tag-fiable{background:var(--tr-ok-soft);color:var(--tr-ok)}
.tr-tag-signaler{background:var(--tr-scam-soft);color:var(--tr-scam)}
.tr-inbox-mark{font-size:15px}
.tr-inbox-mark.is-good{color:var(--tr-ok)}
.tr-inbox-mark.is-bad{color:var(--tr-scam)}
.tr-reader{padding:20px 24px;min-width:0}
.tr-reader h2{font-size:21px;letter-spacing:-.01em}
.tr-reader-from{display:flex;align-items:center;gap:12px;margin-top:12px!important}
.tr-reader-from>span:last-child{display:flex;flex-direction:column;min-width:0}
.tr-reader-from small{font-size:13px;color:#6c7a90}
.tr-reader-body{margin-top:16px;font-size:16px;display:grid;gap:8px}
.tr-attachment{justify-self:start;font-size:14px;padding:6px 10px;border-radius:8px;background:#eef1f6;color:#44546b}
.tr-sort{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;padding-top:16px;border-top:1px solid #edf0f5}
.tr-sort-button{font-size:16px}
.tr-inbox-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}
.tr-inbox-count,.tr-inbox-score{font-size:15px;color:var(--muted)}
.tr-inbox-score strong{color:var(--ink)}

/* 5 · Défi final. */
.tr-quiz-ready{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.tr-best{font-size:16px;color:var(--muted)}
.tr-quiz-card{margin-top:14px;padding:20px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px #2435540d}
.tr-quiz-card h2{font-size:21px;line-height:1.35}
.tr-quiz .tr-feedback{margin:0 0 12px!important;font-size:14px;padding:9px 12px}

/* Bilans. */
.tr-bilan{max-width:820px}
.tr-bilan-hero{display:flex;align-items:center;gap:20px;padding:22px;border-radius:18px;background:linear-gradient(135deg,#f4f1fd,#eef7f0);border:1px solid #e1d9f4}
.tr-bilan-lumi{position:relative;flex:none}
.tr-bilan-lumi .lumi-avatar{width:110px;height:110px}
.tr-spark{position:absolute;width:10px;height:10px;border-radius:50%;background:#ffd45c;opacity:0}
.tr-spark.s1{top:8px;left:4px}.tr-spark.s2{top:0;right:10px}.tr-spark.s3{bottom:22px;right:0}
@media(prefers-reduced-motion:no-preference){.tr-spark{animation:tr-spark 1.6s ease-out .2s 2}.tr-spark.s2{animation-delay:.5s}.tr-spark.s3{animation-delay:.8s}@keyframes tr-spark{0%{opacity:0;transform:scale(.3)}40%{opacity:1;transform:scale(1.2)}100%{opacity:0;transform:scale(.6) translateY(-12px)}}}
.tr-score{display:flex;align-items:baseline;gap:6px;margin-top:8px!important}
.tr-score strong{font-size:44px;line-height:1;color:var(--tr-violet-dark)}
.tr-score span{font-size:20px;color:var(--muted)}
.tr-score-detail{font-size:15px;color:#4d5a6e;margin-top:4px!important}
.tr-bilan .companion-card{margin:18px 0 0}
.tr-review,.tr-reflexes{margin-top:22px}
.tr-review h2,.tr-reflexes h2{font-size:20px;margin-bottom:10px}
.tr-review ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.tr-review li{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:10px;background:var(--tr-warn-soft);border-left:4px solid #e0a46a;font-size:15px}
.tr-results li.is-good{background:var(--tr-ok-soft);border-left-color:#6fae7b}
.tr-reflexes ol{list-style:none;padding:0;margin:0;display:grid;gap:8px;counter-reset:tr}
.tr-reflexes li{counter-increment:tr;display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid var(--line);font-size:16px}
.tr-reflexes li:before{content:counter(tr);flex:none;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--tr-ok);color:#fff;font-weight:800;font-size:14px}
@media(prefers-reduced-motion:no-preference){.tr-reflexes li{animation:tr-rise .4s ease-out both;animation-delay:calc(.2s + var(--i)*90ms)}}

@media(max-width:1020px){.tr-film{grid-template-columns:repeat(3,minmax(0,1fr))}}
.tr-inline-note{display:none}
@media(max-width:860px){.tr-hunt{grid-template-columns:1fr}.tr-hunt-side{position:static}.tr-inline-note{display:block;margin:4px 0 6px;padding:8px 10px;border-radius:8px;font-size:14px;line-height:1.45;color:#5f300c;background:var(--tr-warn-soft);border:1px solid #ecbf91}.tr-inline-note.tr-inline-success{color:#1f4a2b;background:var(--tr-ok-soft);border-color:#a9d1a7}}
@media(max-width:760px){
  .training-page{padding:14px 16px 28px}
  .tr-toolbar{padding:6px 6px 6px 12px;margin-bottom:16px}
  .tr-toolbar-brand{font-size:12px}
  .tr-command{padding:6px 10px;font-size:13px}
  .tr-game-list{grid-template-columns:1fr}
  .tr-game-card{padding:14px;gap:12px}
  .tr-game-number{width:40px;height:40px;font-size:18px}
  .tr-game-copy strong{font-size:17px}
  .tr-intro{font-size:15px}
  .tr-mail-head,.tr-mail-body{padding-left:16px;padding-right:16px}
  .tr-mail-from{flex-wrap:wrap}
  .tr-mail-from .tr-spot-time{width:auto;max-width:calc(100% - 42px);margin-left:42px}
  .tr-film{grid-template-columns:1fr}
  .tr-frame{flex-direction:row;flex-wrap:wrap;align-items:center}
  .tr-frame-top{width:auto;flex-direction:column;gap:2px}
  .tr-frame-text{flex:1 1 160px}
  .tr-frame .tr-mark{width:100%}
  .tr-mailbox-grid{grid-template-columns:1fr;min-height:0}
  .tr-inbox-list{border-right:0;border-bottom:1px solid #e4e8ef}
  .tr-reader{padding:16px}
  .tr-inbox-footer{flex-direction:column;align-items:stretch}
  .tr-inbox-footer .tr-button{width:100%}
  .tr-bilan-hero{flex-direction:column;align-items:flex-start;padding:18px}
  .tr-bilan-lumi .lumi-avatar{width:64px;height:64px}
  .tr-bilan-hero{gap:8px}
  .tr-final-actions .tr-button{flex:1 1 100%}
  .tr-page-defi .tr-game-head{margin-bottom:10px}
  .tr-page-defi .tr-game-head h1{font-size:21px}
  .tr-quiz-card{padding:14px;scroll-margin-top:64px}
  .tr-quiz-status{position:sticky;top:0;z-index:2;background:var(--paper);padding-top:8px;margin-top:-8px}
  .tr-quiz-status .tr-timebar{margin-bottom:10px}
  .tr-quiz-card h2{font-size:18px}
  .tr-option{padding:10px 12px;font-size:15px}
}
@media(max-width:420px){
  .tr-toolbar-brand{width:100%}
  .tr-toolbar-nav{width:100%}
  .tr-command{flex:1;justify-content:center}
  .tr-command .lumi-avatar{display:none}
  .tr-choice,.tr-sort{grid-template-columns:1fr}
  .tr-item-affiche .tr-item-card{padding-right:20px;padding-bottom:92px}
  .tr-poster-qr{top:auto;bottom:16px;margin-top:0}
  .tr-hub-lumi{flex-direction:column;align-items:flex-start}
  .tr-spot-subject{font-size:18px}
  .tr-phone{border-width:5px;border-radius:22px}
}
@media(prefers-reduced-motion:reduce){.training-page *{animation:none!important;transition:none!important}.tr-game-card:hover{transform:none}}
