:root{--bg:#06070a;--panel:#101218;--panel2:#161923;--text:#f5f7fb;--muted:#a8adba;--cyan:#00e5ff;--pink:#ff1f8f;--yellow:#ffd400;--red:#ff3b3b;--violet:#8f45ff;--line:rgba(255,255,255,.1);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;overflow-x:hidden}.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");z-index:20}.topbar{height:78px;padding:0 5vw;display:flex;align-items:center;gap:32px;position:sticky;top:0;z-index:30;background:rgba(6,7,10,.82);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font-family:Orbitron;font-weight:800;letter-spacing:1px}.brand img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}.brand b{color:var(--cyan)}.nav{display:flex;gap:26px;margin-left:auto}.nav a,.footer-links a{color:var(--muted);text-decoration:none;font-weight:600;font-size:.94rem}.nav a:hover,.footer-links a:hover{color:white}.menu-toggle{display:none;background:none;border:0;color:white;font-size:24px}.btn{border:0;border-radius:999px;padding:14px 22px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;transition:.25s transform,.25s box-shadow;background:#232735;color:white}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(120deg,var(--cyan),var(--violet),var(--pink));box-shadow:0 10px 35px rgba(143,69,255,.22)}.btn-outline{background:transparent;border:1px solid rgba(255,255,255,.2)}.btn-ghost{background:rgba(255,255,255,.06);border:1px solid var(--line)}.btn-small{padding:10px 18px}.hero{min-height:760px;padding:100px 7vw 80px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:60px;position:relative;overflow:hidden}.hero-content{position:relative;z-index:2}.eyebrow{font-family:Orbitron;font-size:.78rem;letter-spacing:2.4px;color:var(--cyan);font-weight:800}.hero h1,.section h2,.newsletter h2{font-family:Orbitron;margin:16px 0;line-height:1.02}.hero h1{font-size:clamp(3rem,7vw,6.6rem);letter-spacing:-4px}.hero h1 span{background:linear-gradient(90deg,var(--yellow),var(--red),var(--pink),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{font-size:1.15rem;line-height:1.75;color:var(--muted);max-width:720px}.hero-actions{display:flex;gap:14px;margin:32px 0 44px;flex-wrap:wrap}.social-proof{display:flex;gap:34px;flex-wrap:wrap}.social-proof div{display:flex;flex-direction:column}.social-proof strong{font-family:Orbitron;font-size:1.4rem}.social-proof span{color:var(--muted);font-size:.82rem}.hero-card{position:relative;z-index:2;justify-self:center}.hero-card>img{width:min(430px,75vw);height:min(430px,75vw);border-radius:50%;object-fit:cover;border:1px solid rgba(255,255,255,.13);box-shadow:0 0 90px rgba(0,229,255,.15),0 0 110px rgba(255,31,143,.12)}.floating-badge{position:absolute;background:rgba(15,18,25,.85);border:1px solid var(--line);padding:12px 16px;border-radius:14px;font-weight:700;backdrop-filter:blur(15px);box-shadow:0 12px 25px rgba(0,0,0,.28)}.badge-one{top:12%;left:-10%}.badge-two{right:-8%;top:44%}.badge-three{bottom:7%;left:5%}.hero-glow{position:absolute;width:480px;height:480px;border-radius:50%;filter:blur(120px);opacity:.15}.hero-glow.cyan{background:var(--cyan);left:-180px;top:40px}.hero-glow.pink{background:var(--pink);right:-170px;bottom:0}.ticker{display:flex;justify-content:space-around;gap:30px;white-space:nowrap;overflow:hidden;padding:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:Orbitron;font-size:.82rem;color:#dfe4ef;background:#0b0d12}.section{padding:100px 7vw}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:38px}.section h2,.newsletter h2{font-size:clamp(2rem,4vw,3.5rem)}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:#11141b;color:var(--muted);padding:9px 14px;border-radius:999px;cursor:pointer}.filter.active{background:white;color:#050608}.cards{display:grid}.product-grid{grid-template-columns:repeat(4,1fr);gap:18px}.card{background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid var(--line);border-radius:var(--radius);padding:24px;position:relative;overflow:hidden}.product-card{min-height:330px;display:flex;flex-direction:column}.product-card.featured{border-color:rgba(255,31,143,.45);box-shadow:0 22px 60px rgba(255,31,143,.12)}.product-icon{font-size:3rem;margin:30px 0 12px}.tag{position:absolute;right:16px;top:16px;border-radius:999px;padding:7px 10px;font-size:.68rem;font-weight:900}.tag.free{background:rgba(0,229,255,.12);color:var(--cyan)}.tag.vip{background:rgba(255,31,143,.15);color:#ff72bd}.card p,.academy-copy p,.rewards p,.news-card p{color:var(--muted);line-height:1.65}.meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.85rem;margin-top:auto}.price{font-family:Orbitron;font-size:1.65rem;margin-top:auto}.btn-card{width:100%;margin-top:20px}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:radial-gradient(circle at 10% 40%,rgba(0,229,255,.07),transparent 45%)}.check-list{list-style:none;padding:0;margin:26px 0}.check-list li{margin:13px 0;color:#dbe0ea}.check-list li:before{content:'✓';color:var(--cyan);margin-right:12px;font-weight:900}.course-stack{display:grid;gap:14px}.course-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}.course-card>span{font-family:Orbitron;color:var(--pink);font-size:1.35rem}.course-card small{color:var(--cyan);font-weight:800}.course-card h3{margin:5px 0}.course-card b{font-size:.8rem;color:var(--muted)}.tournament-card{display:grid;grid-template-columns:170px 1fr auto;align-items:center;gap:30px;padding:28px;background:linear-gradient(120deg,#11151d,#18121d);border:1px solid var(--line);border-radius:28px}.tournament-visual{height:160px;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--violet),var(--pink));font-family:Orbitron}.tournament-visual strong{font-size:4rem;line-height:1}.tournament-visual span,.tournament-visual small{font-size:.65rem;letter-spacing:1px}.status{color:var(--cyan);font-size:.75rem;font-weight:900}.tournament-info h3{font-size:2rem;margin:10px 0}.prize{margin-top:18px}.creator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.creator-card{position:relative;text-align:center;padding:34px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.avatar{margin:auto;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;font-family:Orbitron;font-size:2rem;background:linear-gradient(145deg,var(--cyan),var(--violet),var(--pink))}.rank{position:absolute;top:18px;right:18px;color:var(--yellow);font-family:Orbitron}.creator-card p{color:var(--muted)}.creator-card strong{color:var(--cyan)}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.news-card{overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.news-image{height:180px;padding:20px;display:flex;align-items:flex-end}.news-image span{background:rgba(0,0,0,.5);padding:7px 10px;border-radius:999px;font-size:.65rem;font-weight:900}.gradient-one{background:linear-gradient(130deg,var(--cyan),#073d88)}.gradient-two{background:linear-gradient(130deg,var(--pink),var(--violet))}.gradient-three{background:linear-gradient(130deg,var(--yellow),var(--red))}.news-body{padding:22px}.news-body small{color:var(--cyan)}.rewards{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:40px;background:linear-gradient(100deg,rgba(255,212,0,.1),rgba(255,31,143,.08));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.coin{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#fff18b,var(--yellow),#ff8a00);color:#171005;font-family:Orbitron;font-size:3rem;font-weight:900;box-shadow:0 0 50px rgba(255,212,0,.2)}.newsletter{margin:90px 7vw;padding:50px;border-radius:28px;background:linear-gradient(120deg,#0f1724,#251025);border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px}.newsletter form{display:flex;gap:10px}.newsletter input,.stack-form input,.stack-form textarea{width:100%;background:#0b0e14;border:1px solid var(--line);border-radius:14px;padding:15px;color:white;outline:none}.stack-form textarea{min-height:120px;resize:vertical}footer{padding:50px 7vw;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.footer-brand{display:flex;align-items:center;gap:15px}.footer-brand img{width:55px;height:55px;border-radius:50%;object-fit:cover}.footer-brand strong{font-family:Orbitron}.footer-brand p{margin:5px 0;color:var(--muted)}.footer-links{display:flex;gap:18px}.legal{grid-column:1/-1;color:#666;font-size:.8rem}.text-link{color:var(--cyan);text-decoration:none;font-weight:700}.modal{position:fixed;inset:0;background:rgba(0,0,0,.72);display:none;align-items:center;justify-content:center;padding:20px;z-index:50;backdrop-filter:blur(8px)}.modal.open{display:flex}.modal-card{width:min(520px,100%);background:#11141b;border:1px solid var(--line);border-radius:24px;padding:34px;position:relative}.modal-close{position:absolute;right:18px;top:14px;border:0;background:none;color:white;font-size:28px;cursor:pointer}.stack-form{display:grid;gap:12px}.toast{position:fixed;right:22px;bottom:22px;background:white;color:#08090d;border-radius:14px;padding:14px 18px;font-weight:700;transform:translateY(120px);transition:.3s;z-index:60}.toast.show{transform:translateY(0)}
@media(max-width:1000px){.nav{display:none}.menu-toggle{display:block;margin-left:auto}.topbar>.btn{display:none}.hero{grid-template-columns:1fr;text-align:center;padding-top:70px}.hero p{margin-inline:auto}.hero-actions,.social-proof{justify-content:center}.product-grid{grid-template-columns:repeat(2,1fr)}.split-section{grid-template-columns:1fr}.tournament-card{grid-template-columns:140px 1fr}.tournament-card>.btn{grid-column:1/-1}.rewards{grid-template-columns:1fr auto}.rewards>.btn{grid-column:1/-1}.newsletter{grid-template-columns:1fr}}
@media(max-width:650px){.topbar{padding:0 20px}.hero{padding:70px 20px}.hero h1{letter-spacing:-2px}.section{padding:75px 20px}.section-heading{align-items:flex-start;flex-direction:column}.product-grid,.creator-grid,.news-grid{grid-template-columns:1fr}.tournament-card{grid-template-columns:1fr;text-align:center}.tournament-visual{width:100%}.rewards{grid-template-columns:1fr;text-align:center}.coin{margin:auto}.newsletter{margin:60px 20px;padding:28px}.newsletter form{flex-direction:column}footer{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.floating-badge{font-size:.75rem}.badge-one{left:0}.badge-two{right:0}.ticker{justify-content:flex-start}.social-proof{gap:20px}.hero-card>img{width:82vw;height:82vw}}

/* Pages Academy */
.page-hero{min-height:520px;padding:110px 7vw 70px;display:flex;align-items:center;background:radial-gradient(circle at 15% 40%,rgba(0,229,255,.14),transparent 35%),radial-gradient(circle at 85% 30%,rgba(255,31,143,.13),transparent 36%)}.page-hero.compact{min-height:390px}.page-hero>div{max-width:900px}.page-hero h1,.course-detail-hero h1{font-family:Orbitron;font-size:clamp(2.8rem,6vw,5.8rem);line-height:1;margin:16px 0}.page-hero p,.course-detail-hero p{color:var(--muted);font-size:1.1rem;line-height:1.75;max-width:760px}.learning-choice{display:grid;grid-template-columns:1fr 1fr;gap:22px}.learning-card{position:relative;min-height:390px;padding:34px;border-radius:28px;border:1px solid var(--line);text-decoration:none;color:white;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025));transition:.25s}.learning-card:hover{transform:translateY(-6px);border-color:rgba(0,229,255,.4)}.learning-card h2{font-size:2rem}.learning-card p{color:var(--muted);line-height:1.7}.premium-course{box-shadow:0 20px 70px rgba(255,31,143,.1)}.feature-grid,.video-grid,.premium-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.video-card,.premium-product{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.video-frame{aspect-ratio:16/9;background:#000}.video-frame iframe{width:100%;height:100%;border:0}.video-body,.premium-content{padding:25px}.inline-tag{position:static;display:inline-block;margin-bottom:12px}.premium-cover{height:250px;display:grid;place-items:center;font-family:Orbitron;font-weight:900;font-size:clamp(1.5rem,4vw,3rem);letter-spacing:2px}.premiere-cover{background:linear-gradient(135deg,#10154a,#4a4aff,var(--cyan))}.ae-cover{background:linear-gradient(135deg,#180b42,#6d24dd,var(--pink))}.course-detail-hero{padding:100px 7vw 70px;display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}.course-detail-hero .premium-cover{height:420px;border-radius:28px}.module-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.module-list li{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px}.module-list li>span{font-family:Orbitron;color:var(--cyan);font-size:1.2rem}.module-list h3{margin:0 0 6px}.module-list p{margin:0;color:var(--muted)}.locked-course{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;background:linear-gradient(100deg,rgba(143,69,255,.12),rgba(255,31,143,.08));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lock-icon{width:100px;height:100px;border-radius:50%;display:grid;place-items:center;background:var(--panel);font-size:2.5rem;border:1px solid var(--line)}
@media(max-width:900px){.learning-choice,.feature-grid,.video-grid,.premium-grid,.course-detail-hero{grid-template-columns:1fr}.locked-course{grid-template-columns:1fr;text-align:center}.lock-icon{margin:auto}.course-detail-hero .premium-cover{height:300px}}

/* Sensi ecosystem */
.sensi-category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.sensi-category-card{position:relative;min-height:290px;padding:28px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025));color:white;text-decoration:none;display:flex;flex-direction:column;transition:.25s;overflow:hidden}.sensi-category-card:before{content:"";position:absolute;inset:auto -40px -70px auto;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(0,229,255,.18),transparent 68%)}.sensi-category-card:hover{transform:translateY(-7px);border-color:rgba(0,229,255,.5);box-shadow:0 22px 60px rgba(0,0,0,.28)}.sensi-category-card h3{font-family:Orbitron;margin:18px 0 10px}.sensi-category-card p{color:var(--muted);line-height:1.65;flex:1}.category-icon{font-size:3rem;margin-top:18px}.card-arrow{color:var(--cyan);font-weight:800}.sensi-category-card .tag{position:absolute;right:18px;top:18px}.document-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.markdown-content{max-width:1100px;margin:auto;padding:38px;background:var(--panel);border:1px solid var(--line);border-radius:26px}.markdown-content h1,.markdown-content h2,.markdown-content h3{font-family:Orbitron;scroll-margin-top:100px}.markdown-content h1{font-size:clamp(2rem,5vw,4rem)}.markdown-content h2{margin-top:45px;color:white}.markdown-content p,.markdown-content li{color:#c8cad1;line-height:1.75}.markdown-content table{width:100%;border-collapse:collapse;margin:20px 0 34px;display:block;overflow-x:auto}.markdown-content th,.markdown-content td{padding:12px 14px;border:1px solid var(--line);text-align:left;white-space:nowrap}.markdown-content th{background:rgba(0,229,255,.1);color:var(--cyan)}.markdown-content tr:nth-child(even) td{background:rgba(255,255,255,.025)}.locked-product{display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center;padding:38px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(115deg,rgba(143,69,255,.13),rgba(255,31,143,.09))}.empty-state{text-align:center;max-width:760px;margin:auto;padding:60px 30px;background:var(--panel);border:1px solid var(--line);border-radius:28px}.empty-state p{color:var(--muted);line-height:1.7}.form-shell{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;background:var(--panel);border:1px solid var(--line);border-radius:28px;padding:40px}.form-shell p{color:var(--muted);line-height:1.7}.stack-form select{width:100%;background:#0b0e14;border:1px solid var(--line);border-radius:14px;padding:15px;color:white}.consent{display:flex;gap:10px;color:var(--muted);font-size:.9rem;line-height:1.5}.consent input{width:auto}
@media(max-width:1150px){.sensi-category-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.sensi-category-grid{grid-template-columns:repeat(2,1fr)}.locked-product,.form-shell{grid-template-columns:1fr}.locked-product{text-align:center}.lock-icon{margin:auto}.markdown-content{padding:22px}}
@media(max-width:520px){.sensi-category-grid{grid-template-columns:1fr}.document-toolbar{align-items:flex-start;gap:12px;flex-direction:column}}

/* Device search */
.device-search-section{padding:0 7vw 30px;margin-top:-42px;position:relative;z-index:4}.device-search-shell{max-width:1180px;margin:auto;padding:28px;border:1px solid rgba(0,229,255,.22);border-radius:26px;background:linear-gradient(135deg,rgba(16,18,24,.97),rgba(22,25,35,.96));box-shadow:0 24px 70px rgba(0,0,0,.38);display:grid;grid-template-columns:.75fr 1.25fr;gap:34px;align-items:center}.device-search-copy h2{font-family:Orbitron;margin:8px 0;font-size:clamp(1.35rem,3vw,2.2rem)}.device-search-copy p,.device-search-hint{color:var(--muted);line-height:1.6;margin:0}.device-search{position:relative}.device-search-input-wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 8px 8px 18px;background:#080a0f;border:1px solid var(--line);border-radius:18px;transition:.2s}.device-search-input-wrap:focus-within{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(0,229,255,.08)}.device-search-input-wrap>span{font-size:1.7rem;color:var(--cyan)}.device-search-input-wrap input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:white;font:inherit;padding:12px 4px}.device-search-input-wrap input::placeholder{color:#6f7480}.device-search-results{position:absolute;left:0;right:0;top:72px;z-index:15;background:#0d1017;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 25px 70px rgba(0,0,0,.55);max-height:390px;overflow-y:auto}.device-result{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:white;padding:15px 18px;display:grid;grid-template-columns:1fr auto;gap:14px;text-align:left;cursor:pointer}.device-result:last-child{border-bottom:0}.device-result:hover,.device-result.active{background:rgba(0,229,255,.08)}.device-result strong{display:block;margin-bottom:4px}.device-result small{color:var(--muted)}.device-result .tag{position:static;align-self:center}.device-no-result{padding:22px;text-align:center;color:var(--muted)}.device-search-hint{font-size:.82rem;margin-top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.device-match-banner{max-width:1100px;margin:0 auto 22px;padding:18px 22px;border:1px solid rgba(0,229,255,.3);border-radius:18px;background:rgba(0,229,255,.07);display:flex;justify-content:space-between;gap:18px;align-items:center}.device-match-banner strong{color:var(--cyan)}.device-match-banner p{margin:4px 0 0;color:var(--muted)}.device-highlight{animation:devicePulse 1.8s ease;outline:2px solid var(--cyan);outline-offset:-2px;background:rgba(0,229,255,.12)!important}@keyframes devicePulse{0%,100%{box-shadow:none}40%{box-shadow:0 0 34px rgba(0,229,255,.35)}}
@media(max-width:850px){.device-search-shell{grid-template-columns:1fr}.device-search-section{padding-inline:20px}.device-search-input-wrap{grid-template-columns:auto 1fr}.device-search-input-wrap .btn{grid-column:1/-1;width:100%}.device-search-results{top:126px}}@media(max-width:520px){.device-search-shell{padding:20px}.device-search-input-wrap{padding:8px}.device-match-banner{align-items:flex-start;flex-direction:column}}

/* Achat d'une sensi premium par appareil */
.paid-device-shop{max-width:1100px;margin:auto}.paid-device-panel{display:grid;grid-template-columns:1fr .72fr;gap:24px;align-items:start}.paid-device-picker,.paid-device-summary{padding:30px;border:1px solid var(--line);border-radius:26px;background:var(--panel)}.paid-device-picker h2,.paid-device-summary h2{font-family:Orbitron;margin:8px 0 12px}.paid-device-picker>p,.paid-device-summary>p{color:var(--muted);line-height:1.65}.paid-device-search{position:relative;margin-top:22px}.paid-device-search-box{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:8px 16px;border:1px solid var(--line);border-radius:17px;background:#080a0f}.paid-device-search-box:focus-within{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(0,229,255,.08)}.paid-device-search-box span{font-size:1.5rem;color:var(--cyan)}.paid-device-search-box input{width:100%;border:0;outline:0;background:transparent;color:white;font:inherit;padding:13px 0}.paid-device-list{margin-top:12px;max-height:390px;overflow-y:auto;border:1px solid var(--line);border-radius:18px;background:#0b0e14}.paid-device-option{width:100%;border:0;border-bottom:1px solid var(--line);padding:15px 17px;background:transparent;color:white;display:flex;justify-content:space-between;align-items:center;gap:15px;text-align:left;cursor:pointer}.paid-device-option:last-child{border-bottom:0}.paid-device-option:hover,.paid-device-option.selected{background:rgba(0,229,255,.09)}.paid-device-option.selected strong{color:var(--cyan)}.paid-device-option small{display:block;color:var(--muted);margin-top:4px}.paid-device-empty{padding:24px;text-align:center;color:var(--muted)}.selected-device-card{min-height:154px;margin:22px 0;padding:22px;border:1px dashed rgba(0,229,255,.32);border-radius:20px;background:rgba(0,229,255,.055);display:flex;flex-direction:column;justify-content:center}.selected-device-card .empty-selection{color:var(--muted);text-align:center}.selected-device-name{font-family:Orbitron;font-size:1.35rem;margin:8px 0}.purchase-price{font-family:Orbitron;font-size:1.8rem;color:var(--yellow);margin:8px 0}.purchase-note{font-size:.82rem;color:var(--muted);line-height:1.5}.paid-device-summary .btn{width:100%;margin-top:14px}.paid-device-summary .btn[disabled]{opacity:.42;cursor:not-allowed;filter:grayscale(.6);transform:none}.selection-checks{list-style:none;padding:0;margin:20px 0;display:grid;gap:11px}.selection-checks li{color:#d2d5dc}.selection-checks li:before{content:'✓';color:var(--cyan);font-weight:900;margin-right:10px}.modal-device-recap{padding:15px 17px;border-radius:15px;background:rgba(0,229,255,.08);border:1px solid rgba(0,229,255,.22);margin:16px 0}.modal-device-recap strong{color:var(--cyan)}
@media(max-width:850px){.paid-device-panel{grid-template-columns:1fr}.paid-device-summary{position:static}}

/* Recherche ciblée par marque */
.brand-sensi-section{padding-top:24px}.brand-search-panel,.single-sensi-result{max-width:980px;margin:0 auto;border:1px solid rgba(0,216,255,.25);background:linear-gradient(135deg,rgba(15,20,31,.96),rgba(24,27,39,.92));border-radius:24px;padding:28px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.brand-search-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:24px}.brand-search-heading h2{font-family:Orbitron,sans-serif;font-size:clamp(24px,3vw,38px);margin:7px 0}.brand-search-heading p{color:var(--muted);margin:0}.brand-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field-group{position:relative}.field-group.full{grid-column:1/-1}.field-group label{display:block;color:#b9c1d4;font-weight:700;margin:0 0 9px}.field-group label small{font-weight:500;color:var(--muted)}.field-group input,.locked-brand{width:100%;min-height:58px;border-radius:16px;border:1px solid rgba(121,140,190,.3);background:#0d1322;color:#f6f8ff;padding:0 18px;font:inherit;outline:none;transition:.2s}.field-group input:focus{border-color:#00d8ff;box-shadow:0 0 0 3px rgba(0,216,255,.12)}.locked-brand{display:flex;align-items:center;gap:12px}.locked-brand strong{font-family:Orbitron,sans-serif}.lock-mark{margin-left:auto;opacity:.65}.brand-model-suggestions,.brand-quick-suggestions{position:absolute;z-index:20;top:calc(100% + 8px);left:0;right:0;max-height:260px;overflow:auto;border:1px solid rgba(0,216,255,.25);border-radius:14px;background:#0c1220;box-shadow:0 18px 45px rgba(0,0,0,.5)}.brand-suggestion{display:block;width:100%;padding:12px 15px;border:0;border-bottom:1px solid rgba(255,255,255,.06);background:transparent;color:#fff;text-align:left;cursor:pointer}.brand-suggestion:hover,.brand-suggestion:focus{background:rgba(0,216,255,.1)}.popular-models{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px;color:var(--muted)}.model-chip{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:#dce6ff;border-radius:999px;padding:8px 12px;cursor:pointer}.model-chip:hover{border-color:#00d8ff;color:#00e7ff}.brand-search-actions{display:flex;gap:12px;margin-top:22px}.brand-search-message{min-height:22px;margin:12px 0 0;color:#ffbf4a}.single-sensi-result{margin-top:24px}.sensi-result-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.sensi-result-top h2{font-family:Orbitron,sans-serif;font-size:clamp(25px,4vw,42px);margin:0}.sensi-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sensi-stat{border:1px solid rgba(100,130,200,.25);background:#0d1322;border-radius:18px;padding:18px}.sensi-stat span{display:block;color:#aeb8cf;text-transform:uppercase;font-size:13px;letter-spacing:.08em}.sensi-stat strong{display:block;font-size:32px;margin-top:8px}.sensi-copy-actions{display:flex;gap:10px;flex-wrap:wrap}.paid-lock-card{text-align:center;padding:22px}.paid-lock-card .lock-icon{font-size:48px}.paid-lock-card h3{font-family:Orbitron,sans-serif;font-size:26px;margin:10px 0}.paid-lock-card p{color:var(--muted);max-width:650px;margin:0 auto 20px}.selected-paid-device{display:inline-block;border:1px solid rgba(255,46,147,.35);background:rgba(255,46,147,.08);border-radius:999px;padding:9px 16px;margin-bottom:18px}.search-empty{text-align:center;color:var(--muted);padding:20px}.result-note{color:var(--muted);margin:18px 0 0;font-size:14px}
@media(max-width:720px){.brand-search-heading,.sensi-result-top{flex-direction:column}.brand-form-grid,.sensi-result-grid{grid-template-columns:1fr}.field-group.full{grid-column:auto}.brand-search-panel,.single-sensi-result{padding:20px}.brand-search-actions{flex-direction:column}.brand-search-actions .btn{width:100%}}
/* Version 8 — actions globales */
.topbar-actions{display:flex;align-items:center;gap:10px}.icon-action{position:relative;width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:#fff;cursor:pointer}.action-count{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:20px;background:var(--pink);font:700 11px/18px Inter;text-align:center}.side-panel{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.62);display:none;justify-content:flex-end}.side-panel.open{display:flex}.side-panel-card{width:min(460px,94vw);height:100%;overflow:auto;background:#0c1018;border-left:1px solid var(--line);padding:30px;box-shadow:-20px 0 70px #000}.side-panel-close{float:right;border:0;background:transparent;color:#fff;font-size:30px;cursor:pointer}.side-panel-card h2{font-family:Orbitron}.cart-item,.notification-item{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:15px;margin:10px 0;background:rgba(255,255,255,.025)}.cart-item small,.notification-item p,.notification-item small{display:block;color:var(--muted);margin:4px 0}.cart-item button,.notification-item button{border:0;background:transparent;color:var(--cyan);cursor:pointer}.notification-item{display:block}.notification-item.unread{border-color:rgba(0,229,255,.4)}.cart-footer{position:sticky;bottom:0;background:#0c1018;padding-top:18px;border-top:1px solid var(--line);display:grid;gap:14px}.cart-footer>div{display:flex;justify-content:space-between;font-size:1.15rem}.empty-panel{color:var(--muted);text-align:center;padding:35px 0}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.auth-tabs button{padding:12px;border-radius:12px;border:1px solid var(--line);background:transparent;color:#fff;cursor:pointer}.auth-tabs button.active{border-color:var(--cyan);background:rgba(0,229,255,.1)}.dual-buy-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.dual-buy-actions .btn{flex:1}.creator-cta{margin-top:28px;text-align:center}.wizard-progress{display:flex;gap:8px;margin:20px 0}.wizard-progress span{height:5px;flex:1;border-radius:9px;background:rgba(255,255,255,.1)}.wizard-progress span.active{background:linear-gradient(90deg,var(--cyan),var(--pink))}.wizard-page{display:none}.wizard-page.active{display:block}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-checks{display:grid;gap:10px}.form-checks label{display:flex;gap:10px;align-items:flex-start;color:#d6d9e2}.form-checks input{width:auto;margin-top:4px}.form-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.creator-directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.creator-profile-card{border:1px solid var(--line);border-radius:22px;background:var(--panel);padding:22px;cursor:pointer}.creator-profile-card .avatar{width:68px;height:68px}.social-pills{display:flex;gap:8px;flex-wrap:wrap}.social-pills a{padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:#fff;font-size:.8rem}.windows-choice-grid,.hud-choice-grid,.regedit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.regedit-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:var(--panel)}.regedit-card h3{font-family:Orbitron}.detail-panes{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.detail-pane{border:1px solid var(--line);border-radius:16px;padding:16px;background:#0d1322}.detail-pane span{color:var(--muted);display:block}.detail-pane strong{font-size:1.4rem}.hud-code{display:flex;gap:10px}.hud-code code{flex:1;padding:16px;border-radius:14px;background:#070a10;border:1px solid var(--line);overflow:auto}
@media(max-width:850px){.topbar-actions .btn{display:none}.creator-directory-grid{grid-template-columns:1fr 1fr}.windows-choice-grid,.hud-choice-grid{grid-template-columns:1fr}.detail-panes{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.creator-directory-grid,.form-two{grid-template-columns:1fr}.topbar-actions{gap:5px}.icon-action{width:38px;height:38px}.regedit-grid{grid-template-columns:1fr}}
.hud-preview-placeholder{min-height:360px;border:1px dashed rgba(0,229,255,.35);border-radius:22px;display:grid;place-items:center;color:var(--muted);background:rgba(0,229,255,.035);margin-bottom:24px}

/* Version 9 — authentification, HUD et classement créateurs */
.auth-modal-card h2{font-family:Orbitron;margin:12px 0}.auth-intro{color:var(--muted);line-height:1.65}.auth-main-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.auth-main-choices .btn{min-height:58px}.auth-back,.forgot-link{border:0;background:transparent;color:var(--cyan);cursor:pointer;padding:4px 0;text-align:left;font-weight:700}.stack-form label{display:grid;gap:8px;color:#d8deea;font-weight:700}.creator-directory-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));align-items:stretch}.creator-profile-card{position:relative;aspect-ratio:1/1;display:flex;flex-direction:column;justify-content:center;text-align:center;transition:.25s transform,.25s border-color}.creator-profile-card:hover{transform:translateY(-4px);border-color:rgba(0,229,255,.45)}.creator-tier{position:absolute;right:14px;top:12px;font-size:1.35rem;max-width:100px;text-align:right}.profile-tier{font-size:1.8rem}.creator-total{color:var(--cyan);margin:4px 0}.creator-profile-card p{color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.creator-profile-card .social-pills{justify-content:center}.stack-form select{width:100%;background:#0b0e14;border:1px solid var(--line);border-radius:14px;padding:15px;color:white;outline:none}
@media(max-width:560px){.auth-main-choices{grid-template-columns:1fr}.creator-profile-card{aspect-ratio:auto;min-height:300px}}
/* Version 10 — catalogue RegEdit et grille créateurs */
.creator-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.regedit-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.regedit-filters button{border:1px solid var(--line);border-radius:999px;padding:10px 16px;background:rgba(255,255,255,.035);color:#fff;cursor:pointer}.regedit-filters button.active,.regedit-filters button:hover{border-color:var(--cyan);background:rgba(0,229,255,.1);color:var(--cyan)}
.regedit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.regedit-card{display:flex;flex-direction:column;min-height:330px;transition:.25s transform,.25s border-color}.regedit-card:hover{transform:translateY(-5px);border-color:rgba(0,229,255,.45)}.regedit-card-top{display:flex;justify-content:space-between;align-items:center}.regedit-icon{font-size:1.5rem}.regedit-card p{color:var(--muted);line-height:1.65;flex:1}.regedit-tags{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 18px}.regedit-tags span{font-size:.72rem;padding:6px 9px;border-radius:999px;border:1px solid var(--line);color:#d6dbe7}.regedit-detail-card{margin-top:22px;border:1px solid var(--line);border-radius:26px;padding:28px;background:var(--panel)}.regedit-detail-card h1{font-family:Orbitron;margin:14px 0 24px}.description-panel,.download-panel,.notes-panel,.premium-lock{border:1px solid var(--line);border-radius:20px;padding:22px;margin:18px 0;background:rgba(255,255,255,.025)}.description-panel p,.notes-panel p,.premium-lock p,.download-panel p{color:var(--muted);line-height:1.75}.detail-pane.wide{grid-column:span 2}.premium-lock{text-align:center}.lock-symbol{font-size:3rem}.download-panel .btn{margin-right:10px;margin-top:8px}
@media(max-width:900px){.regedit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.creator-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.regedit-grid,.creator-directory-grid{grid-template-columns:1fr!important}.detail-pane.wide{grid-column:auto}.download-panel .btn{width:100%;margin-right:0}}

/* =========================================================
   MIAOU FF HUB V2 — extensions fonctionnelles
   Le bloc ci-dessous n'altère pas la palette, les polices,
   les boutons, les fonds ni les cartes du thème original.
   ========================================================= */
.app-main{min-height:calc(100vh - 78px)}
.page-shell{padding:76px 7vw 100px;max-width:1500px;margin:auto}
.page-shell.compact{max-width:900px}
.page-title{margin-bottom:34px}.page-title h1{font-family:Orbitron;margin:10px 0;font-size:clamp(2.2rem,5vw,4.4rem)}.page-title p{color:var(--muted);line-height:1.7;max-width:760px}
.auth-panel{max-width:620px;margin:auto}.auth-panel h1,.account-panel h1,.admin-panel h1{font-family:Orbitron}
.stack-form label{display:grid;gap:8px;color:#dfe4ef;font-weight:700}.stack-form select{width:100%;background:#0b0e14;border:1px solid var(--line);border-radius:14px;padding:15px;color:white;outline:none;font:inherit}.stack-form input:focus,.stack-form textarea:focus,.stack-form select:focus{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(0,229,255,.07)}
.form-message{padding:14px 16px;border-radius:14px;border:1px solid var(--line);margin:14px 0}.form-message.ok{border-color:rgba(0,229,255,.38);background:rgba(0,229,255,.07)}.form-message.error{border-color:rgba(255,31,143,.42);background:rgba(255,31,143,.08)}
.account-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:26px}.profile-avatar{width:108px;height:108px;border-radius:50%;overflow:hidden;border:1px solid var(--line);display:grid;place-items:center;background:linear-gradient(145deg,var(--cyan),var(--violet),var(--pink));font:800 2.3rem Orbitron}.profile-avatar img{width:100%;height:100%;object-fit:cover}.account-meta h1{margin:8px 0}.account-meta p{color:var(--muted)}.account-actions{display:flex;gap:10px;flex-wrap:wrap}
.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}.dashboard-card{min-height:170px}.dashboard-card strong{display:block;font:800 2rem Orbitron;margin:14px 0}.dashboard-card a{color:var(--cyan);text-decoration:none;font-weight:800}
.admin-layout{display:grid;grid-template-columns:260px 1fr;gap:24px}.admin-side{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;height:max-content;position:sticky;top:98px}.admin-side a{display:block;padding:13px 14px;border-radius:12px;color:var(--muted);text-decoration:none;font-weight:700}.admin-side a:hover,.admin-side a.active{background:rgba(255,255,255,.06);color:white}.admin-main{min-width:0}
.data-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px}.data-table{width:100%;border-collapse:collapse;min-width:820px;background:var(--panel)}.data-table th,.data-table td{text-align:left;padding:15px;border-bottom:1px solid var(--line)}.data-table th{font-family:Orbitron;font-size:.72rem;color:var(--cyan);letter-spacing:1px}.data-table td{color:#dfe4ef}.data-table small{color:var(--muted)}.data-table tr:last-child td{border-bottom:0}.data-table a{color:var(--cyan);text-decoration:none;font-weight:800}
.toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin:20px 0}.toolbar form{display:flex;gap:8px;flex:1}.toolbar input{flex:1;min-width:200px;background:#0b0e14;border:1px solid var(--line);border-radius:999px;padding:13px 17px;color:white}
.shop-grid{grid-template-columns:repeat(3,1fr);gap:18px}.shop-card{display:flex;flex-direction:column;min-height:360px}.shop-card .price{margin-top:auto}.shop-card .card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.shop-empty{text-align:center;padding:70px 30px}
.cart-list{display:grid;gap:14px}.cart-row{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center}.cart-row h3{margin:0 0 7px}.cart-row p{margin:0}.cart-price{font-family:Orbitron}.cart-total{display:flex;align-items:center;justify-content:space-between;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.cart-total strong{font:800 1.7rem Orbitron}
.cart-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--pink);color:white;display:inline-grid;place-items:center;font-size:.68rem;margin-left:4px}
.inline-form{display:inline}.inline-form button{font:inherit}
.file-label{display:grid;gap:9px;color:var(--muted)}.file-label input{padding:11px}
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:1000px){.dashboard-grid,.shop-grid{grid-template-columns:1fr 1fr}.admin-layout{grid-template-columns:1fr}.admin-side{position:static;display:flex;overflow:auto;gap:4px}.admin-side a{white-space:nowrap}.account-hero{grid-template-columns:auto 1fr}.account-actions{grid-column:1/-1}}
@media(max-width:680px){.dashboard-grid,.shop-grid,.settings-grid{grid-template-columns:1fr}.page-shell{padding:46px 20px 80px}.account-hero{grid-template-columns:1fr;text-align:center}.profile-avatar{margin:auto}.account-actions{justify-content:center}.cart-row{grid-template-columns:1fr}.shop-card .card-actions{grid-template-columns:1fr}}

/* ========================= V3 functional extensions =========================
   No original palette, font, background, button or card rule is replaced. */
.notice-bell{position:relative;display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;text-decoration:none}
.notice-dot{position:absolute;right:-3px;top:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--pink);display:grid;place-items:center;font-size:.62rem;font-weight:800}
.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.module-card{min-height:215px}.module-card .product-icon{font-size:2rem}.module-card p{min-height:52px}
.order-status{display:inline-flex;padding:6px 10px;border-radius:999px;border:1px solid var(--line);font-size:.72rem;font-weight:800}.order-status.paid{border-color:rgba(0,229,255,.5);color:var(--cyan)}.order-status.pending{border-color:rgba(255,199,0,.5);color:#ffc700}
.notification-list{display:grid;gap:12px}.notification-row{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start}.notification-row.unread{border-color:rgba(0,229,255,.35)}.notification-row h3{margin:0 0 6px}.notification-row p{margin:0;color:var(--muted);line-height:1.55}
.split-actions{display:flex;gap:8px;flex-wrap:wrap}.danger-zone{border-color:rgba(255,31,143,.35)!important}
.product-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.product-admin-grid .full{grid-column:1/-1}
.creator-steps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.creator-step{padding:8px 12px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:.75rem}.creator-step.active{border-color:var(--cyan);color:white}
@media(max-width:1000px){.module-grid{grid-template-columns:1fr 1fr}.product-admin-grid{grid-template-columns:1fr}}
@media(max-width:640px){.module-grid{grid-template-columns:1fr}.notification-row{grid-template-columns:1fr}}

/* ======================== V3.1 SENSI CENTER ========================
   Extensions only; original theme remains untouched. */
.sensi-hub-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.sensi-brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.sensi-search-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:end}.sensi-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sensi-fields .full{grid-column:1/-1}.locked-brand{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 16px;border:1px solid var(--line);border-radius:14px;background:#0b0e14}.locked-brand strong{font-family:Orbitron}.sensi-popular{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.sensi-popular a{padding:8px 12px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--muted);font-size:.78rem}.sensi-result{margin-top:24px}.sensi-values{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.sensi-value{padding:18px;border:1px solid var(--line);border-radius:16px;background:#0b0e14}.sensi-value span{display:block;color:var(--muted);font-size:.78rem}.sensi-value strong{display:block;font:800 1.8rem Orbitron;margin-top:7px}.sensi-paywall{padding:24px;text-align:center;border:1px dashed rgba(255,31,143,.45);border-radius:18px;margin-top:18px}.sensi-paywall h3{font-family:Orbitron}.brand-card{min-height:220px}.brand-card .product-icon{font-size:2.2rem}.brand-card p{min-height:48px}.brand-note{font-size:.76rem;color:var(--muted);margin-top:10px}
@media(max-width:1100px){.sensi-hub-grid{grid-template-columns:repeat(3,1fr)}.sensi-brand-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sensi-search-panel{grid-template-columns:1fr}.sensi-fields,.sensi-values{grid-template-columns:1fr}.sensi-hub-grid,.sensi-brand-grid{grid-template-columns:1fr}.sensi-fields .full{grid-column:auto}}

/* V3.1.1 — cartes Sensi entièrement cliquables, thème original inchangé */
.clickable-card{
    display:block;
    color:inherit;
    text-decoration:none;
    cursor:pointer;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.clickable-card:hover{
    transform:translateY(-4px);
    border-color:rgba(0,229,255,.38);
    box-shadow:0 18px 42px rgba(0,0,0,.26),0 0 24px rgba(0,229,255,.08);
}
.clickable-card:focus-visible{
    outline:2px solid var(--cyan);
    outline-offset:3px;
}

/* ======================== V3.2 REG EDIT ========================
   Functional extensions only; original MIAOU FF theme unchanged. */
.windows-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:980px}.regedit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.regedit-card{display:flex;flex-direction:column;min-height:300px}.regedit-card .price{margin-top:auto}.regedit-card p{line-height:1.55}.detail-blocks{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.detail-block{padding:20px;border:1px solid var(--line);border-radius:18px;background:#0b0e14}.detail-block.full{grid-column:1/-1}.detail-block span{display:block;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.detail-block strong,.detail-block p{display:block;margin:8px 0 0}.download-warning{border-color:rgba(255,199,0,.4)!important}.regedit-icon{font-size:2.4rem;margin:16px 0}.admin-settings-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:1000px){.regedit-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.windows-choice-grid,.regedit-grid,.detail-blocks,.admin-settings-row{grid-template-columns:1fr}.detail-block.full{grid-column:auto}}

/* ======================== V3.3 CREATOR HUB ========================
   Functional extensions only; original MIAOU FF theme unchanged. */
.creator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.creator-card{position:relative;display:block;text-decoration:none;color:inherit;min-height:330px;overflow:hidden}
.creator-card-head{display:flex;align-items:center;gap:16px;margin-bottom:18px;padding-right:74px}
.creator-avatar{width:78px;height:78px;border-radius:50%;overflow:hidden;border:1px solid var(--line);display:grid;place-items:center;background:linear-gradient(145deg,var(--cyan),var(--violet),var(--pink));font:800 1.7rem Orbitron;flex:0 0 auto}
.creator-avatar img{width:100%;height:100%;object-fit:cover}
.creator-card h3{margin:0 0 6px}
.creator-card .handle{color:var(--muted);font-size:.88rem}
.creator-card p{line-height:1.6}
.creator-rank{position:absolute;right:16px;top:16px;display:grid;place-items:center;min-width:48px;height:48px;padding:0 9px;border-radius:14px;border:1px solid var(--line);background:rgba(9,12,18,.86);font-size:1.35rem}
.creator-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.creator-stat{padding:13px;border:1px solid var(--line);border-radius:14px;background:#0b0e14}
.creator-stat span{display:block;color:var(--muted);font-size:.72rem}
.creator-stat strong{display:block;margin-top:5px;font-family:Orbitron}
.creator-profile-grid{display:grid;grid-template-columns:320px 1fr;gap:24px;align-items:start}
.creator-profile-side{position:sticky;top:98px}
.creator-profile-main .detail-blocks{margin-top:0}
.creator-rank-large{font-size:2rem;margin:12px 0}
.creator-join-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:26px}
.creator-empty{text-align:center;padding:70px 30px}
@media(max-width:1000px){.creator-grid{grid-template-columns:repeat(2,1fr)}.creator-profile-grid{grid-template-columns:1fr}.creator-profile-side{position:static}}
@media(max-width:680px){.creator-grid{grid-template-columns:1fr}}

/* V3.3.1 — dossier candidat + multi-rôles, thème original inchangé */
.creator-application-link{word-break:break-all}
.role-chip-list{display:flex;gap:8px;flex-wrap:wrap}
.role-chip{padding:7px 10px;border:1px solid var(--line);border-radius:999px;font-size:.74rem}

/* ======================== V3.4 PUBLIC HOME + ACCESS GATES ========================
   Extensions only. Original MIAOU FF visual identity remains untouched. */
.home-public{padding-top:42px}
.home-section{padding:34px 0}
.home-section + .home-section{border-top:1px solid var(--line)}
.home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.home-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.home-news-card,.home-tournament-card,.home-info-card{min-height:220px}
.home-news-card time,.home-tournament-card time{display:block;color:var(--muted);font-size:.76rem;margin-bottom:10px}
.home-info-card{min-height:150px}
.home-info-icon{font-size:1.45rem;margin-bottom:12px}
.home-featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.lock-hint{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.82rem;margin-top:12px}
.tournament-meta{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.tournament-meta span{padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.72rem}
.admin-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.admin-home-grid .full{grid-column:1/-1}
@media(max-width:1000px){.home-grid,.home-featured-grid{grid-template-columns:repeat(2,1fr)}.home-info-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.home-grid,.home-featured-grid,.home-info-grid,.admin-home-grid{grid-template-columns:1fr}.admin-home-grid .full{grid-column:auto}}

/* V3.4.1 — accueil historique restauré + CTA créateurs + Sensi invité */
.creator-join-highlight{
    margin-top:22px;
    padding:22px 24px;
    border:1px solid rgba(0,229,255,.32);
    border-radius:var(--radius);
    background:linear-gradient(135deg,rgba(0,229,255,.08),rgba(255,31,143,.08));
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    box-shadow:0 16px 42px rgba(0,0,0,.2);
}
.creator-join-highlight h3{margin:8px 0 6px;font-family:Orbitron}
.creator-join-highlight p{margin:0;color:var(--muted)}
.creator-join-main{font-size:1rem;padding:15px 22px;white-space:nowrap}
.guest-sensi-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.guest-sensi-card{min-height:260px}
.guest-sensi-card h3{font-family:Orbitron;font-size:1.35rem}
@media(max-width:760px){
    .creator-join-highlight{align-items:flex-start;flex-direction:column}
    .creator-join-main{width:100%;text-align:center}
    .guest-sensi-grid{grid-template-columns:1fr}
}

/* V3.4.2 — modifications demandées SUR la page d'accueil originale uniquement */
.home-auth-sensi-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}
.home-auth-sensi-card{
    min-height:220px;
    display:block;
    color:inherit;
    text-decoration:none;
    cursor:pointer;
}
.home-auth-sensi-card .category-icon{font-size:2rem;margin:14px 0}
.creator-join-feature{
    margin-top:20px;
    padding:20px 22px;
    border:1px solid rgba(0,229,255,.36);
    border-radius:var(--radius);
    background:linear-gradient(120deg,rgba(0,229,255,.08),rgba(255,31,143,.09));
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    box-shadow:0 16px 44px rgba(0,0,0,.22);
}
.creator-join-feature h3{margin:7px 0 4px;font-family:Orbitron}
.creator-join-feature p{margin:0;color:var(--muted)}
.creator-join-feature .btn{white-space:nowrap}
.creator-grid a.creator-card{color:inherit;text-decoration:none}
.creator-grid .creator-card{cursor:pointer}
.home-topbar-form{display:inline}
.home-topbar-form button{font:inherit}
@media(max-width:760px){
    .home-auth-sensi-grid{grid-template-columns:1fr}
    .creator-join-feature{flex-direction:column;align-items:flex-start}
    .creator-join-feature .btn{width:100%;text-align:center}
}

/* ======================== V3.5 ACADEMY CMS ========================
   La structure Academy reprend miaou-ff-site(7).zip. Extensions uniquement. */
.academy-four-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.learning-choice.four{grid-template-columns:repeat(4,1fr)}
.learning-card.asset-card{min-height:390px}
.asset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.asset-card-item{display:flex;flex-direction:column;min-height:300px}
.asset-card-item .price{margin-top:auto}
.asset-preview{aspect-ratio:16/9;border-radius:16px;background:linear-gradient(135deg,#10154a,#4a4aff,var(--cyan));display:grid;place-items:center;font-family:Orbitron;font-weight:800;margin-bottom:18px;overflow:hidden}
.asset-preview img,.asset-preview video{width:100%;height:100%;object-fit:cover}
.music-preview{background:linear-gradient(135deg,#22160b,#5b245b,var(--pink))}
.admin-academy-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.admin-academy-tabs a{padding:9px 13px;border:1px solid var(--line);border-radius:999px;color:var(--muted);text-decoration:none}
.admin-academy-tabs a.active{color:white;border-color:var(--cyan)}
.course-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.course-admin-grid .full{grid-column:1/-1}
.video-url-note{color:var(--muted);font-size:.8rem;line-height:1.5}
.module-admin-row{display:grid;grid-template-columns:70px 1fr auto;gap:12px;align-items:center}
@media(max-width:1100px){
    .learning-choice.four{grid-template-columns:repeat(2,1fr)}
    .asset-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
    .learning-choice.four,.asset-grid,.course-admin-grid{grid-template-columns:1fr}
    .course-admin-grid .full{grid-column:auto}
    .module-admin-row{grid-template-columns:1fr}
}

/* V3.6 Content Studio */
.video-frame video{width:100%;height:100%;object-fit:cover;background:#05070b}
.btn-danger{border-color:rgba(255,50,90,.45)!important;color:#ff7892!important;background:rgba(255,50,90,.08)!important}
.tournament-full-grid{display:grid;gap:18px}.tournament-full-card{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.tournament-rules{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.tournament-rules span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.75rem}.tournament-redeem{width:180px;text-align:center}.tournament-redeem img{width:140px;height:140px;object-fit:cover;border-radius:18px;border:1px solid var(--line);display:block;margin:0 auto 10px}
.newspaper-shell{max-width:1380px;margin:50px auto;padding:48px;background:#eee8d8;color:#171717;box-shadow:0 28px 80px #0009;font-family:Georgia,'Times New Roman',serif}.newspaper-head{text-align:center;border-top:5px double #171717;border-bottom:5px double #171717;padding:18px 0;margin-bottom:32px}.newspaper-head h1{font-family:Georgia,'Times New Roman',serif;color:#111;font-size:clamp(2.8rem,7vw,6rem);line-height:.95;margin:8px 0}.newspaper-grid{columns:3 320px;column-gap:34px}.newspaper-story{break-inside:avoid;border-bottom:1px solid #777;padding-bottom:26px;margin-bottom:26px}.newspaper-story img,.newspaper-hero{width:100%;max-height:520px;object-fit:cover;margin-bottom:16px}.newspaper-meta{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#555}.newspaper-story h2{font-family:Georgia,'Times New Roman',serif;font-size:2rem;line-height:1.05}.newspaper-story h2 a{color:#111;text-decoration:none}.newspaper-story p,.newspaper-article{color:#292929;line-height:1.68}.newspaper-single{max-width:1050px}.newspaper-lead{font-size:1.25rem;font-weight:bold}.tournament-admin-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:760px){.newspaper-shell{margin:15px 8px;padding:22px}.newspaper-grid{columns:1}.tournament-full-card,.tournament-admin-form{grid-template-columns:1fr}}

/* V3.6.1 — Tournament Builder */
.tournament-builder{padding:0;overflow:hidden}
.builder-step{padding:26px;border-bottom:1px solid var(--line)}
.builder-step:last-child{border-bottom:0}
.builder-step h2{margin:7px 0 20px}
.builder-step .form-help{color:var(--muted);font-size:.82rem;line-height:1.55}
.tournament-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.creator-participants{margin:22px 0;padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(9,12,18,.45)}
.creator-participants h3{font-family:Orbitron;margin:0 0 14px}
.creator-participant-list{display:flex;gap:10px;flex-wrap:wrap}
.creator-participant{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--line);border-radius:14px;background:#0b0e14}
.creator-participant small{display:block;color:var(--muted);font-size:.68rem;margin-top:3px}
.creator-mini-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,var(--cyan),var(--pink));font-family:Orbitron;font-weight:800}
.creator-mini-avatar img{width:100%;height:100%;object-fit:cover}
.admin-redeem-preview{width:100px;height:100px;object-fit:cover;border-radius:14px;border:1px solid var(--line);margin-top:10px}
.muted{color:var(--muted)}
@media(max-width:760px){.builder-step{padding:20px}}

/* V3.6.2 — Content Control */
.btn-disabled,.creator-member-button{opacity:.55;filter:grayscale(.9);cursor:not-allowed;pointer-events:none}
.account-disabled-link{color:var(--muted)}
.home-tournament-stack{display:grid;gap:18px}
.home-redeem-list{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-left:auto}
.redeem-admin-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:center;margin-bottom:10px}
.existing-redeems{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.existing-redeem{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--line);border-radius:14px}
.existing-redeem img{width:52px;height:52px;object-fit:cover;border-radius:10px}
.tournament-redeem-public,.tournament-winners{margin:20px 0;padding:18px;border:1px solid var(--line);border-radius:18px}
.redeem-public-grid,.winner-grid{display:flex;gap:12px;flex-wrap:wrap}
.redeem-public-item{width:140px;text-align:center}
.redeem-public-item img{width:100px;height:100px;object-fit:cover;border-radius:14px;display:block;margin:0 auto 8px}
.winner-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:14px;min-width:230px}
.winner-card img,.winner-admin-item img{width:70px;height:70px;object-fit:cover;border-radius:12px}
.winner-card small,.winner-admin-item small{display:block;color:var(--muted);margin-top:4px}
.winner-admin-panel{margin-top:22px}
.winner-admin-list{display:grid;gap:10px;margin-top:18px}
.winner-admin-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:14px}
.winner-admin-item form{margin-left:auto}
.newspaper-story-color,.newspaper-color-hero{width:100%;height:220px;margin-bottom:16px;border-radius:8px}
.newspaper-color-hero{height:420px}
.news-color-cyan{background:linear-gradient(135deg,#11d8e9,#1e5aaa)}
.news-color-magenta{background:linear-gradient(135deg,#f21e93,#a834df)}
.news-color-orange{background:linear-gradient(135deg,#ffc21a,#ff523c)}
.news-color-violet{background:linear-gradient(135deg,#4e4aff,#aa3cdf)}
.news-color-green{background:linear-gradient(135deg,#11b981,#3ba35e)}
.news-color-red{background:linear-gradient(135deg,#e83a4f,#8d1427)}
@media(max-width:760px){.redeem-admin-row{grid-template-columns:1fr}.home-redeem-list{width:100%;margin-left:0}}

/* V3.6.3 — Redeem code thumbnails */
.tournament-redeem-public .redeem-public-grid{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:flex-start;
}
.tournament-redeem-public .redeem-public-item{
    width:90px;
    text-align:center;
}
.tournament-redeem-public .redeem-public-item img{
    width:64px;
    height:64px;
    object-fit:cover;
    border-radius:10px;
    display:block;
    margin:0 auto 6px;
}
.tournament-redeem-public .redeem-public-item strong{
    display:block;
    font-size:12px;
    line-height:1.2;
}
.home-redeem-list .tournament-redeem-mini{
    width:72px;
    text-align:center;
}
.home-redeem-list .tournament-redeem-mini img{
    width:52px;
    height:52px;
    object-fit:cover;
    border-radius:9px;
    display:block;
    margin:0 auto 5px;
}
.home-redeem-list .tournament-redeem-mini small{
    display:block;
    font-size:10px;
    line-height:1.15;
}

/* V3.6.4 — Redeem code images: medium size */
.tournament-redeem-public .redeem-public-item{
    width:150px;
}
.tournament-redeem-public .redeem-public-item img{
    width:120px;
    height:120px;
    object-fit:cover;
    border-radius:12px;
    margin:0 auto 8px;
}
.tournament-redeem-public .redeem-public-item strong{
    font-size:13px;
}
.home-redeem-list .tournament-redeem-mini{
    width:120px;
}
.home-redeem-list .tournament-redeem-mini img{
    width:96px;
    height:96px;
    object-fit:cover;
    border-radius:11px;
    margin:0 auto 7px;
}
.home-redeem-list .tournament-redeem-mini small{
    font-size:11px;
}

/* V3.6.5 — clickable cards + tournament label layout fix */
.tournament-card-link{
    color:inherit;
    text-decoration:none;
    cursor:pointer;
}
.tournament-card-link:hover{
    transform:translateY(-2px);
    border-color:rgba(0,229,255,.38);
}
.tournament-card-link .tournament-card-cta{
    pointer-events:none;
}
.news-card-link{
    color:inherit;
    text-decoration:none;
    display:block;
    cursor:pointer;
}
.news-card-link:hover{
    transform:translateY(-2px);
    border-color:rgba(0,229,255,.35);
}
.newspaper-story-link{
    display:block;
    color:#171717;
    text-decoration:none;
}
.newspaper-story-link:hover h2{
    text-decoration:underline;
}

/* Évite les badges qui se superposent en haut à droite des cartes tournoi. */
.tournament-full-card{
    position:relative;
    overflow:hidden;
}
.tournament-full-card .tournament-badges{
    position:static !important;
    display:flex !important;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:wrap;
    gap:8px;
    margin:0 0 14px 0;
}
.tournament-full-card .tournament-badges .tag{
    position:static !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    max-width:100%;
    white-space:normal;
    line-height:1.2;
    text-align:center;
}
.tournament-full-card .tournament-main{
    min-width:0;
}
.tournament-full-card h2{
    clear:both;
    margin-top:8px;
}
@media(max-width:760px){
    .tournament-full-card .tournament-badges{
        align-items:flex-start;
    }
}

/* V3.6.6 — Notifications individuelles */
.notification-clickable{
    color:inherit;
    text-decoration:none;
    cursor:pointer;
}
.notification-clickable:hover{
    transform:translateY(-2px);
    border-color:rgba(0,229,255,.38);
}
.notification-clickable.unread{
    box-shadow:inset 3px 0 0 #00e5ff;
}
.notification-detail{
    padding:28px;
}
.notification-detail p{
    white-space:normal;
    line-height:1.7;
}
.notification-actions,.notification-back{
    margin-top:20px;
}

/* V3.7.0 — Roles & HUD */
.role-admin-grid{display:grid;grid-template-columns:minmax(320px,.8fr) 1.2fr;gap:20px;align-items:start}
.permission-checks{display:grid;gap:10px;padding:16px;border:1px solid var(--line);border-radius:16px}
.permission-checks label{display:flex;align-items:center;gap:8px}
.hud-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hud-card{display:flex;flex-direction:column;min-height:320px}
.hud-card>img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;margin-bottom:14px}
.hud-card .btn{margin-top:auto}
@media(max-width:900px){.role-admin-grid,.hud-grid{grid-template-columns:1fr}}

/* V3.7.1 — HUD Center workflow */
.hud-hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hud-hub-button{min-height:260px;display:flex;flex-direction:column;justify-content:center}
.hud-hub-icon{font-size:2.2rem;margin-bottom:16px}
.hud-creator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hud-creator-owner{display:flex;align-items:center;gap:18px;min-height:150px}
.hud-creator-owner .creator-mini-avatar{width:70px;height:70px;flex:0 0 70px}
.hud-card .hud-image-link{display:block}
.hud-card .hud-image-link img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;margin-bottom:14px}
.hud-meta{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}
.hud-meta span{padding:6px 9px;border:1px solid var(--line);border-radius:999px;font-size:.72rem;color:var(--muted)}
.hud-code{margin-top:auto;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(0,0,0,.22)}
.hud-code small{display:block;color:var(--cyan);font-size:.65rem;margin-bottom:4px}
.hud-code strong{font-family:Orbitron;word-break:break-all}
.hud-review-card{display:grid;grid-template-columns:minmax(260px,.7fr) 1.3fr;gap:24px;margin-bottom:24px}
.hud-review-image img{width:100%;max-height:520px;object-fit:contain;border-radius:14px;background:#05070b}
.hud-review-image small{display:block;color:var(--muted);margin-top:8px}
@media(max-width:900px){.hud-hub-grid,.hud-creator-grid,.hud-review-card{grid-template-columns:1fr}}

/* V3.7.3 — Password visibility toggle */
.password-field{position:relative;width:100%}
.password-field>input{width:100%;padding-right:48px!important}
.password-eye{
    position:absolute;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:10px;
    background:transparent;
    color:var(--muted);
    cursor:pointer;
    font-size:16px;
    line-height:1;
}
.password-eye:hover,.password-eye:focus-visible{
    background:rgba(255,255,255,.06);
    color:var(--text);
    outline:none;
}

/* V3.7.6 — HUD admin split */
.hud-review-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.hud-review-tabs a{padding:12px 16px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--muted);font-weight:700}
.hud-review-tabs a.active{color:var(--text);border-color:rgba(0,229,255,.45);background:rgba(0,229,255,.08)}
.compact-title{margin-top:30px}

/* V3.8.0 — Marketplace comptes FF + tables admin compactes */
.btn-market{
    border:1px solid var(--line);
    background:linear-gradient(90deg,rgba(0,229,255,.12),rgba(242,30,147,.12));
}
.regedit-admin-compact table{table-layout:fixed}
.regedit-admin-compact th:nth-child(1){width:46%}
.regedit-admin-compact th:nth-child(2){width:14%}
.regedit-admin-compact th:nth-child(3){width:22%}
.regedit-admin-compact th:nth-child(4){width:18%}
.regedit-admin-compact td{vertical-align:middle}
.regedit-admin-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}
.regedit-admin-meta span,.file-pill{display:inline-block;padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.72rem;max-width:100%}
.compact-price{display:block;margin-top:6px;color:var(--muted)}
.seller-certified{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid rgba(0,229,255,.35);border-radius:999px;color:var(--cyan);font-size:.72rem;font-weight:800}
.account-market-grid,.seller-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.account-market-card{padding:0;overflow:hidden;position:relative}
.market-sold-stamp{
 position:absolute;z-index:8;left:50%;top:33%;transform:translate(-50%,-50%) rotate(-13deg);
 padding:12px 30px;border:5px solid #ff2b68;border-radius:10px;
 color:#ff2b68;background:rgba(8,10,14,.78);font-family:Orbitron,sans-serif;
 font-size:clamp(1.55rem,4vw,2.8rem);font-weight:900;letter-spacing:.16em;
 text-shadow:0 0 18px rgba(255,43,104,.45);box-shadow:0 0 0 3px rgba(255,43,104,.16),0 12px 35px rgba(0,0,0,.5);
 pointer-events:none;white-space:nowrap
}
.account-market-main{display:block;color:inherit;text-decoration:none}
.account-market-main>img,.account-market-card>a>img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.account-market-placeholder{aspect-ratio:16/10;display:grid;place-items:center;font-family:Orbitron;font-size:3rem;background:rgba(255,255,255,.04)}
.account-market-body{padding:18px}
.market-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.account-stats-mini{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
.account-stats-mini span{padding:5px 8px;border:1px solid var(--line);border-radius:999px;font-size:.7rem;color:var(--muted)}
.market-price{display:block;font-family:Orbitron;font-size:1.25rem;color:var(--text);margin:10px 0}
.market-price.big{font-size:1.7rem;text-align:right}
.market-card-actions{display:flex;gap:8px;padding:0 18px 18px;flex-wrap:wrap}
.account-market-card.sold{opacity:.82}
.market-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:24px}
.market-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px}
.market-gallery img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;border:1px solid var(--line)}
.market-detail-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:20px}
.seller-card{display:flex;flex-direction:column;gap:12px}
.seller-public-card,.seller-profile{color:inherit;text-decoration:none}
.seller-public-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.seller-stars{color:var(--muted)}
.seller-profile{display:flex;gap:18px;align-items:center;margin-bottom:26px}
.listing-image-admin{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.listing-image-admin-item{border:1px solid var(--line);border-radius:14px;padding:10px}
.listing-image-admin-item img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}
.market-admin-title{display:flex;gap:10px;align-items:center}
.market-admin-title img{width:52px;height:52px;object-fit:cover;border-radius:10px}
.market-admin-title small{display:block;color:var(--muted);margin-top:3px}
.market-chat-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:20px}
.market-chat{height:520px;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:12px}
.chat-bubble{max-width:78%;padding:12px 14px;border-radius:16px;border:1px solid var(--line)}
.chat-bubble.mine{align-self:flex-end;background:rgba(0,229,255,.08)}
.chat-bubble.theirs{align-self:flex-start;background:rgba(255,255,255,.035)}
.chat-bubble small,.chat-bubble time{display:block;color:var(--muted);font-size:.68rem}
.chat-bubble p{margin:5px 0}
.chat-system{align-self:center;width:min(90%,720px);padding:10px 12px;border:1px dashed var(--line);border-radius:12px;text-align:center;color:var(--muted);font-size:.82rem}
.chat-compose{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:10px}
.market-chat-tools{display:grid;gap:14px;align-content:start}
.market-chat-tools .card{display:grid;gap:12px}
.payment-mini{padding:10px;border:1px solid var(--line);border-radius:12px;margin-top:8px}
.proof-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.proof-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}
.chat-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:18px}
.payment-method-list{display:grid;gap:12px;margin-top:18px}
@media(max-width:1000px){
    .account-market-grid,.seller-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .market-detail-grid,.market-chat-layout{grid-template-columns:1fr}
    .listing-image-admin{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
    .account-market-grid,.seller-grid,.listing-image-admin{grid-template-columns:1fr}
    .market-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
    .market-detail-head,.chat-head{align-items:flex-start;flex-direction:column}
    .market-price.big{text-align:left}
    .chat-compose{grid-template-columns:1fr}
    .regedit-admin-compact table{min-width:720px}
}

/* V3.8.1 — Chat marketplace dynamique */
.chat-peer-status{display:flex;align-items:center;gap:8px;margin-top:8px;color:var(--muted);font-size:.78rem}
.presence-dot{width:9px;height:9px;border-radius:50%;background:#667085;box-shadow:0 0 0 3px rgba(102,112,133,.12)}
.presence-dot.online{background:#28d17c;box-shadow:0 0 0 3px rgba(40,209,124,.16)}
.chat-typing-text{color:var(--cyan);font-style:italic}
.realtime-chat-compose{grid-template-columns:auto minmax(0,1fr) auto;align-items:end}
.chat-plus{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);font-size:1.6rem;cursor:pointer;display:grid;place-items:center}
.chat-plus:hover{border-color:rgba(0,229,255,.55);background:rgba(0,229,255,.08)}
.chat-attachment-input{display:none}
.chat-input-zone{min-width:0}
.chat-input-zone textarea{width:100%;margin:0}
.chat-attachment-name{min-height:18px;padding:3px 6px 0;color:var(--cyan);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-send-error{min-height:20px;color:#ff5d86;font-size:.76rem;margin-top:6px}
.chat-bubble-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:7px}
.chat-read-state{font-size:.66rem;color:var(--muted);white-space:nowrap}
.chat-read-state.seen{color:var(--cyan)}
.chat-attachment{display:block;margin-top:9px;color:inherit;text-decoration:none}
.chat-attachment-image img{display:block;width:min(260px,100%);max-height:240px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
.chat-attachment-image span{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-attachment-file{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(0,0,0,.16)}
.chat-attachment-file span:last-child{min-width:0}
.chat-attachment-file strong,.chat-attachment-file small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-attachment-file small{color:var(--muted);margin-top:2px}
.chat-file-icon{font-size:1.25rem}
.chat-loading{text-align:center;color:var(--muted);padding:22px}
@media(max-width:680px){
  .realtime-chat-compose{grid-template-columns:auto minmax(0,1fr)}
  .realtime-chat-compose>.btn{grid-column:1/-1;width:100%}
  .chat-plus{width:42px;height:42px}
}

/* V3.8.2 — Navigation dynamique + responsive mobile compact */
.quick-nav{display:none}
.nav-logout{margin:0}
.nav-logout button{border:0;background:transparent;color:var(--muted);font:inherit;font-weight:700;cursor:pointer;padding:0}
.nav-logout button:hover{color:#fff}
.role-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.role-checkbox{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}
.role-checkbox input{width:auto;margin-top:4px}
.role-checkbox span{display:grid;gap:3px}
.role-checkbox small{color:var(--muted);line-height:1.35}

@media(max-width:1350px){
  .topbar{height:108px;padding:0 20px 42px;gap:14px}
  .brand{font-size:.96rem;gap:9px}
  .brand img{width:38px;height:38px}
  .menu-toggle{display:block;margin-left:auto;position:relative;z-index:3}
  .topbar>.btn,.home-topbar-form{display:none!important}
  .quick-nav{display:flex;position:absolute;left:0;right:0;bottom:0;height:42px;align-items:center;gap:8px;padding:0 14px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;border-top:1px solid rgba(255,255,255,.05);background:rgba(7,9,13,.94);z-index:1}
  .quick-nav::-webkit-scrollbar{display:none}
  .quick-nav a{flex:0 0 auto;color:var(--muted);text-decoration:none;font-size:.74rem;font-weight:750;padding:7px 10px;border:1px solid rgba(255,255,255,.08);border-radius:999px;white-space:nowrap}
  .quick-nav a:hover{color:white;border-color:rgba(0,229,255,.35)}
  .nav{display:none!important;position:absolute!important;top:64px!important;right:14px!important;left:auto!important;width:min(560px,calc(100vw - 28px));max-height:min(72vh,620px);overflow:auto;margin:0!important;padding:14px!important;background:rgba(8,10,15,.98)!important;border:1px solid var(--line);border-radius:18px;box-shadow:0 22px 70px rgba(0,0,0,.5);grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important;z-index:50}
  .nav.menu-open{display:grid!important}
  .nav>a,.nav .notice-bell{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.025);font-size:.79rem!important;color:#d7dbe5}
  .nav-logout{grid-column:1/-1}
  .nav-logout button{width:100%;min-height:42px;padding:10px 12px;border:1px solid rgba(255,90,120,.24);border-radius:12px;color:#ff8ba3;background:rgba(255,60,95,.06);text-align:center}
}

@media(max-width:760px){
  html{font-size:15px}
  .topbar{height:100px;padding:0 14px 38px}
  .brand{font-size:.86rem;letter-spacing:.7px}
  .brand img{width:34px;height:34px}
  .menu-toggle{font-size:21px;padding:8px}
  .quick-nav{height:38px;padding:0 10px;gap:6px}
  .quick-nav a{font-size:.68rem;padding:6px 9px}
  .nav{top:58px!important;right:8px!important;width:calc(100vw - 16px);padding:10px!important;gap:6px!important;border-radius:14px}
  .nav>a,.nav .notice-bell,.nav-logout button{min-height:38px;padding:8px 10px;font-size:.73rem!important}

  .hero{min-height:auto;padding:48px 18px 42px;grid-template-columns:1fr;gap:24px;text-align:center}
  .hero h1{font-size:clamp(2.2rem,10vw,3.15rem);letter-spacing:-1.8px;line-height:1.02;margin:12px 0}
  .hero p{font-size:.92rem;line-height:1.55;max-width:36rem}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:9px;margin:24px auto 28px;max-width:380px;width:100%}
  .hero-actions .btn{width:100%;padding:12px 16px;font-size:.86rem;min-height:44px}
  .social-proof{justify-content:center;gap:18px}
  .social-proof strong{font-size:1rem}.social-proof span{font-size:.68rem}
  .hero-card>img{width:180px;height:180px}
  .floating-badge{font-size:.66rem;padding:7px 9px;border-radius:9px}
  .ticker{padding:10px;font-size:.64rem;gap:22px}

  .section{padding:52px 18px}
  .section-heading{margin-bottom:24px;align-items:flex-start;flex-direction:column;gap:12px}
  .section h2,.newsletter h2{font-size:clamp(1.7rem,7vw,2.3rem);letter-spacing:-.5px}
  .section p,.card p,.academy-copy p,.rewards p,.news-card p{font-size:.86rem;line-height:1.55}
  .card{padding:17px;border-radius:18px}
  .creator-card{padding:22px}.avatar{width:70px;height:70px;font-size:1.4rem}
  .news-image{height:135px}.news-body{padding:16px}
  .course-card{padding:14px;gap:11px;grid-template-columns:auto 1fr}.course-card>b{display:none}.course-card>span{font-size:1rem}.course-card h3{font-size:.92rem}
  .tournament-card{grid-template-columns:84px 1fr;gap:14px;padding:16px;border-radius:18px}.tournament-visual{height:90px}.tournament-visual strong{font-size:2rem}.tournament-info h3{font-size:1.15rem}.tournament-card>.btn{grid-column:1/-1}
  .newsletter{margin:52px 14px;padding:24px 18px;gap:18px}.newsletter form{flex-direction:column}
  footer{padding:34px 18px;grid-template-columns:1fr}.footer-links{flex-wrap:wrap;gap:10px 14px}.footer-brand img{width:42px;height:42px}

  .page-shell{padding:34px 14px 64px}
  .page-title h1{font-size:clamp(1.75rem,8vw,2.4rem)}
  .modal-card{padding:20px;border-radius:18px}
  .btn{padding:11px 16px;font-size:.83rem}.btn-small{padding:8px 12px;font-size:.74rem}
  .account-market-grid,.seller-grid{gap:12px}.account-market-body{padding:14px}.market-card-actions{padding:0 14px 14px}.market-price{font-size:1.05rem}
  .market-chat{height:430px;padding:12px}.chat-bubble{max-width:88%;padding:10px 11px}.chat-system{font-size:.72rem}
  .admin-side{padding:7px;gap:3px}.admin-side a{padding:8px 10px;font-size:.75rem}
  .role-checkbox-grid{grid-template-columns:1fr}.role-checkbox{padding:10px}
}

@media(max-width:430px){
  .nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero{padding-left:14px;padding-right:14px}
  .hero h1{font-size:clamp(2rem,9.5vw,2.7rem)}
  .hero-card>img{width:150px;height:150px}
  .section{padding-left:14px;padding-right:14px}
  .card{padding:15px}
}

/* V3.9.0 — Multilingue automatique */
.lang-picker{display:flex;align-items:center;margin-left:8px}
.language-select{
    min-width:66px;height:38px;padding:0 28px 0 10px;
    border:1px solid var(--line);border-radius:999px;
    background:#0b0e13;color:var(--text);font:700 .72rem Inter,sans-serif;
    cursor:pointer;outline:none
}
.language-select:hover,.language-select:focus{border-color:rgba(0,229,255,.48)}
.sr-only{
    position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
    overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important
}
html[dir="rtl"] body{text-align:right}
html[dir="rtl"] .topbar,html[dir="rtl"] .nav,html[dir="rtl"] .hero-actions,
html[dir="rtl"] .section-heading,html[dir="rtl"] .split-actions{direction:rtl}
html[dir="rtl"] .brand,html[dir="rtl"] .chat-bubble,html[dir="rtl"] code{direction:ltr}
html[dir="rtl"] .market-price.big{text-align:left}
@media(max-width:900px){
    .lang-picker{margin:0}
    .language-select{height:36px;min-width:62px;font-size:.68rem}
}

/* V3.9.1 — Mobile : cartes légèrement réduites */
@media(max-width:680px){
  .home-page .card,
  .home-guest .card,
  .home-authenticated .card,
  .sensi-category-card,
  .account-market-card,
  .seller-public-card,
  .hud-card,
  .hud-hub-button,
  .hud-creator-owner{
    width:97%;
    margin-left:auto;
    margin-right:auto;
  }
  .home-guest .hero-actions .btn,
  .home-authenticated .hero-actions .btn{
    width:97%;
    margin-left:auto;
    margin-right:auto;
  }
}

/* V3.10.0 — Creator socials, sensi admin, redeem daily */
.creator-card-rich{position:relative;overflow:hidden}
.creator-card-open{position:absolute;inset:0;z-index:1}
.creator-card-head,.creator-card-rich>p,.creator-card-rich>.creator-stats{position:relative;z-index:2;pointer-events:none}
.creator-social-row{position:relative;z-index:4;display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.creator-social-link{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:56px;padding:8px 7px;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.18);color:var(--text);text-decoration:none;transition:.18s ease}
.creator-social-link:hover{transform:translateY(-2px);border-color:rgba(0,229,255,.55);background:rgba(0,229,255,.08)}
.creator-social-icon{font-size:1.15rem;font-weight:900;line-height:1}
.creator-social-link small{margin-top:5px;color:var(--cyan);font-weight:800;font-size:.68rem}
.sensi-platform-tabs{margin-bottom:18px}
.sensi-brand-buttons{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}
.sensi-brand-buttons .btn span{opacity:.7;margin-left:4px}
.sensi-model-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}
.sensi-admin-device{text-decoration:none;color:inherit;position:relative;min-height:160px}
.sensi-admin-device h3{margin:14px 0 10px}
.sensi-mini-values{display:flex;gap:6px;flex-wrap:wrap}
.sensi-mini-values span{padding:5px 7px;border:1px solid var(--line);border-radius:999px;font-size:.68rem;color:var(--muted)}
.sensi-admin-device small{display:block;margin-top:12px;color:var(--cyan)}
.sensi-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sensi-import-legacy{margin-top:22px}
.redeem-admin-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}
.redeem-admin-group{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:center}
.redeem-admin-group img{width:110px;height:110px;object-fit:cover;border-radius:14px}
.redeem-countdown-card{grid-column:1/-1;position:relative;overflow:hidden;min-height:230px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(10,12,18,.86);display:flex;align-items:center;justify-content:center;text-align:center;padding:28px;isolation:isolate}
.redeem-countdown-fx{position:absolute;inset:-35%;z-index:-1;filter:blur(42px);opacity:.75;background:conic-gradient(from 0deg,#00e5ff,#7d4dff,#ff2b68,#ffc400,#35d07f,#00e5ff);animation:redeemGlowSpin 10s linear infinite}
.redeem-countdown-card:after{content:'✦  ✧  ✦  ✨  ✦  ✧  ✦';position:absolute;inset:auto 0 14px;color:rgba(255,255,255,.22);font-size:1.1rem;letter-spacing:1.3rem;animation:redeemSpark 2.8s ease-in-out infinite}
.redeem-countdown-content{max-width:760px}
.redeem-clock{display:flex;justify-content:center;align-items:center;gap:10px;margin:18px auto 8px;font-family:Orbitron,sans-serif}
.redeem-clock span{min-width:78px;padding:12px 8px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(0,0,0,.34);font-size:clamp(1.4rem,4vw,2.5rem)}
.redeem-clock b{font-size:1.5rem;color:var(--cyan)}
.redeem-rarity-1{--rarity:#38d46b;--rarity2:#137c3b}
.redeem-rarity-2{--rarity:#2f8dff;--rarity2:#163e9a}
.redeem-rarity-3{--rarity:#a95cff;--rarity2:#5d1ca4}
.redeem-rarity-4{--rarity:#ffd23c;--rarity2:#a06c00}
.redeem-rarity-5{--rarity:#ff304f;--rarity2:#8d0c25}
.news-card[class*="redeem-rarity-"],.newspaper-story[class*="redeem-rarity-"],.newspaper-single[class*="redeem-rarity-"]{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--rarity) 65%,transparent);box-shadow:0 0 34px color-mix(in srgb,var(--rarity) 24%,transparent)}
.news-card[class*="redeem-rarity-"]:before,.newspaper-story[class*="redeem-rarity-"]:before,.newspaper-single[class*="redeem-rarity-"]:before{content:'';position:absolute;inset:-40%;z-index:0;background:radial-gradient(circle at 25% 30%,color-mix(in srgb,var(--rarity) 30%,transparent),transparent 20%),radial-gradient(circle at 75% 65%,color-mix(in srgb,var(--rarity2) 34%,transparent),transparent 25%);animation:redeemAura 5s ease-in-out infinite alternate;pointer-events:none}
.redeem-rarity-1 .redeem-particles:after{content:'✦';color:#38d46b}
.redeem-rarity-2 .redeem-particles:after{content:'✦  ✦';color:#2f8dff}
.redeem-rarity-3 .redeem-particles:after{content:'✦ ✨ ✦';color:#a95cff}
.redeem-rarity-4 .redeem-particles:after{content:'✨ ✦ ✨ ✦ ✨';color:#ffd23c}
.redeem-rarity-5 .redeem-particles:after{content:'💥 ✨ 🧨 ✨ 💥 ✨ 🧨';color:#ff304f;font-size:1.35rem}
.redeem-particles{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.redeem-particles:after{position:absolute;left:4%;right:4%;top:8%;text-align:center;letter-spacing:1.2rem;animation:redeemFireworks 2.1s ease-in-out infinite}
.redeem-rarity-5 .redeem-particles:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 15% 30%,#ffea00 0 2px,transparent 3px),radial-gradient(circle at 75% 20%,#00e5ff 0 2px,transparent 3px),radial-gradient(circle at 55% 72%,#ff2b68 0 3px,transparent 4px),radial-gradient(circle at 85% 75%,#7d4dff 0 2px,transparent 3px);background-size:70px 70px;animation:redeemBurst 1.4s linear infinite}
.news-photo img{width:100%;height:100%;object-fit:cover}
.news-card[class*="redeem-rarity-"]>*:not(.redeem-particles),.newspaper-story[class*="redeem-rarity-"]>*:not(.redeem-particles),.newspaper-single[class*="redeem-rarity-"]>*:not(.redeem-particles){position:relative;z-index:2}
@keyframes redeemGlowSpin{to{transform:rotate(360deg)}}
@keyframes redeemSpark{50%{opacity:.95;transform:translateY(-5px)}}
@keyframes redeemAura{from{transform:translate3d(-2%,-1%,0) scale(.96)}to{transform:translate3d(2%,1%,0) scale(1.04)}}
@keyframes redeemFireworks{0%,100%{opacity:.35;transform:translateY(8px) scale(.95)}50%{opacity:1;transform:translateY(-6px) scale(1.08)}}
@keyframes redeemBurst{to{background-position:70px 70px,-70px 70px,70px -70px,-70px -70px}}
@media(max-width:900px){.sensi-model-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.redeem-admin-groups{grid-template-columns:1fr}}
@media(max-width:680px){
  .creator-grid .creator-card-rich{width:70%;margin-left:auto;margin-right:auto;padding:14px;min-height:auto}
  .creator-grid .creator-card-rich .creator-avatar{width:54px;height:54px}
  .creator-grid .creator-card-rich h3{font-size:1rem}
  .creator-grid .creator-card-rich p{font-size:.78rem;line-height:1.45;margin:10px 0}
  .creator-grid .creator-card-rich .creator-stats{gap:7px}
  .creator-grid .creator-card-rich .creator-stat{padding:8px 6px}
  .creator-social-row{gap:6px;margin:10px 0}
  .creator-social-link{min-width:46px;padding:6px 5px}
  .creator-social-link small{font-size:.61rem}
  .sensi-model-admin-grid,.sensi-value-grid{grid-template-columns:1fr}
  .redeem-clock{gap:4px}.redeem-clock span{min-width:52px;padding:9px 5px;font-size:1.15rem}.redeem-clock b{font-size:1rem}
  .redeem-countdown-card{min-height:200px;padding:20px 14px}
}

/* V3.10.1 — Actualités mobile, recherche et profil créateur */
.admin-global-search{padding:8px 8px 14px;border-bottom:1px solid var(--line);margin-bottom:8px}
.admin-global-search input,.admin-context-search input,.creator-search-form input{
  width:100%;min-width:0;border:1px solid var(--line);border-radius:14px;
  background:#0b0e13;color:var(--text);padding:11px 13px;font:inherit
}
.admin-global-search small{display:block;color:var(--cyan);font-size:.67rem;margin-top:5px}
.admin-search-hidden{display:none!important}
.admin-context-search,.creator-search-form{
  display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:9px;
  align-items:center;margin:0 0 20px
}
.creator-profile-social-editor{
  margin:18px 0;padding:18px;border:1px solid var(--line);
  border-radius:18px;background:rgba(255,255,255,.025)
}
.creator-profile-social-editor>p{color:var(--muted);line-height:1.55}
.creator-social-edit-row{
  display:grid;grid-template-columns:150px minmax(0,1fr) 130px;gap:10px;
  align-items:center;margin-top:10px
}
.creator-social-edit-name{display:flex;align-items:center;gap:9px}
.sensi-search-brand{display:block;color:var(--cyan);font-size:.7rem;font-weight:800;margin-top:8px}
.redeem-manual-publish{margin-bottom:18px;border-color:rgba(255,196,0,.32)}
.redeem-manual-publish p{color:var(--muted);line-height:1.55}

@media(max-width:760px){
  /* Le compte à rebours reste distinct du journal : espace + double séparation. */
  .newspaper-grid>.redeem-countdown-card{
    margin-bottom:34px!important;
    position:relative;
  }
  .newspaper-grid>.redeem-countdown-card:before{
    content:"";position:absolute;left:0;right:0;bottom:-20px;height:7px;
    border-top:2px solid rgba(20,20,20,.72);
    border-bottom:1px solid rgba(20,20,20,.42);
  }
  .newspaper-grid>.newspaper-story{
    padding-top:8px;
    margin-top:10px;
    border-bottom:2px solid rgba(35,35,35,.48);
    padding-bottom:30px;
    margin-bottom:30px;
  }
  .newspaper-grid>.redeem-countdown-card + .newspaper-story{
    padding-top:18px;
  }
}
@media(max-width:680px){
  .admin-context-search,.creator-search-form{grid-template-columns:1fr 1fr}
  .admin-context-search input,.creator-search-form input{grid-column:1/-1}
  .creator-social-edit-row{grid-template-columns:1fr}
  .creator-social-edit-name{margin-top:7px}
  .creator-profile-social-editor{padding:13px}
}

/* V3.10.2 — recherche toujours visible dans chaque module de gestion */
.admin-main-search{margin:-4px 0 22px;padding:15px 16px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.025)}
.admin-main-search-row{display:flex;align-items:center;gap:12px;margin-top:8px}
.admin-main-search input{flex:1;min-width:0;border:1px solid var(--line);border-radius:13px;background:#090c11;color:var(--text);padding:12px 14px;font:inherit}
.admin-main-search-row span{color:var(--cyan);font-size:.72rem;white-space:nowrap}
.redeem-manual-publish{display:block!important;margin:0 0 20px;padding:22px;border:1px solid rgba(0,229,255,.32);box-shadow:0 0 28px rgba(0,229,255,.06)}
.redeem-manual-publish .btn{margin-top:8px}
.redeem-manual-publish small{display:block;margin-top:10px;color:var(--muted)}
@media(max-width:680px){.admin-main-search-row{align-items:stretch;flex-direction:column}.admin-main-search-row span{white-space:normal}}

/* V3.10.3 — Navigation principale épurée */
.site-nav-v2{height:78px;padding:0 5vw;gap:18px}
.site-nav-v2 .nav-primary{
  display:flex!important;align-items:center;gap:24px;margin-left:auto;min-width:0
}
.site-nav-v2 .nav-primary>a{white-space:nowrap}
.site-nav-v2 .icon-only-nav{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:38px;height:38px;padding:0;border:1px solid rgba(255,255,255,.08);
  border-radius:50%;font-size:1.05rem!important;color:#fff!important
}
.site-nav-v2 .icon-only-nav:hover{border-color:rgba(0,229,255,.4);background:rgba(255,255,255,.04)}
.site-nav-v2 .notice-dot,.site-nav-v2 .cart-badge{
  position:absolute;top:-5px;right:-6px;min-width:18px;height:18px;padding:0 5px;
  display:grid;place-items:center;border-radius:999px;background:var(--pink);color:#fff;
  font-size:.62rem;font-weight:900;line-height:1
}
.site-nav-v2 .menu-toggle{
  display:block!important;flex:0 0 auto;margin-left:2px;position:relative;z-index:82;
  background:transparent;border:0;color:#fff;font-size:22px;cursor:pointer;padding:8px
}
.site-nav-v2 .nav-more{
  display:none;position:absolute;top:68px;right:4vw;width:min(330px,calc(100vw - 28px));
  padding:12px;background:rgba(8,10,15,.985);border:1px solid var(--line);border-radius:16px;
  box-shadow:0 22px 70px rgba(0,0,0,.55);z-index:80
}
.site-nav-v2 .nav-more.menu-open{display:grid;gap:6px}
.site-nav-v2 .nav-more>a{
  padding:11px 12px;border:1px solid rgba(255,255,255,.06);border-radius:11px;
  color:#d8dce6;text-decoration:none;font-weight:700;font-size:.82rem
}
.site-nav-v2 .nav-more>a:hover{background:rgba(255,255,255,.04);color:#fff}
.site-nav-v2 .nav-more .lang-picker{margin:4px 0}
.site-nav-v2 .nav-more .language-select{width:100%}
.site-nav-v2 .nav-more .nav-logout{margin-top:3px}
.site-nav-v2 .nav-more .nav-logout button{
  width:100%;padding:11px 12px;border:1px solid rgba(255,82,110,.24);border-radius:11px;
  color:#ff8ca4;background:rgba(255,55,90,.06);text-align:center
}
.site-nav-v2 .quick-nav{display:none!important}

/* Tableau de bord : cartes de synthèse demandées */
.dashboard-summary-card small{display:block;color:var(--muted);margin:7px 0 10px}
.dashboard-no-access{color:var(--muted);font-size:.75rem}

/* Gestion des actualités */
.admin-news-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px}
.redeem-news-admin-note{margin-bottom:18px}

/* Redeem : couleurs renforcées */
.news-card[class*="redeem-rarity-"],
.newspaper-story[class*="redeem-rarity-"],
.newspaper-single[class*="redeem-rarity-"]{
  box-shadow:
    0 0 26px color-mix(in srgb,var(--rarity) 38%,transparent),
    0 0 70px color-mix(in srgb,var(--rarity2) 25%,transparent)!important;
}
.news-card[class*="redeem-rarity-"]:before,
.newspaper-story[class*="redeem-rarity-"]:before,
.newspaper-single[class*="redeem-rarity-"]:before{
  background:
    radial-gradient(circle at 18% 24%,color-mix(in srgb,var(--rarity) 55%,transparent),transparent 24%),
    radial-gradient(circle at 82% 28%,color-mix(in srgb,var(--rarity2) 52%,transparent),transparent 26%),
    radial-gradient(circle at 50% 78%,color-mix(in srgb,var(--rarity) 36%,transparent),transparent 28%)!important;
}
.redeem-rarity-1{--rarity:#20e06e;--rarity2:#0a9d49}
.redeem-rarity-2{--rarity:#1e9cff;--rarity2:#004de6}
.redeem-rarity-3{--rarity:#bd52ff;--rarity2:#7322d6}
.redeem-rarity-4{--rarity:#ffe34a;--rarity2:#ff9f00}
.redeem-rarity-5{--rarity:#ff244d;--rarity2:#ff7a00}

/* 5★ : vrais effets de feux d'artifice, sans les anciens emojis de grenade/explosion */
.redeem-rarity-5 .redeem-particles:after{
  content:""!important;inset:0!important;left:0!important;right:0!important;top:0!important;
  background:
    radial-gradient(circle at 18% 26%,#fff 0 2px,#ff315f 3px 4px,transparent 5px),
    radial-gradient(circle at 18% 26%,transparent 0 18px,#ff315f 19px 21px,transparent 22px),
    radial-gradient(circle at 76% 22%,#fff 0 2px,#29e8ff 3px 4px,transparent 5px),
    radial-gradient(circle at 76% 22%,transparent 0 22px,#29e8ff 23px 25px,transparent 26px),
    radial-gradient(circle at 55% 66%,#fff 0 2px,#ffe44c 3px 4px,transparent 5px),
    radial-gradient(circle at 55% 66%,transparent 0 25px,#ffe44c 26px 28px,transparent 29px),
    radial-gradient(circle at 88% 72%,#fff 0 2px,#a95cff 3px 4px,transparent 5px),
    radial-gradient(circle at 88% 72%,transparent 0 17px,#a95cff 18px 20px,transparent 21px);
  background-size:100% 100%;
  animation:redeemFireworkExplode 1.75s ease-out infinite!important;
  opacity:.95
}
.redeem-rarity-5 .redeem-particles:before{
  content:""!important;position:absolute;inset:0;
  background:
    conic-gradient(from 0deg at 28% 45%,transparent 0 7%,#ff315f 8% 9%,transparent 10% 17%,#ffe44c 18% 19%,transparent 20% 27%,#29e8ff 28% 29%,transparent 30%),
    conic-gradient(from 18deg at 68% 42%,transparent 0 8%,#29e8ff 9% 10%,transparent 11% 18%,#a95cff 19% 20%,transparent 21% 28%,#ff7a00 29% 30%,transparent 31%);
  -webkit-mask:radial-gradient(circle,#000 0 3px,transparent 4px 19px,#000 20px 21px,transparent 22px);
  mask:radial-gradient(circle,#000 0 3px,transparent 4px 19px,#000 20px 21px,transparent 22px);
  animation:redeemFireworkSpin 2.2s linear infinite;
  opacity:.85
}
@keyframes redeemFireworkExplode{
  0%{transform:scale(.55);opacity:.1;filter:brightness(.8)}
  35%{transform:scale(1.02);opacity:1;filter:brightness(1.45)}
  72%{transform:scale(1.18);opacity:.68}
  100%{transform:scale(1.3);opacity:.08}
}
@keyframes redeemFireworkSpin{
  0%{transform:scale(.7) rotate(0deg);opacity:.15}
  45%{transform:scale(1.04) rotate(8deg);opacity:.95}
  100%{transform:scale(1.22) rotate(18deg);opacity:.05}
}

@media(max-width:1180px){
  .site-nav-v2{height:106px;padding:0 14px 38px;gap:9px}
  .site-nav-v2 .brand{flex:0 0 auto}
  .site-nav-v2 .nav-primary{
    position:absolute;left:0;right:0;bottom:0;height:38px;padding:0 10px;
    gap:6px;overflow-x:auto;scrollbar-width:none;border-top:1px solid rgba(255,255,255,.05);
    background:rgba(7,9,13,.94)
  }
  .site-nav-v2 .nav-primary::-webkit-scrollbar{display:none}
  .site-nav-v2 .nav-primary>a{
    flex:0 0 auto;font-size:.68rem!important;padding:6px 9px;border:1px solid rgba(255,255,255,.08);
    border-radius:999px;min-height:28px;display:flex;align-items:center
  }
  .site-nav-v2 .nav-primary .icon-only-nav{width:30px;height:30px;padding:0;min-height:30px}
  .site-nav-v2 .menu-toggle{margin-left:auto}
  .site-nav-v2 .nav-more{top:58px;right:8px}
}

/* V3.10.4 — Logos réseaux sociaux fournis par Miaou FF */
.social-network-logo{
  display:block;width:34px;height:34px;object-fit:contain;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.24))
}
.social-network-fallback{
  display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
  border:1px solid var(--line);background:#11151c;color:#fff;font-size:.66rem;font-weight:900
}
.creator-social-link{
  position:relative;z-index:6;display:flex;flex-direction:column;align-items:center;
  justify-content:flex-start;gap:5px;min-width:48px;text-decoration:none;color:var(--muted)
}
.creator-social-link:hover{transform:translateY(-2px);color:#fff}
.creator-social-link small{font-size:.68rem;font-weight:800;color:var(--cyan)}
.creator-social-row{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}
.creator-social-edit-name .social-network-logo{width:30px;height:30px}

.social-proof-networks{align-items:flex-start}
.home-social-link{
  display:flex!important;flex-direction:column;align-items:center;gap:4px;
  min-width:62px;text-decoration:none;color:inherit;position:relative;z-index:5
}
.home-social-link .social-network-logo{width:38px;height:38px;margin-bottom:2px}
.home-social-link strong{font-family:Orbitron;font-size:1.12rem}
.home-social-link span:not(.social-network-fallback){color:var(--muted);font-size:.78rem}
a.home-social-link:hover .social-network-logo{transform:translateY(-2px) scale(1.07)}
.home-social-disabled{opacity:.92}

@media(max-width:680px){
  .social-network-logo{width:30px;height:30px}
  .home-social-link .social-network-logo{width:32px;height:32px}
  .social-proof-networks{gap:13px}
  .home-social-link{min-width:50px}
  .home-social-link strong{font-size:.9rem}
  .home-social-link span:not(.social-network-fallback){font-size:.66rem}
}

/* V3.10.5 — Aperçu Actualités de l'accueil uniquement */
.home-news-section .home-redeem-countdown{
  margin:0 0 34px;
  padding-bottom:30px;
  border-bottom:1px solid rgba(255,255,255,.13);
  position:relative;
}
.home-news-section .home-redeem-countdown:after{
  content:"";position:absolute;left:8%;right:8%;bottom:-2px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,229,255,.38),rgba(242,30,147,.38),transparent)
}
.home-news-section .home-redeem-countdown .redeem-countdown-card{
  margin:0!important;width:100%;
}
.home-news-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;
}
.home-news-card{
  min-width:0;overflow:hidden;border-radius:20px;
  background:linear-gradient(145deg,rgba(27,30,39,.98),rgba(15,18,25,.98));
}
.home-news-card .news-image{height:170px}
.home-news-card .news-image img{width:100%;height:100%;object-fit:cover}
.home-news-card .news-body{min-height:170px}
.home-redeem-news-card{
  border-color:color-mix(in srgb,var(--rarity) 62%,rgba(255,255,255,.12))!important;
  background:
    radial-gradient(circle at 85% 12%,color-mix(in srgb,var(--rarity2) 18%,transparent),transparent 35%),
    linear-gradient(145deg,rgba(30,31,40,.98),rgba(15,18,25,.98))!important;
  box-shadow:
    0 0 24px color-mix(in srgb,var(--rarity) 30%,transparent),
    0 16px 40px rgba(0,0,0,.26)!important;
}
.home-general-news-card{
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 14px 34px rgba(0,0,0,.2);
}
@media(max-width:900px){
  .home-news-grid{grid-template-columns:1fr 1fr}
  .home-redeem-news-card{grid-column:1/-1}
}
@media(max-width:680px){
  .home-news-section .home-redeem-countdown{
    margin-bottom:30px;padding-bottom:26px
  }
  .home-news-grid{grid-template-columns:1fr;gap:20px}
  .home-redeem-news-card{grid-column:auto}
  .home-news-card{width:97%;margin-left:auto;margin-right:auto}
  .home-news-card .news-image{height:150px}
}

/* V3.11.0 — Phase 12.1 commandes et bibliothèque */
.order-admin-form{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(180px,1.4fr) auto;gap:8px;align-items:center;min-width:430px}
.order-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.75rem;font-weight:900;border:1px solid var(--line)}
.order-status.paid{box-shadow:0 0 18px rgba(0,229,255,.15)}
.order-status.cancelled,.order-status.refunded{opacity:.72}
@media(max-width:680px){.order-admin-form{grid-template-columns:1fr;min-width:240px}}

/* V3.11.1 — accès permanent après achat */
.owned-content-banner{
  margin:10px 0 14px;padding:11px 13px;border:1px solid rgba(0,229,255,.32);
  border-radius:13px;background:rgba(0,229,255,.07);color:var(--cyan);font-weight:800
}
.compact-owned{display:inline-flex;margin:0;padding:8px 10px;font-size:.74rem}

/* V3.11.2 — centre Mes téléchargements */
.download-center-card .download-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin:10px 0 14px;font-size:.78rem;opacity:.75}
.download-center-card .card-actions{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:680px){.download-center-card .card-actions .btn{flex:1 1 100%}}

/* V3.11.4 — vidéos premium achetées */
.video-purchase-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}
.video-frame video{width:100%;height:100%;display:block;background:#05070a;object-fit:contain}
@media(max-width:680px){.video-purchase-actions .btn{flex:1 1 100%}}

/* V3.11.7 — liens contenus achetés */
.disabled-action{opacity:.52;cursor:not-allowed;pointer-events:none}

/* V3.12.0 — Phase 12.2 : favoris et historique personnel */
.content-favorite-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}
.favorite-form{display:inline-flex;margin:0}
.favorite-toggle{white-space:nowrap}
.personal-content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.personal-content-card{position:relative;display:flex;flex-direction:column;min-height:290px}
.personal-content-card h3{margin:8px 0}
.personal-content-card p{color:var(--muted);line-height:1.55}
.personal-content-card small{color:var(--muted);margin-top:auto;padding-top:12px}
.personal-content-card .card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.personal-content-image{width:100%;height:150px;object-fit:cover;border-radius:14px;margin-bottom:14px}
.personal-content-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:rgba(0,229,255,.08);font-size:1.3rem;margin-bottom:12px}
.hud-card{scroll-margin-top:120px}
.asset-card-item{scroll-margin-top:120px}
@media(max-width:960px){.personal-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){
  .personal-content-grid{grid-template-columns:1fr}
  .personal-content-card{min-height:0;width:97%;margin-inline:auto}
  .personal-content-card .card-actions .btn,.personal-content-card .card-actions form{flex:1 1 100%}
  .personal-content-card .card-actions form .btn{width:100%}
}

/* V3.13.0 — Phase 12.3 : journal d'administration */
.audit-filters{
  display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;
  align-items:end;margin:0 0 18px;padding:18px
}
.audit-filters label{display:grid;gap:7px;font-size:.78rem;font-weight:800;color:var(--muted)}
.audit-filters input,.audit-filters select{
  width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;
  background:#090c11;color:var(--text);padding:11px 12px;font:inherit
}
.audit-search-wide{grid-column:span 2}
.audit-filters .hero-actions{grid-column:1/-1;margin:0}
.audit-summary{margin:0 0 12px;color:var(--muted);font-size:.82rem}
.audit-table td{vertical-align:top}
.audit-details{min-width:220px}
.audit-details summary{cursor:pointer;color:var(--cyan);font-weight:800}
.audit-details p{margin:7px 0;max-width:520px;word-break:break-word}
.audit-details dl{display:grid;grid-template-columns:minmax(90px,.6fr) 1.5fr;gap:5px 10px;margin:10px 0}
.audit-details dt{color:var(--muted);font-size:.72rem;font-weight:800}
.audit-details dd{margin:0;font-size:.76rem;word-break:break-word}
@media(max-width:1100px){.audit-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-search-wide{grid-column:span 2}}
@media(max-width:680px){.audit-filters{grid-template-columns:1fr}.audit-search-wide{grid-column:auto}.audit-details{min-width:180px}}

/* V3.15.0 — Phase 12.5 : accueil personnalisé */
.home-personalized{padding-top:34px;padding-bottom:18px}.home-personal-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.home-personal-row{margin-top:22px}.home-personal-row-title{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}.home-personal-row-title strong{font-family:Orbitron,sans-serif;font-size:.92rem}.home-personal-row-title small{color:var(--muted)}.home-personal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.home-personal-card{min-width:0;display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(14,17,22,.78);color:var(--text);text-decoration:none;transition:.2s ease}.home-personal-card:hover{transform:translateY(-2px);border-color:rgba(0,229,255,.45);background:rgba(18,23,30,.94)}.home-personal-card img,.home-personal-icon{width:64px;height:64px;flex:0 0 64px;border-radius:13px;object-fit:cover}.home-personal-icon{display:grid;place-items:center;background:linear-gradient(135deg,rgba(0,229,255,.13),rgba(255,0,140,.13));font-size:1.35rem}.home-personal-card div:last-child{min-width:0;display:grid;gap:4px}.home-personal-card .eyebrow{font-size:.58rem}.home-personal-card strong,.home-personal-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-personal-card strong{font-size:.84rem}.home-personal-card small{color:var(--muted);font-size:.68rem}.home-personal-empty{padding:18px;margin-top:16px}.home-personal-empty p{margin-bottom:0;color:var(--muted)}@media(max-width:980px){.home-personal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.home-personalized{padding-top:22px}.home-personal-grid{grid-template-columns:1fr;gap:9px}.home-personal-card{width:97%;margin-inline:auto;padding:10px}.home-personal-card img,.home-personal-icon{width:54px;height:54px;flex-basis:54px}.home-personal-row-title{width:97%;margin-inline:auto;margin-bottom:9px}}

/* V3.16.0 — Tournois terminés / gagnants */
.tournament-finished-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0 30px}
.finished-tournament-card{display:flex;flex-direction:column;gap:8px}
.finished-tournament-card .split-actions{margin-top:auto}
.tournament-result-editor{padding:20px;margin-bottom:22px}
#winnerRows{display:grid;gap:14px;margin:16px 0}
.winner-entry{border:1px solid var(--line);border-radius:16px;padding:16px;background:rgba(255,255,255,.02);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.winner-entry-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px}
.winner-entry label{display:grid;gap:7px}
.winner-entry label:nth-of-type(3),.winner-entry label:nth-of-type(4){grid-column:1/-1}
.winner-entry input,.winner-entry textarea{width:100%;min-width:0}
@media(max-width:760px){.tournament-finished-grid{grid-template-columns:1fr}.winner-entry{grid-template-columns:1fr}.winner-entry label{grid-column:1!important}}

/* V3.16.4 — galerie images des résultats de tournoi */
.tournament-header-picker{margin:14px 0 4px;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.02)}
.tournament-header-picker label{display:grid;gap:7px;font-weight:800}
.tournament-header-picker select{width:100%;margin-top:4px}
.tournament-header-picker small{display:block;margin-top:8px;color:var(--muted);line-height:1.45}
.tournament-result-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(0,0,0,.25)}
.tournament-result-gallery a{display:block;border-radius:8px;overflow:hidden;background:#ddd;aspect-ratio:16/10}
.tournament-result-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease}
.tournament-result-gallery a:hover img{transform:scale(1.025)}
@media(max-width:680px){.tournament-result-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}}

/* V3.17.0 — Phase 12.6 : centre de notifications */
.notification-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px}
.notification-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.notification-head-actions form{margin:0}
.notification-filters{display:flex;gap:8px;overflow-x:auto;padding:2px 0 14px;margin-bottom:8px;scrollbar-width:thin}
.notification-filters a{flex:0 0 auto;padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);text-decoration:none;font-weight:800;font-size:.78rem}
.notification-filters a.active{color:var(--text);border-color:rgba(0,229,255,.45);background:rgba(0,229,255,.08)}
.notification-filters a span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--pink);color:#fff;font-size:.66rem;margin-left:4px}
.notification-row-main{min-width:0}
.notification-row-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.notification-unread-pill{font-size:.64rem;font-weight:900;padding:4px 7px;border-radius:999px;background:rgba(255,0,140,.16);color:#ff4fa6}
.notification-row.unread{box-shadow:inset 3px 0 0 var(--cyan)}
@media(max-width:680px){
  .notification-page-head{display:grid;align-items:start}
  .notification-head-actions{width:100%}
  .notification-head-actions form,.notification-head-actions .btn{flex:1 1 100%;width:100%}
  .notification-row{width:97%;margin-inline:auto;padding:13px;gap:10px}
  .notification-row p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .notification-filters{width:97%;margin-inline:auto}
}

/* V3.18.0 — Phase 12.7 : recherche globale */
.global-search-form{margin-bottom:20px}
.global-search-box{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:18px;background:rgba(12,15,20,.82)}
.global-search-box>span{font-size:1.2rem;padding-left:6px}
.global-search-box input{width:100%;min-width:0;border:0;background:transparent;color:var(--text);font:inherit;padding:10px 4px;outline:none}
.global-search-tabs{display:flex;gap:8px;overflow-x:auto;padding:10px 0 2px}
.global-search-tabs button{flex:0 0 auto;border:1px solid var(--line);background:transparent;color:var(--muted);padding:8px 12px;border-radius:999px;font:inherit;font-size:.75rem;font-weight:800;cursor:pointer}
.global-search-tabs button.active{color:var(--text);border-color:rgba(0,229,255,.45);background:rgba(0,229,255,.08)}
.search-result-head{display:flex;gap:8px;align-items:baseline;margin:14px 0;color:var(--muted)}
.search-result-head strong{color:var(--text)}
.global-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.global-search-card{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;text-decoration:none;color:var(--text);min-width:0}
.global-search-card img,.global-search-icon{width:72px;height:72px;border-radius:14px;object-fit:cover}
.global-search-icon{display:grid;place-items:center;background:linear-gradient(135deg,rgba(0,229,255,.1),rgba(255,0,140,.1));font-size:1.5rem}
.global-search-card h3{margin:4px 0;font-size:.95rem}
.global-search-card p{margin:0;color:var(--muted);font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-empty{padding:22px}
@media(max-width:800px){.global-search-results{grid-template-columns:1fr}}
@media(max-width:680px){
  .global-search-box{grid-template-columns:auto 1fr;padding:8px}.global-search-box .btn{grid-column:1/-1;width:100%}
  .global-search-results{gap:9px}.global-search-card{width:97%;margin-inline:auto;grid-template-columns:56px 1fr auto;padding:11px}
  .global-search-card img,.global-search-icon{width:56px;height:56px}.global-search-card .text-link{font-size:.68rem}
}

/* V3.19.0 — Phase 12.8 : signalements & modération */
.report-content-btn{opacity:.78}.report-content-btn:hover{opacity:1}
.report-form{display:grid;gap:14px;padding:20px}.report-form label,.report-review-form label{display:grid;gap:7px}
.report-form select,.report-form textarea,.report-review-form textarea{width:100%}
.report-review-card{padding:20px;margin-bottom:18px}.report-details{padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.02);margin:12px 0}
.report-screenshot{display:block;max-width:520px;margin:12px 0}.report-screenshot img{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:12px;border:1px solid var(--line)}
.report-review-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
@media(max-width:680px){.report-form,.report-review-card{width:97%;margin-inline:auto;padding:14px}}

/* V3.19.1 — avertissement signalement abusif */
.abuse-warning-box{margin-top:14px;padding:14px;border:1px solid rgba(255,176,0,.28);border-radius:14px;background:rgba(255,176,0,.05)}
.abuse-warning-box .check-line{display:flex;grid-template-columns:none;align-items:flex-start;gap:9px;font-weight:800}
.abuse-warning-box .check-line input{width:auto;margin-top:3px}
#abuseWarningFields{margin-top:12px}
#abuseWarningFields[hidden]{display:none}
#abuseWarningFields small{display:block;margin-top:7px;color:var(--muted);line-height:1.45}

/* V3.20.0 — Phase 12.9 : sanctions & historique de modération */
.user-moderation-panel,.user-moderation-history{margin-top:18px;padding:18px}
.user-moderation-panel .stack-form{margin-top:14px}
.user-moderation-history .data-table-wrap{margin-top:12px}
#moderationDaysWrap[hidden]{display:none}
@media(max-width:680px){.user-moderation-panel,.user-moderation-history{width:97%;margin-inline:auto;margin-top:14px}}

/* V3.21.1 — Phase 13.1 : performance & confort de navigation */
.back-to-top{
  position:fixed;right:18px;bottom:18px;z-index:80;width:42px;height:42px;
  border:1px solid var(--line);border-radius:50%;background:rgba(10,13,18,.92);
  color:var(--text);font:800 1.1rem/1 sans-serif;display:grid;place-items:center;
  opacity:0;pointer-events:none;transform:translateY(8px);transition:.18s ease;
  box-shadow:0 8px 28px rgba(0,0,0,.24)
}
.back-to-top.show{opacity:1;pointer-events:auto;transform:none}
.section{content-visibility:auto;contain-intrinsic-size:1px 720px}
@media(max-width:680px){
  .back-to-top{right:12px;bottom:12px;width:38px;height:38px}
  .news-card,.creator-card,.account-market-card,.hud-card,.product-card{max-width:97%;margin-inline:auto}
  .page-shell{overflow-x:hidden}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .back-to-top{transition:none}
}

/* V3.22.0 — Phase 13.2 : accessibilité & navigation clavier */
.skip-link{
  position:fixed;left:12px;top:10px;z-index:9999;padding:10px 14px;border-radius:10px;
  background:#fff;color:#05070a;font-weight:900;text-decoration:none;
  transform:translateY(-160%);transition:transform .15s ease
}
.skip-link:focus{transform:translateY(0)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid rgba(0,229,255,.8)!important;
  outline-offset:3px!important
}
.form-message[role="alert"],.form-message[role="status"]{scroll-margin-top:110px}
.data-table-wrap[tabindex="0"]:focus-visible{border-radius:12px}
.nav-more.open{display:flex}
@media(max-width:680px){
  button,.btn,.nav a,.nav-more a{min-height:42px}
  input,select,textarea{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* V3.23.0 — Phase 13.3 : repères de navigation */
.breadcrumbs{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin:0 auto 16px;max-width:1200px;padding:0 2px;
  color:var(--muted);font-size:.72rem
}
.breadcrumbs a{color:var(--muted);text-decoration:none}
.breadcrumbs a:hover{color:var(--text)}
.breadcrumbs [aria-current="page"]{color:var(--text);font-weight:800}
@media(max-width:680px){
  .breadcrumbs{width:97%;margin-bottom:12px;font-size:.68rem;overflow:hidden}
  .breadcrumbs [aria-current="page"]{max-width:54vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}

/* V3.23.1 — cartes entièrement cliquables */
.whole-card-clickable{
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.whole-card-clickable:hover{
  transform:translateY(-2px);
  border-color:rgba(0,229,255,.34);
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}
.whole-card-clickable:active{transform:translateY(0)}
.whole-card-clickable a{position:relative;z-index:2}
@media(prefers-reduced-motion:reduce){
  .whole-card-clickable{transition:none}
  .whole-card-clickable:hover{transform:none}
}

/* V3.24.0 — Phase 13.4 : centre d'aide & support */
.support-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px}
.support-new-ticket,.support-ticket-list,.admin-support-open{padding:18px}
.support-new-ticket{display:grid;gap:12px}
.support-new-ticket label,.support-reply label{display:grid;gap:7px}
.support-ticket-list{display:flex;flex-direction:column;gap:8px}
.support-ticket-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:13px;text-decoration:none;color:var(--text)}
.support-ticket-row div{display:grid;gap:4px}.support-ticket-row small{color:var(--muted)}
.support-thread{display:grid;gap:10px;margin:16px 0}
.support-message{max-width:86%;padding:13px 15px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.025)}
.support-message.member{justify-self:start}.support-message.staff{justify-self:end;background:rgba(0,229,255,.06);border-color:rgba(0,229,255,.2)}
.support-message-meta{display:flex;justify-content:space-between;gap:12px}.support-message small{color:var(--muted)}
.support-reply,.support-admin-reply{display:grid;gap:10px;padding:16px;margin-top:14px}
.support-admin-reply textarea{width:100%}
@media(max-width:800px){.support-grid{grid-template-columns:1fr}}
@media(max-width:680px){.support-new-ticket,.support-ticket-list,.admin-support-open{width:97%;margin-inline:auto;padding:14px}.support-message{max-width:94%}}

/* V3.25.0 — Phase 13.5 : centre d'aide / base de connaissances */
.help-search{margin-bottom:20px}.help-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.help-article-card{display:flex;flex-direction:column;gap:9px}.help-article-card .text-link{margin-top:auto}
.help-article-detail{padding:24px}.help-article-detail h1{margin:8px 0 12px}.help-lead{font-size:1.05rem;color:var(--muted)}
.help-body{margin-top:18px;line-height:1.75;white-space:normal}.help-article-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.help-contact-cta{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:22px;padding:20px}
.help-admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px;margin-bottom:18px}.help-admin-form label{display:grid;gap:7px}.help-admin-form label:nth-of-type(4),.help-admin-form label:nth-of-type(5),.help-admin-form .hero-actions{grid-column:1/-1}
@media(max-width:980px){.help-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.help-article-grid{grid-template-columns:1fr}.help-article-card,.help-article-detail,.help-contact-cta{width:97%;margin-inline:auto}.help-contact-cta{display:grid}.help-admin-form{grid-template-columns:1fr}.help-admin-form label,.help-admin-form .hero-actions{grid-column:1!important}}

/* V3.26.0 — Phase 13.6 : stabilisation & diagnostic */
.diagnostic-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.diagnostic-summary .card{display:grid;gap:4px;padding:16px}.diagnostic-summary strong{font-size:1.65rem}
.diagnostic-counts{padding:18px;margin-bottom:14px}.diagnostic-count-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.diagnostic-count-grid>div{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px}
.diagnostic-count-grid small{color:var(--muted)}.diagnostic-count-grid strong{font-size:1.2rem}
.diagnostic-list{display:grid;gap:8px}.diagnostic-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px}
.diagnostic-row p{margin:4px 0 0;color:var(--muted);font-size:.82rem}.diagnostic-dot{width:10px;height:10px;border-radius:50%;background:#8b949e}
.diagnostic-ok .diagnostic-dot{background:#36d399}.diagnostic-warn .diagnostic-dot{background:#f5c451}.diagnostic-error .diagnostic-dot{background:#ff5d73}
.diagnostic-note{margin-top:14px;padding:18px}
@media(max-width:900px){.diagnostic-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.diagnostic-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.diagnostic-summary .card{padding:11px}.diagnostic-summary strong{font-size:1.25rem}.diagnostic-count-grid{grid-template-columns:1fr 1fr}.diagnostic-row{grid-template-columns:auto 1fr}.diagnostic-row>.tag{grid-column:2}.diagnostic-note,.diagnostic-counts,.diagnostic-row{width:97%;margin-inline:auto}}

/* V3.29.0 — Phase 13.9 : contrôle pré-production */
.preflight-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;border-radius:18px;margin-bottom:14px;border:1px solid var(--line)}
.preflight-hero.ready{background:rgba(54,211,153,.06);border-color:rgba(54,211,153,.24)}
.preflight-hero.blocked{background:rgba(255,93,115,.06);border-color:rgba(255,93,115,.24)}
.preflight-hero h2{margin:6px 0}.preflight-hero p{margin:0;color:var(--muted)}
.preflight-score{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:1.6rem;font-weight:900;border:1px solid currentColor}
.preflight-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.preflight-summary .card{padding:14px;display:grid;gap:4px}.preflight-summary strong{font-size:1.35rem}
.preflight-list{display:grid;gap:8px}.preflight-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px}
.preflight-row p{margin:4px 0;color:var(--muted);font-size:.82rem}.preflight-row small{color:var(--muted)}
.preflight-indicator{width:10px;height:10px;border-radius:50%;background:#8b949e}
.preflight-pass .preflight-indicator{background:#36d399}.preflight-warn .preflight-indicator{background:#f5c451}.preflight-fail .preflight-indicator{background:#ff5d73}
.preflight-final{margin-top:14px;padding:18px}
@media(max-width:680px){.preflight-hero,.preflight-final,.preflight-row{width:97%;margin-inline:auto}.preflight-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.preflight-summary .card{padding:10px}.preflight-row{grid-template-columns:auto 1fr}.preflight-row>.tag{grid-column:2}.preflight-score{width:46px;height:46px}}

/* V3.30.0 — Phase 14.0 : paiements & droits d'achat */
.order-status.paid,.owned-content-banner{font-weight:800}
.payment-owned-note{padding:14px;border:1px solid rgba(54,211,153,.24);border-radius:14px;background:rgba(54,211,153,.06)}

/* V3.31.0 — Phase 14.1 : bibliothèque & téléchargements */
.download-center-card .card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:auto}
.download-center-card .card-actions:has(> :only-child){grid-template-columns:1fr}
.download-center-card .btn-card{width:100%}
@media(max-width:680px){.download-center-card .card-actions{grid-template-columns:1fr}}

/* V3.32.0 — Roue de la Chance & cadeaux Redeem */
.monthly-lucky-card{grid-column:1/-1;position:relative;overflow:hidden;border-radius:22px;padding:22px;border:1px solid rgba(181,95,255,.34);background:radial-gradient(circle at 20% 20%,rgba(0,229,255,.12),transparent 34%),radial-gradient(circle at 80% 70%,rgba(255,0,140,.13),transparent 40%),rgba(12,15,20,.96)}
.monthly-wheel-fx{position:absolute;inset:-40%;background:conic-gradient(from 0deg,transparent,rgba(0,229,255,.08),transparent,rgba(255,0,140,.09),transparent);animation:monthlyFx 9s linear infinite}
.monthly-wheel-layout{position:relative;display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:28px;align-items:center}
.monthly-wheel-wrap{position:relative;display:grid;place-items:center;min-height:330px}.monthly-wheel-pointer{position:absolute;top:2px;z-index:4;font-size:2rem;color:#fff;text-shadow:0 0 14px #ff008c}
.monthly-wheel{position:relative;width:min(310px,78vw);aspect-ratio:1;border-radius:50%;border:8px solid rgba(255,255,255,.85);background:conic-gradient(#00e5ff 0 30deg,#ff008c 30deg 60deg,#7c4dff 60deg 90deg,#ffb300 90deg 120deg,#00d084 120deg 150deg,#ff5d73 150deg 180deg,#00e5ff 180deg 210deg,#ff008c 210deg 240deg,#7c4dff 240deg 270deg,#ffb300 270deg 300deg,#00d084 300deg 330deg,#ff5d73 330deg 360deg);box-shadow:0 0 38px rgba(0,229,255,.22),inset 0 0 40px rgba(0,0,0,.28);transition:transform 2.2s cubic-bezier(.16,.78,.18,1)}
.monthly-wheel-center{position:absolute;inset:35%;display:grid;place-items:center;text-align:center;border-radius:50%;background:#080b10;border:5px solid #fff;font-family:Orbitron,sans-serif;font-weight:900;line-height:1.05;z-index:3}.monthly-wheel-center b{color:#ff008c}
.monthly-wheel-labels{position:absolute;inset:0}.monthly-wheel-labels span{position:absolute;left:43%;top:43%;width:44%;transform-origin:15% 50%;font-size:.58rem;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;text-shadow:0 1px 3px #000;pointer-events:none}
.monthly-wheel-info h2{margin:8px 0}.monthly-wheel-info p{color:var(--muted);max-width:760px}
.monthly-clock{display:flex;align-items:center;gap:8px;margin:18px 0 6px;font-family:Orbitron,sans-serif}.monthly-clock span{min-width:58px;padding:11px 8px;text-align:center;border-radius:12px;background:rgba(255,255,255,.07);font-size:1.25rem;font-weight:900}.monthly-clock b{color:var(--muted)}
.lucky-wheel-last{display:grid;gap:3px;margin-top:16px;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.03);max-width:420px}.lucky-wheel-last span,.lucky-wheel-last small{color:var(--muted)}
@keyframes monthlyFx{to{transform:rotate(360deg)}}
.video-team-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.video-team-admin-grid>.card,.video-team-send,.redeem-private-send{padding:18px}
.video-team-member-list{display:grid;gap:8px}.video-team-member{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--text)}.video-team-member.active{border-color:rgba(0,229,255,.45);background:rgba(0,229,255,.07)}.video-team-member small{color:var(--muted)}
.redeem-code-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.redeem-code-check{display:grid;grid-template-columns:auto 64px 1fr;gap:9px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:13px}.redeem-code-check img{width:64px;height:64px;border-radius:9px;object-fit:cover}.redeem-code-check span{display:grid;gap:3px}.redeem-code-check small{color:var(--muted)}.redeem-code-check code{font-size:.7rem;overflow:hidden;text-overflow:ellipsis}
@media(max-width:800px){.monthly-wheel-layout{grid-template-columns:1fr}.monthly-wheel-wrap{min-height:300px}.video-team-admin-grid{grid-template-columns:1fr}.redeem-code-check-grid{grid-template-columns:1fr}}
@media(max-width:680px){.monthly-lucky-card{width:97%;margin-inline:auto;padding:14px}.monthly-wheel{width:min(270px,76vw)}.monthly-wheel-labels span{font-size:.5rem}.monthly-clock{gap:4px}.monthly-clock span{min-width:44px;padding:9px 5px;font-size:1rem}.monthly-wheel-info{text-align:center}.lucky-wheel-last{margin-inline:auto}}
@media(prefers-reduced-motion:reduce){.monthly-wheel-fx{animation:none}.monthly-wheel{transition:none}}

/* V3.32.1 — Tous les pseudos sur la roue + état Video Team déjà servi */
.monthly-wheel-labels span{font-size:clamp(.34rem,calc(.72rem - (var(--wheel-total) * .008rem)),.62rem);width:48%;left:41%;top:43%;overflow:visible;text-overflow:clip;max-width:none}
.video-team-member.redeem-already-sent{border-color:rgba(255,67,96,.72);background:linear-gradient(135deg,rgba(255,42,78,.18),rgba(95,10,25,.13));box-shadow:inset 3px 0 0 rgba(255,67,96,.92)}
.video-team-member.redeem-already-sent:hover{border-color:rgba(255,92,117,.95);background:linear-gradient(135deg,rgba(255,42,78,.24),rgba(95,10,25,.18))}
.video-team-member.redeem-already-sent.active{outline:2px solid rgba(0,229,255,.48);outline-offset:2px}
.team-sent-badge{display:inline-flex;align-items:center;margin-left:8px;padding:3px 7px;border-radius:999px;background:rgba(255,55,86,.2);border:1px solid rgba(255,92,117,.55);color:#ff8ca0;font-size:.62rem;font-weight:900;letter-spacing:.04em;vertical-align:middle}
.team-sent-date{color:#ff9aaa!important}

/* V3.32.2 — correction roue */
.monthly-wheel-labels{position:absolute;inset:0;z-index:2;pointer-events:none}
.monthly-wheel-user-slot{position:absolute;inset:0;display:block;transform:rotate(var(--wheel-angle));transform-origin:50% 50%}
.monthly-wheel-user-slot b{
  position:absolute;left:50%;top:50%;width:31%;max-width:96px;
  transform:translate(-50%,-50%) translateY(calc(var(--wheel-radius) * -1)) rotate(calc(var(--wheel-angle) * -1));
  transform-origin:center;font-size:var(--wheel-font);line-height:1;font-weight:900;text-align:center;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;
  text-shadow:0 1px 3px #000,0 0 3px #000
}
.monthly-wheel-center{z-index:4}
.newspaper-grid>.monthly-lucky-card-news{width:100%;max-width:none;min-width:0;box-sizing:border-box;grid-column:1/-1;overflow:hidden}
.monthly-lucky-card-news .monthly-wheel-layout{grid-template-columns:1fr;justify-items:center;min-width:0}
.monthly-lucky-card-news .monthly-wheel-wrap{width:100%;min-width:0;min-height:340px}
.monthly-lucky-card-news .monthly-wheel-info{width:min(760px,100%);min-width:0;text-align:center}
.monthly-lucky-card-news .monthly-wheel-info p,.monthly-lucky-card-news .lucky-wheel-last{margin-inline:auto}
.monthly-lucky-card-news .monthly-clock{justify-content:center;flex-wrap:wrap}
@media(max-width:680px){
  .newspaper-grid>.monthly-lucky-card-news{width:100%;margin:18px 0;padding:14px 10px 18px;border-radius:18px}
  .monthly-lucky-card-news .monthly-wheel-wrap{min-height:285px}
  .monthly-lucky-card-news .monthly-wheel{width:min(255px,72vw)}
  .monthly-lucky-card-news .monthly-wheel-info h2{font-size:1.15rem}
  .monthly-lucky-card-news .monthly-wheel-info p{font-size:.86rem;line-height:1.5}
  .monthly-lucky-card-news .monthly-clock span{min-width:42px;font-size:.9rem}
}

/* V3.32.4 — Roue de la chance style classique + correction Actualités */
.monthly-wheel-wrap{
  position:relative!important;
  overflow:visible!important;
}
.monthly-wheel{
  position:relative!important;
  width:min(340px,78vw)!important;
  aspect-ratio:1!important;
  border-radius:50%!important;
  border:5px solid rgba(230,235,242,.95)!important;
  box-shadow:0 10px 34px rgba(0,0,0,.28),0 0 24px rgba(255,255,255,.13)!important;
  overflow:visible!important;
  transform:none!important;
  transition:none!important;
  animation:miaouWheelSlowSpin 75s linear infinite!important;
}
@keyframes miaouWheelSlowSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
.monthly-wheel-center{
  position:absolute!important;
  inset:37%!important;
  z-index:5!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#0a0c10!important;
  border:4px solid rgba(240,244,248,.96)!important;
  box-shadow:0 5px 14px rgba(0,0,0,.34)!important;
  color:#fff!important;
  font-size:.72rem!important;
}
.monthly-wheel-pointer{
  position:absolute!important;
  right:calc(50% - min(340px,78vw)/2 - 19px)!important;
  top:50%!important;
  left:auto!important;
  z-index:12!important;
  width:0!important;
  height:0!important;
  transform:translateY(-50%) rotate(90deg)!important;
  border-left:16px solid transparent!important;
  border-right:16px solid transparent!important;
  border-bottom:28px solid #f7fbff!important;
  color:transparent!important;
  font-size:0!important;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.45))!important;
  text-shadow:none!important;
}
.monthly-wheel-labels{
  position:absolute!important;
  inset:0!important;
  z-index:4!important;
  pointer-events:none!important;
}
.monthly-wheel-user-slot{
  position:absolute!important;
  inset:0!important;
  transform:rotate(var(--wheel-angle))!important;
  transform-origin:50% 50%!important;
}
.monthly-wheel-user-slot b{
  position:absolute!important;
  left:50%!important;
  top:7%!important;
  width:34%!important;
  max-width:125px!important;
  transform:translateX(-50%) rotate(90deg)!important;
  transform-origin:center!important;
  color:#fff!important;
  font-family:Inter,Arial,sans-serif!important;
  font-weight:900!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 2px rgba(0,0,0,.9)!important;
}

/* L'onglet Actualités utilise une carte totalement autonome afin d'éviter
   les styles du journal papier autour de la roue. */
.newspaper-grid>.monthly-lucky-card-news{
  display:block!important;
  grid-column:1/-1!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:24px 0!important;
  padding:24px!important;
  overflow:hidden!important;
  border-radius:22px!important;
  border:1px solid rgba(137,109,255,.28)!important;
  background:
    radial-gradient(circle at 18% 18%,rgba(0,229,255,.12),transparent 34%),
    radial-gradient(circle at 82% 76%,rgba(255,0,140,.12),transparent 38%),
    #10131a!important;
  color:#f6f8fb!important;
  font-family:Inter,Arial,sans-serif!important;
}
.monthly-lucky-card-news *{
  box-sizing:border-box;
}
.monthly-lucky-card-news .monthly-wheel-layout{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  gap:22px!important;
}
.monthly-lucky-card-news .monthly-wheel-wrap{
  width:100%!important;
  min-width:0!important;
  min-height:370px!important;
  display:grid!important;
  place-items:center!important;
}
.monthly-lucky-card-news .monthly-wheel-info{
  display:block!important;
  width:min(780px,100%)!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:0 8px!important;
  text-align:center!important;
  color:#f6f8fb!important;
  font-family:Inter,Arial,sans-serif!important;
}
.monthly-lucky-card-news .monthly-wheel-info .eyebrow{
  color:#00e5ff!important;
  font-family:Orbitron,Inter,sans-serif!important;
}
.monthly-lucky-card-news .monthly-wheel-info h2{
  margin:8px auto 10px!important;
  color:#fff!important;
  font-family:Orbitron,Inter,sans-serif!important;
  font-size:clamp(1.2rem,2.5vw,1.85rem)!important;
  line-height:1.15!important;
}
.monthly-lucky-card-news .monthly-wheel-info p,
.monthly-lucky-card-news .monthly-wheel-info small{
  color:#b9c1cf!important;
  font-family:Inter,Arial,sans-serif!important;
}
.monthly-lucky-card-news .monthly-clock{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin:18px auto 8px!important;
}
.monthly-lucky-card-news .monthly-clock span{
  color:#fff!important;
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.monthly-lucky-card-news .lucky-wheel-last{
  margin:18px auto 0!important;
  color:#fff!important;
}
@media(max-width:680px){
  .monthly-wheel{
    width:min(275px,76vw)!important;
  }
  .monthly-wheel-pointer{
    right:calc(50% - min(275px,76vw)/2 - 16px)!important;
    border-left-width:12px!important;
    border-right-width:12px!important;
    border-bottom-width:22px!important;
  }
  .newspaper-grid>.monthly-lucky-card-news{
    width:100%!important;
    margin:18px 0!important;
    padding:16px 10px 18px!important;
    border-radius:18px!important;
  }
  .monthly-lucky-card-news .monthly-wheel-wrap{
    min-height:305px!important;
  }
  .monthly-lucky-card-news .monthly-wheel-info{
    padding-inline:4px!important;
  }
  .monthly-lucky-card-news .monthly-wheel-info p{
    font-size:.86rem!important;
    line-height:1.5!important;
  }
}
@media(prefers-reduced-motion:reduce){
}

/* V3.32.5 — Roue Actualités : pleine largeur et sans chevauchement */
.newspaper-specials{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:22px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:24px 0 30px!important;
}
.newspaper-specials>.redeem-countdown-card,
.newspaper-specials>.monthly-lucky-card{
  grid-column:auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.newspaper-specials>.monthly-lucky-card-news{
  overflow:hidden!important;
  padding:26px!important;
}
.newspaper-specials .monthly-wheel-layout{
  display:grid!important;
  grid-template-columns:minmax(340px,400px) minmax(0,1fr)!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:34px!important;
  width:100%!important;
  min-width:0!important;
}
.newspaper-specials .monthly-wheel-wrap{
  width:100%!important;
  min-width:0!important;
  min-height:390px!important;
  display:grid!important;
  place-items:center!important;
}
.newspaper-specials .monthly-wheel{
  width:min(350px,90%)!important;
}
.newspaper-specials .monthly-wheel-info{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:0!important;
  text-align:left!important;
}
.newspaper-specials .monthly-wheel-info h2,
.newspaper-specials .monthly-wheel-info p{
  max-width:100%!important;
}
.newspaper-specials .monthly-wheel-info p,
.newspaper-specials .lucky-wheel-last{
  margin-inline:0!important;
}
.newspaper-specials .monthly-clock{
  justify-content:flex-start!important;
}

/* Pseudos : mieux centrés dans chaque secteur et plus lisibles. */
.monthly-wheel-user-slot b{
  top:9%!important;
  width:40%!important;
  max-width:140px!important;
  overflow:visible!important;
  text-overflow:clip!important;
  letter-spacing:-.02em!important;
}

/* Tablette et téléphone : roue au-dessus, texte dessous. */
@media(max-width:900px){
  .newspaper-specials .monthly-wheel-layout{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .newspaper-specials .monthly-wheel-info{
    text-align:center!important;
  }
  .newspaper-specials .monthly-wheel-info p,
  .newspaper-specials .lucky-wheel-last{
    margin-inline:auto!important;
  }
  .newspaper-specials .monthly-clock{
    justify-content:center!important;
  }
}
@media(max-width:680px){
  .newspaper-specials{
    width:100%!important;
    margin:18px 0 24px!important;
    gap:18px!important;
  }
  .newspaper-specials>.monthly-lucky-card-news{
    width:100%!important;
    padding:14px 10px 18px!important;
    border-radius:18px!important;
  }
  .newspaper-specials .monthly-wheel-wrap{
    min-height:305px!important;
  }
  .newspaper-specials .monthly-wheel{
    width:min(275px,78vw)!important;
  }
  .newspaper-specials .monthly-wheel-info{
    padding:0 5px!important;
  }
  .monthly-wheel-user-slot b{
    top:10%!important;
    width:43%!important;
  }
}

/* V3.32.6 — pseudos contenus dans leur secteur */
.monthly-wheel-labels{
  position:absolute!important;
  inset:0!important;
  z-index:4!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.monthly-wheel-user-slot{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  transform:rotate(var(--wheel-angle))!important;
  transform-origin:50% 50%!important;
}
.monthly-wheel-user-slot b{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:var(--label-max-width)!important;
  max-width:var(--label-max-width)!important;
  transform:
    translate(-50%,-50%)
    translateY(calc(var(--label-radius) * -1))
    rotate(90deg)!important;
  transform-origin:center!important;
  margin:0!important;
  padding:0 2px!important;
  font-family:Inter,Arial,sans-serif!important;
  font-weight:900!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:#fff!important;
  text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 2px rgba(0,0,0,.95)!important;
  box-sizing:border-box!important;
}

/* Sur les secteurs très clairs, l'ombre garde les pseudos lisibles. */
.monthly-wheel-user-slot:nth-child(3n) b{
  text-shadow:0 1px 2px rgba(0,0,0,1),0 0 3px rgba(0,0,0,1)!important;
}

/* On neutralise les anciennes règles qui plaçaient les noms par rapport au haut de la roue. */
.monthly-lucky-card .monthly-wheel-user-slot b{
  top:50%!important;
  left:50%!important;
}

@media(max-width:680px){
  .monthly-wheel-user-slot b{
    padding-inline:1px!important;
  }
}

/* V3.33.0 — Phase 14.2 : transaction Marché FF */
.proof-review-list{display:grid;gap:10px}
.proof-review-item{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:10px;border:1px solid var(--line);border-radius:13px}
.proof-review-item img{width:92px;height:92px;object-fit:cover;border-radius:10px}
.proof-review-item>div{display:grid;gap:7px}.proof-review-item small{color:var(--muted)}
.proof-review-item.proof-verified{border-color:rgba(54,211,153,.36);background:rgba(54,211,153,.045)}
.proof-review-item.proof-rejected{border-color:rgba(255,93,115,.36);background:rgba(255,93,115,.045)}
.proof-review-form{display:grid;gap:7px;margin-top:4px}.proof-review-form input{width:100%}
.market-transaction-timeline{padding:16px}.market-timeline-list{display:grid;gap:0;margin-top:10px}
.market-timeline-event{display:grid;grid-template-columns:16px 1fr;gap:9px;position:relative;padding:0 0 15px}
.market-timeline-event:not(:last-child)::before{content:"";position:absolute;left:5px;top:12px;bottom:-1px;width:1px;background:var(--line)}
.market-timeline-dot{width:11px;height:11px;border-radius:50%;background:#00e5ff;margin-top:3px;z-index:1;box-shadow:0 0 9px rgba(0,229,255,.24)}
.market-timeline-event>div{display:grid;gap:3px}.market-timeline-event small{color:var(--muted);font-size:.72rem}.market-timeline-event p{margin:2px 0 0;color:var(--muted);font-size:.79rem}
@media(max-width:680px){.proof-review-item{grid-template-columns:74px 1fr}.proof-review-item img{width:74px;height:74px}.proof-review-form .split-actions{display:grid;grid-template-columns:1fr 1fr}}

/* V3.34.0 — Phase 14.3 : centre de notifications */
.notification-row-wrap{padding:0!important;overflow:hidden}
.notification-row-wrap.unread{border-color:rgba(0,229,255,.28);background:rgba(0,229,255,.035)}
.notification-row-wrap .notification-row{display:flex;padding:15px 16px 11px;text-decoration:none;color:var(--text);gap:12px}
.notification-quick-actions{display:flex;gap:7px;justify-content:flex-end;padding:0 14px 12px}
.btn-tiny{min-height:30px!important;padding:5px 9px!important;font-size:.68rem!important}
.notification-detail-tools{margin-top:16px;padding-top:13px;border-top:1px solid var(--line)}
.notification-detail-tools form{display:flex;gap:8px;flex-wrap:wrap}
.notification-filters a span{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;margin-left:4px;border-radius:999px;background:rgba(0,229,255,.12);color:#00e5ff;font-size:.66rem;font-weight:900}
@media(max-width:680px){
  .notification-row-wrap .notification-row{padding:13px 12px 9px}
  .notification-quick-actions{justify-content:stretch;padding:0 12px 11px}
  .notification-quick-actions .btn{flex:1}
  .notification-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}
  .notification-filters a{white-space:nowrap}
}

/* V3.35.0 — Phase 14.4 : préparation paiements */
.payment-readiness-list{display:grid;gap:9px;margin-top:12px}
.payment-readiness-item{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start;padding:11px;border:1px solid var(--line);border-radius:12px}
.payment-readiness-item>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font-weight:900}
.payment-readiness-item.ok>span{background:rgba(54,211,153,.12);color:#36d399}
.payment-readiness-item.warn>span{background:rgba(255,184,77,.12);color:#ffb84d}
.payment-readiness-item p{margin:3px 0 0;color:var(--muted)}

/* V3.36.0 — Phase 14.5 : socle paiement externe */
.payment-provider-ready{margin:14px 0;padding:14px;border:1px solid rgba(0,229,255,.25);border-radius:14px;background:rgba(0,229,255,.04)}
.payment-provider-ready h3{margin:4px 0 6px}

/* V3.37.0 — Phase 14.6 : suivi des automatisations */
.automation-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:14px}
.automation-status-card{display:grid;gap:6px;padding:15px}.automation-status-card strong{font-size:1.1rem}
.automation-status-card p{margin:0;color:var(--muted);font-size:.8rem}.automation-status-card small{color:var(--muted)}
.automation-ok{border-color:rgba(54,211,153,.24)}.automation-warning{border-color:rgba(245,196,81,.24)}.automation-error{border-color:rgba(255,93,115,.3)}
.automation-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}.automation-rules>div{display:grid;gap:3px;padding:11px;border:1px solid var(--line);border-radius:11px}.automation-rules span{color:var(--muted);font-size:.8rem}
@media(max-width:900px){.automation-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.automation-status-grid,.automation-rules{grid-template-columns:1fr}}

/* V3.38.0 — Phase 14.7 : fiabilisation pré-production */
.migration-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:13px}
.migration-summary .card{display:grid;gap:5px;padding:14px}.migration-summary strong{font-size:1rem;overflow-wrap:anywhere}
.migration-file-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}
.migration-file-list code{display:block;padding:9px 10px;border:1px solid var(--line);border-radius:9px;overflow-wrap:anywhere}
@media(max-width:680px){.migration-summary,.migration-file-list{grid-template-columns:1fr}}

/* V3.39.0 — Phase 14.8 : audit rôles & permissions */
.permissions-matrix{margin-top:14px;padding:16px}
.permissions-matrix code{font-size:.76rem}

/* V3.40.0 — Phase 14.9 : audit sécurité & configuration */
.diagnostic-row.diagnostic-error{border-color:rgba(255,93,115,.34)}

/* V3.41.0 — Phase 15.1 : cycle d'achat principal */
.purchase-history-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
.purchase-history-stats .card{display:grid;gap:5px;padding:14px}.purchase-history-stats span{color:var(--muted);font-size:.75rem}.purchase-history-stats strong{font-size:1.15rem}
.purchase-history-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:13px}
.order-item-access{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:760px){.purchase-history-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V3.43.0 — Phase 15.3 : propriété visible partout */
.tag.owned{background:rgba(54,211,153,.12);border-color:rgba(54,211,153,.3);color:#36d399}
.owned-shop-card{border-color:rgba(54,211,153,.23)!important}

/* V3.44.0 — Phase 15.4 : Academy achetée */
.academy-owned-card{border-color:rgba(54,211,153,.25)!important;box-shadow:0 0 0 1px rgba(54,211,153,.05)}
.module-list li.module-open{border-color:rgba(54,211,153,.18)}
.module-list li small{display:block;margin-top:4px;color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.06em}
.module-play-link{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;text-decoration:none;background:rgba(54,211,153,.1);border:1px solid rgba(54,211,153,.25)}

/* V3.45.0 — Phase 15.5 : Sensis premium & accès permanent */
.sensi-owned-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.sensi-owned-banner span{font-size:.76rem;color:var(--muted)}
/* V3.46.0 — Phase 15.6 : portefeuille Redeem Codes */
.redeem-wallet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.redeem-wallet-card{display:grid;grid-template-columns:150px 1fr;gap:16px;overflow:hidden}
.redeem-wallet-card>img{width:150px;height:150px;object-fit:cover;border-radius:14px}
.redeem-wallet-icon{width:150px;height:150px;display:grid;place-items:center;font-size:3rem;border-radius:14px;background:rgba(255,255,255,.04)}
.redeem-wallet-body{display:grid;align-content:start;gap:8px}.redeem-wallet-body h2,.redeem-wallet-body p{margin:0}
.redeem-private-code{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:10px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(0,0,0,.18)}
.redeem-private-code span{width:100%;font-size:.7rem;color:var(--muted);text-transform:uppercase;font-weight:800;letter-spacing:.06em}.redeem-private-code strong{font-family:monospace;font-size:1rem;word-break:break-all}
@media(max-width:800px){.redeem-wallet-grid{grid-template-columns:1fr}.redeem-wallet-card{grid-template-columns:90px 1fr}.redeem-wallet-card>img,.redeem-wallet-icon{width:90px;height:90px}}

/* V3.47.0 — Phase 15.7 : espace membre centralisé */
.member-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.member-overview>a{display:grid;gap:5px;padding:13px;text-decoration:none}
.member-overview span{font-size:.72rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.member-overview strong{font-size:1.35rem}
.redeem-wallet-summary{display:flex;align-items:baseline;gap:8px;margin-top:9px}
.redeem-wallet-summary strong{font-size:1.35rem}.redeem-wallet-summary span{color:var(--muted);font-size:.78rem}
.redeem-wallet-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:13px}
@media(max-width:760px){.member-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V3.48.0 — Phase 15.8 : favoris & historique */
.personal-filter-bar{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}
.clickable-personal-card{cursor:pointer;transition:transform .16s ease,border-color .16s ease}
.clickable-personal-card:hover{transform:translateY(-2px)}

/* V3.49.0 — Phase 15.9 : Creator Hub enrichi */
.creator-search-advanced{display:grid!important;grid-template-columns:minmax(220px,1fr) auto auto auto auto!important;gap:8px!important}
.creator-search-advanced select{min-width:150px}
.creator-content-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.creator-profile-content{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
@media(max-width:820px){
  .creator-search-advanced{grid-template-columns:1fr 1fr!important}
  .creator-search-advanced input{grid-column:1/-1}
}
@media(max-width:560px){
  .creator-search-advanced{grid-template-columns:1fr!important}
  .creator-search-advanced input{grid-column:auto}
}

/* V3.50.0 — Phase 15.10 : espace Tournois participant */
.my-tournament-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.my-tournament-card{display:grid;gap:10px}
.my-tournament-card.past{opacity:.82}
.my-tournament-top{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.my-tournament-meta{display:grid;gap:6px;color:var(--muted);font-size:.8rem}
@media(max-width:720px){.my-tournament-grid{grid-template-columns:1fr}}

/* V3.51.0 — Phase 15.11 : notifications transactionnelles */
.notification-head-actions{flex-wrap:wrap}
.notification-row-wrap.unread{position:relative}
.notification-row-wrap.unread:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:4px;background:currentColor;opacity:.45}

/* V3.52.0 — Phase 15.12 : suivi des achats et paiements */
.payment-user-history{margin-top:14px}
.payment-user-events{display:grid;gap:8px;margin-top:10px}
.payment-user-event{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.payment-user-event:first-child{border-top:0}
.payment-user-event>div{display:grid;gap:4px}
.payment-user-event>div:last-child{text-align:right;justify-items:end}
.payment-user-event small{color:var(--muted)}

/* V3.53.0 — Phase 15.13 : supervision paiements */
.payment-admin-filters{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto auto;gap:8px;margin:14px 0}
.payment-ops-stats{margin-bottom:12px}
@media(max-width:850px){.payment-admin-filters{grid-template-columns:1fr 1fr}.payment-admin-filters input{grid-column:1/-1}}
@media(max-width:560px){.payment-admin-filters{grid-template-columns:1fr}.payment-admin-filters input{grid-column:auto}}

/* V3.54.0 — Phase 15.14 : support & tickets */
.support-user-stats{display:flex;gap:12px;flex-wrap:wrap;margin:10px 0 12px;color:var(--muted);font-size:.78rem}
.support-user-stats strong{color:var(--text);margin-left:4px}
.support-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.support-admin-stats .card{display:grid;gap:5px;padding:13px}
.support-admin-stats span{font-size:.72rem;color:var(--muted);text-transform:uppercase;font-weight:800}
.support-admin-stats strong{font-size:1.25rem}
@media(max-width:760px){.support-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V3.55.0 — Phase 16.1 : Marché FF principal */
.market-search-filters{display:grid;grid-template-columns:minmax(230px,1fr) repeat(3,auto) auto auto;gap:8px;margin:14px 0 18px}
.market-deal-filters{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}
.market-deal-list{display:grid;gap:10px;margin-top:16px}
.market-deal-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px;text-decoration:none;color:inherit}
.market-deal-row>img,.market-deal-placeholder{width:110px;height:86px;object-fit:cover;border-radius:10px}
.market-deal-placeholder{display:grid;place-items:center;background:rgba(255,255,255,.05);font-weight:900}
.market-deal-body{display:grid;gap:5px}
.market-deal-body h2{margin:0}
.market-deal-body p,.market-deal-body small{margin:0;color:var(--muted)}
.market-deal-open{font-weight:800;white-space:nowrap}
@media(max-width:900px){.market-search-filters{grid-template-columns:1fr 1fr}.market-search-filters input{grid-column:1/-1}}
@media(max-width:620px){.market-search-filters{grid-template-columns:1fr}.market-search-filters input{grid-column:auto}.market-deal-row{grid-template-columns:78px minmax(0,1fr)}.market-deal-row>img,.market-deal-placeholder{width:78px;height:72px}.market-deal-open{grid-column:2}}

/* V3.56.0 — Phase 16.2 : espace vendeur */
.seller-workspace-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.seller-workspace-stats .card{display:grid;gap:5px;padding:14px}.seller-workspace-stats span{color:var(--muted);font-size:.75rem;text-transform:uppercase;font-weight:800}.seller-workspace-stats strong{font-size:1.3rem}
.seller-listing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.seller-listing-card{display:grid;grid-template-columns:150px minmax(0,1fr);overflow:hidden;padding:0}
.seller-listing-image{min-height:150px;display:grid;place-items:center;text-decoration:none}.seller-listing-image img{width:100%;height:100%;object-fit:cover}.seller-listing-placeholder{background:rgba(255,255,255,.05);font-size:1.5rem;font-weight:900;color:inherit}
.seller-listing-body{padding:14px;display:grid;gap:7px}.seller-listing-body h2,.seller-listing-body p{margin:0}.seller-listing-body h2 a{color:inherit;text-decoration:none}.seller-listing-body p{color:var(--muted);font-size:.8rem}
@media(max-width:900px){.seller-workspace-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.seller-listing-grid{grid-template-columns:1fr}}
@media(max-width:520px){.seller-listing-card{grid-template-columns:100px minmax(0,1fr)}.seller-listing-image{min-height:130px}}

/* V3.57.0 — Phase 16.3 : parcours transaction Marché FF */
.market-deal-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0 16px}
.market-deal-step{display:grid;justify-items:center;text-align:center;gap:5px;position:relative;color:var(--muted)}
.market-deal-step span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);background:var(--panel);font-weight:900;z-index:1}
.market-deal-step.done{color:var(--text)}.market-deal-step.done span{border-color:currentColor}
.market-deal-step small{font-size:.68rem;font-weight:800}
.market-deal-closed{display:grid;gap:8px}
@media(max-width:650px){.market-deal-progress{grid-template-columns:repeat(5,1fr);gap:3px}.market-deal-step small{font-size:.58rem}.market-deal-step span{width:26px;height:26px}}

/* V3.58.0 — Phase 16.4 : finalisation Marché FF */
.market-chat-head-actions{margin-top:8px}
.market-receipt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}
.market-receipt-grid .card{display:grid;gap:6px}
.market-receipt-grid p{margin:0;color:var(--muted)}
.market-receipt-timeline{margin-top:14px}
@media(max-width:700px){.market-receipt-grid{grid-template-columns:1fr}}

/* V3.59.0 — Phase 16.5 : confiance vendeur & pilotage Marché FF */
.seller-public-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 20px}
.seller-public-stats .card,.market-admin-stats .card{display:grid;gap:5px;padding:14px}
.seller-public-stats span,.market-admin-stats span{font-size:.72rem;color:var(--muted);font-weight:800;text-transform:uppercase}
.seller-public-stats strong,.market-admin-stats strong{font-size:1.25rem}
.market-admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.market-admin-deals{display:grid;gap:4px}
.market-admin-deal{display:flex;justify-content:space-between;gap:14px;padding:11px 4px;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}
.market-admin-deal>div{display:grid;gap:3px}.market-admin-deal>div:last-child{text-align:right}.market-admin-deal small{color:var(--muted)}
@media(max-width:700px){.seller-public-stats,.market-admin-stats{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.seller-public-stats,.market-admin-stats{grid-template-columns:1fr}.market-admin-deal{align-items:flex-start;flex-direction:column}.market-admin-deal>div:last-child{text-align:left}}

/* V3.60.0 — Phase 16.6 : litiges Marché FF */
.market-dispute-summary{display:grid;gap:5px;margin-bottom:12px}
.market-dispute-summary h2,.market-dispute-summary p{margin:0}
.market-dispute-summary p{color:var(--muted)}
.market-dispute-form{padding:16px}
.support-ticket-row.support-priority-high{border-color:rgba(255,93,115,.38);background:rgba(255,93,115,.045)}

/* V3.61.0 — Phase 17.1 : infrastructure de paiement sans prestataire */
.checkout-infrastructure{max-width:760px}
.payment-infra-state{display:grid;gap:7px;margin:14px 0;padding:14px;border:1px solid var(--line);border-radius:12px}
.payment-infra-state h3,.payment-infra-state p{margin:0}
.payment-infra-state.waiting{background:rgba(255,255,255,.025)}
.payment-infra-lock{display:inline-flex;width:max-content;padding:7px 10px;border:1px dashed var(--line);border-radius:8px;font-size:.78rem;font-weight:800}
.payment-infrastructure-explain{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}
.payment-infrastructure-explain>div{display:grid;gap:5px;padding:11px;border:1px solid var(--line);border-radius:10px}
.payment-infrastructure-explain strong{font-size:1rem}
.payment-infrastructure-explain span{font-size:.72rem;color:var(--muted);line-height:1.4}
@media(max-width:650px){.payment-infrastructure-explain{grid-template-columns:1fr}}

/* V3.62.0 — Phase 17.2 : connecteur de paiement neutre */
.admin-payment-confirm{display:flex;gap:6px;align-items:flex-start;font-size:.68rem;color:var(--muted);max-width:220px}
.admin-payment-confirm input{margin-top:2px}
.payment-infra-state form{margin-top:4px}

/* V3.63.0 — Phase 17.3 : états & idempotence des paiements */
.payment-state-machine{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}
.payment-state-machine span{padding:7px 10px;border:1px solid var(--line);border-radius:8px;font-weight:900;font-size:.76rem}
.payment-state-machine b{color:var(--muted)}
.payment-row-mismatch{background:rgba(255,93,115,.05)}
.payment-mismatch-label{display:block;margin-top:4px;color:#ff6b7f;font-weight:800}

/* V3.64.0 — Phase 17.4 : remboursements, erreurs & supervision */
.payment-user-help{display:grid;gap:8px;margin-top:14px}
.payment-user-help p{margin:0;color:var(--muted)}
.payment-incident-check{display:flex;align-items:center;gap:6px;font-size:.72rem;color:var(--muted);white-space:nowrap}
.payment-admin-filters{grid-template-columns:minmax(220px,1fr) auto auto auto auto auto}
@media(max-width:900px){.payment-admin-filters{grid-template-columns:1fr 1fr}.payment-admin-filters input{grid-column:1/-1}}

/* V3.65.0 — Phase 18.1 : bibliothèque & livraison numérique */
.library-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
.library-overview .card{display:grid;gap:5px;padding:14px}
.library-overview span{font-size:.72rem;color:var(--muted);font-weight:800;text-transform:uppercase}
.library-overview strong{font-size:1.3rem}
.library-filters{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;gap:8px;margin:14px 0}
.library-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.library-clickable-card{cursor:pointer}
.library-quality-badge{display:inline-flex;width:max-content;max-width:100%;font-size:.67rem;font-weight:800;color:var(--muted);padding:5px 7px;border:1px solid var(--line);border-radius:7px}
.library-delivery-note{margin-top:16px}
.library-delivery-note p{margin-bottom:0;color:var(--muted);line-height:1.5}
@media(max-width:760px){.library-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.library-filters{grid-template-columns:1fr 1fr}.library-filters input{grid-column:1/-1}}
@media(max-width:480px){.library-overview,.library-filters{grid-template-columns:1fr}.library-filters input{grid-column:auto}}

/* V3.66.0 — Stripe Checkout test */
.stripe-setup-card pre{overflow:auto;padding:12px;border:1px solid var(--line);border-radius:10px;font-size:.72rem;line-height:1.6}
.stripe-setup-card code{word-break:break-all}

/* V3.66.2 — Assistant de configuration Stripe */
.stripe-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}
.stripe-check{display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:10px}
.stripe-check strong{font-size:.78rem}.stripe-check span{font-size:.7rem;color:var(--muted)}
.stripe-check.ok strong{color:#57d98c}.stripe-check.missing strong{color:#ffb454}
.stripe-next-steps{display:grid;gap:7px;color:var(--muted);padding-left:20px}
@media(max-width:650px){.stripe-check-grid{grid-template-columns:1fr}}

/* V3.67.0 — Phase 17.5 : validation Stripe */
.stripe-test-status{display:flex;justify-content:space-between;gap:12px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;margin:12px 0}
.stripe-test-status.ok strong{color:#57d98c}.stripe-test-status.danger strong{color:#ff6b7f}
.stripe-test-status span{color:var(--muted)}
.stripe-test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.stripe-test-case{display:grid;gap:8px}.stripe-test-case h2,.stripe-test-case p{margin:0}.stripe-test-case code{width:max-content;max-width:100%;overflow:auto}
@media(max-width:700px){.stripe-test-grid{grid-template-columns:1fr}.stripe-test-status{flex-direction:column}}

/* V3.68.0 — Phase 17B : paiements internationaux */
.payment-provider-choice{display:grid;gap:9px;margin:12px 0}
.payment-provider-option{display:grid;gap:5px}
.payment-provider-option .btn{display:grid;gap:3px;text-align:left}
.payment-provider-option .btn small,.payment-provider-option small{font-size:.68rem;opacity:.82}
.payment-provider-option.disabled{padding:12px;border:1px solid var(--line);border-radius:10px;opacity:.72}
.payment-provider-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.payment-provider-admin-card{display:grid;gap:8px}
.provider-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.payment-provider-admin-card h2,.payment-provider-admin-card p{margin:0}
@media(max-width:700px){.payment-provider-admin-grid{grid-template-columns:1fr}}

/* V3.68.1 — pays, devise et routage international */
.checkout-country-card{margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:10px}
.checkout-country-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:7px}
.checkout-country-row select{width:100%;min-height:40px}
.checkout-country-card .muted{margin:8px 0 0}
@media(max-width:620px){.checkout-country-row{grid-template-columns:1fr}}

/* V3.68.2 — Stripe Dynamic Payment Methods */
.payment-method-flow{display:grid;grid-template-columns:1fr auto 1.5fr auto 1fr;align-items:center;gap:8px;margin:12px 0}
.payment-method-flow span{padding:10px;border:1px solid var(--line);border-radius:9px;text-align:center}
@media(max-width:700px){.payment-method-flow{grid-template-columns:1fr}.payment-method-flow b{text-align:center;transform:rotate(90deg)}}

/* V3.69.3 — sélection automatique du prestataire par pays */
.checkout-country-row-auto{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.country-auto-hint{font-size:.7rem;color:var(--muted);white-space:nowrap}
.payment-provider-exclusive{gap:10px}
.payment-provider-selected .btn{width:100%}
.payment-provider-disabled{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 15px;
  border:1px solid var(--line);
  border-radius:999px;
  opacity:.42;
  filter:grayscale(1);
  cursor:not-allowed;
  user-select:none;
}
.payment-provider-disabled>div{display:grid;gap:3px}
.payment-provider-disabled strong{font-size:.8rem}
.payment-provider-disabled small{font-size:.65rem;color:var(--muted)}
.provider-disabled-reason{font-size:.64rem;color:var(--muted);text-align:right;max-width:180px}
@media(max-width:620px){
  .checkout-country-row-auto{grid-template-columns:1fr}
  .country-auto-hint{white-space:normal}
  .payment-provider-disabled{border-radius:18px;align-items:flex-start;flex-direction:column}
  .provider-disabled-reason{text-align:left;max-width:none}
}

/* V3.69.5 — lancement public sans commerce interne */
.commerce-unavailable{display:grid;gap:7px;width:100%}
.commerce-unavailable .btn[disabled],
.payment-provider-option button[disabled],
.btn[disabled]{opacity:.45;filter:grayscale(1);cursor:not-allowed;pointer-events:none}
.launch-commerce-banner{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:0 auto 16px;max-width:1180px;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,184,77,.07)}
.launch-commerce-banner strong{color:#ffbd69}.launch-commerce-banner span{color:var(--muted)}
@media(max-width:650px){.launch-commerce-banner{align-items:flex-start;flex-direction:column}}

/* V3.69.6 — Roue de la Chance classique sans pseudos */
.monthly-wheel{
  overflow:hidden;
  border:8px solid rgba(255,255,255,.92);
  box-shadow:0 0 34px rgba(0,229,255,.18),inset 0 0 34px rgba(0,0,0,.22);
}
.monthly-wheel::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:repeating-conic-gradient(
    from -90deg,
    transparent 0deg 29.3deg,
    rgba(255,255,255,.58) 29.3deg 30deg
  );
  pointer-events:none;
  z-index:1;
}
.monthly-wheel-center{
  inset:35%;
  overflow:hidden;
  background:#080b10;
  border:5px solid rgba(255,255,255,.96);
  box-shadow:0 4px 20px rgba(0,0,0,.35);
  z-index:3;
}
.monthly-wheel-center img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.monthly-wheel-labels{display:none!important}

/* V3.70.0 — UID Free Fire + sessions de tournoi */
.game-uid-panel{max-width:620px}
.account-game-uid{margin-top:5px;color:var(--muted)}
.account-game-uid strong{color:var(--text);font-family:monospace;letter-spacing:.04em}
.tournament-interest-count{font-weight:700;color:var(--accent)}
.tournament-session-admin{margin:24px 0;display:grid;gap:14px}
.tournament-session-form{grid-template-columns:repeat(2,minmax(0,1fr))}
.tournament-session-form button{grid-column:1/-1}
.tournament-session-admin code{font-size:.75rem;user-select:all}
@media(max-width:700px){.tournament-session-form{grid-template-columns:1fr}}

/* V3.70.1 — Roue de la Chance : rotation constante, sans accélération */
.monthly-wheel{
  transition:none!important;
  animation:miaouWheelConstantSpin 75s linear infinite!important;
  animation-timing-function:linear!important;
}
@keyframes miaouWheelConstantSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@media(prefers-reduced-motion:reduce){
  .monthly-wheel{
    animation:miaouWheelConstantSpin 75s linear infinite!important;
  }
}

/* V3.71.0 — Pré-production */
.legal-consent{display:flex;align-items:flex-start;gap:10px;font-size:.78rem;line-height:1.45}
.legal-consent input{margin-top:3px;flex:0 0 auto}
.legal-page{max-width:980px}
.legal-document{display:grid;gap:8px}
.legal-document h2{margin-top:18px;margin-bottom:2px;font-size:1.08rem}
.legal-document p{margin:0;color:var(--muted);line-height:1.7}
.footer-links{flex-wrap:wrap}

.creator-grid>.creator-empty{grid-column:1/-1;text-align:center;min-height:180px;display:grid;place-content:center}

/* V3.76.0 — Gestion regroupée, Migrations toujours visible */
.admin-nav-grouped{display:grid;gap:6px}
.admin-nav-group{border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;background:rgba(255,255,255,.018)}
.admin-nav-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:0;background:transparent;color:var(--text);font:inherit;font-size:.76rem;font-weight:800;text-align:left;cursor:pointer}
.admin-nav-group-toggle:hover{background:rgba(255,255,255,.05)}
.admin-nav-chevron{font-size:1.1rem;color:var(--muted);transition:transform .18s ease}
.admin-nav-group.is-open .admin-nav-chevron{transform:rotate(90deg)}
.admin-nav-group-items{padding:0 6px 7px}
.admin-nav-group-items[hidden]{display:none}
.admin-nav-group-items a{display:block;padding:7px 9px;border-radius:7px;color:var(--muted);font-size:.71rem;text-decoration:none}
.admin-nav-group-items a:hover{background:rgba(255,255,255,.05);color:var(--text)}
.admin-nav-group-items a.active{background:rgba(255,255,255,.09);color:#fff;font-weight:800}
.admin-migration-shortcut{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center;margin:0 0 9px;padding:9px 10px;border:1px solid rgba(0,229,255,.34);border-radius:10px;background:rgba(0,229,255,.06);color:var(--text);text-decoration:none}
.admin-migration-shortcut>span{grid-row:1/3;color:#00e5ff}
.admin-migration-shortcut strong{font-size:.76rem}
.admin-migration-shortcut small{font-size:.61rem;color:var(--muted)}
.admin-migration-shortcut:hover,.admin-migration-shortcut.active{background:rgba(0,229,255,.12)}
.creator-admin-list{display:grid;gap:8px}
.creator-admin-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:10px}
.creator-admin-row .avatar{width:42px;height:42px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#13d8ff,#7a4fff,#ff168f);font-weight:800}
.creator-admin-row .avatar img{width:100%;height:100%;object-fit:cover}
.creator-admin-row small{display:block;color:var(--muted);margin-top:3px}
.legal-admin-form input{width:100%}


/* ==========================================================
   V3.77.0 — finition pré-publication
   ========================================================== */

/* Logos nets */
.brand img,.footer-brand img,.hero-card>img{
  object-fit:cover;
  image-rendering:auto;
  backface-visibility:hidden;
}
.brand img{width:46px;height:46px;box-shadow:0 0 0 1px rgba(255,255,255,.12),0 5px 18px rgba(0,229,255,.12)}
.footer-brand img{width:58px;height:58px}
.social-network-logo{
  width:36px!important;height:36px!important;object-fit:contain!important;
  image-rendering:auto;filter:drop-shadow(0 3px 8px rgba(0,0,0,.28));
}

/* Menu Gestion natif : accessible même si JS ne charge pas */
.admin-nav-native{display:grid;gap:7px}
.admin-nav-native-group{border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.018);overflow:hidden}
.admin-nav-native-group>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:11px;color:var(--text);font-size:.76rem;font-weight:800;user-select:none}
.admin-nav-native-group>summary::-webkit-details-marker{display:none}
.admin-nav-native-group>summary:hover{background:rgba(255,255,255,.05)}
.admin-nav-native-chevron{color:var(--muted);font-size:1.05rem;transition:transform .18s ease}
.admin-nav-native-group[open] .admin-nav-native-chevron{transform:rotate(90deg)}
.admin-nav-native-items{display:grid;gap:2px;padding:0 7px 8px}
.admin-nav-native-items a{display:block;padding:8px 9px;border-radius:7px;color:var(--muted);text-decoration:none;font-size:.71rem}
.admin-nav-native-items a:hover{color:#fff;background:rgba(255,255,255,.05)}
.admin-nav-native-items a.active{color:#fff;background:rgba(255,255,255,.09);font-weight:800}

/* Nouvelles cartes créateurs */
.creator-showcase-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,340px));gap:20px;justify-content:center
}
.creator-showcase-card,.creator-directory-card{
  --rank-accent:var(--cyan);
  position:relative;overflow:hidden;text-decoration:none;color:var(--text);
  border:1px solid color-mix(in srgb,var(--rank-accent) 32%,rgba(255,255,255,.08));
  background:linear-gradient(145deg,rgba(18,22,30,.96),rgba(8,11,16,.98));
  border-radius:24px;isolation:isolate;
  box-shadow:0 16px 45px rgba(0,0,0,.22);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.creator-showcase-card{padding:22px;min-height:320px;display:flex;flex-direction:column}
.creator-showcase-card:hover,.creator-directory-card:hover{
  transform:translateY(-6px);
  border-color:color-mix(in srgb,var(--rank-accent) 72%,white 4%);
  box-shadow:0 22px 65px color-mix(in srgb,var(--rank-accent) 15%,transparent);
}
.creator-card-glow{position:absolute;width:180px;height:180px;border-radius:50%;top:-90px;right:-70px;background:var(--rank-accent);filter:blur(75px);opacity:.13;z-index:-1}
.creator-rank-bronze{--rank-accent:#c77a45}
.creator-rank-silver{--rank-accent:#c8d2df}
.creator-rank-gold{--rank-accent:#ffd54a}
.creator-rank-diamond{--rank-accent:#4fe7ff}
.creator-rank-adamantite{--rank-accent:#ff43b9;animation:creatorAdamantiteGlow 3.6s ease-in-out infinite}
@keyframes creatorAdamantiteGlow{50%{box-shadow:0 20px 70px rgba(255,67,185,.22),0 0 30px rgba(0,229,255,.10)}}
.creator-showcase-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.creator-avatar{overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#12d9ff,#774cff,#ff158e);font-family:Orbitron;font-weight:800}
.creator-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.creator-avatar-xl{width:92px;height:92px;border-radius:23px;font-size:1.9rem;box-shadow:0 8px 26px rgba(0,0,0,.3)}
.creator-avatar-lg{width:78px;height:78px;border-radius:20px;font-size:1.55rem;flex:0 0 78px}
.creator-rank-badge{position:static;display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--rank-accent) 12%,rgba(0,0,0,.45));border:1px solid color-mix(in srgb,var(--rank-accent) 34%,transparent);color:var(--rank-accent);font-size:.68rem;font-weight:900}
.creator-showcase-card h3{font-size:1.28rem;margin:20px 0 4px}
.creator-handle{color:var(--cyan);font-size:.78rem;font-weight:700}
.creator-excerpt{color:var(--muted);font-size:.86rem;line-height:1.6;margin:14px 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.creator-card-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07);font-size:.73rem;color:var(--muted)}
.creator-card-footer strong{color:var(--rank-accent)}
.featured-position{position:absolute;right:18px;top:16px;color:var(--yellow);font:800 .86rem Orbitron;z-index:3}
.creator-featured-card{border-width:1px}
.creator-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.creator-directory-card{padding:19px;min-height:275px;display:flex;flex-direction:column}
.creator-directory-head{display:flex;gap:14px;align-items:center}
.creator-directory-identity{min-width:0}
.creator-directory-identity h3{margin:8px 0 3px;font-size:1.05rem}
.creator-directory-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;margin-bottom:12px}
.creator-directory-stats span{padding:8px 10px;border:1px solid rgba(255,255,255,.07);border-radius:11px;color:var(--muted);font-size:.7rem}
.creator-directory-stats strong{color:#fff}
.creator-section-heading>div>p{margin:8px 0 0;color:var(--muted)}

/* Admin tournoi : tableau de bord + formulaire respirant */
.tournament-builder-hidden{display:none!important}
.tournament-admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.tournament-builder{max-width:none!important;width:100%!important}
.tournament-builder .stack-form{gap:0}
.builder-step{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;padding:28px}
.builder-step>.eyebrow,.builder-step>h2,.builder-step>.form-help,.builder-step>.hero-actions,.builder-step>#communityOptions,.builder-step>#creatorOptions,.builder-step>#csOptions,.builder-step>#brOptions,.builder-step>#liveOptions,.builder-step>#eurPrize,.builder-step>#redeemPrize{grid-column:1/-1}
.builder-step h2{margin:0 0 4px}
.builder-step label{display:grid;gap:7px;align-content:start}
.builder-step label:has(>input[type="checkbox"]){display:flex;align-items:center;gap:11px;min-height:46px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#0b0e14}
.builder-step input[type="checkbox"]{width:20px!important;height:20px!important;margin:0;accent-color:var(--cyan);flex:0 0 20px}
.tournament-session-admin{margin-top:22px}
.tournament-session-form{grid-template-columns:1fr 1fr auto;align-items:end}
.tournament-session-form button{min-height:50px}
.tournament-admin-lists{display:grid;gap:26px;margin-top:28px}
.tournament-admin-section{min-width:0}
.tournament-admin-section .section-heading{margin-bottom:14px}
.tournament-admin-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tournament-admin-card{padding:20px;min-height:220px;display:flex;flex-direction:column}
.tournament-admin-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.tournament-admin-card-top h3{margin:38px 0 5px}
.tournament-admin-card-top time{font-size:.72rem;color:var(--muted);white-space:nowrap}
.tournament-admin-card-meta{color:var(--cyan);font-size:.75rem;font-weight:800}
.tournament-admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:18px}
.tournament-admin-actions .btn{flex:1 1 auto}

/* Notifications : boutons séparés et mobile propre */
.notification-row-wrap{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important}
.notification-row{min-width:0!important;display:block!important}
.notification-row-main{min-width:0}
.notification-row h3,.notification-row p{overflow-wrap:anywhere}
.notification-quick-actions{display:flex!important;gap:7px!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important}
.notification-quick-actions .btn{margin:0!important;white-space:nowrap}
.notification-detail-tools form,.notification-actions,.notification-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.notification-detail-tools .btn,.notification-actions .btn{min-width:150px}

/* Images de cartes sur mobile toujours proportionnées */
.card img,.creator-avatar img,.news-photo img,.tournament-redeem-mini img{max-width:100%;height:auto}

@media(max-width:1000px){
  .creator-showcase-grid,.creator-directory-grid{grid-template-columns:repeat(2,minmax(0,340px))}
  .tournament-admin-card-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .section{padding-left:18px!important;padding-right:18px!important}
  .section-heading,.creator-section-heading,.tournament-admin-heading{align-items:stretch;flex-direction:column}
  .creator-showcase-grid,.creator-directory-grid{grid-template-columns:1fr;gap:13px}
  .creator-showcase-card,.creator-directory-card{width:100%!important;max-width:440px!important;margin-inline:auto!important;min-height:auto!important;padding:17px!important}
  .creator-avatar-xl{width:76px;height:76px;border-radius:19px}
  .creator-avatar-lg{width:66px;height:66px;flex-basis:66px;border-radius:17px}
  .creator-showcase-card h3{font-size:1.08rem;margin-top:15px}
  .creator-excerpt{font-size:.8rem;margin:10px 0 13px;-webkit-line-clamp:2}
  .creator-card-footer{font-size:.68rem}
  .builder-step{grid-template-columns:1fr;padding:20px 16px;gap:13px}
  .builder-step>*{grid-column:1!important}
  .tournament-session-form{grid-template-columns:1fr}
  .tournament-admin-card{padding:15px}
  .tournament-admin-card-top{display:block}
  .tournament-admin-card-top time{display:block;margin-top:8px}
  .tournament-admin-actions{display:grid;grid-template-columns:1fr}
  .tournament-admin-actions .btn{width:100%}
  .notification-row-wrap{grid-template-columns:1fr!important;width:100%!important;padding:13px!important}
  .notification-quick-actions{justify-content:stretch!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .notification-quick-actions .btn{width:100%!important;padding:9px 8px!important;font-size:.7rem!important}
  .notification-head-actions{width:100%;display:grid!important;grid-template-columns:1fr}
  .notification-head-actions form,.notification-head-actions .btn{width:100%}
  .notification-filters{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:7px}
  .notification-filters a{flex:0 0 auto}
  .notification-detail-tools form{display:grid!important;grid-template-columns:1fr}
  .notification-detail-tools .btn,.notification-actions .btn{width:100%;min-width:0}
  .brand img{width:42px;height:42px}
  .footer-brand img{width:50px;height:50px}
  .social-network-logo{width:32px!important;height:32px!important}
}
@media(max-width:430px){
  .creator-showcase-card,.creator-directory-card{border-radius:18px}
  .creator-directory-head{align-items:flex-start}
  .creator-rank-badge{font-size:.61rem;padding:6px 8px}
  .creator-card-footer{align-items:flex-start;flex-direction:column;gap:5px}
  .notification-quick-actions{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){
  .creator-rank-adamantite{animation:none}
  .creator-showcase-card,.creator-directory-card{transition:none}
}

/* V3.77.2 — Gestion des candidatures créateurs */
.creator-application-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.creator-app-stat{display:flex;align-items:center;gap:12px;text-decoration:none;padding:16px;min-height:82px}
.creator-app-stat>span{font-size:1.4rem}.creator-app-stat small{display:block;color:var(--muted);font-size:.68rem}.creator-app-stat strong{display:block;font:800 1.35rem Orbitron;margin-top:3px}
.creator-app-stat.active{border-color:rgba(0,229,255,.5);box-shadow:0 0 0 1px rgba(0,229,255,.15) inset}
.creator-application-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.creator-application-card{padding:18px;display:flex;flex-direction:column;gap:16px}
.creator-application-head{display:flex;gap:13px;align-items:center}.creator-application-head h3{margin:6px 0 3px}.creator-application-head small{color:var(--muted)}
.creator-application-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.creator-application-meta>div{padding:10px 11px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.02)}
.creator-application-meta span{display:block;color:var(--muted);font-size:.64rem;margin-bottom:4px}.creator-application-meta strong{font-size:.76rem;overflow-wrap:anywhere}
.creator-application-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}.creator-application-actions form{margin:0}
.creator-app-empty{text-align:center;padding:34px}
@media(max-width:900px){.creator-application-summary{grid-template-columns:repeat(2,1fr)}.creator-application-grid{grid-template-columns:1fr}}
@media(max-width:560px){.creator-application-summary{grid-template-columns:1fr 1fr;gap:8px}.creator-app-stat{padding:12px;min-height:68px}.creator-application-card{padding:14px}.creator-application-meta{grid-template-columns:1fr}.creator-application-actions{display:grid;grid-template-columns:1fr}.creator-application-actions form,.creator-application-actions .btn{width:100%}}

/* V3.77.3 — Déblocage candidature créateur depuis la fiche utilisateur */
.user-creator-application-panel{margin-top:16px}
.creator-application-user-status{display:flex;align-items:center;gap:12px;padding:14px;margin:14px 0;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025)}
.creator-application-user-status>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.creator-application-user-status small{color:var(--muted);overflow-wrap:anywhere}
@media(max-width:560px){.creator-application-user-status{align-items:flex-start;flex-direction:column}.user-creator-application-panel .btn{width:100%}}

/* V3.78.0 — HUD fichiers + points */
.hud-download-builder{padding:14px;border:1px solid rgba(0,229,255,.18);border-radius:14px;background:rgba(0,229,255,.035)}
.hud-download-toggle{display:flex!important;align-items:flex-start!important;gap:11px!important}
.hud-download-toggle input{width:20px!important;height:20px!important;flex:0 0 20px;margin-top:2px}
.hud-download-toggle span{display:grid;gap:3px}.hud-download-toggle small{color:var(--muted);font-weight:400}
#hudDownloadFields{display:grid;gap:12px;margin-top:14px}
#hudDownloadFields[hidden]{display:none}
.hud-download-public{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px;margin-top:13px;border:1px solid rgba(0,229,255,.16);border-radius:12px;background:rgba(0,229,255,.035)}
.hud-download-public>div{display:grid;gap:3px;min-width:0}.hud-download-public small{color:var(--cyan);font-size:.62rem;font-weight:800}.hud-download-public p{margin:3px 0 0;color:var(--muted);font-size:.75rem}
.points-wallet-inline{padding-top:0!important;padding-bottom:0!important}
.points-wallet-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;border:1px solid rgba(255,213,74,.22);border-radius:18px;background:linear-gradient(135deg,rgba(255,213,74,.06),rgba(0,229,255,.04))}
.points-wallet-card h2{margin:7px 0}.points-wallet-card p{margin:0;color:var(--muted)}
.points-wallet-value{text-align:right;display:grid;gap:3px}.points-wallet-value small{color:var(--muted);font-size:.62rem}.points-wallet-value strong{font:800 1.5rem Orbitron;color:var(--yellow)}.points-wallet-value span{font-size:.68rem;color:var(--muted)}
@media(max-width:650px){.hud-download-public,.points-wallet-card{align-items:stretch;flex-direction:column}.hud-download-public .btn{width:100%}.points-wallet-value{text-align:left}}

/* V3.79.0 — récompenses Redeem + V-Badge créateurs */
.tournament-redeem-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tournament-redeem-choice{position:relative;display:grid!important;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:11px;padding:11px!important;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.02);cursor:pointer}
.tournament-redeem-choice:hover{border-color:rgba(0,229,255,.35);background:rgba(0,229,255,.035)}
.tournament-redeem-choice:has(input:checked){border-color:var(--cyan);box-shadow:0 0 0 1px rgba(0,229,255,.18) inset;background:rgba(0,229,255,.055)}
.tournament-redeem-choice input{position:absolute;top:9px;right:9px;width:18px!important;height:18px!important;accent-color:var(--cyan)}
.tournament-redeem-choice img{width:76px;height:76px;object-fit:cover;border-radius:10px}.tournament-redeem-choice span{display:grid;gap:5px;min-width:0}.tournament-redeem-choice strong{overflow-wrap:anywhere}.tournament-redeem-choice small{color:var(--yellow)}
.redeem-edit-card{border-color:rgba(0,229,255,.22)}.redeem-edit-preview img{width:150px;height:110px;object-fit:cover;border-radius:12px;border:1px solid rgba(255,255,255,.1)}
.creator-admin-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.creator-vbadge-admin{border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:14px}.creator-vbadge-admin legend{padding:0 8px;font-weight:800}.creator-vbadge-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.creator-vbadge-choice{position:relative;display:flex!important;flex-direction:column;align-items:center!important;justify-content:center;gap:7px;padding:12px!important;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.02);cursor:pointer;min-height:126px}.creator-vbadge-choice:has(input:checked){border-color:#ffd54a;background:rgba(255,213,74,.06);box-shadow:0 0 0 1px rgba(255,213,74,.15) inset}.creator-vbadge-choice input{position:absolute;top:8px;right:8px;width:18px!important;height:18px!important}.creator-vbadge-choice img{width:72px;height:72px;object-fit:contain}.creator-vbadge-none{width:72px;height:72px;border:1px dashed rgba(255,255,255,.22);border-radius:50%;display:grid;place-items:center;color:var(--muted);font-size:.7rem}
.creator-showcase-card,.creator-directory-card{position:relative;isolation:isolate}.creator-vbadge-corner{position:absolute!important;right:13px!important;top:13px!important;width:48px!important;height:48px!important;object-fit:contain!important;z-index:5!important;filter:drop-shadow(0 5px 10px rgba(0,0,0,.45))}.creator-vbadge-watermark{position:absolute!important;left:50%!important;top:52%!important;transform:translate(-50%,-50%)!important;width:190px!important;height:190px!important;object-fit:contain!important;opacity:.075!important;z-index:-1!important;pointer-events:none!important;filter:none!important}.creator-featured-card .creator-vbadge-corner{top:42px!important}
.creator-profile-side{position:relative;overflow:hidden}.creator-profile-avatar{position:relative}.creator-vbadge-profile-corner{position:absolute;right:18px;top:18px;width:64px;height:64px;object-fit:contain;z-index:4;filter:drop-shadow(0 6px 12px rgba(0,0,0,.45))}.creator-profile-main{position:relative;isolation:isolate;overflow:hidden}.creator-vbadge-profile-watermark{position:absolute;left:50%;top:250px;transform:translate(-50%,-50%);width:min(440px,72%);height:min(440px,72vw);object-fit:contain;opacity:.06;z-index:-1;pointer-events:none}
@media(max-width:850px){.tournament-redeem-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.creator-vbadge-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tournament-redeem-picker{grid-template-columns:1fr}.creator-admin-edit-grid{grid-template-columns:1fr}.creator-vbadge-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.creator-vbadge-corner{width:42px!important;height:42px!important}.creator-vbadge-watermark{width:150px!important;height:150px!important}.creator-vbadge-profile-corner{width:54px;height:54px;right:12px;top:12px}.creator-vbadge-profile-watermark{width:270px;height:270px;top:220px}}

/* V3.79.1 — Éditeur d'actualités façon journal */
.news-editor-card{max-width:none}
.news-section-builder{display:grid;gap:15px;padding:18px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.018)}
.news-section-builder-head{display:flex;align-items:center;justify-content:space-between;gap:18px}
.news-section-builder-head h3{margin:5px 0}.news-section-builder-head p{margin:0;color:var(--muted);max-width:720px}
#newsSections{display:grid;gap:14px}
.news-section-editor{display:grid;gap:12px;padding:16px;border:1px solid rgba(0,229,255,.14);border-radius:14px;background:rgba(0,229,255,.025)}
.news-section-editor-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.news-existing-images{display:grid;gap:8px}
.news-existing-images-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.news-existing-image{display:grid!important;gap:6px!important;padding:8px!important;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025)}
.news-existing-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
.news-existing-image span{display:flex;align-items:center;gap:6px;font-size:.7rem;color:var(--muted)}
.news-existing-image input{width:17px!important;height:17px!important}
.news-publish-toggle{display:flex!important;align-items:center!important;gap:9px!important}
.news-publish-toggle input{width:19px!important;height:19px!important}

.newspaper-intro{font-size:1.02rem;line-height:1.82}
.newspaper-sections{display:grid;gap:34px;margin-top:34px}
.newspaper-section{position:relative;padding-top:26px;border-top:1px solid rgba(255,255,255,.10)}
.newspaper-section h2{font-family:Orbitron,sans-serif;font-size:1.5rem;line-height:1.25;margin:0 0 15px}
.newspaper-section-text{font-size:1rem;line-height:1.82}
.newspaper-section-gallery{display:grid;gap:12px;margin-top:20px}
.newspaper-section-gallery-1{grid-template-columns:minmax(0,1fr)}
.newspaper-section-gallery-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.newspaper-section-gallery-3,.newspaper-section-gallery-4,.newspaper-section-gallery-5,.newspaper-section-gallery-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.newspaper-section-gallery figure{margin:0;overflow:hidden;border-radius:14px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025)}
.newspaper-section-gallery img{display:block;width:100%;height:100%;max-height:520px;object-fit:cover}
.newspaper-section-gallery-1 img{aspect-ratio:16/9}
.newspaper-section-gallery-2 img{aspect-ratio:4/3}
.newspaper-section-gallery-3 img,.newspaper-section-gallery-4 img,.newspaper-section-gallery-5 img,.newspaper-section-gallery-6 img{aspect-ratio:1/1}
.newspaper-section-gallery figcaption{padding:9px 11px;color:var(--muted);font-size:.72rem;line-height:1.45}

@media(max-width:800px){
  .news-section-builder-head{align-items:stretch;flex-direction:column}
  .news-section-builder-head .btn{width:100%}
  .news-existing-images-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .newspaper-section-gallery-3,.newspaper-section-gallery-4,.newspaper-section-gallery-5,.newspaper-section-gallery-6{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .news-section-editor{padding:12px}
  .news-existing-images-grid{grid-template-columns:1fr 1fr}
  .newspaper-sections{gap:26px;margin-top:26px}
  .newspaper-section{padding-top:20px}
  .newspaper-section h2{font-size:1.18rem}
  .newspaper-section-text,.newspaper-intro{font-size:.94rem;line-height:1.72}
  .newspaper-section-gallery-2,.newspaper-section-gallery-3,.newspaper-section-gallery-4,.newspaper-section-gallery-5,.newspaper-section-gallery-6{grid-template-columns:1fr}
  .newspaper-section-gallery img{aspect-ratio:16/10!important}
}

/* V3.79.2 — V-Badges : aucun fond gris, profil plus visible */
.creator-vbadge,
.creator-vbadge img,
.creator-vbadge-corner,
.creator-vbadge-corner img,
.creator-vbadge-watermark,
.creator-vbadge-watermark img,
.creator-profile-vbadge,
.creator-profile-vbadge img,
.creator-profile-vbadge-watermark,
.creator-profile-vbadge-watermark img,
.vbadge,
.vbadge img,
.vbadge-corner,
.vbadge-corner img,
.vbadge-watermark,
.vbadge-watermark img{
    background:transparent!important;
    background-color:transparent!important;
    box-shadow:none!important;
}

/* Badge visible sur la fiche/profil créateur */
.creator-profile-vbadge,
.creator-detail-vbadge,
.creator-profile .creator-vbadge-corner{
    width:92px!important;
    height:92px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
.creator-profile-vbadge img,
.creator-detail-vbadge img,
.creator-profile .creator-vbadge-corner img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    background:transparent!important;
    filter:none!important;
}

/* Grand badge décoratif derrière le texte du profil */
.creator-profile-vbadge-watermark,
.creator-detail-vbadge-watermark,
.creator-profile .creator-vbadge-watermark{
    opacity:.30!important;
    width:310px!important;
    height:310px!important;
    background:transparent!important;
    box-shadow:none!important;
}
.creator-profile-vbadge-watermark img,
.creator-detail-vbadge-watermark img,
.creator-profile .creator-vbadge-watermark img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    background:transparent!important;
}

/* Les badges des cartes gardent aussi un fond totalement transparent */
.creator-vbadge-corner,
.creator-card-vbadge,
.creator-vbadge-watermark{
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
.creator-card-vbadge img,
.creator-vbadge-corner img,
.creator-vbadge-watermark img{
    object-fit:contain!important;
    background:transparent!important;
}

@media(max-width:600px){
    .creator-profile-vbadge,
    .creator-detail-vbadge,
    .creator-profile .creator-vbadge-corner{
        width:76px!important;
        height:76px!important;
    }
    .creator-profile-vbadge-watermark,
    .creator-detail-vbadge-watermark,
    .creator-profile .creator-vbadge-watermark{
        width:230px!important;
        height:230px!important;
        opacity:.28!important;
    }
}

/* V3.79.3 — V-Badges réellement transparents */
.creator-vbadge-corner,
.creator-vbadge-profile-corner,
.creator-vbadge-watermark,
.creator-vbadge-profile-watermark{
    background:none!important;
    background-color:transparent!important;
    border:0!important;
    box-shadow:none!important;
}

/* Fiche complète : badge plus grand sur la zone profil */
.creator-vbadge-profile-corner{
    width:88px!important;
    height:88px!important;
    right:14px!important;
    top:14px!important;
    object-fit:contain!important;
    filter:drop-shadow(0 5px 10px rgba(0,0,0,.35))!important;
}

/* Filigrane derrière le texte : plus visible */
.creator-vbadge-profile-watermark{
    width:min(520px,82%)!important;
    height:min(520px,82vw)!important;
    opacity:.20!important;
    object-fit:contain!important;
    filter:none!important;
}

/* Cartes créateurs : aucun rectangle autour du badge */
.creator-vbadge-corner{
    width:54px!important;
    height:54px!important;
    object-fit:contain!important;
    filter:drop-shadow(0 4px 9px rgba(0,0,0,.32))!important;
}
.creator-vbadge-watermark{
    opacity:.11!important;
    background:transparent!important;
    filter:none!important;
}

@media(max-width:600px){
    .creator-vbadge-profile-corner{
        width:72px!important;
        height:72px!important;
        right:10px!important;
        top:10px!important;
    }
    .creator-vbadge-profile-watermark{
        width:300px!important;
        height:300px!important;
        opacity:.18!important;
    }
}

/* V3.79.4 — Redeem admin allégé */
.redeem-pagination{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:14px}
.redeem-pagination span{color:var(--muted);font-size:.78rem}

/* V3.79.6 — listes Redeem modifiables + publication ciblée */
.redeem-group-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.redeem-group-actions form{margin:0}
.manual-publish-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.manual-publish-modes label{display:flex!important;gap:10px!important;align-items:flex-start!important;padding:13px!important;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.025);cursor:pointer}
.manual-publish-modes label:has(input:checked){border-color:var(--cyan);background:rgba(0,229,255,.05)}
.manual-publish-modes input{width:18px!important;height:18px!important;flex:0 0 18px}.manual-publish-modes span{display:grid;gap:3px}.manual-publish-modes small{color:var(--muted);font-weight:400}
#manualCodeChooser[hidden]{display:none}
@media(max-width:650px){.manual-publish-modes{grid-template-columns:1fr}.redeem-group-actions{display:grid}.redeem-group-actions .btn,.redeem-group-actions form{width:100%}}

/* V3.79.7 — plusieurs récompenses Redeem par tournoi */
.tournament-redeem-choice input[type=checkbox]{width:20px;height:20px;accent-color:var(--cyan)}

/* V3.79.8 — Récompenses Redeem tournoi : sélection et image principale */
.tournament-redeem-choice{
    position:relative;
    overflow:hidden;
}
.tournament-redeem-choice img{
    display:block!important;
    width:82px!important;
    height:82px!important;
    object-fit:cover!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.03);
}
.tournament-redeem-choice:has(input:checked)::after{
    content:"SÉLECTIONNÉ";
    position:absolute;
    top:8px;
    left:8px;
    padding:4px 7px;
    border-radius:999px;
    background:rgba(0,229,255,.92);
    color:#001014;
    font-size:.55rem;
    font-weight:900;
    letter-spacing:.04em;
}
.tournament-redeem-choice:has(input:checked) img{
    outline:2px solid var(--cyan);
    outline-offset:2px;
}

/* V3.79.9 — récompenses Redeem visibles sur les tournois */
.tournament-visual-redeem{position:relative;overflow:hidden}
.tournament-featured-redeem{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.88;z-index:0}
.tournament-visual-redeem::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,8,14,.18),rgba(5,8,14,.72));z-index:1}
.tournament-visual-redeem>span,.tournament-visual-redeem>strong,.tournament-visual-redeem>small{position:relative;z-index:2;text-shadow:0 2px 10px rgba(0,0,0,.75)}
.home-redeem-list{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.tournament-redeem-mini{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025)}
.tournament-redeem-mini img{width:44px;height:44px;object-fit:cover;border-radius:8px}

/* V3.80.0 — profil vendeur et configuration créateur */
.seller-contact-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.seller-contact-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid rgba(255,255,255,.1);border-radius:999px;text-decoration:none;background:rgba(255,255,255,.03)}
.seller-phone-builder{display:grid;gap:10px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.02)}
.seller-phone-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.creator-profile-first-setup{border-color:rgba(0,229,255,.25)!important;background:rgba(0,229,255,.025)}
@media(max-width:600px){.seller-phone-row{grid-template-columns:1fr}.seller-phone-row .btn{width:100%}}

/* V3.80.2 — accès profil vendeur fiable */
.seller-dashboard-card{display:grid;gap:8px}
.seller-dashboard-card .dashboard-secondary-link{font-size:.72rem;color:var(--muted)}
.seller-profile-inline-editor{margin-top:18px!important;border:1px solid rgba(0,229,255,.22)!important;background:rgba(0,229,255,.025)!important}

/* V3.80.3 — affichage fiable des récompenses Redeem des tournois */
.home-redeem-list{display:flex!important;gap:10px!important;flex-wrap:wrap!important;align-items:stretch!important}
.tournament-redeem-mini{min-width:150px!important;max-width:210px!important;display:flex!important;align-items:center!important;gap:9px!important;padding:9px 11px!important}
.tournament-redeem-mini img{display:block!important;width:58px!important;height:58px!important;flex:0 0 58px!important;object-fit:cover!important;border-radius:10px!important}
.tournament-redeem-mini small{font-size:.72rem!important;line-height:1.25!important;overflow-wrap:anywhere}
.redeem-public-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:12px!important}
.redeem-public-item{display:flex!important;align-items:center!important;gap:12px!important;padding:12px!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:13px!important;background:rgba(255,255,255,.025)!important}
.redeem-public-item img{display:block!important;width:86px!important;height:86px!important;flex:0 0 86px!important;object-fit:cover!important;border-radius:11px!important}
.redeem-public-item>div{display:grid;gap:5px;min-width:0}
.redeem-public-item small{color:var(--yellow)}
.tournament-redeem-placeholder{display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border-radius:10px;background:rgba(255,255,255,.045);font-size:1.35rem}
.tournament-featured-redeem{display:block!important}
@media(max-width:600px){
  .home-redeem-list{display:grid!important;grid-template-columns:1fr 1fr!important}
  .tournament-redeem-mini{min-width:0!important;max-width:none!important}
  .redeem-public-grid{grid-template-columns:1fr!important}
}

/* V3.80.4 — gestion des inscrits aux tournois */
.tournament-admin-card-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tournament-admin-participant-count{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid rgba(0,229,255,.16);border-radius:999px;background:rgba(0,229,255,.04);font-size:.72rem}
.tournament-admin-participant-count strong{color:var(--cyan);font-size:.85rem}
.participant-user-cell{display:flex;align-items:center;gap:10px;min-width:180px}
.participant-user-cell .creator-mini-avatar{width:38px;height:38px;flex:0 0 38px}
.participant-user-cell>div:last-child{display:grid;gap:2px}
.participant-user-cell small{color:var(--muted)}
@media(max-width:700px){
  .tournament-admin-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
  .tournament-admin-actions .btn{width:100%!important}
}
@media(max-width:480px){
  .tournament-admin-actions{grid-template-columns:1fr!important}
}
