/* ==================== CSS COMPLET ==================== */
:root{
  --bg:#0a0a0a;
  --txt:#f5f5f5;
  --dim:#aaa;
  --dim2:#888;
  --v:#ffffff;
  --v-l:#e0e0e0;
  --v-s:#cccccc;
  --v-d:#999999;
  --green:#cccccc;
  --sora:'Sora',system-ui,sans-serif;
  --inter:'Inter',system-ui,sans-serif;
  --glass:rgba(255,255,255,.05);
  --glass-2:rgba(255,255,255,.09);
  --edge:rgba(255,255,255,.5);
  --blur:blur(26px) saturate(180%) brightness(1.08);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
::selection{background:rgba(255,255,255,.3);color:#000}
body{font-family:var(--inter);background:var(--bg);color:var(--txt);min-height:100vh;position:relative;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;letter-spacing:-.01em;line-height:1.5}
.bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.blob{position:absolute;border-radius:50%;filter:blur(70px);background:radial-gradient(circle,rgba(255,255,255,.3),transparent 70%)}
.blob.a{width:560px;height:560px;top:-220px;left:46%;animation:d1 18s ease-in-out infinite}
.blob.b{width:460px;height:460px;top:120px;right:-140px;animation:d2 22s ease-in-out infinite}
.blob.c{width:500px;height:500px;top:560px;left:-160px;animation:d1 26s ease-in-out infinite}
.blob.d{width:420px;height:420px;top:1200px;right:-80px;animation:d2 24s ease-in-out infinite}
@keyframes d1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(30px,50px) scale(1.08)}}
@keyframes d2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-40px,40px) scale(1.1)}}
.noise{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:.03;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.wrap{position:relative;z-index:5}
#gl{position:fixed;inset:0;z-index:1;pointer-events:none}
.glass{position:relative;background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  border:1px solid transparent;
  box-shadow:0 8px 32px rgba(0,0,0,.4),inset 0 1px 1px rgba(255,255,255,.2),inset 0 -12px 30px rgba(255,255,255,.05);
  overflow:hidden}
.glass::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.5),rgba(255,255,255,.05) 32%,transparent 60%,rgba(255,255,255,.2));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.glass::after{content:"";position:absolute;top:0;left:0;right:0;height:45%;border-radius:inherit;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.12),transparent)}

