/* Bandeau live */
.livebar{position:fixed;top:0;left:0;right:0;z-index:55;height:40px;display:flex;align-items:center;justify-content:center;gap:14px;padding:0 16px;font-size:13px;
  background:linear-gradient(90deg,#3a1170,#8b5cff 50%,#3a1170);background-size:200% 100%;animation:lbg 6s linear infinite;box-shadow:0 0 24px rgba(139,92,255,.5)}
@keyframes lbg{to{background-position:-200% 0}}
.livebar b{letter-spacing:.14em}
.livebar a{padding:4px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.4);font-weight:600}
.livebar a.lb-go{background:#fff;color:#3a1170;border-color:#fff}
.livebar button{position:absolute;right:12px;background:none;border:0;color:#fff;cursor:pointer;font-size:14px;opacity:.7}
.has-live .nav{top:54px}
.has-live .phead,.has-live .ahead{padding-top:180px}
@media(max-width:760px){.livebar .lb-t,.livebar a:not(.lb-go){display:none}}
/* Recherche */
.nav-search{padding:9px 14px;font-size:13px;color:var(--mute)}
.nav-search kbd{font:600 10px "JetBrains Mono",monospace;padding:2px 6px;border-radius:5px;border:1px solid var(--line);margin-left:6px}
@media(max-width:960px){.nav-search kbd{display:none}.nav-search{margin-left:auto}.burger{margin-left:6px!important}}
.srch{position:fixed;inset:0;z-index:95;background:rgba(2,3,14,.7);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 0;opacity:0;pointer-events:none;transition:.2s}
.srch.show{opacity:1;pointer-events:auto}
.srch-box{width:min(640px,100%);border-radius:20px;background:#080d2e;border:1px solid rgba(46,230,255,.3);box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 40px rgba(46,230,255,.12);overflow:hidden;transform:translateY(-10px);transition:.2s}
.srch.show .srch-box{transform:none}
.srch-in{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}
.srch-in span{color:var(--cyan);font-size:20px}
.srch-in input{flex:1;background:none;border:0;outline:none;color:var(--txt);font:inherit;font-size:17px;padding:0;box-shadow:none}
.srch kbd{font:600 10px "JetBrains Mono",monospace;padding:3px 7px;border-radius:6px;border:1px solid var(--line);color:var(--mute);background:rgba(255,255,255,.03)}
.srch-res{max-height:52vh;overflow:auto;padding:8px}
.srch-h{font:600 10px "JetBrains Mono",monospace;letter-spacing:.2em;color:var(--mute);padding:8px 10px}
.sr{display:grid;grid-template-columns:42px 1fr auto auto;gap:12px;align-items:center;padding:8px 10px;border-radius:12px}
.sr.on,.sr:hover{background:rgba(46,230,255,.1)}
.sr-ic{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;overflow:hidden;background:rgba(255,255,255,.05);color:var(--cyan)}
.sr-ic img{width:100%;height:100%;object-fit:cover}.sr-ic img.lg{width:86%;height:auto}
.sr-t b{display:block;font-size:14px}.sr-t small{color:var(--mute);font-size:12px}
.sr-k{font-size:11px;color:var(--mute);padding:3px 8px;border-radius:999px;border:1px solid var(--line)}
.sr-p{width:32px;height:32px;border-radius:50%;border:0;background:var(--cyan);color:#020414;cursor:pointer}
.srch-empty{padding:30px;text-align:center;color:var(--mute)}
.srch-ft{display:flex;gap:18px;padding:10px 18px;border-top:1px solid var(--line);font-size:12px;color:var(--mute)}
.kb{padding:24px}.kb h3{font-family:var(--ft);margin-bottom:14px}
.kbr{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}
/* Demandes */
.reqs{display:grid;gap:10px;margin-top:16px}
.req{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:center;padding:12px;border-radius:14px;background:rgba(0,0,0,.2);border:1px solid var(--line)}
.req.played{opacity:.55}
.req.new{border-color:var(--cyan);animation:pageIn .4s}
.req p{color:#c3d1f0;font-size:14px;margin:2px 0}.req small{color:var(--mute);font-size:12px}.req .ok{color:#2fe39a}
.vote{display:grid;place-items:center;gap:2px;height:56px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--mute);cursor:pointer;font:inherit}
.vote b{color:var(--txt);font-size:15px}
.vote:hover,.vote.on{border-color:var(--cyan);color:var(--cyan)}
#reqF{display:block}#reqF label{display:grid;gap:6px}
.req b{display:block}
