:root{--bg:#0b0d12;--panel:#11141b;--panel2:#161a23;--line:#242a36;--text:#f4f7fb;--muted:#8f98a9;--accent:#7c5cff;--accent2:#9b88ff;--good:#31d58a;--danger:#ff6678;--warn:#f4bd50;--r:18px;--shadow:0 18px 50px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:19px;letter-spacing:-.4px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--accent);font-size:14px;letter-spacing:-.7px;color:#fff}.public-header{max-width:1180px;margin:auto;height:76px;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.public-header nav{display:flex;align-items:center;gap:24px;color:#c7ceda}.public-header nav>a:not(.button):hover{color:#fff}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border:0;border-radius:12px;background:var(--accent);color:#fff;font-weight:800;transition:.18s}.button:hover{background:var(--accent2);transform:translateY(-1px)}.button.small{min-height:38px;padding:0 14px;border-radius:10px;font-size:14px}.button.ghost{background:transparent;border:1px solid var(--line);color:#d8deea}.button.ghost:hover{background:var(--panel2);border-color:#343d4e}.button.soft{background:#211b41;color:#c9c0ff}.button.danger{background:#3a1820;color:#ff96a3}.button.full{width:100%}.link{color:#b4a7ff;font-weight:700}.muted{color:var(--muted)}
.hero{max-width:1180px;margin:0 auto;padding:90px 24px 70px;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.eyebrow{font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.15em;color:#a997ff}.hero h1{font-size:clamp(46px,7vw,82px);line-height:.98;letter-spacing:-.065em;margin:14px 0 24px;max-width:850px}.hero p{font-size:20px;color:#aeb7c6;max-width:640px}.hero-actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.hero-card{background:linear-gradient(180deg,#151823,#10131a);border:1px solid var(--line);border-radius:28px;padding:20px;box-shadow:var(--shadow)}.hero-card .mock-post{margin-top:14px}.hero-card-head{display:flex;align-items:center;justify-content:space-between}.online{font-size:14px;color:var(--good);font-weight:800}.feature-strip{max-width:1180px;margin:0 auto 90px;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature{padding:24px;border-top:1px solid var(--line)}.feature strong{display:block;font-size:18px;margin-bottom:6px}.feature p{color:var(--muted);margin:0}.landing-bottom{max-width:1180px;margin:0 auto;padding:80px 24px;border-top:1px solid var(--line);text-align:center}.landing-bottom h2{font-size:42px;letter-spacing:-.04em;margin:0 0 12px}
.auth-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-aside{padding:60px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 20% 20%,#2b2364 0,transparent 35%),#0d1016}.auth-aside h1{font-size:58px;line-height:1.02;letter-spacing:-.055em;max-width:560px;margin:40px 0 0}.auth-aside p{color:#aab3c1;max-width:520px;font-size:18px}.auth-main{display:grid;place-items:center;padding:30px}.auth-box{width:min(430px,100%)}.auth-box h2{font-size:34px;letter-spacing:-.04em;margin:0 0 8px}.auth-box>p{color:var(--muted);margin-top:0}.form-stack{display:grid;gap:14px;margin-top:28px}.field{display:grid;gap:7px}.field label{font-size:14px;font-weight:800;color:#c7ceda}.input,textarea.input,select.input{width:100%;background:#11151d;border:1px solid var(--line);border-radius:12px;color:#fff;padding:12px 13px;outline:none;transition:.15s}.input{min-height:46px}.input:focus{border-color:#6f5be4;box-shadow:0 0 0 3px rgba(124,92,255,.13)}textarea.input{min-height:110px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-note{margin-top:20px;text-align:center;color:var(--muted)}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;padding:22px 16px;border-right:1px solid var(--line);background:#0d1016;display:flex;flex-direction:column;z-index:30}.sidebar-brand{padding:5px 10px 25px}.side-nav{display:grid;gap:4px}.side-nav>a{min-height:46px;padding:0 12px;border-radius:11px;display:flex;align-items:center;gap:12px;color:#9ca6b5;font-weight:750}.side-nav>a:hover{background:#141821;color:#fff}.side-nav>a.is-active{background:#181b28;color:#fff}.side-nav>a.is-active svg{color:#9885ff}.nav-badge{margin-left:auto;display:grid;place-items:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:var(--accent);font-size:14px;color:#fff}.sidebar-spacer{flex:1}.team-switch{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:13px;margin-bottom:12px}.team-switch:hover{background:var(--panel)}.team-switch small{display:block;color:var(--muted);font-size:13.5px;text-transform:uppercase;font-weight:900}.team-switch strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.mini-logo{width:36px;height:36px;border-radius:10px;background:#211d3e;color:#b8aaff;display:grid;place-items:center;font-size:14px;font-weight:900}.sidebar-user{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding-top:14px;margin-top:14px;border-top:1px solid var(--line)}.sidebar-user strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user>div>a{display:block;color:var(--muted);font-size:14px}.icon-link{position:relative;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:#a9b2c0}.icon-link:hover{background:var(--panel2);color:#fff}.dot{position:absolute;right:8px;top:7px;width:7px;height:7px;border-radius:50%;background:var(--danger);border:2px solid #0d1016}.main{margin-left:248px;min-height:100vh;padding:34px 36px 90px}.mobile-top,.bottom-nav{display:none}.page-head{max-width:1120px;margin:0 auto 24px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.page-head h1{font-size:29px;line-height:1.1;letter-spacing:-.035em;margin:0}.page-head p{color:var(--muted);margin:7px 0 0}
.content{max-width:1120px;margin:0 auto}.feed-layout{display:grid;grid-template-columns:minmax(0,680px) 330px;gap:26px;align-items:start}.stack{display:grid;gap:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:18px}.card.flat{background:transparent}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 13px}.section-title h2,.section-title h3{margin:0;font-size:17px;letter-spacing:-.02em}.section-title a{font-size:14px;color:#a99cff;font-weight:800}.composer{padding:16px}.composer-top{display:flex;gap:12px}.composer textarea{flex:1;border:0;background:transparent;color:#fff;resize:none;min-height:66px;padding:7px 0;outline:none}.composer textarea::placeholder{color:#717b8d}.composer-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px}.post{padding:18px}.post-head{display:flex;align-items:center;gap:10px}.post-meta{flex:1;min-width:0}.post-meta strong{display:block}.post-meta span{color:var(--muted);font-size:14px}.post-body{font-size:15px;margin:14px 0;white-space:pre-wrap;overflow-wrap:anywhere}.post-team{display:inline-flex;align-items:center;gap:6px;color:#b7abff;font-size:14px;font-weight:800}.post-actions{display:flex;gap:5px;padding-top:10px;border-top:1px solid var(--line)}.post-actions form{display:inline}.action-btn{border:0;background:transparent;color:#8f99a9;padding:7px 10px;border-radius:9px;font-weight:800;font-size:14px}.action-btn:hover,.action-btn.active{background:#1c2130;color:#fff}.comments{display:grid;gap:8px;margin-top:10px}.comment{display:flex;gap:8px;font-size:14px}.comment-bubble{background:#171b24;border-radius:12px;padding:8px 10px;flex:1}.comment-bubble strong{margin-right:5px}.comment-form{display:flex;gap:8px;margin-top:10px}.comment-form .input{min-height:38px;padding:8px 10px}.comment-form .button{min-height:38px;padding:0 13px}.avatar{flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#6e55df,#b160ef);display:grid;place-items:center;font-weight:900;color:#fff;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.tiny{width:34px;height:34px;font-size:14px}.avatar.big{width:72px;height:72px;font-size:22px}.avatar.huge{width:98px;height:98px;font-size:31px;border:4px solid var(--panel)}
.right-card{padding:17px}.suggestion{display:flex;gap:10px;align-items:center;padding:10px 0}.suggestion+.suggestion{border-top:1px solid var(--line)}.suggestion-info{flex:1;min-width:0}.suggestion-info strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suggestion-info span{font-size:14px;color:var(--muted)}.chip-row{display:flex;gap:6px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border:1px solid #2a3040;border-radius:999px;background:#151923;color:#b7c0ce;font-size:14px;font-weight:800}.chip.accent{border-color:#4e418d;background:#211d3f;color:#c6bcff}.chip.good{border-color:#244f42;background:#142a24;color:#75dfa9}.empty{text-align:center;padding:38px 20px;color:var(--muted)}.empty strong{display:block;color:#fff;font-size:17px;margin-bottom:5px}
.tabs{display:flex;gap:5px;padding:5px;background:#11151d;border:1px solid var(--line);border-radius:13px;width:max-content;max-width:100%;overflow:auto}.tabs a{padding:8px 13px;border-radius:9px;font-size:14px;font-weight:850;color:#919bab;white-space:nowrap}.tabs a.active{background:#222737;color:#fff}.toolbar{display:flex;gap:10px;align-items:center;margin:16px 0}.search-box{flex:1;position:relative}.search-box svg{position:absolute;left:13px;top:13px;color:#6f788a}.search-box .input{padding-left:42px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.person-card,.team-card{padding:17px}.person-head,.team-head{display:flex;gap:12px;align-items:center}.person-head>div,.team-head>div{flex:1;min-width:0}.person-head h3,.team-head h3{margin:0;font-size:16px}.person-head p,.team-head p{margin:2px 0 0;color:var(--muted);font-size:14px}.card-bio{color:#b8c0cc;font-size:14px;min-height:40px;margin:12px 0}.card-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:13px}.status{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:800}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:#6d7686}.status.looking:before{background:var(--good)}
.profile-hero{position:relative;padding-top:116px;overflow:hidden}.profile-cover{position:absolute;inset:0 0 auto;height:150px;background:radial-gradient(circle at 20% 30%,#46359d,transparent 42%),linear-gradient(120deg,#171c2b,#12151c)}.profile-content{position:relative;display:flex;gap:17px;align-items:flex-end}.profile-main{flex:1}.profile-main h1{margin:0;font-size:27px}.profile-main p{color:var(--muted);margin:3px 0}.profile-actions{display:flex;gap:8px}.bio{margin:18px 0;color:#c4cbd6}.stat-row{display:flex;gap:25px;border-top:1px solid var(--line);padding-top:15px}.stat strong{display:block;font-size:18px}.stat span{color:var(--muted);font-size:14px}.profile-grid{display:grid;grid-template-columns:320px 1fr;gap:18px;margin-top:18px}.game-item{padding:12px 0}.game-item+.game-item{border-top:1px solid var(--line)}.game-item strong{display:block}.game-item small{color:var(--muted)}
.team-hero{padding:22px}.team-logo{width:78px;height:78px;border-radius:18px;background:#272044;display:grid;place-items:center;color:#c0b4ff;font-size:18px;font-weight:950}.team-profile-head{display:flex;gap:16px;align-items:center}.team-profile-head>div:nth-child(2){flex:1}.team-profile-head h1{margin:0;font-size:28px}.team-profile-head p{margin:3px 0;color:var(--muted)}.member-list{display:grid;gap:4px}.member{display:flex;align-items:center;gap:10px;padding:10px 0}.member+.member{border-top:1px solid var(--line)}.member .role{margin-left:auto;color:var(--muted);font-size:14px;text-transform:uppercase;font-weight:900}
.recruitment-card{padding:18px}.recruitment-type{display:inline-flex;padding:4px 8px;border-radius:7px;background:#211d3e;color:#c0b5ff;font-size:13.5px;text-transform:uppercase;font-weight:900}.recruitment-card h3{margin:9px 0 4px;font-size:17px}.recruitment-card p{color:#aeb7c5;margin:8px 0 12px;font-size:14px}.recruitment-meta{display:flex;gap:6px;flex-wrap:wrap}.split-action{display:grid;grid-template-columns:1fr 1fr;gap:14px}.big-choice{padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--panel);transition:.15s}.big-choice:hover{border-color:#4c4381;transform:translateY(-2px)}.big-choice strong{display:block;font-size:20px}.big-choice span{color:var(--muted)}
.message-layout{display:grid;grid-template-columns:330px 1fr;min-height:650px;padding:0;overflow:hidden}.conversation-list{border-right:1px solid var(--line)}.conversation-list h2{font-size:15px;padding:18px;margin:0;border-bottom:1px solid var(--line)}.conversation-link{display:flex;gap:10px;padding:13px 15px;border-bottom:1px solid #1e2430}.conversation-link:hover,.conversation-link.active{background:#171b24}.conversation-link>div{min-width:0}.conversation-link strong{display:block}.conversation-link span{display:block;color:var(--muted);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-view{display:flex;flex-direction:column}.conversation-head{height:65px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 18px;font-weight:850}.message-stream{flex:1;padding:18px;display:flex;flex-direction:column;gap:9px;overflow:auto}.bubble{max-width:70%;padding:9px 12px;border-radius:14px;background:#1a1f29}.bubble.mine{align-self:flex-end;background:#30265f}.bubble small{display:block;color:#8f98a9;margin-top:3px;font-size:13.5px}.message-compose{display:flex;gap:8px;padding:14px;border-top:1px solid var(--line)}.message-compose .input{flex:1}.notifications{display:grid;gap:8px}.notice{display:flex;gap:12px;padding:14px 16px}.notice.unread{border-color:#4b4088}.notice-content{flex:1}.notice-content strong{display:block}.notice-content p{margin:3px 0;color:var(--muted)}.notice-content small{color:#6f7888}
.flash{max-width:1120px;margin:0 auto 16px;padding:11px 14px;border-radius:11px;border:1px solid var(--line);background:var(--panel)}.flash.success{border-color:#265a48;color:#87e4b4}.flash.error{border-color:#65303a;color:#ff9eaa}.flash.info{border-color:#3d3a6b;color:#beb4ff}.error-list{padding:11px 14px;border:1px solid #63303b;border-radius:11px;background:#29161b;color:#ffadb7;margin-bottom:16px}.inline-form{display:flex;gap:8px;align-items:center}.divider{height:1px;background:var(--line);margin:17px 0}.kicker{font-size:14px;color:#8d96a6;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.count{font-variant-numeric:tabular-nums}
@media(max-width:1000px){.feed-layout{grid-template-columns:1fr}.right-rail{display:none}.profile-grid{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr}.hero-card{max-width:650px}.feature-strip{grid-template-columns:1fr}.auth-wrap{grid-template-columns:1fr}.auth-aside{display:none}}
@media(max-width:760px){body{font-size:14px}.sidebar{display:none}.main{margin-left:0;padding:0 14px 86px}.mobile-top{height:60px;display:flex;align-items:center;justify-content:space-between}.mobile-top .brand{font-size:17px}.mobile-top .brand-mark{width:30px;height:30px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;z-index:50;left:0;right:0;bottom:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgba(13,16,22,.96);backdrop-filter:blur(18px)}.bottom-nav a{display:grid;place-items:center;gap:2px;color:#778091;font-size:14px;font-weight:800}.bottom-nav a svg{width:20px;height:20px}.bottom-nav a.is-active{color:#fff}.page-head{margin:10px 0 16px}.page-head h1{font-size:24px}.card{border-radius:15px}.composer{padding:13px}.feed-layout{display:block}.hero{padding:55px 18px 50px;gap:35px}.hero h1{font-size:48px}.hero p{font-size:17px}.public-header{height:64px;padding:0 18px}.public-header nav>a:not(.button){display:none}.feature-strip{padding:0 18px;margin-bottom:55px}.landing-bottom{padding:55px 18px}.landing-bottom h2{font-size:32px}.form-row,.split-action{grid-template-columns:1fr}.profile-content{align-items:flex-start;flex-wrap:wrap}.profile-actions{width:100%}.profile-actions .button{flex:1}.profile-hero{padding-top:100px}.profile-cover{height:135px}.avatar.huge{width:82px;height:82px}.stat-row{gap:15px;justify-content:space-between}.team-profile-head{align-items:flex-start;flex-wrap:wrap}.team-profile-head .profile-actions{width:100%}.message-layout{grid-template-columns:1fr;min-height:calc(100vh - 155px)}.conversation-list.is-hidden-mobile{display:none}.conversation-view.is-empty-mobile{display:none}.bubble{max-width:86%}.toolbar{align-items:stretch;flex-direction:column}.tabs{width:100%}.tabs a{flex:1;text-align:center}.auth-main{padding:25px 18px}.auth-box h2{font-size:30px}}

/* NTGames ZERO V1.1 — recrutement direct */
.next-move{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 20px;border-radius:18px;border:1px solid #3a3265;background:linear-gradient(135deg,#1d1933,#131621);transition:.16s}.next-move:hover{transform:translateY(-2px);border-color:#6253aa}.next-move>div{min-width:0}.next-move span{display:block;color:#9c8fff;font-size:13.5px;letter-spacing:.12em;font-weight:950}.next-move strong{display:block;font-size:20px;letter-spacing:-.02em;margin:3px 0}.next-move p{margin:0;color:#9fa8b7}.next-move b{white-space:nowrap;color:#d9d2ff}.next-move.green{border-color:#285344;background:linear-gradient(135deg,#142a24,#121820)}.next-move.green span,.next-move.green b{color:#7de0ad}
.quick-filter{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:#11151d;color:#b9c1ce;font-size:14px;font-weight:800;white-space:nowrap}.quick-filter input{accent-color:var(--accent)}.context-note{margin:0 0 14px;padding:10px 12px;border-radius:11px;background:#151923;border:1px solid var(--line);color:var(--muted);font-size:14px}.card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.card-actions form{margin:0}.action-state{display:inline-flex;align-items:center;min-height:34px;padding:0 10px;border-radius:9px;background:#181c26;color:#9ca6b6;font-size:14px;font-weight:850}.action-state.good{color:#78dfa9;background:#142a24}
.request-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.request-panel{padding:17px}.request-count{display:grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:999px;background:#211d3e;color:#c0b5ff;font-size:14px;font-weight:900}.request-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:13px 0}.request-item+.request-item{border-top:1px solid var(--line)}.request-main{min-width:0}.request-main strong{display:block}.request-main span{display:block;color:var(--muted);font-size:14px}.request-main p{margin:5px 0 0;color:#b9c0cc;font-size:14px}.request-actions{display:flex;gap:6px}.request-item.simple{grid-template-columns:auto 1fr auto}.request-item.simple>b{font-size:14px;color:#a99cff}.empty.compact{padding:22px 10px}
@media(max-width:900px){.request-grid{grid-template-columns:1fr}.discover-toolbar{align-items:stretch;flex-wrap:wrap}.discover-toolbar .search-box{min-width:100%}}
@media(max-width:760px){.next-move{align-items:flex-start;flex-direction:column;gap:12px}.next-move b{white-space:normal}.card-actions{justify-content:stretch}.card-actions>*{flex:1}.card-actions .button{width:100%}.request-item{grid-template-columns:auto 1fr}.request-actions{grid-column:1/-1}.request-actions .button{flex:1}.quick-filter{width:100%}}

/* NTGames ZERO V1.2 — l'équipe devient le chez-soi */
.discover-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}
.team-home{display:grid;gap:14px}.team-hero-simple{padding:22px}.team-hero-simple .team-profile-head{align-items:flex-start}.team-hero-simple .team-profile-head>div:nth-child(2){padding-top:3px}.team-hero-simple .team-profile-head p{max-width:720px;margin:7px 0 0;color:#adb6c5}.team-main-actions{align-self:center}.team-facts{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:18px;padding-top:15px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.team-facts strong{color:#fff;font-size:14px}.team-facts .open,.team-facts .closed{margin-left:auto;padding:5px 9px;border-radius:999px;font-weight:850}.team-facts .open{background:#142a24;color:#7de0ad}.team-facts .closed{background:#1b1e27;color:#8992a2}
.team-status-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px}.team-status-bar>div strong{display:block;font-size:16px}.status-pills{display:flex;gap:6px;flex-wrap:wrap}.status-pill{border:1px solid var(--line);border-radius:999px;background:#151923;color:#929cac;padding:7px 10px;font-size:14px;font-weight:850}.status-pill:hover{color:#fff}.status-pill.active.available{border-color:#2b6c51;background:#142a24;color:#7de0ad}.status-pill.active.limited{border-color:#725c28;background:#2a2315;color:#f0c66e}.status-pill.active.unavailable{border-color:#65303a;background:#29161b;color:#ff9eaa}
.team-home-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:18px;align-items:start}.team-section-card{padding:18px}.team-section-card .section-title h2,.team-wall-head h2{margin:2px 0 0;font-size:20px;letter-spacing:-.02em}.roster-grid{display:grid;gap:4px;margin-top:7px}.roster-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:11px 0}.roster-card+.roster-card{border-top:1px solid var(--line)}.roster-main{min-width:0}.roster-main strong{display:block}.roster-main span{display:block;color:var(--muted);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-side{text-align:right}.roster-role{display:block;color:#a69aff;text-transform:uppercase;font-size:14px;font-weight:950;letter-spacing:.06em}.presence{display:inline-flex;align-items:center;gap:5px;color:#8992a2;font-size:13.5px;font-weight:800}.presence:before{content:"";width:6px;height:6px;border-radius:50%;background:#606878}.presence.available{color:#70dba5}.presence.available:before{background:#31d58a}.presence.limited{color:#e8bd65}.presence.limited:before{background:#f4bd50}.presence.unavailable{color:#e98b98}.presence.unavailable:before{background:#ff6678}
.team-application{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 0}.team-application+.team-application{border-top:1px solid var(--line)}.team-application>div{min-width:0}.team-application strong{display:block}.team-application span{display:block;color:var(--muted);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-application p{margin:4px 0 0;color:#b5bdca;font-size:14px}.team-composer{margin:0}.team-wall-head{padding:3px 2px 0}.team-wall-post{margin:0}.team-settings{padding:0;overflow:hidden}.team-settings summary{cursor:pointer;padding:15px 17px;font-weight:850}.team-settings[open] summary{border-bottom:1px solid var(--line)}.team-settings .form-stack{padding:16px}.group-chat-label{margin-left:auto;padding:4px 8px;border-radius:999px;background:#211d3e;color:#b8aaff;font-size:13.5px;font-weight:900}.bubble-author{display:block;margin-bottom:3px;color:#b6aaff;font-size:13.5px;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:1000px){.team-home-grid{grid-template-columns:1fr}.team-home-grid>section:first-child{order:2}.team-home-grid>section:last-child{order:1}}
@media(max-width:760px){.discover-topline{align-items:stretch;flex-direction:column}.discover-topline .button{width:100%}.team-hero-simple{padding:16px}.team-hero-simple .team-profile-head{display:grid;grid-template-columns:auto 1fr}.team-hero-simple .team-logo{width:58px;height:58px;border-radius:14px}.team-main-actions{grid-column:1/-1;width:100%;display:grid;grid-template-columns:1fr}.team-main-actions form,.team-main-actions .button{width:100%}.team-facts{gap:10px}.team-facts .open,.team-facts .closed{margin-left:0}.team-status-bar{align-items:stretch;flex-direction:column}.status-pills{display:grid;grid-template-columns:repeat(3,1fr)}.status-pill{padding:8px 6px}.team-section-card{padding:14px}.roster-card{grid-template-columns:auto minmax(0,1fr)}.roster-side{grid-column:2;text-align:left;display:flex;gap:9px;align-items:center}.team-application{grid-template-columns:auto minmax(0,1fr)}.team-application .request-actions{grid-column:1/-1}.group-chat-label{font-size:14px}}


/* V1.3 — Social feed */
.feed-tabs{display:flex;gap:6px;padding:4px;background:#10141c;border:1px solid var(--line);border-radius:13px;width:max-content}
.feed-tabs a{padding:8px 13px;border-radius:9px;color:var(--muted);font-size:14px;font-weight:850}
.feed-tabs a.active{background:#24203d;color:#fff}
.feed-hint{padding:10px 13px;border:1px dashed #36304f;border-radius:12px;background:#171528;color:#b8afdc;font-size:14px}
.composer-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.photo-button{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid #2d3444;border-radius:999px;background:#151923;color:#c5ccd8;font-size:14px;font-weight:850;cursor:pointer}
.photo-button:hover{border-color:#5e50a6;color:#fff}
.post-kind{padding:4px 7px;border-radius:999px;background:#211d3e;color:#c1b7ff;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.post-image{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:13px;border:1px solid var(--line);margin:12px 0 14px;background:#0d1016}
.suggestion-status{font-size:13.5px;color:#8075c4;text-transform:uppercase;letter-spacing:.04em}
.profile-posts{display:grid;gap:10px}.profile-post{padding:15px}.profile-post .post-body{margin-bottom:8px}
@media(max-width:760px){
  .feed-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.feed-tabs a{text-align:center}
  .composer-bottom{align-items:flex-end;gap:8px}.composer-tools{gap:6px}
  .post-head{align-items:flex-start;flex-wrap:wrap}.post-team{order:4;width:100%;padding-left:44px}.post-kind{margin-left:auto}
  .post-image{max-height:420px;border-radius:11px}
}

/* V1.4 — Carte d'identité gaming */
.player-profile-hero{padding-top:128px}.player-profile-hero .profile-cover{height:162px;background-size:cover;background-position:center}.player-profile-hero .profile-cover.has-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,18,.05),rgba(11,13,18,.55))}.profile-name-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-name-line h1{margin:0}.profile-signal-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 15px}.profile-status-text{display:inline-flex;padding:6px 10px;border-radius:10px;background:#181c26;color:#c7ced9;font-size:14px;font-weight:750}.player-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px;margin-top:18px;align-items:start}.player-profile-side{position:sticky;top:20px}.gaming-passport{padding:20px}.primary-game-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:5px 0 17px}.primary-game-head h2{margin:2px 0 0;font-size:29px;letter-spacing:-.035em}.primary-game-head p{margin:3px 0 0;color:#a9b2c1}.game-eyebrow{color:#9b8cff;font-size:13.5px;font-weight:950;text-transform:uppercase;letter-spacing:.1em}.gaming-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.gaming-facts>div{min-width:0;padding:12px;border-radius:12px;background:#0f131a;border:1px solid #202631}.gaming-facts span{display:block;color:#778194;font-size:14px;text-transform:uppercase;font-weight:900;letter-spacing:.06em}.gaming-facts strong{display:block;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.gaming-meta-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:13px}.schedule-line{color:#9ca6b5;font-size:14px}.player-games-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.player-game-card{padding:13px;border:1px solid var(--line);border-radius:13px;background:#0f131a}.player-game-top{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.player-game-top strong{font-size:14px}.player-game-card .game-tag{display:block;color:#a99cff;font-size:14px;font-weight:800;margin-top:2px}.player-game-card p{margin:9px 0 4px;color:#c1c8d3;font-size:14px}.player-game-card small{color:var(--muted);font-size:13.5px}.recruiter-callout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:20px;align-items:end}.recruiter-callout h3{margin:4px 0 5px}.recruiter-callout p{margin:0}.recruiter-form{display:grid;grid-template-columns:1fr auto;gap:8px}.looking-card h3{margin:4px 0 2px}.looking-card p{margin:0 0 12px}.profile-since{display:grid;gap:4px}.profile-since strong{font-size:14px}

.profile-edit-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;align-items:start}.profile-identity-form,.game-profile-editor{margin:0}.profile-identity-form .section-title,.game-profile-editor .section-title{margin-bottom:16px}.profile-media-editor{position:relative;height:190px;margin:-2px 0 18px;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#0d1016}.profile-banner-preview{position:absolute;inset:0;background:radial-gradient(circle at 20% 25%,#42348f,transparent 40%),linear-gradient(125deg,#191e2e,#11151d);background-size:cover;background-position:center}.profile-banner-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(11,13,18,.72))}.profile-avatar-preview{position:absolute;left:18px;bottom:16px}.profile-avatar-preview .avatar{border:3px solid #11141b}.media-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.field small{color:#737e90;font-size:13.5px}.file-input{padding:9px;min-height:43px;font-size:14px}.check-line{display:flex;align-items:center;gap:7px;margin-top:3px;color:#9099a8!important;font-size:13.5px!important;font-weight:700!important}.check-line input,.game-flags input{accent-color:var(--accent)}.selected-game{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-radius:12px;background:#171528;border:1px solid #342d5b;margin-bottom:14px}.selected-game strong{font-size:16px}.game-flags{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice-card{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#0f131a;cursor:pointer}.choice-card input{margin-top:4px}.choice-card span{display:grid;gap:2px}.choice-card strong{font-size:14px}.choice-card small{color:#7e8899;font-size:13.5px;line-height:1.35}.my-game-cards{display:grid;gap:9px}.my-game-card{padding:13px;border:1px solid var(--line);border-radius:13px;background:#0f131a}.my-game-card.is-primary{border-color:#433a74;background:#151326}.my-game-main{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.my-game-main>div:first-child strong{display:block}.my-game-main>div:first-child span{display:block;color:#9e93d9;font-size:14px}.my-game-card p{margin:8px 0 2px;color:#b8c0cd;font-size:14px}.my-game-card>small{color:var(--muted);font-size:13.5px}.my-game-actions{display:flex;align-items:center;gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.my-game-actions form{margin-left:auto}.onboarding-card{margin-bottom:18px}.onboarding-card h2{margin:6px 0}.onboarding-card p{margin:0 0 12px}

.player-search-card{display:flex;flex-direction:column}.player-search-card .person-head{align-items:flex-start}.player-search-card .status{margin-left:auto;white-space:nowrap}.search-game-summary{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12px;margin-top:14px;padding:13px;border-radius:13px;background:#0f131a;border:1px solid var(--line)}.search-game-summary>div:first-child>span{display:block;color:#7d8798;font-size:14px;text-transform:uppercase;font-weight:900;letter-spacing:.06em}.search-game-summary>div:first-child>strong{display:block;font-size:15px;margin:2px 0}.search-game-summary>div:first-child>small{color:#9d91dc;font-size:13.5px}.search-game-facts{display:grid;gap:4px;align-content:center}.search-game-facts span{display:block;color:#b8c0cc;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-game-summary.is-empty{display:block;color:#7e8797;font-size:14px}.search-schedule{margin:9px 0 0;color:#9ba4b3;font-size:14px}.player-search-card .card-bio{min-height:0;margin:10px 0 0}.player-search-card .card-actions{margin-top:auto}

@media(max-width:1000px){.player-profile-layout{grid-template-columns:1fr}.player-profile-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.profile-edit-layout{grid-template-columns:1fr}.recruiter-callout{grid-template-columns:1fr}}
@media(max-width:760px){.player-profile-hero{padding-top:105px}.player-profile-hero .profile-cover{height:138px}.profile-name-line{align-items:flex-start;flex-direction:column;gap:5px}.profile-signal-row{margin-top:4px}.gaming-passport{padding:15px}.primary-game-head{flex-direction:column;gap:8px}.primary-game-head h2{font-size:24px}.gaming-facts{grid-template-columns:1fr 1fr}.player-games-grid{grid-template-columns:1fr}.player-profile-side{display:grid;grid-template-columns:1fr}.recruiter-form{grid-template-columns:1fr}.profile-media-editor{height:155px}.media-fields,.game-flags{grid-template-columns:1fr}.search-game-summary{grid-template-columns:1fr}.player-search-card .person-head{display:grid;grid-template-columns:auto 1fr}.player-search-card .status{grid-column:1/-1;margin-left:0;width:max-content}.player-search-card .card-actions{display:grid;grid-template-columns:1fr 1fr}.player-search-card .card-actions form,.player-search-card .card-actions .button{width:100%}.player-search-card .action-state{grid-column:1/-1;justify-content:center}.profile-edit-layout{gap:14px}}

/* V1.5 — Recrutement intelligent et explicable */
.match-context{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0;padding:13px 15px;border:1px solid #3a3262;border-radius:14px;background:linear-gradient(135deg,#171527,#11151d)}
.match-context.compact{margin-top:0}
.match-context>div{display:grid;gap:2px;flex:0 0 auto}.match-context>div span{color:#8f84cf;font-size:14px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.match-context>div strong{font-size:14px}.match-context p{margin:0;color:#c0c6d1;font-size:14px;text-align:right}.match-context p small{display:block;margin-top:2px;color:#737d8e;font-size:13.5px}
.match-fit{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:11px 0 2px;padding:8px 10px;border:1px solid #342e58;border-radius:11px;background:#151326}.match-fit-label{display:inline-flex;align-items:center;gap:5px;color:#c9c0ff;font-size:13.5px;font-weight:950;white-space:nowrap}.match-fit-label svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}.match-fit-reasons{color:#8f98a8;font-size:13.5px;line-height:1.35}.is-top-match{border-color:#42386f!important;box-shadow:0 0 0 1px rgba(126,106,220,.08) inset}.is-top-match .match-fit{border-color:#463c74;background:#18152c}.team-need{display:grid;gap:2px;margin:11px 0 0;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:#0f131a}.team-need span{color:#7f8999;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.team-need strong{font-size:14px}.team-need small{color:#8993a3;font-size:13.5px}.recruitment-card .match-fit{margin-top:9px;margin-bottom:12px}
@media(max-width:760px){.match-context{display:grid;gap:8px}.match-context p{text-align:left}.match-fit{align-items:flex-start;flex-direction:column;gap:3px}.match-fit-reasons{font-size:14px}}

/* V1.6 — Gestion d'équipe simple : identité, multi-jeux, rosters, rôles */
.team-identity-hero{position:relative;overflow:hidden}.team-cover-image{position:absolute;inset:0 0 auto 0;width:100%;height:122px;object-fit:cover;opacity:.25;mask-image:linear-gradient(to bottom,#000 25%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 25%,transparent 100%)}.team-identity-hero .team-profile-head,.team-identity-hero .team-facts{position:relative;z-index:1}.team-logo-image{object-fit:cover;border:1px solid rgba(255,255,255,.12);background:#171b24}.team-game-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.team-game-chips .chip{border:1px solid var(--line);background:#11151d;color:#8e98a8}.team-game-chips .chip.active{border-color:#4b4080;background:#201c37;color:#d1c9ff}
.roster-managed-card{grid-template-columns:auto minmax(0,1fr) auto auto}.roster-controls{display:flex;align-items:center;gap:8px}.compact-select{min-width:118px;height:34px;padding:5px 28px 5px 9px;font-size:14px}.text-button{border:0;background:none;color:#8f99aa;font:inherit;font-size:14px;font-weight:800;cursor:pointer;padding:6px}.text-button:hover{color:#fff}.text-button.danger{color:#d9808d}.text-button.danger:hover{color:#ff9eaa}.roster-add{margin-top:12px;border-top:1px solid var(--line);padding-top:11px}.roster-add summary{cursor:pointer;color:#b6abff;font-size:14px;font-weight:850}.roster-add-list{display:grid;gap:3px;margin-top:8px}.roster-add-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0}.roster-add-row+ .roster-add-row{border-top:1px solid var(--line)}.roster-add-row strong,.roster-add-row span{display:block}.roster-add-row span{color:var(--muted);font-size:13.5px}
.team-members-admin{padding:0;overflow:hidden}.team-members-admin>summary{list-style:none;cursor:pointer;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:15px}.team-members-admin>summary::-webkit-details-marker{display:none}.team-members-admin>summary strong{display:block;font-size:15px}.team-members-admin[open]>summary{border-bottom:1px solid var(--line)}.member-admin-list{padding:3px 16px 12px}.member-admin-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0}.member-admin-row+.member-admin-row{border-top:1px solid var(--line)}.member-admin-row>div:nth-child(2) strong,.member-admin-row>div:nth-child(2) span{display:block}.member-admin-row>div:nth-child(2) span{color:var(--muted);font-size:13.5px}.member-admin-actions{display:flex;align-items:center;gap:6px}
.team-settings-panels{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:0}.team-settings-panels>.form-stack{padding:16px}.team-settings-panels>.form-stack+ .form-stack{border-left:1px solid var(--line)}.team-game-manager{align-content:start}.managed-game-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0}.managed-game-row+.managed-game-row{border-top:1px solid var(--line)}.managed-game-row strong,.managed-game-row span{display:block}.managed-game-row span{color:var(--muted);font-size:13.5px;margin-top:2px}.add-game-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.mini-check{display:block;color:var(--muted);font-size:13.5px;margin-top:6px}.leave-team{padding:0;overflow:hidden}.leave-team summary{cursor:pointer;padding:14px 16px;color:#ba7e88;font-size:14px;font-weight:850}.leave-team form{padding:0 16px 16px}.leave-team p{color:var(--muted);font-size:14px}.danger-button{border-color:#56313a!important;color:#e894a1!important}
@media(max-width:1100px){.team-settings-panels{grid-template-columns:1fr}.team-settings-panels>.form-stack+ .form-stack{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:760px){.team-cover-image{height:100px}.team-game-chips{grid-column:1/-1}.roster-managed-card{grid-template-columns:auto minmax(0,1fr)}.roster-managed-card .roster-side,.roster-managed-card .roster-controls{grid-column:2}.roster-controls{justify-content:flex-start;flex-wrap:wrap}.member-admin-row{grid-template-columns:auto minmax(0,1fr)}.member-admin-row>.action-state,.member-admin-actions{grid-column:2}.member-admin-actions{justify-content:flex-start;flex-wrap:wrap}.add-game-form{grid-template-columns:1fr}.managed-game-row{align-items:flex-start;flex-direction:column}.managed-game-row .request-actions{width:100%;justify-content:flex-start}}

/* V1.7 — Messages + notifications */
.message-page{max-width:1120px}.conversation-list-head{height:62px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.conversation-list-head h2{padding:0;border:0}.conversation-total-unread,.conversation-unread{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--accent);color:#fff;font-size:13.5px;font-weight:900}.conversation-link{align-items:center;position:relative}.conversation-link.has-unread{background:#141826}.conversation-summary{min-width:0;flex:1}.conversation-title-row{display:flex;align-items:center;gap:8px}.conversation-title-row strong{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-title-row small{flex:0 0 auto;color:#697386;font-size:13.5px}.conversation-link.has-unread .conversation-title-row strong{color:#fff}.conversation-link.has-unread .conversation-summary>span{color:#c2cad7}.conversation-team-logo{flex:0 0 36px}.conversation-unread{flex:0 0 auto}.conversation-head{height:auto;min-height:65px;gap:10px}.conversation-head>div{display:flex;align-items:center;gap:9px;min-width:0}.conversation-head>div>strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-head small{color:var(--muted);font-size:14px;font-weight:650}.conversation-back{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;color:var(--muted);font-size:18px}.conversation-back:hover{background:var(--panel2);color:#fff}.group-chat-label{font-size:13.5px;padding:4px 7px;border-radius:999px;background:#211d3e;color:#b8aaff;white-space:nowrap}.bubble-author{display:block;margin-bottom:4px;color:#b7abff;font-size:14px}.bubble-body{display:block;overflow-wrap:anywhere}.message-compose{position:sticky;bottom:0;background:var(--panel);z-index:2}.notification-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.notification-toolbar>div:first-child{color:var(--muted);font-size:14px}.notification-toolbar>div:first-child strong{color:#fff}.notification-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.notification-actions form{margin:0}.notice{align-items:flex-start;position:relative}.notice-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;border-radius:12px;background:#171b25;color:#8e7eff}.notice-icon svg{width:19px;height:19px}.notice-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:3px}.notice-meta>span{color:#8579d8;text-transform:uppercase;letter-spacing:.07em;font-size:14px;font-weight:900}.notice-meta small{font-size:13.5px;color:#697386}.notice-unread-dot{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:var(--accent)}.notice.unread{background:#141724}.notice.unread .notice-content{padding-right:18px}.bottom-nav a{position:relative}.bottom-nav-badge{position:absolute;top:-2px;left:calc(50% + 6px);min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--danger);color:#fff;font-size:14px;font-weight:900;display:grid;place-items:center;border:2px solid #0d1016}
@media(max-width:760px){.notification-toolbar{align-items:flex-start;flex-direction:column}.notification-actions{width:100%;justify-content:flex-start}.notification-actions .button{font-size:14px}.conversation-list-head{height:56px}.message-page{padding:0}.message-page>.card{border-radius:14px}.conversation-head{padding:8px 10px}.message-compose{padding:10px}.message-compose .button{padding-left:13px;padding-right:13px}.notice{padding:12px}.notice-icon{width:36px;height:36px;flex-basis:36px}.notice-unread-dot{right:10px}}

/* V1.8 — Polish global : moins de bruit, plus de hiérarchie */
:root{--bg:#0a0c10;--panel:#101319;--panel2:#151920;--line:#222832;--text:#f5f7fb;--muted:#929baa;--accent:#7b67f4;--accent2:#8d7cff;--r:14px;--shadow:none}
body{background:var(--bg);letter-spacing:-.005em}
.button{min-height:42px;padding:0 16px;border-radius:10px;font-size:14px;box-shadow:none}.button:hover{transform:none}.button.small{min-height:34px;padding:0 12px;border-radius:9px;font-size:14px}.button.ghost{background:#12161d}.button.soft{background:#1c1930;color:#c8c0ff}.button.danger{background:#2c171c}
.brand{font-size:18px}.brand-mark{width:32px;height:32px;border-radius:9px}
.sidebar{width:228px;padding:18px 14px;background:#0c0f14}.sidebar-brand{padding:5px 8px 20px}.side-nav{gap:2px}.side-nav>a{min-height:43px;padding:0 11px;border-radius:9px;gap:11px;font-size:14px}.side-nav>a.is-active{background:#171b24}.side-nav>a.is-active svg{color:#a394ff}.sidebar-user{padding-top:12px;margin-top:12px}.team-switch{padding:9px;border-radius:11px;margin-bottom:10px}.team-switch small{font-size:14px}.mini-logo{width:34px;height:34px;border-radius:9px;background:#1c1930;color:#c5bcff}
.main{margin-left:228px;padding:28px 30px 82px}.page-head{max-width:1080px;margin-bottom:18px}.page-head h1{font-size:25px;letter-spacing:-.03em}.page-head p{font-size:14px;margin-top:5px}.content{max-width:1080px}
.card{background:var(--panel);border-color:var(--line);border-radius:14px;padding:16px}.stack{gap:12px}.section-title{margin-bottom:11px}.section-title h2,.section-title h3{font-size:15px}.section-title a{font-size:14px}
.feed-layout{grid-template-columns:minmax(0,650px) 300px;gap:20px}.right-card{padding:14px}.suggestion{padding:9px 0}.suggestion-info strong{font-size:14px}.suggestion-info span{font-size:13.5px}.suggestion-status{font-size:14px}.right-rail .card{background:#0e1117}
.next-move{padding:14px 15px;border-radius:13px;gap:14px;background:#151324;border-color:#332d53}.next-move:hover{transform:none;border-color:#4a406f}.next-move span{font-size:14px}.next-move strong{font-size:16px;margin:1px 0}.next-move p{font-size:14px;line-height:1.4}.next-move b{font-size:14px}.next-move.green{background:#102019;border-color:#244336}
.feed-tabs{border-radius:10px;padding:3px}.feed-tabs a{padding:7px 11px;border-radius:7px;font-size:14px}.feed-tabs a.active{background:#211e35}.feed-hint{padding:9px 11px;font-size:14px;border-radius:10px}
.composer{padding:13px}.composer-top{gap:10px}.composer textarea{min-height:48px;font-size:14px;padding:5px 0}.composer-bottom{padding-top:9px}.photo-button{min-height:28px;padding:4px 9px;font-size:13.5px}.composer .chip{min-height:28px;font-size:13.5px}
.post{padding:15px}.post-head{gap:9px}.post-meta strong{font-size:14px}.post-meta span{font-size:13.5px}.post-body{font-size:14px;line-height:1.52;margin:12px 0}.post-team{font-size:13.5px}.post-kind{font-size:14px}.post-actions{padding-top:8px}.action-btn{padding:6px 8px;font-size:14px}.comment-bubble{font-size:14px;background:#151920}.post-image{border-radius:11px;margin:10px 0 12px}
.tabs{padding:3px;border-radius:10px}.tabs a{padding:7px 11px;border-radius:7px;font-size:14px}.tabs a.active{background:#202531}.discover-topline{margin-bottom:13px}.discover-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,210px) auto auto;gap:8px;margin:12px 0 14px}.discover-toolbar .input{min-height:42px}.quick-filter{min-height:42px;border-radius:10px;padding:0 11px;font-size:13.5px}.context-note{font-size:14px;padding:9px 11px}.grid{gap:12px}.person-card,.team-card{padding:15px}.person-head h3,.team-head h3{font-size:15px}.person-head p,.team-head p{font-size:13.5px}.status{font-size:13.5px}.card-bio{font-size:14px;margin:10px 0}.card-actions{gap:6px;margin-top:11px;padding-top:10px}
.search-game-summary{grid-template-columns:.85fr 1.15fr;gap:10px;margin-top:11px;padding:11px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.search-game-summary>div:first-child>span{font-size:14px}.search-game-summary>div:first-child>strong{font-size:14px}.search-game-facts span{font-size:13.5px}.search-schedule{font-size:13.5px}.match-context{padding:11px 12px;margin:11px 0;border-radius:11px;background:#12121c}.match-context>div span{font-size:14px}.match-context>div strong{font-size:14px}.match-context p{font-size:13.5px}.match-fit{margin:9px 0 0;padding:4px 0 4px 9px;border:0;border-left:2px solid #4b416e;border-radius:0;background:transparent}.match-fit-label{font-size:14px}.match-fit-reasons{font-size:14px}.is-top-match{border-color:#3b3455!important;box-shadow:none!important}.is-top-match .match-fit{background:transparent;border-color:#7666b7}.team-need{margin-top:10px;padding:9px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.team-need span{font-size:14px}.team-need strong{font-size:14px}.team-need small{font-size:14px}
.profile-hero{padding-top:102px}.profile-cover{height:128px}.player-profile-hero{padding-top:108px}.player-profile-hero .profile-cover{height:138px}.avatar.huge{width:88px;height:88px;border-width:3px}.profile-content{gap:14px}.profile-main h1,.profile-name-line h1{font-size:24px}.profile-main p{font-size:14px}.bio{margin:14px 0;font-size:14px}.stat-row{padding-top:12px;gap:20px}.stat strong{font-size:16px}.profile-grid,.player-profile-layout{gap:14px;margin-top:14px}.player-profile-layout{grid-template-columns:minmax(0,1fr) 260px}.gaming-passport{padding:16px}.primary-game-head{padding-bottom:13px}.primary-game-head h2{font-size:23px}.gaming-facts{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gaming-facts>div{padding:10px 8px;border:0;border-radius:0;background:transparent}.gaming-facts>div+div{border-left:1px solid var(--line)}.gaming-facts span{font-size:14px}.gaming-facts strong{font-size:14px}.player-game-card{padding:11px;background:#0e1117;border-radius:11px}.profile-status-text{padding:5px 8px;border-radius:8px;font-size:13.5px}
.team-hero,.team-hero-simple{padding:16px}.team-logo{width:66px;height:66px;border-radius:14px}.team-profile-head{gap:13px}.team-profile-head h1{font-size:23px}.team-profile-head p{font-size:13.5px}.team-cover-image{height:100px;opacity:.18}.team-game-chips{margin-top:9px}.team-game-chips .chip{font-size:14px}.team-home-grid{gap:14px}.team-section-card{padding:14px}.roster-card{padding:9px 0}.roster-add{margin-top:9px;padding-top:9px}.team-status-bar{padding:11px 13px}.status-pill{min-height:32px}.team-settings-panels>.form-stack{padding:14px}.team-members-admin>summary{padding:13px 14px}.member-admin-list{padding:2px 14px 10px}.managed-game-row{padding:8px 0}
.message-layout{min-height:620px;border-radius:13px}.conversation-list{width:auto}.conversation-list-head{height:55px;padding:0 13px}.conversation-link{padding:11px 12px}.conversation-title-row strong{font-size:14px}.conversation-summary>span{font-size:13.5px!important}.conversation-title-row small{font-size:14px}.conversation-unread,.conversation-total-unread{min-width:19px;height:19px;font-size:14px}.conversation-head{min-height:57px;padding:0 13px}.message-stream{padding:14px;gap:7px}.bubble{max-width:76%;padding:8px 10px;border-radius:12px;font-size:14px}.bubble.mine{background:#29214f}.message-compose{padding:10px}.message-compose .input{min-height:40px}.notice{padding:12px 13px}.notice-icon{width:36px;height:36px;flex-basis:36px;border-radius:10px}.notice-content strong{font-size:14px}.notice-content p{font-size:14px}.notice-meta>span{font-size:14px}.notification-toolbar{margin-bottom:11px}
.auth-wrap{grid-template-columns:.9fr 1.1fr}.auth-aside{padding:48px;background:radial-gradient(circle at 18% 18%,#241d51 0,transparent 33%),#0c0f14}.auth-aside h1{font-size:48px;max-width:500px}.auth-aside p{font-size:16px}.auth-main{padding:28px}.auth-box{width:min(400px,100%)}.auth-box h2{font-size:29px}.form-stack{gap:12px;margin-top:22px}.field label{font-size:14px}.input,textarea.input,select.input{border-radius:10px;padding:10px 11px}.input{min-height:42px}textarea.input{min-height:96px}.auth-note{font-size:14px}
.hero{padding:72px 24px 58px;gap:52px}.hero h1{font-size:clamp(42px,6vw,68px);max-width:760px}.hero p{font-size:18px}.hero-card{border-radius:20px;padding:16px}.feature-strip{gap:8px;margin-bottom:64px}.feature{padding:20px 16px}.feature strong{font-size:16px}.feature p{font-size:14px}.landing-bottom{padding:58px 24px}.landing-bottom h2{font-size:34px}
.header-badge{position:absolute;right:2px;top:1px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--danger);color:#fff;font-size:14px;font-weight:900;border:2px solid #0c0f14}
.flash{max-width:1080px;padding:9px 11px;border-radius:9px;font-size:14px}.empty{padding:28px 16px}.empty strong{font-size:15px}
@media(max-width:1100px){.feed-layout{grid-template-columns:minmax(0,1fr) 280px}.discover-toolbar{grid-template-columns:1fr 180px}.discover-toolbar .quick-filter,.discover-toolbar .button{width:100%}}
@media(max-width:1000px){.right-rail{display:none}.feed-layout{grid-template-columns:1fr}.player-profile-layout{grid-template-columns:1fr}.player-profile-side{position:static}.discover-toolbar{grid-template-columns:1fr 180px auto auto}}
@media(max-width:760px){body{font-size:14px}.main{margin-left:0;padding:0 12px 82px}.mobile-top{height:56px}.page-head{margin:6px 0 13px}.page-head h1{font-size:21px}.page-head p{font-size:13.5px}.card{border-radius:12px;padding:13px}.next-move{display:grid;gap:7px;padding:12px}.next-move b{justify-self:start}.feed-tabs{width:100%}.composer{padding:11px}.post{padding:13px}.post-body{font-size:14px}.bottom-nav{padding-top:5px}.bottom-nav a{font-size:14px}.discover-topline{display:flex;align-items:center;gap:8px}.discover-topline .tabs{flex:1}.discover-toolbar{display:grid;grid-template-columns:1fr;gap:7px}.discover-toolbar .search-box,.discover-toolbar select,.discover-toolbar .quick-filter,.discover-toolbar .button{width:100%}.person-card,.team-card{padding:13px}.card-actions{display:grid;grid-template-columns:1fr 1fr}.card-actions form,.card-actions .button{width:100%}.card-actions .action-state{grid-column:1/-1;justify-content:center}.search-game-summary{grid-template-columns:1fr}.profile-hero,.player-profile-hero{padding-top:92px}.profile-cover,.player-profile-hero .profile-cover{height:120px}.avatar.huge{width:76px;height:76px}.gaming-facts{grid-template-columns:1fr 1fr}.gaming-facts>div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.gaming-facts>div:nth-child(4){border-top:1px solid var(--line)}.team-logo{width:58px;height:58px}.message-page{padding:0}.message-layout{min-height:calc(100vh - 128px);border-radius:11px}.conversation-link{padding:10px}.message-stream{padding:11px}.bubble{max-width:88%;font-size:14px}.message-compose{padding:8px}.auth-main{padding:22px 16px}.hero{padding:48px 18px 44px}.hero h1{font-size:42px}.hero p{font-size:16px}.public-header{padding:0 16px}.feature-strip{padding:0 16px}.landing-bottom{padding:46px 16px}}

/* V2.0 — Matchs internes d'équipe */
.match-center-simple{max-width:980px}.match-page-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.text-link{font-size:14px;font-weight:800;color:var(--muted)}.text-link:hover{color:var(--text)}.match-page-stats{display:flex;gap:8px}.match-page-stats span{display:flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:13.5px}.match-page-stats strong{color:var(--text);font-size:14px}.match-create-card{padding:0;overflow:hidden}.match-create-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:14px 16px;list-style:none}.match-create-card>summary::-webkit-details-marker{display:none}.match-create-card>summary>span:first-child{display:grid;gap:2px}.match-create-card>summary strong{font-size:14px}.match-create-form{display:grid;gap:13px;padding:2px 16px 16px;border-top:1px solid var(--line)}.match-create-form>.form-row:first-child{padding-top:14px}.field-help{display:block;margin-top:7px;color:var(--muted);font-size:13.5px}.lineup-builder{overflow:hidden;border:1px solid var(--line);border-radius:11px;background:#0e1117}.lineup-builder-head,.lineup-row{display:grid;grid-template-columns:minmax(0,1fr) 72px 72px 72px;align-items:center}.lineup-builder-head{min-height:34px;padding:0 10px;border-bottom:1px solid var(--line);color:var(--muted);font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.lineup-builder-head span:not(:first-child){text-align:center}.lineup-row{min-height:52px;padding:6px 10px;border-bottom:1px solid var(--line)}.lineup-row:last-child{border-bottom:0}.lineup-player{display:flex;align-items:center;gap:9px;min-width:0}.lineup-player>span:last-child{display:grid;min-width:0}.lineup-player strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.lineup-player small{color:var(--muted);font-size:14px}.lineup-choice{display:grid;place-items:center;cursor:pointer}.lineup-choice input{position:absolute;opacity:0;pointer-events:none}.lineup-choice span{display:grid;place-items:center;width:31px;height:31px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:13.5px;font-weight:900;transition:.15s ease}.lineup-choice input:checked+span{border-color:#6659a1;background:#2a2345;color:#fff}.match-list-section{margin-top:20px}.internal-match-card{padding:15px}.internal-match-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.internal-match-head h3{margin:3px 0 2px;font-size:16px}.internal-match-head p{margin:0;color:var(--muted);font-size:13.5px}.match-game-label{color:#9e8bea;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.match-status{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border:1px solid var(--line);border-radius:999px;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.match-status.planned{border-color:#463d68;background:#211c35;color:#c7bcf4}.match-status.completed{border-color:#29483a;background:#13231b;color:#9bd7b9}.internal-scoreboard{display:grid;grid-template-columns:minmax(0,1fr) 50px minmax(0,1fr);align-items:center;gap:10px;margin-top:14px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.match-side{display:grid;gap:8px}.match-side.right{text-align:right}.match-side>strong{font-size:14px}.match-player-list{display:flex;flex-wrap:wrap;gap:6px}.match-side.right .match-player-list{justify-content:flex-end}.match-player-list>span{display:inline-flex;align-items:center;gap:5px;min-height:27px;padding:3px 7px 3px 4px;border:1px solid var(--line);border-radius:999px;background:#0e1117;font-size:14px}.match-player-list .avatar.tiny{width:20px;height:20px;font-size:14px}.match-versus{color:var(--muted);font-size:13.5px;font-weight:900;text-align:center}.match-final-score{display:flex;align-items:center;justify-content:center;gap:7px}.match-final-score strong{font-size:28px;line-height:1}.match-final-score span{color:var(--muted);font-size:16px}.match-note{margin:11px 0 0;padding:9px 10px;border-radius:9px;background:#0e1117;color:var(--muted);font-size:13.5px;line-height:1.45}.match-note.result-note{border-left:2px solid #4a8a68}.match-result-entry{margin-top:11px}.match-result-entry>summary{cursor:pointer;color:#b7a8ec;font-size:13.5px;font-weight:900}.result-form{display:grid;grid-template-columns:minmax(110px,1fr) 18px minmax(110px,1fr);align-items:end;gap:8px;margin-top:9px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#0e1117}.result-form label{display:grid;gap:5px;color:var(--muted);font-size:14px}.result-form>strong{align-self:center;padding-bottom:11px;text-align:center}.score-input{text-align:center;font-size:16px;font-weight:900}.result-note-field{grid-column:1/-1}.result-form>.button{grid-column:1/-1;justify-self:start}.match-cancel-form{margin-top:8px}.cancelled-matches{margin-top:20px}.cancelled-matches>summary{cursor:pointer;color:var(--muted);font-size:13.5px;font-weight:800}.cancelled-matches>.stack{margin-top:9px}.cancelled-match-row{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:10px;padding:10px 12px;opacity:.62}.cancelled-match-row span,.cancelled-match-row small{color:var(--muted);font-size:14px}.cancelled-match-row strong{font-size:14px}.narrow-content{max-width:760px}
@media(max-width:760px){.match-page-bar{align-items:flex-start;flex-direction:column}.match-page-stats{width:100%}.match-page-stats span{flex:1;justify-content:center}.match-create-card>summary{padding:12px}.match-create-form{padding:2px 12px 12px}.lineup-builder-head,.lineup-row{grid-template-columns:minmax(0,1fr) 48px 48px 48px}.lineup-builder-head{padding:0 7px}.lineup-row{padding:5px 7px}.lineup-choice span{width:29px;height:29px}.internal-match-card{padding:12px}.internal-scoreboard{grid-template-columns:1fr;gap:10px}.match-side,.match-side.right{text-align:left}.match-side.right .match-player-list{justify-content:flex-start}.match-versus{padding:2px 0}.match-final-score{order:2}.internal-scoreboard.result .match-side:first-child{order:1}.internal-scoreboard.result .match-side.right{order:3}.result-form{grid-template-columns:1fr 18px 1fr}.cancelled-match-row{grid-template-columns:1fr auto}.cancelled-match-row>span{grid-column:1/-1}}

/* V2.1 — Classements internes d'équipe */
.team-tool-links{display:flex;align-items:center;gap:14px}.ranking-center-simple{max-width:980px}.ranking-create-card{padding:0;overflow:hidden}.ranking-create-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:14px 16px;list-style:none}.ranking-create-card>summary::-webkit-details-marker{display:none}.ranking-create-card>summary>span:first-child{display:grid;gap:2px}.ranking-create-form{display:grid;gap:13px;padding:14px 16px 16px;border-top:1px solid var(--line)}.ranking-points-grid{display:grid;grid-template-columns:repeat(3,minmax(0,120px));gap:9px}.ranking-history-check{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:#0e1117;cursor:pointer}.ranking-history-check input{margin-top:3px}.ranking-history-check span{display:grid;gap:2px}.ranking-history-check strong{font-size:14px}.ranking-history-check small{color:var(--muted);font-size:14px}.ranking-create-foot{display:flex;align-items:center;justify-content:space-between;gap:16px}.ranking-create-foot p{margin:0;color:var(--muted);font-size:13.5px}.ranking-tabs{display:flex;gap:7px;margin:16px 0 10px;overflow-x:auto;padding-bottom:2px}.ranking-tab{display:grid;gap:2px;min-width:max-content;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:#0e1117;color:var(--muted)}.ranking-tab span{font-size:13.5px;font-weight:900}.ranking-tab small{font-size:14px}.ranking-tab.active{border-color:#5b4f8a;background:#211c35;color:#fff}.ranking-board-card{padding:0;overflow:hidden}.ranking-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px}.ranking-board-head h2{margin:3px 0 4px;font-size:19px}.ranking-board-head p{margin:0;color:var(--muted);font-size:13.5px}.ranking-board-actions{display:flex;align-items:center;gap:10px}.ranking-board-actions form{margin:0}.ranking-table-wrap{overflow-x:auto;border-top:1px solid var(--line)}.ranking-table{width:100%;border-collapse:collapse;min-width:620px}.ranking-table th,.ranking-table td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:center;font-size:13.5px}.ranking-table th{background:#0e1117;color:var(--muted);font-size:14px;text-transform:uppercase;letter-spacing:.05em}.ranking-table th:nth-child(2),.ranking-table td:nth-child(2){text-align:left}.ranking-table tbody tr:last-child td{border-bottom:0}.ranking-table tbody tr.top-rank{background:linear-gradient(90deg,rgba(94,78,145,.12),transparent 65%)}.ranking-position{width:42px;color:var(--muted);font-weight:900}.top-rank .ranking-position{color:#b8a8ef}.ranking-player{display:flex;align-items:center;gap:8px;color:var(--text)}.ranking-player>span:last-child{display:grid;gap:1px}.ranking-player strong{font-size:14px}.ranking-player small{color:var(--muted);font-size:14px}.ranking-points strong{font-size:15px}.ranking-diff.positive{color:#8bd0a9}.ranking-diff.negative{color:#e59191}.ranking-empty-hint{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-top:1px solid var(--line);background:#0e1117}.ranking-empty-hint strong{font-size:13.5px}.ranking-empty-hint span{color:var(--muted);font-size:14px}.archived-rankings{margin-top:16px}.archived-rankings>summary{cursor:pointer;color:var(--muted);font-size:13.5px;font-weight:800}.archived-ranking-list{display:grid;gap:6px;margin-top:8px}.archived-ranking-list>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#0e1117}.archived-ranking-list>a>span{display:grid;gap:2px}.archived-ranking-list strong{font-size:13.5px}.archived-ranking-list small{color:var(--muted);font-size:14px}.archived-ranking-list b{font-size:14px}.ranking-match-choice a{font-weight:800}.match-ranking-link{color:#b8a8ef;font-weight:800}.match-ranking-form{display:flex;align-items:center;margin-top:9px}.match-ranking-form label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:14px}.match-ranking-form .compact-select{width:auto;min-width:150px;min-height:32px;padding:5px 28px 5px 8px;font-size:14px}
@media(max-width:760px){.team-tool-links{gap:10px}.ranking-create-card>summary{padding:12px}.ranking-create-form{padding:12px}.ranking-points-grid{grid-template-columns:repeat(3,1fr)}.ranking-create-foot{align-items:stretch;flex-direction:column}.ranking-create-foot .button{width:100%}.ranking-board-head{padding:13px;flex-direction:column}.ranking-board-actions{width:100%;justify-content:space-between}.ranking-table th,.ranking-table td{padding:9px 8px}.ranking-empty-hint{align-items:flex-start;flex-direction:column;padding:10px 12px}.match-ranking-form label{width:100%;justify-content:space-between}.match-ranking-form .compact-select{max-width:62%}}

/* V2.2 — Amicaux entre équipes */
.friendly-center-simple{max-width:980px}.friendly-create-card{padding:0;overflow:hidden}.friendly-create-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}.friendly-create-card>summary::-webkit-details-marker{display:none}.friendly-create-card>summary>span:first-child{display:grid;gap:2px}.friendly-create-card>summary small{color:var(--muted);font-size:14px}.friendly-create-form{display:grid;gap:12px;padding:14px 16px 16px;border-top:1px solid var(--line)}.empty-inline{padding:12px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:13.5px}.friendly-section{margin-top:18px}.friendly-card{padding:15px}.friendly-card.pending{border-color:#534777}.friendly-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.friendly-card-head h3{margin:3px 0 2px;font-size:16px}.friendly-card-head p{margin:0;color:var(--muted);font-size:13.5px}.friendly-decision{margin-top:12px}.friendly-versus-grid{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:center;gap:10px;margin-top:13px;padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.friendly-team-side{display:grid;gap:6px}.friendly-team-side.right{text-align:right}.friendly-team-side.right .match-player-list{justify-content:flex-end}.friendly-team-side>strong{font-size:14px}.friendly-team-side>span{color:var(--muted);font-size:14px}.friendly-team-side em{color:var(--muted);font-size:14px;font-style:normal}.friendly-lineup-box{margin-top:11px;border:1px solid var(--line);border-radius:10px;background:#0e1117}.friendly-lineup-box>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;cursor:pointer;color:#c1b4ee;font-size:13.5px;font-weight:900}.friendly-lineup-box>summary span{color:var(--muted);font-size:14px;font-weight:700}.friendly-lineup-form{display:grid;gap:10px;padding:0 11px 11px}.friendly-member-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.friendly-member-check{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 8px;border:1px solid var(--line);border-radius:9px;background:#10141b;cursor:pointer}.friendly-member-check:has(input:checked){border-color:#5c4f8b;background:#211c35}.friendly-member-check input{width:15px;height:15px}.friendly-member-check>span:last-child{display:grid;min-width:0}.friendly-member-check strong{overflow:hidden;font-size:13.5px;text-overflow:ellipsis;white-space:nowrap}.friendly-member-check small{color:var(--muted);font-size:14px}.friendly-final-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:13px;padding:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.friendly-final-score span{color:var(--muted);font-size:13.5px;font-weight:900}.friendly-final-score span:last-child{text-align:right}.friendly-final-score strong{font-size:24px}.friendly-final-score em{color:var(--muted);font-style:normal}.friendly-history{margin-top:18px}.friendly-history>summary{cursor:pointer;color:var(--muted);font-size:13.5px;font-weight:900}.friendly-history>.stack{margin-top:9px}.friendly-card.history{opacity:.9}
@media(max-width:760px){.friendly-create-card>summary{padding:12px}.friendly-create-form{padding:12px}.friendly-card{padding:12px}.friendly-versus-grid{grid-template-columns:1fr;gap:9px}.friendly-team-side,.friendly-team-side.right{text-align:left}.friendly-team-side.right .match-player-list{justify-content:flex-start}.friendly-versus-grid>.match-versus{padding:2px 0}.friendly-member-checks{grid-template-columns:1fr}.friendly-final-score{grid-template-columns:1fr auto 1fr;padding:12px 8px}.friendly-final-score strong{font-size:21px}}


/* V2.3 — Confort visuel / lisibilité globale
   Objectif : aucune information utile en micro-texte, meilleure lecture TV/desktop/mobile. */
:root{
  --panel:#121720;
  --panel2:#191f2a;
  --line:#303847;
  --text:#f7f9fc;
  --muted:#aeb7c5;
  --accent:#8066ff;
  --accent2:#9d8aff;
  --r:16px;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{font-size:17px;line-height:1.6;letter-spacing:.002em}
.muted{color:var(--muted)}
small{font-size:14px!important;line-height:1.45}

/* Actions et formulaires : zones faciles à lire et cliquer. */
.button{min-height:48px;padding:0 20px;border-radius:12px;font-size:15.5px;letter-spacing:.005em}
.button.small{min-height:44px;padding:0 16px;font-size:14.5px}
.input,textarea.input,select.input{min-height:50px;padding:13px 14px;font-size:16px;border-color:var(--line)}
textarea.input{min-height:120px;line-height:1.55}
.field{gap:8px}.field label{font-size:14.5px;line-height:1.35}.field-help,.field small{font-size:14px!important}
.check-line{font-size:14px!important;line-height:1.4}

/* Navigation : on doit pouvoir l'utiliser à distance sur un écran/TV. */
.sidebar{width:268px;padding:24px 18px}
.sidebar-brand{padding:6px 10px 27px}.brand{font-size:21px}.brand-mark{width:38px;height:38px;font-size:14px}
.side-nav{gap:6px}.side-nav>a{min-height:50px;padding:0 14px;border-radius:12px;gap:13px;font-size:16px}
.side-nav>a svg{width:23px;height:23px}.nav-badge{min-width:25px;height:25px;font-size:13px}
.team-switch{padding:13px;border-radius:14px}.team-switch small{font-size:13px!important}.team-switch strong{font-size:15px;max-width:150px}
.sidebar-user{gap:11px;padding-top:16px}.sidebar-user strong{font-size:15px}.sidebar-user>div>a{font-size:13.5px}.icon-link{width:44px;height:44px}
.main{margin-left:268px;padding:40px 42px 100px}.content,.page-head{max-width:1200px}.page-head{margin-bottom:28px}.page-head h1{font-size:34px}.page-head p{font-size:16px;line-height:1.55}

/* Cartes et hiérarchie. */
.feed-layout{grid-template-columns:minmax(0,740px) 350px;gap:30px}
.stack{gap:18px}.card{padding:22px;border-radius:16px}.section-title{margin-bottom:16px}.section-title h2,.section-title h3{font-size:20px}.section-title a{font-size:14.5px}
.tabs{gap:6px;padding:6px;border-radius:14px}.tabs a{min-height:40px;display:flex;align-items:center;padding:8px 15px;font-size:14.5px}
.chip-row{gap:8px}.chip{min-height:31px;padding:5px 11px;font-size:13.5px;line-height:1.25}
.status,.status-pill,.recruitment-type,.post-kind,.action-state,.request-count{font-size:13.5px;line-height:1.25}
.empty{padding:44px 24px;font-size:16px}.empty strong{font-size:19px}

/* Fil social. */
.composer{padding:20px}.composer textarea{min-height:78px;font-size:16.5px;line-height:1.55}.composer-bottom{padding-top:14px}
.post{padding:22px}.post-head{gap:12px}.post-meta strong{font-size:16px}.post-meta span{font-size:14px}.post-body{font-size:17px;line-height:1.62;margin:16px 0}.post-team{font-size:14px}
.post-actions{padding-top:12px;gap:8px}.action-btn{min-height:40px;padding:8px 12px;font-size:14px}.comment{font-size:15px}.comment-bubble{padding:10px 12px}.comment-form .input,.comment-form .button{min-height:42px}
.feed-tabs a{font-size:14.5px}.feed-hint{font-size:14.5px;line-height:1.5}.photo-button{font-size:14px;min-height:38px}.suggestion-info span,.suggestion-status{font-size:14px}

/* Profils, découverte et recrutement. */
.person-head h3,.team-head h3{font-size:18px}.person-head p,.team-head p{font-size:14px}.card-bio{font-size:15px;line-height:1.55}
.profile-main h1,.team-profile-head h1{font-size:32px}.stat strong{font-size:21px}.stat span{font-size:14px}.member .role{font-size:14px}
.recruitment-card h3{font-size:19px}.recruitment-card p{font-size:15px;line-height:1.55}
.quick-filter,.context-note{font-size:14.5px}.request-main span,.request-main p,.request-item.simple>b{font-size:14px}.team-facts{font-size:14px}.team-facts strong{font-size:16px}
.profile-status-text{font-size:14px}.primary-game-head h2{font-size:31px}.game-eyebrow{font-size:13.5px}.gaming-facts span{font-size:13px}.gaming-facts strong{font-size:15px}.schedule-line{font-size:14.5px}
.player-game-card .game-tag{font-size:13.5px}.player-game-card p{font-size:14.5px}.profile-since strong{font-size:14.5px}.choice-card strong{font-size:14px}.my-game-main>div:first-child span,.my-game-card p,.search-game-facts span,.search-schedule{font-size:14px}
.search-game-summary>div:first-child>span{font-size:13px}.search-game-summary>div:first-child>strong{font-size:17px}.search-game-summary>div:first-child>small{font-size:13.5px!important}
.match-context>div span,.team-need span{font-size:13px}.match-context>div strong{font-size:16px}.match-context p{font-size:14px}.match-fit-label,.match-fit-reasons{font-size:13.5px}

/* Vie d'équipe. */
.team-section-card .section-title h2,.team-wall-head h2{font-size:22px}.team-status-bar>div strong{font-size:18px}
.roster-main span,.team-application span{font-size:14px}.roster-role,.presence,.group-chat-label,.bubble-author{font-size:13px}.team-application p{font-size:14.5px}

/* Messagerie et notifications. */
.conversation-list h2{font-size:18px}.conversation-link{min-height:62px;padding:13px}.conversation-link span{font-size:14px}.message-stream{font-size:16px}.bubble{font-size:16px;line-height:1.55;padding:11px 14px}.bubble small{font-size:13.5px!important}.message-compose{padding:12px}.message-compose .input{font-size:16px}

/* V2.0 — Matchs internes : lisibles sans se pencher vers l'écran. */
.text-link{font-size:14px}.match-page-stats span{padding:8px 11px;font-size:14px}.match-page-stats strong{font-size:15px}
.match-create-card>summary{padding:17px 19px}.match-create-card>summary strong{font-size:17px}.match-create-form{gap:16px;padding:4px 19px 19px}.field-help{font-size:14px}
.lineup-builder-head{min-height:42px;font-size:13px}.lineup-row{min-height:60px;padding:8px 12px}.lineup-player strong{font-size:15px}.lineup-player small{font-size:13px!important}.lineup-choice span{width:38px;height:38px;font-size:14px}
.internal-match-card{padding:19px}.internal-match-head h3{font-size:19px}.internal-match-head p{font-size:14px}.match-game-label,.match-status{font-size:13px}.match-status{min-height:30px;padding:0 10px}
.match-side>strong{font-size:16px}.match-player-list>span{min-height:34px;padding:5px 10px 5px 5px;font-size:13px}.match-player-list .avatar.tiny{width:25px;height:25px;font-size:13px}
.match-versus{font-size:14px}.match-final-score strong{font-size:32px}.match-final-score span{font-size:18px}.match-note{font-size:14px;padding:12px}.match-result-entry>summary{font-size:14px}.result-form label{font-size:14px}.cancelled-matches>summary{font-size:14px}.cancelled-match-row span,.cancelled-match-row small,.cancelled-match-row strong{font-size:13.5px!important}

/* V2.1 — Classements : aucun tableau en micro-texte. */
.ranking-create-card>summary{padding:17px 19px}.ranking-create-form{gap:16px;padding:17px 19px 19px}.ranking-history-check{padding:13px}.ranking-history-check strong{font-size:15px}.ranking-history-check small,.ranking-create-foot p{font-size:13.5px!important}
.ranking-tabs{gap:9px;margin:19px 0 13px}.ranking-tab{padding:11px 14px}.ranking-tab span{font-size:14px}.ranking-tab small{font-size:13px!important}
.ranking-board-head{padding:20px}.ranking-board-head h2{font-size:23px}.ranking-board-head p{font-size:14px}.ranking-table{min-width:700px}.ranking-table th,.ranking-table td{padding:13px 14px;font-size:14px}.ranking-table th{font-size:13px}.ranking-player strong{font-size:15px}.ranking-player small{font-size:13px!important}.ranking-points strong{font-size:18px}
.ranking-empty-hint{padding:14px 19px}.ranking-empty-hint strong,.ranking-empty-hint span{font-size:14px}.archived-rankings>summary{font-size:14px}.archived-ranking-list strong{font-size:14px}.archived-ranking-list small,.archived-ranking-list b{font-size:13px!important}.match-ranking-form label,.match-ranking-form .compact-select{font-size:14px}.match-ranking-form .compact-select{min-height:40px}

/* V2.2 — Amicaux : mêmes standards de lecture. */
.friendly-create-card>summary{padding:17px 19px}.friendly-create-card>summary small{font-size:13.5px!important}.friendly-create-form{gap:15px;padding:17px 19px 19px}.empty-inline{padding:15px;font-size:14px}.friendly-section{margin-top:22px}.friendly-card{padding:19px}
.friendly-card-head h3{font-size:19px}.friendly-card-head p{font-size:14px}.friendly-versus-grid{gap:14px;margin-top:16px;padding:17px 0}.friendly-team-side>strong{font-size:16px}.friendly-team-side>span,.friendly-team-side em{font-size:13.5px}
.friendly-lineup-box>summary{padding:13px 14px;font-size:14px}.friendly-lineup-box>summary span{font-size:13px}.friendly-lineup-form{gap:12px;padding:0 14px 14px}.friendly-member-check{padding:10px 11px}.friendly-member-check strong{font-size:14px}.friendly-member-check small{font-size:13px!important}.friendly-final-score span{font-size:14px}.friendly-final-score strong{font-size:30px}.friendly-history>summary{font-size:14px}

/* Mobile : on conserve de vraies tailles de lecture, sans écraser le contenu. */
@media(max-width:760px){
  body{font-size:16px;line-height:1.58}
  .main{padding:0 14px 92px}.mobile-top{height:64px}.mobile-top .brand{font-size:19px}
  .page-head{margin:10px 0 17px}.page-head h1{font-size:27px}.page-head p{font-size:15px}
  .card{padding:16px;border-radius:14px}.stack{gap:14px}
  .bottom-nav{min-height:70px;padding:7px 4px max(7px,env(safe-area-inset-bottom));background:rgba(13,16,22,.97)}
  .bottom-nav a{min-height:54px;gap:4px;font-size:13px;font-weight:800}.bottom-nav a svg{width:24px;height:24px}
  .bottom-nav-badge{font-size:13px;min-width:22px;height:20px}
  .composer{padding:14px}.post{padding:16px}.post-body{font-size:16px}
  .button{min-height:48px;font-size:15px}.button.small{min-height:44px;font-size:14.5px}
  .input,textarea.input,select.input{min-height:50px;font-size:16px}
  .tabs a{min-height:42px;font-size:14px}.chip{font-size:13px}
  .gaming-facts{gap:0}.gaming-facts span{font-size:13px}.gaming-facts strong{font-size:15px}
  .bubble{max-width:90%;font-size:15.5px}.conversation-link{padding:12px}
  .lineup-builder-head,.lineup-row{grid-template-columns:minmax(0,1fr) 52px 52px 52px}.lineup-choice span{width:36px;height:36px}
  .ranking-table th,.ranking-table td{padding:11px 10px;font-size:13.5px}.ranking-table th{font-size:13px}
  .friendly-card,.internal-match-card{padding:16px}
}

/* Grand écran / TV : NTGames ne reste plus minuscule au centre. */
@media(min-width:1600px){
  body{font-size:18px}
  .sidebar{width:288px;padding:28px 20px}.main{margin-left:288px;padding:48px 56px 110px}
  .content,.page-head{max-width:1320px}.feed-layout{grid-template-columns:minmax(0,820px) 390px;gap:34px}
  .side-nav>a{min-height:54px;font-size:17px}.page-head h1{font-size:38px}.page-head p{font-size:17px}
  .card{padding:24px}.post-body{font-size:18px}.button{font-size:16.5px}.input,textarea.input,select.input{font-size:17px}
  .section-title h2,.section-title h3{font-size:22px}.chip{font-size:14px}
}

/* =========================================================
   V2.4 — IDENTITÉ VISUELLE PREMIUM
   Design plus profond, plus gaming et plus fini, sans réduire
   les tailles de lecture du passage V2.3.
   ========================================================= */
:root{
  --bg:#080a10;
  --panel:#10131b;
  --panel2:#161b26;
  --line:#252c3a;
  --text:#f7f8fc;
  --muted:#9ca6b8;
  --accent:#7d61ff;
  --accent2:#a17cff;
  --good:#38d996;
  --danger:#ff6f81;
  --warn:#f4c45a;
  --r:18px;
  --shadow:0 18px 55px rgba(0,0,0,.26);
  --shadow-soft:0 10px 30px rgba(0,0,0,.18);
  --accent-glow:0 10px 30px rgba(125,97,255,.22);
}

html{background:#080a10}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at 80% -10%,rgba(125,97,255,.11),transparent 31rem),
    radial-gradient(circle at 12% 105%,rgba(62,87,180,.07),transparent 32rem),
    var(--bg);
  background-attachment:fixed;
}
body:before{
  content:"";
  position:fixed;
  z-index:-1;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);
  background-size:52px 52px;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),transparent 78%);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),transparent 78%);
}
::selection{background:rgba(125,97,255,.35);color:#fff}
*{scrollbar-width:thin;scrollbar-color:#333a4c #0d1017}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:#0d1017}
*::-webkit-scrollbar-thumb{background:#333a4c;border:2px solid #0d1017;border-radius:999px}

/* Marque et navigation */
.brand{letter-spacing:-.55px}
.brand-mark{
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,#7254ff,#a46cff);
  box-shadow:0 8px 24px rgba(112,82,255,.28),inset 0 1px 0 rgba(255,255,255,.22);
  border:1px solid rgba(255,255,255,.12);
}
.brand-mark:after{
  content:"";
  position:absolute;
  width:28px;
  height:70px;
  left:-20px;
  top:-18px;
  transform:rotate(32deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);
}
.sidebar{
  background:linear-gradient(180deg,rgba(13,16,24,.98),rgba(10,13,19,.98));
  border-right-color:rgba(92,102,126,.22);
  box-shadow:12px 0 45px rgba(0,0,0,.13);
}
.sidebar:after{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:190px;
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(circle at 25% 0,rgba(125,97,255,.12),transparent 68%);
}
.side-nav>a{position:relative;border:1px solid transparent;transition:background .18s,border-color .18s,color .18s,transform .18s}
.side-nav>a:hover{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.035);transform:translateX(2px)}
.side-nav>a.is-active{
  background:linear-gradient(90deg,rgba(125,97,255,.18),rgba(125,97,255,.055));
  border-color:rgba(135,112,255,.18);
  box-shadow:inset 3px 0 0 #9279ff;
}
.side-nav>a.is-active svg{color:#b4a4ff;filter:drop-shadow(0 0 8px rgba(132,104,255,.28))}
.nav-badge,.header-badge,.bottom-nav-badge{box-shadow:0 5px 18px rgba(125,97,255,.32)}
.team-switch{
  background:linear-gradient(135deg,rgba(125,97,255,.08),rgba(255,255,255,.018));
  border-color:rgba(139,119,238,.18);
  transition:.18s;
}
.team-switch:hover{background:linear-gradient(135deg,rgba(125,97,255,.14),rgba(255,255,255,.03));border-color:rgba(139,119,238,.32);transform:translateY(-1px)}
.mini-logo{background:linear-gradient(145deg,#282348,#19182d);box-shadow:inset 0 0 0 1px rgba(180,167,255,.12)}
.sidebar-user .avatar{box-shadow:0 0 0 2px #11151e,0 0 0 3px rgba(141,116,255,.28)}

/* Surfaces générales */
.card{
  background:linear-gradient(180deg,rgba(20,24,34,.97),rgba(15,18,26,.97));
  border-color:rgba(91,102,127,.28);
  box-shadow:0 1px 0 rgba(255,255,255,.025) inset,var(--shadow-soft);
}
.card.flat{box-shadow:none}
.card:not(.profile-hero):not(.team-hero):not(.message-layout){transition:border-color .18s,box-shadow .18s,transform .18s}
.grid>.card:hover,.person-card:hover,.team-card:hover,.recruitment-card:hover{
  border-color:rgba(132,108,255,.32);
  box-shadow:0 16px 38px rgba(0,0,0,.22),0 0 0 1px rgba(125,97,255,.035) inset;
  transform:translateY(-2px);
}
.page-head h1{font-weight:900;text-shadow:0 6px 24px rgba(0,0,0,.18)}
.page-head p{color:#a7b0c1}
.section-title h2,.section-title h3{font-weight:900}
.muted{color:#9ba5b6}

/* Boutons et formulaires */
.button{
  background:linear-gradient(135deg,#7458f4,#906cff);
  box-shadow:0 8px 22px rgba(111,83,232,.18),inset 0 1px 0 rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.055);
}
.button:hover{background:linear-gradient(135deg,#8064ff,#a17dff);box-shadow:var(--accent-glow),inset 0 1px 0 rgba(255,255,255,.2);transform:translateY(-1px)}
.button:active{transform:translateY(0);box-shadow:0 4px 13px rgba(111,83,232,.16)}
.button.ghost{background:rgba(255,255,255,.018);border-color:#303748;box-shadow:none}
.button.ghost:hover{background:#1a1f2b;border-color:#48526a;box-shadow:none}
.button.soft{background:linear-gradient(135deg,#282043,#211c37);border-color:rgba(168,149,255,.12);box-shadow:none}
.button.danger{background:linear-gradient(135deg,#411c25,#32171d);box-shadow:none}
.input,textarea.input,select.input{
  background:rgba(10,13,19,.72);
  border-color:#2d3444;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
}
.input:hover,textarea.input:hover,select.input:hover{border-color:#3b455a}
.input:focus,textarea.input:focus,select.input:focus{border-color:#8069ed;box-shadow:0 0 0 4px rgba(125,97,255,.105),inset 0 1px 0 rgba(255,255,255,.025)}

/* Onglets, badges et états */
.tabs{background:rgba(8,11,16,.65);border-color:#282f3d;box-shadow:inset 0 1px 0 rgba(255,255,255,.018)}
.tabs a{transition:.16s}
.tabs a:hover{color:#d9deea;background:rgba(255,255,255,.035)}
.tabs a.active{background:linear-gradient(135deg,#2a2546,#242039);box-shadow:0 5px 16px rgba(0,0,0,.16),inset 0 0 0 1px rgba(143,121,255,.12)}
.chip{background:rgba(22,27,38,.86);border-color:#31394a;color:#c3cad6}
.chip.accent{background:linear-gradient(135deg,#282142,#211c38);border-color:#52488a;color:#d2c9ff}
.chip.good{background:#142b25;border-color:#285344;color:#83e6b5}
.status:before{box-shadow:0 0 0 3px rgba(109,118,134,.08)}
.status.looking:before{box-shadow:0 0 0 3px rgba(56,217,150,.09),0 0 12px rgba(56,217,150,.18)}

/* Fil social */
.composer{position:relative;overflow:hidden}
.composer:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#7d61ff 35%,#b784ff 65%,transparent);opacity:.65}
.composer textarea::placeholder{color:#7f899c}
.post{position:relative}
.post:hover{border-color:rgba(107,119,148,.38)}
.post .avatar{box-shadow:0 0 0 2px #121620,0 0 0 3px rgba(128,106,231,.16)}
.post-image{border-color:#303747;box-shadow:0 12px 32px rgba(0,0,0,.2)}
.post-actions{border-top-color:rgba(94,105,130,.24)}
.action-btn{transition:.15s}
.action-btn:hover,.action-btn.active{background:rgba(125,97,255,.09);color:#e7e2ff}
.comment-bubble{background:#171c27;border:1px solid rgba(88,99,124,.16)}

/* Cartes joueurs / équipes / recrutement */
.person-card,.team-card,.recruitment-card{position:relative;overflow:hidden}
.person-card:before,.team-card:before,.recruitment-card:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(125,97,255,.72),transparent);
  opacity:.45;
}
.person-card .avatar,.suggestion .avatar{box-shadow:0 0 0 2px #121620,0 0 0 3px rgba(140,116,255,.16)}
.person-head h3,.team-head h3{font-weight:900}
.card-bio{color:#c0c7d2}
.match-context,.context-note{
  background:linear-gradient(135deg,rgba(125,97,255,.08),rgba(18,22,31,.8));
  border-color:rgba(125,97,255,.18);
}
.match-fit{background:rgba(125,97,255,.055);border-color:rgba(125,97,255,.14)}
.match-fit-label{color:#cbbfff}

/* Profils : la bannière et l'identité deviennent la vraie accroche visuelle */
.profile-hero,.team-hero,.team-hero-simple{border-color:rgba(103,115,143,.32);box-shadow:0 24px 60px rgba(0,0,0,.28)}
.profile-cover{
  background:
    radial-gradient(circle at 18% 30%,rgba(131,96,255,.9),transparent 31%),
    radial-gradient(circle at 75% 0,rgba(73,95,182,.5),transparent 37%),
    linear-gradient(120deg,#1a1e30,#10131b);
}
.player-profile-hero .profile-cover.has-image:after{background:linear-gradient(180deg,rgba(7,9,14,.04),rgba(8,10,16,.68))}
.avatar.huge{
  box-shadow:0 0 0 4px #121620,0 0 0 6px rgba(139,116,255,.38),0 14px 38px rgba(0,0,0,.34);
}
.profile-name-line h1{letter-spacing:-.04em}
.profile-status-text{background:linear-gradient(135deg,#1a1f2a,#171b24);border:1px solid rgba(94,105,130,.22)}
.gaming-passport,.player-profile-side .card{background:linear-gradient(180deg,#131723,#0f1219)}
.primary-game-card,.player-game-card{border-color:rgba(92,104,131,.26)}
.primary-game-card{background:linear-gradient(135deg,rgba(125,97,255,.075),rgba(18,22,31,.9))}
.game-eyebrow{color:#ae9dff}

/* Équipes */
.team-logo{
  background:linear-gradient(145deg,#33285e,#211d3c);
  border:1px solid rgba(175,155,255,.18);
  box-shadow:0 12px 32px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.1);
}
.team-hero-simple{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(23,28,40,.98),rgba(15,18,26,.98))}
.team-hero-simple:before{content:"";position:absolute;width:320px;height:320px;right:-130px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(125,97,255,.14),transparent 68%);pointer-events:none}
.team-status-bar,.team-section-card{border-color:rgba(92,104,130,.25)}
.roster-card{transition:.15s}
.roster-card:hover{background:rgba(255,255,255,.018)}

/* Messagerie */
.message-layout{background:linear-gradient(180deg,rgba(16,20,29,.98),rgba(12,15,22,.98));border-color:rgba(94,105,130,.28);box-shadow:0 22px 55px rgba(0,0,0,.26)}
.conversation-list{background:rgba(9,12,18,.35)}
.conversation-link{transition:.15s}
.conversation-link:hover{background:rgba(255,255,255,.032)}
.conversation-link.active{background:linear-gradient(90deg,rgba(125,97,255,.12),rgba(125,97,255,.035));box-shadow:inset 3px 0 0 #8d73ff}
.conversation-head{background:rgba(15,19,27,.72);backdrop-filter:blur(14px)}
.message-stream{background:radial-gradient(circle at 80% 20%,rgba(125,97,255,.035),transparent 28rem)}
.bubble{background:#1a202c;border:1px solid rgba(106,118,145,.14);box-shadow:0 6px 18px rgba(0,0,0,.09)}
.bubble.mine{background:linear-gradient(135deg,#392c70,#30275d);border-color:rgba(163,142,255,.16)}
.message-compose{background:rgba(10,13,19,.82);backdrop-filter:blur(12px)}
.notice.unread{background:linear-gradient(90deg,rgba(125,97,255,.095),rgba(16,20,29,.98));box-shadow:inset 3px 0 0 #8269ec}

/* Outils équipe : matches, classements et amicaux gagnent en profondeur */
.internal-match-card,.friendly-card,.ranking-board-card,.match-create-card,.ranking-create-card,.friendly-create-card{
  background:linear-gradient(180deg,rgba(19,23,33,.98),rgba(14,17,24,.98));
  border-color:rgba(94,106,133,.28);
  box-shadow:0 12px 34px rgba(0,0,0,.15);
}
.internal-match-card:hover,.friendly-card:hover{border-color:rgba(125,97,255,.26)}
.match-status,.match-game-label{letter-spacing:.02em}
.match-final-score strong,.friendly-final-score strong{color:#fff;text-shadow:0 0 22px rgba(151,126,255,.16)}
.lineup-row:nth-child(even){background:rgba(255,255,255,.012)}
.lineup-choice span{transition:.15s}
.lineup-choice:hover span{border-color:#6f5ed0;background:#211d39}
.ranking-tabs{padding-bottom:5px}
.ranking-tab{transition:.15s;background:rgba(10,13,19,.65)}
.ranking-tab:hover{border-color:#454e65;color:#d4d9e3}
.ranking-tab.active{background:linear-gradient(135deg,#2c2549,#211c37);border-color:#6759a2;box-shadow:0 8px 20px rgba(0,0,0,.14)}
.ranking-table th{background:#0d1118}
.ranking-table tbody tr{transition:.14s}
.ranking-table tbody tr:hover{background:rgba(125,97,255,.035)}
.ranking-table tbody tr.top-rank{background:linear-gradient(90deg,rgba(125,97,255,.105),rgba(125,97,255,.025) 58%,transparent)}
.friendly-card.pending{border-color:rgba(148,122,255,.38);box-shadow:0 12px 38px rgba(94,72,185,.08)}
.friendly-lineup-box{background:rgba(9,12,18,.62)}

/* Landing / connexion */
.public-header{position:relative;z-index:2}
.hero{position:relative}
.hero:before{content:"";position:absolute;z-index:-1;left:-90px;top:30px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(125,97,255,.12),transparent 68%)}
.hero h1{background:linear-gradient(180deg,#fff 30%,#cfd3df);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 20px 60px rgba(0,0,0,.25)}
.hero-card{border-color:rgba(104,115,143,.3);background:linear-gradient(160deg,rgba(25,29,42,.98),rgba(13,16,23,.98));box-shadow:0 35px 80px rgba(0,0,0,.32)}
.feature{transition:.18s}
.feature:hover{background:linear-gradient(180deg,rgba(125,97,255,.04),transparent)}
.auth-aside{background:radial-gradient(circle at 20% 20%,rgba(78,60,162,.75) 0,transparent 38%),radial-gradient(circle at 78% 78%,rgba(52,73,149,.22),transparent 35%),#0b0e15}
.auth-box{padding:28px;border:1px solid rgba(93,104,131,.24);border-radius:22px;background:rgba(15,18,26,.64);box-shadow:0 24px 70px rgba(0,0,0,.25);backdrop-filter:blur(16px)}

/* Mobile : même identité, moins d'effets lourds et aucune perte de lisibilité */
@media(max-width:760px){
  body{background:radial-gradient(circle at 90% 0,rgba(125,97,255,.09),transparent 18rem),var(--bg)}
  body:before{display:none}
  .mobile-top{position:sticky;z-index:35;top:0;margin:0 -14px;padding:0 14px;background:rgba(8,10,16,.88);border-bottom:1px solid rgba(80,91,116,.18);backdrop-filter:blur(16px)}
  .bottom-nav{border-top-color:rgba(91,102,126,.26);box-shadow:0 -10px 35px rgba(0,0,0,.22)}
  .bottom-nav a{border-radius:10px}
  .bottom-nav a.is-active{background:linear-gradient(180deg,rgba(125,97,255,.13),rgba(125,97,255,.025));color:#fff}
  .card{box-shadow:0 8px 24px rgba(0,0,0,.13)}
  .grid>.card:hover,.person-card:hover,.team-card:hover,.recruitment-card:hover{transform:none}
  .profile-hero,.team-hero,.team-hero-simple{box-shadow:0 14px 36px rgba(0,0,0,.21)}
  .avatar.huge{box-shadow:0 0 0 3px #121620,0 0 0 5px rgba(139,116,255,.32),0 10px 30px rgba(0,0,0,.28)}
  .auth-box{padding:20px;border-radius:18px}
}

/* TV / grand écran : davantage d'espace sans réduire la densité utile. */
@media(min-width:1600px){
  .card{border-radius:19px}
  .sidebar{box-shadow:16px 0 55px rgba(0,0,0,.16)}
  .person-card,.team-card,.recruitment-card{min-height:170px}
  .profile-hero,.team-hero,.team-hero-simple{box-shadow:0 30px 75px rgba(0,0,0,.3)}
}

/* =========================================================
   V2.5 — ESPACE ADMIN
   Même confort de lecture que le reste de NTGames.
   ========================================================= */
.admin-entry{display:flex;align-items:center;gap:11px;min-height:52px;padding:9px 11px;margin-bottom:12px;border:1px solid rgba(125,97,255,.22);border-radius:13px;background:linear-gradient(135deg,rgba(125,97,255,.12),rgba(19,23,33,.85));color:#ded8ff;transition:.18s}
.admin-entry:hover{border-color:rgba(151,129,255,.42);background:linear-gradient(135deg,rgba(125,97,255,.18),rgba(24,28,40,.95));transform:translateY(-1px)}
.admin-entry svg{width:24px;height:24px;color:#aa97ff}.admin-entry span{min-width:0}.admin-entry small{display:block;font-size:13px;color:#9ca7ba;font-weight:800}.admin-entry strong{display:block;font-size:15px}.mobile-top-actions{display:flex;align-items:center;gap:4px}.admin-mobile-link{color:#c0b3ff}
.admin-content{padding-bottom:30px}.admin-tabs{max-width:1200px;margin:0 auto 22px;padding:6px;display:flex;gap:6px;overflow:auto;border:1px solid rgba(90,102,130,.28);border-radius:15px;background:rgba(10,13,19,.76)}
.admin-tabs a{display:flex;align-items:center;justify-content:center;min-height:43px;padding:8px 15px;border-radius:10px;color:#aeb7c7;font-size:14px;font-weight:850;white-space:nowrap;transition:.16s}
.admin-tabs a:hover{background:rgba(255,255,255,.035);color:#fff}.admin-tabs a.active{background:linear-gradient(135deg,#302653,#251f42);color:#fff;box-shadow:inset 0 0 0 1px rgba(145,123,255,.2),0 7px 18px rgba(0,0,0,.16)}
.admin-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:18px}.admin-stat-card{position:relative;overflow:hidden;min-height:145px;padding:19px;border:1px solid rgba(91,103,130,.28);border-radius:17px;background:linear-gradient(160deg,rgba(22,26,38,.98),rgba(13,16,24,.98));box-shadow:0 12px 32px rgba(0,0,0,.14);transition:.18s}.admin-stat-card:after{content:"";position:absolute;right:-46px;top:-52px;width:125px;height:125px;border-radius:50%;background:radial-gradient(circle,rgba(125,97,255,.18),transparent 70%)}.admin-stat-card:hover{transform:translateY(-2px);border-color:rgba(135,111,255,.42)}.admin-stat-card span{display:block;color:#a9b3c4;font-size:14px;font-weight:850}.admin-stat-card strong{display:block;margin:7px 0 2px;font-size:34px;line-height:1.05;letter-spacing:-.04em}.admin-stat-card small{font-size:13.5px;color:#8893a6}
.admin-health-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.admin-health-card,.admin-privacy-card{min-height:188px}.admin-status-lines{display:grid;gap:6px}.admin-status-lines>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:42px;padding:7px 8px;border-radius:10px;background:rgba(255,255,255,.018);font-size:15px}.admin-status-lines strong{font-size:17px}.admin-dot{width:10px;height:10px;border-radius:50%;background:#7f8998}.admin-dot.good{background:var(--good);box-shadow:0 0 12px rgba(56,217,150,.35)}.admin-dot.warn{background:var(--warn)}.admin-dot.danger{background:var(--danger)}.admin-privacy-card p{font-size:15.5px;line-height:1.6}
.admin-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-list{display:grid}.admin-list-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;min-height:62px;padding:9px 2px;border-top:1px solid rgba(88,99,124,.2)}.admin-list-row:first-child{border-top:0}.admin-list-row:hover .admin-list-main strong{color:#cfc5ff}.admin-list-main{min-width:0}.admin-list-main strong,.admin-list-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-list-main strong{font-size:15px}.admin-list-main strong em{font-style:normal;color:#9585e3}.admin-list-main small{font-size:13.5px;color:#8f9aad}.admin-team-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#211c3d;color:#c0b4ff;font-size:14px;font-weight:900}
.admin-pill{display:inline-flex;align-items:center;justify-content:center;min-height:29px;padding:4px 9px;border:1px solid #343c4e;border-radius:999px;background:#171b24;color:#aeb8c8;font-size:13px;font-weight:900;text-transform:capitalize;white-space:nowrap}.admin-pill.active,.admin-pill.open{border-color:#265542;background:#132b23;color:#80e8b6}.admin-pill.suspended{border-color:#67512a;background:#2b2314;color:#f0ca78}.admin-pill.banned{border-color:#69303a;background:#31181e;color:#ff9aaa}.admin-pill.admin{border-color:#5e4fab;background:#251f45;color:#c8bbff}.admin-pill.neutral,.admin-pill.closed{color:#9ba5b6}
.admin-filter-bar{display:grid;grid-template-columns:minmax(260px,1fr) 190px 190px auto;gap:10px;align-items:center;margin-bottom:14px;padding:14px}.admin-filter-bar.admin-content-filter{grid-template-columns:minmax(260px,1fr) auto}.admin-filter-bar .input{min-height:46px}.admin-filter-search{min-width:0}.admin-result-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:12px 2px 15px;color:#99a4b5;font-size:14px}.admin-result-head strong{color:#e9edf5;font-size:16px}.admin-result-head span{text-align:right}
.admin-user-grid,.admin-team-grid,.admin-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-user-card,.admin-team-card,.admin-game-card{min-width:0}.admin-user-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:start}.admin-user-head h2,.admin-team-head h2{margin:1px 0 2px;font-size:19px;line-height:1.2}.admin-user-head>div>a{display:block;color:#b5a7ff;font-size:14px;font-weight:800}.admin-user-head>div>span{display:block;color:#929daf;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-facts,.admin-team-facts,.admin-game-stats{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.admin-user-facts span,.admin-team-facts span,.admin-game-stats span{padding:6px 9px;border-radius:9px;background:rgba(255,255,255,.025);color:#98a3b5;font-size:13.5px}.admin-user-facts strong,.admin-team-facts strong,.admin-game-stats strong{color:#e8ebf3}.admin-user-actions{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;align-items:end;padding-top:14px;border-top:1px solid rgba(91,102,128,.22)}.admin-user-actions label,.admin-game-edit label,.admin-game-form label{display:grid;gap:5px;color:#aeb7c7;font-size:13.5px;font-weight:800}.admin-user-actions .input{min-height:42px;padding-top:8px;padding-bottom:8px}.admin-self-note{grid-column:1/-1;padding:9px 11px;border-radius:10px;background:rgba(125,97,255,.08);color:#bcb0f6;font-size:13.5px}
.admin-team-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:center}.admin-team-head span,.admin-team-head small{display:block;color:#929daf;font-size:13.5px}.admin-team-logo{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#352a63,#211d3d);color:#cec2ff;font-size:17px;font-weight:900}.admin-team-logo img{width:100%;height:100%;object-fit:cover}.admin-team-actions,.admin-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding-top:14px;border-top:1px solid rgba(91,102,128,.22)}.admin-team-actions form,.admin-card-actions form{margin:0}
.admin-subtabs{display:flex;gap:8px;margin:0 0 12px;overflow:auto}.admin-subtabs a{min-height:40px;padding:8px 13px;border:1px solid #2d3545;border-radius:10px;background:#11151d;color:#aeb7c7;font-size:14px;font-weight:850;white-space:nowrap}.admin-subtabs a.active{border-color:#5d50a4;background:#241f40;color:#fff}.admin-moderation-list{gap:13px}.admin-moderation-card{padding:18px}.admin-moderation-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.admin-moderation-head>div:nth-child(2) strong,.admin-moderation-head>div:nth-child(2) span{display:block}.admin-moderation-head>div:nth-child(2) strong{font-size:15px}.admin-moderation-head>div:nth-child(2) span{color:#8f9aab;font-size:13.5px}.admin-content-body{margin:14px 0;font-size:15.5px;line-height:1.62;overflow-wrap:anywhere}.admin-content-image{max-height:330px;width:auto;max-width:100%;border-radius:13px;border:1px solid #303748;object-fit:contain}.admin-parent-content{margin:12px 0;padding:10px 12px;border-left:3px solid #55498e;border-radius:0 9px 9px 0;background:#121722;color:#98a3b6;font-size:13.5px}.admin-recruit-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#211d3d;color:#c8bcff;font-size:14px;font-weight:900}
.admin-add-game{padding:0;margin-bottom:17px}.admin-add-game>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 19px;cursor:pointer}.admin-add-game>summary strong{font-size:17px}.admin-add-game>summary span{color:#929daf;font-size:13.5px}.admin-game-form{display:grid;grid-template-columns:1.3fr 1fr 120px auto;gap:10px;align-items:end;padding:0 19px 19px}.admin-game-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.admin-game-head strong,.admin-game-head span{display:block}.admin-game-head strong{font-size:18px}.admin-game-head>div>span{margin-top:2px;color:#8994a6;font-size:13px}.admin-game-edit{display:grid;grid-template-columns:1.2fr 1fr 100px;gap:9px;margin-top:14px}.admin-game-edit .input{min-height:42px}.admin-game-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:13px;border-top:1px solid rgba(91,102,128,.22)}.admin-switch{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:#b2bbca}.admin-switch input{width:19px;height:19px;accent-color:var(--accent)}
.admin-pagination{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.admin-pagination:has(a:only-child){justify-content:flex-end}

@media(max-width:1050px){
  .admin-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-user-grid,.admin-team-grid,.admin-game-grid{grid-template-columns:1fr}.admin-filter-bar{grid-template-columns:minmax(220px,1fr) 160px 160px auto}.admin-game-form{grid-template-columns:1fr 1fr 120px}.admin-game-form .button{grid-column:1/-1}.admin-two-columns{grid-template-columns:1fr}
}
@media(max-width:760px){
  .admin-tabs{margin:0 0 16px;border-radius:12px;padding:5px}.admin-tabs a{min-height:42px;padding:8px 12px;font-size:13.5px}.admin-stat-grid{grid-template-columns:1fr 1fr;gap:10px}.admin-stat-card{min-height:128px;padding:15px}.admin-stat-card strong{font-size:29px}.admin-health-grid{grid-template-columns:1fr}.admin-filter-bar,.admin-filter-bar.admin-content-filter{grid-template-columns:1fr}.admin-filter-bar .button{width:100%}.admin-result-head{align-items:flex-start}.admin-user-actions{grid-template-columns:1fr 1fr}.admin-user-actions .button{grid-column:1/-1;width:100%}.admin-team-actions,.admin-card-actions{justify-content:stretch}.admin-team-actions form,.admin-card-actions form{flex:1}.admin-team-actions .button,.admin-card-actions .button{width:100%}.admin-moderation-head{grid-template-columns:auto minmax(0,1fr)}.admin-moderation-head>.admin-pill{grid-column:2;justify-self:start}.admin-game-form,.admin-game-edit{grid-template-columns:1fr}.admin-game-form .button{grid-column:auto}.admin-add-game>summary{align-items:flex-start;flex-direction:column}.admin-content-image{width:100%;max-height:280px}.admin-entry{display:none}
}
@media(max-width:470px){
  .admin-stat-grid{grid-template-columns:1fr}.admin-user-head{grid-template-columns:auto minmax(0,1fr)}.admin-user-head>.admin-pill{grid-column:2;justify-self:start}.admin-user-actions{grid-template-columns:1fr}.admin-list-row{grid-template-columns:auto minmax(0,1fr)}.admin-list-row>.admin-pill{grid-column:2;justify-self:start}.admin-result-head{display:grid;gap:3px}.admin-result-head span{text-align:left}
}
@media(min-width:1600px){
  .admin-tabs{max-width:1320px}.admin-stat-card{min-height:158px;padding:22px}.admin-stat-card span{font-size:15px}.admin-stat-card strong{font-size:39px}.admin-stat-card small{font-size:14px}.admin-user-head h2,.admin-team-head h2{font-size:21px}.admin-content-body{font-size:16.5px}.admin-game-head strong{font-size:20px}
}

/* =========================================================
   V2.6 — SIGNALEMENTS + MODÉRATION
   Visible quand nécessaire, jamais agressif dans l'interface joueur.
   ========================================================= */
.report-button{border-color:rgba(224,105,121,.22)!important;color:#c9a7ad!important;background:rgba(73,28,38,.12)!important}
.report-button:hover{border-color:rgba(239,119,135,.42)!important;color:#ffd3d9!important;background:rgba(91,32,44,.22)!important}
.report-action{margin-left:auto;color:#9d858a!important;text-decoration:none}
.report-action:hover{color:#ffc1ca!important;background:rgba(108,41,52,.2)!important}
.comment-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:3px}.comment-head strong{margin-right:0}.comment-head a{color:#9f858b;font-size:13px;font-weight:800}.comment-head a:hover{color:#ffc1ca}.comment-text{line-height:1.5;overflow-wrap:anywhere}
.report-page{max-width:780px}.report-target-card{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px;background:linear-gradient(145deg,rgba(28,31,44,.98),rgba(16,19,28,.98));border-color:rgba(112,122,150,.28)}
.report-target-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:14px;background:rgba(155,74,88,.14);border:1px solid rgba(230,114,132,.2);color:#ff9cab}.report-target-icon svg{width:25px;height:25px}.report-target-card h2{margin:4px 0 6px;font-size:21px}.report-target-card p{margin:0;color:#aab3c2;line-height:1.55;overflow-wrap:anywhere}
.report-form{padding:22px}.report-reasons{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0 20px}.report-reason-option{position:relative;display:flex;align-items:center;gap:10px;min-height:54px;padding:11px 13px;border:1px solid #30384a;border-radius:12px;background:#121720;color:#cbd2df;font-size:14px;font-weight:800;cursor:pointer;transition:.15s}.report-reason-option:hover{border-color:#51476e;background:#171b27}.report-reason-option:has(input:checked){border-color:#735d8c;background:linear-gradient(135deg,rgba(107,70,122,.24),rgba(23,26,37,.96));color:#fff}.report-reason-option input{width:19px;height:19px;margin:0;accent-color:#b56c7d}.report-details-field{display:grid;gap:7px;color:#b6becd;font-size:14px;font-weight:800}.report-details-field textarea{min-height:130px;resize:vertical;line-height:1.55}.report-note{display:grid;gap:4px;margin-top:15px;padding:13px 14px;border-radius:11px;background:rgba(125,97,255,.06);border:1px solid rgba(125,97,255,.13)}.report-note strong{font-size:14px;color:#d9d2ff}.report-note span{font-size:13.5px;color:#9ba5b7;line-height:1.5}.report-form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.report-form-actions .button.danger{background:linear-gradient(135deg,#632b38,#47202a);color:#ffd6dc}.report-form-actions .button.danger:hover{background:linear-gradient(135deg,#743342,#54252f)}
.admin-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;margin-left:7px;padding:0 7px;border-radius:999px;background:#562533;color:#ffc2cc;font-size:13px;font-weight:950}.admin-tabs a.active .admin-tab-badge{background:#7e3345;color:#fff}.admin-stat-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.admin-stat-card.has-alert{border-color:rgba(225,100,120,.36);background:linear-gradient(160deg,rgba(49,25,34,.98),rgba(18,17,25,.98))}.admin-stat-card.has-alert:after{background:radial-gradient(circle,rgba(226,84,111,.22),transparent 70%)}
.admin-report-status-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:14px}.admin-report-status-tabs a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:55px;padding:10px 13px;border:1px solid #303849;border-radius:12px;background:#11161e;color:#abb5c5;font-size:14px;font-weight:850}.admin-report-status-tabs a strong{display:grid;place-items:center;min-width:29px;height:29px;padding:0 7px;border-radius:999px;background:#1d2330;color:#d9deea;font-size:14px}.admin-report-status-tabs a:hover{border-color:#4a5266;color:#fff}.admin-report-status-tabs a.active{border-color:#5d50a4;background:linear-gradient(135deg,#272141,#1b1c2c);color:#fff}.admin-report-filter{grid-template-columns:minmax(260px,1fr) 210px auto}.admin-report-list{gap:14px}.admin-report-card{padding:19px}.admin-report-card.is-open{border-color:rgba(222,102,119,.28);box-shadow:inset 3px 0 0 rgba(222,102,119,.46),0 12px 28px rgba(0,0,0,.11)}.admin-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.admin-report-heading{display:flex;align-items:flex-start;gap:11px;min-width:0}.admin-report-heading h2{margin:1px 0 3px;font-size:17px;line-height:1.3}.admin-report-heading p{margin:0;color:#929dae;font-size:13.5px}.admin-report-type{display:inline-flex;align-items:center;justify-content:center;min-height:31px;padding:5px 9px;border-radius:9px;background:#211d39;color:#c7bbff;font-size:13px;font-weight:900;white-space:nowrap}.admin-report-snapshot{margin:15px 0 10px;padding:13px 14px;border-radius:12px;background:#10151e;border:1px solid rgba(91,102,128,.2)}.admin-report-snapshot p{margin:5px 0 0;color:#d2d8e3;font-size:14.5px;line-height:1.6;overflow-wrap:anywhere}.admin-target-missing{display:inline-flex;margin-top:9px;padding:5px 8px;border-radius:8px;background:#2d1a20;color:#f3a7b3;font-size:13px;font-weight:850}.admin-report-details{margin:10px 0 13px;padding:11px 13px;border-left:3px solid #665496;background:rgba(43,36,65,.28);border-radius:0 10px 10px 0}.admin-report-details strong{display:block;margin-bottom:4px;font-size:13.5px;color:#bfb4ed}.admin-report-details p{margin:0;color:#b3bdcc;font-size:14px;line-height:1.55}.admin-report-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:13px 0}.admin-report-review{display:grid;grid-template-columns:170px minmax(260px,1fr) auto;gap:10px;align-items:end;padding-top:14px;border-top:1px solid rgba(91,102,128,.22)}.admin-report-review label{display:grid;gap:5px;color:#aeb7c7;font-size:13.5px;font-weight:800}.admin-report-review .input{min-height:42px}.admin-report-handler{margin-top:9px;color:#8994a6;font-size:13px}.admin-pill.reviewing{border-color:#69572c;background:#2c2516;color:#f2ce7a}.admin-pill.resolved{border-color:#275844;background:#132c24;color:#82e8b8}.admin-pill.dismissed{border-color:#3d4658;background:#181d27;color:#a9b3c4}.admin-install-warning code{font-size:14px;color:#d5ccff}
@media(max-width:1050px){.admin-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-report-status-tabs{grid-template-columns:repeat(3,1fr)}.admin-report-review{grid-template-columns:150px 1fr}.admin-report-review .button{grid-column:1/-1;justify-self:end}.admin-report-filter{grid-template-columns:minmax(220px,1fr) 190px auto}}
@media(max-width:760px){.report-reasons{grid-template-columns:1fr}.report-target-card{padding:15px}.report-form{padding:16px}.report-form-actions{display:grid;grid-template-columns:1fr}.report-form-actions .button{width:100%}.comment-head{align-items:flex-start}.admin-report-status-tabs{display:flex;overflow:auto;padding-bottom:2px}.admin-report-status-tabs a{flex:0 0 auto;min-width:145px}.admin-report-filter{grid-template-columns:1fr}.admin-report-filter .button{width:100%}.admin-report-head{display:grid}.admin-report-head>.admin-pill{justify-self:start}.admin-report-heading{display:grid}.admin-report-review{grid-template-columns:1fr}.admin-report-review .button{grid-column:auto;justify-self:stretch;width:100%}.admin-report-links{display:grid;grid-template-columns:1fr 1fr}.admin-report-links .button{width:100%}.admin-stat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:470px){.admin-report-links{grid-template-columns:1fr}.admin-stat-grid{grid-template-columns:1fr}}

/* =========================================================
   V2.7 — BLOCAGE / CONFIDENTIALITÉ
   Visible sans rendre l'interface anxiogène ; aucun micro-texte.
   ========================================================= */
.block-button{border-color:rgba(210,122,135,.2)!important;color:#cbaeb3!important;background:rgba(68,31,39,.1)!important}
.block-button:hover{border-color:rgba(231,126,143,.42)!important;color:#ffd7dd!important;background:rgba(88,35,46,.2)!important}
.action-state.blocked{background:#2a1b21;border-color:#51303a;color:#e9abb5}
.block-privacy-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-2px 0 18px;padding:14px 16px;border:1px solid rgba(211,119,136,.2);border-radius:14px;background:linear-gradient(135deg,rgba(73,35,45,.23),rgba(18,20,28,.92));color:#cbd1dc}
.block-privacy-notice strong{color:#ffd2d9;font-size:15px}.block-privacy-notice span{font-size:14px;line-height:1.5;color:#aeb7c6}
.privacy-card{margin-top:18px}.privacy-intro{max-width:900px;margin:0 0 15px;line-height:1.6}.privacy-count{display:grid;place-items:center;min-width:34px;height:34px;padding:0 9px;border-radius:999px;background:#211c36;border:1px solid #3d345f;color:#d5cbff;font-size:14px;font-weight:900}
.blocked-users-list{display:grid;gap:9px}.blocked-user-row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:66px;padding:10px 12px;border:1px solid rgba(91,102,128,.22);border-radius:13px;background:rgba(12,16,23,.66)}
.blocked-user-identity{display:flex;align-items:center;gap:11px;min-width:0;color:inherit}.blocked-user-identity>span:last-child{display:grid;gap:3px;min-width:0}.blocked-user-identity strong{font-size:15px;color:#f1f3f8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blocked-user-identity small{font-size:13px;color:#929dae;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.conversation-locked-label{color:#d79da7!important}.conversation-blocked-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 16px;border-bottom:1px solid rgba(211,119,136,.18);background:rgba(69,31,40,.22)}.conversation-blocked-banner strong{font-size:14px;color:#ffd0d7}.conversation-blocked-banner span{font-size:13px;color:#aa9aa1;line-height:1.45}.locked-compose{display:flex;align-items:center;justify-content:center;min-height:66px;color:#a99198;font-size:14px;font-weight:850}.conversation-link.is-locked{opacity:.78}.conversation-link.is-locked .conversation-summary>span{color:#b9959d}
@media(max-width:760px){.block-privacy-notice,.conversation-blocked-banner{display:grid;gap:5px}.blocked-user-row{align-items:flex-start}.blocked-user-row form{flex:0 0 auto}.privacy-card{margin-top:14px}}
@media(max-width:470px){.blocked-user-row{display:grid}.blocked-user-row form,.blocked-user-row .button{width:100%}.blocked-user-identity small{white-space:normal}.block-privacy-notice{padding:12px 13px}}

/* =========================================================
   V2.8 — ONBOARDING ULTRA SIMPLE
   Objectif -> carte gaming -> recommandations. Aucun micro-texte.
   ========================================================= */
.onboarding-shell{min-height:100vh;padding:0 22px 50px;background:radial-gradient(circle at 50% -10%,rgba(125,97,255,.16),transparent 34rem)}
.onboarding-topbar{width:min(1040px,100%);height:82px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.onboarding-time{display:inline-flex;align-items:center;min-height:34px;padding:5px 12px;border:1px solid rgba(132,113,221,.2);border-radius:999px;background:rgba(20,23,34,.78);color:#b8c0cf;font-size:14px;font-weight:800}
.onboarding-main{width:min(900px,100%);margin:35px auto 0}
.onboarding-progress{height:7px;border-radius:999px;background:#171b25;border:1px solid rgba(93,103,130,.22);overflow:hidden}
.onboarding-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7054f8,#a271ff);box-shadow:0 0 22px rgba(126,96,255,.45);transition:width .25s ease}
.onboarding-step-label{margin:9px 2px 18px;color:#8f9aac;font-size:14px;font-weight:800}
.onboarding-card{padding:30px;border:1px solid rgba(110,121,151,.23);border-radius:24px;background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(12,15,23,.98));box-shadow:0 28px 80px rgba(0,0,0,.3)}
.onboarding-copy{max-width:690px;margin-bottom:25px}.onboarding-copy.centered{margin:0 auto 25px;text-align:center}.onboarding-copy .eyebrow{font-size:14px}.onboarding-copy h1{margin:8px 0 10px;font-size:clamp(31px,5vw,48px);line-height:1.05;letter-spacing:-.045em}.onboarding-copy p{margin:0;color:#a8b1c0;font-size:17px;line-height:1.58}
.onboarding-form{display:grid;gap:18px}.onboarding-goals{display:grid;grid-template-columns:1fr 1fr;gap:12px}.onboarding-goal{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;min-height:112px;padding:18px;border:1px solid #303748;border-radius:17px;background:#11161f;cursor:pointer;transition:.17s}.onboarding-goal:hover{border-color:#514878;background:#151925;transform:translateY(-1px)}.onboarding-goal:has(input:checked){border-color:#715ce0;background:linear-gradient(135deg,rgba(125,97,255,.18),rgba(19,22,32,.98));box-shadow:inset 0 0 0 1px rgba(151,132,255,.08)}.onboarding-goal input{position:absolute;opacity:0;pointer-events:none}.goal-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#201c36;border:1px solid #3b3260;font-size:25px}.onboarding-goal strong{display:block;font-size:18px}.onboarding-goal small{display:block;margin-top:4px;color:#9ba5b6;font-size:14px;line-height:1.45}.onboarding-country{max-width:230px}.optional{color:#7f899a;font-size:13px;font-weight:700}.onboarding-looking{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid #32594a;border-radius:14px;background:rgba(23,63,49,.22);cursor:pointer}.onboarding-looking input{width:20px;height:20px;margin-top:2px;accent-color:var(--good)}.onboarding-looking span{display:grid;gap:2px}.onboarding-looking strong{font-size:15.5px;color:#dff8eb}.onboarding-looking small{font-size:13.5px;color:#91b8a5}.onboarding-tip{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;border:1px solid rgba(125,97,255,.2);border-radius:14px;background:rgba(125,97,255,.07)}.onboarding-tip strong{font-size:15px}.onboarding-tip span{color:#9ca7b9;font-size:14px}.onboarding-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px}.onboarding-actions .button{min-width:160px}
.onboarding-success{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 17px;border-radius:22px;background:linear-gradient(145deg,#1e694c,#174634);border:1px solid #34765d;color:#aaf1cd;font-size:33px;font-weight:950;box-shadow:0 14px 35px rgba(38,190,128,.12)}
.onboarding-recommendations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.onboarding-rec-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:17px;border:1px solid #2d3545;border-radius:16px;background:linear-gradient(155deg,#141923,#10141c)}.onboarding-rec-card:hover{border-color:#4b446b}.onboarding-rec-head{display:flex;align-items:center;gap:10px;min-width:0}.onboarding-rec-head>div{min-width:0}.onboarding-rec-head strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.onboarding-rec-head span:not(.mini-logo):not(.avatar){display:block;margin-top:2px;color:#8f9aab;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onboarding-rec-card .match-fit{margin:0}.onboarding-rec-card p{flex:1;margin:0;color:#aab3c2;font-size:14px;line-height:1.52}.onboarding-no-match{display:grid;gap:4px;margin:22px 0;padding:18px;text-align:center;border:1px dashed #394256;border-radius:15px;background:#10151d}.onboarding-no-match strong{font-size:17px}.onboarding-no-match span{color:#96a1b3;font-size:14px}.onboarding-finish-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:23px}.onboarding-profile-later{display:block;width:max-content;max-width:100%;margin:16px auto 0;color:#8e99aa;font-size:14px;text-align:center}.onboarding-profile-later:hover{color:#c8d0dc}.team-create-page{max-width:760px}.team-create-welcome{display:flex;align-items:center;gap:14px;margin-bottom:16px;border-color:rgba(125,97,255,.22);background:linear-gradient(135deg,rgba(125,97,255,.1),rgba(16,19,27,.97))}.team-create-welcome>span{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#211c39;font-size:22px}.team-create-welcome strong{font-size:16px}.team-create-welcome p{margin:3px 0 0;color:#9ba5b6;font-size:14px}
@media(max-width:760px){.onboarding-shell{padding:0 14px 34px}.onboarding-topbar{height:68px}.onboarding-time{font-size:13px}.onboarding-main{margin-top:20px}.onboarding-card{padding:20px;border-radius:18px}.onboarding-copy h1{font-size:34px}.onboarding-copy p{font-size:16px}.onboarding-goals{grid-template-columns:1fr}.onboarding-goal{min-height:96px;padding:15px}.onboarding-recommendations{grid-template-columns:1fr}.onboarding-actions{display:grid;grid-template-columns:1fr 1.4fr}.onboarding-actions .button{width:100%;min-width:0}.onboarding-tip{display:grid;gap:3px}.onboarding-country{max-width:none}.team-create-welcome{align-items:flex-start}}
@media(max-width:470px){.onboarding-topbar .brand>span:last-child{display:none}.onboarding-copy h1{font-size:30px}.onboarding-card{padding:17px}.onboarding-actions{grid-template-columns:1fr}.onboarding-finish-actions{display:grid;grid-template-columns:1fr}.onboarding-finish-actions .button{width:100%}.goal-icon{width:48px;height:48px}.onboarding-goal strong{font-size:17px}}

/* =========================================================
   V2.9 — Découverte / recrutement plus lisibles et plus utiles
   ========================================================= */
.discover-sort{min-width:132px}
.discovery-signals{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:8px 0 0}
.discovery-signal{display:inline-flex;align-items:center;min-height:30px;padding:0 9px;border:1px solid #333b4d;border-radius:999px;background:rgba(18,23,32,.78);color:#aeb7c7;font-size:13.5px;font-weight:850}
.discovery-signal.good{border-color:rgba(58,190,133,.28);background:rgba(20,52,42,.62);color:#86e7b7}
.recruitment-toolbar{margin:0 0 14px;padding:12px;border:1px solid rgba(94,106,133,.25);border-radius:14px;background:rgba(12,15,22,.62)}
.recruitment-toolbar .search-box{min-width:240px}
.recruitment-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.recruitment-actions form{margin:0}
.recruitment-card .card-footer{align-items:flex-end}
.player-search-card.is-top-match,.team-card.is-top-match,.recruitment-card.is-top-match{box-shadow:0 16px 40px rgba(68,51,145,.11),inset 0 1px 0 rgba(255,255,255,.02)}
.player-search-card .discovery-signals,.team-card .discovery-signals{margin-bottom:2px}

@media(max-width:900px){
  .discover-sort{min-width:0}
  .recruitment-toolbar{align-items:stretch;flex-wrap:wrap}
  .recruitment-toolbar .search-box{min-width:100%}
}
@media(max-width:760px){
  .discovery-signals{gap:6px}
  .discovery-signal{font-size:14px;min-height:32px}
  .recruitment-toolbar{padding:10px}
  .recruitment-toolbar .input,.recruitment-toolbar .button{width:100%}
  .recruitment-card .card-footer{align-items:stretch;flex-direction:column}
  .recruitment-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .recruitment-actions>*{width:100%}
  .recruitment-actions form,.recruitment-actions .button{width:100%}
  .recruitment-actions .action-state{grid-column:1/-1;justify-content:center}
}

/* =========================================================
   V2.10 — AUDIT MOBILE COMPLET
   Consolidation finale du responsive : zones tactiles, clavier,
   débordements, tableaux et écrans étroits. Cette section est
   volontairement placée en dernier pour neutraliser les anciennes
   règles mobiles devenues contradictoires au fil des versions.
   ========================================================= */
html,body{max-width:100%}
body{overflow-x:hidden}
.main,.content,.card,.stack,.grid,.feed-layout,.profile-content,.profile-main,.team-profile-head,.team-profile-head>div,.person-head>div,.team-head>div,.conversation-view,.conversation-summary,.admin-content{min-width:0}
.card h1,.card h2,.card h3,.page-head h1,.team-profile-head h1,.profile-name-line h1{overflow-wrap:anywhere}
.ranking-table-wrap,.tabs,.ranking-tabs,.admin-tabs,.admin-subtabs,.admin-report-status-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin}

@media(max-width:760px){
  html{scroll-padding-top:76px;scroll-padding-bottom:105px}
  body{font-size:16px;line-height:1.6}
  .main{width:100%;margin-left:0;padding:0 14px calc(96px + env(safe-area-inset-bottom))}
  .content,.page-head{width:100%;max-width:none}
  .mobile-top{height:64px;margin:0 -14px;padding:0 14px;top:0;padding-top:env(safe-area-inset-top)}
  .mobile-top .brand-mark{width:34px;height:34px}
  .mobile-top .icon-link{width:46px;height:46px}
  .page-head{align-items:flex-start;margin:12px 0 18px}.page-head h1{font-size:27px;line-height:1.08}.page-head p{font-size:15px;line-height:1.5;margin-top:6px}

  /* Navigation tactile : 5 zones réellement faciles à viser. */
  .bottom-nav{min-height:72px;padding:7px 5px max(7px,env(safe-area-inset-bottom));transition:transform .18s ease,opacity .18s ease}
  .bottom-nav a{min-width:0;min-height:56px;padding:4px 2px;border-radius:11px;font-size:13.5px;line-height:1.1}
  .bottom-nav a svg{width:24px;height:24px}
  .bottom-nav-badge{top:1px;left:calc(50% + 7px);min-width:22px;height:20px;font-size:13px}
  html.mobile-input-active .bottom-nav{transform:translateY(calc(110% + env(safe-area-inset-bottom)));opacity:0;pointer-events:none}
  html.mobile-input-active{scroll-padding-bottom:24px}
  html.mobile-input-active .main{padding-bottom:22px}

  /* Tous les contrôles importants respectent une cible tactile confortable. */
  .button,.button.small,.action-btn,.text-button,.text-link,.report-action,.comment-head a,.tabs a,.ranking-tab,.admin-tabs a,.admin-subtabs a,.team-tool-links a,.conversation-back,.status-pill{min-height:44px}
  .button,.button.small{font-size:15px}
  .input,textarea.input,select.input{min-height:50px;font-size:16px;padding:13px 14px}
  input[type="checkbox"],input[type="radio"]{min-width:21px;min-height:21px}
  details>summary{min-height:48px}
  .photo-button{min-height:44px;padding-top:8px;padding-bottom:8px}
  .quick-filter{min-height:48px}

  /* Cartes / actions : jamais de bouton comprimé ou de texte qui sort. */
  .card{padding:16px;border-radius:15px}
  .card-footer,.profile-actions,.request-actions,.member-admin-actions,.team-main-actions,.ranking-board-actions,.notification-actions{min-width:0}
  .card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .card-actions>*{min-width:0}
  .card-actions form,.card-actions .button{width:100%}
  .action-state{min-height:40px;white-space:normal;text-align:center;justify-content:center}
  .chip-row{gap:7px}.chip{font-size:13.5px;white-space:normal;overflow-wrap:anywhere}
  .discovery-signal{font-size:14px;min-height:34px;white-space:normal}
  .empty{padding:30px 16px}

  /* Accueil / fil. */
  .composer-top{align-items:flex-start}.composer textarea{font-size:16px;min-height:84px}
  .composer-bottom{gap:10px;flex-wrap:wrap}.composer-bottom .button{margin-left:auto}
  .post{padding:16px}.post-body{font-size:16px;line-height:1.62}
  .post-head{align-items:flex-start}.post-meta strong{font-size:16px}.post-meta span{white-space:normal}
  .post-actions{overflow-x:auto;overscroll-behavior-x:contain}.post-actions>*{flex:0 0 auto}
  .comment-form{align-items:stretch}.comment-form .input{min-width:0}.comment-form .button{min-width:86px}

  /* Trouver / recrutement. */
  .discover-topline{align-items:stretch;flex-direction:column;gap:10px}.discover-topline .tabs{width:100%}.discover-topline .tabs a{flex:0 0 auto}
  .discover-toolbar{grid-template-columns:1fr;gap:9px}.discover-toolbar>*{min-width:0;width:100%}
  .person-card,.team-card,.recruitment-card{padding:16px}
  .person-head,.team-head{align-items:flex-start}
  .search-game-summary{grid-template-columns:1fr;gap:9px}.search-game-facts span{white-space:normal}
  .recruitment-toolbar{display:grid;grid-template-columns:1fr;gap:9px;padding:12px}.recruitment-toolbar>*{min-width:0;width:100%}
  .recruitment-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}

  /* Profils : stats et actions ne débordent plus sur petits écrans. */
  .profile-hero,.player-profile-hero{padding-top:100px}.profile-cover,.player-profile-hero .profile-cover{height:130px}
  .profile-content{gap:13px}.avatar.huge{width:84px;height:84px}
  .profile-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}.profile-actions form,.profile-actions .button{width:100%}
  .stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:10px}.stat{text-align:center}
  .gaming-facts{grid-template-columns:1fr 1fr}.gaming-facts>div{min-width:0}.gaming-facts strong{overflow-wrap:anywhere}
  .profile-media-editor{height:165px}
  .blocked-user-row{gap:10px}

  /* Équipe / roster. */
  .team-profile-head{align-items:flex-start}.team-profile-head h1{font-size:25px}
  .team-status-bar{align-items:stretch;flex-direction:column;gap:12px}
  .status-pills{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.status-pill{justify-content:center;text-align:center;white-space:normal}
  .team-tool-links{width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:3px}.team-tool-links a{flex:0 0 auto;display:inline-flex;align-items:center;white-space:nowrap}
  .roster-controls,.member-admin-actions{gap:8px}.roster-controls .button,.member-admin-actions .button{min-height:44px}
  .team-settings-panels>.form-stack{padding:15px}

  /* Messagerie : hauteur dynamique et clavier mobile. */
  .message-page{padding:0;margin:0 -4px;width:auto}
  .message-layout{height:calc(100dvh - 184px - env(safe-area-inset-bottom));min-height:430px;max-height:760px;border-radius:14px}
  .conversation-view{min-height:0;height:100%}.conversation-head{flex:0 0 auto;min-height:60px;padding:8px 12px}
  .conversation-head>div{min-width:0;display:grid;gap:1px}.conversation-head>div>strong{font-size:16px}.conversation-head small,.group-chat-label{font-size:13.5px}
  .conversation-back{flex:0 0 44px;width:44px;height:44px;font-size:21px}
  .message-stream{min-height:0;padding:14px 12px 18px;overscroll-behavior:contain}
  .bubble{max-width:88%;font-size:16px;line-height:1.55;padding:10px 13px}.bubble small{font-size:13.5px!important}
  .message-compose{flex:0 0 auto;gap:8px;padding:10px 10px max(10px,env(safe-area-inset-bottom))}.message-compose .input{min-width:0}.message-compose .button{min-width:92px;padding-left:12px;padding-right:12px}
  html.mobile-input-active .message-layout{height:calc(var(--ntg-visual-height, 100dvh) - 90px);max-height:none;min-height:300px}
  .conversation-blocked-banner{padding:11px 13px}

  /* Matchs / amicaux : commandes grandes, compositions respirables. */
  .match-page-bar{gap:12px}.match-page-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.match-page-stats span{min-height:44px}
  .lineup-builder{overflow:hidden}.lineup-builder-head,.lineup-row{grid-template-columns:minmax(0,1fr) 54px 54px 54px}.lineup-choice span{width:40px;height:40px}
  .result-form{gap:8px}.score-input{min-width:0}
  .friendly-member-check{min-height:52px}.friendly-member-check input{width:22px;height:22px}
  .friendly-final-score strong,.match-final-score strong{font-size:30px}

  /* Classements : vrai défilement tactile + joueur visible pendant le scroll. */
  .ranking-table-wrap{position:relative;width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity}
  .ranking-table{min-width:720px}.ranking-table th,.ranking-table td{font-size:14px;padding:11px 10px}
  .ranking-table th:first-child,.ranking-table td:first-child{position:sticky;left:0;z-index:3;background:#0e1118}
  .ranking-table th:nth-child(2),.ranking-table td:nth-child(2){position:sticky;left:44px;z-index:2;background:#10141c;box-shadow:7px 0 12px rgba(0,0,0,.13)}
  .ranking-table tbody tr.top-rank td:first-child,.ranking-table tbody tr.top-rank td:nth-child(2){background:#17182a}
  .ranking-points-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ranking-points-grid .input{padding-left:8px;padding-right:8px;text-align:center}

  /* Administration : tout reste exploitable sans zoomer. */
  .admin-tabs,.admin-subtabs,.admin-report-status-tabs{scroll-snap-type:x proximity;overscroll-behavior-x:contain}.admin-tabs a,.admin-subtabs a,.admin-report-status-tabs a{scroll-snap-align:start}
  .admin-tabs a{font-size:14px;min-height:46px}.admin-stat-card{padding:16px}
  .admin-filter-bar{padding:13px}.admin-user-head,.admin-team-head,.admin-moderation-head{min-width:0}
  .admin-user-head>div,.admin-team-head>div,.admin-moderation-head>div{min-width:0}
  .admin-user-actions,.admin-game-form,.admin-game-edit,.admin-report-review{gap:10px}
  .admin-team-actions,.admin-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.admin-team-actions form,.admin-card-actions form{width:100%}
  .admin-report-links{grid-template-columns:repeat(2,minmax(0,1fr))}

  /* Auth / onboarding : pas de zoom iOS et boutons pleine largeur quand utile. */
  .auth-main{padding:22px 15px}.auth-box{width:100%}.auth-box h2{font-size:31px}
  .onboarding-shell{padding-left:14px;padding-right:14px}.onboarding-card{padding:20px}.onboarding-copy h1{font-size:34px}.onboarding-time{font-size:13.5px}
}

@media(max-width:470px){
  .main{padding-left:12px;padding-right:12px}.mobile-top{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}
  .page-head h1{font-size:25px}.card{padding:15px}
  .bottom-nav a{font-size:13px}.bottom-nav a svg{width:23px;height:23px}
  .card-actions,.recruitment-actions,.profile-actions,.admin-team-actions,.admin-card-actions,.admin-report-links{grid-template-columns:1fr}
  .card-actions .action-state,.recruitment-actions .action-state{grid-column:auto}
  .comment-form{display:grid;grid-template-columns:1fr}.comment-form .button{width:100%}
  .gaming-facts{grid-template-columns:1fr}.gaming-facts>div+div{border-left:0;border-top:1px solid var(--line)}
  .status-pills{grid-template-columns:1fr}.team-facts{display:grid;grid-template-columns:1fr 1fr}.team-facts .open,.team-facts .closed{grid-column:1/-1;width:max-content;max-width:100%}
  .match-page-stats{grid-template-columns:1fr}.lineup-builder-head,.lineup-row{grid-template-columns:minmax(0,1fr) 46px 46px 46px}.lineup-choice span{width:38px;height:38px}
  .ranking-points-grid{grid-template-columns:1fr}.ranking-board-actions{display:grid;grid-template-columns:1fr;width:100%}.ranking-board-actions .button{width:100%}
  .message-page{margin:0}.message-layout{height:calc(100dvh - 178px - env(safe-area-inset-bottom));min-height:410px}.message-compose{display:grid;grid-template-columns:minmax(0,1fr) auto}.message-compose .button{min-width:84px}
  .admin-stat-grid{grid-template-columns:1fr}.admin-user-actions{grid-template-columns:1fr}.admin-report-status-tabs a{min-width:155px}
  .onboarding-topbar{gap:10px}.onboarding-time{padding-left:9px;padding-right:9px}
}

@media(max-width:760px) and (max-height:520px) and (orientation:landscape){
  .mobile-top{height:56px}.main{padding-bottom:78px}.bottom-nav{min-height:62px}.bottom-nav a{min-height:48px}.bottom-nav a span:not(.bottom-nav-badge){font-size:13px}
  .message-layout{height:calc(100dvh - 126px);min-height:260px;max-height:none}.message-stream{padding-top:9px;padding-bottom:10px}.conversation-head{min-height:52px}.message-compose{padding-top:7px;padding-bottom:7px}
  html.mobile-input-active .message-layout{height:calc(var(--ntg-visual-height, 100dvh) - 58px)}
}

@media(hover:none) and (pointer:coarse){
  .button:hover,.grid>.card:hover,.person-card:hover,.team-card:hover,.recruitment-card:hover,.admin-stat-card:hover,.onboarding-goal:hover{transform:none}
  .button,.tabs a,.bottom-nav a,.action-btn,.status-pill{-webkit-tap-highlight-color:rgba(125,97,255,.16)}
}

/* V2.12 — sécurité / anti-abus */
.hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.field-help{display:block;margin-top:7px;color:var(--muted,#98a2b3);font-size:14px;line-height:1.45}
.security-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.security-summary{display:flex;flex-direction:column;gap:7px;padding:18px;text-decoration:none;transition:.16s}.security-summary:hover,.security-summary.active{border-color:rgba(143,118,255,.42);transform:translateY(-1px)}.security-summary span{font-size:15px;font-weight:850;color:#cbd2df}.security-summary strong{font-size:31px;line-height:1;color:#fff}.security-summary small{font-size:14px;color:#929cae}.security-log-list{gap:10px}.security-log-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:17px}.security-log-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:rgba(129,104,245,.13);color:#b7a6ff;border:1px solid rgba(139,116,250,.2)}.security-log-icon.security{background:rgba(226,119,93,.1);color:#f0aa94;border-color:rgba(226,119,93,.2)}.security-log-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}.security-log-main{min-width:0}.security-log-head{display:flex;align-items:center;gap:10px;justify-content:space-between}.security-log-head strong{font-size:16px;color:#f7f8fb}.security-log-main p{margin:7px 0 5px;font-size:15px;line-height:1.5;color:#c8ced9;overflow-wrap:anywhere}.security-log-main small{font-size:14px;color:#8e98aa;line-height:1.45}.admin-security-page .admin-filter-bar.admin-content-filter{grid-template-columns:minmax(180px,.55fr) minmax(240px,1.45fr) auto}
@media(max-width:760px){.security-summary-grid{grid-template-columns:1fr}.security-summary{padding:16px}.security-log-row{padding:15px;gap:11px}.security-log-head{align-items:flex-start;flex-direction:column;gap:7px}.admin-security-page .admin-filter-bar.admin-content-filter{grid-template-columns:1fr}}

/* =========================================================
   V2.13 — PRÉPARATION BÊTA
   Mot de passe oublié, retours testeurs, stats internes,
   pages légales et dernières finitions publiques.
   ========================================================= */
.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.subtle-link{font-size:13.5px;font-weight:800}.beta-success{border-color:rgba(49,213,138,.28);background:linear-gradient(145deg,rgba(20,50,41,.7),rgba(18,23,32,.98));margin-bottom:16px}.beta-success strong{font-size:18px}.beta-success p{margin:7px 0 14px;color:#b9c4cf;line-height:1.55}
.public-footer{max-width:1180px;margin:0 auto;padding:26px 24px 38px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.public-footer>div{display:flex;align-items:center;gap:16px}.public-footer .brand{font-size:18px}.public-footer .brand-mark{width:32px;height:32px}.public-footer nav{display:flex;align-items:center;gap:20px;color:#aeb7c5;font-size:14px;font-weight:800}.public-footer nav a:hover{color:#fff}
.landing-steps{max-width:1180px;margin:0 auto 86px;padding:0 24px}.landing-section-title{margin-bottom:22px}.landing-section-title h2{margin:6px 0 0;font-size:36px;letter-spacing:-.04em}.landing-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.landing-step{position:relative;overflow:hidden}.landing-step>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#211d3f;color:#c7bcff;font-size:15px;font-weight:950;margin-bottom:16px}.landing-step strong{display:block;font-size:19px;margin-bottom:7px}.landing-step p{margin:0;color:#aeb7c5;line-height:1.55}.landing-step:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-50px;top:-55px;background:radial-gradient(circle,rgba(128,102,255,.17),transparent 70%);pointer-events:none}

.legal-page{max-width:1180px;margin:0 auto;padding:62px 24px 88px}.legal-hero{max-width:800px;margin-bottom:28px}.legal-hero h1{font-size:clamp(38px,6vw,66px);letter-spacing:-.055em;line-height:1;margin:12px 0 16px}.legal-hero p{margin:0;color:#aeb7c5;font-size:19px}.legal-grid{display:grid;grid-template-columns:310px minmax(0,1fr);gap:22px;align-items:start}.legal-summary{position:sticky;top:22px}.legal-summary>strong{font-size:19px}.legal-summary p{color:#b2bcc9;line-height:1.6}.beta-legal-warning{display:block;margin-top:18px;padding:12px 13px;border-radius:11px;background:rgba(244,189,80,.08);border:1px solid rgba(244,189,80,.2);color:#dfc78c;font-size:13.5px;line-height:1.5}.legal-content{padding:28px}.legal-content h2{font-size:21px;margin:30px 0 8px}.legal-content h2:first-child{margin-top:0}.legal-content p{font-size:16px;color:#c3cad6;line-height:1.7;margin:0}.legal-content strong{color:#fff}

.feedback-entry{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 11px;margin:4px 0 10px;border-radius:11px;color:#9faaba;font-size:14.5px;font-weight:800}.feedback-entry:hover{background:#151a24;color:#fff}.feedback-entry svg{width:21px;height:21px;color:#9c8cff}.feedback-page{max-width:760px}.feedback-card{padding:24px}.feedback-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.feedback-choice{position:relative;cursor:pointer}.feedback-choice input{position:absolute;opacity:0;pointer-events:none}.feedback-choice span{display:flex;align-items:center;justify-content:center;min-height:50px;padding:9px 10px;text-align:center;border:1px solid #303847;border-radius:12px;background:#11161e;color:#aeb7c5;font-size:14px;font-weight:850;transition:.15s}.feedback-choice:hover span{border-color:#4c5365;color:#fff}.feedback-choice input:checked+span{border-color:#6a59b8;background:#211d3f;color:#fff;box-shadow:0 0 0 2px rgba(128,102,255,.09)}.rating-row{display:flex;gap:8px;flex-wrap:wrap}.rating-row label{cursor:pointer}.rating-row input{position:absolute;opacity:0;pointer-events:none}.rating-row span{display:flex;align-items:center;justify-content:center;min-width:58px;min-height:44px;padding:0 10px;border:1px solid #303847;border-radius:11px;background:#11161e;color:#9fa8b8;font-size:14px;font-weight:850}.rating-row input:checked+span{border-color:#7e6a36;background:#2a2417;color:#f4cf73}.feedback-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}

.feedback-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}.feedback-admin-stat{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;padding:17px}.feedback-admin-stat span{color:#aeb7c5;font-size:14px;font-weight:850}.feedback-admin-stat strong{font-size:26px}.feedback-admin-stat.active{border-color:#6855a9;background:linear-gradient(145deg,rgba(43,35,72,.85),rgba(18,23,32,.98))}.feedback-admin-list{margin-top:14px}.feedback-admin-card{padding:19px}.feedback-admin-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px}.feedback-admin-head>div{min-width:0}.feedback-admin-head strong{display:block;font-size:16px}.feedback-admin-head span:not(.admin-pill){display:block;color:#929dae;font-size:13.5px}.feedback-stars{margin:13px 0 6px;color:#f0c85f;font-size:17px;letter-spacing:.08em}.feedback-message{margin:9px 0 12px;color:#d2d8e2;font-size:15.5px;line-height:1.65;overflow-wrap:anywhere}.feedback-source{margin-bottom:13px;color:#8f99a9;font-size:13.5px;overflow-wrap:anywhere}.feedback-source code{color:#b8c0ce;font-size:13px}.feedback-admin-review{display:grid;grid-template-columns:170px minmax(220px,1fr) auto;gap:9px;align-items:center;padding-top:14px;border-top:1px solid rgba(91,102,128,.22)}.admin-pill.planned{border-color:#5f4f27;background:#2b2415;color:#e7c66f}.admin-pill.closed{border-color:#3b4655;background:#171c24;color:#a9b4c4}

.beta-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:17px}.beta-kpi{min-height:140px;display:flex;flex-direction:column;justify-content:space-between;gap:7px}.beta-kpi span{font-size:14px;color:#aeb7c5;font-weight:850}.beta-kpi strong{font-size:32px;line-height:1;color:#fff}.beta-kpi small{font-size:13.5px!important;color:#8f99aa}.beta-health-row{margin-bottom:17px}.retention-score{display:grid;gap:8px}.retention-score strong{font-size:42px;line-height:1;color:#b9aaff}.retention-score span{color:#c5ccd7;line-height:1.55}.metric-note{margin:16px 0 0;color:#8f99a9;font-size:13.5px;line-height:1.55}.feedback-pulse{display:flex;align-items:end;gap:12px}.feedback-pulse strong{font-size:42px;line-height:1;color:#fff}.feedback-pulse span{padding-bottom:4px;color:#aeb7c5}.beta-daily-card{padding:22px}.beta-chart-legend{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:17px;color:#9fa9b8;font-size:13.5px;font-weight:800}.beta-chart-legend span{display:flex;align-items:center;gap:6px}.beta-chart-legend i{width:9px;height:9px;border-radius:50%;background:#6f61c8}.beta-chart-legend i.messages{background:#4d9bc8}.beta-chart-legend i.posts{background:#4baa7d}.beta-chart-legend i.applications{background:#c9904d}.beta-daily-list{display:grid;gap:7px}.beta-day-row{display:grid;grid-template-columns:50px minmax(0,1fr) 150px;gap:11px;align-items:center}.beta-day-row time{color:#8f99aa;font-size:13.5px;font-weight:800}.beta-day-row>strong{text-align:right;color:#aeb7c5;font-size:13px;font-variant-numeric:tabular-nums}.beta-bars{display:grid;gap:3px}.beta-bars span{display:block;width:var(--w);min-width:2px;height:5px;border-radius:999px;background:#6f61c8}.beta-bars span.messages{background:#4d9bc8}.beta-bars span.posts{background:#4baa7d}.beta-bars span.applications{background:#c9904d}.beta-analytics-foot{text-align:center;color:#7f8999;font-size:13.5px;margin:16px 0 0}

@media(max-width:1100px){.beta-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-step-grid{grid-template-columns:1fr 1fr}.legal-grid{grid-template-columns:260px minmax(0,1fr)}}
@media(max-width:760px){.public-footer{padding:24px 16px 100px;align-items:flex-start;flex-direction:column}.public-footer>div{align-items:flex-start;flex-direction:column;gap:8px}.public-footer nav{gap:14px;flex-wrap:wrap}.landing-steps{padding:0 16px;margin-bottom:56px}.landing-section-title h2{font-size:29px}.landing-step-grid{grid-template-columns:1fr}.legal-page{padding:38px 14px 100px}.legal-grid{grid-template-columns:1fr}.legal-summary{position:static}.legal-content{padding:18px}.feedback-category-grid{grid-template-columns:1fr 1fr}.feedback-actions{display:grid;grid-template-columns:1fr}.feedback-actions .button{width:100%}.feedback-admin-stats{grid-template-columns:1fr 1fr}.feedback-admin-review{grid-template-columns:1fr}.feedback-admin-head{grid-template-columns:auto minmax(0,1fr)}.feedback-admin-head>.admin-pill{grid-column:2;justify-self:start}.beta-kpi-grid{grid-template-columns:1fr 1fr}.beta-day-row{grid-template-columns:44px minmax(0,1fr)}.beta-day-row>strong{grid-column:2;text-align:left}.field-label-row{align-items:flex-start}.subtle-link{white-space:nowrap}}
@media(max-width:470px){.feedback-category-grid,.feedback-admin-stats,.beta-kpi-grid{grid-template-columns:1fr}.rating-row{display:grid;grid-template-columns:repeat(5,1fr)}.rating-row span{min-width:0}.beta-day-row{grid-template-columns:40px minmax(0,1fr)}.legal-hero h1{font-size:38px}.legal-hero p{font-size:17px}}
.admin-beta-links{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:17px}.admin-beta-link{display:flex;align-items:center;gap:14px;text-decoration:none}.admin-beta-link:hover{border-color:#4f466d;transform:translateY(-1px)}.admin-beta-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:13px;background:#211d3f;color:#b5a7ff}.admin-beta-icon svg{width:23px;height:23px}.admin-beta-link>span:last-child{min-width:0}.admin-beta-link strong{display:block;font-size:16px}.admin-beta-link small{display:block;margin-top:3px;font-size:13.5px!important;color:#909bad;line-height:1.45}
@media(max-width:760px){.admin-beta-links{grid-template-columns:1fr}.admin-beta-link:hover{transform:none}}

/* =========================================================
   V2.14 — Planning / événements d'équipe
   ========================================================= */
.team-events-page{max-width:1120px}.team-events-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 27px;background:linear-gradient(145deg,rgba(36,30,66,.92),rgba(17,22,31,.98));overflow:hidden;position:relative}.team-events-intro:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-120px;top:-160px;background:radial-gradient(circle,rgba(125,97,255,.22),transparent 70%);pointer-events:none}.team-events-intro>div{position:relative;z-index:1}.team-events-intro h1{margin:5px 0 7px;font-size:34px;letter-spacing:-.04em}.team-events-intro p{margin:0;color:#b3bdca;font-size:16px;line-height:1.55}.event-legend{display:flex;align-items:center;gap:15px;flex-wrap:wrap;color:#b7c0ce;font-size:14px;font-weight:800}.event-legend span{display:flex;align-items:center;gap:7px}.event-legend i{width:10px;height:10px;border-radius:50%;background:#717b8b}.event-legend i.yes{background:#39d596}.event-legend i.maybe{background:#e9b955}.event-legend i.no{background:#df7080}
.event-create-card{padding:0;overflow:hidden}.event-create-card summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px}.event-create-card summary::-webkit-details-marker{display:none}.event-create-card summary strong{display:block;margin-top:3px;font-size:19px}.event-summary-plus{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#211d3f;color:#c3b7ff;font-size:24px;font-weight:500;transition:.18s}.event-create-card[open] .event-summary-plus{transform:rotate(45deg)}.event-create-form{padding:20px 22px 22px;border-top:1px solid var(--line)}.event-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:17px}.event-type-choice{position:relative;cursor:pointer}.event-type-choice input{position:absolute;opacity:0;pointer-events:none}.event-type-choice span{display:flex;align-items:center;justify-content:center;min-height:50px;padding:9px 12px;border:1px solid #303848;border-radius:12px;background:#11161e;color:#adb7c6;font-size:14px;font-weight:850;text-align:center}.event-type-choice input:checked+span{border-color:#6758a5;background:#211d3f;color:#fff;box-shadow:0 0 0 2px rgba(128,102,255,.08)}.event-create-form .form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.event-create-form label{display:grid;gap:7px;color:#b6bfcc;font-size:14px;font-weight:800}.event-create-form .span-2{grid-column:1/-1}.muted-inline{display:inline;color:#7f8998;font-size:13px;font-weight:700}.event-create-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:17px;padding-top:16px;border-top:1px solid rgba(91,102,128,.18)}.event-create-actions .muted{font-size:13.5px}
.event-section{margin-top:24px}.event-count{color:#8f99aa;font-size:14px;font-weight:800}.event-list{display:grid;gap:13px}.team-event-card{display:grid;grid-template-columns:78px minmax(0,1fr);gap:19px;padding:19px 21px}.event-date-block{align-self:start;display:grid;place-items:center;min-height:94px;border-radius:16px;background:linear-gradient(160deg,#262145,#171a25);border:1px solid rgba(131,112,215,.22);box-shadow:inset 0 1px rgba(255,255,255,.035)}.event-date-block strong{font-size:31px;line-height:1}.event-date-block span{margin-top:2px;color:#b6a9ff;font-size:13px;font-weight:950;letter-spacing:.08em}.event-date-block small{margin-top:5px;color:#f1f3f7;font-size:14px;font-weight:850}.event-main{min-width:0}.event-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.event-head>div{min-width:0}.event-head h3{margin:6px 0 4px;font-size:21px;line-height:1.2;overflow-wrap:anywhere}.event-head p{margin:0;color:#929dad;font-size:14px}.event-type-badge,.event-game-chip{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;font-size:13px;font-weight:850}.event-type-badge{background:#181d27;color:#b8c1ce;border:1px solid #2a3240}.event-type-badge.training{color:#b9abff;border-color:#433a6c;background:#1c1930}.event-type-badge.game_night{color:#8edcc0;border-color:#285845;background:#13261f}.event-type-badge.match{color:#f1c56e;border-color:#664e22;background:#2a2214}.event-type-badge.other{color:#abc3df;border-color:#35495e;background:#17212b}.event-game-chip{flex:0 0 auto;background:#151a23;color:#a8b3c2;border:1px solid #2a3240}.event-details{margin-top:12px;padding:12px 13px;border-radius:11px;background:rgba(255,255,255,.018);border:1px solid rgba(91,102,128,.14)}.event-details span{display:block;color:#bfc7d2;font-size:14px;font-weight:800}.event-details p{margin:7px 0 0;color:#a7b0bd;font-size:14px;line-height:1.55;overflow-wrap:anywhere}.event-rsvp-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px}.event-rsvp-summary span{display:inline-flex;align-items:center;gap:5px;min-height:31px;padding:0 10px;border-radius:9px;background:#151a23;color:#9fa9b8;font-size:13.5px}.event-rsvp-summary span.yes{color:#9be1c4;background:rgba(50,174,123,.08)}.event-rsvp-summary span.maybe{color:#e6ca87;background:rgba(215,166,71,.08)}.event-rsvp-summary span.no{color:#e9a0aa;background:rgba(199,82,101,.08)}.event-rsvp-summary strong{font-size:14px}.event-response-people{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:11px}.event-person{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:3px 9px 3px 4px;border:1px solid #2a3240;border-radius:999px;background:#121720;color:#aeb7c5}.event-person .avatar{width:26px;height:26px;font-size:13px}.event-person b{font-size:13px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-person.yes{border-color:rgba(57,213,150,.22)}.event-person.maybe{border-color:rgba(233,185,85,.22)}.event-person.no{opacity:.72}.event-rsvp-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:15px;padding-top:14px;border-top:1px solid rgba(91,102,128,.18)}.event-rsvp-label{margin-right:2px;color:#9ca6b5;font-size:14px;font-weight:850}.event-rsvp{min-height:42px;padding:0 14px;border-radius:10px;border:1px solid #303848;background:#121720;color:#aeb7c5;font:inherit;font-size:14px;font-weight:850;cursor:pointer;transition:.15s}.event-rsvp:hover{border-color:#4a5364;color:#fff}.event-rsvp.yes.active{border-color:#318866;background:#173126;color:#a8ebce}.event-rsvp.maybe.active{border-color:#81662f;background:#302716;color:#f0d28c}.event-rsvp.no.active{border-color:#74404a;background:#2f1a20;color:#efadb5}.event-staff-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:11px}.event-staff-actions form{margin:0}.event-staff-actions .button.danger{border-color:#57313a;color:#e99ca7;background:#25171b}
.past-events{margin-top:34px}.event-history-list{display:grid;gap:9px}.event-history-card{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 16px}.event-history-card.cancelled{opacity:.68}.event-date-mini{display:grid;place-items:center;width:54px;height:58px;border-radius:12px;background:#151a23;border:1px solid #2a3240}.event-date-mini strong{font-size:21px;line-height:1}.event-date-mini span{margin-top:2px;color:#9d91df;font-size:13px;font-weight:900}.event-history-card h3{margin:3px 0;font-size:16px}.event-history-card p{margin:0;color:#8e99aa;font-size:13.5px}.event-history-status{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#171d26;color:#8e99a8;border:1px solid #2b3442;font-size:13px;font-weight:850}.event-history-status.cancelled{color:#d796a0;border-color:#55333a;background:#27191d}

@media(max-width:760px){.team-events-intro{align-items:flex-start;flex-direction:column;padding:21px}.team-events-intro h1{font-size:29px}.event-type-grid{grid-template-columns:1fr 1fr}.event-create-form .form-grid.two{grid-template-columns:1fr}.event-create-form .span-2{grid-column:auto}.event-create-actions{align-items:stretch;flex-direction:column}.event-create-actions .button{width:100%}.team-event-card{grid-template-columns:64px minmax(0,1fr);gap:13px;padding:15px}.event-date-block{min-height:82px;border-radius:13px}.event-date-block strong{font-size:27px}.event-head{flex-direction:column;gap:8px}.event-game-chip{align-self:flex-start}.event-rsvp-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.event-rsvp-label{grid-column:1/-1}.event-rsvp{width:100%;padding:0 8px}.event-staff-actions{display:grid;grid-template-columns:1fr}.event-staff-actions form,.event-staff-actions .button{width:100%}.event-history-card{grid-template-columns:52px minmax(0,1fr)}.event-history-status{grid-column:2;justify-self:start}.event-person b{max-width:110px}}
@media(max-width:470px){.event-type-grid{grid-template-columns:1fr}.team-event-card{grid-template-columns:54px minmax(0,1fr);gap:10px}.event-date-block{min-height:76px}.event-date-block strong{font-size:24px}.event-date-block span,.event-date-block small{font-size:13px}.event-rsvp-form{grid-template-columns:1fr}.event-rsvp-label{grid-column:auto}.event-response-people{gap:5px}.event-person b{max-width:92px}.event-create-card summary,.event-create-form{padding-left:15px;padding-right:15px}}


/* =========================================================
   V2.15 — Disponible maintenant
   ========================================================= */
.play-now-bar{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 15px;border:1px solid #303744;border-radius:14px;background:linear-gradient(145deg,#131820,#11151c);box-shadow:0 10px 26px rgba(0,0,0,.13)}.play-now-bar.is-active{border-color:rgba(57,213,150,.28);background:linear-gradient(145deg,rgba(19,48,38,.92),#111820)}.play-now-dot{width:10px;height:10px;border-radius:50%;background:#657080;box-shadow:0 0 0 5px rgba(101,112,128,.08)}.play-now-bar.is-active .play-now-dot{background:#39d596;box-shadow:0 0 0 5px rgba(57,213,150,.11),0 0 20px rgba(57,213,150,.28)}.play-now-bar div:nth-child(2){min-width:0;display:grid;gap:2px}.play-now-bar span{color:#7f8999;font-size:13px;font-weight:950;letter-spacing:.08em}.play-now-bar strong{font-size:15px;line-height:1.4;overflow-wrap:anywhere}.play-now-bar.is-active span{color:#83d7b5}.now-chip{border-color:rgba(57,213,150,.3)!important;background:rgba(57,213,150,.09)!important;color:#9ce4c5!important}.status.now-status{border-color:rgba(57,213,150,.26);background:rgba(57,213,150,.08);color:#9be4c3}.now-inline-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 0;padding:10px 12px;border-radius:11px;background:rgba(57,213,150,.065);border:1px solid rgba(57,213,150,.17)}.now-inline-card strong{font-size:14px;color:#b9efd8}.now-inline-card span{font-size:13.5px;color:#7fd0ad;font-weight:800}.quick-filter.now-filter{border-color:rgba(57,213,150,.22)}.now-players-card{border-color:rgba(57,213,150,.16)}.now-suggestion .avatar{box-shadow:0 0 0 2px rgba(57,213,150,.22)}.presence.now-playing{color:#a6e9cc!important;background:rgba(57,213,150,.09)!important;border-color:rgba(57,213,150,.24)!important;white-space:normal;text-align:center}
.availability-now-page{max-width:920px}.play-now-hero{position:relative;display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:20px;padding:25px 27px;overflow:hidden;background:linear-gradient(145deg,#191a2a,#121820)}.play-now-hero:after{content:"";position:absolute;width:320px;height:320px;right:-150px;top:-170px;border-radius:50%;background:radial-gradient(circle,rgba(118,94,255,.17),transparent 68%);pointer-events:none}.play-now-hero.is-active{border-color:rgba(57,213,150,.24);background:linear-gradient(145deg,#162820,#111920)}.play-now-orb{display:grid;place-items:center;width:72px;height:72px;border-radius:22px;background:#1c2230;border:1px solid #323a49}.play-now-orb span{width:19px;height:19px;border-radius:50%;background:#697587;box-shadow:0 0 0 9px rgba(105,117,135,.08)}.play-now-hero.is-active .play-now-orb{background:#142b22;border-color:#286347}.play-now-hero.is-active .play-now-orb span{background:#39d596;box-shadow:0 0 0 9px rgba(57,213,150,.10),0 0 28px rgba(57,213,150,.35)}.play-now-copy{position:relative;z-index:1;min-width:0}.play-now-copy h2{margin:4px 0 6px;font-size:27px;letter-spacing:-.035em}.play-now-copy p{margin:0;color:#a5afbd;font-size:15px;line-height:1.55}.play-now-stop{position:relative;z-index:1}.play-now-form{padding:24px}.play-now-games{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.play-now-game-choice{position:relative;cursor:pointer}.play-now-game-choice input{position:absolute;opacity:0;pointer-events:none}.play-now-game-choice span{display:grid;gap:3px;min-height:70px;padding:13px 15px;border-radius:12px;border:1px solid #303847;background:#12171f;transition:.15s}.play-now-game-choice strong{font-size:16px}.play-now-game-choice small{font-size:13.5px;color:#8f9aaa;line-height:1.4}.play-now-game-choice input:checked+span{border-color:#4a8a6e;background:#14251f;box-shadow:0 0 0 2px rgba(57,213,150,.07)}.play-now-game-choice input:checked+span strong{color:#b6ecd5}.play-now-duration{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:15px;margin-top:17px;padding-top:17px;border-top:1px solid var(--line)}.play-now-duration label{font-size:15px;font-weight:850}.play-now-submit{width:100%;margin-top:17px;min-height:50px}.play-now-note{margin:10px 0 0;text-align:center;color:#7f8998;font-size:13.5px;line-height:1.5}.play-now-explainer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0;overflow:hidden}.play-now-explainer>div{display:grid;gap:4px;padding:18px}.play-now-explainer>div+div{border-left:1px solid var(--line)}.play-now-explainer strong{font-size:15px}.play-now-explainer span{color:#8e99a9;font-size:13.5px;line-height:1.5}
@media(max-width:760px){.play-now-bar{grid-template-columns:10px minmax(0,1fr)}.play-now-bar .button{grid-column:1/-1;width:100%}.play-now-hero{grid-template-columns:58px minmax(0,1fr);gap:14px;padding:20px}.play-now-orb{width:56px;height:56px;border-radius:17px}.play-now-stop{grid-column:1/-1;width:100%}.play-now-stop .button{width:100%}.play-now-copy h2{font-size:23px}.play-now-games{grid-template-columns:1fr}.play-now-duration{grid-template-columns:1fr}.play-now-explainer{grid-template-columns:1fr}.play-now-explainer>div+div{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:470px){.play-now-bar{padding:12px}.play-now-form{padding:16px}.now-inline-card{align-items:flex-start;flex-direction:column;gap:3px}}

/* =========================================================
   V2.16 — Compétitions inter-équipes
   ========================================================= */
.competition-center-simple{max-width:1080px}.competition-page-bar{margin-bottom:15px}.competition-invite-count{color:#e3c572!important}.competition-create-card,.competition-match-create-card{padding:0;overflow:hidden}.competition-create-card>summary,.competition-match-create-card>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 19px;cursor:pointer;list-style:none}.competition-create-card>summary::-webkit-details-marker,.competition-match-create-card>summary::-webkit-details-marker{display:none}.competition-create-card>summary>span:first-child,.competition-match-create-card>summary>span:first-child{display:grid;gap:3px}.competition-create-form,.competition-match-create-card .friendly-create-form{display:grid;gap:15px;padding:18px 19px 20px;border-top:1px solid var(--line)}.competition-create-grid{display:grid;grid-template-columns:150px repeat(2,minmax(0,1fr));gap:12px}.competition-create-foot{display:flex;align-items:center;justify-content:space-between;gap:18px}.competition-create-foot p{margin:0;color:#9ba6b6;font-size:14px;line-height:1.5;max-width:620px}.competition-invitations{margin-top:22px}.competition-invite-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.competition-invite-card h3{margin:5px 0 4px;font-size:19px}.competition-invite-card p{margin:0;color:#9ca7b6;font-size:14px;line-height:1.5}.competition-tabs{display:flex;gap:8px;overflow-x:auto;padding:3px 1px 7px;margin:18px 0 11px;scrollbar-width:thin}.competition-tab{display:grid;gap:3px;min-width:max-content;padding:10px 13px;border:1px solid #2b3341;border-radius:11px;background:#10151d;color:#a4adba}.competition-tab span{font-size:14px;font-weight:900}.competition-tab small{font-size:13px}.competition-tab.active{border-color:#6b5fb0;background:linear-gradient(145deg,#211d3e,#171a27);color:#fff;box-shadow:0 8px 22px rgba(0,0,0,.18)}.competition-hero-card{padding:22px;overflow:hidden;position:relative}.competition-hero-card:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-130px;top:-145px;background:radial-gradient(circle,rgba(125,97,255,.13),transparent 70%);pointer-events:none}.competition-hero-head{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.competition-hero-head h2{margin:5px 0 7px;font-size:29px;letter-spacing:-.035em}.competition-hero-head p{margin:0;color:#a3adbb;font-size:14px;line-height:1.5}.competition-status{display:inline-flex;align-items:center;min-height:35px;padding:0 12px;border-radius:999px;border:1px solid #364052;background:#151b25;color:#b4bdc9;font-size:13px;font-weight:900;white-space:nowrap}.competition-status.open{border-color:rgba(231,187,81,.28);background:rgba(231,187,81,.07);color:#e7c679}.competition-status.active{border-color:rgba(57,213,150,.28);background:rgba(57,213,150,.08);color:#9ee8c8}.competition-status.archived{opacity:.75}.competition-description{position:relative;z-index:1;margin:16px 0 0;padding:14px 15px;border-radius:12px;background:#10151d;border:1px solid #28313e;color:#bec6d1;font-size:15px;line-height:1.6}.competition-meta{position:relative;z-index:1;display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:16px}.competition-meta>span{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 10px;border-radius:9px;background:#111720;border:1px solid #293240;color:#98a3b2;font-size:13.5px}.competition-meta strong{color:#fff}.competition-organizer-box{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,1fr) auto;align-items:center;gap:15px;margin-top:18px;padding:16px;border:1px solid rgba(125,97,255,.23);border-radius:13px;background:linear-gradient(145deg,rgba(37,31,66,.55),rgba(17,22,30,.82))}.competition-organizer-box>div>strong{font-size:16px}.competition-organizer-box>div>p{margin:4px 0 0;color:#9da8b7;font-size:13.5px;line-height:1.45}.competition-invite-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.competition-invite-form .input{min-width:0}.competition-participants{position:relative;z-index:1;margin-top:18px;padding-top:17px;border-top:1px solid var(--line)}.competition-participants>strong{display:block;margin-bottom:10px;font-size:15px}.competition-participants>div{display:flex;gap:7px;flex-wrap:wrap}.competition-team-pill{display:inline-flex;align-items:center;gap:6px;min-height:37px;padding:0 11px;border:1px solid #303947;border-radius:10px;background:#121820;color:#b7c0cc;font-size:13.5px}.competition-team-pill b{color:#d8dce4}.competition-team-pill small{font-size:13px;color:#7f8a99}.competition-team-pill.joined{border-color:rgba(57,213,150,.18)}.competition-team-pill.invited{border-color:rgba(231,187,81,.2)}.competition-team-pill.declined{opacity:.55}.competition-archive-form{position:relative;z-index:1;display:flex;justify-content:flex-end;margin-top:13px}.competition-standing-card{padding:0;overflow:hidden;margin-top:15px}.competition-standing-card>.section-title{padding:18px 19px;margin:0}.competition-standing-card>.section-title h2{font-size:21px}.competition-ranking-table{min-width:840px}.competition-ranking-team{display:flex;align-items:center;gap:9px;color:#f3f5f8}.competition-ranking-team .mini-logo{width:34px;height:34px;border-radius:9px;font-size:13px;flex:0 0 auto}.competition-ranking-team>span:last-child{display:grid;gap:1px}.competition-ranking-team strong{font-size:14px}.competition-ranking-team small{font-size:13px;color:#8995a5}.competition-match-create-card{margin-top:15px}.competition-match-card.official{border-color:rgba(125,97,255,.2)}.competition-official-badge{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;background:rgba(125,97,255,.09);border:1px solid rgba(125,97,255,.22);color:#c4b8ff;font-size:13px;font-weight:900}.competition-result-proposal{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:15px;padding:15px;border-radius:12px;border:1px solid rgba(231,187,81,.24);background:rgba(231,187,81,.055)}.competition-result-proposal>div:first-child{display:grid;gap:3px}.competition-result-proposal strong{font-size:28px;line-height:1}.competition-result-proposal p{margin:2px 0 0;color:#9fa9b6;font-size:13.5px}.competition-history{margin-top:22px}.competition-history>summary{font-size:14px;font-weight:900;color:#a9b2bf}.competition-match-card .friendly-final-score strong{font-size:26px}
@media(max-width:900px){.competition-organizer-box{grid-template-columns:1fr}.competition-organizer-box>form:last-child .button{width:100%}.competition-create-grid{grid-template-columns:1fr 1fr}.competition-create-grid>.field:first-child{grid-column:1/-1}.competition-create-foot{align-items:stretch;flex-direction:column}.competition-create-foot .button{width:100%}}
@media(max-width:760px){.competition-create-card>summary,.competition-match-create-card>summary{padding:15px}.competition-create-form,.competition-match-create-card .friendly-create-form{padding:15px}.competition-invite-card{align-items:flex-start;flex-direction:column}.competition-invite-card .request-actions{width:100%}.competition-invite-card .request-actions .button{flex:1}.competition-hero-card{padding:18px}.competition-hero-head{flex-direction:column}.competition-hero-head h2{font-size:25px}.competition-status{align-self:flex-start}.competition-organizer-box{padding:14px}.competition-invite-form{grid-template-columns:1fr}.competition-invite-form .button{width:100%}.competition-standing-card>.section-title{align-items:flex-start;flex-direction:column;gap:5px}.competition-result-proposal{align-items:flex-start;flex-direction:column}.competition-result-proposal .request-actions{width:100%}.competition-result-proposal .request-actions .button{flex:1}}
@media(max-width:470px){.competition-create-grid{grid-template-columns:1fr}.competition-create-grid>.field:first-child{grid-column:auto}.competition-hero-card{padding:15px}.competition-hero-head h2{font-size:23px}.competition-meta{display:grid;grid-template-columns:1fr 1fr}.competition-meta>span{justify-content:center;text-align:center}.competition-team-pill{width:100%;justify-content:space-between}.competition-tabs{margin-left:-3px;margin-right:-3px}.competition-result-proposal strong{font-size:24px}}
.competition-result-waiting{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.competition-result-waiting .text-button{font-size:13px}
@media(max-width:760px){.competition-result-waiting{width:100%;justify-content:space-between}}

/* =========================================================
   V2.17 — Pages jeux
   ========================================================= */
.game-directory-page,.game-hub-page{max-width:1180px}.game-directory-search{grid-template-columns:minmax(0,1fr) auto;margin-bottom:18px}.games-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.game-directory-card{padding:0;overflow:hidden;color:inherit;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.game-directory-card:hover{transform:translateY(-3px);border-color:rgba(125,97,255,.34);box-shadow:0 18px 42px rgba(0,0,0,.22)}.game-directory-cover{position:relative;min-height:150px;padding:15px;display:flex;align-items:flex-end;background:linear-gradient(145deg,#29214b,#101822);overflow:hidden}.game-directory-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,9,14,.05),rgba(7,9,14,.92));pointer-events:none}.game-directory-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.game-directory-cover>span{position:relative;z-index:1;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:rgba(9,11,17,.78);border:1px solid rgba(255,255,255,.13);font-size:20px;font-weight:950;letter-spacing:-.03em}.game-directory-cover>b{position:absolute;z-index:2;right:13px;top:13px;padding:7px 10px;border-radius:999px;background:rgba(57,213,150,.12);border:1px solid rgba(57,213,150,.26);color:#a7ebcf;font-size:13px}.game-directory-body{display:grid;gap:16px;padding:17px}.game-directory-body h2{margin:4px 0 2px;font-size:21px}.game-directory-body p{margin:0;color:#8f9baa;font-size:14px}.game-directory-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.game-directory-stats>span{display:grid;gap:1px;padding:9px 10px;border-radius:10px;background:#10151d;border:1px solid #28313d;color:#8e99a9;font-size:13px}.game-directory-stats strong{color:#eef1f6;font-size:16px}.game-directory-stats .is-live{border-color:rgba(57,213,150,.22);background:rgba(57,213,150,.055);color:#9edfc4}
.game-hub-hero{position:relative;display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:22px;align-items:center;padding:22px;overflow:hidden;background:linear-gradient(135deg,rgba(35,27,67,.93),rgba(14,19,27,.96))}.game-hub-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,12,18,.82),rgba(10,12,18,.62));z-index:1;pointer-events:none}.game-hub-backdrop{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;opacity:.34;filter:saturate(.85);z-index:0!important}.game-hub-hero>*{position:relative;z-index:2}.game-hub-cover{height:170px;border-radius:19px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(123,92,255,.26),rgba(12,18,28,.9));border:1px solid rgba(255,255,255,.12);box-shadow:0 22px 44px rgba(0,0,0,.26)}.game-hub-cover span{font-size:42px;font-weight:950;letter-spacing:-.06em}.game-hub-copy h1{margin:5px 0 5px;font-size:36px;letter-spacing:-.05em}.game-hub-copy>p{margin:0;color:#a6b0bd}.game-hub-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px}.game-hub-stats>span{display:inline-flex;gap:5px;align-items:center;min-height:38px;padding:0 11px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(11,15,22,.62);color:#a8b2bf;font-size:13.5px}.game-hub-stats strong{color:#fff}.game-hub-stats .is-live{color:#a8e9cc;border-color:rgba(57,213,150,.23)}.game-hub-actions{display:grid;gap:9px;min-width:210px}.game-hub-actions .button{justify-content:center}.game-hub-section{margin-top:24px}.game-player-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.game-player-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:start}.game-player-card>div:nth-child(2){min-width:0}.game-player-card h3{margin:2px 0 3px;font-size:17px}.game-player-card p{margin:0 0 9px;color:#929dac;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-player-card .card-actions{grid-column:1/-1;margin-top:2px}.game-hub-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:24px}.game-hub-panel{padding:0;overflow:hidden}.game-hub-panel>.section-title{padding:18px 18px 10px;margin:0}.game-recruitment-row,.game-competition-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 18px;border-top:1px solid var(--line);color:inherit}.game-recruitment-row:hover,.game-competition-row:hover{background:rgba(125,97,255,.045)}.game-recruitment-row>div,.game-competition-row>div{display:grid;gap:3px;min-width:0}.game-recruitment-row strong,.game-competition-row strong{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-recruitment-row small,.game-competition-row small{color:#8f9baa;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-recruitment-row>b,.game-competition-row>b{color:#9f8aff}.game-competition-row{grid-template-columns:minmax(0,1fr) auto}.game-competition-row .competition-status{justify-self:start;min-height:29px}.game-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.game-result-card{display:grid;gap:10px}.game-result-card>div{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center}.game-result-card>div a:last-child{text-align:right}.game-result-card>div strong{font-size:21px}.game-result-card>span{color:#8d98a8;font-size:13px}.game-community-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.compact-post{margin:0}.compact-post .post-image{max-height:270px;object-fit:cover}.empty.compact{padding:18px}
@media(max-width:980px){.games-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-hub-hero{grid-template-columns:130px minmax(0,1fr)}.game-hub-cover{height:130px}.game-hub-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.game-player-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.game-directory-search{grid-template-columns:1fr}.games-directory-grid{grid-template-columns:1fr}.game-directory-cover{min-height:130px}.game-hub-hero{grid-template-columns:84px minmax(0,1fr);gap:15px;padding:17px}.game-hub-cover{height:84px;border-radius:15px}.game-hub-cover span{font-size:27px}.game-hub-copy h1{font-size:27px}.game-hub-stats{grid-column:1/-1}.game-hub-actions{grid-template-columns:1fr}.game-player-strip,.game-hub-columns,.game-results-grid,.game-community-feed{grid-template-columns:1fr}.game-player-card{grid-template-columns:auto minmax(0,1fr)}.game-hub-panel>.section-title{padding:16px 15px 9px}.game-recruitment-row,.game-competition-row{padding:13px 15px}}
@media(max-width:470px){.game-directory-body{padding:15px}.game-directory-stats{grid-template-columns:1fr 1fr}.game-hub-hero{grid-template-columns:70px minmax(0,1fr);padding:14px}.game-hub-cover{height:70px}.game-hub-copy h1{font-size:24px}.game-hub-stats>span{width:100%;justify-content:space-between}.game-result-card>div{grid-template-columns:1fr auto 1fr;gap:7px}.game-result-card>div a{font-size:13px}}
.game-catalog-form{grid-template-columns:1.15fr .9fr .9fr minmax(220px,1.4fr) 100px auto}.game-catalog-edit{grid-template-columns:1fr .8fr .8fr minmax(210px,1.3fr) 90px}.game-cover-field{min-width:0}.game-cover-field .input{min-width:0}
@media(max-width:1100px){.game-catalog-form{grid-template-columns:1fr 1fr 1fr}.game-catalog-form .game-cover-field{grid-column:1/3}.game-catalog-form .button{grid-column:auto}.game-catalog-edit{grid-template-columns:1fr 1fr}.game-catalog-edit .game-cover-field{grid-column:1/-1}}
@media(max-width:760px){.game-catalog-form,.game-catalog-edit{grid-template-columns:1fr}.game-catalog-form .game-cover-field,.game-catalog-edit .game-cover-field{grid-column:auto}}

/* =========================================================
   V2.18 — Remplaçant express
   ========================================================= */
.substitute-page{max-width:1180px;margin:0 auto}.substitute-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:linear-gradient(135deg,rgba(124,92,255,.16),rgba(45,211,111,.07) 55%,rgba(255,255,255,.02))}.substitute-hero h1{margin:3px 0 6px;font-size:clamp(1.7rem,3vw,2.35rem)}.substitute-hero p{margin:0;max-width:720px;color:var(--muted);font-size:1rem;line-height:1.6}.substitute-flash-badge{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:rgba(124,92,255,.16);border:1px solid rgba(151,125,255,.35);font-weight:800;white-space:nowrap}.substitute-create{padding:0;overflow:hidden}.substitute-create>summary{cursor:pointer;list-style:none;padding:20px 22px;font-weight:850;font-size:1.05rem}.substitute-create>summary::-webkit-details-marker{display:none}.substitute-form{padding:0 22px 22px}.substitute-form .small-field{max-width:150px}.substitute-request{padding:22px;position:relative;overflow:hidden}.substitute-request.active{border-color:rgba(124,92,255,.36);box-shadow:0 16px 40px rgba(0,0,0,.18)}.substitute-request.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#8f70ff,#48d48c)}.substitute-request-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.substitute-request-head h2{margin:5px 0 4px;font-size:1.28rem}.substitute-request-head p{margin:0;color:var(--muted)}.substitute-state{display:inline-flex;padding:7px 11px;border-radius:999px;font-weight:800;background:rgba(255,255,255,.06);white-space:nowrap}.substitute-state.open{background:rgba(124,92,255,.16);color:#c8b9ff}.substitute-state.filled{background:rgba(45,211,111,.13);color:#8ee8b4}.substitute-state.closed,.substitute-state.expired,.substitute-state.cancelled{color:var(--muted)}.substitute-tags{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.substitute-tags span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07);font-weight:700;color:var(--text)}.substitute-progress{height:8px;background:rgba(255,255,255,.06);border-radius:999px;overflow:hidden;margin:18px 0 10px}.substitute-progress span{display:block;height:100%;width:var(--fill);max-width:100%;background:linear-gradient(90deg,#7b5cff,#45d28b);border-radius:inherit}.substitute-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.substitute-summary a{font-weight:750}.substitute-selected,.substitute-volunteers{margin-top:18px}.substitute-people{display:grid;gap:10px;margin-top:9px}.substitute-person{display:flex;align-items:center;gap:11px;padding:11px 12px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.025)}.substitute-person.selected{background:rgba(45,211,111,.055);border-color:rgba(45,211,111,.18)}.substitute-person>div{min-width:0;flex:1}.substitute-person strong,.substitute-person small{display:block}.substitute-person small{color:var(--muted);margin-top:2px}.substitute-recommendations{margin-top:18px;border-top:1px solid rgba(255,255,255,.07);padding-top:14px}.substitute-recommendations>summary{cursor:pointer;font-weight:800}.substitute-candidate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.substitute-candidate{display:flex;align-items:center;gap:10px;padding:12px;border-radius:15px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.substitute-candidate>div{min-width:0;flex:1}.substitute-candidate strong,.substitute-candidate span,.substitute-candidate small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.substitute-candidate span{color:var(--muted);margin-top:2px}.substitute-candidate small{color:#9dd9b6;margin-top:4px}.substitute-admin-actions{display:flex;justify-content:flex-end;margin-top:14px}.substitute-public-page{padding-top:18px}.substitute-public-card{padding:26px}.substitute-public-team{display:flex;align-items:center;gap:14px}.substitute-public-team>img{width:58px;height:58px;object-fit:cover;border-radius:16px}.substitute-public-team>div{min-width:0;flex:1}.substitute-public-team h1{font-size:clamp(1.55rem,4vw,2.15rem);margin:4px 0 0}.substitute-public-date{display:grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:10px;margin:24px 0 8px;padding:18px;border-radius:18px;background:linear-gradient(135deg,rgba(124,92,255,.12),rgba(255,255,255,.025))}.substitute-public-date strong{font-size:1.25rem}.substitute-public-date span{font-size:1.8rem;font-weight:900}.substitute-public-date em{font-style:normal;color:var(--muted);justify-self:end}.substitute-public-note{font-size:1rem;line-height:1.65}.substitute-fill{display:flex;align-items:baseline;gap:10px;margin:18px 0}.substitute-fill strong{font-size:1.35rem}.substitute-fill span{color:var(--muted)}.substitute-public-selected{margin:20px 0}.substitute-response-box{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border-radius:18px;background:rgba(124,92,255,.08);border:1px solid rgba(124,92,255,.18)}.substitute-response-box>div strong,.substitute-response-box>div span{display:block}.substitute-response-box>div span{margin-top:3px;color:var(--muted)}.substitute-confirmed{display:flex;flex-direction:column;gap:5px;padding:18px;border-radius:18px;background:rgba(45,211,111,.09);border:1px solid rgba(45,211,111,.22)}.substitute-confirmed strong{font-size:1.14rem}.substitute-invite-note{margin:12px 0 0;color:#c8b9ff;font-weight:750}.substitute-home-card{border-color:rgba(124,92,255,.24)}.substitute-home-suggestion .suggestion-status{color:#c8b9ff}.substitute-game-section{margin-top:22px}.substitute-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.substitute-game-card{display:block;text-decoration:none;padding:18px;transition:transform .18s ease,border-color .18s ease}.substitute-game-card:hover{transform:translateY(-2px);border-color:rgba(124,92,255,.38)}.substitute-game-team{display:flex;align-items:center;gap:10px}.substitute-game-team>div{min-width:0}.substitute-game-team strong,.substitute-game-team span{display:block}.substitute-game-team span{color:var(--muted);margin-top:2px}.substitute-game-card h3{margin:14px 0 5px;font-size:1.08rem}.substitute-game-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;color:var(--muted)}.substitute-game-foot b{color:#c8b9ff}.friendly-member-check small:has(+ *){color:var(--muted)}
@media(max-width:760px){.substitute-hero{align-items:flex-start;padding:22px}.substitute-flash-badge{display:none}.substitute-request-head,.substitute-summary,.substitute-response-box{align-items:flex-start;flex-direction:column}.substitute-candidate-grid,.substitute-game-grid{grid-template-columns:1fr}.substitute-form .small-field{max-width:none}.substitute-public-card{padding:20px}.substitute-public-team{align-items:flex-start;flex-wrap:wrap}.substitute-public-team .substitute-state{margin-left:auto}.substitute-public-date{grid-template-columns:1fr auto}.substitute-public-date em{grid-column:1/-1;justify-self:start}.substitute-response-box .request-actions{width:100%}.substitute-response-box .request-actions .button{flex:1}.substitute-candidate{align-items:flex-start;flex-wrap:wrap}.substitute-candidate>form,.substitute-candidate>.action-state{margin-left:auto}}

/* V2.19 — Tryouts / sessions de recrutement */
.tryout-page{max-width:1180px;margin:0 auto}.tryout-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:linear-gradient(135deg,rgba(124,92,255,.15),rgba(255,181,71,.06) 58%,rgba(255,255,255,.02))}.tryout-hero h1{margin:4px 0 7px;font-size:clamp(1.7rem,3vw,2.35rem)}.tryout-hero p{margin:0;max-width:760px;color:var(--muted);line-height:1.65}.tryout-hero-badge{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:rgba(255,181,71,.09);border:1px solid rgba(255,181,71,.2);font-weight:850;white-space:nowrap}.tryout-create{padding:0;overflow:hidden}.tryout-create>summary{cursor:pointer;list-style:none;padding:20px 22px;font-weight:850;font-size:1.05rem}.tryout-create>summary::-webkit-details-marker{display:none}.tryout-form{padding:0 22px 22px}.tryout-session{padding:22px;position:relative;overflow:hidden}.tryout-session.planned{border-color:rgba(124,92,255,.28)}.tryout-session.planned:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#8f70ff,#ffb547)}.tryout-session-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.tryout-session-head h2{margin:5px 0 4px;font-size:1.3rem}.tryout-session-head p{margin:0;color:var(--muted)}.tryout-state{display:inline-flex;padding:7px 11px;border-radius:999px;font-weight:800;background:rgba(255,255,255,.06);white-space:nowrap}.tryout-state.planned{background:rgba(124,92,255,.15);color:#c8b9ff}.tryout-state.closed{background:rgba(255,181,71,.1);color:#ffd69a}.tryout-state.completed{background:rgba(45,211,111,.1);color:#91eab6}.tryout-state.cancelled{color:var(--muted)}.tryout-tags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.tryout-tags span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07);font-weight:700}.tryout-description{margin:14px 0 0;line-height:1.65;color:var(--text)}.tryout-links{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.07)}.tryout-candidates{margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.07)}.tryout-candidate{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}.tryout-candidate:last-child{border-bottom:0}.tryout-candidate.shortlisted{background:linear-gradient(90deg,rgba(124,92,255,.055),transparent);margin-inline:-12px;padding-inline:12px;border-radius:14px}.tryout-candidate.invited{background:linear-gradient(90deg,rgba(45,211,111,.055),transparent);margin-inline:-12px;padding-inline:12px;border-radius:14px}.tryout-candidate-main{min-width:0}.tryout-candidate-main p,.tryout-candidate-main small{display:block;margin:3px 0 0;color:var(--muted)}.tryout-candidate-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.tryout-candidate-state{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.055);font-weight:750}.tryout-candidate-state.shortlisted{background:rgba(124,92,255,.13);color:#cabdff}.tryout-candidate-state.invited{background:rgba(45,211,111,.12);color:#95eabd}.tryout-candidate-state.rejected,.tryout-candidate-state.withdrawn{color:var(--muted)}.tryout-candidate-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.tryout-note-form{grid-column:2/-1;display:flex;gap:8px;align-items:center}.tryout-note-form .input{flex:1;min-width:180px}.tryout-public-page{padding-top:18px}.tryout-public-card{padding:26px}.tryout-public-team{display:flex;align-items:center;gap:14px}.tryout-public-team>img{width:60px;height:60px;object-fit:cover;border-radius:17px}.tryout-public-team>div{min-width:0;flex:1}.tryout-public-team h1{font-size:clamp(1.55rem,4vw,2.2rem);margin:4px 0 0}.tryout-public-date{display:grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:10px;margin:24px 0 8px;padding:18px;border-radius:18px;background:linear-gradient(135deg,rgba(124,92,255,.12),rgba(255,181,71,.045))}.tryout-public-date strong{font-size:1.25rem}.tryout-public-date span{font-size:1.8rem;font-weight:900}.tryout-public-date em{font-style:normal;color:var(--muted);justify-self:end}.tryout-location{margin:14px 0;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);font-weight:750}.tryout-public-candidates{margin:22px 0}.tryout-avatar-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.tryout-avatar-row>a{display:block;text-decoration:none}.tryout-confirmed{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:18px;border-radius:18px;background:rgba(45,211,111,.08);border:1px solid rgba(45,211,111,.2)}.tryout-response-box{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border-radius:18px;background:rgba(124,92,255,.075);border:1px solid rgba(124,92,255,.18)}.tryout-response-box>div strong,.tryout-response-box>div span{display:block}.tryout-response-box>div span{color:var(--muted);margin-top:3px}.tryout-privacy-note{display:flex;gap:10px;align-items:flex-start}.tryout-privacy-note span{color:var(--muted);line-height:1.55}.tryout-home-card{border-color:rgba(255,181,71,.18)}.tryout-home-suggestion .suggestion-status{color:#ffd69a}.tryout-game-section{margin-top:22px}.tryout-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tryout-game-card{display:block;text-decoration:none;padding:18px;transition:transform .18s ease,border-color .18s ease}.tryout-game-card:hover{transform:translateY(-2px);border-color:rgba(255,181,71,.32)}.tryout-game-team{display:flex;align-items:center;gap:10px}.tryout-game-team>div{min-width:0}.tryout-game-team strong,.tryout-game-team span{display:block}.tryout-game-team span{color:var(--muted);margin-top:2px}.tryout-game-card h3{margin:14px 0 5px;font-size:1.08rem}.tryout-game-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;color:var(--muted)}.tryout-game-foot b{color:#ffd69a}
@media(max-width:760px){.tryout-hero{align-items:flex-start;padding:22px}.tryout-hero-badge{display:none}.tryout-session-head,.tryout-links,.tryout-response-box{align-items:flex-start;flex-direction:column}.tryout-game-grid{grid-template-columns:1fr}.tryout-public-card{padding:20px}.tryout-public-team{align-items:flex-start;flex-wrap:wrap}.tryout-public-team .tryout-state{margin-left:auto}.tryout-public-date{grid-template-columns:1fr auto}.tryout-public-date em{grid-column:1/-1;justify-self:start}.tryout-candidate{grid-template-columns:auto minmax(0,1fr)}.tryout-candidate-actions{grid-column:1/-1;justify-content:flex-start}.tryout-note-form{grid-column:1/-1;flex-direction:column;align-items:stretch}.tryout-note-form .input{min-width:0}.tryout-privacy-note{flex-direction:column}}

/* V2.20 — Historique / palmarès d'équipe */
.team-history-page{max-width:1240px;margin:0 auto}.history-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:linear-gradient(135deg,rgba(255,181,71,.11),rgba(124,92,255,.11) 58%,rgba(255,255,255,.02));overflow:hidden}.history-team-ident{display:flex;align-items:center;gap:18px;min-width:0}.history-team-ident>img{width:82px;height:82px;object-fit:cover;border-radius:22px;border:1px solid rgba(255,255,255,.12);box-shadow:0 14px 32px rgba(0,0,0,.25)}.history-team-ident .team-logo{width:82px;height:82px;font-size:1.25rem}.history-team-ident h1{margin:4px 0 5px;font-size:clamp(1.75rem,3vw,2.45rem)}.history-team-ident p{margin:0;color:var(--muted)}.history-trophy{display:grid;grid-template-columns:auto auto;align-items:center;gap:0 8px;padding:13px 18px;border-radius:20px;background:rgba(255,181,71,.09);border:1px solid rgba(255,181,71,.22);min-width:112px}.history-trophy>span{grid-row:1/3;font-size:2rem}.history-trophy strong{font-size:1.6rem;line-height:1}.history-trophy small{color:#ffd69a;font-weight:750}.history-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:16px 0}.history-stat{padding:18px;min-width:0}.history-stat>span,.history-stat>small{display:block;color:var(--muted)}.history-stat>strong{display:block;font-size:1.8rem;margin:5px 0}.history-stat.positive>strong{color:#91eab6}.history-stat.negative>strong{color:#ff9fae}.history-stat .history-streak-word{font-size:1.18rem;line-height:1.25}.history-form-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;margin-bottom:16px}.history-form-card h2{margin:3px 0 0;font-size:1.15rem}.history-form{display:flex;gap:8px}.history-form span{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;font-weight:900;border:1px solid rgba(255,255,255,.08)}.history-form .win{background:rgba(45,211,111,.12);color:#91eab6;border-color:rgba(45,211,111,.22)}.history-form .draw{background:rgba(255,181,71,.11);color:#ffd69a;border-color:rgba(255,181,71,.2)}.history-form .loss{background:rgba(255,91,115,.1);color:#ff9fae;border-color:rgba(255,91,115,.19)}.history-section{padding:22px}.history-honours{border-color:rgba(255,181,71,.2)}.history-title-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.history-title{display:flex;align-items:center;gap:13px;padding:16px;border-radius:17px;background:linear-gradient(135deg,rgba(255,181,71,.09),rgba(255,255,255,.025));border:1px solid rgba(255,181,71,.14);text-decoration:none}.history-title:hover{border-color:rgba(255,181,71,.3)}.history-title>div{min-width:0}.history-title strong,.history-title span{display:block}.history-title>div span{margin-top:3px;color:var(--muted)}.history-cup{font-size:1.6rem}.history-two-col{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:16px;margin:16px 0}.history-results,.history-opponents{display:flex;flex-direction:column}.history-result{display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.065);text-decoration:none}.history-result:last-child{border-bottom:0}.history-result-date strong,.history-result-date span{display:block}.history-result-date span{margin-top:3px;color:var(--muted)}.history-opponent{display:flex;align-items:center;gap:10px;min-width:0}.history-opponent>img,.history-opponent-row>img{width:42px;height:42px;object-fit:cover;border-radius:12px}.history-opponent>div{min-width:0}.history-opponent strong,.history-opponent span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-opponent span{margin-top:2px;color:var(--muted)}.history-score{text-align:right}.history-score span,.history-score strong{display:block}.history-score span{font-weight:800}.history-score strong{font-size:1.25rem;margin-top:2px}.history-result.win .history-score span{color:#91eab6}.history-result.draw .history-score span{color:#ffd69a}.history-result.loss .history-score span{color:#ff9fae}.history-opponent-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.06);text-decoration:none}.history-opponent-row:last-child{border-bottom:0}.history-opponent-row>div{min-width:0}.history-opponent-row strong,.history-opponent-row span{display:block}.history-opponent-row span{margin-top:2px;color:var(--muted)}.history-opponent-row>b{font-size:1.05rem}.history-game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.history-game-stat{padding:17px;border-radius:17px;background:rgba(255,255,255,.028);border:1px solid rgba(255,255,255,.065);text-decoration:none}.history-game-stat strong,.history-game-stat span,.history-game-stat small{display:block}.history-game-stat span{margin:7px 0 4px}.history-game-stat small{color:var(--muted)}.history-game-stat:hover{border-color:rgba(124,92,255,.25)}.history-season-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.history-season{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px;border-radius:17px;background:rgba(255,255,255,.028);border:1px solid rgba(255,255,255,.065);text-decoration:none}.history-season.champion{background:linear-gradient(135deg,rgba(255,181,71,.09),rgba(255,255,255,.025));border-color:rgba(255,181,71,.18)}.history-season>div:first-child{min-width:0}.history-season span,.history-season strong,.history-season small{display:block}.history-season>div:first-child>span{color:var(--muted)}.history-season>div:first-child>strong{margin:4px 0}.history-season>div:first-child>small{color:var(--muted)}.history-season-rank{display:flex;align-items:baseline;gap:4px;flex:0 0 auto}.history-season-rank strong{font-size:1.45rem}.history-season-rank span{color:var(--muted)}.history-record{display:flex;align-items:center;gap:20px;margin-top:16px;padding:20px 22px;border-color:rgba(124,92,255,.18)}.history-record>div strong,.history-record>div span{display:block}.history-record>div span{margin-top:4px;color:var(--muted)}
@media(max-width:1050px){.history-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.history-two-col{grid-template-columns:1fr}.history-title-grid,.history-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.history-hero{align-items:flex-start;flex-direction:column;padding:22px}.history-team-ident{align-items:flex-start}.history-team-ident>img,.history-team-ident .team-logo{width:68px;height:68px;border-radius:18px}.history-trophy{align-self:stretch}.history-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.history-stat{padding:15px}.history-stat:last-child{grid-column:1/-1}.history-form-card{align-items:flex-start;flex-direction:column}.history-title-grid,.history-game-grid,.history-season-grid{grid-template-columns:1fr}.history-result{grid-template-columns:1fr auto}.history-result-date{grid-column:1/-1;display:flex;gap:8px;align-items:center}.history-result-date span{margin-top:0}.history-record{align-items:flex-start;flex-direction:column}.history-section{padding:18px}}
@media(max-width:430px){.history-team-ident{flex-direction:column}.history-stat-grid{grid-template-columns:1fr 1fr}.history-form span{width:38px;height:38px}.history-result{gap:10px}.history-score strong{font-size:1.15rem}}

/* V2.21 — notifications navigateur / PWA */
.browser-notification-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:20px 22px;background:linear-gradient(135deg,rgba(124,92,255,.13),rgba(21,25,35,.96) 48%,rgba(44,196,155,.07));border-color:rgba(124,92,255,.24)}
.browser-notification-copy{min-width:0;display:grid;gap:6px}.browser-notification-copy>strong{font-size:17px;line-height:1.35}.browser-notification-copy p{margin:0;line-height:1.5}.browser-notification-status{font-size:14px;font-weight:750;color:#c8d0dc}.browser-notification-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;flex:0 0 auto}.browser-notification-actions .button{min-height:44px;white-space:nowrap}
@media(max-width:760px){.browser-notification-card{align-items:stretch;flex-direction:column;padding:17px}.browser-notification-actions{width:100%;justify-content:stretch}.browser-notification-actions .button{flex:1 1 190px}.browser-notification-copy>strong{font-size:16px}}

/* V2.22 — rôles et rangs par jeu */
.admin-game-taxonomy{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.admin-game-taxonomy label{display:grid;gap:8px;font-weight:700}.taxonomy-editor{min-height:132px;line-height:1.45;resize:vertical}.game-taxonomy-card{display:grid;grid-template-columns:1fr 1fr;gap:16px}.game-taxonomy-block{display:grid;gap:10px}.game-taxonomy-block>strong{font-size:16px}.game-taxonomy-chips{display:flex;flex-wrap:wrap;gap:8px}.game-taxonomy-chips .chip{font-size:14px}.game-taxonomy-note{grid-column:1/-1;margin:0;color:var(--muted);font-size:14px}
@media(max-width:760px){.admin-game-taxonomy,.game-taxonomy-card{grid-template-columns:1fr}.game-taxonomy-note{grid-column:auto}}

/* V2.23 — Liens d'invitation d'équipe */
.team-invite-links-page,.team-invite-landing{max-width:1120px;margin:0 auto}.invite-links-head{align-items:flex-start}.invite-links-head h1{margin-bottom:8px}.invite-links-head p{max-width:720px;color:var(--muted);line-height:1.55}.migration-needed{padding:22px;border-color:rgba(255,181,71,.25)}.migration-needed strong{display:block;font-size:18px;margin-bottom:8px}.migration-needed p{margin:0;color:var(--muted);line-height:1.55}.migration-needed code{font-size:14px;color:#ddd5ff}.invite-link-create{padding:22px;margin-bottom:20px}.invite-link-form{display:grid;grid-template-columns:1.3fr 1fr .8fr .95fr auto;gap:12px;align-items:end}.invite-link-safety{margin:14px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.invite-link-list>.section-title{margin-bottom:12px}.invite-link-card{padding:20px;position:relative;overflow:hidden}.invite-link-card.fresh{border-color:rgba(64,214,151,.35);box-shadow:0 0 0 1px rgba(64,214,151,.08),0 18px 45px rgba(0,0,0,.16)}.invite-link-card.inactive{opacity:.76}.invite-link-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.invite-link-card-head h3{margin:6px 0 4px;font-size:19px}.invite-link-card-head p{margin:0;color:var(--muted);font-size:14px}.invite-link-state{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);font-size:13px;font-weight:850;color:#aeb7c5}.invite-link-state.good{color:#92e7bb;background:rgba(50,206,137,.08);border-color:rgba(50,206,137,.2)}.invite-link-count{text-align:right;flex:0 0 auto}.invite-link-count strong{display:block;font-size:25px;line-height:1}.invite-link-count span{display:block;margin-top:4px;color:var(--muted);font-size:13px}.invite-share-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;margin-top:16px}.invite-url{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px}.invite-link-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:10px}.invite-link-tools>span{color:var(--muted);font-size:13px}.invite-qr-slot{margin-top:16px;padding:16px;border-radius:16px;background:#fff;width:max-content;max-width:100%}.invite-qr-slot[hidden]{display:none}.invite-qr-slot img{display:block;width:220px;height:220px;max-width:100%;object-fit:contain}.invite-qr-slot small{display:block;max-width:220px;margin-top:10px;color:#606a78;font-size:13px;line-height:1.4}.invite-revoke{position:absolute;right:20px;bottom:18px}.invite-link-ended{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07);color:var(--muted)}.invite-link-ended span,.invite-link-ended small{font-size:14px}
.invite-public-top{max-width:1120px;margin:0 auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.team-invite-landing{padding:32px 24px 80px}.content.team-invite-landing{padding-top:22px}.invite-team-hero{padding:0;overflow:hidden}.invite-team-cover{display:block;width:100%;height:210px;object-fit:cover}.invite-team-main{display:flex;gap:20px;align-items:flex-start;padding:24px 26px 18px}.invite-team-logo{width:88px;height:88px;object-fit:cover;border-radius:22px;border:1px solid rgba(255,255,255,.12);box-shadow:0 12px 30px rgba(0,0,0,.22);flex:0 0 auto}.invite-team-logo-fallback{display:grid;place-items:center;font-size:20px}.invite-team-main h1{margin:5px 0 8px;font-size:clamp(30px,5vw,48px);letter-spacing:-.045em}.invite-team-main p{margin:0 0 14px;color:#b6c0ce;line-height:1.55;max-width:720px}.invite-team-facts{display:flex;gap:10px;flex-wrap:wrap;padding:0 26px 24px}.invite-team-facts span{display:flex;align-items:center;gap:6px;min-height:36px;padding:7px 11px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.065);color:var(--muted);font-size:14px}.invite-team-facts strong{color:#f6f7fb}.invite-invalid,.invite-join-card,.invite-apply-card,.invite-state-card{margin-top:16px;padding:24px}.invite-invalid strong,.invite-join-card h2,.invite-apply-card h2,.invite-state-card strong{font-size:21px}.invite-invalid p,.invite-join-card p,.invite-apply-card p,.invite-state-card p{color:var(--muted);line-height:1.55}.invite-auth-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 12px}.invite-join-card small,.invite-link-note{display:block;color:var(--muted);font-size:14px;line-height:1.45}.invite-state-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.invite-state-card.success{border-color:rgba(50,206,137,.22);background:linear-gradient(135deg,rgba(30,73,57,.33),rgba(20,24,33,.98))}.invite-apply-card form{margin-top:16px}
@media(max-width:1050px){.invite-link-form{grid-template-columns:1fr 1fr}.invite-link-form>.button{min-height:48px}.invite-link-form>.button,.invite-link-form>.field:first-child{grid-column:auto}}
@media(max-width:760px){.invite-links-head{flex-direction:column}.invite-link-create,.invite-link-card{padding:17px}.invite-link-form{grid-template-columns:1fr}.invite-share-row{grid-template-columns:1fr 1fr}.invite-share-row .invite-url{grid-column:1/-1}.invite-link-card-head{gap:12px}.invite-link-tools{align-items:flex-start;flex-direction:column}.invite-revoke{position:static;margin-top:14px}.invite-qr-slot{width:100%;display:grid;place-items:center}.invite-qr-slot[hidden]{display:none}.invite-public-top{padding:16px}.team-invite-landing{padding:16px 16px 72px}.invite-team-cover{height:150px}.invite-team-main{padding:18px;gap:14px}.invite-team-logo{width:68px;height:68px;border-radius:18px}.invite-team-facts{padding:0 18px 18px}.invite-invalid,.invite-join-card,.invite-apply-card,.invite-state-card{padding:19px}.invite-state-card{align-items:flex-start;flex-direction:column}.invite-auth-actions .button{flex:1 1 180px}}
@media(max-width:430px){.invite-share-row{grid-template-columns:1fr}.invite-share-row .invite-url{grid-column:auto}.invite-team-main{flex-direction:column}.invite-link-card-head{flex-direction:column}.invite-link-count{text-align:left;display:flex;align-items:baseline;gap:7px}.invite-link-count strong,.invite-link-count span{display:inline}}

/* V2.24 — Team overview visual unification. Routing/URLs intentionally unchanged. */
.team-overview-v224{max-width:1120px;gap:18px}
.team-overview-v224 .team-identity-hero{padding:28px 30px;background:linear-gradient(145deg,rgba(32,28,57,.97),rgba(17,22,31,.99));border-color:rgba(106,94,158,.34);box-shadow:0 24px 60px rgba(0,0,0,.24)}
.team-overview-v224 .team-cover-image{height:160px;opacity:.18}
.team-overview-v224 .team-profile-head{display:grid;grid-template-columns:96px minmax(0,1fr);gap:24px;align-items:center}
.team-overview-v224 .team-profile-head>div:nth-child(2){padding-top:0;min-width:0}
.team-overview-v224 .team-logo{width:96px;height:96px;border-radius:24px;font-size:28px;background:linear-gradient(145deg,#302758,#211c3d);border:1px solid rgba(151,129,255,.24);box-shadow:0 14px 34px rgba(0,0,0,.22)}
.team-overview-v224 .team-identity-copy .kicker{font-size:14px;letter-spacing:.14em;color:#abb5c7}
.team-overview-v224 .team-identity-copy h1{margin:8px 0 5px;font-size:32px;line-height:1.08;letter-spacing:-.035em;writing-mode:horizontal-tb;word-break:normal;overflow-wrap:break-word}
.team-overview-v224 .team-identity-copy p{max-width:760px;margin:0;color:#aeb8c7;font-size:15px;line-height:1.55}
.team-overview-v224 .team-game-chips{margin-top:14px}
.team-overview-v224 .team-facts{margin-top:22px;padding-top:17px;gap:10px 18px}
.team-overview-v224 .team-facts>span:not(.open):not(.closed){display:inline-flex;align-items:baseline;gap:5px;min-height:34px;padding:6px 10px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.025)}
.team-overview-v224 .team-facts .open,.team-overview-v224 .team-facts .closed{min-height:34px;display:inline-flex;align-items:center;padding:6px 11px}
.team-overview-v224 .team-main-actions.team-action-strip{display:flex;align-items:stretch;gap:10px;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:0 0 4px;margin:0;scrollbar-width:thin;scrollbar-color:#3a315e transparent}
.team-overview-v224 .team-action-strip form{display:flex;flex:0 0 auto;margin:0}
.team-overview-v224 .team-action-link{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:0 0 auto;min-height:58px;padding:0 19px;border:1px solid #303848;border-radius:13px;background:#11161e;color:#e1e5ed;font:inherit;font-size:15px;font-weight:850;white-space:nowrap;text-decoration:none;transition:.16s}
.team-overview-v224 button.team-action-link{cursor:pointer}
.team-overview-v224 .team-action-link:hover{border-color:#4d466b;background:#171b27;color:#fff;transform:translateY(-1px)}
.team-overview-v224 .team-action-link.active{border-color:#8a6cff;background:linear-gradient(135deg,#7453f1,#895eff);color:#fff;box-shadow:0 10px 28px rgba(115,82,241,.2)}
.team-overview-v224 .team-action-icon{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px}
.team-overview-v224 .team-action-icon svg{width:22px;height:22px}
.team-overview-v224 .team-action-state{display:inline-flex;align-items:center;min-height:58px;padding:0 18px;border-radius:13px;white-space:nowrap}
.team-overview-v224 .team-agenda-preview{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;padding:27px 30px;background:linear-gradient(145deg,rgba(35,30,65,.94),rgba(17,22,31,.99));border-color:rgba(100,88,150,.3);overflow:hidden;text-decoration:none}
.team-overview-v224 .team-agenda-preview:after{content:"";position:absolute;right:-100px;top:-160px;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,rgba(125,97,255,.16),transparent 68%);pointer-events:none}
.team-overview-v224 .team-agenda-copy,.team-overview-v224 .team-agenda-legend,.team-overview-v224 .team-agenda-arrow{position:relative;z-index:1}
.team-overview-v224 .team-agenda-copy h2{margin:6px 0 8px;font-size:31px;line-height:1.08;letter-spacing:-.04em}
.team-overview-v224 .team-agenda-copy p{max-width:650px;margin:0;color:#b7c0ce;font-size:16px;line-height:1.55}
.team-overview-v224 .team-agenda-legend{display:grid;grid-template-columns:auto auto;gap:12px 18px;min-width:210px;color:#c7ced9;font-size:14px;font-weight:850}
.team-overview-v224 .team-agenda-legend span{display:flex;align-items:center;gap:8px}
.team-overview-v224 .team-agenda-legend span:last-child{grid-column:1/-1}
.team-overview-v224 .team-agenda-legend i{width:10px;height:10px;border-radius:50%;background:#697382}
.team-overview-v224 .team-agenda-legend i.yes{background:#39d596}.team-overview-v224 .team-agenda-legend i.maybe{background:#e9b955}.team-overview-v224 .team-agenda-legend i.no{background:#df7080}
.team-overview-v224 .team-agenda-arrow{font-size:38px;line-height:1;color:#a9b1c0;padding:0 2px}
.team-overview-v224 .team-agenda-preview:hover{border-color:rgba(125,97,255,.42);transform:translateY(-1px)}
.team-overview-v224 .team-event-shortcut{padding:23px 26px}
.team-overview-v224 .team-event-shortcut-head{margin-bottom:16px}
.team-overview-v224 .team-event-shortcut-head h2{margin:5px 0 0;font-size:21px}
.team-overview-v224 .team-event-plus{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#251f4a;color:#c4b8ff;font-size:28px;font-weight:400;border:1px solid rgba(125,97,255,.12)}
.team-overview-v224 .team-event-plus:hover{background:#31275f;color:#fff}
.team-overview-v224 .team-event-shortcut-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.team-overview-v224 .team-event-shortcut-grid a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:58px;padding:10px 13px;border:1px solid #303848;border-radius:13px;background:#11161e;color:#c4cad5;font-size:14px;font-weight:850;text-align:center}
.team-overview-v224 .team-event-shortcut-grid a.active{border-color:#7962bd;background:#211d3f;color:#fff;box-shadow:0 0 0 2px rgba(128,102,255,.07)}
.team-overview-v224 .team-event-shortcut-grid a:hover{border-color:#51496f;color:#fff;background:#171b27}

@media(max-width:900px){
  .team-overview-v224 .team-agenda-preview{grid-template-columns:1fr auto}.team-overview-v224 .team-agenda-legend{grid-column:1/-1;display:flex;min-width:0;flex-wrap:wrap}.team-overview-v224 .team-agenda-arrow{grid-column:2;grid-row:1}
}
@media(max-width:760px){
  .team-overview-v224{gap:14px}.team-overview-v224 .team-identity-hero{padding:18px}.team-overview-v224 .team-profile-head{display:grid;grid-template-columns:68px minmax(0,1fr);gap:14px}.team-overview-v224 .team-logo{width:68px;height:68px;border-radius:18px;font-size:20px}.team-overview-v224 .team-identity-copy h1{font-size:25px}.team-overview-v224 .team-identity-copy p{font-size:14px}.team-overview-v224 .team-facts{display:flex;gap:8px;margin-top:16px;padding-top:14px}.team-overview-v224 .team-facts .open,.team-overview-v224 .team-facts .closed{margin-left:0}
  .team-overview-v224 .team-main-actions.team-action-strip{display:flex;width:calc(100vw - 28px);margin-right:-14px;padding-right:14px}.team-overview-v224 .team-action-strip form{width:auto}.team-overview-v224 .team-action-link{min-height:52px;padding:0 15px;font-size:14px}.team-overview-v224 .team-action-strip form .team-action-link{width:auto}
  .team-overview-v224 .team-agenda-preview{grid-template-columns:minmax(0,1fr) auto;gap:15px;padding:20px}.team-overview-v224 .team-agenda-copy h2{font-size:25px}.team-overview-v224 .team-agenda-copy p{font-size:14px}.team-overview-v224 .team-agenda-legend{grid-column:1/-1;display:flex;gap:12px 16px}.team-overview-v224 .team-event-shortcut{padding:18px}.team-overview-v224 .team-event-shortcut-grid{grid-template-columns:1fr 1fr}.team-overview-v224 .team-event-shortcut-grid a{min-height:52px}
}
@media(max-width:430px){
  .team-overview-v224 .team-profile-head{grid-template-columns:58px minmax(0,1fr)}.team-overview-v224 .team-logo{width:58px;height:58px;border-radius:15px;font-size:18px}.team-overview-v224 .team-identity-copy h1{font-size:22px}.team-overview-v224 .team-facts>span:not(.open):not(.closed){font-size:13px;padding:5px 8px}.team-overview-v224 .team-event-shortcut-grid{grid-template-columns:1fr}
}
body:has(.team-overview-v224) .page-head{margin-bottom:28px;align-items:flex-start}
body:has(.team-overview-v224) .page-head h1{font-size:40px;line-height:1.02;letter-spacing:-.045em}
body:has(.team-overview-v224) .page-head p{font-size:17px;color:#b2bccb;margin-top:8px}
@media(max-width:760px){body:has(.team-overview-v224) .page-head{margin-bottom:18px}body:has(.team-overview-v224) .page-head h1{font-size:30px}body:has(.team-overview-v224) .page-head p{font-size:15px}}


/* V2.24.2 — navigation équipe unique sur toutes les pages */
.team-suite-nav{display:flex;align-items:stretch;gap:10px;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;margin:0 0 16px;padding:0 0 5px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#3a315e transparent}
.team-suite-nav form{display:flex;flex:0 0 auto;margin:0}
.team-suite-link{appearance:none;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:50px;padding:0 16px;border:1px solid #303848;border-radius:12px;background:#11161e;color:#dce2eb;font:inherit;font-size:14px;font-weight:850;line-height:1.15;white-space:nowrap;text-decoration:none;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}
.team-suite-link:hover{border-color:#51476f;background:#171b27;color:#fff;transform:translateY(-1px)}
.team-suite-link.is-active{border-color:#735ee0;background:#231d3d;color:#fff;box-shadow:inset 0 -2px 0 #8f72ff}
.team-suite-link.team-suite-chat{border-color:#7659ef;background:linear-gradient(135deg,#6949e8,#875ff7);color:#fff;box-shadow:0 8px 22px rgba(116,82,238,.18)}
.match-page-bar>.team-suite-nav{flex:1 1 auto;margin-bottom:0}
.team-overview-v224>.team-suite-nav{margin-bottom:0}
.team-invite-links-page>.team-suite-nav{margin-top:2px}
@media(max-width:760px){.team-suite-nav{width:calc(100vw - 28px);margin-right:-14px;padding-right:14px}.team-suite-link{min-height:48px;padding:0 14px;font-size:14px}.match-page-bar>.team-suite-nav{width:100%;margin-right:0}}


/* V2.24.3 — bannière équipe sur toutes les pages team */
.team-shared-banner{margin:0 0 16px;padding:24px 26px;background:linear-gradient(145deg,rgba(32,28,57,.97),rgba(17,22,31,.99));border-color:rgba(106,94,158,.34);box-shadow:0 24px 60px rgba(0,0,0,.24)}
.team-shared-banner .team-profile-head{display:grid;grid-template-columns:96px minmax(0,1fr);gap:24px;align-items:center}
.team-shared-banner .team-profile-head>div:nth-child(2){padding-top:0;min-width:0}
.team-shared-banner .team-identity-copy{min-width:0}
.team-shared-banner .team-identity-copy h2{margin:8px 0 0;font-size:32px;line-height:1.02;letter-spacing:-.04em;overflow-wrap:anywhere}
.team-shared-banner .team-identity-copy p{margin:8px 0 0;color:#b5bfce;max-width:760px}
.team-shared-banner .team-logo{width:92px;height:92px;border-radius:24px;font-size:28px}
.team-shared-banner .team-facts{margin-top:20px;padding-top:16px}
.team-shared-banner .team-game-chips{margin-top:14px}
.team-shared-banner .team-game-chips .chip{pointer-events:none}
.team-events-page>.team-suite-nav,.ranking-center-simple>.team-suite-nav,.friendly-center-simple>.team-suite-nav,.competition-center-simple>.team-suite-nav,.tryout-page>.team-suite-nav,.team-invite-links-page>.team-suite-nav{margin-bottom:18px}
.team-shared-banner + .team-suite-nav,.match-page-bar + .team-shared-banner,.team-shared-banner + .match-page-bar{margin-top:0}
@media(max-width:760px){.team-shared-banner{padding:18px}.team-shared-banner .team-profile-head{grid-template-columns:68px minmax(0,1fr);gap:14px;align-items:flex-start}.team-shared-banner .team-logo{width:68px;height:68px;border-radius:18px;font-size:20px}.team-shared-banner .team-identity-copy h2{font-size:25px}.team-shared-banner .team-identity-copy p{font-size:14px}.team-shared-banner .team-facts{gap:8px;margin-top:16px;padding-top:14px}.team-shared-banner .team-facts>span:not(.open):not(.closed){font-size:13px;padding:5px 8px}}
@media(max-width:520px){.team-shared-banner .team-profile-head{grid-template-columns:58px minmax(0,1fr)}.team-shared-banner .team-logo{width:58px;height:58px;border-radius:15px;font-size:18px}.team-shared-banner .team-identity-copy h2{font-size:22px}}


/* V2.24.5 — polish final de l'espace équipe */
/* Le titre de la page devient secondaire : la bannière d'équipe porte l'identité. */
body:has(.team-shared-banner) > .app-shell .main > .page-head,
body:has(.team-overview-v224) > .app-shell .main > .page-head{
  margin-bottom:16px;
  align-items:flex-start;
}
body:has(.team-shared-banner) > .app-shell .main > .page-head h1,
body:has(.team-overview-v224) > .app-shell .main > .page-head h1{
  font-size:30px;
  line-height:1.08;
  letter-spacing:-.035em;
}
body:has(.team-shared-banner) > .app-shell .main > .page-head p,
body:has(.team-overview-v224) > .app-shell .main > .page-head p{
  margin-top:5px;
  font-size:15px;
  line-height:1.45;
  color:#aab4c4;
}

/* Même gabarit de bannière sur la page Équipe et toutes ses sous-pages. */
.team-shared-banner,
.team-overview-v224 .team-identity-hero{
  box-sizing:border-box;
  height:300px;
  min-height:300px;
  max-height:300px;
  display:flex;
  flex-direction:column;
  margin:0 0 14px;
  padding:24px 26px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(32,28,57,.97),rgba(17,22,31,.99));
  border-color:rgba(106,94,158,.34);
  box-shadow:0 24px 60px rgba(0,0,0,.24);
}
.team-shared-banner .team-profile-head,
.team-overview-v224 .team-identity-hero .team-profile-head{
  flex:0 0 auto;
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:22px;
  align-items:center;
}
.team-shared-banner .team-logo,
.team-overview-v224 .team-identity-hero .team-logo{
  width:92px;
  height:92px;
  border-radius:23px;
  font-size:27px;
}
.team-shared-banner .team-identity-copy h2,
.team-overview-v224 .team-identity-copy h1{
  margin:7px 0 0;
  font-size:31px;
  line-height:1.04;
  letter-spacing:-.04em;
}
.team-shared-banner .team-identity-copy p,
.team-overview-v224 .team-identity-copy p{
  display:-webkit-box;
  min-height:43px;
  max-width:780px;
  margin:7px 0 0;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  color:#b5bfce;
  line-height:1.5;
}
.team-shared-banner .team-game-chips,
.team-overview-v224 .team-game-chips{
  flex-wrap:nowrap;
  max-width:100%;
  min-height:30px;
  max-height:30px;
  margin-top:11px;
  overflow:hidden;
}
.team-shared-banner .team-game-chips .chip,
.team-overview-v224 .team-game-chips .chip{
  flex:0 0 auto;
}
.team-shared-banner .team-facts,
.team-overview-v224 .team-identity-hero .team-facts{
  margin-top:auto;
  padding-top:15px;
  gap:10px 18px;
}
.team-shared-banner .team-facts>span:not(.open):not(.closed),
.team-overview-v224 .team-facts>span:not(.open):not(.closed){
  display:inline-flex;
  align-items:baseline;
  gap:5px;
  min-height:34px;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:10px;
  background:rgba(255,255,255,.025);
}
.team-shared-banner .team-facts .open,
.team-shared-banner .team-facts .closed,
.team-overview-v224 .team-facts .open,
.team-overview-v224 .team-facts .closed{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  padding:6px 11px;
}

/* Rythme identique : titre -> bannière -> navigation -> contenu. */
.team-suite-nav{
  margin-top:0;
  margin-bottom:20px;
  padding-bottom:5px;
}
.team-shared-banner + .team-suite-nav,
.team-overview-v224 .team-identity-hero + .team-suite-nav{
  margin-top:0;
}
.team-shared-banner + .match-page-bar{
  margin-top:0;
  margin-bottom:20px;
}
.match-page-bar > .team-suite-nav{
  margin-bottom:0;
}
.team-overview-v224 > .team-suite-nav{
  margin-bottom:20px;
}
.team-events-page > .team-suite-nav,
.tryout-page > .team-suite-nav,
.team-invite-links-page > .team-suite-nav{
  margin-bottom:20px;
}

/* Cette page avait son propre second titre : le titre global suffit désormais. */
.team-invite-links-page .invite-links-head{display:none}

@media(max-width:760px){
  body:has(.team-shared-banner) > .app-shell .main > .page-head,
  body:has(.team-overview-v224) > .app-shell .main > .page-head{margin:7px 0 14px}
  body:has(.team-shared-banner) > .app-shell .main > .page-head h1,
  body:has(.team-overview-v224) > .app-shell .main > .page-head h1{font-size:24px}
  body:has(.team-shared-banner) > .app-shell .main > .page-head p,
  body:has(.team-overview-v224) > .app-shell .main > .page-head p{font-size:14px}
  .team-shared-banner,
  .team-overview-v224 .team-identity-hero{
    height:auto;
    min-height:0;
    max-height:none;
    padding:18px;
    margin-bottom:12px;
  }
  .team-shared-banner .team-profile-head,
  .team-overview-v224 .team-identity-hero .team-profile-head{
    grid-template-columns:68px minmax(0,1fr);
    gap:14px;
    align-items:flex-start;
  }
  .team-shared-banner .team-logo,
  .team-overview-v224 .team-identity-hero .team-logo{
    width:68px;
    height:68px;
    border-radius:18px;
    font-size:20px;
  }
  .team-shared-banner .team-identity-copy h2,
  .team-overview-v224 .team-identity-copy h1{font-size:25px}
  .team-shared-banner .team-identity-copy p,
  .team-overview-v224 .team-identity-copy p{min-height:0;font-size:14px}
  .team-shared-banner .team-game-chips,
  .team-overview-v224 .team-game-chips{flex-wrap:wrap;max-height:none;overflow:visible}
  .team-shared-banner .team-facts,
  .team-overview-v224 .team-identity-hero .team-facts{margin-top:16px;padding-top:14px;gap:8px}
  .team-suite-nav{margin-bottom:16px}
  .team-shared-banner + .match-page-bar{margin-bottom:16px}
}
@media(max-width:430px){
  .team-shared-banner .team-profile-head,
  .team-overview-v224 .team-identity-hero .team-profile-head{grid-template-columns:58px minmax(0,1fr)}
  .team-shared-banner .team-logo,
  .team-overview-v224 .team-identity-hero .team-logo{width:58px;height:58px;border-radius:15px;font-size:18px}
  .team-shared-banner .team-identity-copy h2,
  .team-overview-v224 .team-identity-copy h1{font-size:22px}
}


/* V2.24.7 — date/heure utilisable et lisible sur thème sombre */
input[type="date"].input,input[type="datetime-local"].input,input[type="time"].input{color-scheme:dark;cursor:pointer}
input[type="date"].input::-webkit-calendar-picker-indicator,input[type="datetime-local"].input::-webkit-calendar-picker-indicator,input[type="time"].input::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(1) opacity(.82);padding:8px;margin-right:-5px}
.datetime-picker-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch;margin-top:7px}
.datetime-picker-wrap>.input{margin-top:0;min-width:0}
.datetime-picker-button{appearance:none;border:1px solid #3b4354;border-radius:12px;background:#171c26;color:#e8ebf1;min-height:46px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:14px;font-weight:850;cursor:pointer;white-space:nowrap}
.datetime-picker-button:hover,.datetime-picker-button:focus-visible{border-color:#6f5be4;background:#211b3c;color:#fff;outline:none;box-shadow:0 0 0 3px rgba(124,92,255,.12)}
@media(max-width:520px){.datetime-picker-wrap{grid-template-columns:1fr}.datetime-picker-button{width:100%}}


/* V2.24.8 — salon d’équipe intégré à la page équipe */
.team-chat-card{padding:0;overflow:hidden;margin:0 0 2px;border-color:rgba(108,91,178,.38);background:linear-gradient(145deg,rgba(20,24,35,.99),rgba(14,18,26,.99));box-shadow:0 24px 60px rgba(0,0,0,.22)}
.team-chat-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(103,76,222,.09),transparent 60%)}
.team-chat-head h2{margin:5px 0 0;font-size:24px;letter-spacing:-.025em}.team-chat-head p{margin:5px 0 0;color:var(--muted);font-size:14px}
.team-chat-live{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#151f1d;color:#80dcb0;font-size:13px;font-weight:850;white-space:nowrap}.team-chat-live i{width:7px;height:7px;border-radius:50%;background:#45d09b;box-shadow:0 0 0 4px rgba(69,208,155,.08)}
.team-chat-stream{height:460px;min-height:320px;padding:18px 20px;display:flex;flex-direction:column;gap:9px;overflow:auto;background:radial-gradient(circle at 82% 15%,rgba(125,97,255,.045),transparent 29rem);overscroll-behavior:contain}
.team-chat-stream .bubble{font-size:15px;line-height:1.5}.team-chat-empty{margin:auto;display:grid;gap:4px;text-align:center;color:var(--muted)}.team-chat-empty strong{color:#fff;font-size:16px}
.team-chat-compose{position:static;border-top:1px solid var(--line);background:rgba(10,13,19,.88)}
.team-suite-link.team-suite-chat.is-active{border-color:#9d84ff;background:linear-gradient(135deg,#7656ef,#936cff);box-shadow:0 10px 28px rgba(116,82,238,.24)}
@media(max-width:760px){.team-chat-head{padding:15px 14px;align-items:flex-start}.team-chat-head h2{font-size:21px}.team-chat-live{padding:6px 8px}.team-chat-stream{height:calc(100dvh - 390px);min-height:310px;padding:13px 11px}.team-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:9px}.team-chat-compose .button{min-width:82px}}

/* V2.24.9 — journal d'activité équipe + réglages stables */
.team-wall-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.team-wall-head>.muted{font-size:13.5px;text-align:right}
.team-activity-feed{display:grid;gap:10px}
.team-activity-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;padding:16px 17px;margin:0;position:relative;overflow:hidden}
.team-activity-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:rgba(126,96,255,.48)}
.team-activity-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#1d1930;border:1px solid #3b315f;font-size:21px;line-height:1}
.team-activity-main{min-width:0}.team-activity-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.team-activity-time{color:var(--muted);font-size:13.5px;white-space:nowrap}
.team-activity-card h3{margin:0;font-size:17px;line-height:1.25;overflow-wrap:anywhere}.team-activity-body{margin-top:5px;color:#b8c0ce;font-size:14.5px;line-height:1.5;overflow-wrap:anywhere}
.team-activity-card .post-image{margin-top:12px;max-height:380px;object-fit:cover}.team-activity-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(103,115,143,.18)}
.team-activity-actor{display:inline-flex;align-items:center;gap:8px;color:#cdd4df;font-size:13.5px;font-weight:800;min-width:0}.team-activity-actor .avatar{width:28px;height:28px;flex:0 0 28px}.team-activity-actor span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.team-activity-system{color:var(--muted);font-size:13.5px}.team-activity-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.team-activity-actions .action-btn{font-size:13.5px}
.team-activity-card.activity-planning:before{background:#8a6fff}.team-activity-card.activity-match:before{background:#e38a71}.team-activity-card.activity-ranking:before{background:#d8b75b}.team-activity-card.activity-friendly:before{background:#5fc8b3}.team-activity-card.activity-competition:before{background:#e8bd5c}.team-activity-card.activity-tryout:before{background:#df71ae}.team-activity-card.activity-substitute:before{background:#7e9bea}.team-activity-card.activity-roster:before{background:#61c797}.team-activity-card.activity-game:before{background:#9b7cff}.team-activity-card.activity-invite:before{background:#bb83ff}

/* Le panneau de réglages vit dans une colonne du dashboard : une seule colonne interne évite les chevauchements. */
.team-settings{width:100%;min-width:0}.team-settings-panels{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;min-width:0}
.team-settings-panels>.form-stack{min-width:0;width:100%;padding:18px!important}.team-settings-panels>.form-stack+.form-stack{border-left:0!important;border-top:1px solid var(--line)}
.team-settings .form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-width:0}.team-settings .field,.team-settings form,.team-settings .team-game-manager,.team-settings .section-title{min-width:0;max-width:100%}
.team-settings input.input,.team-settings select.input,.team-settings textarea.input{width:100%;max-width:100%;min-width:0}.team-settings input[type="file"]{overflow:hidden;padding-right:8px}.team-settings textarea.input{min-height:120px;resize:vertical}
.team-settings .quick-filter{min-width:0;min-height:48px;display:flex;align-items:center;gap:8px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:#11151d}
.team-settings .managed-game-row{min-width:0}.team-settings .managed-game-row>div:first-child{min-width:0}.team-settings .managed-game-row strong,.team-settings .managed-game-row span{overflow-wrap:anywhere}.team-settings .add-game-form{grid-template-columns:minmax(0,1fr) auto;min-width:0}
@media(max-width:760px){.team-wall-head{align-items:flex-start;flex-direction:column;gap:4px}.team-wall-head>.muted{text-align:left}.team-activity-card{grid-template-columns:38px minmax(0,1fr);gap:11px;padding:14px}.team-activity-icon{width:38px;height:38px;border-radius:12px;font-size:18px}.team-activity-footer{align-items:flex-start;flex-wrap:wrap}.team-activity-actions{margin-left:0}.team-settings .form-row{grid-template-columns:1fr}.team-settings-panels>.form-stack{padding:14px!important}.team-settings .add-game-form{grid-template-columns:1fr}.team-settings .add-game-form .button{width:100%}}
.team-activity-card.activity-planning-response:before{background:#67d4a5}.team-activity-card.activity-application:before{background:#bd7bf0}

/* V2.25.0 — polish global hors espace Équipe */
body:has(.home-dashboard) .main,
body:has(.discover-page) .main,
body:has(.player-profile) .main,
body:has(.profile-edit-page) .main,
body:has(.message-page) .main,
body:has(.notifications-page) .main,
body:has(.recruitment-page) .main,
body:has(.admin-content) .main{
  background:
    radial-gradient(circle at 76% -8%,rgba(124,92,255,.075),transparent 34rem),
    linear-gradient(180deg,#0b0e14 0,#0b0d12 420px);
}

body:has(.home-dashboard) .page-head,
body:has(.discover-page) .page-head,
body:has(.player-profile) .page-head,
body:has(.profile-edit-page) .page-head,
body:has(.message-page) .page-head,
body:has(.notifications-page) .page-head,
body:has(.recruitment-page) .page-head,
body:has(.admin-content) .page-head{
  max-width:1160px;
  margin-bottom:24px;
  align-items:center;
}
body:has(.home-dashboard) .page-head h1,
body:has(.discover-page) .page-head h1,
body:has(.player-profile) .page-head h1,
body:has(.profile-edit-page) .page-head h1,
body:has(.message-page) .page-head h1,
body:has(.notifications-page) .page-head h1,
body:has(.recruitment-page) .page-head h1,
body:has(.admin-content) .page-head h1{
  font-size:36px;
  line-height:1.04;
  letter-spacing:-.045em;
}
body:has(.home-dashboard) .page-head p,
body:has(.discover-page) .page-head p,
body:has(.player-profile) .page-head p,
body:has(.profile-edit-page) .page-head p,
body:has(.message-page) .page-head p,
body:has(.notifications-page) .page-head p,
body:has(.recruitment-page) .page-head p,
body:has(.admin-content) .page-head p{
  margin-top:7px;
  color:#a8b2c2;
  font-size:16px;
}

/* Accueil */
.home-dashboard{max-width:1160px;grid-template-columns:minmax(0,720px) 340px;gap:24px}
.home-dashboard>section.stack{gap:16px}
.home-dashboard .play-now-bar,
.home-dashboard .next-move{min-height:84px;border-radius:17px}
.home-dashboard .play-now-bar{padding:16px 18px;background:linear-gradient(145deg,rgba(20,25,35,.98),rgba(14,18,25,.98));border-color:rgba(91,103,132,.32);box-shadow:0 16px 36px rgba(0,0,0,.18)}
.home-dashboard .play-now-bar.is-active{border-color:rgba(57,213,150,.3);background:linear-gradient(145deg,rgba(20,51,41,.95),rgba(14,22,28,.98))}
.home-dashboard .next-move{padding:20px 21px;background:linear-gradient(135deg,rgba(34,28,61,.98),rgba(16,20,29,.98));border-color:rgba(117,94,212,.38);box-shadow:0 18px 42px rgba(0,0,0,.19)}
.home-dashboard .next-move.green{background:linear-gradient(135deg,rgba(19,48,39,.96),rgba(15,21,28,.98));border-color:rgba(61,181,131,.31)}
.home-dashboard .feed-tabs{padding:5px;border-radius:13px;background:rgba(13,17,24,.92)}
.home-dashboard .feed-tabs a{min-height:40px;display:flex;align-items:center;padding:0 16px;border-radius:9px}
.home-dashboard .feed-tabs a.active{background:linear-gradient(135deg,#2b2450,#211d3a);box-shadow:inset 0 0 0 1px rgba(151,132,255,.12)}
.home-dashboard .composer,
.home-dashboard .post,
.home-dashboard .right-card{background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));border-color:rgba(86,98,124,.3);box-shadow:0 18px 42px rgba(0,0,0,.16)}
.home-dashboard .composer{padding:18px}.home-dashboard .composer textarea{min-height:78px;font-size:15.5px}
.home-dashboard .post{padding:20px;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.home-dashboard .post:hover{border-color:rgba(117,99,194,.38);box-shadow:0 22px 50px rgba(0,0,0,.2);transform:translateY(-1px)}
.home-dashboard .right-rail{position:sticky;top:22px;gap:14px}
.home-dashboard .right-card{padding:16px}.home-dashboard .right-card .section-title{margin-bottom:6px}
.home-dashboard .suggestion{padding:11px 0}.home-dashboard .suggestion-status{color:#aa9dff}

/* Trouver */
.discover-page{max-width:1160px}
.discover-page .discover-topline{margin:0 0 15px;padding:9px;border:1px solid rgba(91,103,132,.28);border-radius:16px;background:rgba(13,17,24,.76);box-shadow:0 14px 34px rgba(0,0,0,.12)}
.discover-page .discover-topline .tabs{border:0;background:transparent;padding:0}
.discover-page .discover-topline .tabs a{min-height:42px;display:flex;align-items:center;padding:0 15px;border-radius:10px}
.discover-page .discover-topline .tabs a.active{background:linear-gradient(135deg,#2b2450,#211d3a);box-shadow:inset 0 0 0 1px rgba(151,132,255,.14)}
.discover-page .discover-toolbar{margin:14px 0 17px;padding:14px;border:1px solid rgba(91,103,132,.3);border-radius:16px;background:linear-gradient(145deg,rgba(18,22,31,.95),rgba(13,17,24,.95));box-shadow:0 16px 38px rgba(0,0,0,.14)}
.discover-page .discover-toolbar .input,.discover-page .quick-filter{min-height:46px;background:#0f141c;border-color:#2c3442}
.discover-page .match-context{margin:0 0 15px;border-color:rgba(121,100,205,.34);background:linear-gradient(135deg,rgba(36,29,66,.68),rgba(16,20,28,.9))}
.discover-page .context-note{margin-top:0;border-style:dashed;background:rgba(17,22,30,.66)}
.discover-page>.grid{gap:16px}
.discover-page .person-card,.discover-page .team-card{padding:18px;border-color:rgba(83,96,121,.31);background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));box-shadow:0 18px 42px rgba(0,0,0,.14)}
.discover-page .person-card:hover,.discover-page .team-card:hover{border-color:rgba(119,99,202,.42);box-shadow:0 22px 50px rgba(0,0,0,.19)}
.discover-page .person-head h3,.discover-page .team-head h3{font-size:17px}
.discover-page .search-game-summary{padding:12px 0 0;margin-top:14px}
.discover-page .card-actions{margin-top:15px;padding-top:13px}

/* Profils */
.player-profile{max-width:1160px}
.player-profile .player-profile-hero{border-color:rgba(104,116,145,.34);background:linear-gradient(155deg,rgba(22,27,38,.98),rgba(14,18,25,.98));box-shadow:0 24px 60px rgba(0,0,0,.22)}
.player-profile .player-profile-hero .profile-cover{height:172px}
.player-profile .gaming-passport,
.player-profile .player-profile-main>.card,
.player-profile .player-profile-side>.card,
.player-profile .profile-post{
  border-color:rgba(84,97,123,.3);
  background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));
  box-shadow:0 17px 40px rgba(0,0,0,.14);
}
.player-profile .gaming-passport{padding:22px}
.player-profile .gaming-facts>div{min-height:68px;padding:13px;background:rgba(12,16,23,.82)}
.player-profile .player-profile-layout{gap:20px;margin-top:20px}
.player-profile .player-profile-side{top:22px}
.player-profile .player-game-card{background:rgba(12,16,23,.78);border-color:rgba(79,91,116,.32)}

.profile-edit-page{max-width:1160px}
.profile-edit-page .profile-edit-layout{gap:20px}
.profile-edit-page .card{border-color:rgba(84,97,123,.3);background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));box-shadow:0 17px 40px rgba(0,0,0,.14)}
.profile-edit-page .profile-identity-form,.profile-edit-page .game-profile-editor{padding:20px}
.profile-edit-page .profile-media-editor{height:205px;border-color:rgba(102,113,144,.36);box-shadow:inset 0 -28px 60px rgba(0,0,0,.25)}
.profile-edit-page .selected-game,.profile-edit-page .choice-card,.profile-edit-page .my-game-card{background:rgba(12,16,23,.78);border-color:rgba(79,91,116,.32)}
.profile-edit-page .choice-card:hover{border-color:rgba(121,100,205,.46)}
.profile-edit-page .privacy-card{margin-top:20px}

/* Messages */
.message-page{max-width:1160px}
.message-page .message-layout{grid-template-columns:360px minmax(0,1fr);min-height:690px;border-color:rgba(86,99,126,.34);background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(12,16,23,.98));box-shadow:0 24px 60px rgba(0,0,0,.22)}
.message-page .conversation-list{background:rgba(12,16,23,.66);border-right-color:rgba(84,96,121,.3)}
.message-page .conversation-list-head{height:68px;padding:0 18px}.message-page .conversation-list-head h2{font-size:17px}
.message-page .conversation-link{min-height:70px;padding:12px 16px;border-bottom-color:rgba(73,84,107,.28);transition:background .15s ease,border-color .15s ease}
.message-page .conversation-link:hover{background:rgba(125,97,255,.055)}
.message-page .conversation-link.active{background:linear-gradient(90deg,rgba(125,97,255,.14),rgba(125,97,255,.035));box-shadow:inset 3px 0 0 #8065f2}
.message-page .conversation-link.has-unread{background:rgba(94,74,180,.075)}
.message-page .conversation-head{min-height:68px;padding:0 20px;background:rgba(13,17,24,.74)}
.message-page .message-stream{padding:22px;gap:10px;background:radial-gradient(circle at 80% 0,rgba(125,97,255,.035),transparent 22rem)}
.message-page .bubble{max-width:68%;padding:10px 13px;border:1px solid rgba(81,94,119,.26);background:#181e28;box-shadow:0 7px 18px rgba(0,0,0,.1)}
.message-page .bubble.mine{border-color:rgba(129,103,238,.32);background:linear-gradient(145deg,#332766,#292153)}
.message-page .message-compose{padding:14px 16px;background:rgba(12,16,23,.86)}
.message-page .message-compose .input{min-height:48px;background:#0f141c}

/* Notifications */
.notifications-page{max-width:860px}
.notifications-page .browser-notification-card{padding:20px;border-color:rgba(101,91,160,.34);background:linear-gradient(135deg,rgba(34,29,61,.78),rgba(16,20,28,.96));box-shadow:0 18px 44px rgba(0,0,0,.16)}
.notifications-page .notification-toolbar{margin:16px 0 13px;padding:11px 4px;border-bottom:1px solid rgba(81,94,119,.28)}
.notifications-page .notifications{gap:10px}
.notifications-page .notice{min-height:92px;padding:16px 18px;border-color:rgba(83,96,121,.3);background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));box-shadow:0 14px 34px rgba(0,0,0,.12);transition:border-color .15s ease,transform .15s ease}
.notifications-page .notice:hover{border-color:rgba(119,99,202,.42);transform:translateY(-1px)}
.notifications-page .notice.unread{border-color:rgba(128,101,242,.5);background:linear-gradient(155deg,rgba(31,27,52,.98),rgba(15,18,27,.98))}
.notifications-page .notice-icon{width:42px;height:42px;border-radius:12px;background:rgba(125,97,255,.09)}

/* Recrutement */
.recruitment-page{max-width:1160px;gap:16px}
.recruitment-page>.tabs{padding:5px;border-radius:14px;background:rgba(13,17,24,.86);border-color:rgba(91,103,132,.3)}
.recruitment-page>.tabs a{min-height:42px;display:flex;align-items:center;padding:0 15px;border-radius:10px}
.recruitment-page>.tabs a.active{background:linear-gradient(135deg,#2b2450,#211d3a);box-shadow:inset 0 0 0 1px rgba(151,132,255,.14)}
.recruitment-page .recruitment-toolbar{padding:14px;border-radius:16px;border-color:rgba(91,103,132,.3);background:linear-gradient(145deg,rgba(18,22,31,.95),rgba(13,17,24,.95));box-shadow:0 16px 38px rgba(0,0,0,.14)}
.recruitment-page .split-action{gap:16px}.recruitment-page .big-choice{min-height:112px;padding:21px;border-color:rgba(84,97,123,.32);background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));text-align:left;box-shadow:0 16px 36px rgba(0,0,0,.12)}
.recruitment-page .big-choice:hover{border-color:rgba(121,100,205,.48)}
.recruitment-page .request-panel,.recruitment-page .recruitment-card,.recruitment-page>form.card{border-color:rgba(84,97,123,.3);background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));box-shadow:0 17px 40px rgba(0,0,0,.14)}
.recruitment-page .request-grid{gap:16px}
.recruitment-page .request-item{padding:14px 0}

/* Administration */
.admin-content{max-width:1160px}
.admin-content .admin-tabs{margin-bottom:20px;padding:7px;border-color:rgba(93,105,133,.32);background:rgba(11,15,22,.84);box-shadow:0 14px 34px rgba(0,0,0,.11)}
.admin-content .admin-stat-card,
.admin-content .admin-user-card,
.admin-content .admin-team-card,
.admin-content .admin-game-card,
.admin-content .admin-moderation-card,
.admin-content .security-summary,
.admin-content .security-log-row,
.admin-content .beta-daily-card{
  border-color:rgba(84,97,123,.3);
  background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));
  box-shadow:0 17px 40px rgba(0,0,0,.13);
}
.admin-content .admin-filter-bar{border-color:rgba(91,103,132,.3);background:rgba(14,18,25,.88);box-shadow:0 14px 34px rgba(0,0,0,.11)}
.admin-content .admin-user-grid,.admin-content .admin-team-grid,.admin-content .admin-game-grid{gap:18px}
.admin-content .admin-stat-card:hover{border-color:rgba(121,100,205,.42)}

/* Onboarding : même langage visuel que le reste, sans toucher au flux */
.onboarding-shell{background:radial-gradient(circle at 50% -12%,rgba(125,97,255,.18),transparent 35rem),linear-gradient(180deg,#0b0e14,#0b0d12)}
.onboarding-card{border-color:rgba(94,107,137,.31);background:linear-gradient(155deg,rgba(18,22,31,.985),rgba(12,16,23,.985));box-shadow:0 30px 86px rgba(0,0,0,.32)}
.onboarding-goal,.onboarding-rec-card{background:linear-gradient(155deg,rgba(18,22,31,.96),rgba(13,17,24,.96));border-color:rgba(84,97,123,.32)}
.onboarding-goal:has(input:checked){border-color:#755fe5;background:linear-gradient(135deg,rgba(125,97,255,.2),rgba(18,22,31,.98));box-shadow:inset 0 0 0 1px rgba(151,132,255,.1),0 12px 28px rgba(0,0,0,.12)}

@media(max-width:1100px){
  .home-dashboard{grid-template-columns:minmax(0,1fr) 300px}
  .message-page .message-layout{grid-template-columns:330px minmax(0,1fr)}
}
@media(max-width:1000px){
  .home-dashboard{grid-template-columns:1fr}
  .home-dashboard .right-rail{display:none;position:static}
  .profile-edit-page .profile-edit-layout{grid-template-columns:1fr}
}
@media(max-width:760px){
  body:has(.home-dashboard) .page-head,
  body:has(.discover-page) .page-head,
  body:has(.player-profile) .page-head,
  body:has(.profile-edit-page) .page-head,
  body:has(.message-page) .page-head,
  body:has(.notifications-page) .page-head,
  body:has(.recruitment-page) .page-head,
  body:has(.admin-content) .page-head{margin:8px 0 17px}
  body:has(.home-dashboard) .page-head h1,
  body:has(.discover-page) .page-head h1,
  body:has(.player-profile) .page-head h1,
  body:has(.profile-edit-page) .page-head h1,
  body:has(.message-page) .page-head h1,
  body:has(.notifications-page) .page-head h1,
  body:has(.recruitment-page) .page-head h1,
  body:has(.admin-content) .page-head h1{font-size:28px}
  body:has(.home-dashboard) .page-head p,
  body:has(.discover-page) .page-head p,
  body:has(.player-profile) .page-head p,
  body:has(.profile-edit-page) .page-head p,
  body:has(.message-page) .page-head p,
  body:has(.notifications-page) .page-head p,
  body:has(.recruitment-page) .page-head p,
  body:has(.admin-content) .page-head p{font-size:14px}
  .home-dashboard .play-now-bar{grid-template-columns:10px minmax(0,1fr);padding:14px}.home-dashboard .play-now-bar .button{grid-column:1/-1;width:100%}
  .home-dashboard .next-move{min-height:0;padding:16px}.home-dashboard .post{padding:15px}.home-dashboard .composer{padding:14px}
  .discover-page .discover-topline{padding:7px;align-items:stretch;flex-direction:column}.discover-page .discover-topline .tabs{width:100%}.discover-page .discover-topline .tabs a{justify-content:center;flex:1}.discover-page .discover-topline>.button{width:100%}
  .discover-page .discover-toolbar{padding:11px}.discover-page>.grid{gap:12px}.discover-page .person-card,.discover-page .team-card{padding:15px}
  .player-profile .player-profile-hero .profile-cover{height:140px}.player-profile .gaming-passport{padding:16px}.player-profile .player-profile-layout{gap:14px}
  .profile-edit-page .profile-identity-form,.profile-edit-page .game-profile-editor{padding:15px}.profile-edit-page .profile-media-editor{height:165px}
  .message-page .message-layout{grid-template-columns:1fr;min-height:calc(100vh - 144px)}.message-page .conversation-list{border-right:0}.message-page .conversation-link{min-height:66px;padding:11px}.message-page .message-stream{padding:13px}.message-page .bubble{max-width:88%}.message-page .message-compose{padding:9px}
  .notifications-page .browser-notification-card{padding:16px}.notifications-page .notification-toolbar{align-items:stretch;gap:10px}.notifications-page .notification-actions{width:100%;display:grid;grid-template-columns:1fr}.notifications-page .notification-actions form,.notifications-page .notification-actions .button{width:100%}.notifications-page .notice{min-height:0;padding:14px}
  .recruitment-page>.tabs{width:100%}.recruitment-page>.tabs a{justify-content:center}.recruitment-page .split-action{grid-template-columns:1fr;gap:10px}.recruitment-page .big-choice{min-height:0;padding:17px}.recruitment-page .request-grid{gap:12px}
  .admin-content .admin-user-grid,.admin-content .admin-team-grid,.admin-content .admin-game-grid{gap:12px}
  .onboarding-card{padding:22px;border-radius:20px}
}

/* V2.26 — commentaires complets */
.comment-show-all{justify-self:start;margin:2px 0 4px;color:#aaa0ef;font-size:14px;font-weight:850}


/* V2.27 — Administration légal & mentions légales */
.admin-beta-links{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-legal-page{max-width:1180px;margin:0 auto}
.admin-legal-status{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;margin-bottom:16px;overflow:hidden;position:relative}
.admin-legal-status:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#d9a441}
.admin-legal-status.is-complete:before{background:var(--good)}
.admin-legal-status h2{margin:5px 0 5px;font-size:22px}.admin-legal-status p{margin:0;color:var(--muted);line-height:1.55}
.admin-legal-status-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;flex:0 0 auto}
.legal-missing-card{margin-bottom:16px;padding:17px 20px}.legal-missing-card>strong{display:block;margin-bottom:10px}.legal-missing-card .chip-row{margin:0}
.admin-legal-form{display:grid;gap:16px}.admin-legal-section{padding:22px}.admin-legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.admin-legal-wide{grid-column:1/-1}
.admin-legal-id-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.admin-legal-extra{min-height:170px;line-height:1.55;resize:vertical}
.admin-legal-savebar{position:sticky;z-index:12;bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:2px;padding:16px 18px;border:1px solid rgba(116,94,224,.42);border-radius:16px;background:rgba(18,21,31,.94);box-shadow:0 18px 45px rgba(0,0,0,.35);backdrop-filter:blur(16px)}
.admin-legal-savebar strong,.admin-legal-savebar span{display:block}.admin-legal-savebar span{margin-top:3px;color:var(--muted);font-size:13.5px}
.legal-ready-note{display:block;padding:11px 12px;border-radius:11px;background:rgba(56,217,150,.08);border:1px solid rgba(56,217,150,.2);color:#8fe8bf;line-height:1.5}.legal-ready-note a{color:#b8f4d8}
.legal-details{display:grid;gap:0;margin:12px 0 20px}.legal-details>div{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;padding:9px 0;border-top:1px solid rgba(93,104,130,.2)}.legal-details dt{color:#929daf;font-weight:800}.legal-details dd{margin:0;overflow-wrap:anywhere}.legal-extra-text{line-height:1.7;color:#c8ced8}.legal-updated{margin-top:30px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:13.5px}
@media(max-width:1050px){.admin-beta-links{grid-template-columns:1fr 1fr}.admin-legal-id-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.admin-beta-links{grid-template-columns:1fr}.admin-legal-status{align-items:flex-start;flex-direction:column}.admin-legal-status-actions{justify-content:flex-start;width:100%}.admin-legal-grid,.admin-legal-id-grid{grid-template-columns:1fr}.admin-legal-wide{grid-column:auto}.admin-legal-section{padding:16px}.admin-legal-savebar{bottom:78px;align-items:stretch;flex-direction:column}.admin-legal-savebar .button{width:100%}.legal-details>div{grid-template-columns:1fr;gap:4px}}


/* V2.27.1 — authentification publique réellement mobile-first */
@media(max-width:1000px){
  .auth-wrap{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:760px){
  body:has(.auth-wrap){min-width:0;background:radial-gradient(circle at 50% -8%,rgba(125,97,255,.16),transparent 28rem),#0b0d12}
  .auth-wrap{display:block;width:100%;min-height:auto}
  .auth-aside{display:flex;min-height:0;width:100%;padding:18px 16px 0;background:transparent;justify-content:flex-start}
  .auth-aside>div,.auth-aside>.muted{display:none}
  .auth-aside>.brand{width:100%;max-width:520px;margin:0 auto;justify-content:flex-start;font-size:21px;gap:10px}
  .auth-aside>.brand .brand-mark{width:40px;height:40px;border-radius:12px;font-size:15px;box-shadow:0 10px 26px rgba(119,83,245,.22)}
  .auth-main{display:block;width:100%;min-width:0;padding:14px 16px 28px}
  .auth-box{width:100%;max-width:520px;margin:0 auto;padding:24px 20px;border-radius:20px;background:linear-gradient(155deg,rgba(18,22,31,.98),rgba(13,17,24,.98));box-shadow:0 18px 50px rgba(0,0,0,.26)}
  .auth-box h2{margin-bottom:8px;font-size:32px;line-height:1.06;letter-spacing:-.04em}
  .auth-box>p{margin-bottom:0;font-size:15px;line-height:1.5}
  .auth-box .form-stack{gap:16px;margin-top:24px}
  .auth-box .field{gap:8px;min-width:0}
  .auth-box .field label{font-size:15px;line-height:1.25}
  .auth-box .field-label-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
  .auth-box .field-label-row label{min-width:0}
  .auth-box .subtle-link{font-size:14px;line-height:1.25;white-space:nowrap;text-align:right}
  .auth-box .input,.auth-box textarea.input,.auth-box select.input{min-width:0;border-radius:12px;padding:13px 14px;font-size:16px}
  .auth-box .input,.auth-box select.input{min-height:54px}
  .auth-box textarea.input{min-height:112px}
  .auth-box .button.full{min-height:52px;font-size:16px}
  .auth-box .auth-note{margin-top:22px;font-size:15px;line-height:1.55}
  body:has(.auth-wrap) .public-footer{width:100%;max-width:none;margin:0;padding:26px 16px calc(30px + env(safe-area-inset-bottom));gap:20px;background:rgba(9,11,16,.68)}
  body:has(.auth-wrap) .public-footer>div{width:100%;gap:8px}
  body:has(.auth-wrap) .public-footer nav{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;font-size:14px}
  body:has(.auth-wrap) .public-footer nav a{display:block;min-width:0;padding:3px 0;overflow-wrap:anywhere}
}
@media(max-width:420px){
  .auth-aside{padding:14px 12px 0}
  .auth-aside>.brand{font-size:20px}
  .auth-aside>.brand .brand-mark{width:38px;height:38px;border-radius:11px}
  .auth-main{padding:12px 12px 22px}
  .auth-box{padding:21px 16px;border-radius:18px}
  .auth-box h2{font-size:29px}
  .auth-box .field-label-row{grid-template-columns:1fr;gap:5px}
  .auth-box .subtle-link{text-align:left;white-space:normal}
  body:has(.auth-wrap) .public-footer{padding-left:14px;padding-right:14px}
}

/* NTGames V2.28 — SEO public + centre de guides */
.seo-landing-section{max-width:1180px;margin:0 auto 78px;padding:0 24px}.seo-landing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.seo-landing-card{display:flex;flex-direction:column;align-items:flex-start;min-height:230px;padding:24px}.seo-landing-card h3{margin:0 0 10px;font-size:22px;letter-spacing:-.025em}.seo-landing-card p{margin:0 0 18px;color:#aeb7c5;line-height:1.65}.seo-landing-card .link{margin-top:auto}.seo-platform-line{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start;margin-top:18px;padding:19px 22px;border:1px solid var(--line);border-radius:16px;background:#0f131a}.seo-platform-line strong{font-size:17px}.seo-platform-line span{color:#aeb7c5}.landing-guides-banner{max-width:1132px;margin:0 auto 78px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:26px 28px}.landing-guides-banner h2{margin:5px 0 7px;font-size:27px;letter-spacing:-.03em}.landing-guides-banner p{margin:0;color:#aeb7c5;max-width:760px}.landing-guides-banner .button{flex:0 0 auto}

.guide-page{max-width:1180px;margin:0 auto;padding:42px 24px 82px}.guide-breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:30px;color:#7f8998;font-size:14px;font-weight:750;overflow:auto;white-space:nowrap}.guide-breadcrumb a:hover{color:#fff}.guide-breadcrumb strong{color:#aeb7c5;font-weight:800}.guide-hero{max-width:900px;padding:34px 0 44px}.guide-hero h1{font-size:clamp(42px,6vw,68px);line-height:1.02;letter-spacing:-.055em;margin:12px 0 18px}.guide-hero>p{max-width:760px;margin:0;color:#aeb7c5;font-size:19px;line-height:1.7}.guide-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.guide-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:start}.guide-toc{position:sticky;top:20px;padding:18px}.guide-toc>strong{display:block;margin-bottom:10px;font-size:15px}.guide-toc ol{display:grid;gap:4px;margin:0;padding:0;list-style:none;counter-reset:guide-toc}.guide-toc li{counter-increment:guide-toc}.guide-toc a{display:block;padding:8px 9px;border-radius:9px;color:#aeb7c5;font-size:14px;line-height:1.4}.guide-toc a:before{content:counter(guide-toc) ". ";color:#8d7cff;font-weight:900}.guide-toc a:hover{background:#171b24;color:#fff}.guide-content{padding:30px}.guide-step{display:grid;grid-template-columns:48px minmax(0,1fr);gap:18px;padding:10px 0 32px;scroll-margin-top:20px}.guide-step+.guide-step{padding-top:28px;border-top:1px solid var(--line)}.guide-step>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#211d3f;color:#c7bcff;font-weight:950}.guide-step h2{margin:3px 0 9px;font-size:24px;letter-spacing:-.025em}.guide-step p{margin:0;color:#b5bdca;font-size:16px;line-height:1.75}.guide-tips{margin-top:8px;padding:25px 26px;border-radius:15px;background:#0f141c;border:1px solid #293140}.guide-tips h2{margin:5px 0 13px;font-size:23px}.guide-tips ul{display:grid;gap:9px;margin:0;padding-left:20px;color:#b7c0cd}.guide-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding:22px 24px;border:1px solid #413779;border-radius:15px;background:linear-gradient(135deg,#1b1831,#131720)}.guide-cta strong{display:block;font-size:19px}.guide-cta p{margin:4px 0 0;color:#aeb7c5}.guide-related{margin-top:52px}.guide-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.guide-mini-card{display:flex;flex-direction:column;min-height:155px;transition:.16s}.guide-mini-card:hover,.guide-card:hover{transform:translateY(-2px);border-color:#514586}.guide-mini-card>span,.guide-card>span{color:#a998ff;font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.guide-mini-card strong{margin:9px 0 16px;font-size:18px}.guide-mini-card small{margin-top:auto;color:#aeb7c5;font-weight:800}.guide-hub-hero{max-width:980px}.guide-hub-hero h1{max-width:930px}.guide-quickstart{display:grid;grid-template-columns:310px minmax(0,1fr);gap:36px;padding:28px;margin:0 0 48px}.guide-quickstart h2{margin:6px 0 0;font-size:28px;letter-spacing:-.035em}.guide-quickstart ol{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0;padding:0;list-style:none;counter-reset:quick}.guide-quickstart li{counter-increment:quick;position:relative;padding:15px 16px 15px 49px;border:1px solid var(--line);border-radius:13px;background:#0f131a}.guide-quickstart li:before{content:counter(quick);position:absolute;left:14px;top:15px;display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#211d3f;color:#c7bcff;font-weight:950}.guide-quickstart li strong{display:block}.guide-quickstart li span{display:block;margin-top:4px;color:#929cac;font-size:14px}.guide-catalog-section{margin-bottom:48px}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.guide-card{display:flex;flex-direction:column;min-height:250px;padding:22px;transition:.16s}.guide-card h2{margin:9px 0 10px;font-size:21px;letter-spacing:-.025em}.guide-card p{margin:0 0 18px;color:#aeb7c5;line-height:1.6}.guide-card>strong{margin-top:auto;color:#b4a7ff}.guide-faq{max-width:900px;padding:28px}.guide-faq h2{margin:6px 0 18px;font-size:28px}.guide-faq details{border-top:1px solid var(--line);padding:15px 0}.guide-faq details:last-child{padding-bottom:0}.guide-faq summary{cursor:pointer;font-weight:850;font-size:16px}.guide-faq p{margin:9px 0 0;color:#aeb7c5;line-height:1.65}

@media(max-width:900px){.seo-landing-grid,.guide-grid{grid-template-columns:1fr 1fr}.seo-platform-line{grid-template-columns:1fr}.guide-layout{grid-template-columns:1fr}.guide-toc{position:static}.guide-toc ol{grid-template-columns:1fr 1fr}.guide-quickstart{grid-template-columns:1fr}.guide-related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.public-header nav{gap:10px}.public-header nav>.public-guides-link{display:inline;font-size:14px}.seo-landing-section{padding:0 16px;margin-bottom:52px}.seo-landing-grid{grid-template-columns:1fr}.seo-landing-card{min-height:0;padding:18px}.seo-platform-line{padding:16px}.landing-guides-banner{margin:0 16px 54px;display:grid;padding:20px}.landing-guides-banner .button{width:100%}.guide-page{padding:26px 15px 92px}.guide-breadcrumb{margin-bottom:14px}.guide-hero{padding:24px 0 32px}.guide-hero h1{font-size:40px}.guide-hero>p{font-size:16px}.guide-hero-actions{display:grid;grid-template-columns:1fr}.guide-hero-actions .button{width:100%}.guide-toc ol{grid-template-columns:1fr}.guide-content{padding:17px}.guide-step{grid-template-columns:38px minmax(0,1fr);gap:12px;padding-bottom:24px}.guide-step>span{width:34px;height:34px;border-radius:10px}.guide-step h2{margin-top:1px;font-size:20px}.guide-step p{font-size:15px}.guide-tips{padding:19px}.guide-cta{align-items:stretch;flex-direction:column;padding:19px}.guide-cta .button{width:100%}.guide-related-grid,.guide-grid{grid-template-columns:1fr}.guide-quickstart{padding:19px;gap:20px}.guide-quickstart ol{grid-template-columns:1fr}.guide-faq{padding:20px}}