/* ==================== NAV (COMPACT) ==================== */
.nav-wrap{padding:14px 14px 0;position:sticky;top:0;z-index:40}
.nav{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:4px;border-radius:22px;padding:7px 9px;overflow:visible;transition:padding .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
.nav.glass{overflow:visible}
.nav.shrink{padding:4px 9px;box-shadow:0 12px 38px rgba(0,0,0,.6),inset 0 1px 1px rgba(255,255,255,.2)}

.brand{display:flex;align-items:center;gap:8px;font-family:var(--sora);font-weight:700;font-size:14px;padding:0 6px;letter-spacing:-.4px;position:relative;z-index:1;flex-shrink:0}
.logo-img{width:28px;height:28px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255,255,255,.4));animation:float 4s ease-in-out infinite;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.logo-img:hover{transform:scale(1.15) rotate(8deg)}
.brand:hover .logo-img{transform:scale(1.15) rotate(8deg)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.brand-text, .title-container{perspective:500px}
.letter-3d{display:inline-block;transition:transform 0.4s cubic-bezier(.2,.8,.2,1);transform-style:preserve-3d;backface-visibility:hidden;cursor:default;white-space:pre}
.letter-3d:hover{transform:rotateY(180deg) scale(1.2)}

.tabs{display:flex;gap:2px;margin-left:4px;position:relative;z-index:1;flex-shrink:0}
.tab{display:flex;align-items:center;gap:6px;color:var(--dim);text-decoration:none;font-size:12px;font-weight:500;
  padding:7px 10px;border-radius:12px;white-space:nowrap;transition:.2s cubic-bezier(.2,.8,.2,1);cursor:pointer;flex-shrink:0}
.tab:hover{color:var(--txt);background:rgba(255,255,255,.08)}
.tab.active{color:#fff;background:rgba(255,255,255,.15);box-shadow:inset 0 1px 1px rgba(255,255,255,.3),0 4px 14px rgba(0,0,0,.2)}
.sp{flex:1;min-width:4px}

.pill{position:relative;z-index:1;display:flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;color:var(--txt);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:6px 9px;border-radius:11px;cursor:pointer;transition:.2s;white-space:nowrap;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.25);flex-shrink:0}
.pill:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);transform:translateY(-1px)}
.pill:active{transform:scale(.97)}
.pill b{color:#fff;font-weight:600}
.pill.tel{color:#fff}
.pill svg,.tab svg,.brand svg{flex-shrink:0}

/* ✅ Profile compact */
.profile{position:relative;z-index:2;max-width:130px;flex-shrink:0;min-width:0}

/* ✅ Avatar compact */
.avatar{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  padding:3px 7px 3px 3px;border-radius:999px;cursor:pointer;transition:.2s;box-shadow:inset 0 1px 1px rgba(255,255,255,.25);
  max-width:120px;overflow:hidden;min-width:0}
.avatar:hover{background:rgba(255,255,255,.1);transform:translateY(-1px)}
.avatar:active{transform:scale(.97)}
.avatar .pic{width:26px;height:26px;border-radius:50%;overflow:hidden;flex:none;background:linear-gradient(135deg,#fff,#aaa);
  display:flex;align-items:center;justify-content:center;color:#000;font-weight:700;font-size:12px;font-family:var(--sora);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),0 3px 10px rgba(255,255,255,.3);position:relative}
.avatar .pic img{width:100%;height:100%;object-fit:cover}
.avatar .nm{font-size:11.5px;font-weight:500;max-width:50px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;min-width:0}
.avatar .chev{color:var(--dim2);transition:.25s;flex-shrink:0}
.avatar.on .chev{transform:rotate(180deg)}

/* ✅ Menu déroulant */
.menu{position:absolute;right:0;top:48px;width:244px;border-radius:20px;padding:13px;display:none;z-index:9999;transform-origin:top right}
.menu.open{display:block;animation:pop .22s cubic-bezier(.2,.9,.2,1)}
.menu.glass{overflow:visible}
@keyframes pop{from{opacity:0;transform:translateY(-10px) scale(.96)}to{opacity:1;transform:none}}
.menu>*{position:relative;z-index:1}
.menu .top{display:flex;gap:11px;align-items:center;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}
.menu .big{width:44px;height:44px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#fff,#aaa);
  display:flex;align-items:center;justify-content:center;color:#000;font-weight:700;font-family:var(--sora);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.menu .big img{width:100%;height:100%;object-fit:cover}
.menu .top b{display:block;font-size:14px;font-family:var(--sora);font-weight:600;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.menu .top small{color:var(--dim);font-size:12px}
.bal{margin-top:11px;background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.14);border-radius:13px;
  padding:10px 12px;display:flex;justify-content:space-between;align-items:center;font-size:12.5px;box-shadow:inset 0 1px 1px rgba(255,255,255,.25)}
.bal b{color:#fff;font-family:var(--sora)}
.mrow{display:flex;align-items:center;gap:11px;padding:9px 9px;border-radius:11px;color:var(--dim);font-size:13px;font-weight:500;cursor:pointer;margin-top:2px;transition:.15s}
.mrow:hover{background:rgba(255,255,255,.08);color:var(--txt)}
.mrow.out{color:#ff5555}
.mrow svg{opacity:.85}

/* ==================== HERO ==================== */
.hero{max-width:840px;margin:0 auto;text-align:center;padding:8px 20px 10px;min-height:auto;display:flex;flex-direction:column;align-items:center;justify-content:center}
.hero-logo{position:relative;display:inline-flex;margin:0 auto 34px;isolation:isolate}
.hero-logo .halo{position:absolute;inset:-48px;border-radius:50%;z-index:-1;filter:blur(28px);opacity:.85;background:conic-gradient(from 0deg,transparent 0%,rgba(255,255,255,.4) 14%,transparent 34%,rgba(200,200,200,.3) 54%,transparent 72%,rgba(255,255,255,.4) 88%,transparent 100%);animation:spin 9s linear infinite}
.hero-logo .ring{position:absolute;inset:-16px;border-radius:50%;border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 0 34px rgba(255,255,255,.2);z-index:-1}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-logo .logo-main{width:180px;height:180px;object-fit:contain;animation:float 5s ease-in-out infinite, floatShadow 5s ease-in-out infinite;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.hero-logo .logo-main:hover{transform:scale(1.1) rotate(-5deg)}
@keyframes floatShadow{0%,100%{filter:drop-shadow(0 20px 30px rgba(255,255,255,.2))}50%{filter:drop-shadow(0 40px 50px rgba(255,255,255,.35))}}
.count{display:inline-flex;align-items:center;gap:9px;border-radius:999px;padding:9px 18px;font-size:13px;color:var(--dim);animation:rise .9s .05s cubic-bezier(.2,.7,.2,1) both}
.count>*{position:relative;z-index:1}
.count .dot{width:7px;height:7px;border-radius:50%;background:#ccc;box-shadow:0 0 10px #ccc;position:relative}
.count .dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid #ccc;opacity:.5;animation:ping 2s ease-out infinite}
@keyframes ping{0%{transform:scale(.6);opacity:.7}100%{transform:scale(2);opacity:0}}
h1{font-family:var(--sora);font-size:clamp(56px,9vw,96px);font-weight:800;letter-spacing:-.045em;line-height:.92;color:#fff;text-shadow:0 0 40px rgba(255,255,255,.5);margin:0;animation:rise .9s .1s cubic-bezier(.2,.7,.2,1) both}
.title-container{display:inline-block;position:relative}
.sub{margin-top:24px;font-size:clamp(18px,2.5vw,22px);font-weight:400;color:var(--dim);animation:rise .9s .15s cubic-bezier(.2,.7,.2,1) both}
.sub b{color:#fff;font-weight:600}
.cursor{display:inline-block;width:2px;height:.95em;background:#fff;margin-left:2px;vertical-align:-.12em;border-radius:2px;animation:cb 1s steps(1) infinite}
@keyframes cb{50%{opacity:0}}
.desc{margin-top:16px;font-size:15.5px;color:var(--dim2);line-height:1.7;max-width:490px;margin-inline:auto;animation:rise .9s .2s cubic-bezier(.2,.7,.2,1) both}
.cta{display:flex;gap:13px;justify-content:center;margin-top:38px;flex-wrap:wrap;animation:rise .9s .25s cubic-bezier(.2,.7,.2,1) both}

/* ==================== BOUTONS ==================== */
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 27px;border-radius:15px;font-family:var(--sora);font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;border:none;transition:.22s cubic-bezier(.2,.7,.2,1);position:relative;overflow:hidden}
.btn-p{background:linear-gradient(135deg,#fff,#ccc);color:#000;backdrop-filter:blur(6px);box-shadow:inset 0 1px 1px rgba(255,255,255,.5),inset 0 -8px 20px rgba(0,0,0,.1),0 12px 32px rgba(255,255,255,.2)}
.btn-p::after{content:"";position:absolute;top:0;left:-120%;width:70%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);transition:.6s}
.btn-p:hover{transform:translateY(-2px);box-shadow:inset 0 1px 1px rgba(255,255,255,.5),inset 0 -8px 20px rgba(0,0,0,.1),0 18px 44px rgba(255,255,255,.3)}
.btn-p:hover::after{left:130%}
.btn-p:active{transform:scale(.96)}
.btn-g{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:#fff;backdrop-filter:var(--blur);box-shadow:inset 0 1px 1px rgba(255,255,255,.3)}
.btn-g:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}
.btn-g:active{transform:scale(.96)}
.btn-g .db{font-size:10px;font-weight:700;background:rgba(255,255,255,.2);color:#fff;padding:2px 8px;border-radius:6px}

/* ==================== SECTIONS ==================== */
.stats{max-width:880px;margin:18px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:0 20px}
.stat{border-radius:22px;padding:26px;text-align:center;transition:.3s cubic-bezier(.2,.8,.2,1)}
.stat:hover{transform:translateY(-4px)}
.stat>*{position:relative;z-index:1}
.stat .n{font-family:var(--sora);font-size:33px;font-weight:800;letter-spacing:-.03em;background:linear-gradient(180deg,#fff,#aaa);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat .l{margin-top:5px;font-size:12.5px;color:var(--dim)}
.section{max-width:1080px;margin:6px auto 0;padding:0 20px}
.eyebrow{font-family:var(--sora);text-align:center;font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#ccc}
.h2{font-family:var(--sora);text-align:center;font-size:clamp(30px,5vw,42px);font-weight:800;letter-spacing:-.035em;margin-top:12px;background:linear-gradient(180deg,#fff,#aaa);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{text-align:center;color:var(--dim);margin:14px auto 0;max-width:520px;font-size:15px;line-height:1.65}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:46px;perspective:1100px}
.card{border-radius:24px;padding:30px;transition:.26s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d;will-change:transform}
.card>*{position:relative;z-index:1}
.card:hover{transform:translateY(-6px)}
.card:hover .ic{transform:scale(1.08) rotate(-4deg)}
.card .ic{width:50px;height:50px;border-radius:15px;display:flex;align-items:center;justify-content:center;transition:.26s cubic-bezier(.2,.7,.2,1);background:linear-gradient(135deg,rgba(255,255,255,.2),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.2);color:#fff;margin-bottom:18px;box-shadow:inset 0 1px 1px rgba(255,255,255,.4),0 8px 20px rgba(255,255,255,.1)}
.card h3{font-family:var(--sora);font-size:17px;font-weight:600;margin-bottom:8px}
.card p{color:var(--dim);font-size:13.5px;line-height:1.65}
.card .glow{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;opacity:0;transition:.3s;background:radial-gradient(240px 240px at var(--mx,50%) var(--my,50%),rgba(255,255,255,.1),transparent 60%)}
.card:hover .glow{opacity:1}
.band{max-width:1080px;margin:40px auto 0;padding:0 20px}
.band-in{border-radius:30px;padding:60px 30px;text-align:center;background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.02))}
.band-in>*{position:relative;z-index:1}
.band-in h2{font-family:var(--sora);font-size:clamp(26px,4vw,36px);font-weight:800;letter-spacing:-.03em}
.band-in p{color:var(--dim);margin:12px auto 28px;max-width:440px;font-size:15px}
footer{max-width:1080px;margin:104px auto 0;padding:44px 20px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center}
footer .fb{display:flex;align-items:center;gap:10px;font-family:var(--sora);font-weight:700}
footer .fl{display:flex;gap:24px;flex-wrap:wrap}
footer .fl a{color:var(--dim);text-decoration:none;font-size:13.5px;transition:.15s}
footer .fl a:hover{color:#fff}
footer .cp{width:100%;color:var(--dim2);font-size:12.5px;padding-top:6px}
.reveal{opacity:0;transform:translateY(30px);transition:.85s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* ==================== MARQUEE ==================== */
.marquee-wrap{overflow:hidden;margin-top:18px;mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%)}
.marquee{display:flex;gap:10px;width:max-content;animation:scroll 60s linear infinite}
.marquee:hover{animation-play-state:paused}
@keyframes scroll{to{transform:translateX(-50%)}}
.mtag{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);font-family:var(--sora);font-size:11.5px;font-weight:600;white-space:nowrap;transition:.2s;box-shadow:inset 0 1px 1px rgba(255,255,255,.2)}
.mtag:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.16);transform:translateY(-2px)}
.mtag .ml{width:18px;height:18px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex:none;font-size:9px;font-weight:700;color:#000;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);background:#fff}

/* ==================== SEARCH SECTION ==================== */
.search-section{max-width:800px;margin:50px auto 80px;padding:0 20px;display:none}
.search-section.open{display:block;animation:rise .5s cubic-bezier(.2,.7,.2,1)}
.search-panel{border-radius:28px;padding:38px 34px 30px}
.search-panel>*{position:relative;z-index:1}
.search-panel .sp-hdr{font-family:var(--sora);font-size:20px;font-weight:700;letter-spacing:-.03em;margin-bottom:4px}
.search-panel .sp-sub{color:var(--dim2);font-size:13.5px;margin-bottom:24px}
.accordion{border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);margin-bottom:10px;overflow:hidden;transition:.25s}
.accordion.open{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.06)}
.acc-hdr{display:flex;align-items:center;gap:10px;padding:15px 18px;cursor:pointer;user-select:none;transition:.2s}
.acc-hdr:hover{background:rgba(255,255,255,.04)}
.accordion.open .acc-hdr{background:rgba(255,255,255,.08)}
.acc-hdr .ac{width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex:none;background:rgba(255,255,255,.08);color:var(--dim);transition:.25s;font-size:12px}
.accordion.open .acc-hdr .ac{background:rgba(255,255,255,.2);color:#fff;transform:rotate(90deg)}
.acc-hdr .al{font-size:14px;font-weight:500;flex:1}
.acc-hdr .ar{color:var(--dim2);transition:.25s;font-size:16px}
.accordion.open .acc-hdr .ar{transform:rotate(180deg);color:#fff}
.acc-body{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.2,.7,.2,1),padding .35s}
.accordion.open .acc-body{max-height:600px;padding:0 18px 18px}
.acc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.acc-field label{display:block;font-size:11.5px;font-weight:600;color:var(--dim2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.acc-field input,.acc-field select{width:100%;padding:10px 13px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:#fff;font-family:var(--inter);font-size:13.5px;outline:none;transition:.2s}
.acc-field input::placeholder{color:var(--dim2)}
.acc-field input:focus,.acc-field select:focus{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.08);box-shadow:0 0 0 3px rgba(255,255,255,.15)}
.acc-field select option{background:#1a1a1a;color:#fff}
.sp-actions{display:flex;gap:12px;margin-top:24px}
.sp-actions .btn{flex:1;justify-content:center}

/* ==================== RÉSULTATS DE RECHERCHE ==================== */
.res-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:0 4px}
.res-hdr-left{display:flex;align-items:baseline;gap:8px}
.res-hdr-count{font-family:var(--sora);font-size:22px;font-weight:700;color:#fff}
.res-hdr-text{font-size:13px;color:rgba(255,255,255,0.5)}
.res-hdr-time{font-size:11px;color:rgba(255,255,255,0.35);font-family:monospace;padding:4px 8px;background:rgba(255,255,255,0.04);border-radius:6px}
.res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(440px,1fr));gap:16px}
.res-card{background:linear-gradient(180deg,rgba(255,255,255,0.045),rgba(255,255,255,0.015));border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:14px;transition:border-color .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden;animation:cardGlow 3s ease-in-out infinite,resultFadeIn 0.5s cubic-bezier(0.34,1.56,0.64,1) both}
.res-card::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent)}
.res-card:hover{border-color:rgba(255,255,255,0.18);box-shadow:0 8px 24px rgba(0,0,0,0.3)}
.res-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,0.06)}
.res-card-id{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
.res-avatar{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,0.15),rgba(255,255,255,0.03));border:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;font-family:var(--sora);font-size:15px;font-weight:700;color:#fff;flex-shrink:0;transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1),box-shadow 0.3s}
.res-card:hover .res-avatar{transform:rotate(8deg) scale(1.1);box-shadow:0 0 20px rgba(255,255,255,0.3)}
.res-card-titles{display:flex;flex-direction:column;gap:2px;min-width:0}
.res-card-name{font-family:var(--sora);font-size:15px;font-weight:600;color:#fff;line-height:1.3;word-break:break-word;background:linear-gradient(90deg,#fff 0%,#aaa 50%,#fff 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;transition:background-position 0.6s}
.res-card:hover .res-card-name{background-position:100% center}
.res-card-sub{font-size:11.5px;color:rgba(255,255,255,0.45);font-style:italic}
.res-card-actions{display:flex;gap:6px;flex-shrink:0}
.res-icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;color:#ccc;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:9px;cursor:pointer;transition:all .15s}
.res-icon-btn:hover{background:rgba(255,255,255,0.12);color:#fff;border-color:rgba(255,255,255,0.2)}
.res-dl-wrap{position:relative}
.res-dl-menu{position:absolute;top:calc(100% + 6px);right:0;background:#151515;border:1px solid rgba(255,255,255,0.1);border-radius:10px;padding:4px;min-width:130px;box-shadow:0 12px 32px rgba(0,0,0,0.6);display:none;z-index:100}
.res-dl-menu.open{display:block;animation:pop .15s cubic-bezier(.2,.9,.2,1)}
.res-dl-menu>div{padding:8px 10px;font-size:12px;color:#ccc;cursor:pointer;border-radius:6px;transition:background .1s;font-family:var(--inter);display:flex;align-items:center;gap:8px}
.res-dl-menu>div:hover{background:rgba(255,255,255,0.08);color:#fff}
.res-dl-ext{font-family:monospace;font-size:11px;color:#888;min-width:38px}
.res-card-body{display:flex;flex-direction:column;gap:14px}
.res-section{display:flex;flex-direction:column;gap:6px}
.res-section-title{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:4px}
.res-row{display:grid;grid-template-columns:110px 1fr;gap:10px;align-items:start;padding:6px 0;font-size:13px;line-height:1.4;border-bottom:1px solid rgba(255,255,255,0.03)}
.res-row:last-child{border-bottom:none}
.res-key{color:rgba(255,255,255,0.45);font-size:12px;font-weight:500}
.res-val{color:#f0f0f0;font-weight:400;word-break:break-word;font-size:13px}
.res-val-copy{cursor:pointer;padding:2px 6px;margin:-2px -6px;border-radius:5px;transition:background .15s}
.res-val-copy:hover{background:rgba(255,255,255,0.06)}
.res-sources{padding-top:14px;border-top:1px solid rgba(255,255,255,0.05)}
.res-sources-title{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:8px}
.res-sources-list{display:flex;flex-wrap:wrap;gap:6px}
.res-source{display:inline-flex;align-items:center;padding:4px 10px;font-size:11px;font-weight:500;color:#ddd;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:999px;transition:all 0.25s cubic-bezier(0.34,1.56,0.64,1)}
.res-source:hover{transform:scale(1.1) translateY(-2px);background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.16);box-shadow:0 5px 15px rgba(255,255,255,0.15)}
@media (max-width:900px){.res-grid{grid-template-columns:1fr}}
@media (max-width:640px){.res-row{grid-template-columns:95px 1fr;gap:8px;font-size:12px}.res-key{font-size:11px}.res-val{font-size:12px}.res-card{padding:14px}}

/* ==================== HISTORIQUE ==================== */
.history-list{display:flex;flex-direction:column;gap:10px;margin-top:20px;max-height:55vh;overflow-y:auto;padding-right:6px}
.history-list::-webkit-scrollbar{width:5px}
.history-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:5px}
.history-item{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 14px;transition:.2s;cursor:pointer}
.history-item:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.15);transform:translateX(3px)}
.history-item-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}
.history-item-num{font-family:var(--sora);font-size:11px;font-weight:700;color:#fff;background:rgba(255,255,255,.1);padding:2px 8px;border-radius:6px}
.history-item-date{font-size:11px;color:rgba(255,255,255,.5);flex:1;text-align:center}
.history-item-count{font-size:11px;font-weight:600;color:#ddd;background:rgba(255,255,255,.08);padding:2px 8px;border-radius:6px}
.history-item-criteria{font-size:12.5px;color:rgba(255,255,255,.75);line-height:1.5;word-break:break-word}
.history-item-meta{display:flex;justify-content:flex-end;margin-top:8px}

/* ==================== GRAPHE ==================== */
.graph-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}
.graph-toolbar .btn{padding:9px 16px;font-size:12px}
.graph-canvas{position:relative;width:100%;height:60vh;min-height:400px;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,0.03),transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,0.03),transparent 50%),rgba(0,0,0,0.4);background-image:radial-gradient(circle,rgba(255,255,255,0.08) 1px,transparent 1px);background-size:24px 24px;border-radius:16px;border:1px solid rgba(255,255,255,0.08);overflow:hidden;cursor:grab}
.graph-canvas:active{cursor:grabbing}
.graph-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.graph-nodes{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2}
.graph-node{position:absolute;min-width:150px;max-width:220px;background:linear-gradient(180deg,rgba(30,30,30,0.95),rgba(20,20,20,0.9));border:1.5px solid rgba(255,255,255,0.15);border-radius:12px;padding:10px 12px 12px;cursor:grab;user-select:none;transition:box-shadow 0.2s,transform 0.15s;backdrop-filter:blur(8px);box-shadow:0 6px 20px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.05);font-family:var(--inter)}
.graph-node:hover{box-shadow:0 8px 28px rgba(0,0,0,0.6),0 0 0 1px var(--node-color,rgba(255,255,255,0.3))}
.graph-node:active{cursor:grabbing}
.graph-node.linking{box-shadow:0 0 0 2px #fff,0 8px 28px rgba(255,255,255,0.3);animation:pulseLinking 1s ease-in-out infinite}
@keyframes pulseLinking{0%,100%{box-shadow:0 0 0 2px #fff,0 8px 28px rgba(255,255,255,0.3)}50%{box-shadow:0 0 0 4px rgba(255,255,255,0.4),0 8px 28px rgba(255,255,255,0.5)}}
.graph-node-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,0.08)}
.graph-node-type{font-size:9.5px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--node-color,#fff);opacity:0.9}
.graph-node-del{width:18px;height:18px;border-radius:50%;border:none;background:rgba(255,85,85,0.15);color:#ff5555;cursor:pointer;font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center;transition:0.15s;padding:0}
.graph-node-del:hover{background:#ff5555;color:#fff;transform:scale(1.1)}
.graph-node-label{font-size:13px;font-weight:600;color:#fff;line-height:1.35;word-break:break-word;margin-bottom:4px}
.graph-node-details{font-size:11px;color:rgba(255,255,255,0.55);line-height:1.4;word-break:break-word;margin-top:4px;padding-top:6px;border-top:1px solid rgba(255,255,255,0.05)}
.graph-node-link{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid rgba(0,0,0,0.6);cursor:crosshair;box-shadow:0 0 8px rgba(255,255,255,0.6);transition:0.2s}
.graph-node-link:hover{transform:translateX(-50%) scale(1.4);box-shadow:0 0 16px rgba(255,255,255,0.9)}

/* ==================== MODALES ==================== */
.modal-overlay{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;background:rgba(5,5,5,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:fadeIn .3s cubic-bezier(.2,.7,.2,1)}
.modal-overlay.open{display:flex}
.modal-overlay .mcard{width:min(92vw,480px);max-height:86vh;overflow-y:auto;border-radius:30px;padding:44px 42px 36px;animation:modalIn .38s cubic-bezier(.2,.8,.2,1);position:relative;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}
.modal-overlay .mcard::-webkit-scrollbar{width:5px}
.modal-overlay .mcard::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:10px}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes modalIn{from{opacity:0;transform:scale(.94) translateY(20px)}to{opacity:1;transform:none}}
.mclose{position:absolute;top:18px;right:20px;width:36px;height:36px;border-radius:50%;border:none;cursor:pointer;background:rgba(255,255,255,.08);color:var(--dim);display:flex;align-items:center;justify-content:center;transition:.2s;font-size:18px;backdrop-filter:blur(6px)}
.mclose:hover{background:rgba(255,255,255,.14);color:#fff;transform:rotate(90deg)}
.mbadge{display:inline-flex;gap:8px;align-items:center;padding:7px 15px;border-radius:999px;background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.14));border:1px solid rgba(255,255,255,.15);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin-bottom:18px;box-shadow:inset 0 1px 1px rgba(255,255,255,.2)}
.mcard h2{font-family:var(--sora);font-size:clamp(26px,4.6vw,36px);font-weight:800;letter-spacing:-.035em;background:linear-gradient(110deg,#fff 20%,#ddd 50%,#ccc 80%);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:12px}
.mcard .mdesc{color:var(--dim);font-size:15px;line-height:1.7;max-width:580px}
.mcard input[type="password"],.mcard input[type="text"],.mcard input[type="number"]{width:100%;padding:12px 15px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;font-family:var(--inter);font-size:16px;letter-spacing:.05em;margin:10px 0;outline:none;transition:.2s}
.mcard input:focus{border-color:rgba(255,255,255,.6);box-shadow:0 0 0 3px rgba(255,255,255,.15)}
.mcard .btn{width:100%;justify-content:center;margin-top:10px}
.mcard .error{color:#ff5555;font-size:14px;text-align:center;margin-top:10px;display:none}

/* ==================== TOAST ==================== */
.toast-container{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:200;display:flex;flex-direction:column;gap:10px;align-items:center}
.toast{background:rgba(20,20,20,.9);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:12px 20px;color:#fff;font-size:14px;font-weight:500;box-shadow:0 8px 30px rgba(0,0,0,.5);backdrop-filter:blur(10px);animation:slideInRight 0.4s cubic-bezier(0.34,1.56,0.64,1)}
@keyframes slideInRight{from{transform:translateX(400px);opacity:0}to{transform:translateX(0);opacity:1}}

/* ==================== PROFILE INFO ==================== */
.profile-info{display:flex;flex-direction:column;gap:12px;margin-top:20px}
.profile-info .row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:rgba(255,255,255,.05);border-radius:10px;font-size:14px}
.profile-info .row .label{color:var(--dim2)}
.profile-info .row .value{font-weight:500;color:#fff;white-space:nowrap}
.profile-info .row .value.mono{font-family:monospace;letter-spacing:.1em}
.settings-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.settings-actions .btn{width:100%;justify-content:center;padding:12px;font-size:14px}
.danger{color:#ff5555!important;border-color:rgba(255,85,85,.3)!important;background:rgba(255,85,85,.1)!important}

/* ==================== PROFILE AVATAR ==================== */
.profile-avatar-zone{display:flex;flex-direction:column;align-items:center;gap:10px;margin:20px 0}
.profile-avatar-big{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,#fff,#aaa);color:#000;display:flex;align-items:center;justify-content:center;font-family:var(--sora);font-weight:800;font-size:36px;box-shadow:0 8px 32px rgba(255,255,255,.25),inset 0 1px 1px rgba(255,255,255,.4);overflow:hidden;position:relative}
.profile-avatar-big img{width:100%;height:100%;object-fit:cover}
.profile-avatar-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:11px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:.2s;font-family:var(--inter)}
.profile-avatar-btn:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.25);transform:translateY(-1px)}
.profile-avatar-btn input{display:none}
.profile-avatar-btn.danger{color:#ff5555;border-color:rgba(255,85,85,.3);background:rgba(255,85,85,.08)}
.profile-avatar-btn.danger:hover{background:rgba(255,85,85,.15)}

/* ==================== ODC FORUM ==================== */
.forum-layout{display:flex;height:85vh;max-height:85vh;width:100%}
.forum-sidebar{width:250px;background:rgba(0,0,0,.35);border-right:1px solid rgba(255,255,255,.06);padding:20px 12px;overflow-y:auto;flex-shrink:0}
.forum-sidebar::-webkit-scrollbar{width:5px}
.forum-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:5px}
.forum-brand{font-family:var(--sora);font-weight:800;font-size:14px;letter-spacing:.12em;padding:8px 12px 18px;background:linear-gradient(90deg,#fff,#aaa);-webkit-background-clip:text;background-clip:text;color:transparent;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:14px;text-transform:uppercase}
.forum-cat{margin-bottom:18px}
.forum-cat-title{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.4);padding:6px 10px;display:flex;align-items:center;gap:6px;user-select:none}
.forum-ch{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:8px;font-size:13.5px;color:rgba(255,255,255,.65);cursor:pointer;transition:.15s;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.forum-ch:hover{background:rgba(255,255,255,.06);color:#fff}
.forum-ch.active{background:rgba(255,255,255,.12);color:#fff;font-weight:500}
.forum-hash{color:rgba(255,255,255,.3);font-weight:700;font-size:15px}
.forum-main{flex:1;display:flex;flex-direction:column;min-width:0;position:relative}
.forum-header{display:flex;align-items:center;gap:12px;padding:18px 24px;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(0,0,0,.2);flex-shrink:0}
.forum-hash-big{font-size:26px;color:rgba(255,255,255,.3);font-weight:700}
.forum-ch-name{font-family:var(--sora);font-size:16px;font-weight:700;color:#fff}
.forum-ch-desc{font-size:12px;color:rgba(255,255,255,.45);margin-top:2px}
.forum-messages{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:14px}
.forum-messages::-webkit-scrollbar{width:6px}
.forum-messages::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:6px}
.forum-empty{text-align:center;color:rgba(255,255,255,.35);font-size:14px;padding:60px 20px;font-style:italic}
.forum-msg{display:flex;gap:12px;padding:8px 10px;border-radius:10px;transition:background .15s;position:relative}
.forum-msg:hover{background:rgba(255,255,255,.03)}
.forum-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#fff,#888);color:#000;display:flex;align-items:center;justify-content:center;font-family:var(--sora);font-weight:800;font-size:15px;flex-shrink:0;overflow:hidden}
.forum-avatar img{width:100%;height:100%;object-fit:cover}
.forum-msg.mine .forum-avatar{background:linear-gradient(135deg,#a0b8ff,#7a9bff);color:#000}
.forum-msg-body{flex:1;min-width:0}
.forum-msg-head{display:flex;align-items:baseline;gap:8px;margin-bottom:3px}
.forum-msg-author{font-family:var(--sora);font-size:13.5px;font-weight:600;color:#fff}
.forum-msg.mine .forum-msg-author{color:#a0b8ff}
.forum-msg-time{font-size:11px;color:rgba(255,255,255,.35)}
.forum-msg-edited{font-size:10.5px;color:rgba(255,255,255,.3);font-style:italic}
.forum-msg-content{font-size:14px;color:rgba(255,255,255,.9);line-height:1.5;word-break:break-word}
.forum-msg-actions{display:none;gap:4px;margin-top:6px}
.forum-msg:hover .forum-msg-actions{display:flex}
.forum-mini-btn{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.6);border-radius:6px;padding:3px 8px;font-size:11px;cursor:pointer;transition:.15s}
.forum-mini-btn:hover{background:rgba(255,255,255,.12);color:#fff}
.forum-mini-btn.danger:hover{background:rgba(255,85,85,.2);color:#ff5555;border-color:rgba(255,85,85,.3)}
.forum-reply{border-left:2px solid rgba(255,255,255,.2);padding:4px 10px;margin-bottom:6px;font-size:12px;color:rgba(255,255,255,.5);background:rgba(255,255,255,.03);border-radius:0 6px 6px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.forum-reply-author{color:#fff;font-weight:600}
.forum-input-wrap{border-top:1px solid rgba(255,255,255,.06);padding:14px 24px;background:rgba(0,0,0,.2);flex-shrink:0}
.forum-reply-bar{background:rgba(255,255,255,.05);border-left:3px solid #7a9bff;padding:8px 12px;border-radius:6px;font-size:12px;color:rgba(255,255,255,.7);margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}
.forum-reply-bar button{background:none;border:none;color:rgba(255,255,255,.5);cursor:pointer;font-size:14px}
.forum-input-row{display:flex;gap:10px;align-items:flex-end}
.forum-input-row textarea{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px 14px;color:#fff;font-family:var(--inter);font-size:14px;resize:none;outline:none;max-height:120px;transition:.2s}
.forum-input-row textarea:focus{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.08)}
.forum-send-btn{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#fff,#ccc);color:#000;border:none;cursor:pointer;font-size:16px;flex-shrink:0;transition:.2s;box-shadow:0 4px 14px rgba(255,255,255,.15)}
.forum-send-btn:hover{transform:scale(1.08);box-shadow:0 6px 20px rgba(255,255,255,.25)}
.forum-send-btn:active{transform:scale(.94)}
@media (max-width:700px){
  .forum-sidebar{width:170px;padding:14px 8px}
  .forum-header{padding:12px 16px}
  .forum-messages{padding:14px 16px}
  .forum-input-wrap{padding:10px 16px}
  .forum-ch{font-size:12.5px}
}

/* ==================== ADMIN PANEL ==================== */
.admin-tabs{display:flex;gap:8px;margin:20px 0 16px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:12px}
.admin-tab{padding:9px 16px;border-radius:10px;background:transparent;border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.6);font-size:13px;font-weight:500;cursor:pointer;transition:.2s;font-family:var(--inter)}
.admin-tab:hover{background:rgba(255,255,255,.06);color:#fff}
.admin-tab.active{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.25)}
.admin-panel{margin-top:12px}
.admin-search-row{display:flex;gap:10px;align-items:center;margin-bottom:14px}
.admin-search-row input{flex:1;padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;font-family:var(--inter);font-size:13.5px;outline:none}
.admin-search-row input:focus{border-color:rgba(255,255,255,.4)}
.admin-count{font-size:12px;color:rgba(255,255,255,.4);white-space:nowrap}
.admin-users-list{max-height:55vh;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:6px}
.admin-users-list::-webkit-scrollbar{width:5px}
.admin-users-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:5px}
.admin-user-card{display:flex;align-items:center;gap:14px;padding:12px 14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;transition:.15s}
.admin-user-card:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.15)}
.admin-user-card.banned{background:rgba(255,85,85,.08);border-color:rgba(255,85,85,.25)}
.admin-user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#fff,#aaa);color:#000;display:flex;align-items:center;justify-content:center;font-family:var(--sora);font-weight:800;font-size:15px;flex-shrink:0;overflow:hidden}
.admin-user-avatar img{width:100%;height:100%;object-fit:cover}
.admin-user-info{flex:1;min-width:0}
.admin-user-name{font-family:var(--sora);font-size:14px;font-weight:600;color:#fff;display:flex;align-items:center;gap:8px}
.admin-user-name .badge{font-size:9.5px;padding:2px 7px;border-radius:6px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.badge.ban{background:rgba(255,85,85,.2);color:#ff5555}
.badge.ok{background:rgba(120,255,120,.15);color:#7affb5}
.admin-user-meta{font-size:11.5px;color:rgba(255,255,255,.45);margin-top:2px;font-family:monospace}
.admin-user-actions{display:flex;gap:6px;flex-shrink:0}
.admin-btn{padding:7px 12px;border-radius:9px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:.15s;font-family:var(--inter)}
.admin-btn:hover{background:rgba(255,255,255,.12)}
.admin-btn.ban{color:#ff5555;border-color:rgba(255,85,85,.3);background:rgba(255,85,85,.08)}
.admin-btn.ban:hover{background:rgba(255,85,85,.15)}
.admin-btn.unban{color:#7affb5;border-color:rgba(122,255,181,.3);background:rgba(122,255,181,.08)}
.admin-btn.unban:hover{background:rgba(122,255,181,.15)}
.admin-btn.del{color:#ff5555;border-color:rgba(255,85,85,.3);background:rgba(255,85,85,.06)}
.admin-btn.del:hover{background:rgba(255,85,85,.15)}

/* ==================== BADGES ==================== */
.mrow-badge{margin-left:auto;min-width:18px;height:18px;padding:0 6px;border-radius:9px;background:#ff5555;color:#fff;font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:var(--sora);box-shadow:0 2px 8px rgba(255,85,85,.5);animation:badgePulse 2s ease-in-out infinite}
.avatar-notif-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#ff5555;color:#fff;font-size:9.5px;font-weight:700;font-family:var(--sora);display:flex;align-items:center;justify-content:center;border:2px solid #0a0a0a;box-shadow:0 2px 6px rgba(255,85,85,.6);animation:badgePulse 2s ease-in-out infinite;z-index:10}
@keyframes badgePulse{0%,100%{transform:scale(1);box-shadow:0 2px 8px rgba(255,85,85,.5)}50%{transform:scale(1.1);box-shadow:0 2px 14px rgba(255,85,85,.7)}}

/* ==================== ANIMATIONS DIVERSES ==================== */
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes cardGlow{0%,100%{box-shadow:0 0 20px rgba(255,255,255,0.05),0 8px 24px rgba(0,0,0,0.3)}50%{box-shadow:0 0 40px rgba(255,255,255,0.15),0 8px 24px rgba(0,0,0,0.3)}}
@keyframes resultFadeIn{from{opacity:0;transform:translateY(20px) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}

/* ==================== RESPONSIVE NAV ==================== */
@media (max-width:1350px){
  .tabs{display:none}
}
@media (max-width:1150px){
  .pill{padding:6px 8px;font-size:11px}
  .brand{font-size:13px}
  .logo-img{width:26px;height:26px}
}
@media (max-width:980px){
  .pill span{display:none}
  .pill{padding:7px 9px}
  .brand-text{display:none}
}