:root{--bg:#080b12;--panel:#111725;--panel2:#171e2f;--text:#f5f7fb;--muted:#929db3;--accent:#8b5cf6;--accent2:#22d3ee;--good:#2dd4bf;--bad:#fb7185;--gold:#fbbf24}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% -10%,#22264a 0,#0b0e18 35%,var(--bg) 70%);color:var(--text);font:15px Inter,system-ui,Segoe UI,sans-serif;min-height:100vh}.shell{max-width:1180px;margin:auto;padding:0 24px}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff12}.brand{font-size:24px;font-weight:900;letter-spacing:-1px}.brand i{font-style:normal;color:#a78bfa}.navlinks{display:flex;gap:24px;color:var(--muted)}button{font:inherit;color:inherit;cursor:pointer}.btn{border:0;border-radius:12px;padding:13px 18px;font-weight:750;background:#20283a}.primary{background:linear-gradient(135deg,var(--accent),#6d5dfc);box-shadow:0 8px 30px #7c3aed35}.ghost{background:transparent;border:1px solid #ffffff18}.hero{padding:82px 0 48px;text-align:center}.eyebrow{display:inline-block;border:1px solid #8b5cf655;background:#8b5cf615;color:#c4b5fd;padding:7px 12px;border-radius:99px;font-size:12px;font-weight:800;letter-spacing:.08em}.hero h1{font-size:clamp(42px,7vw,76px);line-height:.98;margin:22px auto 18px;max-width:850px;letter-spacing:-4px}.gradient{background:linear-gradient(90deg,#c4b5fd,#67e8f9);color:transparent;background-clip:text}.hero p{color:var(--muted);font-size:18px;max-width:650px;margin:0 auto 34px;line-height:1.6}.modes{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:24px 0 55px}.card{background:linear-gradient(145deg,#151b2aee,#0e1320ee);border:1px solid #ffffff12;border-radius:22px;padding:25px;text-align:left;box-shadow:0 18px 50px #0005}.mode{min-height:230px;position:relative;overflow:hidden}.mode:after{content:'';position:absolute;width:180px;height:180px;border-radius:50%;filter:blur(60px);opacity:.25;right:-40px;top:-40px;background:var(--accent)}.mode.casual:after{background:var(--accent2)}.icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:#8b5cf620;font-size:22px}.mode h2{font-size:26px;margin:20px 0 8px}.mode p{color:var(--muted);max-width:420px;line-height:1.5}.mode .btn{margin-top:14px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat strong{font-size:25px;display:block}.stat span{color:var(--muted);font-size:13px}.screen{padding:42px 0}.topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.questionbox{max-width:800px;margin:30px auto}.progress{height:7px;background:#20283a;border-radius:20px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2))}.qmeta{display:flex;justify-content:space-between;color:var(--muted);margin:18px 0}.question{font-size:30px;font-weight:800;line-height:1.25;margin:30px 0}.answers{display:grid;grid-template-columns:1fr 1fr;gap:13px}.answer{padding:20px;border-radius:15px;border:1px solid #ffffff16;background:#141b2a;text-align:left;font-weight:650;transition:.15s}.answer:hover{transform:translateY(-2px);border-color:#8b5cf688}.answer.good{background:#123a36;border-color:var(--good)}.answer.bad{background:#3d1922;border-color:var(--bad)}.versus{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;margin:35px 0}.player{text-align:center}.avatar{width:78px;height:78px;margin:auto;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#6d5dfc,#22d3ee);font-size:28px;font-weight:900}.vs{font-size:28px;font-weight:1000;color:#a78bfa}.rank{color:var(--gold)}.result{text-align:center;max-width:620px;margin:60px auto}.result .big{font-size:68px}.elo{font-size:28px;color:var(--good);font-weight:900}.roomgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.field{margin:14px 0}.field label{display:block;color:var(--muted);font-size:13px;margin-bottom:7px}.field input,.field select{width:100%;background:#0b101b;border:1px solid #ffffff16;color:white;padding:13px;border-radius:10px}.code{font-size:38px;letter-spacing:8px;font-weight:900;color:#c4b5fd}.players{display:grid;gap:9px}.pitem{background:#0c111c;border-radius:11px;padding:12px 14px;display:flex;justify-content:space-between}.footer{text-align:center;color:#667085;padding:45px 0}@media(max-width:700px){.navlinks{display:none}.modes,.answers,.roomgrid,.stats{grid-template-columns:1fr}.hero{padding-top:50px}.hero h1{letter-spacing:-2px}.question{font-size:24px}.versus{gap:12px}.shell{padding:0 15px}}
.navlinks button{border:0;background:none;color:var(--muted);padding:10px}.navlinks button:hover{color:white}.brand{cursor:pointer}.heroactions{display:flex;justify-content:center;gap:10px}.match{text-align:center;padding:120px 0}.match p,.muted{color:var(--muted)}.radar{width:150px;height:150px;border:1px solid #8b5cf655;border-radius:50%;margin:0 auto 28px;display:grid;place-items:center;position:relative;background:radial-gradient(circle,#8b5cf622,transparent 60%);box-shadow:0 0 70px #8b5cf622}.radar:before,.radar:after{content:'';position:absolute;border:1px solid #8b5cf633;border-radius:50%;inset:22px}.radar:after{inset:48px}.radar b{font-size:38px;color:#c4b5fd}.radar i{position:absolute;width:50%;height:1px;background:linear-gradient(90deg,#8b5cf6,transparent);transform-origin:right;left:0;animation:scan 1.2s linear infinite}@keyframes scan{to{transform:rotate(360deg)}}.searchbar{height:5px;max-width:320px;margin:24px auto;background:#171e2f;border-radius:9px;overflow:hidden}.searchbar i{display:block;width:45%;height:100%;background:linear-gradient(90deg,transparent,#8b5cf6,transparent);animation:load 1s infinite}@keyframes load{from{transform:translateX(-100%)}to{transform:translateX(260%)}}.avatar.alt{background:linear-gradient(135deg,#334155,#64748b)}.answer{display:flex;align-items:center;gap:12px}.answer em{font-style:normal;width:28px;height:28px;border-radius:8px;background:#ffffff0c;display:grid;place-items:center;color:#c4b5fd}.feedback{display:flex;gap:12px;align-items:center}.feedback span{flex:1;color:var(--muted)}.finalscore{font-size:34px;display:flex;justify-content:center;gap:22px;margin:18px}.elo.negative{color:var(--bad)}.narrow{max-width:760px;margin:auto}.settings{padding:30px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wide{width:100%;margin-top:14px}.invite{margin-top:24px;padding:18px;border:1px dashed #ffffff22;border-radius:14px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px}.invite span{color:var(--muted)}.invite b{font-size:22px;letter-spacing:4px}.small{font-size:12px;line-height:1.5}.join{text-align:center;margin-top:60px}.join input{display:block;width:260px;max-width:100%;margin:24px auto 12px;background:#0b101b;border:1px solid #ffffff22;color:white;padding:18px;text-align:center;font-size:24px;letter-spacing:7px;border-radius:12px;text-transform:uppercase}.profilehead{display:flex;align-items:center;gap:20px}.profilehead .avatar{margin:0}.profilehead h1{margin:8px 0 2px}.profileStats{margin:18px 0 34px}.history{padding:10px 20px}.history>div{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:10px;padding:15px 4px;border-bottom:1px solid #ffffff0d}.history>div:last-child{border:0}.history span{color:var(--muted)}.win{color:var(--good)}.lose{color:var(--bad)}.reset{margin-top:20px}.leaderboard{padding:10px 18px}.leaderboard>div{display:grid;grid-template-columns:45px 40px 1fr 1fr auto;align-items:center;gap:12px;padding:14px;border-bottom:1px solid #ffffff0d}.leaderboard>div.me{background:#8b5cf617;border:1px solid #8b5cf633;border-radius:12px}.leaderboard em{font-style:normal;color:#c4b5fd;font-weight:800}.miniavatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#20283a;font-weight:800}@media(max-width:700px){.heroactions,.feedback{flex-direction:column}.twocol{grid-template-columns:1fr}.history>div{grid-template-columns:1fr 1fr}.leaderboard>div{grid-template-columns:35px 35px 1fr auto}.leaderboard>div span:nth-of-type(2){display:none}.invite{grid-template-columns:1fr}.profilehead{align-items:flex-start}}
/* V3 */
.timerbar{height:8px;background:#20283a;border-radius:20px;overflow:hidden;margin:10px 0 2px}.timerbar i{display:block;height:100%;background:linear-gradient(90deg,var(--accent2),var(--accent));transition:width .1s linear}.timerbar i.danger{background:var(--bad)}.kbdhint{text-align:center;color:#667085;font-size:12px;margin-top:14px}.badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.badge{padding:7px 10px;border-radius:999px;background:#ffffff0b;border:1px solid #ffffff12;color:#cbd5e1;font-size:12px}.achievement{display:flex;align-items:center;gap:12px;padding:14px;border-bottom:1px solid #ffffff0d}.achievement:last-child{border:0}.achievement .medal{font-size:25px}.achievement.locked{opacity:.35}.categorybar{display:grid;grid-template-columns:130px 1fr 50px;gap:10px;align-items:center;margin:12px 0}.categorybar .track{height:8px;background:#20283a;border-radius:10px;overflow:hidden}.categorybar .track i{height:100%;display:block;background:linear-gradient(90deg,var(--accent),var(--accent2))}.toast{position:fixed;right:20px;bottom:20px;background:#171e2f;border:1px solid #ffffff18;padding:14px 18px;border-radius:12px;box-shadow:0 20px 50px #0008;z-index:5}.streakfire{color:#fb923c}.question-enter{animation:qenter .25s ease-out}@keyframes qenter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* V4 — mode Autour de la table */
.table-mode-card{position:relative;overflow:hidden}.table-mode-card:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 90% 0%,rgba(139,92,246,.14),transparent 40%);pointer-events:none}.table-hero{max-width:760px;margin:0 auto;text-align:center}.table-question{font-size:clamp(1.55rem,3vw,2.45rem);line-height:1.22;margin:28px auto;max-width:900px}.table-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:900px;margin:22px auto}.table-answer{padding:18px;border:1px solid var(--border,#273044);border-radius:14px;background:rgba(255,255,255,.035);text-align:left}.table-answer em{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:10px;border-radius:9px;background:rgba(255,255,255,.07);font-style:normal}.reveal-panel{max-width:900px;margin:24px auto 0;text-align:left;padding:24px;border:1px solid rgba(74,222,128,.25);background:rgba(74,222,128,.06);border-radius:16px}.reveal-panel h3{margin:0 0 8px}.reveal-answer{font-size:1.2rem;font-weight:800;margin-bottom:12px}.explanation{line-height:1.65;color:var(--muted,#aab3c5)}.table-controls{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}.table-progress{text-align:center;color:var(--muted,#aab3c5);margin-bottom:10px}.no-pressure{display:inline-flex;gap:8px;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.05);font-size:.85rem;color:var(--muted,#aab3c5)}
@media(max-width:700px){.table-answers{grid-template-columns:1fr}.table-question{font-size:1.55rem}}

/* V5 */
.solo-card:after{background:#2dd4bf}.solo-explain{margin-top:20px}.practice-ring{--p:0;width:130px;height:130px;border-radius:50%;margin:22px auto;display:grid;place-items:center;background:conic-gradient(var(--good) calc(var(--p)*1%),#20283a 0);position:relative}.practice-ring:after{content:'';position:absolute;inset:10px;border-radius:50%;background:#111725}.practice-ring b{position:relative;z-index:1;font-size:25px}.heroactions{flex-wrap:wrap}.answer:disabled{cursor:default}.answer:disabled:hover{transform:none}
/* V6 — progression, qualité et révision */
.qtools{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.btn.tiny{padding:8px 11px;font-size:12px}.daily-card:after{background:#f59e0b}.review-card:after{background:#22c55e}.library-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:18px;margin-top:10px}.library-stats div{background:#0c111c;border:1px solid #ffffff0d;border-radius:12px;padding:16px}.library-stats b{display:block;font-size:22px;margin-bottom:5px}.library-stats span{color:var(--muted);font-size:12px}.qtools button:disabled{opacity:.5}@media(max-width:700px){.library-stats{grid-template-columns:1fr 1fr}}
/* V7 — saisons & Élite */
.season-card{display:flex;justify-content:space-between;gap:28px;align-items:center;margin:22px 0}.season-card h2{margin:7px 0;font-size:30px}.season-progress{min-width:290px}.season-progress>b,.season-progress>span,.season-progress>small{display:block}.season-progress>span,.season-progress>small{color:var(--muted);margin-top:5px}.season-progress .track,.elite-lock .track{height:8px;background:#161c2d;border-radius:99px;overflow:hidden;margin:12px 0}.season-progress .track i,.elite-lock .track i{display:block;height:100%;background:linear-gradient(90deg,#7c5cff,#d879ff);border-radius:99px}.elite-header{display:flex;gap:16px;align-items:center;margin:25px 0 12px;padding:18px 20px;border:1px solid rgba(216,121,255,.32);border-radius:18px;background:linear-gradient(135deg,rgba(124,92,255,.13),rgba(216,121,255,.07))}.elite-header>span{font-size:36px;color:#d879ff}.elite-header h2,.elite-header p{margin:0}.elite-header p{color:var(--muted);margin-top:4px}.elite-board{border-color:rgba(216,121,255,.28);box-shadow:0 0 40px rgba(124,92,255,.08)}.elite-banner{display:inline-block;padding:10px 15px;border-radius:12px;background:rgba(216,121,255,.12);border:1px solid rgba(216,121,255,.3);color:#e8b2ff;font-weight:800;margin:8px}.elite-lock{margin-top:16px;display:flex;flex-direction:column;gap:5px}.elite-lock span{color:var(--muted)}.season-history>div{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:12px;padding:13px 5px;border-bottom:1px solid rgba(255,255,255,.06)}.season-history>div:last-child{border:0}@media(max-width:700px){.season-card{align-items:flex-start;flex-direction:column}.season-progress{min-width:0;width:100%}.season-history>div{grid-template-columns:1fr 1fr}}
/* V8 — matchmaking et Elo dynamiques */
.player small{display:block;color:var(--muted);margin-top:4px}.ranked-rules{display:flex;gap:14px;align-items:flex-start;margin:18px 0}.ranked-rules b{white-space:nowrap;color:#c4b5fd}.ranked-rules span{color:var(--muted);line-height:1.5}.match:after{content:'Matchmaking élargi progressivement si nécessaire';display:block;color:#667085;font-size:12px;margin-top:14px}@media(max-width:700px){.ranked-rules{flex-direction:column}}

/* V9 — partie personnalisée */
.preset-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.preset{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);color:var(--text,#f5f7ff);padding:10px 14px;border-radius:12px;cursor:pointer;font-weight:700}.preset:hover{background:rgba(255,255,255,.09);transform:translateY(-1px)}.setup-summary{margin-top:16px;padding:13px 15px;border-radius:12px;background:rgba(110,91,255,.09);border:1px solid rgba(139,120,255,.18);color:#cfc9ff;font-size:.9rem}.mode.casual{position:relative;overflow:hidden}.mode.casual:after{content:'RÈGLES LIBRES';position:absolute;top:14px;right:14px;font-size:.64rem;letter-spacing:.12em;font-weight:800;opacity:.55}
/* V10 — entraînement intelligent */
.smart-zone{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.smart-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px}.smart-card h2{margin:5px 0 7px}.smart-card p{margin:0;color:var(--muted);line-height:1.55}.mastery-card{padding:18px 22px}.mastery-row{display:grid;grid-template-columns:minmax(150px,1.2fr) 2fr 52px;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06)}.mastery-row:last-child{border-bottom:0}.mastery-row span{font-weight:700}.mastery-row small{display:block;color:var(--muted);font-weight:400;margin-top:3px}.mastery-row b{text-align:right}.mastery-row .track{height:8px}
@media(max-width:760px){.smart-zone{grid-template-columns:1fr}.smart-card{align-items:flex-start;flex-direction:column}.mastery-row{grid-template-columns:1fr 48px}.mastery-row .track{grid-column:1/-1;grid-row:2}}

/* V12 — profil & paramètres */
.profile-title{display:inline-block;margin:3px 0 8px;padding:5px 9px;border-radius:999px;background:#8b5cf618;border:1px solid #8b5cf63b;color:#c4b5fd;font-size:12px;font-weight:800}.profile-bio{max-width:620px;color:var(--muted);line-height:1.5}.settings-layout{display:grid;grid-template-columns:190px 1fr;gap:20px;align-items:start}.settings-nav{position:sticky;top:20px;display:grid;gap:6px}.settings-nav button{border:0;background:transparent;color:var(--muted);text-align:left;padding:12px 14px;border-radius:10px}.settings-nav button:hover{background:#ffffff09;color:white}.settings-content{display:grid;gap:16px}.setting-section{scroll-margin-top:20px}.setting-section h2{margin-top:0}.toggle{display:flex;gap:10px;align-items:center;padding:11px 0;color:#d8deea}.toggle input{width:18px;height:18px;accent-color:var(--accent)}input[type=range]{width:100%;accent-color:var(--accent)}.account-actions{display:flex;gap:9px;flex-wrap:wrap}.reduced-motion *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}html[data-text=large]{font-size:17px}html[data-text=xlarge]{font-size:19px}html[data-theme=light] body{--bg:#eef2f8;--panel:#fff;--panel2:#f6f8fc;--text:#151927;--muted:#626c80;background:#eef2f8;color:var(--text)}html[data-theme=light] .card{background:#fff;border-color:#1720331c;box-shadow:0 12px 35px #24304a12}html[data-theme=light] .field input,html[data-theme=light] .field select{background:#f7f8fb;color:#171b28;border-color:#17203324}html[data-theme=light] .answer,html[data-theme=light] .library-stats div{background:#f7f8fb;color:#171b28}html[data-theme=light] .nav{border-color:#1720331a}@media(prefers-color-scheme:light){html[data-theme=system] body{--bg:#eef2f8;--panel:#fff;--panel2:#f6f8fc;--text:#151927;--muted:#626c80;background:#eef2f8;color:var(--text)}}@media(max-width:760px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;grid-template-columns:repeat(3,1fr)}.settings-nav button{text-align:center;padding:9px}.profilehead{flex-wrap:wrap}}
/* V13 */
.server-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px 0}.server-strip div{display:flex;flex-direction:column;gap:5px}.server-strip span{color:var(--muted)}.auth-screen{max-width:620px}.server-card{margin-top:14px}.compact{padding:10px 12px}.auth-screen input{width:100%}
@media(max-width:720px){.server-strip{align-items:stretch;flex-direction:column}.nav{gap:8px}.nav>.compact{display:none}}
.online-flow{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:14px 0;color:var(--muted,#aeb8d6);font-size:.95rem}.online-flow b{color:#fff}.answer.selected{outline:2px solid #8b7cff;opacity:.85}.explanation.waiting{border-style:dashed}@media(max-width:640px){.online-flow{align-items:flex-start;flex-direction:column}}

/* V17 — lisibilité du chrono et classement multijoueur */
.online-game{max-width:900px}.online-status{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;margin:20px 0 8px;padding:16px 18px;border:1px solid #ffffff12;border-radius:16px;background:#101624}.online-status>div:first-child{display:grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:10px}.status-label{font-size:11px;font-weight:900;letter-spacing:.09em;color:#aeb8d6}.online-status #onlineTimer{font-size:30px;line-height:1;color:#fff;font-variant-numeric:tabular-nums;min-width:54px;text-align:right}.online-status #onlineTimer small{font-size:13px;color:var(--muted);margin-left:2px}.online-status #timerCaption,.answer-progress span{color:var(--muted);font-size:13px}.answer-progress{display:flex;align-items:baseline;gap:7px;white-space:nowrap}.answer-progress strong{font-size:20px;color:#c4b5fd}.online-status.is-reveal{border-color:#2dd4bf35;background:#2dd4bf0b}.online-timer-track{height:6px;background:#20283a;border-radius:99px;overflow:hidden;margin-bottom:18px}.online-timer-track i{display:block;height:100%;background:linear-gradient(90deg,var(--accent2),var(--accent));transition:width .35s linear}.online-timer-track i.danger{background:var(--bad)}.reveal-box{border-color:#2dd4bf35;background:#2dd4bf0a}.online-scoreboard{margin-top:24px;border:1px solid #ffffff12;border-radius:18px;overflow:hidden;background:#0d1320}.scoreboard-head{display:flex;justify-content:space-between;align-items:end;gap:12px;padding:16px 18px;border-bottom:1px solid #ffffff0d}.scoreboard-head>div{display:grid;gap:3px}.scoreboard-head span{font-size:10px;font-weight:900;letter-spacing:.1em;color:#a78bfa}.scoreboard-head b{font-size:18px}.scoreboard-head small{color:var(--muted)}.score-list{display:grid}.score-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 18px;border-bottom:1px solid #ffffff09}.score-row:last-child{border-bottom:0}.score-row.me{background:#8b5cf612}.score-rank{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:#ffffff09;color:var(--muted);font-weight:800}.score-row:nth-child(1) .score-rank{color:var(--gold)}.score-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.score-name em{font-style:normal;font-size:10px;padding:3px 6px;border-radius:99px;background:#8b5cf625;color:#c4b5fd;margin-left:6px}.score-row>strong{font-variant-numeric:tabular-nums;font-size:16px}.score-row>strong small{font-size:11px;color:var(--muted);font-weight:600}@media(max-width:640px){.online-status{grid-template-columns:1fr}.answer-progress{justify-content:space-between}.online-status>div:first-child{grid-template-columns:1fr auto}.online-status #timerCaption{grid-column:1/-1}.scoreboard-head{align-items:flex-start;flex-direction:column}.score-row{padding:11px 12px}}
.ranked-result{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0;padding:20px 24px}.ranked-result b{font-size:1.8rem}.ranked-result span{color:var(--muted)}

/* V19 — refonte UX / accueil / profil / stats / classement */
:root{--surface:#0d1320;--surface2:#121a2a;--line:rgba(255,255,255,.09)}
body{background:radial-gradient(circle at 48% -15%,#252852 0,#0b0f1a 34%,#070a11 72%);background-attachment:fixed}
.shell{max-width:1240px}.nav{height:72px;position:relative;z-index:3}.navlinks{gap:5px;padding:5px;background:#ffffff08;border:1px solid #ffffff0a;border-radius:14px}.navlinks button{padding:9px 14px;border-radius:10px}.navlinks button.active,.navlinks button:hover{background:#ffffff0b;color:#fff}.nav-account{display:flex;align-items:center;gap:8px}.account-pill{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#ffffff07;border-radius:14px;padding:7px 10px;text-align:left}.account-pill>span:last-child{display:grid;gap:1px}.account-pill small{font-size:11px;color:var(--muted)}.account-avatar{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));font-weight:900}.icon-btn{width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:#ffffff06}.btn{transition:transform .15s,border-color .15s,background .15s;min-height:44px}.btn:hover,.round-go:hover{transform:translateY(-1px)}.btn.xl{padding:15px 22px;font-size:16px}.card{box-shadow:0 16px 45px #0003}
.dashboard-hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:28px;align-items:center;padding:58px 0 34px}.hero-copy h1{font-size:clamp(42px,6vw,70px);line-height:1;margin:18px 0;letter-spacing:-3.5px;max-width:760px}.hero-copy>p{font-size:17px;line-height:1.65;color:var(--muted);max-width:650px}.hero-copy .heroactions{justify-content:flex-start;margin-top:28px;flex-wrap:wrap}.quick-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.quick-links button,.text-btn,.focus-panel button{border:0;background:transparent;color:var(--muted);padding:8px 4px}.quick-links button:hover,.text-btn:hover,.focus-panel button:hover{color:#fff}.rank-panel{padding:22px}.rank-panel-top{display:flex;gap:15px;align-items:center}.rank-orb{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#8b5cf633,#22d3ee22);border:1px solid #a78bfa44;color:#ddd6fe;font-size:25px;font-weight:950}.rank-panel-top small,.side-label{font-size:10px;letter-spacing:.12em;color:#8f9ab1;font-weight:900}.rank-panel-top h2{margin:4px 0 2px;font-size:25px}.rank-panel-top b{color:#c4b5fd}.rank-meter{margin-top:20px}.rank-meter>span,.rank-meter>b{font-size:12px}.rank-meter>b{float:right}.track{height:7px;background:#20283a;border-radius:99px;overflow:hidden}.track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--accent),var(--accent2))}.rank-meter .track{clear:both;margin-top:9px}.rank-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.rank-mini div{text-align:center;background:#ffffff05;border-radius:12px;padding:11px 6px}.rank-mini strong,.rank-mini span{display:block}.rank-mini strong{font-size:18px}.rank-mini span{font-size:10px;color:var(--muted);margin-top:3px}.section-head,.section-title,.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.section-head{margin:26px 0 14px}.section-head h2,.section-title h2{margin:6px 0 0}.section-head>span,.section-title>span,.page-heading p{color:var(--muted)}.mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.game-mode{position:relative;min-height:255px;padding:21px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(150deg,#141b2a,#0c111d);overflow:hidden;transition:transform .18s,border-color .18s}.game-mode:hover{transform:translateY(-3px);border-color:#8b5cf650}.game-mode.ranked-mode{background:radial-gradient(circle at 90% 0,#8b5cf627,transparent 48%),linear-gradient(150deg,#17182e,#0d111d)}.mode-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;background:#ffffff09;font-size:20px}.mode-tag{display:block;color:#9aa6bd;font-size:10px;letter-spacing:.11em;font-weight:900;margin-top:18px}.game-mode h3{font-size:21px;margin:8px 0}.game-mode p{color:var(--muted);line-height:1.5;margin:0}.mode-foot{position:absolute;left:21px;right:21px;bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#9aa6bd;font-size:12px}.round-go{width:38px;height:38px;border-radius:12px;border:1px solid #ffffff12;background:#ffffff0a;font-size:19px}.home-lower{display:grid;grid-template-columns:1.3fr .9fr .8fr;gap:14px;margin:24px 0}.daily-panel{display:flex;align-items:center;justify-content:space-between;gap:15px}.daily-panel h2{margin:7px 0}.daily-panel p{margin:0;color:var(--muted)}.progress-panel{display:flex;align-items:center;gap:14px}.progress-panel>div:last-child{flex:1}.progress-panel span,.progress-panel b{display:block}.progress-panel span{font-size:11px;color:var(--muted);font-weight:800}.progress-panel .track{margin-top:8px}.level-badge{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:#8b5cf61c;border:1px solid #8b5cf642;font-size:21px;font-weight:900}.focus-panel{display:flex;flex-direction:column;justify-content:center}.focus-panel>span{font-size:11px;color:var(--muted)}.focus-panel>b{font-size:19px;margin:4px 0}.focus-panel button{text-align:left;padding:4px 0;color:#c4b5fd}
.page-heading{padding:8px 0 26px}.page-heading h1{font-size:42px;margin:7px 0 5px;letter-spacing:-1.5px}.page-heading p{margin:0}.profile-cover{min-height:230px;border:1px solid var(--line);border-radius:24px;padding:28px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;background:radial-gradient(circle at 82% 0,#22d3ee1c,transparent 34%),radial-gradient(circle at 10% 0,#8b5cf62b,transparent 45%),#101625}.profile-identity{display:flex;align-items:center;gap:20px;min-width:0}.profile-avatar{width:96px;height:96px;flex:0 0 auto;font-size:34px;border:4px solid #ffffff0d}.profile-copy{min-width:0}.profile-copy h1{font-size:38px;margin:8px 0}.profile-copy>p{color:var(--muted);max-width:610px;margin:10px 0 0}.profile-chips{display:flex;gap:7px;flex-wrap:wrap}.profile-chips span{padding:5px 8px;border-radius:8px;background:#ffffff09;color:#cbd5e1;font-size:11px}.profile-actions{display:flex;gap:8px;flex-wrap:wrap}.profile-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0 26px}.profile-kpis>div,.metric-card{padding:19px;border:1px solid var(--line);border-radius:17px;background:#0e1421}.profile-kpis span,.profile-kpis small,.metric-card span,.metric-card small{display:block;color:var(--muted);font-size:11px}.profile-kpis strong,.metric-card strong{display:block;font-size:28px;margin:5px 0}.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px}.profile-main{display:grid;gap:25px}.profile-side{display:grid;align-content:start;gap:12px}.season-showcase{padding:23px}.season-numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:22px 0}.season-numbers div{padding:12px;background:#ffffff05;border-radius:12px}.season-numbers strong,.season-numbers span{display:block}.season-numbers strong{font-size:21px}.season-numbers span{font-size:11px;color:var(--muted)}.modern-history>div{grid-template-columns:1.2fr .8fr .8fr .8fr 1fr;align-items:center}.modern-history em{font-style:normal;color:#c4b5fd}.modern-history small{text-align:right;color:var(--muted)}.empty-state{display:flex!important;flex-direction:column;gap:5px!important;text-align:center!important;padding:28px!important;color:var(--muted)}.empty-state b{color:var(--text)}.side-card{padding:18px}.side-card>.side-label{display:block;margin-bottom:14px}.level-ring{width:92px;height:92px;border-radius:50%;margin:4px auto 12px;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#141b2a 55%,transparent 57%),conic-gradient(var(--accent) 55%,#20283a 0)}.level-ring strong{font-size:28px}.level-ring span{font-size:10px;color:var(--muted)}.side-card>button,.side-static{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;border-top:1px solid #ffffff0b;background:transparent;padding:12px 2px;color:var(--text)}.side-card>button span,.side-static span{color:var(--muted)}.achievement-count{display:flex;align-items:baseline;gap:4px}.achievement-count strong{font-size:28px}.achievement-count span{color:var(--muted)}.mini-achievements{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}.mini-achievements span{display:grid;place-items:center;aspect-ratio:1;border-radius:10px;background:#ffffff08}.mini-achievements .locked{filter:grayscale(1);opacity:.25}
.stats-hero-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.metric-card.primary-metric{background:radial-gradient(circle at 100% 0,#8b5cf62c,transparent 55%),#111626}.stats-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;margin-bottom:18px}.stat-section{padding:22px}.category-stats{display:grid;gap:15px;margin-top:20px}.category-stats>div{display:grid;grid-template-columns:150px 1fr 48px;gap:12px;align-items:center}.category-stats>div>div:first-child{display:grid}.category-stats span{font-size:11px;color:var(--muted)}.category-stats strong{text-align:right}.insight-card{text-align:center}.insight-card .side-label{text-align:left;display:block}.insight-icon{width:70px;height:70px;border-radius:22px;margin:22px auto 12px;display:grid;place-items:center;background:#8b5cf61b;border:1px solid #8b5cf63c;font-size:30px}.insight-card>b{font-size:22px}.insight-card p{color:var(--muted);line-height:1.5}.form-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.form-strip span{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-weight:900}.win-dot{background:#2dd4bf20;color:var(--good);border:1px solid #2dd4bf38}.lose-dot{background:#fb718518;color:var(--bad);border:1px solid #fb718535}
.leader-self{min-width:160px;padding:13px 16px;border:1px solid var(--line);border-radius:14px;background:#ffffff05}.leader-self span,.leader-self b,.leader-self strong{display:block}.leader-self span{font-size:9px;letter-spacing:.12em;color:var(--muted)}.leader-self b{margin:5px 0}.leader-self strong{color:#c4b5fd}.leader-tabs{display:flex;gap:6px;padding:5px;width:max-content;background:#ffffff07;border:1px solid var(--line);border-radius:13px}.leader-tabs button{border:0;background:transparent;color:var(--muted);padding:9px 15px;border-radius:9px}.leader-tabs button.active{background:#ffffff0c;color:#fff}.leader-tabs button:disabled{opacity:.35;cursor:not-allowed}.podium{display:flex;align-items:flex-end;justify-content:center;gap:16px;min-height:210px;padding:28px 0}.podium-player{width:150px;text-align:center;padding:16px;border-radius:18px 18px 8px 8px;background:#ffffff05;border:1px solid var(--line)}.podium-player.first{padding-top:27px;background:linear-gradient(#8b5cf618,#ffffff05);border-color:#8b5cf63b}.podium-player>span{font-size:11px;color:var(--muted)}.podium-player>div{width:52px;height:52px;border-radius:15px;margin:8px auto;display:grid;place-items:center;background:linear-gradient(135deg,#8b5cf6,#22d3ee);font-weight:900;font-size:20px}.podium-player b,.podium-player strong{display:block}.podium-player strong{color:#c4b5fd;margin-top:4px}.leader-section{margin-top:6px}.leader-table{padding:8px 14px;margin-top:12px}.leader-row{display:grid;grid-template-columns:70px minmax(170px,1.4fr) 1fr 90px 90px;gap:12px;align-items:center;padding:13px 10px;border-bottom:1px solid #ffffff0a}.leader-row:last-child{border-bottom:0}.leader-row.me{background:#8b5cf613;border:1px solid #8b5cf635;border-radius:12px}.leader-row>em{text-align:right;font-style:normal;font-weight:900;color:#c4b5fd}.leader-head{font-size:10px;letter-spacing:.08em;color:var(--muted);font-weight:900}.leader-user{display:flex;align-items:center;gap:10px;min-width:0}.leader-user i{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#20283a;font-style:normal;font-weight:900;flex:0 0 auto}.leader-user strong{overflow:hidden;text-overflow:ellipsis}.leader-user small{font-size:9px;color:#c4b5fd;background:#8b5cf620;padding:3px 6px;border-radius:99px}.elite-progress{display:grid;gap:10px;margin-top:16px}.elite-progress>span{color:var(--muted);font-size:12px}
@media(max-width:980px){.dashboard-hero{grid-template-columns:1fr}.rank-panel{max-width:none}.mode-grid{grid-template-columns:1fr 1fr}.home-lower{grid-template-columns:1fr 1fr}.daily-panel{grid-column:1/-1}.profile-layout,.stats-layout{grid-template-columns:1fr}.profile-side{grid-template-columns:repeat(3,1fr)}.leader-row{grid-template-columns:55px minmax(140px,1.5fr) 1fr 75px}.leader-row>span:nth-child(4),.leader-head>span:nth-child(4){display:none}}
@media(max-width:720px){.shell{padding:0 14px}.nav{height:auto;min-height:66px;gap:8px}.navlinks{position:fixed;left:12px;right:12px;bottom:10px;z-index:20;justify-content:space-around;background:#0c111df2;backdrop-filter:blur(16px);box-shadow:0 12px 35px #0008}.navlinks button{font-size:12px;padding:10px 8px}.account-pill>span:last-child,.icon-btn{display:none}.dashboard-hero{padding-top:34px}.hero-copy h1{font-size:43px;letter-spacing:-2px}.mode-grid,.home-lower,.profile-kpis,.stats-hero-grid{grid-template-columns:1fr 1fr}.profile-cover{align-items:flex-start;flex-direction:column}.profile-identity{align-items:flex-start}.profile-avatar{width:76px;height:76px}.profile-copy h1{font-size:30px}.profile-actions{width:100%}.profile-actions .btn{flex:1}.profile-side{grid-template-columns:1fr}.season-numbers{grid-template-columns:1fr 1fr}.modern-history>div{grid-template-columns:1fr 1fr}.modern-history small{display:none}.category-stats>div{grid-template-columns:110px 1fr 42px}.page-heading{align-items:flex-start;flex-direction:column}.leader-self{width:100%}.podium{gap:7px}.podium-player{width:31%;padding:12px 5px}.leader-row{grid-template-columns:45px minmax(120px,1fr) 70px}.leader-row>span:nth-child(3),.leader-head>span:nth-child(3){display:none}.footer{padding-bottom:100px}}
@media(max-width:480px){.mode-grid,.profile-kpis,.stats-hero-grid,.home-lower{grid-template-columns:1fr}.daily-panel{grid-column:auto;align-items:flex-start;flex-direction:column}.profile-identity{flex-direction:column}.profile-cover{padding:20px}.hero-copy .heroactions{flex-direction:column}.hero-copy .heroactions .btn{width:100%}.section-head{align-items:flex-start;flex-direction:column}.category-stats>div{grid-template-columns:1fr 42px}.category-stats>div .track{grid-column:1/-1;grid-row:2}.podium-player>div{width:42px;height:42px}.leader-table{padding:6px}.leader-row{padding:11px 5px;gap:6px}}

/* V20 — matchmaking classé réparé */
.matchmaking-screen{display:grid;place-items:center;min-height:620px}.matchmaking-card{text-align:center;max-width:620px;width:100%;padding:48px 42px}.matchmaking-card h1{margin:10px 0 12px;font-size:clamp(32px,5vw,52px)}.matchmaking-pulse{width:88px;height:88px;margin:0 auto 22px;border-radius:28px;display:grid;place-items:center;font-size:38px;background:linear-gradient(145deg,var(--accent),#7c3aed);box-shadow:0 0 0 0 rgba(124,58,237,.35);animation:mmPulse 1.7s infinite}.matchmaking-card.found .matchmaking-pulse{animation:none}.search-status{display:flex;justify-content:center;align-items:center;gap:10px;margin:28px 0 20px;padding:14px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.025)}.search-dot{width:10px;height:10px;border-radius:50%;background:#22c55e;box-shadow:0 0 12px #22c55e;animation:mmBlink 1s infinite}.match-search-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}.match-search-meta>div{padding:15px 8px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid var(--border)}.match-search-meta span{display:block;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;margin-bottom:6px}.match-search-meta b{font-size:18px}@keyframes mmPulse{70%{box-shadow:0 0 0 20px rgba(124,58,237,0)}100%{box-shadow:0 0 0 0 rgba(124,58,237,0)}}@keyframes mmBlink{50%{opacity:.35}}@media(max-width:600px){.matchmaking-screen{min-height:0}.matchmaking-card{padding:30px 18px}.match-search-meta{grid-template-columns:1fr}.matchmaking-pulse{width:72px;height:72px;border-radius:22px}}
@media(prefers-reduced-motion:reduce){.matchmaking-pulse,.search-dot{animation:none}}

/* V70 — objectifs, duel quotidien, signalement */
.daily-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:18px}.objective-row{display:grid;grid-template-columns:1fr 220px;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line,rgba(255,255,255,.08))}.objective-row:last-child{border-bottom:0}.objective-row.done{opacity:.65}.objective-row small{display:block;margin-top:4px;opacity:.65}.objective-progress>span{display:block;text-align:right;font-size:.82rem;margin-bottom:6px}.daily-streak{font-size:4rem;font-weight:900;line-height:1}.daily-best{display:flex;flex-direction:column;gap:4px;margin-top:16px}.daily-result-score{font-size:1.35rem;font-weight:800;margin:12px 0}.report-overlay{position:fixed;inset:0;background:rgba(4,7,14,.78);display:grid;place-items:center;z-index:9999;padding:20px;backdrop-filter:blur(8px)}.report-dialog{width:min(620px,100%);padding:24px}.report-dialog h2{font-size:1.05rem;line-height:1.5}.report-reasons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.report-reasons label{padding:12px;border:1px solid var(--line,rgba(255,255,255,.1));border-radius:12px;cursor:pointer}.report-dialog textarea{width:100%;min-height:90px;resize:vertical;padding:12px;border-radius:12px;background:var(--panel,#111827);color:inherit;border:1px solid var(--line,rgba(255,255,255,.12))}.answer.good{animation:v70good .28s ease}.answer.bad{animation:v70bad .28s ease}@keyframes v70good{50%{transform:scale(1.015)}}@keyframes v70bad{25%,75%{transform:translateX(-4px)}50%{transform:translateX(4px)}}@media(max-width:800px){.daily-grid{grid-template-columns:1fr}.objective-row{grid-template-columns:1fr}.objective-progress>span{text-align:left}.report-reasons{grid-template-columns:1fr}}


/* V71 */
.v71-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.v71-card{padding:22px}.bigtrack{height:12px;margin:14px 0}.trophy-section{margin-top:18px;padding:22px}.badge-shelf{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.badge-tile{min-height:92px;border:1px solid var(--border);border-radius:16px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;text-align:center;padding:10px}.badge-tile span{font-size:28px}.badge-tile.locked{opacity:.3;filter:grayscale(1)}.social-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.social-grid>.card{padding:22px}.social-search{display:flex;gap:10px;margin:14px 0}.social-search input{flex:1}.social-list{display:flex;flex-direction:column;gap:9px}.social-row{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--border);border-radius:14px}.social-row>div:nth-of-type(2),.social-row>div:first-of-type:not(.presence):not(.avatar){flex:1}.social-row small{display:block;color:var(--muted);margin-top:3px}.small-avatar{width:38px;height:38px;font-size:14px}.presence{width:9px;height:9px;border-radius:50%;background:#68707d;flex:none}.presence.online{background:#40d685;box-shadow:0 0 0 4px rgba(64,214,133,.1)}.daily-history-row{display:grid;grid-template-columns:1fr auto auto;gap:16px;padding:10px 0;border-bottom:1px solid var(--border)}.daily-history-row:last-child{border-bottom:0}.season-reward{display:flex;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--border);border-radius:14px;margin-top:12px}@media(max-width:900px){.v71-grid,.social-grid{grid-template-columns:1fr}.badge-shelf{grid-template-columns:repeat(3,1fr)}}

/* V72 - securite, lancement public et exploitation */
.btn.danger{border-color:rgba(220,70,70,.45);color:#ff8585;background:rgba(120,25,25,.12)}
.security-row,.admin-report{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line,#26324a)}
.security-row small,.admin-report small{margin-left:auto;color:var(--muted,#8d98ad)}
.admin-report{align-items:flex-start;flex-direction:column}.admin-report small{margin-left:0}.admin-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.admin-kpis .card{display:flex;flex-direction:column;gap:7px}.admin-kpis b{font-size:28px}.icon-btn{width:34px;height:34px;border-radius:9px;border:1px solid var(--line,#2b3651);background:transparent;color:inherit;cursor:pointer}.text-btn.wide{width:100%;text-align:center;margin-top:6px}

.site-footer{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;padding:28px 0 8px;color:var(--muted,#8d98ad)}.site-footer button{background:none;border:0;color:inherit;cursor:pointer}.site-footer button:hover{text-decoration:underline}
