/* PalmCrest — feuille de style du site (extraite de index.php, ordre d'origine conservé) */

/* ───── bloc sans id ───── */
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#2563eb transparent;}
body{background:#0B0F18;color:#fff;font-family:'Montserrat',sans-serif;overflow-x:hidden;cursor:none;}
a,button{cursor:none;}

::-webkit-scrollbar{width:8px;height:8px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#1d4ed8,#2563eb);border-radius:999px;}
::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#2563eb,#3b82f6);}

#cursor-dot{
  position:fixed;
  width:7px;height:7px;
  background:#fff;
  border-radius:50%;
  pointer-events:none;
  z-index:2147483647;
  transform:translate(-50%,-50%);
  transition:width 0.2s ease, height 0.2s ease, background 0.2s;
  box-shadow:0 0 10px rgba(255,255,255,0.8), 0 0 20px rgba(37,99,235,0.6);
}
#cursor-ring{
  position:fixed;
  width:38px;height:38px;
  border:1.5px solid rgba(37,99,235,0.75);
  border-radius:50%;
  pointer-events:none;
  z-index:2147483646;
  transform:translate(-50%,-50%);
  box-shadow:0 0 12px rgba(37,99,235,0.25);
  transition:width 0.25s ease, height 0.25s ease, border-color 0.25s;
}
body.cursor-hover #cursor-ring{
  width:54px;height:54px;
  border-color:rgba(99,163,255,0.9);
  box-shadow:0 0 20px rgba(37,99,235,0.4);
}
body.cursor-hover #cursor-dot{
  width:5px;height:5px;
  background:#60a5fa;
  box-shadow:0 0 12px rgba(96,165,250,1);
}
body.cursor-click #cursor-ring{
  width:26px;height:26px;
  border-color:rgba(255,255,255,0.9);
  transition:width 0.08s, height 0.08s;
}

/* ═══ Banderole « Session en cours » (page d'accueil) ═══ */
#live-banner{
  position:fixed;top:0;left:0;right:0;z-index:1001;
  display:none;height:48px;
  color:#fff;font-family:'Montserrat',sans-serif;cursor:default;
  background:
    radial-gradient(420px 90px at 0% 50%,rgba(239,68,68,.28),transparent 70%),
    radial-gradient(420px 90px at 100% 50%,rgba(37,99,235,.22),transparent 70%),
    rgba(8,12,24,.86);
  -webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}
#live-banner.show{display:block;animation:lbIn .6s cubic-bezier(.16,1,.3,1) both;}
@keyframes lbIn{from{transform:translateY(-100%);opacity:0;}to{transform:none;opacity:1;}}
#live-banner .lb-in{height:100%;margin:0 auto;padding:0 32px;display:flex;align-items:center;gap:14px;min-width:0;}
#live-banner .lb-badge{
  flex:none;display:inline-flex;align-items:center;gap:8px;height:26px;padding:0 12px 0 10px;border-radius:999px;
  font-size:.64rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#fecaca;
  background:rgba(239,68,68,.16);box-shadow:inset 0 0 0 1px rgba(248,113,113,.45),0 0 18px rgba(239,68,68,.25);
}
#live-banner .lb-dot{position:relative;width:8px;height:8px;border-radius:50%;background:#ef4444;flex:none;box-shadow:0 0 8px rgba(239,68,68,.9);}
#live-banner .lb-dot::after{content:'';position:absolute;inset:0;border-radius:50%;background:#ef4444;animation:lb-pulse 1.6s ease-out infinite;}
@keyframes lb-pulse{0%{transform:scale(1);opacity:.8;}100%{transform:scale(3.2);opacity:0;}}
#live-banner .lb-label{flex:none;font-size:.66rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.5);white-space:nowrap;}
#live-banner .lb-sep{flex:none;width:1px;height:18px;background:rgba(255,255,255,.14);}
#live-banner .lb-text{flex:1;min-width:0;display:flex;align-items:baseline;gap:10px;overflow:hidden;white-space:nowrap;}
#live-banner .lb-title{flex:none;max-width:45%;overflow:hidden;text-overflow:ellipsis;font-weight:800;font-size:.86rem;letter-spacing:.01em;color:#fff;}
#live-banner .lb-msg{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:.8rem;font-weight:500;color:rgba(255,255,255,.62);}
#live-banner .lb-title:empty,#live-banner .lb-msg:empty{display:none;}
#live-banner .lb-join{
  flex:none;display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 16px;border-radius:999px;
  background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;text-decoration:none;
  font-weight:800;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;
  box-shadow:0 8px 20px -6px rgba(37,99,235,.8),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s;
}
#live-banner .lb-join svg{transition:transform .25s cubic-bezier(.16,1,.3,1);}
#live-banner .lb-join:hover{transform:translateY(-1px);box-shadow:0 12px 26px -6px rgba(37,99,235,.95),inset 0 1px 0 rgba(255,255,255,.22);}
#live-banner .lb-join:hover svg{transform:translateX(3px);}
#live-banner .lb-x{
  flex:none;width:30px;height:30px;border:none;border-radius:50%;display:grid;place-items:center;padding:0;
  color:rgba(255,255,255,.5);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);
  transition:color .2s,background .2s;
}
#live-banner .lb-x:hover{color:#fff;background:rgba(255,255,255,.12);}
#live-banner .lb-join:focus-visible,#live-banner .lb-x:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
#live-banner .lb-line{position:absolute;left:0;right:0;bottom:-1px;height:2px;overflow:hidden;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(239,68,68,.9),rgba(37,99,235,.9),transparent);background-size:200% 100%;animation:lbLine 4s linear infinite;opacity:.8;}
@keyframes lbLine{from{background-position:100% 0;}to{background-position:-100% 0;}}
body.has-live nav{top:64px;}
@media(max-width:900px){
  #live-banner .lb-label,#live-banner .lb-sep{display:none;}
}
@media(max-width:640px){
  #live-banner{height:52px;}
  #live-banner .lb-in{padding:0 12px;gap:10px;}
  #live-banner .lb-badge{padding:0 9px 0 8px;height:24px;font-size:.58rem;letter-spacing:.12em;}
  #live-banner .lb-msg{display:none;}
  #live-banner .lb-title{max-width:100%;font-size:.8rem;}
  #live-banner .lb-join{height:30px;padding:0 12px;font-size:.64rem;}
  #live-banner .lb-join span{display:none;}
  #live-banner .lb-x{width:28px;height:28px;}
  body.has-live nav{top:66px;}
}
@media(prefers-reduced-motion:reduce){#live-banner.show,#live-banner .lb-dot::after,#live-banner .lb-line{animation:none;}}

nav{
  position:fixed;top:16px;left:0;width:100%;z-index:999;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 32px;
  background:transparent;border:none;
  transition:top 0.3s;
  pointer-events:none;
}
nav > *{pointer-events:auto;}
.nav-logo{
  display:flex;align-items:center;gap:10px;text-decoration:none;
  background:rgba(28,32,44,0.72);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:999px;padding:10px 20px;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 10px 30px rgba(0,0,0,0.35);
  transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s, border-color 0.3s, background 0.3s;
}
.nav-logo:hover{
  transform:translateY(-2px) scale(1.04);
  border-color:rgba(59,130,246,0.55);
  background:rgba(34,40,56,0.85);
  box-shadow:0 16px 40px rgba(37,99,235,0.35);
}
.nav-logo-img{height:32px;width:auto;display:block;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(37,99,235,0.35));transition:transform 0.4s cubic-bezier(0.34,1.56,0.64,1);}
.nav-logo:hover .nav-logo-img{transform:rotate(-10deg) scale(1.12);}
.nav-logo-icon{
  width:36px;height:36px;
  background:linear-gradient(135deg,#1a3a6e,#2563eb);
  border-radius:6px;
  display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:0.85rem;color:#fff;
  letter-spacing:-1px;
}
.nav-logo-text{font-weight:700;font-size:1rem;letter-spacing:2px;color:#fff;text-transform:uppercase;}
.nav-left-group{display:flex;align-items:center;gap:10px;}
.nav-quick-btns{display:flex;align-items:center;gap:8px;}
.nav-round-btn{
  width:40px;height:40px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(28,32,44,0.72);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:50%;
  color:#fff;text-decoration:none;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 10px 30px rgba(0,0,0,0.35);
  transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s, border-color 0.3s, background 0.3s, color 0.3s;
}
.nav-round-btn svg{width:18px;height:18px;display:block;}
.nav-round-btn:hover{
  transform:translateY(-2px) scale(1.08);
  border-color:rgba(59,130,246,0.55);
  background:rgba(34,40,56,0.85);
  box-shadow:0 16px 40px rgba(37,99,235,0.35);
  color:#93c5fd;
}
.nav-menu{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
.nav-menu-btn{
  display:flex;align-items:center;gap:10px;
  background:rgba(28,32,44,0.72);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:999px;padding:12px 24px;
  color:#fff;font:inherit;font-size:0.78rem;font-weight:600;
  letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 10px 30px rgba(0,0,0,0.35);
  transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s, border-color 0.3s, background 0.3s;
}
.nav-menu-btn:hover{
  transform:translateY(-2px) scale(1.04);
  border-color:rgba(59,130,246,0.55);
  background:rgba(34,40,56,0.85);
  box-shadow:0 16px 40px rgba(37,99,235,0.35);
}
.nav-chevron{width:15px;height:15px;transition:transform 0.35s cubic-bezier(0.34,1.56,0.64,1);}
.nav-menu-btn:hover .nav-chevron{transform:translateY(2px);}
.nav-menu.open .nav-chevron{transform:rotate(180deg);}
.nav-dropdown{
  position:absolute;top:calc(100% + 14px);left:50%;
  transform:translate(-50%,-12px) scale(0.96);
  min-width:240px;
  background:rgba(16,20,32,0.94);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:18px;padding:8px;
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  box-shadow:0 24px 60px rgba(0,0,0,0.55);
  opacity:0;visibility:hidden;
  transition:opacity 0.25s ease, transform 0.3s cubic-bezier(0.34,1.4,0.64,1), visibility 0.25s;
}
.nav-menu.open .nav-dropdown{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1);}
.nav-dropdown a{
  display:block;padding:10px 14px;border-radius:10px;
  color:rgba(255,255,255,0.68);text-decoration:none;
  font-size:0.82rem;font-weight:500;letter-spacing:0.5px;
  transition:background 0.18s, color 0.18s, padding-left 0.22s ease;
}
.nav-dropdown a:hover{background:rgba(37,99,235,0.18);color:#fff;padding-left:22px;}
.nav-menu.open .nav-dropdown a{animation:navDropIn 0.35s cubic-bezier(0.22,1,0.36,1) backwards;}
.nav-menu.open .nav-dropdown a:nth-child(1){animation-delay:0.02s;}
.nav-menu.open .nav-dropdown a:nth-child(2){animation-delay:0.05s;}
.nav-menu.open .nav-dropdown a:nth-child(3){animation-delay:0.08s;}
.nav-menu.open .nav-dropdown a:nth-child(4){animation-delay:0.11s;}
.nav-menu.open .nav-dropdown a:nth-child(5){animation-delay:0.14s;}
.nav-menu.open .nav-dropdown a:nth-child(6){animation-delay:0.17s;}
.nav-menu.open .nav-dropdown a:nth-child(7){animation-delay:0.20s;}
.nav-menu.open .nav-dropdown a:nth-child(8){animation-delay:0.23s;}
.nav-menu.open .nav-dropdown a:nth-child(9){animation-delay:0.26s;}
.nav-menu.open .nav-dropdown a:nth-child(10){animation-delay:0.29s;}
.nav-menu.open .nav-dropdown a:nth-child(11){animation-delay:0.32s;}
.nav-menu.open .nav-dropdown a:nth-child(12){animation-delay:0.35s;}
.nav-menu.open .nav-dropdown a:nth-child(13){animation-delay:0.38s;}
.nav-menu.open .nav-dropdown a:nth-child(14){animation-delay:0.41s;}
.nav-menu.open .nav-dropdown a:nth-child(15){animation-delay:0.44s;}
@keyframes navDropIn{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}
.nav-right{
  position:relative;
  display:flex;align-items:center;gap:8px;
  background:rgba(28,32,44,0.72);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:999px;padding:6px;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 10px 30px rgba(0,0,0,0.35);
  transition:border-color 0.3s, box-shadow 0.3s, transform 0.35s cubic-bezier(0.34,1.56,0.64,1), width 0.4s cubic-bezier(.22,1.25,.36,1);
}
.nav-right:hover{border-color:rgba(255,255,255,0.22);box-shadow:0 16px 40px rgba(0,0,0,0.45);}
.nav-right.search-open{
  width:var(--search-width, auto);
  border-color:rgba(37,99,235,.35);
  box-shadow:0 16px 40px rgba(0,0,0,.45), 0 0 24px rgba(37,99,235,.12);
}
.nav-btn{
  background:linear-gradient(135deg,#1d4ed8,#2563eb);
  color:#fff;padding:9px 22px;border-radius:999px;
  font-size:0.78rem;font-weight:600;letter-spacing:1px;
  text-decoration:none;transition:all 0.25s;
  border:none;cursor:pointer;
}
.nav-btn:hover{background:linear-gradient(135deg,#2563eb,#3b82f6);transform:translateY(-2px) scale(1.04);box-shadow:0 10px 26px rgba(37,99,235,0.45);}
.nav-avatar{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.15);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1), border-color 0.25s, box-shadow 0.25s;}
.nav-avatar:hover{transform:scale(1.12);border-color:rgba(59,130,246,0.6);box-shadow:0 0 0 4px rgba(37,99,235,0.18);}
.nav-avatar{position:relative;overflow:visible;}
.nav-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;}
/* ═══════════ Menu du compte + Profil / Paramètres / Favoris — habillage Support & Tickets ═══════════ */
.pc-menu{position:absolute;top:calc(100% + 12px);right:0;width:264px;padding:8px;border-radius:18px;z-index:1000;font-family:'Montserrat',system-ui,sans-serif;font-size:.82rem;
  background:radial-gradient(260px 120px at 0% 0%,rgba(37,99,235,.2),transparent 70%),linear-gradient(180deg,rgba(16,25,50,.98),rgba(9,14,30,.98));
  border:1px solid rgba(255,255,255,.1);box-shadow:0 28px 60px -12px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.06);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  opacity:0;visibility:hidden;transform:translateY(-8px) scale(.98);transform-origin:top right;transition:opacity .2s ease,transform .25s cubic-bezier(.16,1,.3,1),visibility .2s;cursor:default;}
.pc-menu.open{opacity:1;visibility:visible;transform:none;}
.pc-menu *{box-sizing:border-box;}
.pc-menu-header{display:flex;align-items:center;gap:12px;padding:10px 10px 12px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.07);}
.pc-menu-av{position:relative;flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#93c5fd;background:rgba(37,99,235,.18);box-shadow:0 0 0 2px rgba(96,165,250,.45);}
.pc-menu-av img{width:100%;height:100%;border-radius:50%;object-fit:cover;}
.pc-menu-av svg{width:19px;height:19px;}
.pc-menu-av.on::after{content:'';position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:#34d399;border:2px solid #0d1630;}
.pc-menu-header>div{min-width:0;}
.pc-menu-header .n{color:#fff;font-weight:800;font-size:.9rem;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-menu-header .s{display:flex;align-items:center;gap:6px;margin-top:3px;color:rgba(148,163,184,.85);font-size:.7rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-menu-header .s i{flex:none;width:6px;height:6px;border-radius:50%;background:#64748b;}
.pc-menu-header .s.on i{background:#34d399;box-shadow:0 0 6px rgba(52,211,153,.9);}
.pc-menu-item{--c:96,165,250;display:flex;align-items:center;gap:11px;width:100%;padding:7px 8px;border:0;border-radius:12px;background:none;cursor:pointer;text-align:left;font:inherit;font-weight:700;color:rgba(226,232,240,.88);transition:background .15s,color .15s;}
.pc-menu-item .ic{flex:none;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.12);box-shadow:inset 0 0 0 1px rgba(var(--c),.22);transition:background .15s;}
.pc-menu-item svg{width:16px;height:16px;flex-shrink:0;}
.pc-menu-item:hover,.pc-menu-item:focus-visible{background:rgba(255,255,255,.05);color:#fff;outline:none;}
.pc-menu-item:hover .ic{background:rgba(var(--c),.2);}
.pc-menu-item .cnt{margin-left:auto;min-width:22px;height:20px;padding:0 7px;border-radius:999px;display:inline-grid;place-items:center;font-size:.65rem;font-weight:800;color:#fecaca;background:rgba(239,68,68,.16);}
.pc-menu-item .cnt:empty{display:none;}
.pc-menu-item.danger{--c:248,113,113;color:#fca5a5;}
.pc-menu-item.danger:hover{background:rgba(239,68,68,.1);color:#fecaca;}
.pc-menu-sep{height:1px;background:rgba(255,255,255,.07);margin:6px 4px;}

/* Fenêtres (Profil, Paramètres, Favoris, Déconnexion) */
.pc-modal{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(3,6,16,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .2s ease;cursor:default;}
.pc-modal.open{display:flex;}
.pc-modal.closing{background:rgba(3,6,16,0);}
.pc-modal-card{position:relative;width:min(560px,100%);max-height:88vh;display:flex;flex-direction:column;overflow:hidden;border-radius:24px;color:#e5edff;font-family:'Montserrat',system-ui,sans-serif;
  background:radial-gradient(600px 220px at 0% 0%,rgba(37,99,235,.18),transparent 70%),linear-gradient(180deg,rgba(14,22,44,.97),rgba(8,13,28,.98));
  border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 100px -20px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.06);animation:pcModalIn .3s cubic-bezier(.16,1,.3,1);}
.pc-modal-card.sm{width:min(420px,100%);}
.pc-modal-card *{box-sizing:border-box;}
@keyframes pcModalIn{from{opacity:0;transform:translateY(20px) scale(.96);}to{opacity:1;transform:none;}}
.pc-modal.closing .pc-modal-card{animation:pcModalOut .2s ease forwards;}
@keyframes pcModalOut{from{opacity:1;transform:none;}to{opacity:0;transform:translateY(14px) scale(.96);}}
.pc-modal-head{display:flex;align-items:center;gap:14px;padding:22px 24px 16px;}
.pc-mh-ic{--c:96,165,250;flex:none;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 10px 24px -6px rgba(37,99,235,.7),inset 0 1px 0 rgba(255,255,255,.2);}
.pc-mh-ic svg{width:22px;height:22px;}
.pc-mh-ic.heart{background:linear-gradient(135deg,#be123c,#f43f5e);box-shadow:0 10px 24px -6px rgba(244,63,94,.65),inset 0 1px 0 rgba(255,255,255,.2);}
.pc-mh-t{flex:1;min-width:0;}
.pc-modal-head h3{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:-.01em;color:#fff;}
.pc-mh-s{margin-top:3px;font-size:.76rem;font-weight:600;color:rgba(148,163,184,.85);}
.pc-modal-close{flex:none;width:36px;height:36px;padding:0;border:none;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:rgba(226,232,240,.7);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:color .2s,background .2s,transform .25s cubic-bezier(.16,1,.3,1);}
.pc-modal-close svg{width:14px;height:14px;}
.pc-modal-close:hover{color:#fff;background:rgba(255,255,255,.12);transform:rotate(90deg);}
.pc-mtabs{display:flex;gap:4px;margin:0 24px 14px;padding:4px;width:max-content;max-width:calc(100% - 48px);overflow-x:auto;scrollbar-width:none;border-radius:14px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);}
.pc-mtabs::-webkit-scrollbar{display:none;}
.pc-mtabs button{flex:none;display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:none;border-radius:10px;background:none;cursor:pointer;font-family:inherit;font-size:.76rem;font-weight:800;color:rgba(148,163,184,.9);white-space:nowrap;transition:background .2s,color .2s,box-shadow .2s;}
.pc-mtabs button svg{width:15px;height:15px;}
.pc-mtabs button:hover{color:#fff;}
.pc-mtabs button.on{color:#fff;background:rgba(37,99,235,.28);box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}
.pc-modal-body{flex:1;min-height:0;max-height:none;overflow-y:auto;padding:16px 24px 24px;border-top:1px solid rgba(255,255,255,.06);scrollbar-width:thin;scrollbar-color:rgba(96,165,250,.35) transparent;}
.pc-modal-body::-webkit-scrollbar{width:8px;}
.pc-modal-body::-webkit-scrollbar-thumb{background:rgba(96,165,250,.3);border-radius:99px;}
.pc-pane{display:none;}
.pc-pane.on{display:block;animation:pcPaneIn .3s cubic-bezier(.16,1,.3,1);}
@keyframes pcPaneIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.pc-set-card{border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);padding:0 16px;}
.pc-set-card+.pc-set-card{margin-top:12px;}
.pc-set{--c:96,165,250;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.pc-set:last-child{border-bottom:0;}
.pc-set-ic{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.13);box-shadow:inset 0 0 0 1px rgba(var(--c),.26);}
.pc-set-ic svg{width:17px;height:17px;}
.pc-set-info{flex:1;min-width:0;}
.pc-set-info .t{color:#fff;font-weight:800;font-size:.88rem;}
.pc-set-info .d{margin-top:3px;color:rgba(148,163,184,.85);font-size:.75rem;font-weight:500;line-height:1.5;}
.pc-set-act{flex:none;display:flex;align-items:center;gap:8px;}
.pc-set-act .ask{font-size:.74rem;font-weight:700;color:#fecaca;}
.pc-set-group{display:none;}
.pc-hint{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:14px;font-size:.72rem;font-weight:600;color:rgba(148,163,184,.75);text-align:center;}
.pc-hint svg{width:13px;height:13px;}

/* Interrupteur */
.pc-toggle{position:relative;flex-shrink:0;width:46px;height:26px;display:inline-block;cursor:pointer;}
.pc-toggle input{position:absolute;opacity:0;width:0;height:0;}
.pc-toggle .sl{position:absolute;inset:0;border-radius:26px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);transition:background .25s,box-shadow .25s;}
.pc-toggle .sl:before{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#cbd5e1;box-shadow:0 2px 6px rgba(0,0,0,.4);transition:transform .3s cubic-bezier(.34,1.4,.64,1),background .25s;}
.pc-toggle input:checked + .sl{background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 4px 14px -4px rgba(37,99,235,.8);}
.pc-toggle input:checked + .sl:before{transform:translateX(20px);background:#fff;}
.pc-toggle input:focus-visible + .sl{outline:2px solid #60a5fa;outline-offset:2px;}

/* Curseur de volume */
.pc-range-wrap{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.pc-range-val{min-width:40px;text-align:right;font-size:.78rem;font-weight:800;color:#93c5fd;font-variant-numeric:tabular-nums;}
.pc-range{--p:50%;width:150px;flex-shrink:0;-webkit-appearance:none;appearance:none;height:6px;border-radius:6px;outline:none;cursor:pointer;background:linear-gradient(90deg,#3b82f6 var(--p),rgba(255,255,255,.12) var(--p));}
.pc-range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid #2563eb;box-shadow:0 2px 8px rgba(37,99,235,.6);cursor:pointer;transition:transform .15s;}
.pc-range::-webkit-slider-thumb:hover{transform:scale(1.15);}
.pc-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid #2563eb;cursor:pointer;}
.pc-range:focus-visible{outline:2px solid #60a5fa;outline-offset:4px;}

/* Menu déroulant et segments (remplacent les listes natives) */
.pc-select{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;}
.pc-dd{position:relative;flex-shrink:0;}
.pc-dd-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;min-width:150px;height:38px;padding:0 12px 0 14px;border:none;border-radius:12px;cursor:pointer;font-family:inherit;font-size:.78rem;font-weight:700;color:#fff;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:background .2s,box-shadow .2s;}
.pc-dd-btn svg{width:15px;height:15px;color:rgba(148,163,184,.9);transition:transform .25s cubic-bezier(.16,1,.3,1);}
.pc-dd-btn:hover{background:rgba(255,255,255,.09);}
.pc-dd.open .pc-dd-btn{box-shadow:inset 0 0 0 1px rgba(96,165,250,.55),0 0 0 4px rgba(37,99,235,.14);}
.pc-dd.open .pc-dd-btn svg{transform:rotate(180deg);}
.pc-dd-list{position:fixed;z-index:10050;max-height:240px;overflow:auto;padding:6px;border-radius:14px;display:none;background:linear-gradient(180deg,rgba(20,30,58,.99),rgba(10,16,34,.99));border:1px solid rgba(96,165,250,.25);box-shadow:0 20px 44px -10px rgba(0,0,0,.85);scrollbar-width:thin;}
.pc-dd.open .pc-dd-list{display:block;animation:pcPaneIn .2s cubic-bezier(.16,1,.3,1);}
.pc-dd-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:9px 10px;border:none;border-radius:9px;background:none;cursor:pointer;text-align:left;font-family:inherit;font-size:.78rem;font-weight:700;color:rgba(226,232,240,.85);white-space:nowrap;}
.pc-dd-opt svg{width:14px;height:14px;color:#60a5fa;opacity:0;}
.pc-dd-opt:hover,.pc-dd-opt.kb{background:rgba(255,255,255,.06);color:#fff;}
.pc-dd-opt.on{color:#fff;background:rgba(37,99,235,.2);}
.pc-dd-opt.on svg{opacity:1;}
.pc-seg{display:flex;flex-shrink:0;gap:3px;padding:3px;border-radius:12px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);}
.pc-seg button{white-space:nowrap;border:0;background:none;cursor:pointer;padding:0 12px;height:32px;border-radius:9px;font-family:inherit;font-size:.74rem;font-weight:800;color:rgba(148,163,184,.9);transition:background .2s,color .2s,box-shadow .2s;}
.pc-seg button .aa{font-weight:900;}
.pc-seg button:hover{color:#fff;}
.pc-seg button.on{color:#fff;background:rgba(37,99,235,.3);box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}

/* Boutons */
.pc-btn-ghost,.pc-btn-danger,.pc-btn-primary{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 15px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;transition:background .2s,color .2s,box-shadow .2s,transform .2s;}
.pc-btn-ghost svg,.pc-btn-danger svg,.pc-btn-primary svg{width:14px;height:14px;}
.pc-btn-ghost{color:rgba(226,232,240,.88);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.pc-btn-ghost:hover{color:#fff;background:rgba(255,255,255,.1);}
.pc-btn-danger{color:#fca5a5;background:rgba(239,68,68,.1);box-shadow:inset 0 0 0 1px rgba(248,113,113,.32);}
.pc-btn-danger:hover{color:#fecaca;background:rgba(239,68,68,.2);box-shadow:inset 0 0 0 1px rgba(248,113,113,.55);}
.pc-btn-primary{height:40px;padding:0 20px;color:#fff;background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 8px 18px -6px rgba(37,99,235,.8);}
.pc-btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 24px -6px rgba(37,99,235,.95);}
.pc-btn-ghost:focus-visible,.pc-btn-danger:focus-visible,.pc-btn-primary:focus-visible,.pc-modal-close:focus-visible,.pc-mtabs button:focus-visible,.pc-dd-btn:focus-visible,.pc-seg button:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.pc-modal-foot{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:14px 24px 20px;border-top:1px solid rgba(255,255,255,.06);}

/* Profil */
.pc-prof-card{display:flex;align-items:center;gap:16px;padding:16px;margin-bottom:16px;border-radius:18px;background:linear-gradient(90deg,rgba(37,99,235,.12),rgba(255,255,255,.03) 70%);border:1px solid rgba(96,165,250,.22);}
.pc-prof-av{position:relative;flex:none;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;color:#93c5fd;background:rgba(37,99,235,.18);box-shadow:0 0 0 2px rgba(96,165,250,.55),0 10px 24px -8px rgba(37,99,235,.8);overflow:hidden;}
.pc-prof-av img{width:100%;height:100%;object-fit:cover;}
.pc-prof-av svg{width:28px;height:28px;}
.pc-prof-card b{display:block;font-size:1.1rem;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-prof-card>div{min-width:0;flex:1;}
.pc-pill{--c:96,165,250;display:inline-flex;align-items:center;gap:6px;height:24px;margin-top:6px;padding:0 10px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--c));background:rgba(var(--c),.13);}
.pc-pill svg{width:12px;height:12px;}
.pc-field{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;}
.pc-field-l{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:.78rem;font-weight:800;color:rgba(226,232,240,.9);}
.pc-field-l span{font-size:.7rem;font-weight:700;color:rgba(148,163,184,.6);font-variant-numeric:tabular-nums;}
.pc-field .d{font-size:.72rem;font-weight:500;color:rgba(148,163,184,.8);line-height:1.5;}
.pc-input{width:100%;margin:0;padding:11px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(3,7,18,.5);color:#fff;font-family:inherit;font-size:.88rem;font-weight:500;outline:none;transition:border-color .2s,background .2s,box-shadow .2s;}
.pc-input::placeholder{color:rgba(148,163,184,.55);}
.pc-input:focus{border-color:rgba(96,165,250,.6);background:rgba(3,7,18,.7);box-shadow:0 0 0 4px rgba(37,99,235,.15);}
@media(max-width:640px){.pc-input{font-size:16px;}}
.pc-input-row{display:flex;gap:8px;}
.pc-input-row .pc-input{flex:1;min-width:0;}

/* Favoris */
.pc-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 20px;text-align:center;color:rgba(148,163,184,.85);font-size:.85rem;font-weight:600;line-height:1.6;}
.pc-empty b{color:#fff;font-size:.98rem;font-weight:800;}
.pc-empty-ic{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;color:#fb7185;background:rgba(244,63,94,.12);box-shadow:inset 0 0 0 1px rgba(251,113,133,.28);}
.pc-empty-ic svg{width:26px;height:26px;}
.pc-fav-list{display:flex;flex-direction:column;gap:10px;}
.pc-fav-item{--c:96,165,250;position:relative;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);transition:background .2s,border-color .2s,opacity .25s,transform .25s;}
.pc-fav-item:hover{background:rgba(255,255,255,.05);border-color:rgba(var(--c),.35);}
.pc-fav-item.gone{opacity:0;transform:translateX(20px);}
.pc-fav-item .dot{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.3);}
.pc-fav-item .dot svg{width:17px;height:17px;}
.pc-fav-item .n{flex:1;min-width:0;color:#fff;font-weight:800;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-fav-item a{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 13px;border-radius:999px;text-decoration:none;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#93c5fd;background:rgba(37,99,235,.12);box-shadow:inset 0 0 0 1px rgba(96,165,250,.3);transition:background .2s;}
.pc-fav-item a svg{width:13px;height:13px;}
.pc-fav-item a:hover{background:rgba(37,99,235,.22);}
.pc-fav-remove{flex:none;width:32px;height:32px;padding:0;border:0;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:rgba(203,213,225,.7);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:color .2s,background .2s,box-shadow .2s;}
.pc-fav-remove svg{width:13px;height:13px;}
.pc-fav-remove:hover{color:#fecaca;background:rgba(239,68,68,.15);box-shadow:inset 0 0 0 1px rgba(248,113,113,.45);}

/* Confirmation / toast dans une fenêtre */
.pc-mtoast{position:absolute;left:50%;bottom:18px;z-index:6;transform:translateX(-50%);max-width:calc(100% - 32px);padding:10px 16px;border-radius:999px;font-size:.78rem;font-weight:700;color:#a7f3d0;background:rgba(8,36,28,.96);box-shadow:inset 0 0 0 1px rgba(52,211,153,.45),0 14px 30px rgba(0,0,0,.5);animation:pcPaneIn .25s cubic-bezier(.16,1,.3,1);}
.pc-mtoast.err{color:#fecaca;background:rgba(40,12,16,.96);box-shadow:inset 0 0 0 1px rgba(248,113,113,.45),0 14px 30px rgba(0,0,0,.5);}
.pc-ask-body{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:30px 26px 8px;}
.pc-ask-ic{width:60px;height:60px;border-radius:19px;display:grid;place-items:center;color:#f87171;background:rgba(239,68,68,.12);box-shadow:inset 0 0 0 1px rgba(248,113,113,.3);}
.pc-ask-ic svg{width:26px;height:26px;}
.pc-ask-body h3{margin:4px 0 0;font-size:1.1rem;font-weight:800;color:#fff;}
.pc-ask-body p{margin:0;font-size:.84rem;font-weight:500;line-height:1.6;color:rgba(203,213,225,.8);}
.pc-modal-card.sm .pc-modal-foot{justify-content:center;border-top:0;padding-top:18px;}

@media(max-width:640px){
  .pc-modal{padding:0;align-items:flex-end;}
  .pc-modal-card,.pc-modal-card.sm{width:100%;max-height:92vh;border-radius:24px 24px 0 0;}
  .pc-modal-head{padding:18px 16px 14px;gap:12px;}
  .pc-mh-ic{width:40px;height:40px;border-radius:13px;}
  .pc-mtabs{margin:0 16px 12px;max-width:calc(100% - 32px);}
  .pc-mtabs button{padding:8px 11px;}
  .pc-modal-body{padding:14px 12px 20px;}
  .pc-set-card{padding:0 12px;}
  .pc-set.wide{flex-wrap:wrap;}
  .pc-set.wide .pc-set-info{flex:1 1 calc(100% - 52px);}
  .pc-set.wide>.pc-set-act,.pc-set.wide>.pc-dd,.pc-set.wide>.pc-seg,.pc-set.wide>.pc-range-wrap{width:calc(100% - 50px);margin-left:50px;}
  .pc-set.wide>.pc-range-wrap .pc-range{flex:1;width:auto;}
  .pc-set.wide>.pc-seg button{flex:1;padding:0 6px;}
  .pc-dd-btn{width:100%;}
  .pc-modal-foot{padding:12px 16px 18px;}
  .pc-modal-foot>*{flex:1;}
  .pc-menu{width:246px;}
}
@media (prefers-reduced-motion:reduce){
  .pc-menu,.pc-modal-card,.pc-pane.on,.pc-dd.open .pc-dd-list{animation:none;transition:none;}
}
.inst-fav{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;color:rgba(255,255,255,.55);backdrop-filter:blur(6px);z-index:3;}
.inst-fav:hover{background:rgba(220,38,38,.15);color:#ef4444;border-color:rgba(239,68,68,.4);}
.inst-fav.on{color:#ef4444;background:rgba(220,38,38,.15);border-color:rgba(239,68,68,.4);}
.inst-card{position:relative;}
body.pc-reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important;}
body.pc-font-sm{font-size:94%;}
body.pc-font-lg{font-size:110%;}
body.pc-compact .pc-set{padding:9px 0;}

#splash{
  position:fixed;inset:0;z-index:9999;
  background:#05070c;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  transition:opacity 0.6s cubic-bezier(.4,0,.2,1), visibility 0.6s;
}
#splash.hidden{opacity:0;visibility:hidden;pointer-events:none;}
#splash.leaving .splash-content{animation:splashExit 0.45s cubic-bezier(.4,0,.2,1) forwards;}
#splash.leaving .splash-glow,
#splash.leaving .splash-footer{opacity:0;transition:opacity 0.4s ease;}
@keyframes splashExit{
  0%{opacity:1;transform:scale(1) translateY(0);filter:blur(0);}
  100%{opacity:0;transform:scale(1.06) translateY(-16px);filter:blur(8px);}
}

.splash-glow{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none;}
.splash-glow-a{width:560px;height:560px;top:-200px;left:50%;transform:translateX(-58%);background:radial-gradient(circle,rgba(37,99,235,0.35),transparent 70%);animation:splashDrift 14s ease-in-out infinite;}
.splash-glow-b{width:420px;height:420px;bottom:-180px;right:6%;background:radial-gradient(circle,rgba(37,99,235,0.22),transparent 70%);animation:splashDrift 18s ease-in-out infinite reverse;}
@keyframes splashDrift{0%,100%{transform:translate(-58%,0) scale(1);}50%{transform:translate(-52%,24px) scale(1.08);}}

.splash-content{
  position:relative;z-index:2;
  display:flex;flex-direction:column;align-items:center;gap:20px;
  padding:0 24px;text-align:center;
}

.splash-logo-icon{
  width:76px;height:76px;
  background:linear-gradient(135deg,#1a3a6e,#2563eb 55%,#3b82f6);
  border:1px solid rgba(255,255,255,0.18);
  border-radius:20px;
  display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:1.5rem;color:#fff;letter-spacing:-1.5px;
  box-shadow:0 0 0 1px rgba(255,255,255,0.04) inset,0 20px 60px rgba(37,99,235,0.35);
  opacity:0;animation:fadeUp 0.7s 0.1s forwards, splashFloat 4.5s 1s ease-in-out infinite;
}
@keyframes splashFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}

.splash-title{
  position:relative;margin:0;
  font-size:clamp(2.1rem,7vw,3.2rem);
  font-weight:900;letter-spacing:6px;
  text-transform:uppercase;color:#fff;line-height:1;
  opacity:0;animation:fadeUp 0.7s 0.25s forwards;
}

.splash-sub{
  display:flex;align-items:center;gap:14px;
  font-size:0.72rem;font-weight:500;letter-spacing:3px;
  color:rgba(255,255,255,0.45);text-transform:uppercase;
  opacity:0;animation:fadeUp 0.7s 0.4s forwards;
}
.splash-line{width:28px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3));}
.splash-sub .splash-line:last-child{background:linear-gradient(90deg,rgba(255,255,255,0.3),transparent);}

.splash-actions{
  display:flex;flex-direction:column;align-items:center;gap:12px;
  margin-top:8px;
  opacity:0;animation:fadeUp 0.7s 0.55s forwards;
}
.splash-enter{
  display:inline-flex;align-items:center;gap:10px;
  background:linear-gradient(135deg,#1d4ed8,#2563eb);
  color:#fff;padding:14px 34px;border-radius:10px;
  font-family:inherit;font-size:0.85rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  border:none;cursor:pointer;
  transition:all 0.25s;
  box-shadow:0 8px 32px rgba(37,99,235,0.35);
}
.splash-enter svg{transition:transform 0.25s;}
.splash-enter:hover{background:linear-gradient(135deg,#2563eb,#3b82f6);transform:translateY(-2px);box-shadow:0 14px 40px rgba(37,99,235,0.5);}
.splash-enter:hover svg{transform:translateX(3px);}
.splash-enter:active{transform:scale(0.95);transition:transform 0.12s ease;}

.splash-discord{
  display:inline-flex;align-items:center;gap:9px;
  background:rgba(255,255,255,0.03);
  color:#c7ccff;padding:11px 28px;border-radius:10px;
  font-family:inherit;font-size:0.72rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  border:1px solid rgba(88,101,242,0.35);cursor:pointer;
  transition:all 0.25s;text-decoration:none;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.splash-discord:hover{background:#5865f2;color:#fff;border-color:#5865f2;transform:translateY(-2px);box-shadow:0 10px 30px rgba(88,101,242,0.4);}
.splash-discord img{width:20px;height:20px;border-radius:50%;}
.splash-discord.is-logged{background:rgba(34,197,94,0.08);border-color:rgba(34,197,94,0.4);color:#bbf7d0;}
.splash-discord.is-logged:hover{background:rgba(34,197,94,0.18);border-color:rgba(34,197,94,0.65);color:#fff;box-shadow:0 10px 30px rgba(34,197,94,0.25);}

.splash-footer{
  position:absolute;bottom:26px;left:0;right:0;z-index:2;
  text-align:center;
  font-size:0.65rem;letter-spacing:2px;color:rgba(255,255,255,0.22);
  text-transform:uppercase;
  opacity:0;animation:fadeUp 0.7s 0.7s forwards;
}

@media(max-width:480px){
  .splash-title{letter-spacing:3px;}
  .splash-sub{gap:8px;font-size:0.6rem;letter-spacing:2px;}
  .splash-line{width:16px;}
}

#music-btn{
  position:fixed;bottom:24px;right:24px;z-index:998;
  width:48px;height:48px;border-radius:50%;
  background:rgba(15,25,50,0.85);
  backdrop-filter:blur(12px);
  border:1px solid rgba(37,99,235,0.4);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:all 0.25s;
  box-shadow:0 4px 20px rgba(0,0,0,0.4);
}
#music-btn:hover{border-color:rgba(37,99,235,0.8);box-shadow:0 4px 24px rgba(37,99,235,0.35);transform:scale(1.08);}
#music-btn svg{transition:opacity 0.2s;}
.music-bars{display:flex;align-items:flex-end;gap:3px;height:18px;}
.music-bars span{
  display:block;width:3px;border-radius:2px;
  background:linear-gradient(to top,#2563eb,#60a5fa);
  animation:barBounce 0.8s ease-in-out infinite;
}
.music-bars span:nth-child(1){height:8px;animation-delay:0s;}
.music-bars span:nth-child(2){height:14px;animation-delay:0.15s;}
.music-bars span:nth-child(3){height:10px;animation-delay:0.3s;}
.music-bars span:nth-child(4){height:16px;animation-delay:0.1s;}
@keyframes barBounce{0%,100%{transform:scaleY(0.5);}50%{transform:scaleY(1);}}
#music-btn.paused .music-bars span{animation:none;transform:scaleY(0.4);opacity:0.5;}
#music-btn .pause-icon{display:flex;gap:3px;}
#music-btn .pause-icon span{display:block;width:3px;height:14px;background:rgba(255,255,255,0.5);border-radius:2px;}

#music-notice{
  position:fixed;bottom:84px;right:16px;z-index:999;
  width:260px;max-width:calc(100vw - 32px);
  background:rgba(15,25,50,0.95);
  backdrop-filter:blur(14px);
  border:1px solid rgba(37,99,235,0.35);
  border-radius:14px;
  padding:16px 18px;
  box-shadow:0 12px 36px rgba(0,0,0,0.45), 0 0 30px rgba(37,99,235,0.1);
  opacity:0;transform:translateY(12px) scale(0.96);
  pointer-events:none;
  transition:opacity 0.3s ease, transform 0.3s cubic-bezier(0.22,1.4,0.36,1);
}
#music-notice.visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
#music-notice::after{
  content:'';position:absolute;bottom:-7px;right:28px;
  width:14px;height:14px;
  background:rgba(15,25,50,0.95);
  border-right:1px solid rgba(37,99,235,0.35);
  border-bottom:1px solid rgba(37,99,235,0.35);
  transform:rotate(45deg);
}
.music-notice-close{
  position:absolute;top:8px;right:8px;
  width:22px;height:22px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,0.06);border:none;color:rgba(255,255,255,0.45);
  font-size:0.7rem;cursor:pointer;line-height:1;padding:0;
  transition:background 0.2s,color 0.2s,transform 0.2s;
}
.music-notice-close:hover{background:rgba(255,255,255,0.16);color:#fff;transform:rotate(90deg);}
#music-notice p{
  margin:0 18px 12px 0;
  font-size:0.82rem;line-height:1.6;
  color:rgba(226,232,240,0.9);
}
.music-notice-btns{display:flex;flex-direction:column;gap:8px;}
.music-notice-btns button{
  position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;gap:7px;
  width:100%;border:none;border-radius:9px;
  padding:9px 12px;font-size:0.76rem;font-weight:600;letter-spacing:0.2px;
  cursor:pointer;
  transition:transform 0.25s cubic-bezier(0.34,1.56,0.64,1),box-shadow 0.25s,filter 0.25s,background 0.25s,color 0.25s,border-color 0.25s;
}
.music-notice-ok{
  background:linear-gradient(135deg,#1d4ed8,#2563eb);
  color:#fff;
  box-shadow:0 4px 16px rgba(37,99,235,0.35);
}
.music-notice-ok::after{
  content:'';position:absolute;top:0;left:-80%;width:50%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,0.4),transparent);
  transform:skewX(-20deg);
  transition:left 0.55s ease;
}
.music-notice-ok:hover{
  transform:translateY(-2px) scale(1.02);
  box-shadow:0 10px 26px rgba(37,99,235,0.5);
  filter:brightness(1.12);
}
.music-notice-ok:hover::after{left:130%;}
.music-notice-ok:active{transform:translateY(0) scale(0.97);transition-duration:0.08s;}
.music-notice-dismiss{
  background:rgba(255,255,255,0.05);
  color:rgba(255,255,255,0.55);
  border:1px solid rgba(255,255,255,0.12);
  font-weight:500;
}
.music-notice-dismiss:hover{
  background:rgba(255,255,255,0.1);color:#fff;
  border-color:rgba(255,255,255,0.3);
  transform:translateY(-1px);
}
.music-notice-dismiss:active{transform:translateY(0) scale(0.97);transition-duration:0.08s;}
@media(max-width:480px){
  #music-notice{right:12px;bottom:80px;width:230px;}
}

#hero{
  height:100vh;min-height:600px;
  position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.hero-bg{
  position:absolute;inset:0;
  background:#0d1b35;
  transition:opacity 1.5s ease;
}
.hero-slide{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  opacity:0;transition:opacity 1.5s ease;
}
.hero-slide.active{opacity:1;}
.hero-cityscape{
  position:absolute;bottom:0;left:0;right:0;height:55%;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 400' preserveAspectRatio='xMidYMax slice'%3E%3Crect fill='%230B0F18' x='0' y='300' width='1440' height='100'/%3E%3C!-- Buildings --%3E%3Crect fill='%230d1525' x='20' y='180' width='60' height='220'/%3E%3Crect fill='%230a1220' x='30' y='160' width='40' height='20'/%3E%3Crect fill='%230f1a2e' x='90' y='120' width='80' height='280'/%3E%3Crect fill='%230d1828' x='100' y='100' width='60' height='20'/%3E%3Crect fill='%230b1420' x='180' y='200' width='50' height='200'/%3E%3Crect fill='%23101e30' x='240' y='140' width='90' height='260'/%3E%3Crect fill='%230c1828' x='250' y='120' width='70' height='20'/%3E%3Crect fill='%230e1c2c' x='340' y='170' width='55' height='230'/%3E%3Crect fill='%23121f35' x='405' y='100' width='100' height='300'/%3E%3Crect fill='%23101d30' x='415' y='80' width='80' height='20'/%3E%3Crect fill='%230d1828' x='515' y='160' width='70' height='240'/%3E%3Crect fill='%230b1520' x='595' y='200' width='45' height='200'/%3E%3Crect fill='%23131e30' x='650' y='130' width='85' height='270'/%3E%3Crect fill='%23101c2c' x='660' y='110' width='65' height='20'/%3E%3Crect fill='%230c1625' x='745' y='190' width='55' height='210'/%3E%3Crect fill='%230e1c30' x='810' y='150' width='75' height='250'/%3E%3Crect fill='%23121e30' x='895' y='110' width='95' height='290'/%3E%3Crect fill='%23101c2c' x='905' y='90' width='75' height='20'/%3E%3Crect fill='%230d1828' x='1000' y='170' width='60' height='230'/%3E%3Crect fill='%230b1420' x='1070' y='210' width='50' height='190'/%3E%3Crect fill='%23101e30' x='1130' y='140' width='80' height='260'/%3E%3Crect fill='%23121f35' x='1220' y='120' width='90' height='280'/%3E%3Crect fill='%230e1c2c' x='1230' y='100' width='70' height='20'/%3E%3Crect fill='%230c1828' x='1320' y='180' width='55' height='220'/%3E%3Crect fill='%230d1a28' x='1385' y='160' width='60' height='240'/%3E%3C!-- Windows --%3E%3Crect fill='%23f59e0b' opacity='0.6' x='98' y='140' width='6' height='6'/%3E%3Crect fill='%23f59e0b' opacity='0.4' x='110' y='140' width='6' height='6'/%3E%3Crect fill='%23f59e0b' opacity='0.5' x='98' y='155' width='6' height='6'/%3E%3Crect fill='%233b82f6' opacity='0.5' x='248' y='155' width='6' height='6'/%3E%3Crect fill='%233b82f6' opacity='0.4' x='260' y='155' width='6' height='6'/%3E%3Crect fill='%23f59e0b' opacity='0.6' x='413' y='120' width='6' height='6'/%3E%3Crect fill='%23f59e0b' opacity='0.4' x='425' y='120' width='6' height='6'/%3E%3Crect fill='%23f59e0b' opacity='0.5' x='437' y='120' width='6' height='6'/%3E%3Crect fill='%233b82f6' opacity='0.5' x='658' y='148' width='6' height='6'/%3E%3Crect fill='%233b82f6' opacity='0.6' x='670' y='148' width='6' height='6'/%3E%3Crect fill='%23f59e0b' opacity='0.4' x='903' y='130' width='6' height='6'/%3E%3Crect fill='%23f59e0b' opacity='0.6' x='915' y='130' width='6' height='6'/%3E%3Crect fill='%23f59e0b' opacity='0.5' x='927' y='130' width='6' height='6'/%3E%3Crect fill='%233b82f6' opacity='0.5' x='1228' y='140' width='6' height='6'/%3E%3Crect fill='%233b82f6' opacity='0.4' x='1240' y='140' width='6' height='6'/%3E%3C!-- Road --%3E%3Crect fill='%230e1420' x='0' y='310' width='1440' height='90'/%3E%3Crect fill='%23f59e0b' opacity='0.15' x='700' y='330' width='6' height='30'/%3E%3Crect fill='%23f59e0b' opacity='0.15' x='740' y='330' width='6' height='30'/%3E%3Crect fill='%23f59e0b' opacity='0.15' x='780' y='330' width='6' height='30'/%3E%3C/svg%3E") no-repeat bottom/cover;
  z-index:1;
}
.hero-cars{
  position:absolute;bottom:0;left:0;right:0;height:45%;
  background:
    radial-gradient(ellipse 40% 30% at 20% 90%,rgba(37,99,235,0.15),transparent),
    radial-gradient(ellipse 40% 30% at 75% 88%,rgba(245,158,11,0.1),transparent);
  z-index:2;
}
.hero-overlay{position:absolute;inset:0;z-index:3;background:linear-gradient(180deg,rgba(8,18,45,0.45) 0%,rgba(10,25,60,0.25) 35%,rgba(11,15,24,0.65) 75%,rgba(11,15,24,1) 100%);}
.hero-content{
  position:relative;z-index:4;
  text-align:center;
  padding:0 24px;
  max-width:760px;
  width:100%;
}
.hero-logo-badge{
  width:64px;height:64px;
  background:linear-gradient(135deg,rgba(29,78,216,0.9),rgba(37,99,235,0.9));
  border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 20px;
  font-weight:900;font-size:1.4rem;letter-spacing:-1px;
  box-shadow:0 8px 32px rgba(37,99,235,0.4);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,0.15);
  opacity:0;animation:fadeUp 0.7s 0.5s forwards;
}
.hero-sub-brand{
  font-size:0.65rem;letter-spacing:4px;text-transform:uppercase;
  color:rgba(255,255,255,0.4);margin-bottom:4px;
  opacity:0;animation:fadeUp 0.7s 0.5s forwards;
}
.hero-sub-brand span{display:inline-block;margin-right:-4px;}
.hero-title{
  font-size:clamp(3.5rem,9vw,7rem);
  font-weight:900;letter-spacing:6px;
  text-transform:uppercase;
  color:#fff;
  line-height:0.95;
  text-shadow:0 4px 40px rgba(0,0,0,0.5);
  opacity:0;animation:fadeUp 0.8s 0.7s forwards;
}
.hero-title span{display:inline-block;margin-right:-6px;}
.hero-desc{
  font-size:0.95rem;font-weight:400;
  color:rgba(255,255,255,0.7);
  line-height:1.8;
  max-width:500px;margin:20px auto 36px;
  opacity:0;animation:fadeUp 0.8s 0.9s forwards;
}
.hero-cta{
  display:flex;gap:14px;justify-content:center;flex-wrap:wrap;
  opacity:0;animation:fadeUp 0.8s 1.1s forwards;
}
.cta-primary{
  background:linear-gradient(135deg,#1d4ed8,#2563eb);
  color:#fff;padding:13px 32px;border-radius:8px;
  font-size:0.82rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  text-decoration:none;transition:all 0.25s;
  box-shadow:0 8px 24px rgba(37,99,235,0.35);
  border:1px solid rgba(255,255,255,0.1);
}
.cta-primary:hover{background:linear-gradient(135deg,#2563eb,#3b82f6);transform:translateY(-2px);box-shadow:0 16px 40px rgba(37,99,235,0.45);}
.cta-secondary{
  background:rgba(255,255,255,0.08);
  color:#fff;padding:13px 32px;border-radius:8px;
  font-size:0.82rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;
  text-decoration:none;transition:all 0.25s;
  border:1px solid rgba(255,255,255,0.15);
  backdrop-filter:blur(8px);
}
.cta-secondary:hover{background:rgba(255,255,255,0.14);transform:translateY(-2px);}

section.content-section{padding:100px 80px;position:relative;}
.container{max-width:1200px;margin:0 auto;}
.section-eyebrow{
  font-size:0.68rem;letter-spacing:5px;text-transform:uppercase;
  color:#3b82f6;font-weight:600;margin-bottom:14px;
  display:flex;align-items:center;gap:10px;
}
.section-eyebrow::before{content:'';width:20px;height:2px;background:#3b82f6;display:inline-block;}
.section-title{
  font-size:clamp(2rem,4vw,3rem);
  font-weight:800;letter-spacing:1px;
  line-height:1.15;color:#fff;margin-bottom:20px;
}
.section-title span{color:#3b82f6;}

#vision{background:linear-gradient(180deg,#0B0F18 0%,#0d1525 100%);}
.vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.vision-text p{font-size:0.95rem;color:rgba(255,255,255,0.6);line-height:1.9;font-weight:400;margin-bottom:16px;}
.vision-text p strong{color:#fff;}
.vision-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px;}
.vstat{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;padding:24px 20px;
  transition:border-color 0.3s,background 0.3s;
}
.vstat:hover{background:rgba(255,255,255,0.07);border-color:rgba(59,130,246,0.3);}
.vstat-num{font-size:2rem;font-weight:800;color:#fff;line-height:1;}
.vstat-num span{font-size:1.2rem;color:#3b82f6;}
.vstat-label{font-size:0.72rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-top:6px;}

.vision-image{
  position:relative;border-radius:16px;overflow:hidden;
  height:480px;
}
.vision-img-inner{
  width:100%;height:100%;
  background:linear-gradient(135deg,#0d1b35,#1a2a4a,#162040);
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
}
.vision-img-inner::before{
  content:'';position:absolute;inset:0;
  background:
    linear-gradient(180deg,transparent 40%,rgba(11,15,24,0.8) 100%),
    repeating-linear-gradient(90deg,rgba(37,99,235,0.03) 0px,rgba(37,99,235,0.03) 1px,transparent 1px,transparent 60px),
    repeating-linear-gradient(0deg,rgba(37,99,235,0.03) 0px,rgba(37,99,235,0.03) 1px,transparent 1px,transparent 60px);
}
.vision-building{
  font-size:7rem;font-weight:900;letter-spacing:4px;
  color:rgba(255,255,255,0.04);text-align:center;line-height:1;
  position:relative;z-index:1;user-select:none;
}
.vision-img-badge{
  position:absolute;bottom:20px;left:20px;right:20px;
  background:rgba(11,15,24,0.85);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:10px;padding:14px 18px;
  backdrop-filter:blur(12px);z-index:2;
  display:flex;align-items:center;gap:14px;
}
.badge-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 12px #22c55e;animation:pulseDot 2s infinite;flex-shrink:0;}
@keyframes pulseDot{0%,100%{box-shadow:0 0 6px #22c55e;}50%{box-shadow:0 0 18px #22c55e,0 0 32px rgba(34,197,94,0.3);}}
.badge-text h4{font-size:0.88rem;font-weight:700;color:#fff;}
.badge-text p{font-size:0.72rem;color:rgba(255,255,255,0.45);margin-top:2px;}
.badge-pill{margin-left:auto;background:rgba(34,197,94,0.12);border:1px solid rgba(34,197,94,0.25);color:#22c55e;font-size:0.65rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;padding:5px 12px;border-radius:20px;white-space:nowrap;}
.vision-img-tag{
  position:absolute;top:16px;right:16px;
  background:rgba(37,99,235,0.2);border:1px solid rgba(37,99,235,0.35);
  color:#60a5fa;font-size:0.65rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;
  padding:5px 12px;border-radius:20px;z-index:2;backdrop-filter:blur(8px);
}

#institutions{
  background:#0d1525;
  border-top:1px solid rgba(255,255,255,0.05);
  padding:100px 80px;
}
.inst-header{text-align:center;max-width:600px;margin:0 auto 64px;}
.inst-header p{color:rgba(255,255,255,0.5);margin-top:16px;line-height:1.8;font-size:0.95rem;}
.inst-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1200px;margin:0 auto;justify-content:center;}
.inst-grid[data-count="0"],
.inst-grid[data-count="1"]{grid-template-columns:minmax(0,560px);max-width:560px;}
.inst-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px;}
.inst-grid[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px;}
.inst-grid[data-count="5"],
.inst-grid[data-count="6"],
.inst-grid[data-count="many"]{grid-template-columns:repeat(3,minmax(0,1fr));}
.inst-card{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:16px;overflow:hidden;
  text-decoration:none;color:inherit;
  transition:all 0.35s cubic-bezier(0.16,1,0.3,1);
  display:block;position:relative;
}
.inst-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,255,255,0.16);
  box-shadow:0 24px 60px rgba(0,0,0,0.4);
}
.inst-top{
  height:180px;
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
  background:linear-gradient(135deg, rgba(var(--inst-rgb),0.08), rgba(var(--inst-rgb),0.22));
}
.inst-top-glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 70%, rgba(var(--inst-rgb),0.32), transparent 65%);}
.inst-big-icon{position:relative;z-index:1;font-size:3.5rem;color:#fff;font-weight:800;letter-spacing:0.05em;
  filter:drop-shadow(0 4px 16px rgba(0,0,0,0.5));transition:transform 0.4s;
  width:90px;height:90px;border-radius:22px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg, rgba(var(--inst-rgb),0.35), rgba(var(--inst-rgb),0.6));
  border:1px solid rgba(var(--inst-rgb),0.5);
}
.inst-big-icon img{width:100%;height:100%;object-fit:cover;border-radius:22px;}
.inst-card:hover .inst-big-icon{transform:scale(1.12) translateY(-4px);}
.inst-top-img{position:absolute;inset:0;z-index:0;}
.inst-top-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s ease;}
.inst-card:hover .inst-top-img img{transform:scale(1.05);}
.inst-top-img-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,0.1) 0%,rgba(0,0,0,0.45) 100%);}
.inst-body{padding:28px 28px 32px;}
.inst-tag-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.itag{
  font-size:0.62rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;
  padding:4px 10px;border-radius:20px;
  background:rgba(var(--inst-rgb),0.15);
  color:var(--inst-color);
  border:1px solid rgba(var(--inst-rgb),0.3);
}
.inst-arrow{color:rgba(255,255,255,0.2);font-size:1.1rem;transition:all 0.3s;}
.inst-card:hover .inst-arrow{color:#fff;transform:translateX(4px);}
.inst-name{font-size:1.2rem;font-weight:800;letter-spacing:0.5px;color:#fff;margin-bottom:10px;}
.inst-desc{font-size:0.85rem;color:rgba(255,255,255,0.5);line-height:1.7;font-weight:400;margin-bottom:24px;}
.inst-discord{
  display:flex;align-items:center;gap:8px;
  font-size:0.75rem;font-weight:600;letter-spacing:1px;
  color:rgba(255,255,255,0.4);
  border-top:1px solid rgba(255,255,255,0.06);
  padding-top:20px;
  transition:color 0.2s;
}
.inst-card:hover .inst-discord{color:var(--inst-color);}
.inst-discord svg{flex-shrink:0;}
.inst-card-bottom{
  position:absolute;bottom:0;left:0;right:0;height:3px;
  border-radius:0 0 16px 16px;
  transform:scaleX(0);transition:transform 0.4s;
  background:linear-gradient(90deg,transparent,var(--inst-color),transparent);
}
.inst-card:hover .inst-card-bottom{transform:scaleX(1);}
.inst-empty{text-align:center;color:rgba(255,255,255,0.45);padding:60px 20px;border:1px dashed rgba(255,255,255,0.1);border-radius:16px;}
@media(max-width:780px){
  .inst-grid,
  .inst-grid[data-count="2"],
  .inst-grid[data-count="4"],
  .inst-grid[data-count="5"],
  .inst-grid[data-count="6"],
  .inst-grid[data-count="many"]{grid-template-columns:1fr;max-width:560px;}
}

#rules{
  background:#0B0F18;
  border-top:1px solid rgba(255,255,255,0.05);
  padding:100px 80px;
}
.rules-top{
  display:flex;justify-content:space-between;align-items:flex-end;
  margin-bottom:56px;flex-wrap:wrap;gap:20px;max-width:1200px;margin-left:auto;margin-right:auto;
}
.rules-top-right{color:rgba(255,255,255,0.4);font-size:0.88rem;line-height:1.7;max-width:360px;text-align:right;font-weight:400;}
.rules-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:16px;max-width:1200px;margin:0 auto;
}
.rule-card{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.07);
  border-radius:12px;padding:32px 28px;
  transition:all 0.3s;
  position:relative;overflow:hidden;
}
.rule-card::after{
  content:'';position:absolute;top:0;left:0;width:3px;height:0;
  background:linear-gradient(180deg,#3b82f6,transparent);
  transition:height 0.4s;border-radius:3px 0 0 3px;
}
.rule-card:hover{background:rgba(255,255,255,0.06);border-color:rgba(59,130,246,0.2);}
.rule-card:hover::after{height:100%;}
.rule-num{font-size:0.65rem;font-weight:700;letter-spacing:3px;color:rgba(59,130,246,0.5);margin-bottom:14px;}
.rule-icon-wrap{
  width:44px;height:44px;border-radius:10px;
  background:linear-gradient(135deg,rgba(29,78,216,0.3),rgba(37,99,235,0.15));
  display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;font-weight:900;margin-bottom:16px;
  border:1px solid rgba(37,99,235,0.35);
  color:#60a5fa;letter-spacing:-0.5px;
  box-shadow:0 0 16px rgba(37,99,235,0.15);
}
.rule-title{font-size:0.92rem;font-weight:700;letter-spacing:0.5px;color:#fff;margin-bottom:8px;}
.rule-desc{font-size:0.83rem;color:rgba(255,255,255,0.45);line-height:1.7;font-weight:400;}

#join{
  padding:100px 80px;
  background:linear-gradient(180deg,#0B0F18,#0d1525);
  border-top:1px solid rgba(255,255,255,0.05);
}
.join-inner{
  max-width:1200px;margin:0 auto;
  background:linear-gradient(135deg,rgba(29,78,216,0.12),rgba(17,24,39,0.8));
  border:1px solid rgba(37,99,235,0.2);
  border-radius:24px;padding:72px 80px;
  display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;
  position:relative;overflow:hidden;
}
.join-inner::before{
  content:'';position:absolute;top:-120px;right:-80px;
  width:400px;height:400px;border-radius:50%;
  background:radial-gradient(circle,rgba(37,99,235,0.1),transparent 70%);
  pointer-events:none;
}
.join-inner::after{
  content:'';position:absolute;bottom:-80px;left:-40px;
  width:300px;height:300px;border-radius:50%;
  background:radial-gradient(circle,rgba(124,58,237,0.06),transparent 70%);
  pointer-events:none;
}
.join-text .section-title{font-size:clamp(1.8rem,3vw,2.5rem);}
.join-text p{color:rgba(255,255,255,0.55);line-height:1.8;max-width:480px;margin-top:12px;font-size:0.95rem;}
.join-actions{display:flex;flex-direction:column;gap:12px;position:relative;z-index:1;}
.jbtn{
  display:flex;align-items:center;gap:10px;
  padding:13px 28px;border-radius:10px;
  font-size:0.78rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  text-decoration:none;transition:all 0.25s;white-space:nowrap;
}
.jbtn-discord{background:#5865f2;color:#fff;box-shadow:0 8px 24px rgba(88,101,242,0.3);}
.jbtn-discord:hover{background:#4752c4;transform:translateY(-2px);box-shadow:0 16px 36px rgba(88,101,242,0.4);}
.jbtn-outline{background:rgba(255,255,255,0.05);color:rgba(255,255,255,0.7);border:1px solid rgba(255,255,255,0.1);}
.jbtn-outline:hover{background:rgba(255,255,255,0.09);color:#fff;transform:translateY(-2px);}

footer{
  background:#060A10;
  border-top:1px solid rgba(255,255,255,0.06);
  padding:56px 80px 36px;
}
.footer-grid{
  display:grid;grid-template-columns:2.5fr 1fr 1fr 1fr;
  gap:60px;max-width:1200px;margin:0 auto;
  padding-bottom:40px;
  border-bottom:1px solid rgba(255,255,255,0.06);
}
.footer-brand .logo-row{display:flex;align-items:center;gap:10px;text-decoration:none;margin-bottom:16px;}
.footer-brand p{color:rgba(255,255,255,0.35);font-size:0.85rem;line-height:1.8;max-width:280px;font-weight:400;}
.footer-socials{display:flex;gap:12px;margin-top:24px;}
.footer-social{
  width:42px;height:42px;border-radius:11px;flex-shrink:0;
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,0.65);text-decoration:none;
  transition:background .2s,border-color .2s,color .2s,transform .2s;
}
.footer-social svg{width:19px;height:19px;}
.footer-social:hover{background:rgba(37,99,235,0.18);border-color:rgba(37,99,235,0.5);color:#fff;transform:translateY(-3px);}
.footer-col h6{font-size:0.65rem;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:20px;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-col a{color:rgba(255,255,255,0.45);text-decoration:none;font-size:0.85rem;font-weight:400;transition:color 0.2s;}
.footer-col a:hover{color:#fff;}
.footer-bottom{
  max-width:1200px;margin:28px auto 0;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;
}
.footer-bottom p{font-size:0.75rem;color:rgba(255,255,255,0.2);}
.footer-bottom span{color:#3b82f6;}

#cookie-banner{
  position:fixed;bottom:0;left:0;right:0;z-index:9998;
  background:rgba(6,10,16,0.97);
  backdrop-filter:blur(20px);
  border-top:1px solid rgba(37,99,235,0.2);
  padding:20px 48px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  transform:translateY(110%);opacity:0;
  animation:cookieIn 0.7s 2s cubic-bezier(0.22,1.4,0.36,1) forwards;
  flex-wrap:wrap;
  transition:transform 0.45s cubic-bezier(0.5,0,0.75,0),opacity 0.45s ease;
}
#cookie-banner.hidden{display:none;}
#cookie-banner.closing{
  animation:none;
  transform:translateY(120%) scale(0.96) !important;
  opacity:0;
}
@keyframes cookieIn{
  0%{transform:translateY(110%) scale(0.97);opacity:0;}
  60%{opacity:1;}
  100%{transform:translateY(0) scale(1);opacity:1;}
}

@media (min-width: 900px){
  #cookie-banner{
    right:auto;left:32px;bottom:32px;
    max-width:480px;
    flex-direction:column;align-items:flex-start;gap:18px;
    padding:26px 28px;
    border-radius:16px;
    border:1px solid rgba(37,99,235,0.28);
    background:rgba(8,13,24,0.9);
    box-shadow:0 24px 70px rgba(0,0,0,0.55), 0 0 0 1px rgba(255,255,255,0.03) inset, 0 0 40px rgba(37,99,235,0.08);
  }
  #cookie-banner.closing{
    transform:translateY(120%) translateX(-40px) scale(0.96) !important;
  }
  #cookie-banner::before{
    content:'';position:absolute;top:0;left:20px;right:20px;height:1px;
    background:linear-gradient(90deg,transparent,rgba(96,165,250,0.6),transparent);
  }
  .cookie-text{max-width:none;}
  .cookie-btns{width:100%;}
  .cookie-btns button{flex:1;}
}

.cookie-text{font-size:0.82rem;color:rgba(255,255,255,0.55);line-height:1.7;max-width:700px;}
.cookie-text a{color:#60a5fa;text-decoration:none;transition:color 0.2s;}
.cookie-text a:hover{color:#93bbfc;text-decoration:underline;}
.cookie-btns{display:flex;gap:10px;flex-shrink:0;}

.cookie-header{display:flex;align-items:center;gap:16px;}

.cookie-3d{position:relative;flex-shrink:0;width:50px;height:56px;}
.cookie-shadow{
  position:absolute;left:50%;bottom:2px;
  width:32px;height:8px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(0,0,0,0.45),transparent 70%);
  transform:translateX(-50%);
  animation:cookieShadowPulse 3.4s ease-in-out infinite;
}
.cookie-disc{
  position:absolute;top:0;left:50%;margin-left:-25px;
  width:50px;height:50px;border-radius:50%;
  background:radial-gradient(circle at 32% 28%,#f4c68d 0%,#e2a561 38%,#cb8a4b 68%,#a86a34 100%);
  box-shadow:
    0 4px 0 #8a5a28,
    0 10px 18px rgba(0,0,0,0.45),
    inset 0 -5px 7px rgba(0,0,0,0.28),
    inset 0 3px 4px rgba(255,255,255,0.4);
  animation:cookieFloat 3.4s ease-in-out infinite;
  transition:animation-duration 0.2s;
}
.cookie-chip{
  position:absolute;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#6b3a1f,#3d2011 75%);
  box-shadow:inset 0 1px 1px rgba(255,255,255,0.15);
}
.cookie-chip.c1{width:9px;height:9px;top:9px;left:13px;}
.cookie-chip.c2{width:7px;height:7px;top:19px;left:31px;}
.cookie-chip.c3{width:6px;height:6px;top:31px;left:11px;}
.cookie-chip.c4{width:8px;height:8px;top:33px;left:26px;}
.cookie-chip.c5{width:5px;height:5px;top:13px;left:26px;}
.cookie-chip.c6{width:5px;height:5px;top:24px;left:20px;}
#cookie-banner:hover .cookie-disc{animation:cookieNibble 0.55s ease-in-out infinite;}
@keyframes cookieFloat{
  0%,100%{transform:translateY(0) rotate(-8deg);}
  50%{transform:translateY(-6px) rotate(8deg);}
}
@keyframes cookieNibble{
  0%,100%{transform:translateY(-6px) rotate(-12deg) scale(1);}
  50%{transform:translateY(-6px) rotate(12deg) scale(1.07);}
}
@keyframes cookieShadowPulse{
  0%,100%{transform:translateX(-50%) scale(1);opacity:0.55;}
  50%{transform:translateX(-50%) scale(0.75);opacity:0.3;}
}
@media(max-width:480px){
  .cookie-3d{width:40px;height:46px;}
  .cookie-disc{width:40px;height:40px;margin-left:-20px;}
  .cookie-shadow{width:26px;}
}

.cookie-accept{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,#1d4ed8,#2563eb);
  color:#fff;padding:10px 24px;border-radius:6px;
  font-size:0.75rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  border:none;cursor:pointer;
  transition:transform 0.25s cubic-bezier(0.34,1.56,0.64,1),box-shadow 0.25s,filter 0.25s;
}
.cookie-accept::after{
  content:'';position:absolute;top:0;left:-80%;width:50%;height:100%;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,0.35),transparent);
  transform:skewX(-20deg);
  transition:left 0.5s ease;
}
.cookie-accept:hover{
  transform:translateY(-2px) scale(1.03);
  box-shadow:0 10px 28px rgba(37,99,235,0.45);
  filter:brightness(1.12);
}
.cookie-accept:hover::after{left:130%;}
.cookie-accept:active{transform:translateY(0) scale(0.98);transition-duration:0.08s;}
.cookie-refuse{
  position:relative;overflow:hidden;
  background:rgba(255,255,255,0.06);
  color:rgba(255,255,255,0.6);padding:10px 24px;border-radius:6px;
  font-size:0.75rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;
  border:1px solid rgba(255,255,255,0.1);cursor:pointer;
  transition:all 0.25s cubic-bezier(0.34,1.56,0.64,1);
}
.cookie-refuse:hover{
  background:rgba(255,255,255,0.12);color:#fff;
  border-color:rgba(255,255,255,0.3);
  transform:translateY(-2px) scale(1.03);
  box-shadow:0 8px 20px rgba(0,0,0,0.35);
}
.cookie-refuse:active{transform:translateY(0) scale(0.98);transition-duration:0.08s;}

.cookie-ripple{
  position:absolute;border-radius:50%;
  background:rgba(255,255,255,0.55);
  transform:scale(0);
  pointer-events:none;
  animation:cookieRippleAnim 0.55s ease-out forwards;
}
@keyframes cookieRippleAnim{to{transform:scale(1);opacity:0;}}

.cookie-disc.chomp{animation:cookieChomp 0.5s ease-in-out;}
@keyframes cookieChomp{
  0%{transform:translateY(-6px) rotate(0deg) scale(1);}
  30%{transform:translateY(-2px) rotate(-8deg) scale(0.8);}
  55%{transform:translateY(-9px) rotate(10deg) scale(1.14);}
  100%{transform:translateY(-6px) rotate(-8deg) scale(1);}
}
#cookie-banner.shake{animation:cookieShake 0.45s ease-in-out;}
@keyframes cookieShake{
  0%,100%{transform:translateX(0);}
  20%{transform:translateX(-9px);}
  40%{transform:translateX(8px);}
  60%{transform:translateX(-6px);}
  80%{transform:translateX(4px);}
}

@keyframes fadeUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
.reveal{opacity:0;transform:translateY(40px);transition:opacity 0.85s cubic-bezier(0.16,1,0.3,1),transform 0.85s cubic-bezier(0.16,1,0.3,1);}
.reveal.visible{opacity:1;transform:none;}

@media(max-width:1024px){
  nav{padding:0 24px;top:12px;}
  .nav-menu{display:none;}
  .nav-quick-btns{display:none;}
  section.content-section{padding:72px 24px;}
  #institutions,#rules,#join{padding:72px 24px;}
  footer{padding:48px 24px 28px;}
  .vision-grid{grid-template-columns:1fr;gap:48px;}
  .vision-image{height:280px;}
  .inst-grid{grid-template-columns:1fr;}
  .rules-grid{grid-template-columns:1fr 1fr;}
  .join-inner{grid-template-columns:1fr;padding:40px 32px;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px;}
  #nav > .nav-right{display:none;}
}
@media(max-width:640px){
  .rules-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .rules-top{flex-direction:column;}
  .rules-top-right{text-align:left;}
  .hero-title{font-size:clamp(2rem,12vw,3.6rem);letter-spacing:1px;}
  .hero-content{padding:0 20px;}
  nav{padding:0 12px;top:10px;}
  .nav-logo{gap:6px;padding:5px 14px 5px 6px;}
  .nav-logo-img{height:26px;}
  .nav-logo-text{font-size:.68rem;letter-spacing:1px;}
  .nav-left-group{gap:6px;}
  .nav-right{gap:7px;}
  .nav-btn{padding:7px 12px;font-size:.66rem;letter-spacing:.5px;}
  .nav-avatar{width:30px;height:30px;font-size:.85rem;}
}

.nav-burger{
  display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;
  width:54px;height:54px;flex-shrink:0;
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);
  border-radius:8px;padding:0;
}
.nav-burger span{display:block;width:26px;height:2px;background:#fff;border-radius:2px;transition:transform .3s ease, opacity .2s ease;}
.nav-burger.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-burger.active span:nth-child(2){opacity:0;}
.nav-burger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
@media(max-width:1024px){.nav-burger{display:flex;}}
@media(max-width:640px){.nav-burger{width:38px;height:38px;}.nav-burger span{width:18px;}}

.mnav-overlay{
  position:fixed;inset:0;z-index:1200;
  background:rgba(4,8,16,0.7);backdrop-filter:blur(4px);
  opacity:0;visibility:hidden;transition:opacity .3s ease, visibility .3s ease;
}
.mnav-overlay.open{opacity:1;visibility:visible;}
.mnav-panel{
  position:fixed;top:0;right:0;bottom:0;width:min(340px,84vw);z-index:1201;
  background:rgba(11,15,24,0.98);backdrop-filter:blur(20px);
  border-left:1px solid rgba(37,99,235,0.25);
  box-shadow:-20px 0 60px rgba(0,0,0,0.5);
  transform:translateX(100%);transition:transform .35s cubic-bezier(.16,1,.3,1);
  display:flex;flex-direction:column;overflow-y:auto;
}
.mnav-panel.open{transform:translateX(0);}
.mnav-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid rgba(255,255,255,0.07);}
.mnav-brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;letter-spacing:1px;font-size:.8rem;text-transform:uppercase;}
.mnav-brand-icon{width:32px;height:32px;border-radius:7px;background:linear-gradient(135deg,#1a3a6e,#2563eb);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.7rem;color:#fff;flex-shrink:0;}
.mnav-close{width:34px;height:34px;border-radius:8px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.mnav-close:hover{background:rgba(255,255,255,0.12);}
.mnav-close svg{width:16px;height:16px;}
.mnav-list{list-style:none;padding:14px 10px;flex:1;}
.mnav-link{display:flex;align-items:center;gap:14px;padding:15px 12px;border-radius:10px;color:rgba(255,255,255,0.75);text-decoration:none;font-size:.9rem;font-weight:600;letter-spacing:.5px;transition:background .2s, color .2s, border-color .2s;border-left:2px solid transparent;}
.mnav-num{font-size:.65rem;font-weight:700;color:#3b82f6;min-width:20px;flex-shrink:0;}
.mnav-link:hover,.mnav-link:active{background:rgba(37,99,235,0.12);color:#fff;border-left-color:#2563eb;}
@media(max-width:400px){.mnav-panel{width:88vw;}}
.mnav-quick{display:flex;justify-content:center;padding:18px 20px 4px;border-bottom:1px solid rgba(255,255,255,0.07);margin-bottom:6px;}
.mnav-quick:empty{display:none;}

.section-bg-wrap{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;}
.bg-slide{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  opacity:0;transition:opacity 2s ease;
}
.bg-slide.active{opacity:1;}

#vision{position:relative;overflow:hidden;}
#vision .container{position:relative;z-index:2;}
.vision-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(135deg,rgba(11,15,24,0.93) 0%,rgba(13,21,37,0.88) 50%,rgba(11,15,24,0.93) 100%);
}

#institutions{position:relative;overflow:hidden;}
#institutions .inst-header,#institutions .inst-grid{position:relative;z-index:2;}
.inst-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(13,21,37,0.92) 0%,rgba(10,18,32,0.85) 50%,rgba(13,21,37,0.92) 100%);
}

#rules{position:relative;overflow:hidden;}
#rules .rules-top,#rules .rules-grid{position:relative;z-index:2;}
.rules-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(11,15,24,1) 0%,rgba(11,20,38,0.82) 40%,rgba(11,20,38,0.82) 60%,rgba(11,15,24,1) 100%);
}

#join{position:relative;overflow:hidden;}
#join .join-inner{position:relative;z-index:2;}
.join-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(135deg,rgba(11,15,24,0.9) 0%,rgba(15,25,50,0.8) 50%,rgba(11,15,24,0.9) 100%);
}

#polls{position:relative;overflow:hidden;}
#polls .polls-inner{position:relative;z-index:2;}
.polls-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(11,15,24,1) 0%,rgba(11,20,38,0.82) 40%,rgba(11,20,38,0.82) 60%,rgba(11,15,24,1) 100%);
}

#giveaway{position:relative;overflow:hidden;}
#giveaway .gw-inner{position:relative;z-index:2;}
.giveaway-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(11,15,24,1) 0%,rgba(11,20,38,0.82) 40%,rgba(11,20,38,0.82) 60%,rgba(11,15,24,1) 100%);
}

#media{position:relative;overflow:hidden;}
#media>div{position:relative;z-index:2;}
.media-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(11,15,24,1) 0%,rgba(11,20,38,0.80) 40%,rgba(11,20,38,0.80) 60%,rgba(11,15,24,1) 100%);
}

#effectifs{overflow:hidden;}
#effectifs .staff-header,#effectifs .staff-wrap{position:relative;z-index:2;}
.staff-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(11,15,24,1) 0%,rgba(11,20,38,0.82) 40%,rgba(11,20,38,0.82) 60%,rgba(11,15,24,1) 100%);
}

.pt-bg-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(13,21,37,0.92) 0%,rgba(10,18,32,0.85) 50%,rgba(13,21,37,0.92) 100%);
}


/* ───── bloc pc-top-redesign ───── */
/* ═══════════════════════════════════════════════════════════════════════
   Haut de page refait : barre de navigation, accueil, présentation, institutions.
   Même langage que le panel Support & Tickets : bleu nuit, verre sombre,
   pastilles d'icône, pilules, accents colorés par élément.
   ═══════════════════════════════════════════════════════════════════════ */
:root{--tx-ease:cubic-bezier(.16,1,.3,1);}

/* ── Barre de navigation : une seule île de verre ── */
#nav{left:50%;width:min(1280px,calc(100% - 32px));transform:translateX(-50%);padding:8px;gap:10px;border-radius:22px;pointer-events:auto;
  background:rgba(12,18,36,.55);border:1px solid rgba(255,255,255,.09);-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2);
  box-shadow:0 18px 40px -18px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.05);transition:top .3s,background .3s,box-shadow .3s,border-color .3s;font-family:'Montserrat',system-ui,sans-serif;}
#nav.scrolled{background:rgba(8,12,26,.9);border-color:rgba(255,255,255,.1);box-shadow:0 20px 44px -16px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.05);}
#nav .nav-logo,#nav .nav-round-btn,#nav .nav-menu-btn,#nav .nav-right{background:transparent!important;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;}
#nav .nav-logo{gap:10px;padding:4px 12px 4px 6px;border-radius:14px;transition:background .2s;}
#nav .nav-logo:hover{transform:none;background:rgba(255,255,255,.05)!important;box-shadow:none;}
#nav .nav-logo-img{height:34px;}
#nav .nav-logo-text{font-size:.95rem;font-weight:900;letter-spacing:-.01em;text-transform:none;}
#nav .nav-quick-btns{gap:4px;padding-left:6px;margin-left:2px;border-left:1px solid rgba(255,255,255,.08);}
#nav .nav-round-btn{width:38px;height:38px;border-radius:12px;color:rgba(226,232,240,.8);transition:background .2s,color .2s;}
#nav .nav-round-btn:hover{transform:none;background:rgba(37,99,235,.18)!important;color:#fff;box-shadow:none;}
#nav .nav-round-btn svg{width:18px;height:18px;}
#nav .nav-menu-btn{height:40px;padding:0 16px 0 14px;gap:9px;border-radius:14px;font-size:.74rem;font-weight:800;letter-spacing:.08em;color:#fff;background:rgba(255,255,255,.05)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:background .2s,box-shadow .2s;}
#nav .nav-menu-btn:hover{transform:none;background:rgba(37,99,235,.2)!important;box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}
#nav .nav-menu.open .nav-menu-btn{background:rgba(37,99,235,.28)!important;box-shadow:inset 0 0 0 1px rgba(96,165,250,.55);}
#nav .nav-menu-btn .nd-grid-ic{width:16px;height:16px;}
#nav .nav-right{gap:6px;padding:0;}
#nav .nav-right:hover{box-shadow:none;}
#nav .nav-btn{height:38px;display:inline-flex;align-items:center;padding:0 18px;border-radius:12px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 8px 18px -8px rgba(37,99,235,.85);}
#nav .nav-btn:hover{transform:translateY(-1px);}
#nav .nav-avatar{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.06);border:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
#nav .nav-avatar:hover{transform:none;box-shadow:inset 0 0 0 1px rgba(96,165,250,.55),0 0 0 3px rgba(37,99,235,.18);}
#nav .nav-avatar img{border-radius:12px;}

/* Méga-menu groupé */
#nav .nav-dropdown{top:calc(100% + 18px);width:min(880px,calc(100vw - 40px));min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:12px;border-radius:24px;
  background:radial-gradient(520px 200px at 0% 0%,rgba(37,99,235,.18),transparent 70%),linear-gradient(180deg,rgba(16,25,50,.98),rgba(8,13,28,.98));
  border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 90px -20px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.06);transform:translate(-50%,-10px) scale(.98);transition:opacity .22s ease,transform .35s var(--tx-ease),visibility .22s;}
#nav .nav-menu.open .nav-dropdown{transform:translate(-50%,0) scale(1);}
.nd-group{padding:6px;border-radius:18px;}
.nd-t{display:flex;align-items:center;gap:8px;padding:6px 8px 10px;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.75);}
.nd-t i{width:6px;height:6px;border-radius:50%;background:rgb(var(--c,96,165,250));box-shadow:0 0 8px rgba(var(--c,96,165,250),.9);}
#nav .nav-dropdown a{--c:96,165,250;display:flex;align-items:center;gap:11px;padding:8px;border-radius:13px;color:rgba(226,232,240,.85);font-size:.8rem;font-weight:700;letter-spacing:0;transition:background .18s,color .18s;}
#nav .nav-dropdown a:hover,#nav .nav-dropdown a:focus-visible{padding-left:8px;background:rgba(255,255,255,.05);color:#fff;outline:none;}
#nav .nav-dropdown a .ic{flex:none;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.12);box-shadow:inset 0 0 0 1px rgba(var(--c),.24);transition:background .18s,transform .25s var(--tx-ease);}
#nav .nav-dropdown a:hover .ic{background:rgba(var(--c),.22);transform:scale(1.06);}
#nav .nav-dropdown a .ic svg{width:17px;height:17px;}
#nav .nav-dropdown a .tx{display:flex;flex-direction:column;min-width:0;line-height:1.25;}
#nav .nav-dropdown a small{margin-top:2px;font-size:.66rem;font-weight:600;color:rgba(148,163,184,.75);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

@media(max-width:1024px){
  #nav{width:calc(100% - 24px);padding:6px;}
  #nav .nav-logo-text{font-size:.85rem;}
}
@media(max-width:640px){
  #nav{width:calc(100% - 16px);border-radius:18px;}
  #nav .nav-logo{padding:3px 10px 3px 4px;}
  #nav .nav-logo-img{height:28px;}
}

/* Menu mobile */
.mnav-panel{background:radial-gradient(420px 220px at 0% 0%,rgba(37,99,235,.2),transparent 70%),linear-gradient(180deg,#0e162c,#080d1c)!important;border-left:1px solid rgba(255,255,255,.08);font-family:'Montserrat',system-ui,sans-serif;}
.mnav-head{padding:18px 18px!important;}
.mnav-brand{font-size:.95rem!important;font-weight:900!important;letter-spacing:-.01em!important;text-transform:none!important;}
.mnav-brand-icon{border-radius:12px!important;background:linear-gradient(135deg,#1d4ed8,#3b82f6)!important;box-shadow:0 8px 20px -6px rgba(37,99,235,.7);width:36px!important;height:36px!important;}
.mnav-close{width:36px!important;height:36px!important;border-radius:50%!important;border:none!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.mnav-list{padding:8px 12px 24px!important;overflow-y:auto;}
.mnav-sec{list-style:none;padding:14px 8px 6px;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.7);}
.mnav-link{--c:96,165,250;gap:12px!important;padding:8px 8px!important;border-left:0!important;border-radius:14px!important;font-weight:700!important;letter-spacing:0!important;font-size:.88rem!important;}
.mnav-link:hover,.mnav-link:active{background:rgba(255,255,255,.05)!important;}
.mnav-link .mnav-num{display:none;}
.mnav-link .ic{flex:none;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.12);box-shadow:inset 0 0 0 1px rgba(var(--c),.24);}
.mnav-link .ic svg{width:17px;height:17px;}

/* ── Accueil ── */
#hero{min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;padding:120px 0 0;font-family:'Montserrat',system-ui,sans-serif;}
#hero .hero-slide{transform:scale(1.08);transition:opacity 1.6s ease,transform 9s linear;}
#hero .hero-slide.active{transform:scale(1);}
#hero .hero-overlay{background:
  linear-gradient(90deg,rgba(5,9,20,.92) 0%,rgba(5,9,20,.72) 38%,rgba(5,9,20,.2) 75%,rgba(5,9,20,.35) 100%),
  linear-gradient(0deg,#070b17 0%,rgba(7,11,23,.6) 22%,transparent 50%),
  radial-gradient(900px 500px at 10% 100%,rgba(37,99,235,.25),transparent 70%);}
#hero .hero-content.hx{position:relative;z-index:5;width:min(1280px,calc(100% - 48px));margin:0 auto;padding:0 0 clamp(40px,8vh,90px);text-align:left;display:flex;flex-direction:column;align-items:flex-start;max-width:none;transform:none;}
.hx-top{display:flex;align-items:center;gap:12px;margin-bottom:22px;flex-wrap:wrap;}
#hero .hero-logo-badge.hx-badge{position:static;width:44px;height:44px;margin:0;border-radius:14px;display:grid;place-items:center;font-size:.85rem;font-weight:900;letter-spacing:-.02em;color:#fff;
  background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 12px 26px -8px rgba(37,99,235,.8),inset 0 1px 0 rgba(255,255,255,.25);border:none;-webkit-backdrop-filter:none;backdrop-filter:none;}
.hx-live{opacity:0;animation:fadeUp .7s .55s forwards;}
.hx-live{display:inline-flex;align-items:center;gap:9px;height:36px;padding:0 15px 0 13px;border-radius:999px;font-size:.74rem;font-weight:700;color:rgba(226,232,240,.92);
  background:rgba(8,14,30,.72);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
.hx-live>i{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 0 rgba(52,211,153,.7);animation:hxPulse 2s infinite;}
@keyframes hxPulse{70%{box-shadow:0 0 0 8px rgba(52,211,153,0);}100%{box-shadow:0 0 0 0 rgba(52,211,153,0);}}
.hx-live b{color:#fff;font-weight:900;font-variant-numeric:tabular-nums;}
.hx-live .sep{width:1px;height:14px;margin:0 3px;background:rgba(255,255,255,.2);}
#hero .hx-title{margin:0;font-size:inherit;letter-spacing:0;line-height:1;text-align:left;display:flex;flex-direction:column;gap:14px;text-transform:none;text-shadow:none;}
#hero .hx-title .l1{display:block;margin:0;font-size:clamp(3.4rem,10.5vw,9.5rem);font-weight:900;letter-spacing:-.045em;line-height:.86;
  padding-bottom:.06em;background:linear-gradient(180deg,#fff 50%,#bfdbfe);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 14px 34px rgba(0,0,0,.55));}
#hero .hx-title .l2{display:flex;align-items:center;gap:14px;margin:0;font-size:clamp(.72rem,1.3vw,.95rem);font-weight:800;letter-spacing:.32em;text-transform:uppercase;color:#93c5fd;}
#hero .hx-title .l2::before{content:'';width:42px;height:2px;border-radius:2px;background:linear-gradient(90deg,#3b82f6,rgba(59,130,246,0));}
#hero .hx-desc{margin:22px 0 0;max-width:540px;text-align:left;font-size:clamp(.92rem,1.2vw,1.05rem);font-weight:500;line-height:1.7;color:rgba(226,232,240,.8);}
#hero .hx-cta{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-start;margin-top:30px;}
#hero .hx-cta .cta-primary,#hero .hx-cta .cta-secondary{display:inline-flex;align-items:center;gap:9px;height:50px;padding:0 24px;border-radius:999px;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;}
#hero .hx-cta .cta-primary{border:none;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 14px 30px -10px rgba(37,99,235,.9),inset 0 1px 0 rgba(255,255,255,.2);}
#hero .hx-cta .cta-primary:hover{transform:translateY(-2px);box-shadow:0 18px 36px -10px rgba(37,99,235,1);}
#hero .hx-cta .cta-secondary{color:#fff;background:rgba(255,255,255,.07);border:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
#hero .hx-cta .cta-secondary:hover{transform:translateY(-2px);background:rgba(255,255,255,.13);}
#hero .hx-cta svg{width:17px;height:17px;}
#hero .hx-cta .cta-secondary.rp{color:#fde68a;box-shadow:inset 0 0 0 1px rgba(251,191,36,.45);background:rgba(251,191,36,.1);}
.hx-facts{position:absolute;z-index:5;right:max(24px,calc((100% - 1280px)/2));bottom:clamp(40px,8vh,90px);display:flex;flex-direction:column;gap:10px;width:260px;}
.hx-fact{--c:96,165,250;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;background:rgba(8,14,30,.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  opacity:0;transform:translateX(16px);animation:hxIn .8s var(--tx-ease) forwards;}
.hx-fact:nth-child(2){animation-delay:.12s;}.hx-fact:nth-child(3){animation-delay:.24s;}
@keyframes hxIn{to{opacity:1;transform:none;}}
.hx-fact .ic{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.3);}
.hx-fact .ic svg{width:18px;height:18px;}
.hx-fact b{display:block;font-size:.86rem;font-weight:800;color:#fff;}
.hx-fact span{display:block;margin-top:1px;font-size:.7rem;font-weight:600;color:rgba(148,163,184,.85);}
.hx-scroll{position:absolute;z-index:5;left:50%;bottom:22px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;font-size:.58rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:rgba(203,213,225,.6);text-decoration:none;}
.hx-scroll i{width:22px;height:34px;border-radius:12px;box-shadow:inset 0 0 0 2px rgba(203,213,225,.35);position:relative;}
.hx-scroll i::after{content:'';position:absolute;left:50%;top:7px;width:4px;height:7px;margin-left:-2px;border-radius:2px;background:#93c5fd;animation:hxWheel 1.8s infinite;}
@keyframes hxWheel{0%{opacity:0;transform:translateY(-3px);}30%{opacity:1;}100%{opacity:0;transform:translateY(10px);}}
.hx-scroll:hover{color:#fff;}
@media(max-width:1100px){.hx-facts{display:none;}}
@media(max-width:640px){
  #hero{padding-top:100px;}
  #hero .hero-content.hx{width:calc(100% - 32px);padding-bottom:70px;}
  #hero .hx-title .l2{letter-spacing:.2em;}
  #hero .hx-title .l2::before{width:24px;}
  #hero .hx-cta{width:100%;}
  #hero .hx-cta .cta-primary,#hero .hx-cta .cta-secondary{flex:1 1 100%;justify-content:center;}
  .hx-live{font-size:.66rem;}
  .hx-scroll{display:none;}
}

/* ── Titres de section partagés par les sections refaites ── */
.tx-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:36px;}
.tx-kick{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px;margin-bottom:14px;border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#93c5fd;background:rgba(37,99,235,.14);box-shadow:inset 0 0 0 1px rgba(96,165,250,.3);}
.tx-kick svg{width:13px;height:13px;}
.tx-h2{margin:0;font-family:'Montserrat',system-ui,sans-serif;font-size:clamp(2rem,4.2vw,3.2rem);font-weight:900;letter-spacing:-.03em;line-height:1.02;color:#fff;}
.tx-lead{margin:14px 0 0;max-width:620px;font-size:1rem;font-weight:500;line-height:1.75;color:rgba(203,213,225,.78);}

/* ── Présentation ── */
#vision,#institutions{scroll-margin-top:70px;}
#vision.content-section{padding:110px 0;background:linear-gradient(180deg,#070b17,#0b1224);font-family:'Montserrat',system-ui,sans-serif;}
#vision .container.vx{position:relative;z-index:2;width:min(1280px,calc(100% - 48px));max-width:none;margin:0 auto;}
.vx-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;}
.vx-card{position:relative;border-radius:24px;overflow:hidden;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);}
.vx-media{grid-column:span 7;grid-row:span 2;min-height:420px;}
.vx-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 6s ease;}
.vx-media:hover img{transform:scale(1.05);}
.vx-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,11,23,.1) 30%,rgba(7,11,23,.85)),linear-gradient(135deg,rgba(29,78,216,.25),transparent 60%);}
.vx-place{position:absolute;z-index:2;top:16px;left:16px;display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 12px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:rgba(8,14,30,.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.vx-place svg{width:13px;height:13px;color:#93c5fd;}
.vx-server{position:absolute;z-index:2;left:16px;right:16px;bottom:16px;display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:18px;background:rgba(8,14,30,.72);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);}
.vx-server .logo{flex:none;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:.8rem;font-weight:900;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);}
.vx-server .who{flex:1;min-width:0;}
.vx-server b{display:block;font-size:.92rem;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vx-server span{display:block;margin-top:2px;font-size:.72rem;font-weight:600;color:rgba(148,163,184,.9);}
.vx-on{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#34d399;background:rgba(52,211,153,.13);}
.vx-on i{width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 8px rgba(52,211,153,.9);}
.vx-join{flex:none;display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;text-decoration:none;background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 8px 18px -6px rgba(37,99,235,.85);transition:transform .2s;}
.vx-join:hover{transform:translateY(-1px);}
.vx-text{grid-column:span 5;padding:26px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(360px 200px at 100% 0%,rgba(37,99,235,.14),transparent 70%),rgba(255,255,255,.03);}
.vx-text p{margin:0;font-size:.92rem;font-weight:500;line-height:1.75;color:rgba(203,213,225,.8);}
.vx-text p strong{color:#fff;font-weight:800;}
.vx-paths{grid-column:span 5;padding:22px 26px;display:flex;flex-direction:column;gap:10px;}
.vx-paths h3{margin:0 0 4px;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.75);}
.vx-path{--c:96,165,250;display:flex;align-items:center;gap:12px;}
.vx-path .ic{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.13);box-shadow:inset 0 0 0 1px rgba(var(--c),.28);}
.vx-path .ic svg{width:17px;height:17px;}
.vx-path b{display:block;font-size:.86rem;font-weight:800;color:#fff;}
.vx-path span{display:block;font-size:.72rem;font-weight:600;color:rgba(148,163,184,.85);}
#vision .vx-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;}
.vx-stat{--c:96,165,250;position:relative;padding:20px 22px;border-radius:22px;overflow:hidden;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);transition:border-color .3s,background .3s;}
.vx-stat::before{content:'';position:absolute;inset:auto -30% -60% auto;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(var(--c),.22),transparent 70%);}
.vx-stat:hover{border-color:rgba(var(--c),.35);background:rgba(var(--c),.05);}
.vx-stat .ic{position:relative;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;margin-bottom:14px;color:rgb(var(--c));background:rgba(var(--c),.13);box-shadow:inset 0 0 0 1px rgba(var(--c),.28);}
.vx-stat .ic svg{width:16px;height:16px;}
.vx-stat .num{position:relative;display:flex;align-items:baseline;gap:2px;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:900;letter-spacing:-.03em;line-height:1;color:#fff;font-variant-numeric:tabular-nums;}
.vx-stat .num em{font-style:normal;font-size:.55em;color:rgb(var(--c));}
.vx-stat .lbl{position:relative;margin-top:8px;font-size:.74rem;font-weight:700;color:rgba(148,163,184,.9);}
@media(max-width:1000px){
  .vx-media,.vx-text,.vx-paths{grid-column:1/-1;}
  .vx-media{grid-row:auto;min-height:340px;}
  #vision .vx-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  #vision.content-section{padding:80px 0;}
  #vision .container.vx{width:calc(100% - 32px);}
  .vx-server{flex-wrap:wrap;}
  .vx-join{width:100%;justify-content:center;}
  .vx-text,.vx-paths{padding:20px;}
}

/* ── Institutions ── */
#institutions{padding:110px 0;font-family:'Montserrat',system-ui,sans-serif;background:#0b1224;}
#institutions .ix{position:relative;z-index:2;width:min(1280px,calc(100% - 48px));margin:0 auto;}
.ix-count{display:inline-flex;align-items:center;gap:9px;height:40px;padding:0 16px;border-radius:999px;font-size:.72rem;font-weight:800;color:#fff;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.ix-count svg{width:17px;height:17px;color:#818cf8;}
#institutions .inst-grid.ix-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;max-width:none;margin:0;}
#institutions .ix-grid>.inst-card{grid-column:span 2;}
#institutions .ix-grid[data-count="1"]>.inst-card{grid-column:2 / span 4;}
#institutions .ix-grid[data-count="2"]>.inst-card,#institutions .ix-grid[data-count="4"]>.inst-card{grid-column:span 3;}
#institutions .ix-grid[data-count="5"]>.inst-card:nth-child(-n+2){grid-column:span 3;}
#institutions .ix-card{--inst-rgb:37,99,235;position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:380px;padding:0;border-radius:24px;overflow:hidden;text-decoration:none;color:inherit;
  background:#0a1022;border:1px solid rgba(255,255,255,.08);transform:none;transition:border-color .35s,box-shadow .35s,transform .45s var(--tx-ease);}
#institutions .ix-card:hover,#institutions .ix-card:focus-visible{transform:translateY(-4px);border-color:rgba(var(--inst-rgb),.55);box-shadow:0 30px 60px -28px rgba(var(--inst-rgb),.75);outline:none;}
.ix-media{position:absolute;inset:0;z-index:0;}
.ix-media img{width:100%;height:100%;object-fit:cover;object-position:center 22%;display:block;transition:transform 1.2s var(--tx-ease);}
#institutions .ix-card:hover .ix-media img{transform:scale(1.07);}
.ix-media.noimg{background:radial-gradient(420px 260px at 50% 20%,rgba(var(--inst-rgb),.45),transparent 70%),linear-gradient(180deg,#0f1a33,#080d1c);}
.ix-initial{position:absolute;left:50%;top:34%;transform:translate(-50%,-50%);font-size:7rem;font-weight:900;letter-spacing:-.05em;color:rgba(255,255,255,.9);text-shadow:0 20px 50px rgba(var(--inst-rgb),.8);transition:transform .6s var(--tx-ease);}
#institutions .ix-card:hover .ix-initial{transform:translate(-50%,-54%) scale(1.06);}
.ix-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(7,11,23,0) 0%,rgba(7,11,23,.3) 28%,rgba(7,11,23,.86) 52%,rgba(7,11,23,.97) 100%),linear-gradient(0deg,rgba(var(--inst-rgb),.2),transparent 45%);}
.ix-body{position:relative;z-index:2;padding:22px;}
.ix-tag{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;margin-bottom:12px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(var(--inst-rgb),.3);box-shadow:inset 0 0 0 1px rgba(var(--inst-rgb),.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);}
.ix-tag i{width:6px;height:6px;border-radius:50%;background:rgb(var(--inst-rgb));box-shadow:0 0 8px rgba(var(--inst-rgb),1);}
#institutions .ix-name{margin:0;font-size:1.35rem;font-weight:900;letter-spacing:-.02em;line-height:1.15;color:#fff;}
#institutions .ix-desc{margin-top:8px;font-size:.84rem;font-weight:500;line-height:1.6;color:rgba(226,232,240,.78);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.ix-cta{display:inline-flex;align-items:center;gap:8px;height:38px;margin-top:16px;padding:0 16px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);transition:background .3s,box-shadow .3s;}
.ix-cta svg{width:15px;height:15px;flex:none;}
.ix-cta .arr{transition:transform .3s var(--tx-ease);}
#institutions .ix-card:hover .ix-cta{background:rgb(var(--inst-rgb));box-shadow:0 10px 24px -8px rgba(var(--inst-rgb),.9);}
#institutions .ix-card:hover .ix-cta .arr{transform:translateX(3px);}
#institutions .ix-card .inst-fav{z-index:3;top:14px;right:14px;border-radius:12px;background:rgba(8,14,30,.6);}
.ix-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:56px 20px;border-radius:24px;border:1px dashed rgba(255,255,255,.12);text-align:center;font-size:.88rem;font-weight:600;color:rgba(148,163,184,.85);}
.ix-empty b{color:#fff;font-size:1rem;}
@media(max-width:1000px){
  #institutions .inst-grid.ix-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  #institutions .ix-grid>.inst-card,#institutions .ix-grid[data-count]>.inst-card,#institutions .ix-grid[data-count="5"]>.inst-card:nth-child(-n+2){grid-column:span 1;}
  #institutions .ix-grid[data-count="1"]>.inst-card{grid-column:1/-1;}
}
@media(max-width:640px){
  #institutions{padding:80px 0;}
  #institutions .ix{width:calc(100% - 32px);}
  #institutions .inst-grid.ix-grid{grid-template-columns:1fr;}
  #institutions .ix-card{min-height:320px;}
  #institutions .ix-desc{-webkit-line-clamp:4;}
}
@media (prefers-reduced-motion:reduce){
  #hero .hero-slide,#hero .hero-slide.active{transform:none;transition:opacity .6s;}
  .hx-fact{animation:none;opacity:1;transform:none;}
  .hx-live>i,.hx-scroll i::after{animation:none;}
}
#nav .nav-menu-btn:focus-visible,#nav .nav-round-btn:focus-visible,#hero .hx-cta a:focus-visible,#hero .hx-cta button:focus-visible,.vx-join:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}

/* ── Masquer / afficher la barre de navigation ── */
:root{--nh-ease:cubic-bezier(.22,1,.36,1);--nh-spring:cubic-bezier(.34,1.56,.64,1);}
#nav{transform-origin:50% 0;transition:top .3s,background .3s,box-shadow .3s,border-color .3s,translate .7s var(--nh-ease),transform .7s var(--nh-ease),opacity .45s ease,filter .45s ease;}
#nav .nav-right{margin-left:auto;}
#nav>*{transition:opacity .35s ease,translate .5s var(--nh-ease),filter .35s ease;}
#nav>:nth-child(1){transition-delay:.18s;}
#nav>:nth-child(2){transition-delay:.12s;}
#nav>:nth-child(3){transition-delay:.06s;}
#nav>:nth-child(n+4){transition-delay:0s;}
body.nav-hidden #nav>*{opacity:0;translate:0 -12px;filter:blur(6px);}
body.nav-hidden #nav>:nth-child(1){transition-delay:0s;}
body.nav-hidden #nav>:nth-child(2){transition-delay:.05s;}
body.nav-hidden #nav>:nth-child(3){transition-delay:.1s;}
body.nav-hidden #nav>:nth-child(n+4){transition-delay:.14s;}
body.nav-hidden #nav{translate:0 calc(-100% - 36px);transform:translateX(-50%) scale(.92);opacity:0;pointer-events:none;
  transition-delay:0s,0s,0s,0s,.16s,.16s,.3s,0s;}
body:not(.nav-hidden) #nav{transition-delay:0s,0s,0s,0s,.12s,.12s,.12s,0s;}

.nav-hide-btn{flex:none;position:relative;width:38px;height:38px;margin-left:6px;padding:0;border:none;border-radius:12px;cursor:pointer;display:grid;place-items:center;
  color:rgba(203,213,225,.75);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:color .2s,background .2s,box-shadow .2s;}
.nav-hide-btn svg{width:18px;height:18px;transition:transform .45s var(--nh-spring);}
.nav-hide-btn:hover{color:#fff;background:rgba(37,99,235,.2);box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}
.nav-hide-btn:hover svg{transform:translateY(-3px);}
.nav-hide-btn:active svg{transform:translateY(-6px) scale(.9);}
.nav-hide-btn:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
#nav>.nav-hide-btn{transition:opacity .35s ease,translate .5s var(--nh-ease),filter .35s ease,color .2s,background .2s,box-shadow .2s;}
.nav-hide-btn:hover::after{opacity:1;translate:0 0;transition-delay:.4s;}
.nav-hide-btn::after{content:attr(data-tip);position:absolute;right:0;top:calc(100% + 10px);padding:6px 10px;border-radius:10px;white-space:nowrap;pointer-events:none;
  font-family:'Montserrat',system-ui,sans-serif;font-size:.64rem;font-weight:800;letter-spacing:.04em;color:#fff;background:rgba(8,14,30,.95);box-shadow:0 10px 24px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.1);
  opacity:0;translate:0 -4px;transition:opacity .2s,translate .25s var(--nh-ease);}

/* Petit onglet pour faire revenir la barre */
.nav-peek{position:fixed;z-index:1001;top:12px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:0;height:44px;padding:0 6px;border:none;border-radius:999px;cursor:pointer;
  font-family:'Montserrat',system-ui,sans-serif;color:#fff;background:rgba(12,18,36,.78);box-shadow:0 14px 34px -12px rgba(0,0,0,.8),inset 0 0 0 1px rgba(255,255,255,.12);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  translate:0 -80px;transform:translateX(-50%) scale(.6);transform-origin:50% 0;opacity:0;pointer-events:none;
  transition:translate .55s var(--nh-ease),transform .55s var(--nh-ease),opacity .25s ease,box-shadow .3s,background .3s;}
body.nav-hidden .nav-peek{translate:0 0;transform:translateX(-50%) scale(1);opacity:1;pointer-events:auto;transition:translate .75s var(--nh-spring) .38s,transform .75s var(--nh-spring) .38s,opacity .3s ease .38s,box-shadow .3s,background .3s;}
body.has-live .nav-peek{top:60px;}
.nav-peek img{width:30px;height:30px;object-fit:contain;flex:none;filter:drop-shadow(0 2px 6px rgba(37,99,235,.5));}
.nav-peek .lbl{max-width:0;overflow:hidden;white-space:nowrap;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:0;transition:max-width .45s var(--nh-ease),opacity .3s ease,margin .45s var(--nh-ease);}
.nav-peek .chev{flex:none;width:32px;height:32px;margin-left:4px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 6px 16px -4px rgba(37,99,235,.9);}
.nav-peek .chev svg{width:16px;height:16px;animation:nhBob 2.4s ease-in-out infinite;}
@keyframes nhBob{0%,60%,100%{transform:translateY(0);}30%{transform:translateY(3px);}}
.nav-peek::before{content:'';position:absolute;inset:-4px;border-radius:inherit;box-shadow:0 0 0 0 rgba(59,130,246,.55);pointer-events:none;}
body.nav-hidden .nav-peek::before{animation:nhPing 1.4s ease-out 1.1s 2;}
@keyframes nhPing{0%{box-shadow:0 0 0 0 rgba(59,130,246,.55);}100%{box-shadow:0 0 0 14px rgba(59,130,246,0);}}
.nav-peek:hover,.nav-peek:focus-visible{background:rgba(12,18,36,.92);box-shadow:0 18px 40px -12px rgba(37,99,235,.7),inset 0 0 0 1px rgba(96,165,250,.45);outline:none;}
.nav-peek:hover .lbl,.nav-peek:focus-visible .lbl{max-width:140px;opacity:1;margin:0 4px 0 10px;}
.nav-peek:hover .chev svg{animation:none;transform:translateY(2px);}

/* chargement : pas d'animation si la barre était déjà masquée */
body.nav-instant #nav,body.nav-instant #nav>*,body.nav-instant .nav-peek{transition:none!important;}

@media(max-width:1024px){
  #nav .nav-burger{margin-left:auto;}
}
@media(hover:none){.nav-hide-btn::after{display:none;}}
@media(prefers-reduced-motion:reduce){
  #nav,#nav>*,.nav-peek{transition:opacity .2s ease!important;translate:none!important;filter:none!important;}
  body.nav-hidden #nav,.nav-peek,body.nav-hidden .nav-peek{transform:translateX(-50%)!important;}
  .nav-peek .chev svg,body.nav-hidden .nav-peek::before{animation:none;}
}

/* ───── bloc pc-b6-redesign ───── */
/* ═══════════ Écran d'entrée, cookies, « Nous rejoindre » ═══════════ */

/* ── Écran d'entrée ── */
#splash{background:#05070c;font-family:'Montserrat',system-ui,sans-serif;}
#splash .sp-bg{position:absolute;inset:-40px;background:#0b1224 center/cover no-repeat;filter:blur(14px) saturate(1.15);transform:scale(1.08);opacity:.5;animation:spZoom 22s ease-in-out infinite alternate;}
@keyframes spZoom{from{transform:scale(1.08);}to{transform:scale(1.18) translate(-1%,-1%);}}
#splash .sp-shade{position:absolute;inset:0;background:radial-gradient(900px 520px at 50% 40%,rgba(37,99,235,.25),transparent 70%),linear-gradient(180deg,rgba(5,7,12,.55),rgba(5,7,12,.9) 75%,#05070c);}
#splash .sp-grid{position:absolute;inset:0;opacity:.35;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 50% 45%,#000 15%,transparent 65%);mask-image:radial-gradient(ellipse at 50% 45%,#000 15%,transparent 65%);}
#splash .splash-content{gap:0;padding:0 24px;}
#splash .sp-logo{position:relative;width:96px;height:96px;margin-bottom:26px;border-radius:30px;display:grid;place-items:center;
  background:linear-gradient(160deg,rgba(29,78,216,.55),rgba(14,22,44,.9));box-shadow:0 24px 60px -16px rgba(37,99,235,.9),inset 0 1px 0 rgba(255,255,255,.2),inset 0 0 0 1px rgba(96,165,250,.35);
  opacity:0;animation:fadeUp .8s .1s forwards,splashFloat 5s 1.2s ease-in-out infinite;}
#splash .sp-logo::before{content:'';position:absolute;inset:-12px;border-radius:38px;border:1px dashed rgba(96,165,250,.4);animation:spSpin 24s linear infinite;}
@keyframes spSpin{to{transform:rotate(360deg);}}
#splash .sp-logo img{width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 6px 16px rgba(37,99,235,.7));}
#splash .splash-title{margin:0;font-size:clamp(3rem,11vw,6rem);font-weight:900;letter-spacing:-.045em;line-height:.9;text-transform:none;padding-bottom:.06em;
  background:linear-gradient(180deg,#fff 45%,#bfdbfe);-webkit-background-clip:text;background-clip:text;color:transparent;animation:fadeUp .8s .25s forwards;}
#splash .splash-sub{margin-top:14px;gap:14px;font-size:clamp(.66rem,1.6vw,.8rem);font-weight:800;letter-spacing:.32em;color:#93c5fd;animation:fadeUp .8s .38s forwards;}
#splash .splash-line{width:40px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#3b82f6);}
#splash .splash-sub .splash-line:last-child{background:linear-gradient(90deg,#3b82f6,transparent);}
#splash .sp-pill{display:inline-flex;align-items:center;gap:9px;height:34px;margin-top:22px;padding:0 15px 0 13px;border-radius:999px;font-size:.72rem;font-weight:700;color:rgba(226,232,240,.9);background:rgba(8,14,30,.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;animation:fadeUp .8s .5s forwards;}
#splash .sp-pill i{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 0 rgba(52,211,153,.7);animation:hxPulse 2s infinite;}
#splash .splash-actions{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:30px;animation:fadeUp .8s .62s forwards;}
#splash .splash-enter{height:54px;padding:0 30px;border-radius:999px;gap:10px;font-size:.8rem;font-weight:800;letter-spacing:.08em;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 16px 36px -10px rgba(37,99,235,.95),inset 0 1px 0 rgba(255,255,255,.25);}
#splash .splash-enter:hover{transform:translateY(-2px);box-shadow:0 20px 44px -10px rgba(37,99,235,1),inset 0 1px 0 rgba(255,255,255,.25);}
#splash .splash-discord{height:54px;padding:0 24px;border-radius:999px;gap:10px;font-size:.74rem;font-weight:800;letter-spacing:.08em;color:#fff;background:rgba(88,101,242,.16);border:none;box-shadow:inset 0 0 0 1px rgba(88,101,242,.55);}
#splash .splash-discord:hover{background:#5865f2;box-shadow:0 14px 32px -10px rgba(88,101,242,.95);transform:translateY(-2px);}
#splash .splash-discord img{width:26px;height:26px;box-shadow:0 0 0 2px rgba(52,211,153,.6);}
#splash .splash-discord.is-logged{color:#d1fae5;background:rgba(16,185,129,.12);box-shadow:inset 0 0 0 1px rgba(52,211,153,.45);}
#splash .splash-discord.is-logged:hover{background:rgba(16,185,129,.24);box-shadow:inset 0 0 0 1px rgba(52,211,153,.7),0 14px 32px -12px rgba(16,185,129,.7);}
#splash .splash-enter:focus-visible,#splash .splash-discord:focus-visible{outline:2px solid #93c5fd;outline-offset:3px;}
#splash .splash-footer{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;bottom:24px;font-size:.64rem;font-weight:700;letter-spacing:.18em;color:rgba(148,163,184,.55);}
#splash .splash-footer kbd{font-family:inherit;font-size:.62rem;letter-spacing:.04em;padding:3px 7px;margin-right:6px;border-radius:7px;color:#fff;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),0 2px 0 rgba(0,0,0,.4);}
#splash .splash-footer .sp-hint{letter-spacing:.06em;text-transform:none;}
#splash.leaving .sp-bg,#splash.leaving .sp-grid{opacity:0;transition:opacity .5s ease;}
@media(max-width:480px){
  #splash .splash-sub{letter-spacing:.2em;}
  #splash .splash-line{width:20px;}
  #splash .splash-actions{flex-direction:column;width:100%;max-width:320px;}
  #splash .splash-enter,#splash .splash-discord{width:100%;justify-content:center;}
  #splash .splash-footer .sp-hint{display:none;}
}
@media(hover:none){#splash .splash-footer .sp-hint{display:none;}}

/* ── Bandeau des cookies ── */
#cookie-banner{left:16px;right:16px;bottom:16px;max-width:none;flex-direction:column;align-items:stretch;gap:16px;padding:20px;border-radius:24px;font-family:'Montserrat',system-ui,sans-serif;
  background:radial-gradient(420px 180px at 0% 0%,rgba(37,99,235,.2),transparent 70%),linear-gradient(180deg,rgba(14,22,44,.97),rgba(8,13,28,.98));
  border:1px solid rgba(255,255,255,.1);box-shadow:0 30px 70px -20px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.06);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);}
#cookie-banner::before{display:none;}
#cookie-banner .cookie-header{align-items:center;gap:16px;}
#cookie-banner .cookie-3d{width:64px;height:64px;flex:none;border-radius:20px;background:rgba(251,191,36,.1);box-shadow:inset 0 0 0 1px rgba(251,191,36,.28);}
#cookie-banner .cookie-disc{top:6px;width:46px;height:46px;margin-left:-23px;}
#cookie-banner .cookie-shadow{bottom:5px;}
#cookie-banner .ck-title{display:block;margin-bottom:4px;font-size:1rem;font-weight:900;letter-spacing:-.01em;color:#fff;}
#cookie-banner .cookie-text{margin:0;font-size:.82rem;font-weight:500;line-height:1.6;color:rgba(203,213,225,.8);}
#cookie-banner .cookie-text a{color:#93c5fd;font-weight:700;}
#cookie-banner .cookie-btns{width:100%;gap:8px;}
#cookie-banner .cookie-btns button{flex:1;height:44px;padding:0 18px;border-radius:999px;font-family:inherit;font-size:.72rem;font-weight:800;letter-spacing:.07em;}
#cookie-banner .cookie-accept{border:none;background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 10px 22px -8px rgba(37,99,235,.9);}
#cookie-banner .cookie-refuse{border:none;color:rgba(226,232,240,.88);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);}
#cookie-banner .cookie-refuse:hover{color:#fff;background:rgba(255,255,255,.1);}
#cookie-banner .cookie-btns button:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
@media(min-width:900px){
  #cookie-banner{left:24px;right:auto;bottom:24px;width:440px;max-width:440px;padding:22px;}
}

/* ───── bloc sans id ───── */
button.cta-primary{cursor:pointer;font-family:inherit;}

.join-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:20px;}
.join-modal.open{display:flex;}
.join-modal-backdrop{position:absolute;inset:0;background:rgba(3,6,12,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:joinBackIn .35s ease;}
@keyframes joinBackIn{from{opacity:0;}to{opacity:1;}}
.join-modal-card{position:relative;z-index:1;width:100%;max-width:560px;max-height:88vh;overflow:auto;background:linear-gradient(180deg,#11162a,#0b0f1d);border:1px solid rgba(255,255,255,.1);border-radius:24px;box-shadow:0 40px 100px -20px rgba(0,0,0,.85);animation:joinPop .42s cubic-bezier(.16,1,.3,1);}
@keyframes joinPop{from{opacity:0;transform:translateY(28px) scale(.95);}to{opacity:1;transform:none;}}
.join-modal.closing .join-modal-card{animation:joinPopOut .28s cubic-bezier(.4,0,1,1) forwards;}
.join-modal.closing .join-modal-backdrop{animation:joinBackOut .28s ease forwards;}
@keyframes joinPopOut{from{opacity:1;transform:none;}to{opacity:0;transform:translateY(18px) scale(.96);}}
@keyframes joinBackOut{from{opacity:1;}to{opacity:0;}}
.join-modal-x{position:absolute;top:16px;right:16px;z-index:3;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.45);color:#fff;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:transform .25s cubic-bezier(.16,1,.3,1),background .25s,border-color .25s,box-shadow .25s;}
.join-modal-x:hover{background:rgba(220,38,38,.35);border-color:rgba(248,113,113,.6);transform:rotate(90deg) scale(1.08);box-shadow:0 8px 22px rgba(220,38,38,.35);}
.join-modal-body{padding:44px 36px 36px;}
.join-modal-eyebrow{font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:#60a5fa;margin:0 0 10px;font-weight:700;}
.join-modal-title{font-family:'Montserrat';font-weight:800;font-size:1.7rem;color:#fff;margin:0 0 10px;}
.join-modal-sub{color:rgba(255,255,255,.55);font-size:.9rem;line-height:1.7;margin:0 0 26px;}

.join-wizard{position:relative;}
.join-wstep{display:none;}
.join-wstep.active{display:block;animation:joinStepIn .38s cubic-bezier(.16,1,.3,1);}
.join-wizard.back .join-wstep.active{animation:joinStepInBack .38s cubic-bezier(.16,1,.3,1);}
@keyframes joinStepIn{from{opacity:0;transform:translateX(22px);}to{opacity:1;transform:none;}}
@keyframes joinStepInBack{from{opacity:0;transform:translateX(-22px);}to{opacity:1;transform:none;}}

.join-step-card{display:flex;gap:18px;align-items:flex-start;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:20px;transition:border-color .3s,background .3s,transform .3s,box-shadow .3s;}
.join-step-card:hover{border-color:rgba(37,99,235,.45);background:rgba(37,99,235,.07);transform:translateY(-3px);box-shadow:0 18px 40px -18px rgba(37,99,235,.65);}
.join-step-num{flex:none;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#1d4ed8,#2563eb);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.95rem;color:#fff;box-shadow:0 6px 16px rgba(37,99,235,.45);transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s;}
.join-step-card:hover .join-step-num{transform:scale(1.1) rotate(-6deg);box-shadow:0 10px 26px rgba(37,99,235,.65);}
.join-step-txt{flex:1;padding-top:3px;}
.join-step-txt strong{display:block;color:#fff;font-size:1rem;font-weight:700;margin-bottom:4px;}
.join-step-txt span{color:rgba(255,255,255,.55);font-size:.85rem;line-height:1.65;}
.join-step-link{color:#60a5fa;text-decoration:none;font-weight:700;transition:color .2s;}
.join-step-link:hover{color:#93c5fd;text-decoration:underline;}

.join-progress{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:22px 0 20px;}
.join-dots{display:flex;gap:7px;}
.join-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.16);transition:all .35s cubic-bezier(.16,1,.3,1);}
.join-dot.done{background:rgba(37,99,235,.55);}
.join-dot.current{width:26px;border-radius:99px;background:linear-gradient(90deg,#1d4ed8,#60a5fa);box-shadow:0 0 14px rgba(37,99,235,.7);}
.join-count{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.4);font-weight:700;}

.join-nav{display:flex;gap:12px;}
.join-btn{flex:1;padding:13px 20px;border-radius:11px;font-family:inherit;font-weight:700;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#fff;transition:all .25s cubic-bezier(.16,1,.3,1);text-align:center;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:8px;}
.join-btn:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3);transform:translateY(-2px);}
.join-btn:disabled{opacity:.35;cursor:not-allowed;transform:none;}
.join-btn-primary{background:linear-gradient(135deg,#1d4ed8,#2563eb);border-color:transparent;box-shadow:0 10px 26px -8px rgba(37,99,235,.8);}
.join-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#3b82f6);transform:translateY(-2px) scale(1.02);box-shadow:0 16px 34px -10px rgba(37,99,235,.9);}
.join-btn-ghost{flex:0 0 auto;min-width:120px;}

.join-modal-actions{display:flex;flex-direction:column;gap:12px;margin-top:18px;}
.join-modal-session-btn{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);color:#fff;padding:14px 22px;border-radius:11px;font-family:inherit;font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;gap:8px;}
.join-modal-session-btn:hover{background:rgba(37,99,235,.18);border-color:rgba(37,99,235,.5);transform:translateY(-2px);box-shadow:0 14px 30px -14px rgba(37,99,235,.8);}

.join-back-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:rgba(255,255,255,.55);font-family:inherit;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;margin-bottom:22px;padding:0;transition:color .2s,transform .2s;}
.join-back-btn:hover{color:#fff;transform:translateX(-3px);}

.join-view{display:none;}
.join-view.active{display:block;animation:joinFade .35s ease;}
@keyframes joinFade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}

.join-question-actions{display:flex;gap:10px;margin-top:14px;}
.join-question-actions button{flex:1;padding:11px;border-radius:9px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);color:#fff;font-family:inherit;font-weight:700;font-size:.82rem;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);}
.join-question-actions button:hover{background:rgba(37,99,235,.25);border-color:#2563eb;transform:translateY(-2px);}
.join-question-actions button.active{background:linear-gradient(135deg,#1d4ed8,#2563eb);border-color:#2563eb;box-shadow:0 10px 24px -10px rgba(37,99,235,.9);}
.join-question-answer{margin-top:14px;padding:12px 16px;border-radius:10px;font-size:.82rem;line-height:1.6;display:none;}
.join-question-answer.show{display:block;animation:joinFade .3s ease;}
.join-question-answer.oui{background:rgba(37,99,235,.12);border:1px solid rgba(37,99,235,.3);color:#93c5fd;}
.join-question-answer.non{background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.3);color:#6ee7b7;}

@media(max-width:560px){.join-modal-body{padding:36px 22px 28px;}.join-modal-title{font-size:1.4rem;}.join-nav{flex-direction:column-reverse;}.join-btn-ghost{width:100%;}}

/* ───── bloc pc-join-redesign ───── */
/* ── Fenêtre « Nous rejoindre » : même habillage que le panel Tickets ── */
#join-modal{font-family:'Montserrat',system-ui,sans-serif;}
#join-modal .join-modal-backdrop{background:rgba(3,6,16,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
#join-modal .join-modal-card{max-width:600px;border-radius:26px;overflow:hidden;display:flex;flex-direction:column;
  background:radial-gradient(600px 220px at 0% 0%,rgba(37,99,235,.2),transparent 70%),linear-gradient(180deg,rgba(14,22,44,.97),rgba(8,13,28,.98));
  border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 100px -20px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.06);}
#join-modal .join-modal-x{top:22px;right:22px;width:36px;height:36px;border:none;border-radius:50%;display:grid;place-items:center;color:rgba(226,232,240,.7);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:color .2s,background .2s,transform .25s cubic-bezier(.16,1,.3,1);}
#join-modal .join-modal-x svg{width:14px;height:14px;}
#join-modal .join-modal-x:hover{color:#fff;background:rgba(255,255,255,.12);transform:rotate(90deg);}
.jm-head{display:flex;align-items:center;gap:14px;padding:22px 72px 16px 24px;}
.jm-ic{flex:none;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 10px 24px -6px rgba(37,99,235,.7),inset 0 1px 0 rgba(255,255,255,.2);}
.jm-ic svg{width:22px;height:22px;}
#join-modal .jm-title{margin:0;font-family:inherit;font-size:1.2rem;font-weight:900;letter-spacing:-.01em;color:#fff;}
.jm-sub{margin-top:3px;font-size:.76rem;font-weight:600;color:rgba(148,163,184,.85);}
.jm-tabs{display:flex;gap:4px;margin:0 24px 14px;padding:4px;border-radius:14px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);}
.jm-tabs button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 10px;border:none;border-radius:10px;background:none;cursor:pointer;font-family:inherit;font-size:.74rem;font-weight:800;letter-spacing:0;text-transform:none;color:rgba(148,163,184,.9);transition:background .2s,color .2s,box-shadow .2s;transform:none!important;}
.jm-tabs button svg{width:15px;height:15px;}
.jm-tabs button:hover{color:#fff;}
.jm-tabs button.on{color:#fff;background:rgba(37,99,235,.28);box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}
.jm-tabs button:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
#join-modal .join-modal-body{flex:1;min-height:0;overflow-y:auto;padding:18px 24px 24px;border-top:1px solid rgba(255,255,255,.06);scrollbar-width:thin;scrollbar-color:rgba(96,165,250,.35) transparent;}
#join-modal .join-modal-sub{margin:0 0 16px;font-size:.84rem;font-weight:500;line-height:1.6;color:rgba(203,213,225,.75);}
/* Étapes numérotées reliées */
#join-modal .join-progress{order:-1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;}
#join-modal .join-dots{counter-reset:js;display:flex;align-items:center;gap:0;flex:1;}
#join-modal .join-dot{counter-increment:js;position:relative;flex:1;height:auto;width:auto;border-radius:0;background:none;box-shadow:none;display:flex;align-items:center;}
#join-modal .join-dot::before{content:counter(js);flex:none;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;font-size:.72rem;font-weight:900;color:rgba(148,163,184,.8);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:all .4s cubic-bezier(.16,1,.3,1);}
#join-modal .join-dot::after{content:'';flex:1;height:2px;margin:0 6px;border-radius:2px;background:rgba(255,255,255,.1);transition:background .4s;}
#join-modal .join-dot:last-child{flex:none;}
#join-modal .join-dot:last-child::after{display:none;}
#join-modal .join-dot.done::before{color:#fff;background:#10b981;box-shadow:none;}
#join-modal .join-dot.done::after{background:rgba(16,185,129,.55);}
#join-modal .join-dot.current::before{color:#fff;background:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.25),0 8px 18px -6px rgba(37,99,235,.9);transform:scale(1.08);}
#join-modal .join-count{flex:none;font-size:.62rem;font-weight:800;letter-spacing:.12em;color:rgba(148,163,184,.8);}
#join-modal .join-wizard{display:flex;flex-direction:column;}
#join-modal .join-step-card{flex-direction:column;align-items:flex-start;gap:14px;padding:22px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);transform:none;box-shadow:none;}
#join-modal .join-step-card:hover{transform:none;background:rgba(37,99,235,.06);border-color:rgba(96,165,250,.3);box-shadow:none;}
#join-modal .join-step-num{width:48px;height:48px;border-radius:15px;font-size:1.05rem;font-weight:900;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 12px 24px -8px rgba(37,99,235,.9);transform:none!important;}
#join-modal .join-step-txt{padding:0;}
#join-modal .join-step-txt strong{margin-bottom:6px;font-size:1.1rem;font-weight:900;letter-spacing:-.01em;}
#join-modal .join-step-txt span{font-size:.88rem;font-weight:500;color:rgba(203,213,225,.8);}
#join-modal .join-step-link{color:#93c5fd;}
#join-modal .join-nav{gap:8px;margin-top:16px;}
#join-modal .join-btn,#join-modal .join-modal-actions .join-btn{height:46px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.07em;color:#fff;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);text-decoration:none;}
#join-modal .join-btn:hover:not(:disabled){transform:translateY(-1px);background:rgba(255,255,255,.11);}
#join-modal .join-btn-primary{background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 10px 22px -8px rgba(37,99,235,.9);}
#join-modal .join-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#3b82f6);transform:translateY(-1px);}
#join-modal .join-btn-ghost{min-width:110px;}
#join-modal .join-modal-actions{margin-top:14px;}
#join-modal .join-modal-actions .join-btn{flex:none;width:100%;}
#join-modal .join-modal-actions .jm-discord{background:#5865f2;box-shadow:0 12px 26px -10px rgba(88,101,242,.95);}
#join-modal .join-modal-actions .jm-discord:hover{background:#4752e0;}
#join-modal .join-modal-actions .jm-discord svg{width:19px;height:19px;}
#join-modal .join-question-actions button{height:42px;border:none;border-radius:999px;font-size:.76rem;font-weight:800;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);transform:none;}
#join-modal .join-question-actions button:hover{background:rgba(37,99,235,.2);box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}
#join-modal .join-question-actions button.active{background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 10px 22px -8px rgba(37,99,235,.9);}
#join-modal .join-question-answer{border:none;border-radius:14px;font-weight:600;}
#join-modal .join-question-answer.oui{box-shadow:inset 0 0 0 1px rgba(96,165,250,.35);}
#join-modal .join-question-answer.non{box-shadow:inset 0 0 0 1px rgba(52,211,153,.35);}
#join-modal .join-btn:focus-visible,#join-modal .join-modal-x:focus-visible,#join-modal .join-question-actions button:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
@media(max-width:560px){
  #join-modal{padding:0;align-items:flex-end;}
  #join-modal .join-modal-card{max-height:92vh;border-radius:24px 24px 0 0;}
  .jm-head{padding:18px 64px 14px 16px;}
  .jm-tabs{margin:0 16px 12px;}
  .jm-tabs button{font-size:.68rem;}
  #join-modal .join-modal-body{padding:16px;}
  #join-modal .join-dot::before{width:26px;height:26px;border-radius:9px;}
  #join-modal .join-nav{flex-direction:row;}
  #join-modal .join-nav .join-btn-ghost{width:auto;min-width:0;flex:0 0 auto;padding:0 16px;}
  #join-modal .join-nav .join-btn-primary{flex:1;}
}

/* ───── bloc pc-mid-redesign ───── */
/* ═══════════ Lot 2 : Partenaires, Effectifs, Carte, Règles ═══════════ */
.tx-wrap{position:relative;z-index:2;width:min(1280px,calc(100% - 48px));margin:0 auto;}
.tx-sec{padding:110px 0;font-family:'Montserrat',system-ui,sans-serif;scroll-margin-top:70px;}
.tx-btn{--c:37,99,235;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:transform .2s,box-shadow .2s,background .2s,color .2s;}
.tx-btn svg{width:16px;height:16px;flex:none;}
.tx-btn.primary{color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 12px 26px -10px rgba(37,99,235,.9);}
.tx-btn.primary:hover{transform:translateY(-2px);box-shadow:0 16px 32px -10px rgba(37,99,235,1);}
.tx-btn.ghost{color:#fff;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);}
.tx-btn.ghost:hover{background:rgba(255,255,255,.11);transform:translateY(-2px);}
.tx-btn:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.tx-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:52px 24px;border-radius:24px;border:1px dashed rgba(255,255,255,.14);background:rgba(255,255,255,.02);text-align:center;font-size:.88rem;font-weight:600;color:rgba(148,163,184,.9);}
.tx-empty .ic{width:60px;height:60px;border-radius:19px;display:grid;place-items:center;color:#60a5fa;background:rgba(37,99,235,.12);box-shadow:inset 0 0 0 1px rgba(96,165,250,.28);margin-bottom:4px;}
.tx-empty .ic svg{width:26px;height:26px;}
.tx-empty b{color:#fff;font-size:1.02rem;font-weight:800;}
.tx-empty[hidden]{display:none;}
.tx-empty .tx-btn{margin-top:8px;}

/* ── Partenaires ── */
#partenaires.tx-sec{padding:110px 0!important;background:linear-gradient(180deg,#0b1224,#070b17)!important;}
.px-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px;}
.px-card{position:relative;display:flex;flex-direction:column;border-radius:24px;overflow:hidden;text-decoration:none;color:inherit;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);transition:transform .45s var(--tx-ease),border-color .3s,box-shadow .3s;}
.px-card:hover,.px-card:focus-visible{transform:translateY(-4px);border-color:rgba(96,165,250,.45);box-shadow:0 30px 60px -30px rgba(37,99,235,.8);outline:none;}
.px-banner{position:relative;aspect-ratio:16/6.5;background:linear-gradient(135deg,#16254a,#0b1224);background-size:cover;background-position:center;}
.px-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,11,23,0) 30%,rgba(7,11,23,.9));}
.px-members{position:absolute;z-index:2;top:14px;right:14px;display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:999px;font-size:.7rem;font-weight:800;color:#fff;background:rgba(8,14,30,.65);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.px-members svg{width:13px;height:13px;color:#93c5fd;}
.px-body{position:relative;flex:1;display:flex;flex-direction:column;padding:0 22px 22px;}
.px-id{display:flex;align-items:flex-end;gap:14px;margin-top:-30px;margin-bottom:12px;position:relative;z-index:2;}
.px-logo{flex:none;width:64px;height:64px;border-radius:18px;overflow:hidden;display:grid;place-items:center;font-size:1.4rem;font-weight:900;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 0 0 3px #0b1224,0 14px 28px -10px rgba(0,0,0,.8);}
.px-logo img{width:100%;height:100%;object-fit:cover;}
.px-id>div{min-width:0;padding-bottom:2px;}
.px-name{margin:0;font-size:1.12rem;font-weight:900;letter-spacing:-.01em;color:#fff;line-height:1.2;}
.px-tag{display:inline-flex;align-items:center;height:22px;margin-top:6px;padding:0 9px;border-radius:999px;font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#93c5fd;background:rgba(37,99,235,.15);}
.px-desc{flex:1;margin:0 0 16px;font-size:.84rem;font-weight:500;line-height:1.65;color:rgba(203,213,225,.78);}
.px-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 15px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#93c5fd;background:rgba(37,99,235,.12);box-shadow:inset 0 0 0 1px rgba(96,165,250,.3);transition:background .3s,color .3s;}
.px-cta svg{width:14px;height:14px;transition:transform .3s var(--tx-ease);}
.px-card:hover .px-cta{color:#fff;background:#2563eb;}
.px-card:hover .px-cta svg{transform:translateX(3px);}

/* ── Effectifs ── */
#effectifs.tx-sec{padding:110px 0!important;background:#070b17!important;}
.sx-tabs{display:flex;gap:4px;padding:4px;width:max-content;max-width:100%;overflow-x:auto;scrollbar-width:none;border-radius:16px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);margin-bottom:26px;}
.sx-tabs::-webkit-scrollbar{display:none;}
.sx-tab{--c:96,165,250;flex:none;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:none;border-radius:12px;background:none;cursor:pointer;font-family:inherit;font-size:.76rem;font-weight:800;color:rgba(148,163,184,.9);transition:background .2s,color .2s,box-shadow .2s;}
.sx-tab i{font-style:normal;min-width:22px;height:20px;padding:0 6px;border-radius:999px;display:inline-grid;place-items:center;font-size:.64rem;color:rgb(var(--c));background:rgba(var(--c),.14);}
.sx-tab:hover{color:#fff;}
.sx-tab.on{color:#fff;background:rgba(var(--c),.2);box-shadow:inset 0 0 0 1px rgba(var(--c),.45);}
.sx-tab:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.sx-group{--grp-rgb:96,165,250;margin-bottom:34px;}
.sx-group[hidden]{display:none;}
.sx-group-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.sx-group-head .ic{flex:none;width:40px;height:40px;border-radius:13px;display:grid;place-items:center;color:rgb(var(--grp-rgb));background:rgba(var(--grp-rgb),.14);box-shadow:inset 0 0 0 1px rgba(var(--grp-rgb),.3);}
.sx-group-head .ic svg{width:19px;height:19px;}
.sx-group-head h3{margin:0;font-size:1.15rem;font-weight:900;letter-spacing:-.01em;color:#fff;}
.sx-group-head span{font-size:.74rem;font-weight:600;color:rgba(148,163,184,.85);}
.sx-group-head .line{flex:1;height:1px;background:linear-gradient(90deg,rgba(var(--grp-rgb),.4),transparent);}
.sx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;}
.sx-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:22px 14px 18px;border-radius:22px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);text-decoration:none;color:inherit;transition:transform .4s var(--tx-ease),border-color .3s,box-shadow .3s,background .3s;}
.sx-card::before{content:'';position:absolute;inset:0 0 auto;height:70px;border-radius:22px 22px 0 0;background:radial-gradient(120px 70px at 50% 0%,rgba(var(--grp-rgb),.22),transparent 75%);pointer-events:none;}
.sx-card:hover{transform:translateY(-4px);border-color:rgba(var(--grp-rgb),.45);box-shadow:0 24px 44px -26px rgba(var(--grp-rgb),.8);}
.sx-av{position:relative;width:72px;height:72px;margin-bottom:6px;}
.sx-av img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#0a0e1a;box-shadow:0 0 0 3px rgba(var(--grp-rgb),.55),0 12px 24px -10px rgba(var(--grp-rgb),.8);}
.sx-name{max-width:100%;font-size:.92rem;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sx-note{max-width:100%;font-size:.72rem;font-weight:600;color:rgba(148,163,184,.85);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sx-role{display:inline-flex;align-items:center;gap:6px;height:22px;margin-top:4px;padding:0 9px;border-radius:999px;font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--grp-rgb));background:rgba(var(--grp-rgb),.13);}
.sx-role i{width:5px;height:5px;border-radius:50%;background:currentColor;}
.sx-card.donate{--grp-rgb:16,185,129;border-style:dashed;border-color:rgba(16,185,129,.4);background:rgba(16,185,129,.05);}
.sx-card.donate .sx-av{display:grid;place-items:center;border-radius:50%;color:#34d399;background:rgba(16,185,129,.14);box-shadow:inset 0 0 0 2px rgba(16,185,129,.5);}
.sx-card.donate .sx-av svg{width:28px;height:28px;}
.sx-card.donate .sx-role{color:#04140d;background:#10b981;}
.sx-card.donate:hover .sx-role{background:#34d399;}

/* ── Carte ── */
#carte.tx-sec{padding:110px 0!important;background:linear-gradient(180deg,#070b17,#0b1224)!important;}
.mx-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start;}
#carte .map-canvas{border-radius:24px;border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 70px -30px rgba(0,0,0,.9);}
#carte .map-pin-dot{width:24px;height:24px;border:2px solid #fff;box-shadow:0 0 0 5px rgba(var(--pin-rgb,37,99,235),.3),0 8px 16px rgba(0,0,0,.55);transition:transform .3s var(--tx-ease),box-shadow .3s;}
#carte .map-pin.hl{z-index:6;}
#carte .map-pin.hl .map-pin-dot{transform:rotate(-45deg) scale(1.25);box-shadow:0 0 0 9px rgba(var(--pin-rgb,37,99,235),.35),0 8px 16px rgba(0,0,0,.55);}
#carte .map-pin.hl .map-pin-label,#carte .map-pin:focus-visible .map-pin-label{opacity:1;transform:translateY(0);}
#carte .map-pin-label{font-family:'Montserrat',system-ui,sans-serif;font-size:.7rem;font-weight:800;padding:4px 10px;border:none;box-shadow:inset 0 0 0 1px rgba(var(--pin-rgb,37,99,235),.55);}
#carte .map-pin:focus-visible{outline:none;}
#carte .map-pin:focus-visible .map-pin-dot{box-shadow:0 0 0 4px #fff,0 0 0 8px rgba(var(--pin-rgb),.6);}
.mx-side{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:24px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);max-height:640px;}
.mx-side-h{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 8px;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.8);}
.mx-side-h b{color:#fff;font-size:.72rem;letter-spacing:0;}
.mx-list{display:flex;flex-direction:column;gap:4px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(96,165,250,.3) transparent;}
.mx-item{--c:37,99,235;display:flex;align-items:center;gap:11px;width:100%;padding:9px;border:none;border-radius:14px;background:none;cursor:pointer;text-align:left;font-family:inherit;color:rgba(226,232,240,.88);transition:background .2s;}
.mx-item:hover,.mx-item.hl,.mx-item:focus-visible{background:rgba(var(--c),.12);outline:none;}
.mx-item .ic{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.3);}
.mx-item .ic svg{width:17px;height:17px;}
.mx-item .tx{min-width:0;flex:1;}
.mx-item b{display:block;font-size:.84rem;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mx-item .tx>span{display:block;margin-top:2px;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--c));}
.mx-item .go{flex:none;width:16px;height:16px;color:rgba(148,163,184,.5);transition:transform .25s var(--tx-ease),color .2s;}
.mx-item:hover .go{transform:translateX(3px);color:#fff;}
#map-modal .map-modal-backdrop{background:rgba(3,6,16,.72);}
#map-modal .map-modal-card{max-width:500px;border-radius:24px;font-family:'Montserrat',system-ui,sans-serif;background:radial-gradient(500px 200px at 0% 0%,rgba(37,99,235,.18),transparent 70%),linear-gradient(180deg,rgba(14,22,44,.98),rgba(8,13,28,.99));box-shadow:0 40px 100px -20px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.06);}
#map-modal .map-modal-x{width:36px;height:36px;border:none;background:rgba(8,14,30,.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .25s var(--tx-ease),background .2s;}
#map-modal .map-modal-x:hover{transform:rotate(90deg);background:rgba(255,255,255,.14);}
#map-modal .map-modal-img{height:220px;}
#map-modal .map-modal-body{padding:24px;}
#map-modal .map-modal-cat{height:24px;padding:0 10px;align-items:center;font-size:.6rem;font-weight:800;letter-spacing:.1em;border:none!important;background:rgba(255,255,255,.08);}
#map-modal .map-modal-cat.has{display:inline-flex;}
#map-modal .map-modal-title{margin:12px 0 10px;font-size:1.4rem;font-weight:900;letter-spacing:-.01em;}
#map-modal .map-modal-desc{font-size:.9rem;font-weight:500;color:rgba(203,213,225,.8);}

/* ── Règles (accueil) ── */
#rules.tx-sec{padding:110px 0!important;}
#rules .tx-wrap{z-index:2;}
.rx-actions{display:flex;gap:10px;flex-wrap:wrap;}
#rules .rules-grid.rx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:none;margin:0;}
#rules .rx-grid .rule-card{--c:96,165,250;position:relative;display:flex;flex-direction:column;gap:0;padding:22px;border-radius:22px;overflow:hidden;background:rgba(8,14,30,.6);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-decoration:none;color:inherit;transition:transform .4s var(--tx-ease),border-color .3s,box-shadow .3s;}
#rules .rx-grid .rule-card::after{content:'';position:absolute;left:-1px;top:22px;bottom:22px;width:3px;height:auto;border-radius:0 3px 3px 0;background:rgb(var(--c));box-shadow:0 0 12px rgba(var(--c),.8);opacity:0;transform:scaleY(.4);transition:opacity .3s,transform .4s var(--tx-ease);}
#rules .rx-grid .rule-card:hover{transform:translateY(-4px);border-color:rgba(var(--c),.4);box-shadow:0 24px 50px -28px rgba(var(--c),.8);background:rgba(8,14,30,.72);}
#rules .rx-grid .rule-card:hover::after{opacity:1;transform:none;}
.rx-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}
.rx-num{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:1rem;font-weight:900;font-variant-numeric:tabular-nums;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.32);transition:background .3s,color .3s;}
#rules .rule-card:hover .rx-num{color:#fff;background:rgba(var(--c),.85);}
.rx-lbl{font-size:.58rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.7);}
#rules .rx-grid .rule-title{margin:0 0 8px;font-size:1.05rem;font-weight:900;letter-spacing:-.01em;color:#fff;}
#rules .rx-grid .rule-desc{font-size:.84rem;font-weight:500;line-height:1.65;color:rgba(203,213,225,.78);}
#rules .rx-grid .rule-num,#rules .rx-grid .rule-icon-wrap{display:none;}
#rules .rx-grid .rule-card.rule-more{justify-content:center;align-items:center;text-align:center;border-style:dashed;border-color:rgba(96,165,250,.35);background:rgba(37,99,235,.06);}
#rules .rx-grid .rule-more .rx-num{width:auto;padding:0 14px;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 10px 22px -8px rgba(37,99,235,.9);}
#rules .rx-grid .rule-more .rx-top{justify-content:center;}

@media(max-width:1000px){
  .mx-layout{grid-template-columns:minmax(0,1fr);}
  .mx-side{min-width:0;}
  .mx-side{max-height:none;}
  .mx-list{flex-direction:row;overflow-x:auto;padding-bottom:4px;}
  .mx-item{flex:none;width:auto;padding:8px 14px 8px 8px;}
  .mx-item .go{display:none;}
  .mx-item .tx{flex:none;max-width:200px;}
  #rules .rules-grid.rx-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .tx-sec,#partenaires.tx-sec,#effectifs.tx-sec,#carte.tx-sec,#rules.tx-sec{padding:80px 0!important;}
  .tx-wrap{width:calc(100% - 32px);}
  .px-grid{grid-template-columns:1fr;}
  .sx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .sx-av{width:60px;height:60px;}
  #rules .rules-grid.rx-grid{grid-template-columns:1fr;}
  .rx-actions{width:100%;}
  .rx-actions .tx-btn{flex:1;}
}

/* ───── bloc sans id ───── */
#effectifs{position:relative;padding:120px 24px;background:radial-gradient(circle at 50% 0%, rgba(37,99,235,.07), transparent 60%);}
.staff-header{text-align:center;max-width:680px;margin:0 auto 56px;}
.staff-header p{color:rgba(255,255,255,.5);margin-top:16px;line-height:1.8;font-size:.95rem;}
.staff-wrap{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:56px;}
.staff-group{position:relative;}
.staff-group-head{display:flex;align-items:center;gap:14px;margin-bottom:26px;}
.staff-group-head h3{font-size:1.05rem;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin:0;white-space:nowrap;}
.staff-group-line{flex:1;height:1px;background:linear-gradient(90deg,rgba(var(--grp-rgb),.55),transparent);}
.staff-group-dot{width:10px;height:10px;border-radius:50%;background:var(--grp);box-shadow:0 0 0 4px rgba(var(--grp-rgb),.18);}
.staff-role{margin-bottom:28px;}
.staff-role-title{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin:0 0 14px;display:flex;align-items:center;gap:8px;}
.staff-role-title b{color:var(--grp);font-weight:700;}
.staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;}
.staff-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:linear-gradient(160deg,rgba(255,255,255,.045),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.08);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;min-width:0;}
.staff-card:hover{transform:translateY(-4px);border-color:rgba(var(--grp-rgb),.5);box-shadow:0 18px 40px -20px rgba(var(--grp-rgb),.7);}
.staff-av{position:relative;flex-shrink:0;}
.staff-av img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(var(--grp-rgb),.65);background:#0a0e1a;display:block;}
.staff-av .staff-ring{position:absolute;inset:-4px;border-radius:50%;border:1px solid rgba(var(--grp-rgb),.25);}
.staff-meta{min-width:0;display:flex;flex-direction:column;gap:3px;}
.staff-name{color:#fff;font-weight:700;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.staff-tagline{color:rgba(255,255,255,.45);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.staff-badge{align-self:flex-start;margin-top:2px;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:999px;color:var(--grp);background:rgba(var(--grp-rgb),.12);border:1px solid rgba(var(--grp-rgb),.3);}
.staff-empty{text-align:center;color:rgba(255,255,255,.45);padding:60px 20px;border:1px dashed rgba(255,255,255,.12);border-radius:18px;max-width:560px;margin:0 auto;}
.staff-card-donate{cursor:pointer;text-decoration:none;background:linear-gradient(160deg,rgba(16,185,129,.18),rgba(16,185,129,.05));border:1px solid rgba(16,185,129,.45);}
.staff-card-donate:hover{transform:translateY(-4px);border-color:rgba(16,185,129,.8);box-shadow:0 18px 40px -20px rgba(16,185,129,.75);}
.staff-donate-icon{flex-shrink:0;width:52px;height:52px;border-radius:50%;background:rgba(16,185,129,.16);border:2px solid rgba(16,185,129,.65);display:flex;align-items:center;justify-content:center;color:#34d399;}
.staff-donate-icon svg{width:24px;height:24px;}
.staff-card-donate .staff-name{color:#fff;}
.staff-donate-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:5px;padding:4px 12px;border-radius:999px;background:#10b981;color:#04140d;font-weight:800;font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;width:fit-content;transition:background .2s,transform .2s;}
.staff-card-donate:hover .staff-donate-btn{background:#34d399;}
@media(max-width:640px){#effectifs{padding:72px 20px;}.staff-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;}.staff-av img{width:44px;height:44px;}}

/* ───── bloc sans id ───── */
#carte{position:relative;background:radial-gradient(circle at 50% 0%, rgba(37,99,235,.07), transparent 60%);}
.map-header{text-align:center;max-width:640px;margin:0 auto 48px;}
.map-header p{color:rgba(255,255,255,.5);margin-top:16px;line-height:1.8;font-size:.95rem;}
.map-empty{text-align:center;color:rgba(255,255,255,.45);padding:60px 20px;border:1px dashed rgba(255,255,255,.12);border-radius:18px;max-width:560px;margin:0 auto;}
.map-stage{max-width:1200px;margin:0 auto;}
.map-canvas{position:relative;width:100%;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 80px -30px rgba(0,0,0,.8);background:#0a0e1a;line-height:0;}
.map-img{width:100%;height:auto;display:block;-webkit-user-select:none;user-select:none;}
.map-pin{position:absolute;transform:translate(-50%,-100%);background:none;border:none;padding:0;cursor:pointer;z-index:3;display:flex;flex-direction:column;align-items:center;gap:6px;transition:transform .2s ease;}
.map-pin:hover{transform:translate(-50%,-100%) scale(1.08);z-index:5;}
.map-pin-dot{width:22px;height:22px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--pin,#2563eb);border:2px solid #fff;box-shadow:0 0 0 4px rgba(var(--pin-rgb,37,99,235),.28), 0 6px 14px rgba(0,0,0,.5);position:relative;}
.map-pin-dot::after{content:'';position:absolute;inset:6px;background:#fff;border-radius:50%;transform:rotate(45deg);}
.map-pin-label{font-size:.72rem;font-weight:700;color:#fff;background:rgba(8,12,22,.82);padding:3px 9px;border-radius:999px;white-space:nowrap;border:1px solid rgba(var(--pin-rgb,37,99,235),.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transform:translateY(-4px);transition:all .2s ease;pointer-events:none;}
.map-pin:hover .map-pin-label{opacity:1;transform:translateY(0);}
@media(max-width:768px){.map-pin-label{opacity:1;transform:none;font-size:.62rem;padding:2px 7px;}.map-pin-dot{width:18px;height:18px;}}
.map-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:20px;}
.map-modal.open{display:flex;}
.map-modal-backdrop{position:absolute;inset:0;background:rgba(3,6,12,.78);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.map-modal-card{position:relative;z-index:1;width:100%;max-width:480px;max-height:90vh;overflow:auto;background:linear-gradient(180deg,#11162a,#0b0f1d);border:1px solid rgba(255,255,255,.1);border-radius:22px;box-shadow:0 40px 100px -20px rgba(0,0,0,.85);animation:mapPop .25s ease;}
@keyframes mapPop{from{opacity:0;transform:translateY(16px) scale(.97);}to{opacity:1;transform:none;}}
.map-modal-x{position:absolute;top:14px;right:14px;z-index:2;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.45);color:#fff;cursor:pointer;font-size:.9rem;}
.map-modal-x:hover{background:rgba(0,0,0,.75);}
.map-modal-img{width:100%;height:200px;background-size:cover;background-position:center;background-color:#0a0e1a;display:none;}
.map-modal-img.has{display:block;}
.map-modal-body{padding:28px;}
.map-modal-cat{display:none;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:999px;color:#60a5fa;background:rgba(37,99,235,.15);border:1px solid rgba(37,99,235,.35);}
.map-modal-cat.has{display:inline-block;}
.map-modal-title{font-size:1.5rem;font-weight:800;color:#fff;margin:14px 0 12px;}
.map-modal-desc{color:rgba(255,255,255,.62);line-height:1.8;font-size:.92rem;white-space:pre-line;}

/* ───── bloc pc-b3-redesign ───── */
/* ═══════════ Lot 3 : Sondages, Giveaway, Média, Galerie ═══════════ */
#polls.tx-sec,#giveaway.tx-sec,#media.tx-sec,#gallery.tx-sec{position:relative;overflow:hidden;padding:110px 0!important;}
#polls.tx-sec{background:#070b17;}
#giveaway.tx-sec{background:linear-gradient(180deg,#070b17,#0b1224)!important;}
#media.tx-sec{background:#0b1224!important;}
#gallery.tx-sec{background:linear-gradient(180deg,#0b1224,#070b17)!important;}

/* ── Sondages ── */
.qx-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));}
.qx-grid[data-count="1"]{grid-template-columns:minmax(0,760px);}
.qx-grid[data-count="2"],.qx-grid[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr));}
.qx-grid[data-count="0"]{grid-template-columns:1fr;}
.qx-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:24px;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
.qx-img{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:16px;background:#0e1422;}
.qx-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.qx-pill{--c:96,165,250;display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--c));background:rgba(var(--c),.13);}
.qx-pill svg{width:12px;height:12px;}
.qx-pill.push{margin-left:auto;}
.qx-card h3{margin:0;font-size:1.2rem;font-weight:900;letter-spacing:-.01em;line-height:1.3;color:#fff;}
.qx-desc{font-size:.88rem;font-weight:500;line-height:1.65;color:rgba(203,213,225,.78);white-space:pre-wrap;}
.qx-opts{display:flex;flex-direction:column;gap:8px;}
.qx-opt{position:relative;display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 14px;border-radius:14px;overflow:hidden;cursor:pointer;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);transition:box-shadow .2s,background .2s,transform .15s;}
.qx-opt:hover{background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(96,165,250,.35);}
.qx-opt:active{transform:scale(.99);}
.qx-opt.locked{cursor:default;}
.qx-opt.locked:hover{background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);}
.qx-opt input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none;}
.qx-bar{position:absolute;inset:0 auto 0 0;width:0;z-index:0;background:linear-gradient(90deg,rgba(37,99,235,.28),rgba(37,99,235,.08));transition:width .9s cubic-bezier(.16,1,.3,1);}
.qx-opt.lead .qx-bar{background:linear-gradient(90deg,rgba(52,211,153,.28),rgba(52,211,153,.07));}
.qx-mark{position:relative;z-index:1;flex:none;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;box-shadow:inset 0 0 0 2px rgba(203,213,225,.35);transition:box-shadow .2s,background .2s;}
.qx-mark svg{width:13px;height:13px;color:#fff;opacity:0;transform:scale(.4);transition:opacity .2s,transform .3s cubic-bezier(.34,1.56,.64,1);}
.qx-opt.multi .qx-mark{border-radius:7px;}
.qx-opt:not(.multi) .qx-mark::after{content:'';width:10px;height:10px;border-radius:50%;background:#fff;transform:scale(0);transition:transform .3s cubic-bezier(.34,1.56,.64,1);}
.qx-opt.multi .qx-mark::after{display:none;}
.qx-opt input:checked~.qx-mark{background:#2563eb;box-shadow:inset 0 0 0 2px #3b82f6,0 0 0 4px rgba(37,99,235,.2);}
.qx-opt:not(.multi) input:checked~.qx-mark::after{transform:scale(1);}
.qx-opt.multi input:checked~.qx-mark svg{opacity:1;transform:none;}
.qx-opt input:focus-visible~.qx-mark{outline:2px solid #60a5fa;outline-offset:3px;}
.qx-opt:not(.multi) .qx-mark svg{display:none;}
.qx-lbl{position:relative;z-index:1;flex:1;min-width:0;font-size:.9rem;font-weight:700;color:#fff;}
.qx-pct{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-end;line-height:1.1;}
.qx-pct b{font-size:.92rem;font-weight:900;color:#fff;font-variant-numeric:tabular-nums;}
.qx-pct small{font-size:.64rem;font-weight:700;color:rgba(148,163,184,.85);}
.qx-mine{position:relative;z-index:1;display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#93c5fd;background:rgba(37,99,235,.2);}
.qx-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:2px;}
.qx-total{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700;color:rgba(148,163,184,.9);}
.qx-total svg{width:15px;height:15px;color:#60a5fa;}
.qx-btn{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 20px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 10px 22px -8px rgba(37,99,235,.9);transition:transform .2s,box-shadow .2s,opacity .2s;}
.qx-btn svg{width:15px;height:15px;}
.qx-btn:hover:not(:disabled){transform:translateY(-1px);}
.qx-btn:disabled{opacity:.5;cursor:not-allowed;}
.qx-btn.ghost{background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);}
.qx-btn.discord{background:#5865f2;box-shadow:0 10px 22px -8px rgba(88,101,242,.9);}
.qx-btn:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.qx-login{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px;border-radius:16px;background:rgba(88,101,242,.1);box-shadow:inset 0 0 0 1px rgba(88,101,242,.35);font-size:.82rem;font-weight:600;color:rgba(226,232,240,.88);}
.poll-msg{min-height:0;font-size:.8rem;font-weight:700;}
.poll-msg:empty{display:none;}
.poll-msg.ok{color:#6ee7b7;}
.poll-msg.err{color:#fca5a5;}

/* ── Giveaways ── */
.gx-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));}
.gx-grid[data-count="1"]{grid-template-columns:minmax(0,560px);}
.gx-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr));}
.gx-grid[data-count="0"]{grid-template-columns:1fr;}
#giveaway .gw-card{padding:0;gap:0;border-radius:24px;overflow:hidden;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
#giveaway .gw-card:hover{border-color:rgba(251,191,36,.3);background:rgba(8,14,30,.72);}
#giveaway .gw-card.won{border-color:rgba(251,191,36,.6);box-shadow:0 0 50px -10px rgba(251,191,36,.35);}
.gx-media{position:relative;aspect-ratio:16/8;background:radial-gradient(300px 160px at 50% 30%,rgba(251,191,36,.25),transparent 70%),linear-gradient(135deg,#16254a,#0b1224);display:grid;place-items:center;}
.gx-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.gx-media>svg{width:56px;height:56px;color:#fcd34d;filter:drop-shadow(0 10px 24px rgba(251,191,36,.5));}
.gx-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(8,14,30,.9));}
#giveaway .gw-badge{position:absolute;z-index:2;top:14px;left:14px;align-self:auto;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 11px;font-size:.6rem;letter-spacing:.1em;border:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
#giveaway .gw-badge.active{color:#6ee7b7;background:rgba(6,40,30,.7);box-shadow:inset 0 0 0 1px rgba(52,211,153,.45);}
#giveaway .gw-badge.active::before{content:'';width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d399;}
#giveaway .gw-badge.ended{color:rgba(226,232,240,.8);background:rgba(8,14,30,.7);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);}
.gx-body{display:flex;flex-direction:column;gap:14px;padding:20px 22px 22px;}
#giveaway .gw-card h3{font-family:inherit;margin:0;font-size:1.2rem;font-weight:900;letter-spacing:-.01em;}
#giveaway .gw-prize{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;color:#fde68a;background:rgba(251,191,36,.09);box-shadow:inset 0 0 0 1px rgba(251,191,36,.25);font-size:.86rem;font-weight:800;}
#giveaway .gw-prize .ic{flex:none;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:#1c1300;background:linear-gradient(135deg,#fde047,#f59e0b);}
#giveaway .gw-prize .ic svg{width:17px;height:17px;}
#giveaway .gw-prize small{display:block;font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(253,230,138,.7);}
#giveaway .gw-desc{font-size:.86rem;font-weight:500;color:rgba(203,213,225,.78);}
#giveaway .gw-meta{align-items:center;font-size:.76rem;font-weight:700;color:rgba(148,163,184,.9);}
#giveaway .gw-meta>span:first-child{display:inline-flex;align-items:center;gap:6px;}
#giveaway .gw-meta>span:first-child svg{width:15px;height:15px;color:#60a5fa;}
.gx-cd{display:flex;gap:5px;}
.gx-cd span{display:flex;flex-direction:column;align-items:center;min-width:40px;padding:5px 6px;border-radius:10px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);}
.gx-cd b{font-size:.95rem;font-weight:900;color:#fff;font-variant-numeric:tabular-nums;line-height:1.1;}
.gx-cd small{font-size:.5rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(148,163,184,.8);}
#giveaway .gw-countdown.plain{color:#fcd34d;}
#giveaway .gw-login{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px;border:none;border-radius:16px;background:rgba(88,101,242,.1);box-shadow:inset 0 0 0 1px rgba(88,101,242,.35);text-align:left;font-size:.82rem;font-weight:600;color:rgba(226,232,240,.88);}
#giveaway .gw-login button{margin:0;height:40px;padding:0 18px;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;box-shadow:0 10px 22px -8px rgba(88,101,242,.9);}
#giveaway .gw-tk-stub .ico svg{width:24px;height:24px;color:#fff;}
#giveaway .gw-notch{background:#0d1528;}
#giveaway .gw-join-label{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:44px;margin-top:8px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#1c1300;background:linear-gradient(135deg,#fde047,#fbbf24 45%,#f59e0b);box-shadow:0 12px 24px -10px rgba(245,158,11,.8);transition:transform .2s;}
#giveaway .gw-join-btn:hover .gw-join-label{transform:translateY(-1px);}
#giveaway .gw-join-label svg,#giveaway .gw-status-line svg,#giveaway .gw-you svg{width:16px;height:16px;flex:none;}
#giveaway .gw-status-line,#giveaway .gw-you{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:12px;font-size:.8rem;font-weight:800;}
#giveaway .gw-status-line.joined{color:#6ee7b7;background:rgba(16,185,129,.1);}
#giveaway .gw-status-line.waiting{color:rgba(203,213,225,.8);background:rgba(255,255,255,.04);}
#giveaway .gw-you{color:#fde68a;background:rgba(251,191,36,.12);}
#giveaway .gw-winner{border:none;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(251,191,36,.25);}
#giveaway .gw-winner::after{content:'Gagnant';margin-left:auto;font-size:.56rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fcd34d;}

/* ── Média ── */
.vx-player{position:relative;aspect-ratio:16/9;border-radius:24px;overflow:hidden;background:#000;border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 90px -30px rgba(0,0,0,.9),0 0 0 6px rgba(255,255,255,.02);}
.vx-player iframe,.vx-player video{position:absolute;inset:0;width:100%;height:100%;border:0;}
.vx-poster{position:absolute;inset:0;width:100%;height:100%;padding:0;border:none;cursor:pointer;background:#05080f;}
.vx-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--tx-ease),filter .4s;}
.vx-poster::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(7,11,23,.1),rgba(7,11,23,.65));}
.vx-poster:hover img{transform:scale(1.04);filter:brightness(1.08);}
.vx-play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:92px;height:92px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 0 0 12px rgba(59,130,246,.2),0 20px 44px -10px rgba(37,99,235,.9);transition:transform .35s var(--tx-ease),box-shadow .35s;}
.vx-play svg{width:34px;height:34px;margin-left:5px;}
.vx-poster:hover .vx-play{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 0 0 18px rgba(59,130,246,.18),0 24px 50px -10px rgba(37,99,235,1);}
.vx-poster .vx-cap{position:absolute;z-index:2;left:20px;bottom:18px;display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 13px;border-radius:999px;font-family:'Montserrat',system-ui,sans-serif;font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(8,14,30,.65);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.vx-poster .vx-cap i{width:7px;height:7px;border-radius:50%;background:#ef4444;box-shadow:0 0 8px #ef4444;}
.vx-poster:focus-visible{outline:3px solid #60a5fa;outline-offset:-3px;}

/* ── Galerie ── */
.gl-stage{position:relative;aspect-ratio:16/9;max-height:68vh;width:100%;border-radius:24px;overflow:hidden;background:#05080f;border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 90px -30px rgba(0,0,0,.9);}
#gallery .gl-stage .gal-track{position:absolute;inset:0;display:flex;transition:transform .6s cubic-bezier(.22,.9,.25,1);will-change:transform;}
#gallery .gl-stage .gal-slide{flex:0 0 100%;height:100%;position:relative;background:#05080f;}
#gallery .gl-stage .gal-slide img{width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none;}
#gallery .gal-caption{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:60px 22px 20px;background:linear-gradient(0deg,rgba(5,8,15,.9),transparent);}
#gallery .gal-caption small{display:inline-flex;align-items:center;gap:6px;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#93c5fd;}
#gallery .gal-caption h3{margin-top:4px;font-size:1.15rem;font-weight:900;letter-spacing:-.01em;color:#fff;}
#gallery .gal-like{display:inline-flex;align-items:center;gap:9px;height:42px;padding:0 16px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.86rem;font-weight:900;color:#fff;background:rgba(8,14,30,.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .2s,box-shadow .2s,transform .2s;}
#gallery .gal-like:hover{background:rgba(239,68,68,.2);box-shadow:inset 0 0 0 1px rgba(248,113,113,.5);transform:translateY(-1px);}
#gallery .gal-like.liked{background:linear-gradient(135deg,#e11d48,#f43f5e);box-shadow:0 10px 24px -8px rgba(244,63,94,.8);}
#gallery .gal-like svg{transition:transform .25s;}
#gallery .gal-like.liked svg{transform:scale(1.15);fill:#fff;}
#gallery .gal-like.bump svg{animation:galbump .45s ease;}
@keyframes galbump{0%{transform:scale(1)}40%{transform:scale(1.45)}100%{transform:scale(1.15)}}
.gl-ctrl{position:absolute;z-index:4;top:16px;right:16px;display:flex;align-items:center;gap:6px;padding:5px;border-radius:999px;background:rgba(8,14,30,.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
#gallery .gl-ctrl .gal-arrow{position:static;transform:none;width:36px;height:36px;border:none;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#fff;background:rgba(255,255,255,.08);transition:background .2s;}
#gallery .gl-ctrl .gal-arrow svg{width:18px;height:18px;}
#gallery .gl-ctrl .gal-arrow:hover{background:#2563eb;}
#gallery .gl-ctrl .gal-arrow:disabled{opacity:.3;pointer-events:none;}
#gallery .gl-ctrl .gal-counter{position:static;padding:0 8px;background:none;font-size:.74rem;font-weight:800;letter-spacing:.04em;font-variant-numeric:tabular-nums;color:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;}
#gallery .gl-thumbs{display:flex;gap:10px;margin-top:14px;overflow-x:auto;padding:4px 2px 6px;scrollbar-width:thin;scrollbar-color:rgba(96,165,250,.3) transparent;}
#gallery .gl-thumbs .gal-dot{flex:none;width:112px;height:68px;padding:0;border:none;border-radius:14px;overflow:hidden;cursor:pointer;opacity:.5;background:#0e1422;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:opacity .25s,box-shadow .25s,transform .25s var(--tx-ease);}
#gallery .gl-thumbs .gal-dot img{width:100%;height:100%;object-fit:cover;display:block;}
#gallery .gl-thumbs .gal-dot:hover{opacity:.85;}
#gallery .gl-thumbs .gal-dot.active{opacity:1;box-shadow:0 0 0 2px #3b82f6,0 10px 22px -10px rgba(37,99,235,.9);transform:translateY(-2px);}
#gallery .gal-arrow:focus-visible,#gallery .gal-dot:focus-visible,#gallery .gal-like:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}

@media(max-width:1000px){
  .qx-grid,.gx-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .qx-grid[data-count="1"],.gx-grid[data-count="1"]{grid-template-columns:minmax(0,1fr);}
}
@media(max-width:640px){
  #polls.tx-sec,#giveaway.tx-sec,#media.tx-sec,#gallery.tx-sec{padding:80px 0!important;}
  .qx-grid,.gx-grid,.qx-grid[data-count],.gx-grid[data-count]{grid-template-columns:minmax(0,1fr);}
  .qx-card{padding:18px;}
  .vx-play{width:72px;height:72px;}
  .vx-play svg{width:26px;height:26px;}
  .gl-stage{aspect-ratio:4/3;border-radius:20px;}
  #gallery .gal-caption{padding:50px 14px 14px;}
  #gallery .gal-caption h3{font-size:.95rem;}
  #gallery .gal-like{height:38px;padding:0 13px;}
  #gallery .gl-thumbs .gal-dot{width:84px;height:54px;border-radius:12px;}
}

/* ───── bloc sans id ───── */
#polls{padding:120px 6vw;background:#0B0F18;position:relative;}
.polls-inner{max-width:1100px;margin:0 auto;}
.polls-head{text-align:center;margin-bottom:60px;}
.polls-head p.eyebrow{font-size:.78rem;letter-spacing:.4em;text-transform:uppercase;color:#3b82f6;margin-bottom:14px;}
.polls-head h2{font-family:'Montserrat';font-weight:800;font-size:clamp(2rem,5vw,3.2rem);margin:0 0 14px;color:#fff;}
.polls-head .sub{color:rgba(255,255,255,.55);font-size:.95rem;max-width:580px;margin:0 auto;line-height:1.7;}
 .polls-grid{display:grid;grid-template-columns:1fr;gap:28px;justify-content:center;margin:0 auto;}
 .polls-grid[data-count="1"]{max-width:560px;}
 .polls-grid[data-count="2"]{max-width:920px;}
 .polls-grid[data-count="0"]{max-width:560px;}
 @media(min-width:760px){
   .polls-grid[data-count="2"]{grid-template-columns:1fr 1fr;}
   .polls-grid[data-count="3"]{grid-template-columns:repeat(3,1fr);}
   .polls-grid[data-count="4"],
   .polls-grid[data-count="5"],
   .polls-grid[data-count="6"],
   .polls-grid[data-count="many"]{grid-template-columns:repeat(3,1fr);}
 }
 @media(min-width:1100px){
   .polls-grid[data-count="4"]{grid-template-columns:repeat(2,1fr);max-width:920px;}
 }
.poll-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:18px;transition:border-color .2s,background .2s;}
.poll-card:hover{border-color:rgba(59,130,246,.25);background:rgba(255,255,255,.05);}
.poll-card .poll-img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;background:#0E1422;}
.poll-card h3{font-family:'Montserrat';font-weight:800;font-size:1.25rem;color:#fff;margin:0;line-height:1.3;}
.poll-card .poll-desc{color:rgba(255,255,255,.6);font-size:.92rem;line-height:1.6;white-space:pre-wrap;}
.poll-card .poll-mode{display:inline-block;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:#60a5fa;font-weight:700;}
.poll-opts{display:flex;flex-direction:column;gap:10px;}
.poll-opt{position:relative;display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#0E1422;cursor:pointer;transition:border-color .15s,background .15s;overflow:hidden;}
.poll-opt:hover{border-color:rgba(59,130,246,.35);}
.poll-opt input{accent-color:#3b82f6;cursor:pointer;flex-shrink:0;}
.poll-opt .lbl{flex:1;color:#fff;font-size:.95rem;font-weight:500;position:relative;z-index:2;}
.poll-opt .count{font-size:.8rem;color:rgba(255,255,255,.45);font-weight:600;position:relative;z-index:2;}
.poll-opt.voted{border-color:rgba(59,130,246,.5);background:rgba(59,130,246,.08);}
.poll-bar{position:absolute;inset:0;background:linear-gradient(90deg,rgba(59,130,246,.18),rgba(59,130,246,.05));width:0%;z-index:1;transition:width .5s ease;}
.poll-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.poll-foot .total{color:rgba(255,255,255,.45);font-size:.82rem;}
.poll-btn{background:#3b82f6;color:#fff;border:none;border-radius:10px;padding:11px 22px;font-family:inherit;font-weight:700;font-size:.88rem;letter-spacing:.04em;cursor:pointer;transition:background .15s,transform .15s;}
.poll-btn:hover{background:#2563eb;transform:translateY(-1px);}
.poll-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;}
.poll-login{text-align:center;padding:18px;border:1px dashed rgba(88,101,242,.4);border-radius:12px;background:rgba(88,101,242,.06);color:rgba(255,255,255,.7);font-size:.88rem;}
.poll-login button{margin-top:10px;background:#5865F2;color:#fff;border:none;border-radius:8px;padding:10px 18px;font-family:inherit;font-weight:700;cursor:pointer;}
.poll-login button:hover{background:#4752c4;}
.polls-empty{text-align:center;color:rgba(255,255,255,.4);padding:60px 20px;border:1px dashed rgba(255,255,255,.1);border-radius:14px;}
.poll-msg{font-size:.85rem;min-height:1.2em;}
.poll-msg.ok{color:#10b981;}
.poll-msg.err{color:#ef4444;}

/* ───── bloc sans id ───── */
#giveaway{padding:120px 6vw;background:#0B0F18;}
.gw-inner{max-width:1200px;margin:0 auto;}
.gw-head{text-align:center;margin-bottom:60px;}
.gw-head p.eyebrow{font-size:.78rem;letter-spacing:.4em;text-transform:uppercase;color:#3b82f6;margin-bottom:14px;}
.gw-head h2{font-family:'Montserrat';font-weight:800;font-size:clamp(2rem,5vw,3.2rem);margin:0 0 14px;color:#fff;}
.gw-head .sub{color:rgba(255,255,255,.55);font-size:.95rem;max-width:580px;margin:0 auto;line-height:1.7;}
.gw-grid{display:grid;grid-template-columns:1fr;gap:32px;justify-content:center;margin:0 auto;max-width:560px;}
.gw-grid[data-count="0"]{max-width:560px;}
@media(min-width:760px){
  .gw-grid[data-count="2"]{max-width:1000px;grid-template-columns:1fr 1fr;}
  .gw-grid[data-count="3"],.gw-grid[data-count="many"]{max-width:1200px;grid-template-columns:repeat(3,1fr);}
}
.gw-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:30px 26px;display:flex;flex-direction:column;gap:16px;position:relative;transition:border-color .2s,background .2s;}
.gw-card:hover{border-color:rgba(59,130,246,.25);background:rgba(255,255,255,.05);}
.gw-card.won{border-color:rgba(251,191,36,.55);background:rgba(251,191,36,.06);box-shadow:0 0 40px rgba(251,191,36,.12);}
.gw-card .gw-img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;background:#0E1422;}
.gw-badge{align-self:flex-end;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;padding:6px 12px;border-radius:20px;}
.gw-badge.active{background:rgba(16,185,129,.15);color:#34d399;border:1px solid rgba(16,185,129,.35);}
.gw-badge.ended{background:rgba(255,255,255,.08);color:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.14);}
.gw-card h3{font-family:'Montserrat';font-weight:800;font-size:1.3rem;color:#fff;margin:0;line-height:1.3;}
.gw-prize{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;font-weight:700;color:#fbbf24;}
.gw-desc{color:rgba(255,255,255,.6);font-size:.9rem;line-height:1.6;white-space:pre-wrap;}
.gw-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.78rem;color:rgba(255,255,255,.45);flex-wrap:wrap;}
.gw-countdown{font-weight:700;color:#60a5fa;}
.gw-login{text-align:center;padding:18px;border:1px dashed rgba(88,101,242,.4);border-radius:12px;background:rgba(88,101,242,.06);color:rgba(255,255,255,.7);font-size:.88rem;}
.gw-login button{margin-top:10px;background:#5865F2;color:#fff;border:none;border-radius:8px;padding:10px 18px;font-family:inherit;font-weight:700;cursor:pointer;}
.gw-login button:hover{background:#4752c4;}
.gw-msg{font-size:.85rem;min-height:1.2em;text-align:center;}
.gw-msg.ok{color:#10b981;}
.gw-msg.err{color:#ef4444;}
.gw-empty{text-align:center;color:rgba(255,255,255,.4);padding:60px 20px;border:1px dashed rgba(255,255,255,.1);border-radius:14px;}
.gw-status-line{text-align:center;font-size:.86rem;font-weight:700;margin-top:2px;}
.gw-status-line.joined{color:#34d399;}
.gw-status-line.waiting{color:rgba(255,255,255,.45);}
.gw-winners{display:flex;flex-direction:column;gap:10px;margin-top:6px;}
.gw-winner{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.25);}
.gw-winner img{width:30px;height:30px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.gw-winner .n{color:#fde68a;font-weight:700;font-size:.88rem;}
.gw-you{color:#fbbf24;font-weight:800;text-align:center;font-size:.92rem;margin-top:2px;}

.gw-join-btn{background:none;border:none;width:100%;padding:0;display:block;cursor:pointer;}
.gw-join-btn:disabled{cursor:default;}
.gw-scene{position:relative;width:100%;max-width:320px;margin:14px auto 6px;padding:10px 0;perspective:900px;}
.gw-ticket{position:relative;display:flex;align-items:stretch;height:96px;border-radius:14px;background:linear-gradient(135deg,#1d4ed8,#3b82f6 55%,#1e40af);border:1px solid rgba(255,255,255,.18);box-shadow:0 14px 34px rgba(37,99,235,.28);transform-style:preserve-3d;transition:transform .35s cubic-bezier(.34,1.4,.64,1),box-shadow .35s;overflow:hidden;}
.gw-scene:not(.gw-disabled) .gw-ticket:hover{transform:translateY(-4px) rotate(-1.2deg) scale(1.02);box-shadow:0 20px 44px rgba(37,99,235,.4);}
.gw-ticket::after{content:'';position:absolute;top:0;bottom:0;left:-60%;width:45%;background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.35),rgba(255,255,255,0));transform:skewX(-18deg);animation:gwShine 3.4s ease-in-out infinite;pointer-events:none;}
@keyframes gwShine{0%,65%{left:-60%;}100%{left:130%;}}
.gw-tk-main{flex:1;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:0 16px;text-align:left;min-width:0;}
.gw-tk-kicker{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.7);}
.gw-tk-title{font-family:'Montserrat',inherit;font-weight:800;font-size:1rem;color:#fff;line-height:1.15;}
.gw-tk-bars{display:flex;gap:3px;align-items:flex-end;height:14px;opacity:.85;}
.gw-tk-bars i{display:block;width:2px;height:100%;background:rgba(255,255,255,.75);border-radius:1px;}
.gw-tk-bars i:nth-child(3n){width:4px;height:70%;}
.gw-tk-bars i:nth-child(4n){height:50%;}
.gw-tk-perf{position:relative;width:0;border-left:2px dashed rgba(255,255,255,.5);}
.gw-tk-stub{position:relative;width:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:rgba(255,255,255,.12);transform-origin:left center;transition:transform .6s cubic-bezier(.34,1.4,.64,1),opacity .5s ease;}
.gw-tk-stub .ico{font-size:1.4rem;line-height:1;}
.gw-tk-stub .txt{font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.85);}
.gw-notch{position:absolute;left:50%;width:18px;height:18px;border-radius:50%;background:#0B0F18;transform:translateX(-50%);z-index:3;}
.gw-notch.top{top:-9px;}
.gw-notch.bottom{bottom:-9px;}
.gw-stamp{position:absolute;left:70%;top:50%;transform:translate(-50%,-50%) rotate(-16deg) scale(2.4);padding:6px 14px;border:3px solid #34d399;border-radius:8px;color:#34d399;font-family:'Montserrat',inherit;font-weight:800;font-size:1rem;letter-spacing:.18em;text-transform:uppercase;background:rgba(6,25,20,.35);opacity:0;pointer-events:none;z-index:7;}
.gw-scene.gw-opened .gw-ticket{background:linear-gradient(135deg,#0f2f27,#134e4a 60%,#0f2f27);border-color:rgba(52,211,153,.5);box-shadow:0 12px 30px rgba(16,185,129,.22);}
.gw-scene.gw-opened .gw-ticket::after{display:none;}
.gw-scene.gw-opened .gw-tk-perf{opacity:0;transition:opacity .3s ease;}
.gw-scene.gw-opened .gw-tk-stub{transform:translateX(28px) rotate(11deg);opacity:0;}
.gw-scene.gw-opened .gw-stamp{animation:gwStamp .5s cubic-bezier(.2,1.5,.5,1) .18s forwards;}
.gw-scene.gw-opening .gw-ticket{animation:gwTear .5s ease-in-out;}
.gw-scene.gw-opened .gw-glow{animation:gwGlow .8s ease-out forwards;}
.gw-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:radial-gradient(circle,#fff,rgba(255,255,255,0) 70%);opacity:0;pointer-events:none;}
@keyframes gwStamp{
  0%{opacity:0;transform:translate(-50%,-50%) rotate(-16deg) scale(2.4);}
  60%{opacity:1;transform:translate(-50%,-50%) rotate(-16deg) scale(.92);}
  100%{opacity:1;transform:translate(-50%,-50%) rotate(-16deg) scale(1);}
}
@keyframes gwTear{
  0%,100%{transform:translateX(0) rotate(0deg);}
  25%{transform:translateX(-5px) rotate(-1.5deg);}
  60%{transform:translateX(6px) rotate(1.5deg);}
}
@keyframes gwGlow{
  0%{opacity:0;width:6px;height:6px;}
  40%{opacity:1;width:190px;height:190px;}
  100%{opacity:0;width:240px;height:240px;}
}
.gw-confetti-layer{position:absolute;inset:0;pointer-events:none;overflow:visible;z-index:6;}
.gw-confetti{position:absolute;top:50%;left:50%;opacity:0;animation:gwConfetti 1.1s ease-out forwards;}
@keyframes gwConfetti{
  0%{opacity:1;transform:translate(-50%,-50%) translate(0,0) rotate(0deg) scale(1);}
  100%{opacity:0;transform:translate(-50%,-50%) translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(.4);}
}
@media(prefers-reduced-motion:reduce){
  .gw-ticket::after{animation:none;}
}
.gw-join-label{display:block;text-align:center;font-family:inherit;font-weight:700;font-size:.86rem;letter-spacing:.03em;color:#fff;margin-top:4px;}

/* ───── bloc pc-b4-redesign ───── */
/* ═══════════ Lot 4 : Nouveautés, Événements, Sessions, Avis ═══════════ */
#news.tx-sec,#events.tx-sec,#sessions.tx-sec,#reviews.tx-sec{position:relative;overflow:hidden;padding:110px 0;}
#news.tx-sec{background:#070b17;}
#events.tx-sec{background:linear-gradient(180deg,#070b17,#0b1224);}
#sessions.tx-sec{background:#0b1224;}
#reviews.tx-sec{background:linear-gradient(180deg,#0b1224,#070b17);}
.tx-seg{display:flex;gap:4px;padding:4px;width:max-content;max-width:100%;overflow-x:auto;scrollbar-width:none;border-radius:16px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);margin-bottom:22px;}
.tx-seg::-webkit-scrollbar{display:none;}
.tx-seg button{--c:96,165,250;flex:none;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 15px;border:none;border-radius:12px;background:none;cursor:pointer;font-family:inherit;font-size:.76rem;font-weight:800;color:rgba(148,163,184,.9);transition:background .2s,color .2s,box-shadow .2s;}
.tx-seg button svg{width:15px;height:15px;color:rgb(var(--c));}
.tx-seg button i{font-style:normal;min-width:22px;height:20px;padding:0 6px;border-radius:999px;display:inline-grid;place-items:center;font-size:.64rem;color:rgb(var(--c));background:rgba(var(--c),.14);}
.tx-seg button:hover{color:#fff;}
.tx-seg button.active{color:#fff;background:rgba(var(--c),.2);box-shadow:inset 0 0 0 1px rgba(var(--c),.45);}
.tx-seg button:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.tx-pill{--c:96,165,250;display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--c));background:rgba(var(--c),.13);white-space:nowrap;}
.tx-pill svg{width:12px;height:12px;}

/* ── Nouveautés : journal des mises à jour ── */
.nx-list{position:relative;display:flex;flex-direction:column;gap:14px;max-width:900px;}
.nx-list::before{content:'';position:absolute;left:21px;top:10px;bottom:10px;width:2px;border-radius:2px;background:linear-gradient(180deg,rgba(96,165,250,.45),rgba(96,165,250,.05));}
.nx-item{--c:96,165,250;position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;}
.nx-dot{position:relative;z-index:1;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:rgb(var(--c));background:#0d1528;box-shadow:inset 0 0 0 1px rgba(var(--c),.4),0 0 0 5px #070b17;}
.nx-dot svg{width:19px;height:19px;}
.nx-card{border-radius:22px;overflow:hidden;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .3s,transform .4s var(--tx-ease);}
.nx-card:hover{border-color:rgba(var(--c),.4);transform:translateX(3px);}
.nx-img{aspect-ratio:16/6;background:#0f172a center/cover;}
.nx-body{padding:18px 22px 20px;}
.nx-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px;}
.nx-date{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:.74rem;font-weight:700;color:rgba(148,163,184,.9);}
.nx-date svg{width:14px;height:14px;}
.nx-card h3{margin:0 0 8px;font-size:1.15rem;font-weight:900;letter-spacing:-.01em;line-height:1.3;color:#fff;}
.nx-content{margin:0;font-size:.88rem;font-weight:500;line-height:1.7;color:rgba(203,213,225,.8);white-space:pre-wrap;}
.nx-content.clamp{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;}
.nx-more{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:0;border:none;background:none;cursor:pointer;font-family:inherit;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--c));}
.nx-more svg{width:14px;height:14px;transition:transform .3s var(--tx-ease);}
.nx-more.open svg{transform:rotate(180deg);}

/* ── Événements ── */
.ex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;}
#events .ev-card{--c:167,139,250;position:relative;display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .45s var(--tx-ease),border-color .3s,box-shadow .3s;}
#events .ev-card:hover{transform:translateY(-4px);border-color:rgba(var(--c),.45);box-shadow:0 30px 60px -30px rgba(var(--c),.7);}
#events .ev-card.past{--c:148,163,184;}
#events .ev-card.past .ex-media{filter:grayscale(.6) brightness(.8);}
.ex-media{position:relative;aspect-ratio:16/9;background:radial-gradient(300px 160px at 50% 35%,rgba(var(--c),.3),transparent 70%),linear-gradient(135deg,#16254a,#0b1224) center/cover;display:grid;place-items:center;}
.ex-media>svg{width:48px;height:48px;color:rgba(var(--c),.8);}
.ex-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(8,14,30,.85));}
.ex-date{position:absolute;z-index:2;left:14px;bottom:-26px;width:62px;border-radius:16px;overflow:hidden;text-align:center;background:#0d1528;box-shadow:0 0 0 1px rgba(var(--c),.45),0 14px 28px -10px rgba(0,0,0,.8);}
.ex-date span{display:block;padding:3px 0;font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgb(var(--c));}
.ex-date b{display:block;padding:4px 0 6px;font-size:1.45rem;font-weight:900;line-height:1;color:#fff;}
.ex-badge{position:absolute;z-index:2;top:14px;right:14px;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 11px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:rgba(8,14,30,.65);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.ex-badge i{width:6px;height:6px;border-radius:50%;background:rgb(var(--c));box-shadow:0 0 8px rgb(var(--c));}
.ex-body{display:flex;flex-direction:column;gap:10px;flex:1;padding:38px 20px 20px;}
#events .ev-card h3{margin:0;font-size:1.12rem;font-weight:900;letter-spacing:-.01em;line-height:1.3;color:#fff;}
.ex-meta{display:flex;flex-direction:column;gap:6px;}
.ex-meta span{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;color:rgba(203,213,225,.85);}
.ex-meta svg{width:15px;height:15px;flex:none;color:rgb(var(--c));}
.ex-desc{margin:0;font-size:.84rem;font-weight:500;line-height:1.6;color:rgba(203,213,225,.75);white-space:pre-wrap;}

/* ── Sessions ── */
.sx2-list{display:flex;flex-direction:column;gap:14px;}
#sessions .ss-card{--c:52,211,153;position:relative;display:grid;grid-template-columns:340px minmax(0,1fr);border-radius:24px;overflow:hidden;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .3s,box-shadow .3s;}
#sessions .ss-card:hover{border-color:rgba(var(--c),.4);box-shadow:0 30px 60px -32px rgba(var(--c),.7);}
#sessions .ss-card.past{--c:148,163,184;}
.s2-banner{position:relative;min-height:220px;background:radial-gradient(260px 160px at 50% 40%,rgba(var(--c),.28),transparent 70%),linear-gradient(135deg,#16254a,#0b1224) center/cover;display:grid;place-items:center;}
.s2-banner>svg{width:52px;height:52px;color:rgba(var(--c),.85);}
.s2-banner::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,rgba(8,14,30,.6));}
.s2-photo{position:absolute;z-index:2;left:16px;bottom:16px;width:64px;height:64px;border-radius:18px;background:#0d1528 center/cover;box-shadow:0 0 0 3px #0d1528,0 12px 24px -8px rgba(0,0,0,.8);}
.s2-body{display:flex;flex-direction:column;gap:12px;padding:22px 24px;}
.s2-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
#sessions .ss-card h3{margin:0;font-size:1.25rem;font-weight:900;letter-spacing:-.01em;line-height:1.25;color:#fff;}
.s2-when{display:flex;align-items:center;gap:10px;font-size:.84rem;font-weight:700;color:rgba(226,232,240,.9);}
.s2-when .ic{flex:none;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.13);box-shadow:inset 0 0 0 1px rgba(var(--c),.3);}
.s2-when .ic svg{width:16px;height:16px;}
.s2-desc{margin:0;font-size:.86rem;font-weight:500;line-height:1.65;color:rgba(203,213,225,.78);white-space:pre-wrap;}
.s2-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;}
.s2-cd{display:flex;gap:5px;}
.s2-cd span{display:flex;flex-direction:column;align-items:center;min-width:44px;padding:5px 6px;border-radius:11px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);}
.s2-cd b{font-size:1rem;font-weight:900;color:#fff;font-variant-numeric:tabular-nums;line-height:1.1;}
.s2-cd small{font-size:.5rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(148,163,184,.8);}
#sessions .ss-cta{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;color:#04140d;background:linear-gradient(135deg,#34d399,#10b981);box-shadow:0 10px 22px -8px rgba(16,185,129,.8);transition:transform .2s;}
#sessions .ss-cta svg{width:15px;height:15px;}
#sessions .ss-cta:hover{transform:translateY(-1px);}

/* ── Avis ── */
.rx2-wrap{display:grid;grid-template-columns:360px minmax(0,1fr);gap:14px;align-items:start;}
.rx2-side{position:sticky;top:96px;display:flex;flex-direction:column;gap:14px;}
.rx2-box{padding:20px;border-radius:24px;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
.rx2-sum{display:flex;align-items:center;gap:16px;}
.rx2-avg{font-size:3rem;font-weight:900;letter-spacing:-.04em;line-height:1;color:#fff;font-variant-numeric:tabular-nums;}
.rx2-avg small{font-size:1rem;color:rgba(148,163,184,.8);letter-spacing:0;}
.rx2-sum .rv-stars svg{width:18px;height:18px;}
.rx2-sum p{margin:4px 0 0;font-size:.76rem;font-weight:700;color:rgba(148,163,184,.9);}
.rx2-dist{display:flex;flex-direction:column;gap:6px;margin-top:16px;}
.rx2-dist div{display:grid;grid-template-columns:16px 1fr 30px;align-items:center;gap:8px;font-size:.7rem;font-weight:800;color:rgba(203,213,225,.8);}
.rx2-dist i{height:6px;border-radius:6px;overflow:hidden;background:rgba(255,255,255,.07);}
.rx2-dist i b{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#f59e0b,#fbbf24);width:0;transition:width .9s var(--tx-ease);}
.rx2-dist span:last-child{text-align:right;color:rgba(148,163,184,.8);}
.rx2-box h3{margin:0 0 14px;font-size:1rem;font-weight:900;color:#fff;}
#reviews .rv-form{display:flex;flex-direction:column;gap:12px;}
#reviews .rv-form label{display:block;margin-bottom:6px;font-size:.74rem;font-weight:800;color:rgba(226,232,240,.9);}
#reviews .rv-form input,#reviews .rv-form textarea{width:100%;box-sizing:border-box;padding:11px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(3,7,18,.5);color:#fff;font-family:inherit;font-size:.88rem;font-weight:500;outline:none;transition:border-color .2s,background .2s,box-shadow .2s;}
#reviews .rv-form textarea{min-height:110px;resize:vertical;line-height:1.55;}
#reviews .rv-form input::placeholder,#reviews .rv-form textarea::placeholder{color:rgba(148,163,184,.55);}
#reviews .rv-form input:focus,#reviews .rv-form textarea:focus{border-color:rgba(96,165,250,.6);background:rgba(3,7,18,.7);box-shadow:0 0 0 4px rgba(37,99,235,.15);}
#reviews .rv-rate{display:flex;gap:4px;}
#reviews .rv-rate button{width:40px;height:40px;padding:0;border:none;border-radius:12px;cursor:pointer;display:grid;place-items:center;color:rgba(148,163,184,.35);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:color .15s,background .15s,transform .2s;}
#reviews .rv-rate button svg{width:20px;height:20px;}
#reviews .rv-rate button:hover{transform:translateY(-2px);}
#reviews .rv-rate button.active,#reviews .rv-rate button.hov{color:#fbbf24;background:rgba(251,191,36,.12);box-shadow:inset 0 0 0 1px rgba(251,191,36,.35);}
#reviews .rv-rate button:focus-visible{outline:2px solid #fbbf24;outline-offset:2px;}
#reviews .rv-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 10px 22px -8px rgba(37,99,235,.9);transition:transform .2s;}
#reviews .rv-submit.discord{background:#5865f2;box-shadow:0 10px 22px -8px rgba(88,101,242,.9);}
#reviews .rv-submit:hover{transform:translateY(-1px);}
#reviews .rv-msg{font-size:.8rem;font-weight:700;}
#reviews .rv-msg:empty{display:none;}
#reviews .rv-msg.ok{color:#6ee7b7;}
#reviews .rv-msg.err{color:#fca5a5;}
.rx2-list{columns:2 300px;column-gap:14px;}
#reviews .rv-item{break-inside:avoid;margin:0 0 14px;padding:18px;border-radius:22px;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .3s;}
#reviews .rv-item:hover{border-color:rgba(251,191,36,.3);}
#reviews .rv-item-head{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.rx2-av{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:.9rem;font-weight:900;color:#fff;background:hsl(var(--h,220) 65% 45%);box-shadow:0 0 0 2px rgba(255,255,255,.08);}
#reviews .rv-item-head>div:nth-child(2){flex:1;min-width:0;}
#reviews .rv-name{font-size:.9rem;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#reviews .rv-role{margin-top:2px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#93c5fd;}
#reviews .rv-stars{display:flex;gap:2px;}
#reviews .rv-stars svg{width:14px;height:14px;}
#reviews .rv-stars svg.on{color:#fbbf24;}
#reviews .rv-stars svg.off{color:rgba(148,163,184,.25);}
#reviews .rv-comment{font-size:.88rem;font-weight:500;line-height:1.7;color:rgba(226,232,240,.85);white-space:pre-wrap;overflow-wrap:anywhere;}
#reviews .rv-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;}
#reviews .rv-date{font-size:.7rem;font-weight:700;color:rgba(148,163,184,.7);}
#reviews .rv-react{display:flex;gap:6px;}
#reviews .rv-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 11px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.74rem;font-weight:800;color:rgba(203,213,225,.8);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:background .2s,color .2s,box-shadow .2s;}
#reviews .rv-btn svg{width:14px;height:14px;}
#reviews .rv-btn.up:hover,#reviews .rv-btn.up.active{color:#6ee7b7;background:rgba(16,185,129,.14);box-shadow:inset 0 0 0 1px rgba(52,211,153,.4);}
#reviews .rv-btn.down:hover,#reviews .rv-btn.down.active{color:#fca5a5;background:rgba(239,68,68,.12);box-shadow:inset 0 0 0 1px rgba(248,113,113,.4);}
#reviews .rv-btn:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}

@media(max-width:1000px){
  #sessions .ss-card{grid-template-columns:1fr;}
  .s2-banner{min-height:180px;}
  .rx2-wrap{grid-template-columns:1fr;}
  .rx2-side{position:static;}
}
@media(max-width:640px){
  #news.tx-sec,#events.tx-sec,#sessions.tx-sec,#reviews.tx-sec{padding:80px 0;}
  .nx-list::before{left:17px;}
  .nx-item{grid-template-columns:36px minmax(0,1fr);gap:12px;}
  .nx-dot{width:36px;height:36px;border-radius:12px;}
  .nx-date{margin-left:0;width:100%;}
  .ex-grid{grid-template-columns:1fr;}
  .s2-body{padding:18px;}
  .rx2-list{columns:1;}
  #reviews .rv-form input,#reviews .rv-form textarea{font-size:16px;}
}

/* ───── bloc sans id ───── */
#faq{padding:120px 6vw;position:relative;overflow:hidden;background:#0B0F18;}
#faq .faq-glow{position:absolute;border-radius:50%;filter:blur(120px);opacity:.22;pointer-events:none;z-index:1;}
#faq .faq-glow.g1{width:480px;height:480px;top:-160px;left:-120px;background:#2563eb;animation:faqFloat 13s ease-in-out infinite;}
#faq .faq-glow.g2{width:520px;height:520px;bottom:-200px;right:-140px;background:#090742;animation:faqFloat 16s ease-in-out infinite reverse;}
@keyframes faqFloat{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(30px,-24px) scale(1.1);}}
#faq .faq-head{max-width:760px;margin:0 auto 56px;text-align:center;position:relative;z-index:2;}
#faq .faq-eyebrow{font-size:.78rem;letter-spacing:.4em;text-transform:uppercase;color:#3b82f6;margin-bottom:14px;}
#faq .faq-title{font-family:'Montserrat';font-weight:800;font-size:clamp(2rem,5vw,3.2rem);color:#fff;margin:0 0 14px;}
#faq .faq-title span{background:linear-gradient(135deg,#3b82f6,#0d72b5);-webkit-background-clip:text;background-clip:text;color:transparent;}
#faq .faq-sub{color:rgba(255,255,255,.55);font-size:.95rem;line-height:1.7;}
#faq .faq-list{max-width:820px;margin:0 auto;position:relative;z-index:2;display:flex;flex-direction:column;gap:14px;}
#faq .faq-item{
  position:relative;overflow:hidden;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  transition:border-color .35s ease, background .35s ease, box-shadow .35s ease, transform .3s ease;
}
#faq .faq-item::after{
  content:'';position:absolute;top:0;left:-60%;width:35%;height:100%;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,.10), transparent);
  transform:skewX(-20deg);
  transition:left .75s ease;
  pointer-events:none;z-index:1;
}
#faq .faq-item:hover{
  border-color:rgba(59,130,246,.35);
  background:rgba(59,130,246,.06);
  transform:translateY(-3px);
  box-shadow:0 14px 34px rgba(37,99,235,.20);
}
#faq .faq-item:hover::after{left:130%;}
#faq .faq-item.open{
  border-color:rgba(59,130,246,.4);
  background:rgba(59,130,246,.07);
  box-shadow:0 16px 40px rgba(37,99,235,.22);
}
#faq .faq-q{
  width:100%;display:flex;align-items:center;gap:16px;
  padding:22px 24px;background:none;border:none;
  text-align:left;cursor:pointer;font-family:inherit;
  font-size:1.02rem;font-weight:700;color:#fff;
  position:relative;z-index:2;
}
#faq .faq-q .faq-num{
  flex-shrink:0;width:34px;height:34px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:.78rem;font-weight:800;color:#93c5fd;
  background:rgba(59,130,246,.12);border:1px solid rgba(59,130,246,.25);
  transition:background .3s ease,color .3s ease,box-shadow .3s ease,transform .3s ease;
}
#faq .faq-item.open .faq-q .faq-num,#faq .faq-item:hover .faq-q .faq-num{
  background:linear-gradient(135deg,#2563eb,#1c2763);
  color:#fff;box-shadow:0 0 18px rgba(59,130,246,.55);
  transform:scale(1.06);
}
#faq .faq-q .faq-txt{flex:1;line-height:1.4;}
#faq .faq-q .faq-icon{flex-shrink:0;width:22px;height:22px;position:relative;transition:transform .4s cubic-bezier(.4,0,.2,1);}
#faq .faq-q .faq-icon::before,#faq .faq-q .faq-icon::after{
  content:'';position:absolute;background:#93c5fd;border-radius:2px;
  transition:transform .35s ease,opacity .35s ease,background .3s ease;
}
#faq .faq-q .faq-icon::before{width:14px;height:2px;top:10px;left:4px;}
#faq .faq-q .faq-icon::after{width:2px;height:14px;top:4px;left:10px;}
#faq .faq-item:hover .faq-q .faq-icon::before,#faq .faq-item:hover .faq-q .faq-icon::after{background:#fff;}
#faq .faq-item.open .faq-q .faq-icon{transform:rotate(180deg);}
#faq .faq-item.open .faq-q .faq-icon::after{transform:rotate(90deg);opacity:0;}
#faq .faq-a-wrap{max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.4,0,.2,1);}
#faq .faq-a{padding:0 24px 24px 74px;color:rgba(255,255,255,.65);font-size:.92rem;line-height:1.75;white-space:pre-wrap;position:relative;z-index:2;}
#faq .faq-empty{text-align:center;color:rgba(255,255,255,.4);padding:48px 20px;border:1px dashed rgba(255,255,255,.12);border-radius:14px;position:relative;z-index:2;}
#faq .faq-foot{text-align:center;margin-top:44px;color:rgba(255,255,255,.5);font-size:.88rem;position:relative;z-index:2;}
#faq .faq-foot a{color:#60a5fa;text-decoration:none;font-weight:600;}
#faq .faq-foot a:hover{text-decoration:underline;}
@media(max-width:640px){
  #faq{padding:80px 20px;}
  #faq .faq-q{padding:18px;gap:12px;font-size:.95rem;}
  #faq .faq-a{padding:0 18px 20px 62px;}
}

/* ───── bloc pc-b5-redesign ───── */
/* ═══════════ Lot 5 : Donations, FAQ, Rejoindre, pied de page ═══════════ */
#donations.tx-sec,#faq.tx-sec,#join.tx-sec{position:relative;overflow:hidden;padding:110px 0;}
#donations.tx-sec{background:#070b17;}
#faq.tx-sec{background:linear-gradient(180deg,#070b17,#0b1224);}
#join.tx-sec{background:#0b1224;}

/* ── Donations ── */
.dx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.dx-card{--c:96,165,250;position:relative;display:flex;flex-direction:column;gap:12px;padding:22px;border-radius:24px;overflow:hidden;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .45s var(--tx-ease),border-color .3s,box-shadow .3s;}
.dx-card::before{content:'';position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(var(--c),.22),transparent 70%);pointer-events:none;}
.dx-card:hover{transform:translateY(-4px);border-color:rgba(var(--c),.45);box-shadow:0 30px 60px -30px rgba(var(--c),.8);}
.dx-top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.dx-ic{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.32);}
.dx-ic svg{width:22px;height:22px;}
.dx-amount{position:relative;display:flex;align-items:baseline;gap:8px;margin-top:4px;}
.dx-amount b{font-size:2.3rem;font-weight:900;letter-spacing:-.03em;line-height:1;color:#fff;font-variant-numeric:tabular-nums;}
.dx-amount span{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--c));}
.dx-card h3{position:relative;margin:0;font-size:1.02rem;font-weight:900;color:#fff;}
.dx-desc{position:relative;flex:1;margin:0;font-size:.84rem;font-weight:500;line-height:1.6;color:rgba(203,213,225,.75);}
.dx-cta{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;color:#fff;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);transition:background .3s,box-shadow .3s,color .3s;}
.dx-cta svg{width:15px;height:15px;transition:transform .3s var(--tx-ease);}
.dx-card:hover .dx-cta{background:rgb(var(--c));box-shadow:0 12px 24px -10px rgba(var(--c),.9);color:#07101f;}
.dx-card:hover .dx-cta svg{transform:translateX(3px);}
.dx-card.top{border-color:rgba(var(--c),.4);background:radial-gradient(400px 220px at 100% 0%,rgba(var(--c),.14),transparent 70%),rgba(8,14,30,.7);}
.dx-note{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px;padding:14px 16px;border-radius:20px;background:rgba(37,99,235,.08);box-shadow:inset 0 0 0 1px rgba(96,165,250,.25);}
.dx-note .ic{flex:none;width:40px;height:40px;border-radius:13px;display:grid;place-items:center;color:#93c5fd;background:rgba(37,99,235,.18);}
.dx-note .ic svg{width:19px;height:19px;}
.dx-note p{flex:1;min-width:200px;margin:0;font-size:.84rem;font-weight:600;line-height:1.55;color:rgba(226,232,240,.85);}
.dx-note p b{color:#fff;}

/* ── FAQ ── */
.fx-wrap{display:grid;grid-template-columns:320px minmax(0,1fr);gap:14px;align-items:start;}
.fx-side{position:sticky;top:96px;display:flex;flex-direction:column;gap:14px;}
.fx-box{padding:20px;border-radius:24px;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);}
.fx-search{position:relative;}
.fx-search svg{position:absolute;left:14px;top:50%;width:16px;height:16px;transform:translateY(-50%);color:rgba(148,163,184,.7);pointer-events:none;}
.fx-search input{width:100%;box-sizing:border-box;height:46px;padding:0 14px 0 40px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(3,7,18,.5);color:#fff;font-family:inherit;font-size:.86rem;font-weight:500;outline:none;transition:border-color .2s,box-shadow .2s;}
.fx-search input::placeholder{color:rgba(148,163,184,.55);}
.fx-search input:focus{border-color:rgba(96,165,250,.6);box-shadow:0 0 0 4px rgba(37,99,235,.15);}
.fx-search input::-webkit-search-cancel-button{display:none;}
.fx-help .ic{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;margin-bottom:12px;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 10px 24px -8px rgba(37,99,235,.8);}
.fx-help .ic svg{width:22px;height:22px;}
.fx-help b{display:block;font-size:1rem;font-weight:900;color:#fff;}
.fx-help p{margin:6px 0 14px;font-size:.82rem;font-weight:500;line-height:1.6;color:rgba(203,213,225,.75);}
.fx-help .tx-btn{width:100%;height:42px;margin-top:8px;}
.fx-help .tx-btn.discord{color:#fff;background:#5865f2;box-shadow:0 10px 22px -8px rgba(88,101,242,.9);}
#faq .fx-list{display:flex;flex-direction:column;gap:10px;max-width:none;margin:0;}
#faq .faq-item{border-radius:20px;background:rgba(8,14,30,.62);border:1px solid rgba(255,255,255,.08);box-shadow:none;transform:none;}
#faq .faq-item::after{display:none;}
#faq .faq-item:hover{transform:none;background:rgba(8,14,30,.75);border-color:rgba(96,165,250,.3);box-shadow:none;}
#faq .faq-item.open{background:rgba(13,22,46,.8);border-color:rgba(96,165,250,.4);box-shadow:0 24px 50px -30px rgba(37,99,235,.8);}
#faq .faq-item[hidden]{display:none;}
#faq .faq-q{padding:16px 18px;gap:14px;font-size:.95rem;font-weight:800;}
#faq .faq-q .faq-num{width:36px;height:36px;border-radius:11px;border:none;font-size:.74rem;font-weight:900;color:#93c5fd;background:rgba(37,99,235,.14);box-shadow:inset 0 0 0 1px rgba(96,165,250,.3);transform:none;}
#faq .faq-item.open .faq-q .faq-num,#faq .faq-item:hover .faq-q .faq-num{color:#fff;background:#2563eb;box-shadow:0 8px 18px -6px rgba(37,99,235,.9);transform:none;}
#faq .faq-q .faq-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:rgba(203,213,225,.8);background:rgba(255,255,255,.05);transition:transform .4s var(--tx-ease),background .2s,color .2s;}
#faq .faq-q .faq-icon::before,#faq .faq-q .faq-icon::after{display:none;}
#faq .faq-q .faq-icon svg{width:16px;height:16px;}
#faq .faq-item.open .faq-q .faq-icon{transform:rotate(180deg);color:#fff;background:rgba(37,99,235,.35);}
#faq .faq-q:focus-visible{outline:2px solid #60a5fa;outline-offset:-2px;border-radius:20px;}
#faq .faq-a{padding:0 20px 20px 68px;font-size:.9rem;font-weight:500;color:rgba(203,213,225,.82);}
#faq mark{color:#fff;background:rgba(37,99,235,.35);border-radius:4px;padding:0 2px;}

/* ── Rejoindre ── */
#join .jx{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;padding:44px;border-radius:32px;overflow:hidden;
  background:radial-gradient(700px 380px at 0% 0%,rgba(37,99,235,.35),transparent 70%),radial-gradient(600px 360px at 100% 100%,rgba(88,101,242,.25),transparent 70%),linear-gradient(135deg,rgba(13,22,46,.92),rgba(8,13,28,.95));
  border:1px solid rgba(96,165,250,.25);box-shadow:0 50px 100px -40px rgba(37,99,235,.6),inset 0 1px 0 rgba(255,255,255,.08);}
#join .jx::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse at 30% 30%,#000 10%,transparent 70%);mask-image:radial-gradient(ellipse at 30% 30%,#000 10%,transparent 70%);}
.jx-text{position:relative;}
.jx-text .tx-h2{font-size:clamp(2.2rem,4.6vw,3.6rem);}
.jx-steps{display:flex;flex-direction:column;gap:10px;margin-top:24px;}
.jx-step{display:flex;align-items:center;gap:12px;font-size:.88rem;font-weight:700;color:rgba(226,232,240,.9);}
.jx-step i{flex:none;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;font-style:normal;font-size:.78rem;font-weight:900;color:#fff;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);}
.jx-step:first-child i{background:#5865f2;box-shadow:0 8px 18px -6px rgba(88,101,242,.9);}
.jx-actions{position:relative;display:flex;flex-direction:column;gap:10px;justify-content:center;}
.jx-main{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:20px;text-decoration:none;color:#fff;background:#5865f2;box-shadow:0 18px 40px -14px rgba(88,101,242,.95);transition:transform .3s var(--tx-ease),box-shadow .3s;}
.jx-main:hover{transform:translateY(-3px);box-shadow:0 24px 50px -14px rgba(88,101,242,1);}
.jx-main .ic{flex:none;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.16);}
.jx-main .ic svg{width:26px;height:26px;}
.jx-main b{display:block;font-size:1.02rem;font-weight:900;}
.jx-main span{display:block;margin-top:2px;font-size:.74rem;font-weight:600;color:rgba(255,255,255,.8);}
.jx-main .arr{margin-left:auto;width:20px;height:20px;transition:transform .3s var(--tx-ease);}
.jx-main:hover .arr{transform:translateX(4px);}
.jx-lbl{margin:8px 0 2px;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.8);}
.jx-insts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.jx-inst{--c:96,165,250;display:flex;align-items:center;gap:10px;min-width:0;padding:10px 12px;border-radius:14px;text-decoration:none;color:rgba(226,232,240,.9);font-size:.8rem;font-weight:800;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:background .2s,box-shadow .2s,color .2s;}
.jx-inst i{flex:none;width:8px;height:8px;border-radius:50%;background:rgb(var(--c));box-shadow:0 0 8px rgba(var(--c),.9);}
.jx-inst span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.jx-inst:hover{color:#fff;background:rgba(var(--c),.16);box-shadow:inset 0 0 0 1px rgba(var(--c),.5);}
.jx-main:focus-visible,.jx-inst:focus-visible,.dx-cta:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}

/* ── Pied de page ── */
footer.fx{position:relative;padding:70px 0 26px;background:#05080f;border-top:1px solid rgba(255,255,255,.06);font-family:'Montserrat',system-ui,sans-serif;}
footer.fx::before{content:'';position:absolute;left:50%;top:-1px;width:min(600px,80%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(96,165,250,.6),transparent);}
.fx-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px;}
.fx-brand a.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-size:1.05rem;font-weight:900;letter-spacing:-.01em;}
.fx-brand a.logo img{height:36px;width:auto;}
.fx-brand p{margin:14px 0 0;max-width:320px;font-size:.84rem;font-weight:500;line-height:1.7;color:rgba(148,163,184,.8);}
.fx-soc{display:flex;gap:8px;margin-top:20px;}
.fx-soc a{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:rgba(226,232,240,.8);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:background .2s,color .2s,transform .2s;}
.fx-soc a svg{width:18px;height:18px;}
.fx-soc a:hover{color:#fff;background:#2563eb;transform:translateY(-2px);}
.fx-col h6{margin:0 0 14px;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.7);}
.fx-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}
.fx-col a{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:600;text-decoration:none;color:rgba(203,213,225,.75);transition:color .2s;}
.fx-col a i{width:6px;height:6px;border-radius:50%;background:var(--dot,#3b82f6);}
.fx-col a:hover{color:#fff;}
.fx-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.06);font-size:.74rem;font-weight:600;color:rgba(148,163,184,.6);}
.fx-bottom p{margin:0;}
.fx-bottom b{color:#93c5fd;font-weight:800;}
#secret-heart{display:inline-grid;place-items:center;vertical-align:-2px;color:#f43f5e;}
#secret-heart svg{width:13px;height:13px;}
.fx-top{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.64rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(226,232,240,.85);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:background .2s,color .2s;}
.fx-top svg{width:14px;height:14px;}
.fx-top:hover{color:#fff;background:#2563eb;}
.fx-col a:focus-visible,.fx-soc a:focus-visible,.fx-top:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}

@media(max-width:1000px){
  .dx-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .fx-wrap{grid-template-columns:1fr;}
  .fx-side{display:contents;}
  .fx-search{order:0;}
  #faq .fx-list{order:1;}
  .fx-help{order:2;}
  #join .jx{grid-template-columns:1fr;padding:32px;}
  .fx-grid{grid-template-columns:1fr 1fr;}
  .fx-brand{grid-column:1/-1;}
}
@media(max-width:640px){
  #donations.tx-sec,#faq.tx-sec,#join.tx-sec{padding:80px 0;}
  .dx-grid{grid-template-columns:1fr;}
  #faq .faq-q{padding:14px;gap:12px;font-size:.9rem;}
  #faq .faq-a{padding:0 16px 18px 62px;}
  #join .jx{padding:24px 18px;border-radius:26px;}
  .jx-insts{grid-template-columns:1fr;}
  footer.fx{padding:56px 0 24px;}
  .fx-grid{gap:26px;}
}

/* ───── bloc sans id ───── */
.pc-page{position:fixed;inset:0;z-index:9998;display:none;flex-direction:column;background:#0B0F18;overflow-y:auto;}
.pc-page.open{display:flex;animation:pcPageIn .42s cubic-bezier(.16,1,.3,1) forwards;}
.pc-page.closing{display:flex;pointer-events:none;animation:pcPageOut .3s cubic-bezier(.4,0,1,1) forwards;}
@keyframes pcPageIn{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}
@keyframes pcPageOut{from{opacity:1;transform:translateY(0);}to{opacity:0;transform:translateY(18px);}}
.pc-page-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:18px 6vw;background:rgba(11,15,24,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.07);}
.pc-page-head .brand{display:flex;align-items:center;gap:12px;color:#fff;font-weight:800;letter-spacing:.06em;}
.pc-page-head .brand .ic{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,#1a3a6e,#2563eb);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:900;}
.pc-page-back{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:transparent;color:#fff;font-family:inherit;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .2s;}
.pc-page-back:hover{background:rgba(255,255,255,.08);}
.pc-page-body{flex:1;padding:60px 6vw 100px;max-width:1000px;margin:0 auto;width:100%;}
.pc-page-kicker{font-size:.78rem;letter-spacing:.4em;text-transform:uppercase;color:#3b82f6;margin-bottom:12px;}
.pc-page-title{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(2.2rem,6vw,3.6rem);color:#fff;margin-bottom:8px;}
.pc-page-sub{color:rgba(255,255,255,.55);font-size:1rem;margin-bottom:48px;line-height:1.7;}
.pc-rule h2{font-family:'Montserrat',sans-serif;font-weight:800;font-size:clamp(1.4rem,3vw,2rem);color:#fff;margin:0 0 6px;display:flex;align-items:baseline;gap:14px;}
.pc-rule h2 .num{color:#2563eb;font-size:.9em;}
.pc-rule .desc{color:#60a5fa;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;font-weight:600;}
.pc-rule .content{color:rgba(255,255,255,.78);line-height:1.85;font-size:.97rem;}
.pc-rules-foot{margin-top:40px;text-align:center;color:rgba(255,255,255,.4);font-size:.85rem;}
.pc-rules-foot a{color:#60a5fa;}
.pc-discord-cta{display:flex;flex-direction:column;align-items:center;gap:18px;border:1px dashed rgba(88,101,242,.5);border-radius:16px;background:rgba(88,101,242,.06);padding:60px 30px;text-align:center;}
.pc-btn-discord{display:inline-flex;align-items:center;gap:12px;padding:15px 32px;border-radius:10px;border:none;background:#5865F2;color:#fff;font-family:inherit;font-weight:700;font-size:.95rem;letter-spacing:.04em;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;}
.pc-btn-discord:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(88,101,242,.45);background:#4752c4;}
.pc-commu-user{display:flex;align-items:center;gap:16px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#0E1422;padding:18px 22px;margin-bottom:34px;flex-wrap:wrap;}
.pc-commu-user img{width:54px;height:54px;border-radius:50%;border:2px solid #2563eb;}
.pc-commu-user .who{flex:1;min-width:150px;}
.pc-commu-user .who b{color:#fff;font-size:1.05rem;display:block;}
.pc-commu-user .who span{color:rgba(255,255,255,.45);font-size:.8rem;}
.pc-commu-user button{padding:9px 18px;border-radius:8px;border:1px solid rgba(239,68,68,.4);background:transparent;color:#f87171;font-family:inherit;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;}
.pc-commu-user button:hover{background:rgba(239,68,68,.12);}
.pc-card-block{margin-bottom:48px;}
.pc-card-block h3{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.3rem;color:#fff;margin-bottom:6px;display:flex;align-items:center;gap:12px;}
.pc-card-block h3 code{font-size:.78rem;background:rgba(37,99,235,.15);color:#93c5fd;padding:4px 10px;border-radius:6px;font-weight:600;}
.pc-card-frame{position:relative;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#080c14;min-height:140px;display:flex;align-items:center;justify-content:center;}
.pc-card-frame img{width:100%;height:auto;display:block;}
.pc-card-frame .err{color:rgba(255,255,255,.4);font-size:.85rem;padding:30px;text-align:center;line-height:1.7;}
.pc-bot-status{font-size:.75rem;margin-left:14px;display:inline-flex;align-items:center;gap:7px;color:rgba(255,255,255,.5);font-weight:400;text-transform:none;letter-spacing:0;}
.pc-bot-status .dot{width:9px;height:9px;border-radius:50%;background:#6b7280;}
.pc-bot-status.on .dot{background:#34d399;box-shadow:0 0 8px rgba(52,211,153,.7);}
.pc-bot-status.off .dot{background:#ef4444;}
@media(max-width:560px){.pc-page-body{padding:40px 5vw 80px;}.pc-rule{padding:24px 20px;}}
/* ═══════════ Casino communautaire — habillage Support & Tickets, accent or ═══════════ */
.pcc-machine{--g:251,191,36;margin-top:2px;padding:18px;border-radius:18px;background:radial-gradient(520px 220px at 50% -10%,rgba(var(--g),.1),transparent 70%),rgba(3,7,18,.45);border:1px solid rgba(var(--g),.18);}
.pcc-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap;}
.pcc-balance{display:flex;align-items:center;gap:12px;}
.pcc-bal-ic{flex:none;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:#fde047;background:rgba(var(--g),.14);box-shadow:inset 0 0 0 1px rgba(var(--g),.32);}
.pcc-bal-ic svg{width:20px;height:20px;}
.pcc-balance small{display:block;font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(148,163,184,.8);}
.pcc-bal-v{position:relative;display:flex;align-items:baseline;gap:6px;}
.pcc-balance b{font-size:1.45rem;font-weight:900;letter-spacing:-.01em;color:#fff;font-variant-numeric:tabular-nums;}
.pcc-pc{font-size:.72rem;font-weight:800;color:#fde047;}
.pcc-delta{position:absolute;left:100%;top:-6px;margin-left:8px;font-style:normal;font-size:.8rem;font-weight:900;white-space:nowrap;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .5s cubic-bezier(.16,1,.3,1);}
.pcc-delta.show{opacity:1;transform:none;}
.pcc-delta.up{color:#34d399;}
.pcc-delta.down{color:#f87171;}

/* Écran et rouleaux */
.pcc-cabinet{display:flex;align-items:stretch;gap:14px;justify-content:center;}
.pcc-screen{position:relative;flex:0 1 auto;padding:14px;border-radius:20px;background:linear-gradient(180deg,#060a16,#0b1224);border:1px solid rgba(var(--g),.3);box-shadow:inset 0 0 40px rgba(0,0,0,.75),0 0 0 5px rgba(255,255,255,.025),0 20px 44px -22px rgba(var(--g),.45);overflow:hidden;}
.pcc-screen::before{content:'';position:absolute;inset:0;background:radial-gradient(80% 50% at 50% 0%,rgba(96,165,250,.14),transparent 70%);pointer-events:none;}
.pcc-reels{position:relative;z-index:1;display:flex;gap:10px;justify-content:center;}
.pcc-reel{position:relative;width:92px;height:276px;overflow:hidden;border-radius:14px;background:linear-gradient(180deg,#0f172a,#111c33 50%,#0f172a);border:1px solid rgba(255,255,255,.06);transition:box-shadow .3s,border-color .3s;}
.pcc-reel::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(6,10,22,.92),transparent 30%,transparent 70%,rgba(6,10,22,.92));}
.pcc-strip{display:flex;flex-direction:column;will-change:transform;}
.pcc-strip.blur{filter:blur(2.2px);}
.pcc-cell{height:92px;display:flex;align-items:center;justify-content:center;user-select:none;}
.pcc-sym{width:60px;height:60px;display:block;filter:drop-shadow(0 6px 8px rgba(0,0,0,.45));}
.pcc-payline{position:absolute;left:8px;right:8px;top:50%;z-index:2;height:92px;transform:translateY(-50%);pointer-events:none;border-radius:12px;box-shadow:inset 0 0 0 2px rgba(var(--g),.5),0 0 18px -4px rgba(var(--g),.45);transition:box-shadow .3s;}
.pcc-payline i{position:absolute;top:50%;width:0;height:0;border:7px solid transparent;transform:translateY(-50%);}
.pcc-payline i:first-child{left:-8px;border-left-color:#fbbf24;}
.pcc-payline i:last-child{right:-8px;border-right-color:#fbbf24;}
@keyframes pcc-loopanim{from{transform:translateY(0);}to{transform:translateY(-552px);}}
.pcc-strip.pcc-loop{animation:pcc-loopanim .4s linear infinite;}
.pcc-reel.pcc-stop{animation:pcc-bounce .22s ease;}
@keyframes pcc-bounce{40%{transform:translateY(5px);}100%{transform:translateY(0);}}
.pcc-reel.pcc-hit{border-color:rgba(var(--g),.6);box-shadow:0 0 24px -4px rgba(var(--g),.7);}
.pcc-reel.pcc-hit .pcc-strip .pcc-cell{animation:pcc-pop .6s cubic-bezier(.16,1,.3,1) 2;}
@keyframes pcc-pop{50%{transform:scale(1.12);}}
.pcc-jackpot .pcc-payline,.pcc-jackpot .pcc-reel{animation:pcc-flash .3s ease 5;}
@keyframes pcc-flash{50%{box-shadow:0 0 36px rgba(var(--g),.95);filter:brightness(1.35);}}
.pcc-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:3;}
.pcc-conf{position:absolute;top:-12px;width:8px;height:13px;border-radius:2px;animation:pcc-fall 1.5s ease-in forwards;}
@keyframes pcc-fall{to{top:110%;opacity:.2;}}

/* Levier */
.pcc-leverbox{position:relative;width:54px;flex:0 0 54px;cursor:grab;display:flex;justify-content:center;touch-action:none;}
.pcc-leverbox:active{cursor:grabbing;}
.pcc-lever-base{position:absolute;left:50%;top:118px;z-index:2;width:34px;height:96px;border-radius:12px;transform:translateX(-50%);background:linear-gradient(90deg,#111a2f,#243049,#111a2f);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 18px rgba(0,0,0,.45);}
.pcc-lever-base::before{content:'';position:absolute;left:50%;top:10px;bottom:10px;width:6px;border-radius:6px;transform:translateX(-50%);background:#050914;box-shadow:inset 0 0 4px rgba(0,0,0,.9);}
.pcc-lever-track{display:none;}
.pcc-lever-stick{position:absolute;top:18px;width:10px;height:118px;border-radius:8px;background:linear-gradient(90deg,#64748b,#e2e8f0,#64748b);box-shadow:0 4px 10px rgba(0,0,0,.5);transition:transform .4s cubic-bezier(.3,1.6,.5,1);}
.pcc-lever-knob{position:absolute;top:-20px;left:50%;width:36px;height:36px;border-radius:50%;transform:translateX(-50%);background:radial-gradient(circle at 35% 30%,#fef3c7,#fbbf24 45%,#b45309);box-shadow:0 6px 16px rgba(245,158,11,.55),inset 0 -3px 6px rgba(0,0,0,.25);transition:transform .2s;}
.pcc-leverbox:hover .pcc-lever-knob{transform:translateX(-50%) scale(1.06);}
.pcc-lever-stick.pcc-pulled{transform:translateY(64px)!important;}

/* Résultat */
.pcc-result{--r:148,163,184;display:flex;align-items:center;justify-content:center;gap:10px;margin:16px auto 4px;max-width:520px;min-height:46px;padding:10px 16px;border-radius:14px;text-align:left;font-size:.86rem;font-weight:600;line-height:1.5;color:rgba(226,232,240,.88);background:rgba(var(--r),.08);box-shadow:inset 0 0 0 1px rgba(var(--r),.22);transition:background .3s,box-shadow .3s;}
.pcc-res-ic{flex:none;width:28px;height:28px;border-radius:9px;display:grid;place-items:center;color:rgb(var(--r));background:rgba(var(--r),.15);}
.pcc-res-ic svg{width:16px;height:16px;}
.pcc-result b{color:#fff;}
.pcc-result small{color:rgba(148,163,184,.85);font-weight:600;}
.pcc-result .up{color:#34d399;}
.pcc-result .down{color:#f87171;}
.pcc-result.win{--r:251,191,36;}
.pcc-result.lose{--r:248,113,113;}
.pcc-result.warn{--r:248,113,113;color:#fecaca;}
.pcc-machine.spinning .pcc-res-ic svg{animation:pcxSpin 1.2s linear infinite;}

/* Mise et lancement */
.pcc-controls{margin-top:14px;display:flex;flex-direction:column;align-items:center;gap:12px;}
.pcc-betrow{display:flex;align-items:center;gap:8px;padding:6px;border-radius:999px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);}
.pcc-step{width:42px;height:42px;display:grid;place-items:center;padding:0;border:none;border-radius:50%;cursor:pointer;color:#fff;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:background .2s,transform .15s;}
.pcc-step svg{width:16px;height:16px;}
.pcc-step:hover:not(:disabled){background:rgba(var(--g),.2);}
.pcc-step:active:not(:disabled){transform:scale(.92);}
.pcc-step:disabled{opacity:.4;cursor:not-allowed;}
.pcc-betfield{display:flex;flex-direction:column;align-items:center;min-width:140px;padding:2px 10px;cursor:text;}
.pcc-betfield span{font-size:.58rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.8);}
.pcc-betfield input{width:120px;text-align:center;background:none;border:none;color:#fde047;font-family:inherit;font-size:1.45rem;font-weight:900;font-variant-numeric:tabular-nums;outline:none;-moz-appearance:textfield;padding:0;}
.pcc-betfield input::-webkit-outer-spin-button,.pcc-betfield input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.pcc-betfield em{font-style:normal;font-size:.62rem;font-weight:800;color:rgba(253,224,71,.6);margin-top:-2px;}
.pcc-betfield:focus-within{border-radius:14px;box-shadow:0 0 0 2px rgba(var(--g),.45);}
.pcc-quick{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;}
.pcc-quick button{height:32px;padding:0 14px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.72rem;font-weight:800;color:rgba(226,232,240,.8);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:background .2s,color .2s,box-shadow .2s;}
.pcc-quick button:hover:not(:disabled){color:#fff;background:rgba(var(--g),.16);box-shadow:inset 0 0 0 1px rgba(var(--g),.4);}
.pcc-quick button.on{color:#1c1300;background:#fbbf24;box-shadow:none;}
.pcc-quick button:disabled{opacity:.4;cursor:not-allowed;}
.pcc-spin-btn{display:inline-flex;align-items:center;gap:10px;height:52px;margin-top:4px;padding:0 34px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#1c1300;background:linear-gradient(135deg,#fde047,#fbbf24 45%,#f59e0b);box-shadow:0 12px 26px -8px rgba(245,158,11,.75),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .2s,box-shadow .2s,filter .2s;}
.pcc-spin-btn svg{width:18px;height:18px;}
.pcc-spin-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 32px -8px rgba(245,158,11,.9),inset 0 1px 0 rgba(255,255,255,.5);}
.pcc-spin-btn:active:not(:disabled){transform:translateY(1px);}
.pcc-spin-btn.busy{filter:grayscale(.4) brightness(.8);cursor:wait;}
.pcc-spin-btn:disabled{cursor:not-allowed;}
.pcc-spin-btn:focus-visible,.pcc-quick button:focus-visible,.pcc-step:focus-visible,.pcc-paytable summary:focus-visible{outline:2px solid #fbbf24;outline-offset:2px;}

/* Table des gains */
.pcc-paytable{margin-top:18px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);overflow:hidden;}
.pcc-paytable summary{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none;user-select:none;font-size:.86rem;font-weight:800;color:#fff;}
.pcc-paytable summary::-webkit-details-marker{display:none;}
.pcc-paytable summary em{font-style:normal;font-size:.72rem;font-weight:600;color:rgba(148,163,184,.8);}
.pcc-pt-ic{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:#fde047;background:rgba(var(--g),.12);}
.pcc-pt-ic svg{width:15px;height:15px;}
.pcc-chev{width:18px;height:18px;margin-left:auto;color:rgba(148,163,184,.8);transition:transform .3s cubic-bezier(.16,1,.3,1);}
.pcc-paytable[open] .pcc-chev{transform:rotate(180deg);}
.pcc-pt-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;padding:4px 14px 0;}
.pcc-pt-row{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:12px;background:rgba(255,255,255,.03);}
.pcc-pt-row.top{background:rgba(var(--g),.07);box-shadow:inset 0 0 0 1px rgba(var(--g),.18);}
.pcc-pt-sym{display:flex;gap:2px;min-width:78px;}
.pcc-pt-sym .pcc-sym{width:24px;height:24px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.4));}
.pcc-pt-name{flex:1;min-width:0;color:rgba(226,232,240,.8);font-size:.8rem;font-weight:600;}
.pcc-pt-coef{color:#fde047;font-weight:900;font-size:.86rem;font-variant-numeric:tabular-nums;}
.pcc-pt-foot{margin:0;padding:12px 14px 14px;font-size:.78rem;font-weight:500;color:rgba(148,163,184,.85);line-height:1.6;}
.pcc-pt-foot b{color:#fde047;}

@media(max-width:560px){
  .pcc-machine{padding:14px 12px;}
  .pcc-cabinet{gap:8px;}
  .pcc-screen{padding:10px;border-radius:16px;}
  .pcc-reels{gap:6px;}
  .pcc-reel{width:64px;height:192px;border-radius:11px;}
  .pcc-cell{height:64px;}
  .pcc-sym{width:44px;height:44px;}
  .pcc-payline{height:64px;left:6px;right:6px;border-radius:10px;}
  @keyframes pcc-loopanim{from{transform:translateY(0);}to{transform:translateY(-384px);}}
  .pcc-leverbox{width:40px;flex-basis:40px;}
  .pcc-lever-base{width:28px;top:100px;height:84px;}
  .pcc-lever-stick{height:100px;}
  .pcc-quick{gap:5px;}
  .pcc-quick button{padding:0 11px;}
  .pcc-topbar .pcx-btn span{display:none;}
  .pcc-topbar .pcx-btn{width:36px;padding:0;}
  .pcc-betfield{min-width:110px;}
  .pcc-betfield input{width:100px;font-size:1.3rem;}
  .pcc-pt-grid{grid-template-columns:1fr;}
  .pcc-paytable summary em{display:none;}
  .pcc-spin-btn{width:100%;justify-content:center;padding:0 20px;}
  .pcc-result{font-size:.8rem;}
}
@media (prefers-reduced-motion:reduce){
  .pcc-reel.pcc-hit .pcc-strip .pcc-cell,.pcc-jackpot .pcc-payline,.pcc-jackpot .pcc-reel,.pcc-machine.spinning .pcc-res-ic svg{animation:none;}
}


/* ───── bloc sans id ───── */
/* ═══════════ Page Règlement — habillage Support & Tickets / boîte mail ═══════════ */
#pc-page-rules{--prl-dur:.45s;--prl-ease:cubic-bezier(.22,1,.36,1);background:radial-gradient(900px 420px at 8% -8%,rgba(37,99,235,.2),transparent 70%),radial-gradient(700px 380px at 100% 30%,rgba(139,92,246,.07),transparent 70%),linear-gradient(180deg,#0e162c,#080d1c 60%,#070b17);color:#e5edff;font-family:'Montserrat',system-ui,sans-serif;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(96,165,250,.35) transparent;}
#pc-page-rules::-webkit-scrollbar{width:8px;}
#pc-page-rules::-webkit-scrollbar-thumb{background:rgba(96,165,250,.3);border-radius:99px;}
#pc-page-rules *{box-sizing:border-box;}
#pc-page-rules .pc-page-head{background:rgba(9,14,30,.82);border-bottom-color:rgba(255,255,255,.06);}
#pc-page-rules .pc-page-head .brand .ic{border-radius:12px;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 10px 24px -6px rgba(37,99,235,.7),inset 0 1px 0 rgba(255,255,255,.2);color:#fff;}
#pc-page-rules .pc-page-back{height:38px;padding:0 16px;border:none;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.06em;color:rgba(226,232,240,.9);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:background .2s,color .2s,box-shadow .2s;}
#pc-page-rules .pc-page-back:hover{color:#fff;background:rgba(37,99,235,.22);box-shadow:inset 0 0 0 1px rgba(96,165,250,.5);}
.prl-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;}
.prl-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#1d4ed8,#60a5fa);box-shadow:0 0 10px rgba(96,165,250,.8);transition:width .1s linear;}
#pc-page-rules .pc-page-body{max-width:1120px;padding:48px 6vw 100px;}

/* En-tête */
.prl-hero{display:flex;align-items:center;gap:20px;margin-bottom:18px;}
.prl-hic{flex:none;width:64px;height:64px;border-radius:20px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 16px 34px -8px rgba(37,99,235,.75),inset 0 1px 0 rgba(255,255,255,.22);}
.prl-hic svg{width:30px;height:30px;}
#pc-page-rules .pc-page-title{margin:0;font-size:clamp(2rem,5vw,3rem);font-weight:900;letter-spacing:-.02em;line-height:1.05;}
#pc-page-rules .pc-page-sub{margin:8px 0 0;max-width:620px;font-size:.95rem;font-weight:500;line-height:1.65;color:rgba(203,213,225,.75);}
.prl-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 34px 84px;}
.prl-pill{--c:96,165,250;display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 12px;border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;text-decoration:none;color:rgb(var(--c));background:rgba(var(--c),.13);}
.prl-pill svg{width:13px;height:13px;}
a.prl-pill{transition:background .2s,box-shadow .2s;}
a.prl-pill:hover{background:rgba(var(--c),.22);box-shadow:inset 0 0 0 1px rgba(var(--c),.4);}

/* Mise en page : sommaire + règles */
.prl-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start;}
.prl-toc{position:sticky;top:96px;display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);}
.prl-search{position:relative;}
.prl-search svg{position:absolute;left:13px;top:50%;width:16px;height:16px;transform:translateY(-50%);color:rgba(148,163,184,.7);pointer-events:none;}
.prl-search input{width:100%;height:42px;padding:0 36px 0 38px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(3,7,18,.5);color:#fff;font-family:inherit;font-size:.84rem;font-weight:500;transition:border-color .2s,background .2s,box-shadow .2s;}
.prl-search input::placeholder{color:rgba(148,163,184,.55);}
.prl-search input:focus{outline:none;border-color:rgba(96,165,250,.6);background:rgba(3,7,18,.7);box-shadow:0 0 0 4px rgba(37,99,235,.15);}
.prl-search input::-webkit-search-cancel-button{display:none;}
.prl-clear{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:none;border-radius:50%;display:none;place-items:center;cursor:pointer;color:rgba(226,232,240,.7);background:rgba(255,255,255,.06);}
.prl-clear.on{display:grid;}
.prl-clear:hover{color:#fff;background:rgba(255,255,255,.12);}
.prl-toc-label{padding:4px 6px 0;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.7);}
.prl-toc-list{position:relative;display:flex;flex-direction:column;gap:2px;max-height:calc(100vh - 290px);overflow:auto;scrollbar-width:none;}
.prl-toc-list::-webkit-scrollbar{display:none;}
.prl-toc-item{--c:96,165,250;position:relative;z-index:1;display:flex;align-items:center;gap:11px;width:100%;padding:9px 10px;border:none;border-radius:12px;background:none;cursor:pointer;text-align:left;font-family:inherit;font-size:.8rem;font-weight:700;color:rgba(203,213,225,.72);transition:color var(--prl-dur) var(--prl-ease);}
.prl-toc-item .n{flex:none;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-size:.66rem;font-weight:800;font-variant-numeric:tabular-nums;color:rgb(var(--c));background:rgba(var(--c),.12);transition:background var(--prl-dur) var(--prl-ease),color var(--prl-dur) var(--prl-ease);}
.prl-toc-item .t{min-width:0;overflow:hidden;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.prl-toc-item:hover{color:#fff;}
.prl-toc-item.on{color:#fff;}
.prl-toc-ind{--c:96,165,250;position:absolute;left:0;top:0;width:0;height:0;border-radius:12px;pointer-events:none;z-index:0;opacity:0;background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.35);transition:transform var(--prl-dur) var(--prl-ease),width var(--prl-dur) var(--prl-ease),height var(--prl-dur) var(--prl-ease),background-color var(--prl-dur) var(--prl-ease),box-shadow var(--prl-dur) var(--prl-ease),opacity .2s;}
.prl-toc-ind.on{opacity:1;}
.prl-toc-ind.instant{transition:none;}
.prl-toc-item.on .n{color:#fff;background:rgb(var(--c));}
.prl-toc-item[hidden]{display:none;}

/* Règles */
.prl-list{display:flex;flex-direction:column;gap:14px;}
#pc-page-rules .pc-rule{--c:96,165,250;position:relative;display:flex;gap:18px;margin:0;padding:24px 26px;border-radius:20px;scroll-margin-top:100px;background-color:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);transition:background-color var(--prl-dur) var(--prl-ease),border-color var(--prl-dur) var(--prl-ease),box-shadow var(--prl-dur) var(--prl-ease);}
#pc-page-rules .pc-rule::before{content:'';position:absolute;left:-1px;top:22px;bottom:22px;width:3px;border-radius:0 3px 3px 0;background:rgb(var(--c));box-shadow:0 0 12px rgba(var(--c),.8);opacity:0;transform:scaleY(.35);transition:opacity var(--prl-dur) var(--prl-ease),transform var(--prl-dur) var(--prl-ease);}
#pc-page-rules .pc-rule.on{background-color:rgba(var(--c),.06);border-color:rgba(var(--c),.32);box-shadow:0 18px 40px -24px rgba(var(--c),.55);}
#pc-page-rules .pc-rule.on::before{opacity:1;transform:none;}
#pc-page-rules .pc-rule[hidden]{display:none;}
.prl-num{flex:none;width:48px;height:48px;border-radius:15px;display:grid;place-items:center;font-size:1rem;font-weight:900;font-variant-numeric:tabular-nums;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.3);transition:background-color var(--prl-dur) var(--prl-ease),color var(--prl-dur) var(--prl-ease),box-shadow var(--prl-dur) var(--prl-ease);}
#pc-page-rules .pc-rule.on .prl-num{color:#fff;background-color:rgba(var(--c),.85);box-shadow:0 8px 20px -6px rgba(var(--c),.7);}
.prl-main{flex:1;min-width:0;}
#pc-page-rules .pc-rule .desc{display:inline-flex;align-items:center;height:24px;margin:0 0 8px;padding:0 10px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--c));background:rgba(var(--c),.13);}
#pc-page-rules .pc-rule h2{display:block;margin:0 0 10px;font-family:inherit;font-size:clamp(1.15rem,2.4vw,1.4rem);font-weight:800;letter-spacing:-.01em;line-height:1.3;color:#fff;}
#pc-page-rules .pc-rule .content{color:rgba(226,232,240,.82);font-size:.93rem;font-weight:500;line-height:1.75;}
#pc-page-rules .pc-rule .content p{margin:0;}
#pc-page-rules .pc-rule .content p+p{margin-top:8px;}
#pc-page-rules .pc-rule mark{color:#fff;background:rgba(var(--c),.3);border-radius:4px;padding:0 2px;}

/* Aucun résultat / vide */
.prl-none{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 20px;text-align:center;border-radius:20px;border:1px dashed rgba(255,255,255,.12);color:rgba(148,163,184,.85);font-size:.86rem;font-weight:600;}
.prl-none[hidden],.prl-layout[hidden]{display:none;}
.rule-card.rule-more{display:block;text-decoration:none;color:inherit;cursor:pointer;}
.rule-card.rule-more .rule-icon-wrap{font-size:1rem;}
.prl-new{animation:prlNew 1.6s var(--prl-ease) 1;}
@keyframes prlNew{0%{box-shadow:0 0 0 0 rgba(var(--c),.55);}100%{box-shadow:0 0 0 14px rgba(var(--c),0);}}
.prl-none b{color:#fff;font-size:1rem;font-weight:800;}
.prl-none-ic{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;color:#60a5fa;background:rgba(37,99,235,.12);box-shadow:inset 0 0 0 1px rgba(96,165,250,.25);}
.prl-none-ic svg{width:26px;height:26px;}

/* Pied : GitBook */
.prl-foot{display:flex;align-items:center;gap:16px;margin-top:10px;text-align:left;padding:20px 22px;border-radius:20px;background:linear-gradient(90deg,rgba(37,99,235,.12),rgba(255,255,255,.03) 70%);border:1px solid rgba(96,165,250,.22);}
.prl-foot-ic{flex:none;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:#60a5fa;background:rgba(37,99,235,.14);box-shadow:inset 0 0 0 1px rgba(96,165,250,.3);}
.prl-foot-ic svg{width:21px;height:21px;}
.prl-foot-txt{flex:1;min-width:0;}
.prl-foot-txt b{display:block;color:#fff;font-size:.95rem;font-weight:800;}
.prl-foot-txt span{font-size:.8rem;font-weight:500;color:rgba(203,213,225,.72);}
.prl-btn{flex:none;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:#fff;background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 8px 18px -6px rgba(37,99,235,.8);transition:transform .2s,box-shadow .2s;}
.prl-btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px -6px rgba(37,99,235,.95);}
.prl-btn svg{width:14px;height:14px;}

#pc-page-rules .pc-page-back:focus-visible,.prl-toc-item:focus-visible,.prl-btn:focus-visible,a.prl-pill:focus-visible,.prl-clear:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}

@media (max-width:900px){
  .prl-layout{grid-template-columns:minmax(0,1fr);gap:16px;}
  .prl-toc,.prl-list{min-width:0;}
  .prl-toc-item .t{white-space:nowrap;display:block;}
  .prl-toc{position:static;padding:10px;}
  .prl-toc-label{display:none;}
  .prl-toc-list{flex-direction:row;max-height:none;overflow-x:auto;gap:6px;}
  .prl-toc-item{flex:none;width:auto;padding:6px 12px 6px 6px;}
  .prl-toc-item .t{max-width:170px;}
  .prl-meta{margin-left:0;}
}
@media (max-width:560px){
  #pc-page-rules .pc-page-body{padding:28px 4vw 90px;}
  .prl-search input{font-size:16px;}
  .prl-hero{gap:14px;align-items:flex-start;}
  .prl-hic{width:50px;height:50px;border-radius:16px;}
  .prl-hic svg{width:24px;height:24px;}
  #pc-page-rules .pc-rule{padding:18px 16px;gap:13px;border-radius:18px;}
  .prl-num{width:40px;height:40px;border-radius:13px;font-size:.88rem;}
  .prl-foot{flex-wrap:wrap;}
  .prl-btn{width:100%;justify-content:center;}
}
@media (prefers-reduced-motion:reduce){
  #pc-page-rules{scroll-behavior:auto;}
  .prl-progress i,.prl-toc-ind,#pc-page-rules .pc-rule,#pc-page-rules .pc-rule::before,.prl-num,.prl-toc-item,.prl-toc-item .n{transition:none!important;}
}

/* ───── bloc sans id ───── */
/* ═══════════ Page Communauté — habillage Support & Tickets / boîte mail ═══════════ */
#pc-page-commu{--pcx-dur:.35s;--pcx-ease:cubic-bezier(.16,1,.3,1);background:radial-gradient(900px 420px at 8% -8%,rgba(37,99,235,.2),transparent 70%),radial-gradient(700px 380px at 100% 30%,rgba(88,101,242,.08),transparent 70%),linear-gradient(180deg,#0e162c,#080d1c 60%,#070b17);color:#e5edff;font-family:'Montserrat',system-ui,sans-serif;scrollbar-width:thin;scrollbar-color:rgba(96,165,250,.35) transparent;}
#pc-page-commu::-webkit-scrollbar{width:8px;}
#pc-page-commu::-webkit-scrollbar-thumb{background:rgba(96,165,250,.3);border-radius:99px;}
#pc-page-commu .pcx-root *,#pc-page-commu .pc-page-head *{box-sizing:border-box;}
#pc-page-commu .pc-page-head{background:rgba(9,14,30,.82);border-bottom-color:rgba(255,255,255,.06);}
#pc-page-commu .pc-page-head .brand .ic{border-radius:12px;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 10px 24px -6px rgba(37,99,235,.7),inset 0 1px 0 rgba(255,255,255,.2);color:#fff;}
#pc-page-commu .pc-page-back{height:38px;padding:0 16px;border:none;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.06em;color:rgba(226,232,240,.9);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:background .2s,color .2s,box-shadow .2s;}
#pc-page-commu .pc-page-back:hover{color:#fff;background:rgba(37,99,235,.22);box-shadow:inset 0 0 0 1px rgba(96,165,250,.5);}
#pc-page-commu .pc-bot-status{--c:148,163,184;display:inline-flex;align-items:center;vertical-align:middle;line-height:1;height:26px;margin-left:12px;padding:0 11px;border-radius:999px;gap:7px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--c));background:rgba(var(--c),.12);}
#pc-page-commu .pc-bot-status.on{--c:52,211,153;}
#pc-page-commu .pc-bot-status.off{--c:248,113,113;}
#pc-page-commu .pc-bot-status .dot{display:block;flex:none;border-radius:50%;width:7px;height:7px;background:rgb(var(--c));box-shadow:0 0 8px rgba(var(--c),.9);}
#pc-page-commu .pc-page-body{box-sizing:border-box;max-width:900px;padding:48px 6vw 100px;}
#pc-page-commu .pc-page-back{white-space:nowrap;}
.pcx-hero>div{min-width:0;}

/* En-tête */
.pcx-hero{display:flex;align-items:center;gap:20px;margin-bottom:30px;}
.pcx-hic{flex:none;width:64px;height:64px;border-radius:20px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 16px 34px -8px rgba(37,99,235,.75),inset 0 1px 0 rgba(255,255,255,.22);}
.pcx-hic svg{width:30px;height:30px;}
#pc-page-commu .pc-page-title{margin:0;font-size:clamp(2rem,5vw,3rem);font-weight:900;letter-spacing:-.02em;line-height:1.05;}
#pc-page-commu .pc-page-sub{margin:8px 0 0;max-width:600px;font-size:.95rem;font-weight:500;line-height:1.65;color:rgba(203,213,225,.75);}
.pcx-root{display:flex;flex-direction:column;gap:16px;}

/* Boutons */
.pcx-btn{--c:37,99,235;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 20px;border:none;border-radius:999px;cursor:pointer;font-family:inherit;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;white-space:nowrap;color:#fff;transition:background .2s,color .2s,box-shadow .2s,transform .2s,opacity .2s;}
.pcx-btn svg{width:15px;height:15px;flex:none;}
.pcx-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;}
.pcx-btn.primary{background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 8px 18px -6px rgba(37,99,235,.8);}
.pcx-btn.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 24px -6px rgba(37,99,235,.95);}
.pcx-btn.discord{background:#5865f2;box-shadow:0 10px 24px -8px rgba(88,101,242,.9);}
.pcx-btn.discord:hover:not(:disabled){background:#4752e0;transform:translateY(-1px);}
.pcx-btn.discord svg{width:19px;height:19px;}
.pcx-btn.success{background:linear-gradient(135deg,#059669,#10b981);box-shadow:0 8px 18px -6px rgba(16,185,129,.7);}
.pcx-btn.success:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 24px -6px rgba(16,185,129,.85);}
.pcx-btn.ghost{color:rgba(226,232,240,.88);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.pcx-btn.ghost:hover:not(:disabled){color:#fff;background:rgba(255,255,255,.1);}
.pcx-btn.danger{color:#fca5a5;background:rgba(239,68,68,.1);box-shadow:inset 0 0 0 1px rgba(248,113,113,.32);}
.pcx-btn.danger:hover:not(:disabled){color:#fecaca;background:rgba(239,68,68,.2);box-shadow:inset 0 0 0 1px rgba(248,113,113,.55);}
.pcx-btn.sm{height:34px;padding:0 14px;}
.pcx-btn.icon{width:36px;height:36px;padding:0;}
.pcx-pill{--c:96,165,250;display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;color:rgb(var(--c));background:rgba(var(--c),.13);}
.pcx-pill svg{width:12px;height:12px;}
.pcx-pill.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em;text-transform:none;font-size:.7rem;}

/* Carte du compte */
.pcx-user{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:20px;background:linear-gradient(90deg,rgba(37,99,235,.12),rgba(255,255,255,.03) 70%);border:1px solid rgba(96,165,250,.22);}
.pcx-av{position:relative;flex:none;width:56px;height:56px;}
.pcx-av img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;background:#0b1428;box-shadow:0 0 0 2px rgba(96,165,250,.55),0 8px 20px -6px rgba(37,99,235,.7);}
.pcx-av::after{content:'';position:absolute;right:1px;bottom:1px;width:13px;height:13px;border-radius:50%;background:#34d399;border:2px solid #0d1630;}
.pcx-who{flex:1;min-width:0;}
.pcx-who b{display:block;font-size:1.05rem;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pcx-who .row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;}
.pcx-who .at{font-size:.78rem;font-weight:600;color:rgba(148,163,184,.85);}
.pcx-user-act{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
.pcx-user-act .ask{font-size:.76rem;font-weight:700;color:rgba(203,213,225,.85);}

/* Panneau d'état (connexion, règlement, personnage…) */
.pcx-state{--c:96,165,250;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:40px 28px 34px;border-radius:22px;overflow:hidden;
  background:radial-gradient(420px 200px at 50% 0%,rgba(var(--c),.14),transparent 75%),rgba(255,255,255,.03);border:1px solid rgba(var(--c),.25);}
.pcx-state-ic{width:68px;height:68px;border-radius:21px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.32),0 14px 30px -12px rgba(var(--c),.6);margin-bottom:4px;}
.pcx-state-ic svg{width:30px;height:30px;}
.pcx-state.discord .pcx-state-ic{color:#fff;background:linear-gradient(135deg,#4752e0,#5865f2);box-shadow:0 14px 30px -8px rgba(88,101,242,.8),inset 0 1px 0 rgba(255,255,255,.2);}
.pcx-state.discord .pcx-state-ic svg{width:34px;}
.pcx-state h3{margin:0;font-size:1.3rem;font-weight:800;letter-spacing:-.01em;color:#fff;}
.pcx-state p{margin:0;max-width:500px;font-size:.9rem;font-weight:500;line-height:1.7;color:rgba(203,213,225,.78);}
.pcx-state .note{font-size:.76rem;color:rgba(148,163,184,.75);}
.pcx-state .err{color:#fca5a5;}
.pcx-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:8px;}
.pcx-msg{min-height:1em;font-size:.82rem;font-weight:700;color:#fca5a5;}
.pcx-msg:empty{display:none;}

/* Parcours d'arrivée */
.pcx-steps{display:flex;align-items:center;justify-content:center;gap:0;margin:0 0 10px;flex-wrap:wrap;row-gap:10px;}
.pcx-step{display:flex;align-items:center;gap:8px;font-size:.72rem;font-weight:800;color:rgba(148,163,184,.6);}
.pcx-step i{font-style:normal;width:24px;height:24px;border-radius:8px;display:grid;place-items:center;font-size:.66rem;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);}
.pcx-step i svg{width:12px;height:12px;}
.pcx-step.done{color:rgba(167,243,208,.9);}
.pcx-step.done i{color:#fff;background:#10b981;box-shadow:none;}
.pcx-step.cur{color:#fff;}
.pcx-step.cur i{color:#fff;background:rgb(var(--c));box-shadow:0 0 0 4px rgba(var(--c),.2);}
.pcx-step-sep{width:28px;height:2px;margin:0 8px;border-radius:2px;background:rgba(255,255,255,.1);}
.pcx-step-sep.done{background:rgba(16,185,129,.6);}

/* Chargement */
.pcx-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px 20px;border-radius:20px;border:1px dashed rgba(255,255,255,.1);font-size:.86rem;font-weight:600;color:rgba(148,163,184,.85);}
.pcx-spin{width:22px;height:22px;border-radius:50%;border:3px solid rgba(96,165,250,.18);border-top-color:#60a5fa;animation:pcxSpin .8s linear infinite;}
@keyframes pcxSpin{to{transform:rotate(360deg);}}

/* Cartes générées par le bot */
#pc-page-commu .pc-card-block{margin:0;padding:18px;border-radius:22px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);}
.pcx-card-head{--c:96,165,250;display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.pcx-card-ic{flex:none;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.3);}
.pcx-card-ic svg{width:21px;height:21px;}
.pcx-card-txt{flex:1;min-width:0;}
#pc-page-commu .pcx-card-txt h3{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0;font-family:inherit;font-size:1.02rem;font-weight:800;color:#fff;}
.pcx-card-txt>span{display:block;margin-top:3px;font-size:.76rem;font-weight:600;color:rgba(148,163,184,.8);}
.pcx-card-act{flex:none;display:flex;flex-wrap:nowrap;align-items:center;gap:8px;}
.pcx-card-act .pcx-btn{margin:0;}
#pc-page-commu .pc-card-frame{min-height:0;aspect-ratio:var(--ar,3.3/1);border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(3,7,18,.55);}
#pc-page-commu .pc-card-frame img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;opacity:0;transform:scale(.985);transition:opacity .45s var(--pcx-ease),transform .45s var(--pcx-ease);}
#pc-page-commu .pc-card-frame.ready img{opacity:1;transform:none;}
#pc-page-commu .pc-card-frame::before{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(96,165,250,.08) 50%,transparent 70%);background-size:220% 100%;animation:pcxShimmer 1.3s linear infinite;}
#pc-page-commu .pc-card-frame.ready::before,#pc-page-commu .pc-card-frame.failed::before{display:none;}
@keyframes pcxShimmer{from{background-position:120% 0;}to{background-position:-120% 0;}}
#pc-page-commu .pc-card-frame .err{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px;color:rgba(148,163,184,.9);font-size:.82rem;font-weight:600;line-height:1.6;}
#pc-page-commu .pc-card-frame .err b{color:#fff;font-size:.92rem;}
.pcx-btn[aria-disabled="true"]{opacity:.45;pointer-events:none;}
.pcx-refresh-ic{transition:transform .5s var(--pcx-ease);}
.pcx-btn:hover .pcx-btn[aria-disabled="true"]{opacity:.45;pointer-events:none;}
.pcx-refresh-ic{transform:rotate(-120deg);}


#pc-page-commu .pc-page-back:focus-visible,.pcx-btn:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}

@media (max-width:640px){
  #pc-page-commu .pc-page-body{padding:28px 4vw 90px;}
  #pc-page-commu .pc-page-head{padding:14px 4vw;}
  #pc-page-commu .pc-page-back{padding:0 13px;font-size:.64rem;}
  #pc-page-commu .pc-bot-status .txt{display:none;}
  #pc-page-commu .pc-bot-status{width:26px;padding:0;justify-content:center;}
  .pcx-hero{gap:14px;align-items:flex-start;}
  .pcx-hic{width:50px;height:50px;border-radius:16px;}
  .pcx-hic svg{width:24px;height:24px;}
  .pcx-user{flex-wrap:wrap;padding:14px;}
  .pcx-user-act{width:100%;justify-content:stretch;}
  .pcx-user-act .pcx-btn{flex:1;}
  .pcx-user-act .ask{width:100%;text-align:center;}
  .pcx-state{padding:30px 18px 26px;}
  .pcx-actions .pcx-btn{width:100%;}
  .pcx-step span{display:none;}
  .pcx-step-sep{width:18px;margin:0 5px;}
  #pc-page-commu .pc-card-block{padding:14px;}
  .pcx-card-act .pcx-btn span{display:none;}
  .pcx-card-act .pcx-btn{width:36px;padding:0;}
}
@media (prefers-reduced-motion:reduce){
  #pc-page-commu .pc-card-frame::before{animation:none;}
  #pc-page-commu .pc-card-frame img{transition:none;}
}

/* ───── bloc sans id ───── */
/* ═══════════════ Porte RolePlay : « Poste d'entrée de Sarasota » ═══════════════
   Même univers que le panel RP : bleu nuit, halo bleu, verre sombre. La ville
   la nuit en silhouette, et la carte de résident du personnage qu'on présente
   pour entrer. Un seul moment fort : le tampon, puis la carte qui s'avance
   vers l'écran pendant que la ville se fond dans le bleu du panel.
   Les couleurs viennent des variables du panel (--rph-*) : la page suit
   donc aussi le thème choisi par le joueur. */
#pc-page-roleplay{
  --gx-horizon:74%;
  background:var(--rph-b1);overflow:hidden;font-family:'Montserrat',sans-serif;color:#e5edff;
}
#pc-page-roleplay.open{animation:none;}
#pc-page-roleplay.closing{animation:rpxLeave .32s ease forwards;}
@keyframes rpxLeave{to{opacity:0;}}

/* ── Décor : nuit bleue ── */
.rpx-scene{position:absolute;inset:0;overflow:hidden;transform-origin:50% 38%;}
.rpx-bg{position:absolute;inset:0;
  background:
    radial-gradient(60% 46% at 50% 30%,rgba(var(--rph-a3-rgb),.22),transparent 70%),
    radial-gradient(90% 60% at 50% 110%,rgba(var(--rph-a1-rgb),.28),transparent 70%),
    linear-gradient(180deg,#04070f 0%,var(--rph-b2) 42%,var(--rph-b3) 78%,var(--rph-b1) 100%);}
/* trame de points, comme un plan de la ville, qui s'estompe vers les bords */
.rpx-grid{position:absolute;inset:0;opacity:.5;
  background-image:radial-gradient(rgba(var(--rph-a4-rgb),.28) 1px,transparent 1.4px);background-size:26px 26px;
  -webkit-mask:radial-gradient(55% 50% at 50% 34%,#000 10%,transparent 75%);mask:radial-gradient(55% 50% at 50% 34%,#000 10%,transparent 75%);}
/* faisceau lent derrière la carte */
.rpx-beam{position:absolute;left:50%;top:34%;width:140vmax;height:140vmax;transform:translate(-50%,-50%);opacity:.55;pointer-events:none;
  background:conic-gradient(from 0deg,transparent 0 40deg,rgba(var(--rph-a3-rgb),.10) 60deg,transparent 80deg 200deg,rgba(var(--rph-a4-rgb),.08) 220deg,transparent 240deg);
  -webkit-mask:radial-gradient(closest-side,#000 20%,transparent 70%);mask:radial-gradient(closest-side,#000 20%,transparent 70%);
  animation:rpxSpin 60s linear infinite;}
@keyframes rpxSpin{to{transform:translate(-50%,-50%) rotate(360deg);}}
.rpx-stars{position:absolute;inset:0 0 40% 0;opacity:.55;
  background-image:
    radial-gradient(1.2px 1.2px at 12% 18%,#dbeafe 60%,transparent),radial-gradient(1px 1px at 27% 8%,#bfdbfe 60%,transparent),
    radial-gradient(1.3px 1.3px at 41% 26%,#dbeafe 60%,transparent),radial-gradient(1px 1px at 58% 12%,#bfdbfe 60%,transparent),
    radial-gradient(1.2px 1.2px at 72% 22%,#dbeafe 60%,transparent),radial-gradient(1px 1px at 86% 9%,#bfdbfe 60%,transparent),
    radial-gradient(1px 1px at 93% 31%,#dbeafe 60%,transparent),radial-gradient(1px 1px at 6% 36%,#bfdbfe 60%,transparent),
    radial-gradient(1.2px 1.2px at 34% 40%,#dbeafe 60%,transparent),radial-gradient(1px 1px at 66% 38%,#bfdbfe 60%,transparent);
  animation:rpxTwinkle 5s ease-in-out infinite alternate;}
@keyframes rpxTwinkle{from{opacity:.35;}to{opacity:.65;}}
/* la ville : peinte en canvas par le script « skyline de Sarasota » plus bas */
.rpx-city{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;}
.rpx-ground{position:absolute;left:0;right:0;top:calc(var(--gx-horizon) - 1px);bottom:0;
  background:linear-gradient(180deg,#070d1d 0%,var(--rph-b1) 60%,#03050b 100%);}
/* reflets de la ville sur la baie */
.rpx-bay{position:absolute;left:0;right:0;top:0;height:60%;opacity:.35;
  background:repeating-linear-gradient(180deg,rgba(var(--rph-a4-rgb),.35) 0 1px,transparent 1px 10px);
  -webkit-mask:radial-gradient(45% 100% at 50% 0,#000 10%,transparent 75%);mask:radial-gradient(45% 100% at 50% 0,#000 10%,transparent 75%);
  animation:rpxBay 4s ease-in-out infinite alternate;}
@keyframes rpxBay{from{opacity:.22;}to{opacity:.4;}}
/* cocotiers en contre-jour, peints en canvas (voir script plus bas) */
.rpx-palm{position:absolute;bottom:-2vh;height:min(78vh,720px);aspect-ratio:520/720;display:block;pointer-events:none;transform-origin:50% 100%;}
.rpx-palm.l{left:-3vw;}
.rpx-palm.r{right:-4vw;height:min(64vh,600px);}
/* onde bleue de l'entrée en ville (posée par le script au centre de la carte) */
.rpx-pulse{position:absolute;width:0;height:0;border-radius:50%;pointer-events:none;z-index:6;transform:translate(-50%,-50%);
  border:2px solid rgba(var(--rph-a4-rgb),.9);box-shadow:0 0 40px rgba(var(--rph-a3-rgb),.6),inset 0 0 40px rgba(var(--rph-a3-rgb),.35);
  animation:rpxPulse 1.25s cubic-bezier(.2,.75,.25,1) forwards;}
@keyframes rpxPulse{0%{width:0;height:0;opacity:1;}100%{width:260vmax;height:260vmax;opacity:0;}}

/* ── Tête de page ── */
#pc-page-roleplay .pc-page-head{position:absolute;top:0;left:0;right:0;background:none;backdrop-filter:none;border:none;justify-content:flex-start;padding:22px 5vw;z-index:4;}
#pc-page-roleplay .pc-page-head .brand{display:none;}
#pc-page-roleplay .pc-page-back{border-radius:12px;border:1px solid rgba(148,163,184,.18);background:rgba(var(--rph-b3-rgb),.6);backdrop-filter:blur(10px);
  color:rgba(226,232,240,.85);text-transform:none;letter-spacing:0;font-weight:700;font-size:.84rem;padding:10px 18px;}
#pc-page-roleplay .pc-page-back:hover{background:rgba(var(--rph-a3-rgb),.16);border-color:rgba(var(--rph-a4-rgb),.45);color:#fff;}

/* ── Contenu ── */
.rpx-stage{position:relative;z-index:3;min-height:100%;display:flex;flex-direction:column;align-items:center;
  padding:clamp(84px,11vh,130px) 20px 60px;text-align:center;perspective:1200px;justify-content:flex-start;}
/* carte de résident : verre sombre du panel, liseré bleu */
.rpx-card{position:relative;width:min(460px,90vw);aspect-ratio:1.586;border-radius:18px;text-align:left;color:#e5edff;
  background:
    linear-gradient(115deg,transparent 30%,rgba(255,255,255,.14) 45%,transparent 60%) var(--sheen,120%) 0/250% 100% no-repeat,
    repeating-radial-gradient(circle at 82% 120%,rgba(var(--rph-a4-rgb),.07) 0 1px,transparent 1px 7px),
    linear-gradient(160deg,rgba(var(--rph-t1-rgb),.95) 0%,var(--rph-b3) 55%,var(--rph-b2) 100%);
  border:1px solid rgba(var(--rph-a3-rgb),.38);
  box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 60px rgba(var(--rph-a3-rgb),.16),inset 0 1px 0 rgba(255,255,255,.08);
  transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .5s cubic-bezier(.2,.9,.3,1);
  overflow:hidden;will-change:transform;}
.rpx-card::before{content:'';position:absolute;left:0;right:0;top:0;height:22%;
  background:linear-gradient(90deg,var(--rph-a1),var(--rph-a2) 55%,var(--rph-a3));box-shadow:0 1px 0 rgba(255,255,255,.12);}
.rpx-band{position:absolute;left:5.5%;right:5.5%;top:0;height:22%;display:flex;align-items:center;justify-content:space-between;color:#fff;}
.rpx-band b{font-family:'Montserrat',sans-serif;font-weight:800;font-size:clamp(.92rem,3.3vw,1.18rem);letter-spacing:.01em;}
.rpx-band span{font-size:clamp(.58rem,1.9vw,.7rem);opacity:.85;text-align:right;line-height:1.3;}
.rpx-photo{position:absolute;left:5.5%;top:29%;width:27%;height:52%;border-radius:10px;overflow:hidden;
  background:linear-gradient(180deg,rgba(var(--rph-a3-rgb),.28),rgba(var(--rph-b1-rgb),.9));box-shadow:0 0 0 1px rgba(var(--rph-a4-rgb),.3) inset;}
.rpx-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;display:block;}
.rpx-photo svg{width:100%;height:100%;display:block;fill:rgba(var(--rph-a4-rgb),.28);}
.rpx-fields{position:absolute;left:38%;right:5.5%;top:28%;display:grid;grid-template-columns:1fr 1fr;gap:6% 6%;}
.rpx-f{min-width:0;}
.rpx-f.w{grid-column:1/-1;}
.rpx-f small{display:block;font-size:clamp(.52rem,1.7vw,.62rem);color:rgba(var(--rph-a4-rgb),.75);font-weight:700;letter-spacing:.04em;text-transform:uppercase;}
.rpx-f div{font-weight:700;font-size:clamp(.72rem,2.4vw,.9rem);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rpx-f.w div{font-family:'Montserrat',sans-serif;font-size:clamp(1.1rem,4.4vw,1.5rem);font-weight:800;line-height:1.1;}
.rpx-mrz{position:absolute;left:5.5%;right:5.5%;bottom:6%;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:clamp(.56rem,1.9vw,.72rem);
  color:rgba(var(--rph-a4-rgb),.45);letter-spacing:.14em;white-space:nowrap;overflow:hidden;}
.rpx-stamp{position:absolute;right:6%;bottom:18%;padding:6px 12px 5px;border:3px solid currentColor;border-radius:8px;
  font-family:'Barlow Condensed','Montserrat',sans-serif;font-weight:800;font-size:clamp(.95rem,3.6vw,1.35rem);letter-spacing:.06em;
  transform:rotate(-9deg);color:#f87171;opacity:.9;background:rgba(0,0,0,.18);text-shadow:0 0 12px currentColor;}
.rpx-stamp.ok{color:#34d399;}
.rpx-stamp.wait{color:#fbbf24;}
.rpx-stamp[hidden]{display:none;}
.rpx-card.blank .rpx-fields div{color:rgba(226,232,240,.25);}
.rpx-card.scan::after{content:'';position:absolute;left:0;right:0;height:26%;top:-26%;
  background:linear-gradient(180deg,transparent,rgba(var(--rph-a4-rgb),.35),transparent);animation:rpxScan 1.4s cubic-bezier(.45,0,.55,1) infinite;}
@keyframes rpxScan{to{top:100%;}}

.rpx-copy{max-width:480px;margin-top:30px;color:#fff;}
.rpx-copy h1{font-family:'Montserrat',sans-serif;font-weight:800;font-size:clamp(1.7rem,4.4vw,2.4rem);line-height:1.1;margin:0 0 12px;letter-spacing:-.01em;}
.rpx-copy p{color:rgba(203,213,225,.72);font-size:.92rem;line-height:1.7;margin:0 auto;max-width:420px;}
.rpx-copy p.err{color:#fca5a5;}
.rpx-actions{margin-top:26px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.rpx-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:240px;padding:15px 28px;border:none;border-radius:12px;
  font-family:'Montserrat',sans-serif;font-weight:700;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#fff;cursor:pointer;
  background:linear-gradient(135deg,var(--rph-a3),var(--rph-a1));box-shadow:0 12px 34px rgba(var(--rph-a2-rgb),.45),inset 0 1px 0 rgba(255,255,255,.22);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s;}
.rpx-btn:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 16px 40px rgba(var(--rph-a2-rgb),.6),inset 0 1px 0 rgba(255,255,255,.22);}
.rpx-btn:active{transform:translateY(0) scale(.98);}
.rpx-btn:focus-visible,#pc-page-roleplay .pc-page-back:focus-visible{outline:3px solid var(--rph-a4);outline-offset:3px;}
.rpx-btn.alt{background:rgba(var(--rph-b3-rgb),.7);color:#fff;box-shadow:inset 0 0 0 1px rgba(148,163,184,.25);}
.rpx-btn.alt:hover{background:rgba(var(--rph-a3-rgb),.16);}
.rpx-btn[disabled]{pointer-events:none;filter:saturate(.8);}
.rpx-btn svg{width:18px;height:18px;flex:none;}

/* ── Arrivée sur la page (une seule séquence) ── */
#pc-page-roleplay.open .rpx-bg,#pc-page-roleplay.open .rpx-ground{animation:rpxDusk 1.1s ease both;}
#pc-page-roleplay.open .rpx-city{animation:rpxCityIn 1.6s cubic-bezier(.2,.8,.2,1) .05s both;}
#pc-page-roleplay.open .rpx-palm.l{animation:rpxPalmL 1.3s cubic-bezier(.2,.8,.2,1) .1s both;}
#pc-page-roleplay.open .rpx-palm.r{animation:rpxPalmR 1.3s cubic-bezier(.2,.8,.2,1) .2s both;}
#pc-page-roleplay.open .rpx-card-wrap{animation:rpxHand .9s cubic-bezier(.16,1,.3,1) .45s both;}
#pc-page-roleplay.open .rpx-copy{animation:rpxFade .7s ease .8s both;}
@keyframes rpxDusk{from{filter:brightness(.25);}to{filter:none;}}
@keyframes rpxPalmL{from{transform:translateX(-30%);}to{transform:none;}}
@keyframes rpxPalmR{from{transform:translateX(30%);}to{transform:none;}}
@keyframes rpxCityIn{from{opacity:0;transform:translateY(1.5%);filter:brightness(.3);}to{opacity:1;transform:none;filter:none;}}
@keyframes rpxHand{from{opacity:0;transform:translateY(60px) rotate(-6deg) scale(.92);}to{opacity:1;transform:none;}}
@keyframes rpxFade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
.rpx-swap{animation:rpxFade .45s ease both;}

/* ── Entrée en ville : tampon, retournement, puis la carte s'avance vers l'écran,
      une onde bleue part d'elle et la ville se fond dans le bleu nuit ── */
.rpx-stamp.thump{animation:rpxThump .42s cubic-bezier(.2,1.6,.4,1) both;}
@keyframes rpxThump{0%{opacity:0;transform:rotate(-9deg) scale(2.4);}60%{opacity:.95;transform:rotate(-9deg) scale(.94);}100%{opacity:.9;transform:rotate(-9deg) scale(1);}}
#pc-page-roleplay.rpx-diving .rpx-scene{transition:transform 1.4s cubic-bezier(.7,0,.3,1),filter 1.4s ease;transform:scale(1.12);filter:blur(8px) brightness(.55);}
#pc-page-roleplay.rpx-diving .rpx-card-wrap{animation:none;transition:transform 1s cubic-bezier(.7,0,.3,1),opacity .7s ease .25s,filter 1s ease;transform:translateZ(0) scale(1.8);opacity:0;filter:blur(6px);}
#pc-page-roleplay.rpx-diving .rpx-copy,#pc-page-roleplay.rpx-diving .pc-page-head{animation:none;transition:opacity .3s ease;opacity:0;}
/* le décor s'efface et laisse apparaître le panel RP juste derrière */
#pc-page-roleplay.rpx-diving{z-index:10000;}
#pc-page-roleplay-hub.open.rpx-arrive{animation:rpxHubIn 1.3s cubic-bezier(.2,.8,.2,1) both;}
@keyframes rpxHubIn{from{opacity:.35;transform:scale(1.04);filter:blur(10px) brightness(.7);}to{opacity:1;transform:none;filter:none;}}
/* voile bleu nuit : plein écran dès la première image, il ne fait que se fondre en entrée puis en sortie */
.rpx-veil{position:fixed;inset:0;z-index:100000;pointer-events:none;opacity:0;will-change:opacity;
  background:radial-gradient(90% 70% at 50% 38%,#0b1733 0%,#060b18 55%,#02040a 100%);}
.rpx-veil.in{animation:rpxVeilIn 1.6s cubic-bezier(.4,0,.5,1) forwards;}
.rpx-veil.out{animation:rpxVeilOut 1.9s ease-in forwards;}
@keyframes rpxVeilIn{from{opacity:0;}to{opacity:1;}}
@keyframes rpxVeilOut{from{opacity:1;}to{opacity:0;}}

/* ── Contrôle de la carte : scan, tampon, retournement ── */
.rpx-card.verify::after{content:'';position:absolute;left:0;right:0;height:22%;top:-22%;z-index:3;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(var(--rph-a4-rgb),.6),transparent);animation:rpxScan .62s ease-in-out forwards;}
.rpx-card.verified{box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 2px rgba(var(--rph-a4-rgb),.85),0 0 60px rgba(var(--rph-a3-rgb),.55);transition:box-shadow .3s ease;}
.rpx-card.flip-out{animation:rpxFlipOut .22s cubic-bezier(.5,0,1,.5) forwards;}
.rpx-card.flip-in{animation:rpxFlipIn .38s cubic-bezier(0,.5,.4,1.25) forwards;}
@keyframes rpxFlipOut{to{transform:rotateY(90deg) scale(.96);}}
@keyframes rpxFlipIn{from{transform:rotateY(-90deg) scale(.96);}to{transform:rotateY(0) scale(1);}}
.rpx-card.back::before{display:none;}
.rpx-back{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;text-align:center;overflow:hidden;
  background:radial-gradient(70% 90% at 50% 120%,rgba(var(--rph-a4-rgb),.35),transparent 60%),linear-gradient(160deg,var(--rph-b2),var(--rph-a1) 65%,var(--rph-a2));}
.rpx-back::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.28) 50%,transparent 65%);
  transform:translateX(-120%);animation:rpxSheen .9s ease .25s forwards;}
@keyframes rpxSheen{to{transform:translateX(120%);}}
.rpx-back .lg{width:58px;height:58px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.1rem;
  background:linear-gradient(135deg,var(--rph-a1),var(--rph-a3));box-shadow:0 10px 30px rgba(var(--rph-a2-rgb),.55),inset 0 1px 0 rgba(255,255,255,.3);}
.rpx-back b{font-family:'Montserrat',sans-serif;font-weight:800;font-size:clamp(1.3rem,4.8vw,1.9rem);line-height:1.05;}
.rpx-back span{font-size:clamp(.78rem,2.4vw,.9rem);opacity:.82;}
.rpx-btn .rpx-dots::after{content:'';animation:rpxDots 1s steps(4) infinite;}
@keyframes rpxDots{0%{content:'';}25%{content:'.';}50%{content:'..';}75%{content:'...';}}

/* ── Accessibilité ── */
body.pc-reduce-motion #pc-page-roleplay *{animation:none!important;transition:none!important;}
@media (max-height:760px) and (min-width:641px){#pc-page-roleplay{--gx-horizon:80%;}}
@media (max-width:640px){
  #pc-page-roleplay{--gx-horizon:88%;}
  .rpx-palm.r{display:none;}
  .rpx-palm.l{height:52vh;opacity:.85;}
  .rpx-copy{margin-top:26px;}
  .rpx-btn{min-width:0;width:100%;}
}
@media (hover:none){.rpx-card{transform:none!important;}}

/* ───── bloc sans id ───── */
:root{
  --rph-t1-rgb:30,49,94;--rph-t2-rgb:15,26,54;
  --rph-a1:#1d4ed8;--rph-a2:#2563eb;--rph-a3:#3b82f6;--rph-a4:#60a5fa;--rph-a5:#93c5fd;
  --rph-a1-rgb:29,78,216;--rph-a2-rgb:37,99,235;--rph-a3-rgb:59,130,246;--rph-a4-rgb:96,165,250;
  --rph-b1:#080d1a;--rph-b2:#0b1226;--rph-b3:#111b34;--rph-b4:#0a1327;
  --rph-b1-rgb:8,13,26;--rph-b2-rgb:11,18,38;--rph-b3-rgb:17,27,52;
}
:root[data-rph-theme="rouge"]{
  --rph-t1-rgb:94,30,30;--rph-t2-rgb:54,15,15;
  --rph-a1:#991b1b;--rph-a2:#dc2626;--rph-a3:#ef4444;--rph-a4:#f87171;--rph-a5:#fca5a5;
  --rph-a1-rgb:153,27,27;--rph-a2-rgb:220,38,38;--rph-a3-rgb:239,68,68;--rph-a4-rgb:248,113,113;
  --rph-b1:#130708;--rph-b2:#1a0a0c;--rph-b3:#2a1114;--rph-b4:#170a0c;
  --rph-b1-rgb:19,7,8;--rph-b2-rgb:26,10,12;--rph-b3-rgb:42,17,20;
}
:root[data-rph-theme="orange"]{
  --rph-t1-rgb:94,52,20;--rph-t2-rgb:54,28,10;
  --rph-a1:#c2410c;--rph-a2:#ea580c;--rph-a3:#f97316;--rph-a4:#fb923c;--rph-a5:#fdba74;
  --rph-a1-rgb:194,65,12;--rph-a2-rgb:234,88,12;--rph-a3-rgb:249,115,22;--rph-a4-rgb:251,146,60;
  --rph-b1:#140b05;--rph-b2:#1b0f06;--rph-b3:#2b1810;--rph-b4:#180d06;
  --rph-b1-rgb:20,11,5;--rph-b2-rgb:27,15,6;--rph-b3-rgb:43,24,16;
}
:root[data-rph-theme="noir"]{
  --rph-t1-rgb:46,46,50;--rph-t2-rgb:26,26,29;
  --rph-a1:#27272a;--rph-a2:#3f3f46;--rph-a3:#52525b;--rph-a4:#a1a1aa;--rph-a5:#d4d4d8;
  --rph-a1-rgb:39,39,42;--rph-a2-rgb:63,63,70;--rph-a3-rgb:82,82,91;--rph-a4-rgb:161,161,170;
  --rph-b1:#000;--rph-b2:#08080a;--rph-b3:#141417;--rph-b4:#0a0a0c;
  --rph-b1-rgb:0,0,0;--rph-b2-rgb:8,8,10;--rph-b3-rgb:20,20,23;
}
:root[data-rph-theme="rose"]{
  --rph-t1-rgb:94,25,60;--rph-t2-rgb:54,14,34;
  --rph-a1:#9d174d;--rph-a2:#db2777;--rph-a3:#ec4899;--rph-a4:#f472b6;--rph-a5:#f9a8d4;
  --rph-a1-rgb:157,23,77;--rph-a2-rgb:219,39,119;--rph-a3-rgb:236,72,153;--rph-a4-rgb:244,114,182;
  --rph-b1:#140610;--rph-b2:#1b0814;--rph-b3:#2b1020;--rph-b4:#180a15;
  --rph-b1-rgb:20,6,16;--rph-b2-rgb:27,8,20;--rph-b3-rgb:43,16,32;
}
:root[data-rph-theme="vert"]{
  --rph-t1-rgb:26,86,48;--rph-t2-rgb:12,50,28;
  --rph-a1:#15803d;--rph-a2:#16a34a;--rph-a3:#22c55e;--rph-a4:#4ade80;--rph-a5:#86efac;
  --rph-a1-rgb:21,128,61;--rph-a2-rgb:22,163,74;--rph-a3-rgb:34,197,94;--rph-a4-rgb:74,222,128;
  --rph-b1:#05120b;--rph-b2:#07180e;--rph-b3:#0f2a1a;--rph-b4:#061a0f;
  --rph-b1-rgb:5,18,11;--rph-b2-rgb:7,24,14;--rph-b3-rgb:15,42,26;
}
:root[data-rph-motion="0"] #pc-page-roleplay-hub *,
:root[data-rph-motion="0"] .rph-set-overlay *{animation:none!important;transition:none!important;}

#pc-page-roleplay-hub .rph-settings{display:flex;align-items:center;gap:10px;width:100%;padding:15px 20px;border:none;border-bottom:1px solid rgba(148,163,184,.12);background:transparent;color:rgba(226,232,240,.6);font-family:inherit;font-weight:700;font-size:.84rem;text-align:left;cursor:pointer;transition:color .2s;}
#pc-page-roleplay-hub .rph-settings:hover{color:#fff;}
#pc-page-roleplay-hub .rph-settings svg{width:16px;height:16px;flex:none;transition:transform .45s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-settings:hover svg{transform:rotate(100deg);}
.rph-set-overlay{position:fixed;inset:0;z-index:10000;background:rgba(3,6,14,.78);backdrop-filter:blur(7px);display:none;align-items:center;justify-content:center;padding:20px;font-family:'Montserrat',system-ui,sans-serif;}
.rph-set-overlay.open{display:flex;}
.rph-set-panel{width:min(640px,100%);max-height:86vh;overflow:auto;background:linear-gradient(180deg,var(--rph-b3),var(--rph-b4));color:#e5edff;border:1px solid rgba(var(--rph-a3-rgb),.32);border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.65);}
.rph-set-head{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;background:inherit;}
.rph-set-head h3{margin:0;font-size:1.05rem;font-weight:800;flex:1;}
.rph-set-x{width:30px;height:30px;border-radius:9px;border:1px solid rgba(255,255,255,.14);background:transparent;color:#e5edff;font:700 15px/1 system-ui;cursor:pointer;}
.rph-set-x:hover{background:rgba(255,255,255,.1);}
.rph-set-body{padding:18px 20px 22px;display:grid;gap:18px;}
.rph-set-sect{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px 16px;background:rgba(255,255,255,.03);position:relative;}
.rph-set-sect h4{margin:0 0 3px;font-size:.9rem;font-weight:800;display:flex;align-items:center;gap:8px;}
.rph-set-sect p.hint{margin:0 0 12px;font-size:.76rem;color:#93a4c9;line-height:1.45;}
.rph-vip-tag{font:800 .62rem/1 'Montserrat',system-ui;letter-spacing:.08em;text-transform:uppercase;padding:4px 7px;border-radius:6px;color:#0b0b0b;background:linear-gradient(135deg,#fde68a,#f59e0b);}
.rph-set-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid rgba(255,255,255,.06);}
.rph-set-row:first-of-type{border-top:none;}
.rph-set-row .t{flex:1;min-width:0;}
.rph-set-row .t b{display:block;font-size:.84rem;font-weight:700;}
.rph-set-row .t span{display:block;font-size:.74rem;color:#93a4c9;margin-top:2px;line-height:1.4;}
.rph-sw{flex:none;width:44px;height:25px;border-radius:99px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);position:relative;cursor:pointer;transition:background .18s,border-color .18s;}
.rph-sw::after{content:'';position:absolute;top:2px;left:2px;width:19px;height:19px;border-radius:50%;background:#e5edff;transition:transform .18s;}
.rph-sw.on{background:var(--rph-a2);border-color:var(--rph-a3);}
.rph-sw.on::after{transform:translateX(19px);}
.rph-theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;}
.rph-theme{padding:10px;border-radius:13px;border:1.5px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);cursor:pointer;font:700 .76rem 'Montserrat',system-ui;color:#e5edff;display:grid;gap:8px;justify-items:center;transition:border-color .18s,transform .18s,background .18s;}
.rph-theme:hover{transform:translateY(-2px);background:rgba(255,255,255,.07);}
.rph-theme .dot{width:100%;height:34px;border-radius:9px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.rph-theme.sel{border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.14);}
.rph-lock{position:absolute;inset:0;border-radius:14px;background:rgba(5,8,18,.72);backdrop-filter:blur(3px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:18px;z-index:2;}
.rph-lock b{font-size:.92rem;}
.rph-lock span{font-size:.76rem;color:#c2cee7;max-width:340px;line-height:1.5;}
.rph-lock .k{font-size:1.4rem;}

.rph-frisk-overlay{position:fixed;inset:0;z-index:100080;background:rgba(3,6,14,.82);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px;font-family:'Montserrat',system-ui,sans-serif;}
.rph-frisk-overlay.open{display:flex;}
.rph-frisk-card{width:min(470px,100%);background:linear-gradient(180deg,var(--rph-b3),var(--rph-b4));color:#e5edff;border:1px solid rgba(74,222,128,.34);border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.7);padding:26px 24px 22px;text-align:center;animation:rphFriskIn .3s cubic-bezier(.22,1,.36,1) both;}
@keyframes rphFriskIn{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
.rph-frisk-badge{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#4ade80,#166534);box-shadow:0 0 0 7px rgba(74,222,128,.14);}
.rph-frisk-card h3{margin:0;font-size:1.16rem;font-weight:800;line-height:1.25;}
.rph-frisk-who{margin:6px 0 0;font-size:.8rem;color:#93a4c9;}
.rph-frisk-motif{margin:16px 0 0;padding:13px 15px;border-radius:13px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);font-size:.86rem;line-height:1.5;text-align:left;}
.rph-frisk-motif b{display:block;font-size:.64rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#93a4c9;margin-bottom:4px;}
.rph-frisk-timer{margin:14px 0 0;font-size:.76rem;font-weight:800;color:#fbbf24;}
.rph-frisk-acts{display:flex;gap:9px;margin-top:18px;}
.rph-frisk-acts button{flex:1;padding:14px 10px;border-radius:14px;border:none;cursor:pointer;font:800 .88rem 'Montserrat',system-ui;color:#fff;transition:transform .16s,filter .16s;}
.rph-frisk-acts button:hover{transform:translateY(-2px);filter:brightness(1.08);}
.rph-frisk-acts button:disabled{opacity:.5;cursor:default;transform:none;}
.rph-frisk-yes{background:linear-gradient(135deg,#22c55e,#15803d);}
.rph-frisk-no{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)!important;}
.rph-frisk-note{margin:14px 0 0;font-size:.72rem;color:#93a4c9;line-height:1.5;}
.rph-frisk-seiz{margin:14px 0 0;text-align:left;font-size:.8rem;line-height:1.6;}
.rph-frisk-seiz span{display:block;padding:7px 11px;margin-top:6px;border-radius:10px;background:rgba(248,113,113,.12);border-left:3px solid #f87171;}

/* ── Menottes ── */
.rph-cuff-card{border-color:rgba(148,163,184,.4);}
.rph-cuff-badge{background:radial-gradient(circle,#94a3b8,#334155);box-shadow:0 0 0 7px rgba(148,163,184,.14);}
.rph-cuff-yes{background:linear-gradient(135deg,#64748b,#334155);}
.rph-cuff-lock{z-index:100078;background:rgba(4,7,14,.94);}
.rph-cuff-lockcard{background:linear-gradient(180deg,#141a26,#0c111b);color:#e8eefb;border-color:rgba(148,163,184,.38);}
.rph-cuff-lockcard .rph-gav-badge{background:radial-gradient(circle,#94a3b8,#1e293b);animation:rphCuffPulse 2.6s ease-in-out infinite;}
@keyframes rphCuffPulse{0%,100%{box-shadow:0 0 0 9px rgba(148,163,184,.16)}50%{box-shadow:0 0 0 18px rgba(148,163,184,.04)}}
.rph-cuff-lockcard .rph-gav-sub,.rph-cuff-lockcard .rph-gav-note{color:#aab6cc;}
.rph-cuff-lockcard .rph-gav-meta b{color:#94a3b8;}
#pc-page-roleplay-hub .rph-cuff-wait{width:64px;height:64px;margin:0 auto;border-radius:50%;display:grid;place-items:center;color:#e2e8f0;background:rgba(148,163,184,.12);border:1px solid rgba(148,163,184,.3);animation:rphCuffPulse 2.2s ease-in-out infinite;}
#pc-page-roleplay-hub .rph-cuff-wait.ok{color:#bbf7d0;background:rgba(34,197,94,.14);border-color:rgba(74,222,128,.4);animation:none;}
#pc-page-roleplay-hub .rph-cuff-wait.ko{color:#fca5a5;background:rgba(239,68,68,.12);border-color:rgba(248,113,113,.35);animation:none;}
@media(prefers-reduced-motion:reduce){.rph-cuff-lockcard .rph-gav-badge,#pc-page-roleplay-hub .rph-cuff-wait{animation:none;}}

/* ── Objets retenus : remise en main propre et rangement différé ── */
#pc-page-roleplay-hub .rph-slot.holding{border-style:solid;border-color:rgba(251,191,36,.55);background:linear-gradient(160deg,rgba(69,52,12,.82),rgba(28,21,6,.9));cursor:not-allowed;}
#pc-page-roleplay-hub .rph-slot.holding:hover{transform:none;box-shadow:none;}
#pc-page-roleplay-hub .rph-slot.holding .nm,#pc-page-roleplay-hub .rph-slot.holding .qty{color:#fcd34d;}
#pc-page-roleplay-hub .rph-slot .hold{position:absolute;top:5px;left:5px;line-height:1.2;font-size:.5rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#fcd34d;background:rgba(251,191,36,.16);border:1px solid rgba(251,191,36,.32);border-radius:6px;padding:1px 5px;}
#pc-page-roleplay-hub .rph-slotmenu-hold{padding:11px 13px;border-radius:11px;background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.3);color:#fde68a;font-size:.78rem;font-weight:700;line-height:1.45;}
.rph-hold{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin:18px 0 0;padding:13px 16px;border-radius:14px;background:rgba(251,191,36,.09);border:1px solid rgba(251,191,36,.28);color:#fde68a;font-size:.84rem;line-height:1.55;}
.rph-hold + .rph-hold{margin-top:10px;}
.rph-hold b{color:#fff;}
.rph-hold .grow{flex:1;min-width:210px;}
.rph-hold .cd{font-variant-numeric:tabular-nums;font-weight:800;color:#fbbf24;}
.rph-hold button{border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:9px 15px;font:800 .77rem 'Montserrat',system-ui;color:#fff;background:rgba(255,255,255,.1);cursor:pointer;transition:filter .15s,background .15s;}
.rph-hold button:hover{background:rgba(255,255,255,.18);}
.rph-hold.in{background:rgba(96,165,250,.1);border-color:rgba(96,165,250,.32);color:#bfdbfe;}
.rph-hold.in .cd{color:#60a5fa;}
.rph-hold.in .yes{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-color:transparent;}

.rph-gift-overlay{position:fixed;inset:0;z-index:100075;background:rgba(3,6,14,.8);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px;font-family:'Montserrat',system-ui,sans-serif;}
.rph-gift-overlay.open{display:flex;}
.rph-gift-card{width:min(430px,100%);background:linear-gradient(180deg,var(--rph-b3),var(--rph-b4));color:#e5edff;border:1px solid rgba(96,165,250,.36);border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.7);padding:26px 24px 22px;text-align:center;animation:rphFriskIn .3s cubic-bezier(.22,1,.36,1) both;}
.rph-gift-card h3{margin:0;font-size:1.1rem;font-weight:800;line-height:1.3;}
.rph-gift-item{margin:16px 0 0;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);font-size:1rem;font-weight:800;color:#fff;}
.rph-gift-cd{margin:13px 0 0;font-size:.77rem;font-weight:800;color:#fbbf24;font-variant-numeric:tabular-nums;}
.rph-gift-note{margin:14px 0 0;font-size:.71rem;color:#93a4c9;line-height:1.5;}
.rph-gift-acts{display:flex;gap:9px;margin-top:18px;}
.rph-gift-acts button{flex:1;padding:14px 10px;border-radius:14px;border:none;cursor:pointer;font:800 .87rem 'Montserrat',system-ui;color:#fff;transition:transform .16s,filter .16s;}
.rph-gift-acts button:hover{transform:translateY(-2px);filter:brightness(1.08);}
.rph-gift-acts button:disabled{opacity:.5;cursor:default;transform:none;}
.rph-gift-yes{background:linear-gradient(135deg,#3b82f6,#1d4ed8);}
.rph-gift-no{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)!important;}

/* ── Photo de position obligatoire (drogue, braquage, blanchiment) ── */
.rph-proof-overlay{position:fixed;inset:0;z-index:100085;background:rgba(3,6,14,.82);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px;font-family:'Montserrat',system-ui,sans-serif;}
.rph-proof-overlay.open{display:flex;}
.rph-proof-card{width:min(520px,100%);max-height:calc(100vh - 40px);overflow:auto;background:linear-gradient(180deg,var(--rph-b3),var(--rph-b4));color:#e5edff;border:1px solid rgba(var(--rph-a3-rgb),.34);border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.7);padding:24px 24px 20px;animation:rphFriskIn .3s cubic-bezier(.22,1,.36,1) both;}
.rph-proof-head{display:flex;align-items:center;gap:14px;}
.rph-proof-pin{flex:none;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--rph-a3),var(--rph-a1));box-shadow:0 0 0 6px rgba(var(--rph-a3-rgb),.14);}
.rph-proof-pin svg{width:22px;height:22px;}
.rph-proof-head h3{margin:0;font-size:1.08rem;font-weight:800;line-height:1.25;}
.rph-proof-head p{margin:3px 0 0;font-size:.8rem;font-weight:700;color:var(--rph-a5);}
.rph-proof-lead{margin:15px 0 0;font-size:.82rem;line-height:1.55;color:#b7c4e0;}
.rph-proof-drop{position:relative;margin-top:14px;aspect-ratio:16/9;border-radius:16px;border:2px dashed rgba(var(--rph-a4-rgb),.42);background:rgba(var(--rph-b1-rgb),.55);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:16px;cursor:pointer;overflow:hidden;transition:border-color .16s,background .16s;outline:none;}
.rph-proof-drop:hover,.rph-proof-drop:focus-visible{border-color:var(--rph-a4);background:rgba(var(--rph-a3-rgb),.08);}
.rph-proof-drop:focus-visible{box-shadow:0 0 0 3px rgba(var(--rph-a4-rgb),.35);}
.rph-proof-drop.over{border-style:solid;border-color:var(--rph-a4);background:rgba(var(--rph-a3-rgb),.16);}
.rph-proof-drop .ic{width:40px;height:40px;color:var(--rph-a4);margin-bottom:4px;}
.rph-proof-drop b{font-size:.92rem;color:#fff;}
.rph-proof-drop span{font-size:.75rem;color:#93a4c9;line-height:1.5;}
.rph-proof-drop kbd{font:800 .68rem 'Montserrat',system-ui;padding:1px 6px;border-radius:5px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);color:#dbe5ff;}
.rph-proof-drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;}
.rph-proof-drop.has{border-style:solid;border-color:rgba(74,222,128,.55);padding:0;cursor:default;}
.rph-proof-drop.has img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.rph-proof-drop.busy::after{content:'Préparation de l\2019image…';position:absolute;inset:0;display:grid;place-items:center;background:rgba(3,6,14,.72);font-size:.8rem;font-weight:800;color:#fff;}
.rph-proof-change{position:absolute;right:10px;bottom:10px;border:1px solid rgba(255,255,255,.22);border-radius:10px;padding:7px 12px;font:800 .74rem 'Montserrat',system-ui;color:#fff;background:rgba(3,6,14,.72);backdrop-filter:blur(6px);cursor:pointer;}
.rph-proof-change:hover{background:rgba(3,6,14,.9);}
.rph-proof-err{margin:10px 0 0;font-size:.78rem;font-weight:700;color:#fca5a5;}
.rph-proof-err:empty{display:none;}
.rph-proof-acts{display:flex;gap:9px;margin-top:16px;}
.rph-proof-acts button{flex:1;padding:14px 10px;border-radius:14px;border:none;cursor:pointer;font:800 .87rem 'Montserrat',system-ui;color:#fff;transition:transform .16s,filter .16s,opacity .16s;}
.rph-proof-acts button:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.08);}
.rph-proof-acts button:disabled{opacity:.42;cursor:not-allowed;}
.rph-proof-go{background:linear-gradient(135deg,var(--rph-a3),var(--rph-a1));}
.rph-proof-no{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)!important;}
@media (max-width:520px){.rph-proof-drop{aspect-ratio:4/3;}.rph-proof-drop .hint-paste{display:none;}}
@media (prefers-reduced-motion:reduce){.rph-proof-card{animation:none;}.rph-proof-acts button{transition:none;}}

.rph-stashing{margin:0 0 12px;padding:13px 16px;border-radius:14px;background:rgba(251,191,36,.09);border:1px solid rgba(251,191,36,.28);color:#fde68a;font-size:.82rem;}
.rph-stashing b{display:block;color:#fff;font-size:.9rem;}
.rph-stashing span{display:block;margin-top:3px;}
.rph-stashing i{display:block;height:6px;border-radius:6px;background:rgba(255,255,255,.1);margin:10px 0 0;overflow:hidden;}
.rph-stashing i u{display:block;height:100%;background:linear-gradient(90deg,#fbbf24,#f59e0b);transition:width .45s linear;}
.rph-stashing button{margin-top:11px;border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:8px 14px;font:800 .75rem 'Montserrat',system-ui;color:#fff;background:rgba(255,255,255,.1);cursor:pointer;}
#pc-page-roleplay-hub .rph-tslot.held{opacity:.4;filter:grayscale(.6);pointer-events:none;}

/* ── Fiche d'entreprise affichée dans la page ── */
#pc-page-roleplay-hub .rph-entpage{max-width:960px;}
#pc-page-roleplay-hub .rph-entsec{margin-top:20px;padding:24px 26px 26px;border-radius:20px;background:rgba(var(--rph-b2-rgb),.55);border:1px solid rgba(148,163,184,.13);min-width:0;}
#pc-page-roleplay-hub .rph-entsec:first-of-type{margin-top:24px;}
#pc-page-roleplay-hub .rph-entsec>.rph-doc-head{margin-top:30px;margin-bottom:15px;}
#pc-page-roleplay-hub .rph-entsec>.rph-doc-head:first-child{margin-top:0!important;margin-bottom:15px;}
#pc-page-roleplay-hub .rph-entsec>.rph-doc-head+p,
#pc-page-roleplay-hub .rph-entsec>.rph-doc-head+div>p:first-child{margin-top:-8px;}
#pc-page-roleplay-hub .rph-entsec>*:last-child{margin-bottom:0;}
#pc-page-roleplay-hub .rph-entsec .rph-msg:empty{display:none;}
#pc-page-roleplay-hub .rph-entsec .rph-input,
#pc-page-roleplay-hub .rph-entsec select,
#pc-page-roleplay-hub .rph-entsec textarea{max-width:100%;}
#pc-page-roleplay-hub .rph-entsec textarea{width:100%;box-sizing:border-box;}
#pc-page-roleplay-hub .rph-entsec .rph-row{background:rgba(var(--rph-b1-rgb),.5);}
#pc-page-roleplay-hub .rph-entgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;}
#pc-page-roleplay-hub .rph-entsec-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}

/* carte du compte de l'entreprise */
.rph-bankcard{position:relative;overflow:hidden;border-radius:18px;padding:26px 28px 24px;color:#fff;border:1px solid rgba(148,163,184,.2);box-shadow:0 18px 40px rgba(0,0,0,.35);background:linear-gradient(135deg,rgba(37,99,235,.5),rgba(15,23,50,.92) 58%,rgba(9,13,30,.96));}
.rph-bankcard::after{content:"";position:absolute;right:-70px;top:-80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.13),transparent 70%);pointer-events:none;}
.rph-bankcard>*{position:relative;z-index:1;}
.rph-bankcard .bk-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.rph-bankcard .bk-bank{display:flex;align-items:center;gap:9px;font-weight:800;font-size:.95rem;}
.rph-bankcard .bk-dot{width:10px;height:10px;border-radius:50%;flex:none;box-shadow:0 0 0 3px rgba(255,255,255,.1);}
.rph-bankcard .bk-formula{font-size:.62rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:4px 11px;}
.rph-bankcard .bk-amount{margin-top:18px;font-size:2.3rem;font-weight:900;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums;}
.rph-bankcard .bk-label{margin-top:6px;font-size:.64rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.42);}
.rph-bankcard .bk-iban{margin-top:18px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;letter-spacing:.07em;color:rgba(255,255,255,.7);}
.rph-bankcard .bk-copy{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff;border-radius:8px;padding:4px 10px;font:800 .56rem 'Montserrat',system-ui;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:background .18s;}
.rph-bankcard .bk-copy:hover{background:rgba(255,255,255,.2);}
.rph-bankflow{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:12px;}
.rph-bankflow>div{padding:13px 15px;border-radius:14px;border:1px solid rgba(148,163,184,.14);background:rgba(var(--rph-b1-rgb),.5);min-width:0;}
.rph-bankflow .t{display:block;font-size:.59rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.6);}
.rph-bankflow .v{display:block;margin-top:6px;font-size:1.15rem;font-weight:900;font-variant-numeric:tabular-nums;}
.rph-bankflow .d{display:block;margin-top:3px;font-size:.72rem;color:rgba(203,213,225,.65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rph-bankflow .in .v{color:#4ade80;}
.rph-bankflow .out .v{color:#f87171;}
.rph-bankflow .none .v{color:rgba(148,163,184,.45);}
.rph-bankcard.pending{background:linear-gradient(135deg,rgba(251,191,36,.3),rgba(30,23,10,.93) 58%,rgba(16,12,6,.96));border-color:rgba(251,191,36,.26);}
.rph-bankcard.pending .bk-formula{color:#fde68a;border-color:rgba(251,191,36,.35);}
/* personnalisation de la carte bancaire */
#pc-page-roleplay-hub .rph-cardlab{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap;margin-top:14px;}
#pc-page-roleplay-hub .rph-cardlab>.rph-bcard-inline-wrap{margin-top:0!important;flex:0 0 auto;max-width:100%;}
#pc-page-roleplay-hub .rph-cardskins{flex:1;min-width:230px;padding:16px 18px 18px;border-radius:16px;background:rgba(var(--rph-b1-rgb),.5);border:1px solid rgba(148,163,184,.14);}
#pc-page-roleplay-hub .rph-cardskins h5{margin:0;display:flex;align-items:center;gap:8px;font-size:.66rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:rgba(226,232,240,.85);}
#pc-page-roleplay-hub .rph-cardskins .hint{margin:8px 0 14px;font-size:.72rem;line-height:1.55;color:rgba(148,163,184,.7);}
#pc-page-roleplay-hub .rph-cardskins .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:9px;}
#pc-page-roleplay-hub .rph-skin{height:46px;border-radius:12px;border:2px solid rgba(255,255,255,.08);padding:0;cursor:pointer;overflow:hidden;transition:transform .16s,border-color .16s,box-shadow .16s;}
#pc-page-roleplay-hub .rph-skin:hover{transform:translateY(-2px);}
#pc-page-roleplay-hub .rph-skin.sel{border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.15);}
#pc-page-roleplay-hub .rph-cardskins.locked .grid{opacity:.45;}
#pc-page-roleplay-hub .rph-cardskins.locked .rph-skin{cursor:not-allowed;}
#pc-page-roleplay-hub .rph-cardskins.locked .rph-skin:hover{transform:none;}
#pc-page-roleplay-hub .rph-cardskins .lock{margin-top:13px;padding:11px 13px;border-radius:12px;background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.26);font-size:.72rem;line-height:1.55;color:#fde68a;}
#pc-page-roleplay-hub .rph-cardskins .lock b{display:block;color:#fff;margin-bottom:3px;}
#pc-page-roleplay-hub .rph-flab{display:block;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.65);}
#pc-page-roleplay-hub .rph-flab>select,
#pc-page-roleplay-hub .rph-flab>textarea,
#pc-page-roleplay-hub .rph-flab>input{display:block;width:100%;margin-top:7px;box-sizing:border-box;}
#pc-page-roleplay-hub .rph-entnote{margin:0 0 15px;font-size:.78rem;line-height:1.6;color:rgba(203,213,225,.6);}
@media (max-width:640px){
  #pc-page-roleplay-hub .rph-entsec{padding:18px 16px 20px;border-radius:16px;margin-top:16px;}
  #pc-page-roleplay-hub .rph-entsec:first-of-type{margin-top:18px;}
  .rph-bankcard{padding:20px 18px 18px;}
  .rph-bankcard .bk-amount{font-size:1.85rem;margin-top:14px;}
  .rph-bankcard .bk-iban{margin-top:14px;font-size:.68rem;}
}

/* ── Hors session : le panel reste fermé (les MDT, eux, restent ouverts) ── */
#pc-page-roleplay-hub.rph-locked .rph-tab[data-pane="wallet"],
#pc-page-roleplay-hub.rph-locked .rph-tab[data-pane="actions"],
#pc-page-roleplay-hub.rph-locked .rph-tab[data-pane="drogue"],
#pc-page-roleplay-hub.rph-locked .rph-tab[data-pane="inventory"]{opacity:.55;pointer-events:none;cursor:not-allowed;color:rgba(252,165,165,.62)!important;border-color:rgba(239,68,68,.28)!important;background:rgba(239,68,68,.07)!important;}
#pc-page-roleplay-hub.rph-locked .rph-tab[data-pane="wallet"]:hover,
#pc-page-roleplay-hub.rph-locked .rph-tab[data-pane="actions"]:hover,
#pc-page-roleplay-hub.rph-locked .rph-tab[data-pane="drogue"]:hover,
#pc-page-roleplay-hub.rph-locked .rph-tab[data-pane="inventory"]:hover{transform:none;box-shadow:none;}
.rph-sesslock{margin-top:8px;padding:30px 26px;border-radius:20px;text-align:center;border:1px solid rgba(239,68,68,.3);background:linear-gradient(170deg,rgba(60,14,18,.7),rgba(var(--rph-b2-rgb),.92));}
.rph-sesslock .ic{line-height:0;display:flex;justify-content:center;}
.rph-sesslock-svg{display:block;filter:drop-shadow(0 6px 18px rgba(239,68,68,.45));}
.rph-sesslock-svg .halo{transform-origin:36px 36px;animation:rphSessHalo 2.4s ease-out infinite;}
@keyframes rphSessHalo{0%{opacity:.75;transform:scale(.74);}100%{opacity:0;transform:scale(1.06);}}
@media (prefers-reduced-motion:reduce){.rph-sesslock-svg .halo{animation:none;opacity:.35;}}
.rph-sesslock h3{margin:14px 0 0;font-size:1.3rem;font-weight:900;color:#fff;}
.rph-sesslock p{margin:10px auto 0;max-width:460px;font-size:.88rem;line-height:1.65;color:rgba(254,202,202,.85);}
.rph-sesslock .meta{margin-top:12px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(252,165,165,.7);}
.rph-sesslock .cols{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:24px;}
.rph-sesslock .cols>div{flex:1;min-width:210px;padding:15px 16px;border-radius:14px;background:rgba(var(--rph-b1-rgb),.55);border:1px solid rgba(255,255,255,.08);text-align:left;}
.rph-sesslock .cols b{display:block;font-size:.64rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(148,163,184,.75);margin-bottom:8px;}
.rph-sesslock .cols span{display:block;font-size:.82rem;line-height:1.85;color:rgba(226,232,240,.8);}
.rph-sesslock .cols .no span{color:rgba(252,165,165,.75);}

.rph-gav-overlay{position:fixed;inset:0;z-index:100065;background:rgba(9,3,5,.92);backdrop-filter:blur(11px);display:none;align-items:center;justify-content:center;padding:20px;font-family:'Montserrat',system-ui,sans-serif;overflow-y:auto;}
.rph-gav-overlay.open{display:flex;}
.rph-gav-card{width:min(560px,100%);margin:auto;background:linear-gradient(180deg,#1c0e12,#110a0f);color:#ffeaea;border:1px solid rgba(248,113,113,.42);border-radius:22px;box-shadow:0 34px 100px rgba(0,0,0,.85);padding:34px 30px 28px;text-align:center;animation:rphGavIn .32s cubic-bezier(.22,1,.36,1) both;}
@keyframes rphGavIn{from{opacity:0;transform:translateY(18px) scale(.95)}to{opacity:1;transform:none}}
.rph-gav-badge{width:78px;height:78px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#ef4444,#7f1d1d);animation:rphGavPulse 2.6s ease-in-out infinite;}
@keyframes rphGavPulse{0%,100%{box-shadow:0 0 0 9px rgba(239,68,68,.16)}50%{box-shadow:0 0 0 18px rgba(239,68,68,.04)}}
.rph-gav-card h3{margin:0;font-size:1.42rem;font-weight:900;line-height:1.3;letter-spacing:-.01em;}
.rph-gav-sub{margin:11px 0 0;font-size:.86rem;color:#f0bfbf;line-height:1.55;}
.rph-gav-meta{margin:20px 0 0;display:grid;gap:9px;text-align:left;}
.rph-gav-meta div{padding:12px 15px;border-radius:13px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);font-size:.86rem;line-height:1.5;}
.rph-gav-meta b{display:block;font-size:.63rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#e29999;margin-bottom:4px;}
.rph-gav-timer{margin:20px 0 0;padding:15px 12px;border-radius:14px;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.26);font:900 1.5rem/1.1 'Montserrat',system-ui;color:#fca5a5;font-variant-numeric:tabular-nums;}
.rph-gav-timer small{display:block;margin-top:7px;font:700 .64rem/1.3 'Montserrat',system-ui;letter-spacing:.08em;text-transform:uppercase;color:#e29999;}
.rph-gav-note{margin:16px 0 0;font-size:.73rem;color:#d3a9a9;line-height:1.55;}
@media (max-width:560px){.rph-gav-card{padding:26px 20px 22px;}.rph-gav-card h3{font-size:1.2rem;}.rph-gav-timer{font-size:1.28rem;}}
#pc-page-roleplay-hub{cursor:auto;font-family:'Montserrat',sans-serif;background:var(--rph-b1);}
#pc-page-roleplay-hub .pc-page-head{display:none!important;}
#pc-page-roleplay-hub .pc-page-body{padding:0!important;max-width:none!important;margin:0!important;width:100%;}
#pc-page-roleplay-hub nav.rph-nav{position:static!important;inset:auto!important;width:auto!important;height:auto!important;pointer-events:auto;background:none;backdrop-filter:none;z-index:auto;}
#pc-page-roleplay-hub .rph-shell{display:flex;min-height:100vh;width:100%;background:radial-gradient(1200px 600px at 70% -10%,rgba(var(--rph-a2-rgb),.10),transparent 60%),var(--rph-b1);}

#pc-page-roleplay-hub .rph-side{width:248px;flex:0 0 248px;display:flex;flex-direction:column;background:var(--rph-b2);border-right:1px solid rgba(148,163,184,.12);position:sticky;top:0;height:100vh;}
#pc-page-roleplay-hub .rph-brand{display:flex;align-items:center;gap:12px;padding:20px 20px;border-bottom:1px solid rgba(148,163,184,.12);}
#pc-page-roleplay-hub .rph-brand .ic{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:900;color:#fff;background:linear-gradient(135deg,var(--rph-a1),var(--rph-a3));box-shadow:0 8px 22px rgba(var(--rph-a2-rgb),.45);transition:transform .3s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-brand:hover .ic{transform:rotate(6deg) scale(1.06);}
#pc-page-roleplay-hub .rph-brand .nm{font-weight:800;letter-spacing:-.01em;color:#fff;font-size:1rem;}
#pc-page-roleplay-hub .rph-back{display:flex;align-items:center;gap:10px;width:100%;padding:15px 20px;border:none;border-bottom:1px solid rgba(148,163,184,.12);background:transparent;color:rgba(226,232,240,.6);font-family:inherit;font-weight:700;font-size:.84rem;cursor:pointer;transition:color .2s;}
#pc-page-roleplay-hub .rph-back:hover{color:#fff;}
#pc-page-roleplay-hub .rph-back svg{transition:transform .2s;}
#pc-page-roleplay-hub .rph-back:hover svg{transform:translateX(-3px);}
#pc-page-roleplay-hub .rph-navlabel{padding:18px 20px 8px;font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:rgba(148,163,184,.6);}
#pc-page-roleplay-hub .rph-nav{display:flex;flex-direction:column;gap:2px;padding:0 12px 20px;}
#pc-page-roleplay-hub .rph-tab{display:flex;align-items:center;gap:12px;width:100%;padding:11px 14px;border:none;border-radius:11px;background:transparent;color:rgba(203,213,225,.72);font-family:inherit;font-size:.9rem;font-weight:700;text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-tab svg{flex:0 0 auto;transition:transform .2s;}
#pc-page-roleplay-hub .rph-tab:hover{background:rgba(148,163,184,.08);color:#fff;transform:translateX(3px);}
#pc-page-roleplay-hub .rph-tab:hover svg{transform:scale(1.12);}
#pc-page-roleplay-hub .rph-tab.active{background:rgba(var(--rph-a2-rgb),.16);color:#fff;box-shadow:inset 0 0 0 1px rgba(var(--rph-a3-rgb),.25);}

#pc-page-roleplay-hub .rph-main{flex:1;min-width:0;overflow-x:hidden;}
#pc-page-roleplay-hub .rph-mobnav{display:none;gap:8px;overflow-x:auto;padding:12px 16px;border-bottom:1px solid rgba(148,163,184,.12);background:var(--rph-b2);}
#pc-page-roleplay-hub .rph-mobnav .rph-tab{width:auto;white-space:nowrap;padding:9px 14px;font-size:.78rem;}
#pc-page-roleplay-hub .rph-wrap{max-width:1120px;margin:0 auto;padding:40px 40px 90px;}
#pc-page-roleplay-hub .rph-title{font-size:2.1rem;font-weight:900;letter-spacing:-.02em;color:#fff;display:flex;align-items:center;gap:12px;animation:rphFadeUp .45s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-sub{margin-top:6px;font-size:.9rem;font-weight:600;color:rgba(148,163,184,.85);animation:rphFadeUp .45s .07s cubic-bezier(.22,1,.36,1) both;}

#pc-page-roleplay-hub .rph-cards{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:30px;}
#pc-page-roleplay-hub .rph-card{position:relative;overflow:hidden;background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.95),rgba(var(--rph-b2-rgb),.95));border:1px solid rgba(148,163,184,.14);border-radius:18px;padding:22px 24px;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .28s;animation:rphFadeUp .5s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-card::after{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(320px 120px at 100% 0,rgba(var(--rph-a3-rgb),.16),transparent 70%);opacity:0;transition:opacity .3s;pointer-events:none;}
#pc-page-roleplay-hub .rph-card:hover{transform:translateY(-4px);border-color:rgba(var(--rph-a3-rgb),.45);box-shadow:0 22px 48px rgba(var(--rph-b1-rgb),.7);}
#pc-page-roleplay-hub .rph-card:hover::after{opacity:1;}
#pc-page-roleplay-hub .rph-card.rph-act-tab.active{border-color:rgba(var(--rph-a3-rgb),.7);background:linear-gradient(160deg,rgba(var(--rph-t1-rgb),.97),rgba(var(--rph-t2-rgb),.97));box-shadow:0 18px 40px rgba(var(--rph-a2-rgb),.22);}
#pc-page-roleplay-hub .rph-card.rph-act-tab.active::before{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--rph-a1),var(--rph-a4));}
#pc-page-roleplay-hub .rph-card.rph-act-tab.active .val{color:var(--rph-a5);}
#pc-page-roleplay-hub .rph-act-dot{display:none;position:absolute;top:12px;right:14px;width:9px;height:9px;border-radius:50%;background:var(--rph-a4);box-shadow:0 0 0 4px rgba(var(--rph-a4-rgb),.18);animation:rphArmPulse 1.4s ease-in-out infinite;}
#pc-page-roleplay-hub .rph-act-dot.on{display:block;}
#pc-page-roleplay-hub .rph-card .ic{display:inline-flex;color:rgba(148,163,184,.9);}
#pc-page-roleplay-hub .rph-card .val{margin-top:14px;font-size:1.75rem;font-weight:900;letter-spacing:-.02em;color:#fff;}
#pc-page-roleplay-hub .rph-card .lbl{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(148,163,184,.75);margin-top:6px;font-weight:700;}
#pc-page-roleplay-hub .rph-doc-head{margin-top:34px;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(148,163,184,.7);font-weight:800;}
#pc-page-roleplay-hub .rph-docs{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:14px;}
#pc-page-roleplay-hub .rph-doc{background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.95),rgba(var(--rph-b2-rgb),.95));border:1px solid rgba(148,163,184,.14);border-radius:14px;padding:16px 14px;text-align:center;animation:rphFadeUp .5s cubic-bezier(.22,1,.36,1) both;transition:transform .25s,border-color .25s;}
#pc-page-roleplay-hub .rph-doc-ic{font-size:1.5rem;line-height:1;display:flex;align-items:center;justify-content:center;color:rgba(226,232,240,.9);}
#pc-page-roleplay-hub .rph-doc-ic svg{display:block;}
#pc-page-roleplay-hub .rph-doc-lbl{margin-top:8px;font-size:.76rem;font-weight:700;color:#fff;}
#pc-page-roleplay-hub .rph-doc-status{margin-top:5px;font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:rgba(148,163,184,.65);display:flex;align-items:center;justify-content:center;gap:5px;}
#pc-page-roleplay-hub .rph-doc-status svg{display:block;width:.85em;height:.85em;flex:none;}
#pc-page-roleplay-hub .rph-doc.owned{cursor:pointer;}
#pc-page-roleplay-hub .rph-doc.owned:hover{transform:translateY(-3px);border-color:rgba(var(--rph-a3-rgb),.45);}
#pc-page-roleplay-hub .rph-doc.owned .rph-doc-status{color:#4ade80;}
#pc-page-roleplay-hub .rph-doc.locked{opacity:.45;filter:grayscale(.4);}
#pc-page-roleplay-hub .rph-modal-overlay{position:fixed;inset:0;background:rgba(2,6,16,.985);backdrop-filter:blur(14px);z-index:100000;display:flex;align-items:flex-start;justify-content:center;padding:24px;overflow-y:auto;overscroll-behavior:contain;animation:rphFadeUp .25s ease both;}
#pc-page-roleplay-hub .rph-modal-overlay > .rph-modal{margin:auto;}
html.rph-modal-open,body.rph-modal-open{overflow:hidden!important;}
.pc-page.rph-modal-open{overflow:hidden!important;}
#pc-page-roleplay-hub .rph-modal.rph-modal-doc{max-width:960px;padding:26px;max-height:calc(100vh - 48px);overflow-y:auto;-webkit-overflow-scrolling:touch;}
#pc-page-roleplay-hub .rph-doc-stage{position:relative;overflow:hidden;border-radius:14px;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;}
#pc-page-roleplay-hub .rph-doc-stage.grabbing{cursor:grabbing;}
#pc-page-roleplay-hub .rph-doc-stage > .rph-usa-card-scale{transform-origin:50% 50%;will-change:transform;transition:filter .2s;}
#pc-page-roleplay-hub .rph-doc-stage.grabbing > .rph-usa-card-scale{filter:drop-shadow(0 18px 30px rgba(0,0,0,.45));}
#pc-page-roleplay-hub .rph-doc-stage.moved{background:repeating-linear-gradient(135deg,rgba(148,163,184,.05) 0 10px,transparent 10px 20px);}
#pc-page-roleplay-hub .rph-doc-stage img{-webkit-user-drag:none;pointer-events:none;}
#pc-page-roleplay-hub .rph-doc-hint{margin-top:10px;text-align:center;font-size:.7rem;font-weight:600;line-height:1.4;color:rgba(148,163,184,.65);}
#pc-page-roleplay-hub .rph-modal{position:relative;max-width:620px;width:100%;background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.98),rgba(var(--rph-b2-rgb),.98));border:1px solid rgba(148,163,184,.18);border-radius:20px;padding:30px;box-shadow:0 30px 70px rgba(var(--rph-b1-rgb),.8);}
/* ── Fausse carte d'identité ── */
#pc-page-roleplay-hub .rph-fk-modal{max-width:720px;max-height:92vh;overflow-y:auto;}
#pc-page-roleplay-hub .rph-fk-lead{margin:-6px 0 14px;font-size:.78rem;line-height:1.55;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .rph-fk-preview{width:100%;margin-bottom:16px;pointer-events:none;}
#pc-page-roleplay-hub .rph-fk-preview .rph-usa-card-scale{overflow:hidden;border-radius:14px;}
#pc-page-roleplay-hub .rph-fk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;}
#pc-page-roleplay-hub .rph-fk-f{display:flex;flex-direction:column;gap:5px;min-width:0;}
#pc-page-roleplay-hub .rph-fk-f > span{font-size:.7rem;font-weight:700;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .rph-fk-f .rph-in{margin:0;width:100%;box-sizing:border-box;}
#pc-page-roleplay-hub .rph-fk-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:3px;border-radius:13px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);}
#pc-page-roleplay-hub .rph-fk-seg button{padding:8px 4px;border-radius:10px;border:none;background:none;color:rgba(255,255,255,.6);font-family:inherit;font-weight:700;font-size:.78rem;cursor:pointer;transition:background .18s,color .18s;}
#pc-page-roleplay-hub .rph-fk-seg button.on{background:rgba(var(--rph-a3-rgb),.3);color:#fff;box-shadow:inset 0 0 0 1px rgba(var(--rph-a4-rgb),.55);}
#pc-page-roleplay-hub .rph-fk-seg button:focus-visible{outline:2px solid var(--rph-a4);outline-offset:1px;}
#pc-page-roleplay-hub .rph-fk-acts{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;}
#pc-page-roleplay-hub .rph-fk-acts .rph-btn{margin:0;}
#pc-page-roleplay-hub .rph-btn.ghost{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);}
@media (max-width:560px){#pc-page-roleplay-hub .rph-fk-grid{grid-template-columns:1fr;}}
#pc-page-roleplay-hub .rph-modal-actions{position:absolute;top:14px;right:14px;display:flex;gap:8px;z-index:5;}
#pc-page-roleplay-hub .rph-modal-close,
#pc-page-roleplay-hub .rph-modal-download{position:static;width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#fff;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s;}
#pc-page-roleplay-hub .rph-modal-close:hover,
#pc-page-roleplay-hub .rph-modal-download:hover{background:rgba(255,255,255,.14);transform:translateY(-1px);}
#pc-page-roleplay-hub .rph-modal-download svg{display:block;}
#pc-page-roleplay-hub .rph-modal-download.loading{opacity:.55;pointer-events:none;}
#pc-page-roleplay-hub .rph-modal-send:hover{background:rgba(var(--rph-a2-rgb),.35);border-color:rgba(var(--rph-a4-rgb),.6);}
#pc-page-roleplay-hub .rph-modal-send.done{background:rgba(74,222,128,.25);border-color:rgba(74,222,128,.55);color:#4ade80;}
#pc-page-roleplay-hub .rph-modal-status{margin:0 0 10px;font-size:.78rem;font-weight:700;text-align:center;min-height:1em;}
#pc-page-roleplay-hub .rph-modal-status.ok{color:#4ade80;}
#pc-page-roleplay-hub .rph-modal-status.err{color:#f87171;}
#pc-page-roleplay-hub .rph-spin{animation:rphSpin .8s linear infinite;}
@keyframes rphSpin{to{transform:rotate(360deg);}}
#pc-page-roleplay-hub .rph-modal-title{display:flex;align-items:center;gap:9px;font-size:1rem;font-weight:800;color:#fff;margin-bottom:16px;}
#pc-page-roleplay-hub .rph-modal-title svg{width:20px;height:20px;flex-shrink:0;display:block;color:var(--rph-a4);}

#pc-page-roleplay-hub .rph-usa-card{position:relative;overflow:hidden;border-radius:18px;width:860px;margin:0 auto;background:#f6f5f1;border:1px solid rgba(20,50,70,.16);box-shadow:0 22px 50px rgba(0,0,0,.5);color:#16324a;font-size:15px;}

#pc-page-roleplay-hub .rph-usa-head{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:26px 30px 66px;}
#pc-page-roleplay-hub .rph-usa-head-l{min-width:0;}
#pc-page-roleplay-hub .rph-usa-state{font-size:2.05rem;line-height:.95;font-weight:900;letter-spacing:-.015em;text-transform:uppercase;color:#16324a;}
#pc-page-roleplay-hub .rph-usa-county{margin-top:8px;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;font-weight:800;color:#3a6d84;}
#pc-page-roleplay-hub .rph-usa-head-r{text-align:right;flex-shrink:0;}
#pc-page-roleplay-hub .rph-usa-doctitle{font-size:1.16rem;font-weight:900;letter-spacing:.01em;text-transform:uppercase;color:#e8722a;}
#pc-page-roleplay-hub .rph-usa-docen{margin-top:4px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:#6b7f8c;}

#pc-page-roleplay-hub .rph-usa-body{position:relative;display:flex;gap:34px;padding:4px 30px 10px;}
#pc-page-roleplay-hub .rph-usa-photo-col{display:flex;flex-direction:column;gap:12px;flex-shrink:0;width:172px;}
#pc-page-roleplay-hub .rph-doc-photo{width:172px;height:172px;border-radius:8px;object-fit:cover;border:3px solid #2a7f8c;background:#dbe7ea;}
#pc-page-roleplay-hub .rph-doc-photo-empty{display:flex;align-items:center;justify-content:center;color:rgba(20,50,70,.3);}
#pc-page-roleplay-hub .rph-usa-citizen{border-radius:8px;background:#e4eff1;border:1px solid rgba(42,127,140,.2);padding:9px 10px;text-align:center;}
#pc-page-roleplay-hub .rph-usa-citizen span{display:block;font-size:.57rem;letter-spacing:.05em;text-transform:uppercase;font-weight:800;color:#3a6d84;}
#pc-page-roleplay-hub .rph-usa-citizen b{display:block;margin-top:3px;font-size:.78rem;font-weight:800;color:#16324a;letter-spacing:.02em;}

#pc-page-roleplay-hub .rph-usa-fields{flex:1;min-width:0;background-repeat:no-repeat;background-position:right bottom;}
#pc-page-roleplay-hub .rph-usa-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 26px;}
#pc-page-roleplay-hub .rph-usa-field{min-width:0;}
#pc-page-roleplay-hub .rph-usa-field .k{display:block;font-size:.64rem;letter-spacing:.11em;text-transform:uppercase;color:#3a6d84;font-weight:800;margin-bottom:2px;}
#pc-page-roleplay-hub .rph-usa-field .v{display:block;font-size:1.02rem;font-weight:800;color:#16324a;word-break:break-word;}
#pc-page-roleplay-hub .rph-usa-field .v.accent{color:#e8722a;}
#pc-page-roleplay-hub .rph-usa-field .v.big{font-size:1.32rem;font-weight:900;letter-spacing:-.01em;line-height:1.15;}
#pc-page-roleplay-hub .rph-usa-field .v.caps{text-transform:uppercase;}

#pc-page-roleplay-hub .rph-usa-sigwrap{margin-top:22px;max-width:62%;}
#pc-page-roleplay-hub .rph-usa-sig{font-family:'Dancing Script',cursive;font-size:1.6rem;font-weight:600;color:#1c3d55;line-height:1.25;padding-bottom:4px;border-bottom:1px solid rgba(20,50,70,.3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-usa-sig-lbl{margin-top:6px;font-size:.62rem;letter-spacing:.11em;text-transform:uppercase;color:#6b7f8c;font-weight:800;}

#pc-page-roleplay-hub .rph-usa-mrz{position:relative;padding:14px 30px 18px;font-family:'Courier New',Courier,monospace;font-size:.72rem;line-height:1.5;letter-spacing:.06em;color:#5a6b76;white-space:nowrap;overflow:hidden;}

#pc-page-roleplay-hub .rph-offer{background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.95),rgba(var(--rph-b2-rgb),.95));border:1px solid rgba(148,163,184,.14);border-radius:18px;padding:20px 22px;margin-top:14px;}
#pc-page-roleplay-hub .rph-offer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;}
#pc-page-roleplay-hub .rph-offer-name{display:block;font-size:1.05rem;font-weight:900;color:#fff;}
#pc-page-roleplay-hub .rph-offer-type{display:block;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--rph-a4);margin-top:3px;}
#pc-page-roleplay-hub .rph-offer-note{margin-top:12px;font-size:.85rem;font-weight:500;color:rgba(226,232,240,.82);line-height:1.55;white-space:pre-wrap;}
#pc-page-roleplay-hub .rph-offer-meta{margin-top:10px;font-size:.7rem;font-weight:700;letter-spacing:.06em;color:rgba(148,163,184,.7);}
#pc-page-roleplay-hub .rph-offer-form{margin-top:14px;padding-top:14px;border-top:1px solid rgba(148,163,184,.14);}
#pc-page-roleplay-hub .rph-letter{width:100%;min-height:120px;resize:vertical;background:rgba(2,6,16,.55);border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:12px 14px;color:#e2e8f0;font-family:inherit;font-size:.86rem;font-weight:500;line-height:1.5;}
#pc-page-roleplay-hub .rph-letter:focus{outline:none;border-color:rgba(var(--rph-a3-rgb),.6);}
#pc-page-roleplay-hub .rph-letter-count{margin-top:6px;font-size:.68rem;font-weight:700;color:rgba(148,163,184,.6);text-align:right;}
#pc-page-roleplay-hub .rph-badge-wait{display:inline-flex;align-items:center;gap:6px;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fbbf24;background:rgba(251,191,36,.14);border-radius:999px;padding:6px 12px;}
#pc-page-roleplay-hub .rph-badge-in{display:inline-flex;align-items:center;gap:6px;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#4ade80;background:rgba(74,222,128,.14);border-radius:999px;padding:6px 12px;}
#pc-page-roleplay-hub .rph-app{display:flex;gap:14px;background:rgba(2,6,16,.4);border:1px solid rgba(148,163,184,.14);border-radius:14px;padding:14px;margin-top:12px;}
#pc-page-roleplay-hub .rph-app-av{width:64px;height:64px;border-radius:12px;object-fit:cover;background:rgba(148,163,184,.12);flex-shrink:0;}
#pc-page-roleplay-hub .rph-app-body{flex:1;min-width:0;}
#pc-page-roleplay-hub .rph-app-name{font-weight:800;color:#fff;font-size:.92rem;}
#pc-page-roleplay-hub .rph-app-id{font-family:'Courier New',Courier,monospace;font-size:.7rem;color:rgba(148,163,184,.7);margin-top:2px;}
#pc-page-roleplay-hub .rph-app-letter{margin-top:9px;font-size:.82rem;font-weight:500;color:rgba(226,232,240,.85);line-height:1.5;white-space:pre-wrap;background:rgba(148,163,184,.07);border-radius:10px;padding:10px 12px;}
#pc-page-roleplay-hub .rph-app-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px;}

#pc-page-roleplay-hub .rph-filters{background:rgba(2,6,16,.45);border:1px solid rgba(148,163,184,.14);border-radius:16px;padding:14px 16px;margin-top:14px;}
#pc-page-roleplay-hub .rph-filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:11px;}
#pc-page-roleplay-hub .rph-filters label{display:block;font-size:.6rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:rgba(148,163,184,.7);margin-bottom:5px;}
#pc-page-roleplay-hub .rph-filters .rph-input{margin-top:0;padding:8px 10px;font-size:.82rem;width:100%;}
#pc-page-roleplay-hub .rph-filters-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;}
#pc-page-roleplay-hub .rph-filters-count{font-size:.75rem;font-weight:800;color:rgba(148,163,184,.75);}
#pc-page-roleplay-hub .rph-filters-count b{color:var(--rph-a4);}
#pc-page-roleplay-hub .rph-price-row{display:flex;gap:8px;}
#pc-page-roleplay-hub .rph-cars{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:16px;margin-top:16px;}
#pc-page-roleplay-hub .rph-car{display:flex;flex-direction:column;background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.95),rgba(var(--rph-b2-rgb),.95));border:1px solid rgba(148,163,184,.14);border-radius:18px;overflow:hidden;transition:transform .25s,border-color .25s;animation:rphFadeUp .5s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub #rph-actions-root.shopfull > *:not(#rph-shop-view-box){display:none !important;}
#pc-page-roleplay-hub #rph-actions-root.shopfull #rph-shop-view-box{margin-top:0 !important;}
#pc-page-roleplay-hub .rph-shop-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px;}
#pc-page-roleplay-hub .rph-shop-hero-main{flex:1;min-width:220px;}
#pc-page-roleplay-hub .rph-shop-hero-kicker{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--rph-a4);}
#pc-page-roleplay-hub .rph-shop-hero-cash{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:10px 16px;border-radius:14px;background:rgba(74,222,128,.08);border:1px solid rgba(74,222,128,.22);}
#pc-page-roleplay-hub .rph-shop-hero-cash span{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:rgba(148,163,184,.75);}
#pc-page-roleplay-hub .rph-shop-hero-cash b{font-size:1.1rem;font-weight:900;color:#4ade80;}
#pc-page-roleplay-hub .rph-shop-note{margin-top:14px;padding:11px 14px;border-radius:12px;background:rgba(96,165,250,.08);border:1px solid rgba(96,165,250,.2);font-size:.78rem;line-height:1.55;color:#bfdbfe;}
#pc-page-roleplay-hub .rph-filters label.rph-sf-check{display:inline-flex;align-items:center;gap:9px;margin:0;padding:7px 13px 7px 9px;border-radius:999px;border:1px solid rgba(148,163,184,.18);background:rgba(var(--rph-b1-rgb),.55);text-transform:none;letter-spacing:0;font-size:.74rem;font-weight:700;color:rgba(226,232,240,.8);cursor:pointer;user-select:none;transition:background .18s,border-color .18s,color .18s;}
#pc-page-roleplay-hub .rph-filters label.rph-sf-check:hover{border-color:rgba(var(--rph-a4-rgb),.45);color:#fff;}
#pc-page-roleplay-hub .rph-sf-check input{position:absolute;opacity:0;width:0;height:0;pointer-events:none;}
#pc-page-roleplay-hub .rph-sf-check .box{position:relative;flex:0 0 auto;width:17px;height:17px;border-radius:6px;border:1.5px solid rgba(148,163,184,.45);background:rgba(2,6,16,.5);transition:all .18s;}
#pc-page-roleplay-hub .rph-sf-check .box::after{content:'';position:absolute;left:5px;top:1.5px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .18s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-sf-check input:checked + .box{background:linear-gradient(135deg,var(--rph-a1),var(--rph-a2));border-color:transparent;box-shadow:0 0 0 3px rgba(var(--rph-a2-rgb),.2);}
#pc-page-roleplay-hub .rph-sf-check input:checked + .box::after{transform:rotate(45deg) scale(1);}
#pc-page-roleplay-hub .rph-sf-check input:focus-visible + .box{box-shadow:0 0 0 3px rgba(var(--rph-a4-rgb),.45);}
#pc-page-roleplay-hub .rph-filters label.rph-sf-check:has(input:checked){background:rgba(var(--rph-a2-rgb),.2);border-color:rgba(var(--rph-a4-rgb),.5);color:#fff;}
#pc-page-roleplay-hub .rph-shop-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
#pc-page-roleplay-hub .rph-shop-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid rgba(148,163,184,.18);background:rgba(var(--rph-b1-rgb),.55);color:rgba(226,232,240,.8);font-family:inherit;font-size:.7rem;font-weight:800;letter-spacing:.05em;cursor:pointer;transition:all .18s;}
#pc-page-roleplay-hub .rph-shop-chip i{font-style:normal;font-size:.62rem;color:rgba(148,163,184,.75);background:rgba(148,163,184,.14);border-radius:999px;padding:1px 7px;}
#pc-page-roleplay-hub .rph-shop-chip:hover{border-color:rgba(var(--rph-a4-rgb),.45);color:#fff;}
#pc-page-roleplay-hub .rph-shop-chip.on{background:rgba(var(--rph-a2-rgb),.26);border-color:rgba(var(--rph-a4-rgb),.6);color:#fff;}
#pc-page-roleplay-hub .rph-shop-chip.on i{color:#fff;background:rgba(var(--rph-a4-rgb),.35);}
#pc-page-roleplay-hub .rph-shop-group{display:flex;align-items:center;gap:10px;margin:26px 0 -4px;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:rgba(226,232,240,.85);}
#pc-page-roleplay-hub .rph-shop-group::after{content:'';flex:1;height:1px;background:rgba(148,163,184,.16);}
#pc-page-roleplay-hub .rph-shop-group i{font-style:normal;font-size:.6rem;color:rgba(148,163,184,.7);}
#pc-page-roleplay-hub .rph-shop-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));}
#pc-page-roleplay-hub .rph-car-img.rph-shop-img{height:150px;background:radial-gradient(circle at 50% 55%,rgba(var(--rph-a2-rgb),.16),rgba(2,6,16,.5) 70%);}
#pc-page-roleplay-hub .rph-shop-thumb{display:flex;align-items:center;justify-content:center;width:92px;height:92px;border-radius:22px;background:linear-gradient(160deg,rgba(203,213,225,.34),rgba(148,163,184,.18));box-shadow:inset 0 0 0 1px rgba(226,232,240,.14),0 10px 24px rgba(0,0,0,.25);transition:transform .25s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-car-img.rph-shop-img .rph-shop-thumb img{width:66px;height:66px;max-width:66px;max-height:66px;object-fit:contain;padding:0;display:block;}
#pc-page-roleplay-hub .rph-shop-thumb .ph{color:rgba(226,232,240,.55);display:flex;}
#pc-page-roleplay-hub .rph-shop-thumb .ph svg{width:34px;height:34px;}
#pc-page-roleplay-hub .rph-shop-card:hover .rph-shop-thumb{transform:scale(1.07);}
#pc-page-roleplay-hub .rph-shop-tag{background:rgba(var(--rph-a2-rgb),.3);color:#dbeafe;box-shadow:inset 0 0 0 1px rgba(var(--rph-a4-rgb),.45);max-width:calc(100% - 90px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-shop-ppa{position:absolute;top:10px;right:10px;font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:5px 9px;border-radius:999px;background:rgba(248,113,113,.2);color:#fca5a5;box-shadow:inset 0 0 0 1px rgba(248,113,113,.4);}
#pc-page-roleplay-hub .rph-shop-ppa.ok{background:rgba(74,222,128,.2);color:#4ade80;box-shadow:inset 0 0 0 1px rgba(74,222,128,.4);}
#pc-page-roleplay-hub .rph-shop-card.out{opacity:.6;}
#pc-page-roleplay-hub .rph-car-price.dear{color:#f87171;}
#pc-page-roleplay-hub .rph-car:hover{transform:translateY(-3px);border-color:rgba(var(--rph-a3-rgb),.4);}
#pc-page-roleplay-hub .rph-car-img{position:relative;width:100%;height:150px;background:rgba(2,6,16,.5);display:flex;align-items:center;justify-content:center;overflow:hidden;}
#pc-page-roleplay-hub .rph-car-img img{width:100%;height:100%;object-fit:cover;display:block;}
#pc-page-roleplay-hub .rph-car-img .ph{color:rgba(148,163,184,.3);font-size:2.4rem;}
#pc-page-roleplay-hub .rph-car-tag{position:absolute;top:10px;left:10px;font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:999px;backdrop-filter:blur(4px);}
#pc-page-roleplay-hub .rph-car-tag.neuf{background:rgba(74,222,128,.22);color:#4ade80;box-shadow:inset 0 0 0 1px rgba(74,222,128,.4);}
#pc-page-roleplay-hub .rph-car-tag.occas{background:rgba(251,191,36,.2);color:#fbbf24;box-shadow:inset 0 0 0 1px rgba(251,191,36,.4);}
#pc-page-roleplay-hub .rph-car-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1;}
#pc-page-roleplay-hub .rph-car-brand{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--rph-a4);}
#pc-page-roleplay-hub .rph-car-name{font-size:1.05rem;font-weight:900;color:#fff;line-height:1.2;}
#pc-page-roleplay-hub .rph-car-desc{font-size:.78rem;font-weight:500;color:rgba(148,163,184,.8);line-height:1.45;}
#pc-page-roleplay-hub .rph-car-specs{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;}
#pc-page-roleplay-hub .rph-car-specs span{font-size:.64rem;font-weight:700;letter-spacing:.04em;color:rgba(226,232,240,.75);background:rgba(148,163,184,.12);border-radius:999px;padding:4px 9px;}
#pc-page-roleplay-hub .rph-car-foot{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:auto;padding-top:12px;}
#pc-page-roleplay-hub .rph-car-foot .rph-btn{white-space:nowrap;flex:0 1 auto;}
#pc-page-roleplay-hub .rph-car-acts{display:flex;gap:7px;flex-wrap:wrap;}
#pc-page-roleplay-hub .rph-car-foot.inline{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;}
#pc-page-roleplay-hub .rph-car-price{font-size:1.15rem;font-weight:900;color:#4ade80;}
#pc-page-roleplay-hub .rph-plate{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;align-self:flex-start;width:176px;height:88px;padding:6px 8px;border-radius:10px;background-color:#fdfdfb;background-repeat:no-repeat;background-position:center 54%;background-size:auto 64px;border:2px solid #c9d2d8;box-shadow:0 4px 12px rgba(0,0,0,.4);font-family:'Arial Narrow',Arial,Helvetica,sans-serif;overflow:hidden;flex-shrink:0;}
#pc-page-roleplay-hub .rph-plate::after{content:'';position:absolute;inset:3px;border-radius:7px;box-shadow:inset 0 0 0 1px rgba(20,83,45,.18);pointer-events:none;}
#pc-page-roleplay-hub .rph-plate-top{position:relative;font-size:.5rem;font-weight:800;letter-spacing:.04em;color:#177245;text-transform:lowercase;line-height:1;}
#pc-page-roleplay-hub .rph-plate-serial{position:relative;font-size:1.5rem;font-weight:800;letter-spacing:.09em;color:#14532d;line-height:1.1;margin:5px 0 4px;white-space:nowrap;text-shadow:0 0 4px rgba(253,253,251,.95),0 0 4px rgba(253,253,251,.95);}
#pc-page-roleplay-hub .rph-plate-bottom{position:relative;font-size:.5rem;font-weight:800;letter-spacing:.2em;color:#177245;text-transform:uppercase;line-height:1;}
#pc-page-roleplay-hub .rph-plate.sm{width:150px;height:74px;padding:5px 6px;background-size:auto 50px;}
#pc-page-roleplay-hub .rph-plate.sm .rph-plate-serial{font-size:1.14rem;letter-spacing:.06em;margin:4px 0 3px;}
#pc-page-roleplay-hub .rph-plate.sm .rph-plate-top,
#pc-page-roleplay-hub .rph-plate.sm .rph-plate-bottom{font-size:.44rem;}

#pc-page-roleplay-hub .rph-trunk-wrap{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:6px;}
#pc-page-roleplay-hub .rph-trunk-col{min-width:0;}
#pc-page-roleplay-hub .rph-trunk-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:9px;}
#pc-page-roleplay-hub .rph-trunk-head b{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(226,232,240,.8);}
#pc-page-roleplay-hub .rph-trunk-head span{font-size:.68rem;font-weight:700;color:rgba(148,163,184,.65);white-space:nowrap;}
#pc-page-roleplay-hub .rph-trunk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;padding:10px;border-radius:14px;border:1px dashed rgba(148,163,184,.2);background:rgba(2,6,16,.35);min-height:110px;transition:border-color .2s,background .2s;}
#pc-page-roleplay-hub .rph-trunk-grid.dragover{border-color:rgba(var(--rph-a3-rgb),.65);background:rgba(var(--rph-a2-rgb),.12);}
#pc-page-roleplay-hub .rph-tslot{position:relative;aspect-ratio:1;border-radius:11px;border:1px solid rgba(148,163,184,.14);background:rgba(var(--rph-b2-rgb),.7);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px;text-align:center;}
#pc-page-roleplay-hub .rph-tslot.filled{cursor:pointer;border-color:rgba(var(--rph-a3-rgb),.35);background:linear-gradient(160deg,rgba(var(--rph-t2-rgb),.9),rgba(13,22,46,.9));}
#pc-page-roleplay-hub .rph-tslot.filled:hover{border-color:rgba(var(--rph-a3-rgb),.7);transform:translateY(-2px);}
#pc-page-roleplay-hub .rph-tslot.drug{border-color:rgba(74,222,128,.4);background:linear-gradient(160deg,rgba(20,52,38,.85),rgba(11,26,20,.9));}
#pc-page-roleplay-hub .rph-tslot .ic{font-size:1.5rem;line-height:1;}
#pc-page-roleplay-hub .rph-tslot .ic img{width:30px;height:30px;object-fit:contain;}
#pc-page-roleplay-hub .rph-tslot .nm{font-size:.6rem;font-weight:800;color:#e2e8f0;line-height:1.2;word-break:break-word;}
#pc-page-roleplay-hub .rph-tslot .qt{font-size:.58rem;font-weight:800;color:var(--rph-a4);}
#pc-page-roleplay-hub .rph-tslot.drug .qt{color:#4ade80;}
@media(max-width:640px){#pc-page-roleplay-hub .rph-trunk-wrap{grid-template-columns:1fr;}}

#pc-page-roleplay-hub .rph-slot.locked{cursor:default;border-color:rgba(74,222,128,.4);background:linear-gradient(160deg,rgba(20,52,38,.85),rgba(11,26,20,.9));}
#pc-page-roleplay-hub .rph-slot.locked .qty{color:#4ade80;background:rgba(74,222,128,.14);border-color:rgba(74,222,128,.35);}
#pc-page-roleplay-hub .rph-slot.holding .qty{background:rgba(251,191,36,.14);border-color:rgba(251,191,36,.32);}
#pc-page-roleplay-hub .rph-slot.locked .nm{color:#bbf7d0;}

#pc-page-roleplay-hub .rph-phone-stage{display:flex;justify-content:center;padding:18px 0 40px;perspective:1600px;}
#pc-page-roleplay-hub .rph-devices{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:14px 0 -4px;}
#pc-page-roleplay-hub .rph-device{display:flex;align-items:center;gap:11px;padding:9px 16px;border-radius:15px;border:1px solid rgba(148,163,184,.22);background:rgba(var(--rph-b1-rgb),.6);color:rgba(226,232,240,.72);font-family:inherit;text-align:left;cursor:pointer;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;}
#pc-page-roleplay-hub .rph-device:hover{transform:translateY(-2px);border-color:rgba(var(--rph-a3-rgb),.5);}
#pc-page-roleplay-hub .rph-device.on{border-color:var(--rph-a3);background:rgba(var(--rph-t1-rgb),.42);color:#fff;box-shadow:0 12px 26px rgba(var(--rph-b1-rgb),.55);}
#pc-page-roleplay-hub .rph-device.stolen.on{border-color:#f59e0b;background:rgba(120,53,15,.34);}
#pc-page-roleplay-hub .rph-device b{display:block;font-size:.76rem;font-weight:800;line-height:1.3;}
#pc-page-roleplay-hub .rph-device small{display:block;font-size:.63rem;color:rgba(148,163,184,.85);font-family:ui-monospace,monospace;letter-spacing:.05em;}
#pc-page-roleplay-hub .rph-device-ic{display:flex;flex-shrink:0;opacity:.85;}
#pc-page-roleplay-hub .rph-nophone{max-width:520px;margin:26px auto 0;padding:28px 26px;border-radius:20px;border:1px dashed rgba(148,163,184,.28);background:rgba(var(--rph-b1-rgb),.6);text-align:center;}
#pc-page-roleplay-hub .rph-nophone-ic{color:rgba(148,163,184,.35);display:flex;justify-content:center;margin-bottom:12px;}
#pc-page-roleplay-hub .rph-nophone b{display:block;font-size:1rem;color:#fff;margin-bottom:8px;}
#pc-page-roleplay-hub .rph-nophone p{color:rgba(148,163,184,.85);font-size:.84rem;line-height:1.65;margin:0 0 8px;}
#pc-page-roleplay-hub .rph-phone{
  position:relative;width:342px;height:718px;border-radius:58px;flex-shrink:0;
  background:linear-gradient(145deg,#1c1c1e 0%,#3a3a3d 11%,#232326 27%,#111113 52%,#38383b 76%,#1a1a1c 100%);
  padding:11px;box-shadow:0 40px 90px rgba(0,0,0,.75),0 0 0 1px rgba(255,255,255,.07) inset;
  transition:transform .5s cubic-bezier(.22,1,.36,1);
}
#pc-page-roleplay-hub .rph-phone::before{
  content:'';position:absolute;inset:5px;border-radius:53px;
  background:linear-gradient(160deg,rgba(255,255,255,.09),transparent 26%,transparent 76%,rgba(255,255,255,.05));
  pointer-events:none;z-index:6;
}
#pc-page-roleplay-hub .rph-phone-btn{position:absolute;background:linear-gradient(180deg,#4a4a4d,#232326);border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.6);border:none;padding:0;cursor:pointer;}
#pc-page-roleplay-hub .rph-phone-btn:active{filter:brightness(.85);}
#pc-page-roleplay-hub .rph-btn-action{left:-3px;top:132px;width:4px;height:34px;}
#pc-page-roleplay-hub .rph-btn-vol-up{left:-3px;top:186px;width:4px;height:62px;}
#pc-page-roleplay-hub .rph-btn-vol-down{left:-3px;top:260px;width:4px;height:62px;}
#pc-page-roleplay-hub .rph-btn-power{right:-3px;top:214px;width:4px;height:96px;}
#pc-page-roleplay-hub .rph-btn-power::after{content:'';position:absolute;inset:-8px -14px;border-radius:12px;}
#pc-page-roleplay-hub .rph-btn-vol-up::after,#pc-page-roleplay-hub .rph-btn-vol-down::after{content:'';position:absolute;inset:-6px -14px;border-radius:12px;}

#pc-page-roleplay-hub .rph-screen{
  position:relative;width:100%;height:100%;border-radius:48px;overflow:hidden;
  background:#000;isolation:isolate;
}
#pc-page-roleplay-hub .rph-wallpaper{
  position:absolute;inset:0;
  background:
    radial-gradient(120% 80% at 20% 8%,rgba(56,132,255,.55),transparent 55%),
    radial-gradient(110% 75% at 85% 22%,rgba(168,85,247,.45),transparent 58%),
    radial-gradient(130% 90% at 50% 105%,rgba(14,165,233,.4),transparent 60%),
    linear-gradient(170deg,var(--rph-b1) 0%,var(--rph-b3) 45%,#050810 100%);
  transition:filter .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1),opacity .5s cubic-bezier(.22,1,.36,1);
}
#pc-page-roleplay-hub .rph-screen.locked .rph-wallpaper{filter:brightness(.92);}
#pc-page-roleplay-hub .rph-screen.home .rph-wallpaper{filter:brightness(.7) saturate(1.15);transform:scale(1.06);}
#pc-page-roleplay-hub .rph-wp-home{opacity:0;}
#pc-page-roleplay-hub .rph-screen.home .rph-wp-home{opacity:1;}
#pc-page-roleplay-hub .rph-screen.home .rph-wp-lock{opacity:0;}

#pc-page-roleplay-hub .rph-wp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:2px 0 4px;}
#pc-page-roleplay-hub .rph-wp-item{position:relative;border:none;padding:0;background:none;cursor:pointer;font-family:inherit;}
#pc-page-roleplay-hub .rph-wp-thumb{display:block;width:100%;aspect-ratio:9/19.5;border-radius:12px;box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 6px 14px rgba(0,0,0,.45);transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s;}
#pc-page-roleplay-hub .rph-wp-item:hover .rph-wp-thumb{transform:translateY(-2px) scale(1.03);}
#pc-page-roleplay-hub .rph-wp-item.on .rph-wp-thumb{box-shadow:0 0 0 2px var(--rph-a2),0 6px 16px rgba(var(--rph-a2-rgb),.5);}
#pc-page-roleplay-hub .rph-wp-check{position:absolute;top:6px;right:6px;width:19px;height:19px;border-radius:50%;background:var(--rph-a2);color:#fff;display:none;align-items:center;justify-content:center;font-size:.62rem;font-weight:900;line-height:1;}
#pc-page-roleplay-hub .rph-wp-item.on .rph-wp-check{display:flex;}
#pc-page-roleplay-hub .rph-wp-name{display:block;margin-top:5px;font-size:.64rem;color:rgba(226,232,240,.65);text-align:center;line-height:1.25;}
#pc-page-roleplay-hub .rph-wp-item.on .rph-wp-name{color:#fff;font-weight:800;}
#pc-page-roleplay-hub .rph-wp-preview{display:block;height:78px;border-radius:11px;box-shadow:0 0 0 1px rgba(255,255,255,.13) inset;}

#pc-page-roleplay-hub .rph-screen-off{
  position:absolute;inset:0;background:#000;z-index:40;opacity:0;pointer-events:none;
  transition:opacity .45s cubic-bezier(.4,0,.2,1);
}
#pc-page-roleplay-hub .rph-screen.off .rph-screen-off{opacity:1;pointer-events:auto;}
#pc-page-roleplay-hub .rph-screen.off .rph-layer{opacity:0;}

#pc-page-roleplay-hub .rph-screen.asleep .rph-screen-off{opacity:1;pointer-events:auto;cursor:pointer;}
#pc-page-roleplay-hub .rph-screen.asleep .rph-layer{opacity:0;}
#pc-page-roleplay-hub .rph-screen.asleep .rph-homebar{opacity:0;}

#pc-page-roleplay-hub .rph-layer{position:absolute;inset:0;display:flex;flex-direction:column;transition:opacity .42s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-layer.hidden{opacity:0;pointer-events:none;}
#pc-page-roleplay-hub .rph-layer-lock.hidden{transform:translateY(-14%) scale(1.04);}
#pc-page-roleplay-hub .rph-layer-home.hidden{transform:scale(.9);}
#pc-page-roleplay-hub .rph-layer-app{background:linear-gradient(180deg,var(--rph-b1),#05070f);z-index:20;
  overflow:hidden;border-radius:48px;will-change:transform;
  transition:opacity .34s cubic-bezier(.4,0,.2,1),transform .48s cubic-bezier(.22,1,.36,1),border-radius .48s cubic-bezier(.22,1,.36,1);}
/* L'app se referme dans son icône (et s'en ouvre), coins arrondis comme sur iPhone. */
#pc-page-roleplay-hub .rph-layer-app.hidden{transform:scale(.16);opacity:0;border-radius:150px;}
@media (prefers-reduced-motion:reduce){#pc-page-roleplay-hub .rph-layer-app.hidden{transform:none;}}

#pc-page-roleplay-hub .rph-status{
  position:relative;z-index:25;height:52px;flex-shrink:0;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 26px 0;color:#fff;font-size:.78rem;font-weight:700;letter-spacing:.02em;
  font-variant-numeric:tabular-nums;
}
#pc-page-roleplay-hub .rph-status-right{
  display:flex;align-items:center;gap:6px;cursor:pointer;
  padding:5px 3px 5px 12px;margin:-5px -3px -5px -12px;border-radius:11px;
  transition:background .2s;-webkit-tap-highlight-color:transparent;
}
#pc-page-roleplay-hub .rph-status-right:hover{background:rgba(255,255,255,.13);}
#pc-page-roleplay-hub .rph-status-right svg{display:block;}

#pc-page-roleplay-hub .rph-cc{
  position:absolute;inset:0;z-index:35;display:flex;justify-content:center;align-items:flex-start;
  padding:56px 13px 0;opacity:0;pointer-events:none;
  background:rgba(3,6,14,.45);backdrop-filter:blur(22px) saturate(1.4);-webkit-backdrop-filter:blur(22px) saturate(1.4);
  transition:opacity .34s cubic-bezier(.22,1,.36,1);
}
#pc-page-roleplay-hub .rph-screen.cc-open .rph-cc{opacity:1;pointer-events:auto;}
#pc-page-roleplay-hub .rph-screen.cc-open .rph-status{z-index:36;}
#pc-page-roleplay-hub .rph-cc-panel{
  width:100%;opacity:0;transform:translateY(-16px) scale(.95);
  transition:opacity .3s,transform .5s cubic-bezier(.34,1.3,.5,1);
}
#pc-page-roleplay-hub .rph-screen.cc-open .rph-cc-panel{opacity:1;transform:none;}
#pc-page-roleplay-hub .rph-cc-grid{display:flex;gap:10px;margin-bottom:10px;}
#pc-page-roleplay-hub .rph-cc-card{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:12px;}
#pc-page-roleplay-hub .rph-cc-conn{flex:1.5;display:grid;grid-template-columns:1fr 1fr;gap:9px;}
#pc-page-roleplay-hub .rph-cc-side{flex:1;display:flex;flex-direction:column;gap:10px;}
#pc-page-roleplay-hub .rph-cc-btn{
  width:100%;aspect-ratio:1;border:none;border-radius:50%;background:rgba(255,255,255,.19);color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  transition:background .25s,transform .18s cubic-bezier(.34,1.4,.5,1);
}
#pc-page-roleplay-hub .rph-cc-btn svg{width:21px;height:21px;}
#pc-page-roleplay-hub .rph-cc-btn:active{transform:scale(.9);}
#pc-page-roleplay-hub .rph-cc-btn.on{background:var(--rph-a2);}
#pc-page-roleplay-hub .rph-cc-btn.warn{background:#f59e0b;color:#1b1206;}
#pc-page-roleplay-hub .rph-cc-sq{
  flex:1;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(255,255,255,.14);
  color:#fff;font-family:inherit;font-size:.58rem;font-weight:800;letter-spacing:.02em;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  padding:8px 4px;cursor:pointer;transition:background .25s,transform .18s;
}
#pc-page-roleplay-hub .rph-cc-sq svg{width:19px;height:19px;}
#pc-page-roleplay-hub .rph-cc-sq:active{transform:scale(.95);}
#pc-page-roleplay-hub .rph-cc-sq.on{background:rgba(var(--rph-a2-rgb),.85);}
#pc-page-roleplay-hub .rph-cc-sq.lit{background:rgba(245,158,11,.9);color:#1b1206;}
#pc-page-roleplay-hub .rph-cc-tile{
  display:flex;align-items:center;gap:11px;margin-bottom:10px;width:100%;
  text-align:left;color:#fff;font-family:inherit;
}
#pc-page-roleplay-hub .rph-cc-tile b{display:block;font-size:.78rem;font-weight:800;}
#pc-page-roleplay-hub .rph-cc-tile .s{display:block;font-size:.67rem;font-weight:600;color:rgba(255,255,255,.55);margin-top:1px;}
#pc-page-roleplay-hub .rph-cc-tile.tap{cursor:pointer;transition:background .22s,transform .18s;}
#pc-page-roleplay-hub .rph-cc-tile.tap:active{transform:scale(.98);}
#pc-page-roleplay-hub .rph-cc-ic{width:35px;height:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;}
#pc-page-roleplay-hub .rph-cc-bars{display:flex;align-items:flex-end;gap:2.5px;height:16px;}
#pc-page-roleplay-hub .rph-cc-bars i{width:4px;border-radius:1.5px;background:#fff;}
#pc-page-roleplay-hub .rph-cc-vol{padding:0;background:transparent;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;}

#pc-page-roleplay-hub .rph-slider{
  position:relative;height:46px;border-radius:999px;overflow:hidden;cursor:pointer;touch-action:none;
  background:rgba(120,120,128,.32);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border:1px solid rgba(255,255,255,.08);outline:none;
  transition:transform .2s cubic-bezier(.22,1,.36,1);
}
#pc-page-roleplay-hub .rph-slider.on{transform:scaleY(1.12);}
#pc-page-roleplay-hub .rph-slider-fill{
  position:absolute;top:0;bottom:0;left:0;width:var(--p,50%);background:#fff;
  transition:width .12s linear;
}
#pc-page-roleplay-hub .rph-slider.on .rph-slider-fill{transition:none;}
#pc-page-roleplay-hub .rph-slider-ic{
  position:absolute;left:15px;top:50%;transform:translateY(-50%);display:flex;color:#fff;
  mix-blend-mode:difference;pointer-events:none;
}
#pc-page-roleplay-hub .rph-slider-ic svg{width:19px;height:19px;}
#pc-page-roleplay-hub .rph-slider.mute .rph-slider-ic{opacity:.55;}

#pc-page-roleplay-hub .rph-volhud{
  position:absolute;left:9px;top:76px;z-index:60;pointer-events:none;
  opacity:0;transform:translateX(-8px) scale(.92);transform-origin:left center;
  transition:opacity .2s,transform .24s cubic-bezier(.22,1,.36,1);
}
#pc-page-roleplay-hub .rph-volhud.on{opacity:1;transform:none;}
#pc-page-roleplay-hub .rph-volhud-track{
  position:relative;width:27px;height:120px;border-radius:999px;overflow:hidden;
  background:rgba(120,120,128,.34);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 30px rgba(0,0,0,.4);
}
#pc-page-roleplay-hub .rph-volhud-fill{
  position:absolute;left:0;right:0;bottom:0;height:var(--p,50%);background:#fff;
  transition:height .12s cubic-bezier(.22,1,.36,1);
}
#pc-page-roleplay-hub .rph-volhud-ic{
  position:absolute;left:50%;bottom:8px;transform:translateX(-50%);display:flex;color:#fff;
  mix-blend-mode:difference;
}
#pc-page-roleplay-hub .rph-volhud-ic svg{width:15px;height:15px;}
#pc-page-roleplay-hub .rph-cc-hint{text-align:center;font-size:.63rem;font-weight:600;color:rgba(255,255,255,.38);margin-top:13px;}

#pc-page-roleplay-hub .rph-screen.torch-on .rph-wallpaper{filter:brightness(1.45) saturate(.75);}
#pc-page-roleplay-hub .rph-batt{width:26px;height:13px;border-radius:4px;border:1.4px solid rgba(255,255,255,.55);position:relative;padding:1.5px;}
#pc-page-roleplay-hub .rph-batt::after{content:'';position:absolute;right:-3.5px;top:3.5px;width:2px;height:4px;border-radius:0 2px 2px 0;background:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .rph-batt i{display:block;height:100%;border-radius:2px;background:#fff;transition:width .6s ease,background .3s;}

#pc-page-roleplay-hub .rph-island{
  position:absolute;top:14px;left:50%;transform:translateX(-50%);
  z-index:30;background:#000;border-radius:22px;
  width:112px;height:33px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 0 .5px rgba(255,255,255,.06);
  transition:width .55s cubic-bezier(.34,1.4,.5,1),height .55s cubic-bezier(.34,1.4,.5,1),border-radius .5s cubic-bezier(.34,1.4,.5,1);
}
#pc-page-roleplay-hub .rph-island .cam{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--rph-b3),#05070d 70%);box-shadow:0 0 0 1px rgba(255,255,255,.05);transition:opacity .3s;}
#pc-page-roleplay-hub .rph-island.compact{width:210px;height:36px;border-radius:20px;}
#pc-page-roleplay-hub .rph-island.expanded{width:274px;height:88px;border-radius:30px;}
#pc-page-roleplay-hub .rph-island.compact .cam,#pc-page-roleplay-hub .rph-island.expanded .cam{opacity:0;}
#pc-page-roleplay-hub .rph-island-content{opacity:0;transform:scale(.85);transition:opacity .3s ease .12s,transform .45s cubic-bezier(.34,1.4,.5,1) .1s;display:flex;align-items:center;gap:10px;padding:0 16px;width:100%;color:#fff;}
#pc-page-roleplay-hub .rph-island.compact .rph-island-content,#pc-page-roleplay-hub .rph-island.expanded .rph-island-content{opacity:1;transform:scale(1);}
#pc-page-roleplay-hub .rph-island-ic{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;}
#pc-page-roleplay-hub .rph-island-txt{min-width:0;flex:1;}
#pc-page-roleplay-hub .rph-island-txt b{display:block;font-size:.72rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#pc-page-roleplay-hub .rph-island-txt span{display:block;font-size:.63rem;color:rgba(255,255,255,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#pc-page-roleplay-hub .rph-island-wave{display:flex;align-items:flex-end;gap:2px;height:16px;flex-shrink:0;}
#pc-page-roleplay-hub .rph-island-wave i{width:2.5px;border-radius:2px;background:#4ade80;animation:rphWave 1s ease-in-out infinite;}
#pc-page-roleplay-hub .rph-island-wave i:nth-child(1){height:6px;animation-delay:0s;}
#pc-page-roleplay-hub .rph-island-wave i:nth-child(2){height:14px;animation-delay:.15s;}
#pc-page-roleplay-hub .rph-island-wave i:nth-child(3){height:9px;animation-delay:.3s;}
#pc-page-roleplay-hub .rph-island-wave i:nth-child(4){height:16px;animation-delay:.45s;}
@keyframes rphWave{0%,100%{transform:scaleY(.4);}50%{transform:scaleY(1);}}

#pc-page-roleplay-hub .rph-lock-body{flex:1;display:flex;flex-direction:column;align-items:center;padding:60px 26px 0;position:relative;z-index:10;}
#pc-page-roleplay-hub .rph-lock-date{font-size:.86rem;font-weight:600;color:rgba(255,255,255,.9);letter-spacing:.01em;margin-top:10px;text-transform:capitalize;}
#pc-page-roleplay-hub .rph-lock-time{font-size:5.1rem;line-height:1;font-weight:600;color:#fff;letter-spacing:-2px;margin-top:2px;font-variant-numeric:tabular-nums;text-shadow:0 4px 30px rgba(0,0,0,.35);}
#pc-page-roleplay-hub .rph-lock-notifs{width:100%;margin-top:26px;display:flex;flex-direction:column;gap:9px;overflow-y:auto;overflow-x:hidden;max-height:300px;scrollbar-width:none;}

#pc-page-roleplay-hub .rph-lock-notifs::-webkit-scrollbar{display:none;}
#pc-page-roleplay-hub .rph-lock-notifs > *{flex-shrink:0;}
#pc-page-roleplay-hub .rph-notif{
  display:flex;gap:11px;align-items:flex-start;padding:12px 14px;border-radius:19px;
  background:rgba(255,255,255,.16);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border:1px solid rgba(255,255,255,.1);color:#fff;
  animation:rphNotifIn .55s cubic-bezier(.22,1,.36,1) both;
}
@keyframes rphNotifIn{from{opacity:0;transform:translateY(14px) scale(.96);}to{opacity:1;transform:none;}}
#pc-page-roleplay-hub .rph-notif-ic{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
#pc-page-roleplay-hub .rph-lock-notifs .rph-notif-ic svg{width:19px;height:19px;}
#pc-page-roleplay-hub .rph-notif-txt{min-width:0;flex:1;}
#pc-page-roleplay-hub .rph-notif-txt b{display:block;font-size:.76rem;font-weight:700;}
#pc-page-roleplay-hub .rph-notif-txt span{display:block;font-size:.72rem;color:rgba(255,255,255,.75);line-height:1.35;margin-top:1px;}

#pc-page-roleplay-hub .rph-nhead{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 6px 1px;}
#pc-page-roleplay-hub .rph-nhead b{font-size:.64rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .rph-nhead button,#pc-page-roleplay-hub .rph-ngrp-head button{
  border:none;background:rgba(255,255,255,.16);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  color:rgba(255,255,255,.92);font-family:inherit;font-size:.6rem;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;padding:5px 11px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s;
}
#pc-page-roleplay-hub .rph-nhead button:hover,#pc-page-roleplay-hub .rph-ngrp-head button:hover{background:rgba(255,80,80,.55);color:#fff;}
#pc-page-roleplay-hub .rph-ngroup{position:relative;display:flex;flex-direction:column;gap:8px;}
#pc-page-roleplay-hub .rph-ngroup.stacked{padding-bottom:15px;cursor:pointer;gap:0;flex-shrink:0;}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s0{position:relative;z-index:3;}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s1,
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s2{position:absolute;top:0;bottom:15px;overflow:hidden;border-radius:19px;pointer-events:none;transition:transform .3s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s1{left:8px;right:8px;z-index:2;transform:translateY(7px);}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s2{left:16px;right:16px;z-index:1;transform:translateY(14px);}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s1 > .rph-notif,
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s2 > .rph-notif{height:100%;box-sizing:border-box;padding:0;animation:none;
  backdrop-filter:none;-webkit-backdrop-filter:none;border-color:rgba(255,255,255,.08);}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s1 .rph-ndel,
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s2 .rph-ndel{display:none;}
#pc-page-roleplay-hub .rph-ngroup.stacked:hover > .rph-nrow.s1{transform:translateY(9px);}
#pc-page-roleplay-hub .rph-ngroup.stacked:hover > .rph-nrow.s2{transform:translateY(18px);}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s1 .rph-notif > *,
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s2 .rph-notif > *{visibility:hidden;}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s1 .rph-notif{background:rgba(58,62,74,.82);}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow.s2 .rph-notif{background:rgba(44,48,58,.72);}
#pc-page-roleplay-hub .rph-ngroup.open{padding-bottom:2px;}
#pc-page-roleplay-hub .rph-ngrp-head{display:none;align-items:center;justify-content:space-between;gap:8px;padding:2px 6px 0;}
#pc-page-roleplay-hub .rph-ngroup.open .rph-ngrp-head{display:flex;}
#pc-page-roleplay-hub .rph-ngrp-head b{font-size:.64rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .rph-ngroup.open > .rph-nrow{animation:rphNotifIn .42s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-ngroup.open > .rph-nrow.s1{animation-delay:.04s;}
#pc-page-roleplay-hub .rph-ngroup.open > .rph-nrow.s2{animation-delay:.08s;}
#pc-page-roleplay-hub .rph-ngroup.open > .rph-nrow.s3{animation-delay:.12s;}

#pc-page-roleplay-hub .rph-nrow{position:relative;border-radius:19px;touch-action:pan-y;--sx:0px;}
#pc-page-roleplay-hub .rph-nrow > .rph-notif{transform:translateX(var(--sx));transition:transform .28s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-nrow.swiping > .rph-notif{transition:none;}
#pc-page-roleplay-hub .rph-nrow.swiping,#pc-page-roleplay-hub .rph-nrow.armed{overflow:hidden;}
#pc-page-roleplay-hub .rph-ndel{
  position:absolute;top:0;right:0;bottom:0;width:96px;display:flex;align-items:center;justify-content:center;
  border-radius:19px;background:linear-gradient(160deg,#ef4444,#b91c1c);opacity:0;transition:opacity .2s;
}
#pc-page-roleplay-hub .rph-nrow.swiping .rph-ndel,#pc-page-roleplay-hub .rph-nrow.armed .rph-ndel{opacity:1;}
#pc-page-roleplay-hub .rph-ndel button{
  border:none;background:transparent;color:#fff;font-family:inherit;font-size:.66rem;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:10px 12px;width:100%;height:100%;
}
#pc-page-roleplay-hub .rph-nx{
  position:absolute;top:-6px;right:-4px;z-index:4;width:21px;height:21px;border-radius:50%;border:none;
  background:rgba(var(--rph-b3-rgb),.9);color:#fff;font:700 13px/1 system-ui;cursor:pointer;opacity:0;
  display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.45);
  transition:opacity .18s,background .18s,transform .18s;
}
#pc-page-roleplay-hub .rph-nrow:hover .rph-nx{opacity:1;}
#pc-page-roleplay-hub .rph-nx:hover{background:#ef4444;transform:scale(1.12);}
#pc-page-roleplay-hub .rph-ngroup.stacked > .rph-nrow:not(.s0) .rph-nx{display:none;}
#pc-page-roleplay-hub .rph-nrow.gone{
  pointer-events:none;overflow:hidden;
  animation:rphNotifOut .24s cubic-bezier(.4,0,1,1) both;
}
@keyframes rphNotifOut{to{opacity:0;transform:translateX(-60%) scale(.92);}}
#pc-page-roleplay-hub .rph-notif-time{font:600 .64rem system-ui;color:rgba(255,255,255,.5);white-space:nowrap;margin-left:6px;flex:0 0 auto;}

#pc-page-roleplay-hub .rph-map{position:relative;border-radius:18px;overflow:hidden;background:var(--rph-b2);border:1px solid rgba(255,255,255,.08);}
#pc-page-roleplay-hub .rph-map img{display:block;width:100%;height:auto;}
#pc-page-roleplay-hub .rph-map-pin{
  position:absolute;transform:translate(-50%,-50%);width:17px;height:17px;padding:0;border-radius:50%;
  border:2px solid rgba(255,255,255,.9);background:var(--pin,var(--rph-a2));cursor:pointer;
  box-shadow:0 0 0 4px rgba(0,0,0,.28),0 4px 10px rgba(0,0,0,.5);transition:transform .18s,opacity .18s;
}
#pc-page-roleplay-hub .rph-map-pin:hover{transform:translate(-50%,-50%) scale(1.28);}
#pc-page-roleplay-hub .rph-map-pin.on{animation:rphPinPulse 1.6s ease-in-out infinite;}
@keyframes rphPinPulse{0%,100%{box-shadow:0 0 0 4px rgba(0,0,0,.28),0 0 0 0 rgba(255,255,255,.45);}50%{box-shadow:0 0 0 4px rgba(0,0,0,.28),0 0 0 9px rgba(255,255,255,0);}}
#pc-page-roleplay-hub .rph-map-mini{position:relative;border-radius:14px;overflow:hidden;background:var(--rph-b2) center/cover no-repeat;border:1px solid rgba(255,255,255,.09);}
#pc-page-roleplay-hub .rph-map-mini i{
  position:absolute;left:50%;top:50%;width:13px;height:13px;margin:-6.5px 0 0 -6.5px;border-radius:50%;
  border:2px solid #fff;background:var(--pin,var(--rph-a2));box-shadow:0 0 0 4px rgba(0,0,0,.3);z-index:2;
}
#pc-page-roleplay-hub .rph-map-mini::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 50% 50%,rgba(2,6,16,0) 24%,rgba(2,6,16,.6) 80%);
}
#pc-page-roleplay-hub .rph-map-mini i::after{
  content:'';position:absolute;inset:-7px;border-radius:50%;border:2px solid var(--pin,var(--rph-a2));
  animation:rphLocPulse 1.9s cubic-bezier(.22,1,.36,1) infinite;
}
@keyframes rphLocPulse{0%{transform:scale(.55);opacity:.85;}100%{transform:scale(1.9);opacity:0;}}
#pc-page-roleplay-hub .rph-map-cat{display:inline-block;font-size:.6rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid currentColor;}
#pc-page-roleplay-hub .rph-map-row{
  display:flex;align-items:center;gap:11px;width:100%;text-align:left;padding:11px 13px;margin-bottom:8px;
  border-radius:15px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.04);
  color:#fff;font-family:inherit;cursor:pointer;transition:background .18s,border-color .18s;
}
#pc-page-roleplay-hub .rph-map-row:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.16);}
#pc-page-roleplay-hub .rph-map-row > i{flex:0 0 auto;width:11px;height:11px;border-radius:50%;background:var(--pin,var(--rph-a2));box-shadow:0 0 0 3px rgba(255,255,255,.08);}
#pc-page-roleplay-hub .rph-map-tools{display:flex;align-items:center;gap:8px;margin-top:8px;}
#pc-page-roleplay-hub .rph-map-tools .rph-in{flex:1;min-width:0;margin-top:0;}
#pc-page-roleplay-hub .rph-map-filter{
  position:relative;flex:0 0 auto;width:43px;height:43px;border-radius:13px;cursor:pointer;
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.08);color:rgba(226,232,240,.82);
  display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s,border-color .2s;
}
#pc-page-roleplay-hub .rph-map-filter:hover{background:rgba(255,255,255,.15);color:#fff;}
#pc-page-roleplay-hub .rph-map-filter.open{background:rgba(var(--rph-a2-rgb),.28);border-color:rgba(var(--rph-a3-rgb),.5);color:#fff;}
#pc-page-roleplay-hub .rph-map-filter.on::after{
  content:'';position:absolute;top:-4px;right:-4px;width:11px;height:11px;border-radius:50%;
  background:var(--rph-a4);border:2px solid var(--rph-b2);
}
#pc-page-roleplay-hub .rph-map-cats{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;animation:rphNotifIn .3s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-map-cchip{
  display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;cursor:pointer;
  border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:rgba(226,232,240,.82);
  font-family:inherit;font-size:.7rem;font-weight:700;transition:background .2s,color .2s,border-color .2s;
}
#pc-page-roleplay-hub .rph-map-cchip:hover{background:rgba(255,255,255,.13);color:#fff;}
#pc-page-roleplay-hub .rph-map-cchip.on{background:rgba(var(--rph-a2-rgb),.4);border-color:rgba(var(--rph-a3-rgb),.7);color:#fff;}
#pc-page-roleplay-hub .rph-map-cchip i{width:9px;height:9px;border-radius:50%;background:var(--pin,#64748b);flex:0 0 auto;}
#pc-page-roleplay-hub .rph-map-pin.off{opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.4);}
#pc-page-roleplay-hub .rph-map-row b{display:block;font-size:.84rem;}
#pc-page-roleplay-hub .rph-map-row small{display:block;font-size:.7rem;color:rgba(148,163,184,.85);margin-top:2px;}
#pc-page-roleplay-hub .rph-bub-loc{padding:0;overflow:hidden;max-width:78%;}
#pc-page-roleplay-hub .rph-bub-loc .rph-map-mini{border:none;border-radius:0;height:92px;}
#pc-page-roleplay-hub .rph-bub-loc .rph-loc-txt{display:block;padding:9px 12px 10px;}
#pc-page-roleplay-hub .rph-bub-loc .rph-loc-txt b{display:block;font-size:.8rem;}
#pc-page-roleplay-hub .rph-bub-loc .rph-loc-txt span{display:block;font-size:.68rem;color:rgba(255,255,255,.6);margin-top:1px;}
#pc-page-roleplay-hub .rph-nmore{
  position:absolute;right:13px;bottom:7px;z-index:4;font-size:.58rem;font-weight:800;color:rgba(255,255,255,.8);
  letter-spacing:.04em;pointer-events:none;background:rgba(255,255,255,.14);padding:1px 6px;border-radius:99px;
}
#pc-page-roleplay-hub .rph-lock-foot{margin-top:auto;padding-bottom:16px;display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;position:relative;z-index:10;}
#pc-page-roleplay-hub .rph-lock-hint{font-size:.72rem;color:rgba(255,255,255,.55);font-weight:600;animation:rphHint 2.4s ease-in-out infinite;}
@keyframes rphHint{0%,100%{opacity:.45;transform:translateY(0);}50%{opacity:.95;transform:translateY(-4px);}}
#pc-page-roleplay-hub .rph-lock-quick{display:flex;justify-content:space-between;width:100%;padding:0 24px;}
#pc-page-roleplay-hub .rph-lock-quick button{width:42px;height:42px;border-radius:50%;border:none;background:rgba(255,255,255,.18);backdrop-filter:blur(18px);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .25s cubic-bezier(.34,1.4,.5,1),background .25s;}
#pc-page-roleplay-hub .rph-lock-quick button:hover{background:rgba(255,255,255,.3);transform:scale(1.08);}

#pc-page-roleplay-hub .rph-layer-pin{
  z-index:24;align-items:center;padding:64px 0 18px;
  background:rgba(4,7,16,.55);
  backdrop-filter:blur(26px) saturate(1.35);-webkit-backdrop-filter:blur(26px) saturate(1.35);
}
#pc-page-roleplay-hub .rph-layer-pin.hidden{transform:translateY(9%) scale(.99);}
#pc-page-roleplay-hub .rph-screen.pin-open .rph-layer-lock{transform:scale(.97);filter:brightness(.75);}
#pc-page-roleplay-hub .rph-layer-lock{transition:opacity .42s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1),filter .45s ease;}

#pc-page-roleplay-hub .rph-pin-head{display:flex;flex-direction:column;align-items:center;gap:9px;padding:0 24px;text-align:center;}
#pc-page-roleplay-hub .rph-pin-ic{
  width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.14);color:#fff;
  animation:rphPinIcIn .55s cubic-bezier(.34,1.4,.5,1) both;
}
@keyframes rphPinIcIn{from{opacity:0;transform:scale(.5);}to{opacity:1;transform:none;}}
#pc-page-roleplay-hub .rph-pin-title{font-size:.94rem;font-weight:700;color:#fff;letter-spacing:.01em;}
#pc-page-roleplay-hub .rph-pin-sub{font-size:.74rem;font-weight:600;color:rgba(255,255,255,.6);line-height:1.5;min-height:32px;max-width:250px;}
#pc-page-roleplay-hub .rph-pin-sub.bad{color:#fca5a5;}

#pc-page-roleplay-hub .rph-pin-dots{display:flex;gap:22px;margin-top:20px;}
#pc-page-roleplay-hub .rph-pin-dots i{
  width:13px;height:13px;border-radius:50%;display:block;
  border:1.5px solid rgba(255,255,255,.7);background:transparent;
  transition:background .2s,border-color .2s,transform .2s;
}
#pc-page-roleplay-hub .rph-pin-dots i.on{background:#fff;animation:rphPinDot .34s cubic-bezier(.34,1.6,.5,1);}
@keyframes rphPinDot{0%{transform:scale(.5);}55%{transform:scale(1.32);}100%{transform:scale(1);}}
#pc-page-roleplay-hub .rph-pin-dots.bad i{background:#f87171;border-color:#f87171;}
#pc-page-roleplay-hub .rph-pin-dots.good i{background:#4ade80;border-color:#4ade80;}
#pc-page-roleplay-hub .rph-pin-dots.shake{animation:rphPinShake .5s cubic-bezier(.36,.07,.19,.97);}
#pc-page-roleplay-hub .rph-pin-dots.wait i{animation:rphPinWait 1s ease-in-out infinite;}
#pc-page-roleplay-hub .rph-pin-dots.wait i:nth-child(2){animation-delay:.12s;}
#pc-page-roleplay-hub .rph-pin-dots.wait i:nth-child(3){animation-delay:.24s;}
#pc-page-roleplay-hub .rph-pin-dots.wait i:nth-child(4){animation-delay:.36s;}
@keyframes rphPinWait{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.32;transform:scale(.72);}}

#pc-page-roleplay-hub .rph-layer-face{
  z-index:26;align-items:center;justify-content:center;
  background:rgba(4,7,16,.62);
  backdrop-filter:blur(26px) saturate(1.35);-webkit-backdrop-filter:blur(26px) saturate(1.35);
}
#pc-page-roleplay-hub .rph-face-box{display:flex;flex-direction:column;align-items:center;gap:13px;padding:0 30px;text-align:center;}
#pc-page-roleplay-hub .rph-face-ic{
  position:relative;overflow:hidden;width:98px;height:98px;border-radius:27px;
  display:flex;align-items:center;justify-content:center;color:#fff;
  background:rgba(255,255,255,.07);box-shadow:0 0 0 1.5px rgba(255,255,255,.22) inset;
  transition:color .3s,box-shadow .35s,transform .35s cubic-bezier(.34,1.4,.5,1);
}
#pc-page-roleplay-hub .rph-face-ic::after{
  content:'';position:absolute;left:9%;right:9%;top:11%;height:2px;border-radius:2px;opacity:0;
  background:linear-gradient(90deg,transparent,var(--rph-a4),transparent);
  box-shadow:0 0 12px rgba(var(--rph-a4-rgb),.85);
}
#pc-page-roleplay-hub .rph-layer-face.scan .rph-face-ic::after{opacity:1;animation:rphFaceScan 1.05s ease-in-out infinite;}
@keyframes rphFaceScan{0%,100%{transform:translateY(0);}50%{transform:translateY(66px);}}
#pc-page-roleplay-hub .rph-layer-face.ok .rph-face-ic{color:#4ade80;box-shadow:0 0 0 2px rgba(74,222,128,.85) inset;transform:scale(1.05);}
#pc-page-roleplay-hub .rph-layer-face.ko .rph-face-ic{color:#f87171;box-shadow:0 0 0 2px rgba(248,113,113,.85) inset;animation:rphPinShake .5s cubic-bezier(.36,.07,.19,.97);}
#pc-page-roleplay-hub .rph-face-title{font-size:.94rem;font-weight:700;color:#fff;letter-spacing:.01em;}
#pc-page-roleplay-hub .rph-face-sub{font-size:.76rem;font-weight:600;color:rgba(255,255,255,.6);min-height:20px;}
#pc-page-roleplay-hub .rph-layer-face.ko .rph-face-sub{color:#fca5a5;}
#pc-page-roleplay-hub .rph-screen.face-open .rph-layer-lock{transform:scale(.97);filter:brightness(.75);}
@keyframes rphPinShake{
  10%,90%{transform:translateX(-7px);}
  20%,80%{transform:translateX(11px);}
  30%,50%,70%{transform:translateX(-13px);}
  40%,60%{transform:translateX(13px);}
}

#pc-page-roleplay-hub .rph-pin-pad{
  margin-top:auto;display:grid;grid-template-columns:repeat(3,72px);gap:16px 24px;justify-content:center;
}
#pc-page-roleplay-hub .rph-pin-key{
  width:72px;height:72px;border-radius:50%;border:none;padding:0;cursor:pointer;
  background:rgba(255,255,255,.16);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  color:#fff;font-family:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;
  position:relative;line-height:1;-webkit-tap-highlight-color:transparent;
  transition:background .18s,transform .14s cubic-bezier(.34,1.5,.5,1);
  animation:rphPinKeyIn .42s cubic-bezier(.22,1,.36,1) both;
}
@keyframes rphPinKeyIn{from{opacity:0;transform:translateY(16px) scale(.8);}to{opacity:1;transform:none;}}
#pc-page-roleplay-hub .rph-pin-key b{font-size:1.62rem;font-weight:400;letter-spacing:.01em;}
#pc-page-roleplay-hub .rph-pin-key span{font-size:.5rem;font-weight:700;letter-spacing:.18em;margin-top:3px;color:rgba(255,255,255,.75);}
#pc-page-roleplay-hub .rph-pin-key:hover{background:rgba(255,255,255,.26);}
#pc-page-roleplay-hub .rph-pin-key:active,#pc-page-roleplay-hub .rph-pin-key.hit{background:rgba(255,255,255,.42);transform:scale(.9);}
#pc-page-roleplay-hub .rph-pin-key.hit::after{
  content:'';position:absolute;inset:0;border-radius:50%;pointer-events:none;
  box-shadow:0 0 0 0 rgba(255,255,255,.5);animation:rphPinRipple .45s ease-out;
}
@keyframes rphPinRipple{to{box-shadow:0 0 0 16px rgba(255,255,255,0);}}

#pc-page-roleplay-hub .rph-pin-foot{
  display:flex;justify-content:space-between;width:100%;max-width:272px;margin-top:20px;
  animation:rphPinKeyIn .42s .28s cubic-bezier(.22,1,.36,1) both;
}
#pc-page-roleplay-hub .rph-pin-foot button{
  background:none;border:none;color:#fff;font-family:inherit;font-size:.82rem;font-weight:600;
  cursor:pointer;padding:6px 4px;opacity:.9;transition:opacity .2s;
}
#pc-page-roleplay-hub .rph-pin-foot button:hover{opacity:1;}
#pc-page-roleplay-hub .rph-pin-foot button.off{opacity:.28;pointer-events:none;}
#pc-page-roleplay-hub .rph-screen.pin-open .rph-homebar{opacity:0;pointer-events:none;}

#pc-page-roleplay-hub .rph-home-body{flex:1;display:flex;flex-direction:column;padding:58px 22px 0;position:relative;z-index:10;overflow:hidden;}
#pc-page-roleplay-hub .rph-apps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 14px;margin-top:14px;}
#pc-page-roleplay-hub .rph-app{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:none;padding:0;cursor:pointer;animation:rphAppIn .5s cubic-bezier(.22,1,.36,1) both;}
@keyframes rphAppIn{from{opacity:0;transform:scale(.6);}to{opacity:1;transform:none;}}
/* Mode réorganisation de l'écran d'accueil */
#pc-page-roleplay-hub .rph-pages.tween{scroll-snap-type:none;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages{scroll-snap-type:none;}
#pc-page-roleplay-hub .rph-edge{position:absolute;top:70px;bottom:130px;width:26px;z-index:35;pointer-events:none;opacity:0;transition:opacity .2s;display:flex;align-items:center;justify-content:center;}
#pc-page-roleplay-hub .rph-edge.l{left:0;background:linear-gradient(90deg,rgba(255,255,255,.28),transparent);border-radius:0 14px 14px 0;}
#pc-page-roleplay-hub .rph-edge.r{right:0;background:linear-gradient(270deg,rgba(255,255,255,.28),transparent);border-radius:14px 0 0 14px;}
#pc-page-roleplay-hub .rph-edge.on{opacity:1;animation:rphEdgePulse .48s ease-in-out;}
#pc-page-roleplay-hub .rph-edge span{width:4px;height:44px;border-radius:4px;background:rgba(255,255,255,.75);}
#pc-page-roleplay-hub .rph-edge.r.new span{width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.85) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b1226' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/12px no-repeat;}
@keyframes rphEdgePulse{0%{opacity:.3}100%{opacity:1}}
#pc-page-roleplay-hub .rph-app{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages .rph-app{animation:none;opacity:1;cursor:grab;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages .rph-app-ic{animation:rphJiggle .26s ease-in-out infinite alternate;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages .rph-app:nth-child(2n) .rph-app-ic{animation-delay:-.13s;animation-direction:alternate-reverse;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages .rph-app:nth-child(3n) .rph-app-ic{animation-duration:.3s;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages{touch-action:none;}
@keyframes rphJiggle{from{transform:rotate(-1.6deg)}to{transform:rotate(1.6deg)}}
#pc-page-roleplay-hub .rph-app.rph-app-hole{opacity:0 !important;}
#pc-page-roleplay-hub .rph-app-ghost{position:absolute;z-index:40;pointer-events:none;animation:none !important;margin:0;}
#pc-page-roleplay-hub .rph-app-ghost .rph-app-ic{transform:scale(1.14);box-shadow:0 16px 30px rgba(0,0,0,.55);transition:transform .2s;}
#pc-page-roleplay-hub .rph-app-ghost .rph-app-lbl{opacity:0;}
#pc-page-roleplay-hub .rph-app-ghost.drop .rph-app-ic{transform:none;}
#pc-page-roleplay-hub .rph-edit-done{position:absolute;top:46px;right:18px;z-index:30;padding:6px 15px;border-radius:99px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#fff;font-family:inherit;font-weight:700;font-size:.78rem;cursor:pointer;opacity:0;pointer-events:none;transform:scale(.85);transition:opacity .2s,transform .2s;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-edit-done{opacity:1;pointer-events:auto;transform:none;}
#pc-page-roleplay-hub .rph-edit-done:hover{background:rgba(255,255,255,.3);}
@media (prefers-reduced-motion:reduce){#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages .rph-app-ic{animation:none;}}
/* ── Widgets du téléphone ── */
#pc-page-roleplay-hub .rph-pages .rph-apps{grid-auto-flow:row dense;}
#pc-page-roleplay-hub .rph-wgt{position:relative;align-items:stretch;justify-content:flex-start;height:calc(var(--wg-cell,78px) * 2 + var(--wg-rgap,20px));min-width:0;outline:none;}
#pc-page-roleplay-hub .rph-wgt.s-s{grid-column:span 2;grid-row:span 2;}
#pc-page-roleplay-hub .rph-wgt.s-m{grid-column:span 4;grid-row:span 2;}
#pc-page-roleplay-hub .rph-wgt.s-l{grid-column:span 4;grid-row:span 4;height:calc(var(--wg-cell,78px) * 4 + var(--wg-rgap,20px) * 3);}
#pc-page-roleplay-hub .rph-wgt .rph-app-lbl{align-self:center;}
#pc-page-roleplay-hub .rph-wgt-box{flex:1;min-height:0;min-width:0;position:relative;display:flex;flex-direction:column;overflow:hidden;border-radius:20px;padding:11px 12px;color:#fff;text-align:left;background:rgba(18,22,36,.62);-webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);box-shadow:0 8px 22px rgba(0,0,0,.32),0 0 0 .5px rgba(255,255,255,.14) inset;font-variant-numeric:tabular-nums;transition:transform .3s cubic-bezier(.34,1.4,.5,1),box-shadow .3s;box-sizing:border-box;}
#pc-page-roleplay-hub .rph-wgt:hover .rph-wgt-box{transform:scale(1.02);}
#pc-page-roleplay-hub .rph-wgt:active .rph-wgt-box{transform:scale(.97);}
#pc-page-roleplay-hub .rph-wgt:focus-visible .rph-wgt-box{box-shadow:0 0 0 2px #fff,0 8px 22px rgba(0,0,0,.32);}
#pc-page-roleplay-hub .rph-screen.glass .rph-wgt-box{background:rgba(255,255,255,.1);}
#pc-page-roleplay-hub .rph-wgt-x{position:absolute;top:-7px;left:-7px;z-index:3;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(40,44,58,.92);color:#fff;border:1px solid rgba(255,255,255,.25);box-shadow:0 3px 8px rgba(0,0,0,.4);cursor:pointer;opacity:0;transform:scale(.4);pointer-events:none;transition:opacity .2s,transform .2s cubic-bezier(.34,1.4,.5,1);}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-wgt-x{opacity:1;transform:none;pointer-events:auto;}
#pc-page-roleplay-hub .rph-wgt-x:hover{background:#dc2626;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages .rph-wgt .rph-wgt-box{animation:rphWgJiggle .3s ease-in-out infinite alternate;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages .rph-wgt:nth-child(2n) .rph-wgt-box{animation-delay:-.15s;}
@keyframes rphWgJiggle{from{transform:rotate(-.6deg);}to{transform:rotate(.6deg);}}
#pc-page-roleplay-hub .rph-app-ghost.rph-wgt{position:absolute;}
#pc-page-roleplay-hub .rph-app-ghost.rph-wgt .rph-wgt-box{transform:scale(1.04);box-shadow:0 20px 40px rgba(0,0,0,.55);animation:none;}
#pc-page-roleplay-hub .rph-app-ghost.rph-wgt .rph-wgt-x,#pc-page-roleplay-hub .rph-app-ghost.rph-wgt .rph-app-lbl{opacity:0;}
#pc-page-roleplay-hub .rph-app-ghost.rph-wgt.drop .rph-wgt-box{transform:none;}
#pc-page-roleplay-hub .rph-wgt.rph-wgt-new .rph-wgt-box{animation:rphWgIn .45s cubic-bezier(.34,1.4,.5,1) both;}
#pc-page-roleplay-hub .rph-wgt.rph-wgt-out{transition:opacity .18s,transform .18s;opacity:0;transform:scale(.8);}
@keyframes rphWgIn{from{opacity:0;transform:scale(.7);}to{opacity:1;transform:none;}}
#pc-page-roleplay-hub .rph-edit-add{position:absolute;top:46px;left:18px;z-index:30;width:31px;height:31px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transform:scale(.85);transition:opacity .2s,transform .2s;}
#pc-page-roleplay-hub .rph-layer-home.editing .rph-edit-add{opacity:1;pointer-events:auto;transform:none;}
#pc-page-roleplay-hub .rph-edit-add:hover{background:rgba(255,255,255,.32);}
#pc-page-roleplay-hub .rph-edit-add:focus-visible,#pc-page-roleplay-hub .rph-edit-done:focus-visible{outline:2px solid #fff;outline-offset:2px;}

/* Contenu des widgets */
#pc-page-roleplay-hub .rph-wgt-box > *{position:relative;z-index:1;}
#pc-page-roleplay-hub .rph-wgt-box .wg-bg{position:absolute;inset:0;z-index:0;}
#pc-page-roleplay-hub .rph-wgt-box .wg-img{background-size:cover;background-position:center;}
#pc-page-roleplay-hub .rph-wgt-box .wg-shade{background:linear-gradient(180deg,rgba(0,0,0,.15) 0%,rgba(0,0,0,.35) 45%,rgba(0,0,0,.85) 100%);}
#pc-page-roleplay-hub .rph-wgt-box .wg-news-bg{background:linear-gradient(160deg,#7f1d1d,#1f1115);}
#pc-page-roleplay-hub .wg-in{display:flex;flex-direction:column;min-height:0;min-width:0;flex:1;}
#pc-page-roleplay-hub .wg-h{display:flex;align-items:center;gap:5px;font-size:.6rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.72);min-width:0;flex-shrink:0;}
#pc-page-roleplay-hub .wg-h > span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-h-r{font-size:.66rem;letter-spacing:0;text-transform:none;color:#fff;white-space:nowrap;}
#pc-page-roleplay-hub .t-weather .wg-h{color:#bae6fd;} #pc-page-roleplay-hub .t-bank .wg-h{color:#93c5fd;}
#pc-page-roleplay-hub .t-market .wg-h{color:#7dd3fc;} #pc-page-roleplay-hub .t-actus .wg-h{color:#fecaca;}
#pc-page-roleplay-hub .t-agenda .wg-h{color:#5eead4;}
#pc-page-roleplay-hub .t-messages .wg-h{color:#86efac;}
#pc-page-roleplay-hub .rph-wgt-box em.up,#pc-page-roleplay-hub .rph-wgt-box b.up{color:#4ade80;}
#pc-page-roleplay-hub .rph-wgt-box em.down,#pc-page-roleplay-hub .rph-wgt-box b.down{color:#f87171;}
#pc-page-roleplay-hub .rph-wgt-box em.flat{color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .rph-wgt-box em{font-style:normal;font-weight:800;}
#pc-page-roleplay-hub .wg-wait{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:rgba(255,255,255,.6);font-size:.66rem;text-align:center;}
#pc-page-roleplay-hub .wg-wait i{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.2);border-top-color:rgba(255,255,255,.8);animation:rphWgSpin .9s linear infinite;}
@keyframes rphWgSpin{to{transform:rotate(360deg);}}
#pc-page-roleplay-hub .wg-priv{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;color:rgba(255,255,255,.75);}
#pc-page-roleplay-hub .wg-priv b{font-size:.78rem;} #pc-page-roleplay-hub .wg-priv small{font-size:.6rem;color:rgba(255,255,255,.5);line-height:1.35;}
#pc-page-roleplay-hub .wg-empty{flex:1;display:flex;flex-direction:column;justify-content:center;gap:3px;}
#pc-page-roleplay-hub .wg-empty b{font-size:.84rem;} #pc-page-roleplay-hub .wg-empty small{font-size:.64rem;color:rgba(255,255,255,.55);line-height:1.35;}
#pc-page-roleplay-hub .wg-big{flex:1;display:flex;flex-direction:column;justify-content:flex-end;min-width:0;}
#pc-page-roleplay-hub .wg-big small{font-size:.62rem;color:rgba(255,255,255,.6);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-big b{font-size:1.45rem;font-weight:700;letter-spacing:-.5px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-big em{font-size:.76rem;margin-top:1px;}
#pc-page-roleplay-hub .wg-spark{margin-top:6px;} #pc-page-roleplay-hub .wg-spark svg{width:100%;height:26px;display:block;}
#pc-page-roleplay-hub .wg-split{flex:1;display:flex;gap:12px;min-height:0;margin-top:6px;}
#pc-page-roleplay-hub .wg-split > *{flex:1;min-width:0;}
#pc-page-roleplay-hub .wg-seat{width:6px;height:6px;border-radius:50%;background:#4ade80;flex-shrink:0;}
#pc-page-roleplay-hub .wg-seat.calm{background:#fbbf24;} #pc-page-roleplay-hub .wg-seat.shut{background:#f87171;}
/* Horloge */
#pc-page-roleplay-hub .t-clock{background:rgba(250,250,250,.94);color:#111;padding:8px;}
#pc-page-roleplay-hub .wg-clock{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:0;}
#pc-page-roleplay-hub .wg-clock svg{width:100%;flex:1;min-height:0;max-height:118px;}
#pc-page-roleplay-hub .wg-clock .f{fill:#fff;stroke:rgba(0,0,0,.08);stroke-width:1;}
#pc-page-roleplay-hub .wg-clock .t{stroke:rgba(0,0,0,.28);stroke-width:1.4;stroke-linecap:round;}
#pc-page-roleplay-hub .wg-clock .T{stroke:#111;stroke-width:2.6;stroke-linecap:round;}
#pc-page-roleplay-hub .wg-clock .hh{stroke:#111;stroke-width:4;stroke-linecap:round;}
#pc-page-roleplay-hub .wg-clock .mh{stroke:#111;stroke-width:2.6;stroke-linecap:round;}
#pc-page-roleplay-hub .wg-clock .c{fill:#f97316;}
#pc-page-roleplay-hub .wg-clock small{font-size:.58rem;font-weight:800;color:rgba(0,0,0,.55);letter-spacing:.05em;text-transform:uppercase;}
#pc-page-roleplay-hub .wg-clockm{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:4px 6px;color:#111;}
#pc-page-roleplay-hub .wg-clockm small{font-size:.6rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#f97316;}
#pc-page-roleplay-hub .wg-clockm b{display:block;font-size:2.5rem;font-weight:300;letter-spacing:-1.5px;line-height:1.05;}
#pc-page-roleplay-hub .wg-clockm span{font-size:.7rem;font-weight:600;color:rgba(0,0,0,.6);text-transform:capitalize;}
/* Météo */
#pc-page-roleplay-hub .wg-wx{flex:1;display:flex;flex-direction:column;min-height:0;}
#pc-page-roleplay-hub .wg-wx-top{display:flex;justify-content:space-between;align-items:flex-start;gap:6px;}
#pc-page-roleplay-hub .wg-wx-city{font-size:.74rem;font-weight:700;}
#pc-page-roleplay-hub .wg-wx-temp{font-size:2.1rem;font-weight:300;line-height:1;letter-spacing:-1px;margin-top:2px;}
#pc-page-roleplay-hub .wg-wx-cond{margin-top:auto;font-size:.68rem;font-weight:700;}
#pc-page-roleplay-hub .wg-wx-hl{font-size:.64rem;color:rgba(255,255,255,.82);}
#pc-page-roleplay-hub .wg-wx.m,#pc-page-roleplay-hub .wg-wx.l{display:grid;grid-template-columns:1fr;}
#pc-page-roleplay-hub .wg-wx.m .wg-wx-cond{margin-top:2px;}
#pc-page-roleplay-hub .wg-wx-hours{display:flex;justify-content:space-between;margin-top:auto;padding-top:6px;}
#pc-page-roleplay-hub .wg-wx-hours > div{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.62rem;}
#pc-page-roleplay-hub .wg-wx-hours small{color:rgba(255,255,255,.8);font-size:.58rem;}
#pc-page-roleplay-hub .wg-wx.l .wg-wx-cond{margin-top:2px;}
#pc-page-roleplay-hub .wg-wx.l .wg-wx-hours{margin-top:10px;padding:8px 0;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);}
#pc-page-roleplay-hub .wg-wx-days{display:flex;flex-direction:column;gap:3px;margin-top:8px;}
#pc-page-roleplay-hub .wg-wx-days > div{display:grid;grid-template-columns:44px 22px 1fr 34px;align-items:center;font-size:.68rem;}
#pc-page-roleplay-hub .wg-wx-days span{text-align:right;color:rgba(255,255,255,.7);} #pc-page-roleplay-hub .wg-wx-days .hi{color:#fff;font-weight:700;}
#pc-page-roleplay-hub .wg-wx-al{margin-top:5px;font-size:.6rem;font-weight:800;padding:3px 6px;border-radius:6px;background:rgba(220,38,38,.75);align-self:flex-start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
/* Banque */
#pc-page-roleplay-hub .wg-bank-main{flex:1;display:flex;flex-direction:column;justify-content:flex-end;min-width:0;}
#pc-page-roleplay-hub .wg-bank-main small{font-size:.6rem;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .wg-bank-main b{font-size:1.4rem;font-weight:700;letter-spacing:-.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-bank-main b.dim{color:rgba(255,255,255,.4);}
#pc-page-roleplay-hub .wg-bank-main span{font-size:.64rem;color:rgba(255,255,255,.7);margin-top:2px;}
#pc-page-roleplay-hub .wg-bank-main span em{color:#fff;font-weight:700;}
#pc-page-roleplay-hub .wg-tx{display:flex;flex-direction:column;justify-content:flex-end;gap:5px;min-width:0;}
#pc-page-roleplay-hub .wg-tx > div{display:flex;justify-content:space-between;gap:6px;font-size:.62rem;min-width:0;}
#pc-page-roleplay-hub .wg-tx span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(255,255,255,.75);}
#pc-page-roleplay-hub .wg-tx b{white-space:nowrap;} #pc-page-roleplay-hub .wg-tx .dim{color:rgba(255,255,255,.45);}
/* Bourse */
#pc-page-roleplay-hub .wg-mk{flex:1;display:flex;flex-direction:column;justify-content:space-around;min-height:0;margin-top:4px;}
#pc-page-roleplay-hub .wg-mk-row{display:flex;align-items:center;gap:7px;min-width:0;}
#pc-page-roleplay-hub .wg-mk-tag{min-width:30px;height:18px;padding:0 4px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:.52rem;font-weight:900;flex-shrink:0;}
#pc-page-roleplay-hub .wg-mk-name{flex:1;min-width:0;font-size:.68rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-mk-row svg{flex-shrink:0;}
#pc-page-roleplay-hub .wg-mk-q{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;min-width:56px;}
#pc-page-roleplay-hub .wg-mk-q b{font-size:.66rem;} #pc-page-roleplay-hub .wg-mk-q em{font-size:.58rem;}
#pc-page-roleplay-hub .wg-mk-news{display:flex;gap:5px;align-items:flex-start;font-size:.6rem;color:rgba(255,255,255,.75);padding-top:6px;border-top:1px solid rgba(255,255,255,.12);margin-top:4px;}
#pc-page-roleplay-hub .wg-mk-news span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
/* Actus */
#pc-page-roleplay-hub .wg-news .wg-news-hero{margin-top:auto;}
#pc-page-roleplay-hub .wg-news-hero{display:flex;flex-direction:column;gap:2px;min-width:0;}
#pc-page-roleplay-hub .wg-news-cat{font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fca5a5;}
#pc-page-roleplay-hub .wg-news-hero b{font-size:.8rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
#pc-page-roleplay-hub .wg-news.s .wg-news-hero b{font-size:.74rem;-webkit-line-clamp:4;}
#pc-page-roleplay-hub .wg-news-hero small{font-size:.58rem;color:rgba(255,255,255,.65);}
#pc-page-roleplay-hub .t-actus:has(.wg-news.l){padding:0;}
#pc-page-roleplay-hub .wg-news.l{margin:0;}
#pc-page-roleplay-hub .wg-news-top{position:relative;flex:0 0 56%;display:flex;flex-direction:column;padding:11px 12px;overflow:hidden;}
#pc-page-roleplay-hub .wg-news-top .wg-in{position:relative;z-index:1;}
#pc-page-roleplay-hub .wg-news-top .wg-news-hero{margin-top:auto;}
#pc-page-roleplay-hub .wg-news-list{flex:1;display:flex;flex-direction:column;justify-content:space-around;padding:6px 12px 10px;min-height:0;}
#pc-page-roleplay-hub .wg-news-list > div{display:flex;flex-direction:column;min-width:0;padding:3px 0;border-top:1px solid rgba(255,255,255,.1);}
#pc-page-roleplay-hub .wg-news-list > div:first-child{border-top:none;}
#pc-page-roleplay-hub .wg-news-list span{font-size:.54rem;font-weight:800;text-transform:uppercase;color:#fca5a5;letter-spacing:.05em;}
#pc-page-roleplay-hub .wg-news-list b{font-size:.7rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
/* Agenda */
#pc-page-roleplay-hub .wg-ag-next{flex:1;display:flex;flex-direction:column;justify-content:flex-end;min-width:0;border-left:3px solid var(--c);padding-left:8px;margin-top:6px;}
#pc-page-roleplay-hub .wg-ag-next small{font-size:.6rem;font-weight:800;color:var(--c);text-transform:capitalize;}
#pc-page-roleplay-hub .wg-ag-next b{font-size:.84rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
#pc-page-roleplay-hub .wg-ag-next span{font-size:.62rem;color:rgba(255,255,255,.65);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-ag{flex:1;display:flex;flex-direction:column;justify-content:space-around;min-height:0;margin-top:4px;}
#pc-page-roleplay-hub .wg-ag > div{display:flex;gap:9px;align-items:center;min-width:0;}
#pc-page-roleplay-hub .wg-ag-t{flex-shrink:0;width:62px;font-size:.72rem;font-weight:800;display:flex;flex-direction:column;border-left:3px solid var(--c);padding-left:6px;}
#pc-page-roleplay-hub .wg-ag-t small{font-size:.54rem;font-weight:600;color:rgba(255,255,255,.55);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;}
#pc-page-roleplay-hub .wg-ag-b{flex:1;min-width:0;display:flex;flex-direction:column;}
#pc-page-roleplay-hub .wg-ag-b b{font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-ag-b small{font-size:.6rem;color:rgba(255,255,255,.55);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
/* Messages */
#pc-page-roleplay-hub .wg-msg-last{font-size:.62rem;color:rgba(255,255,255,.65);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-h-r .badge{display:inline-block;min-width:16px;padding:1px 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:.58rem;text-align:center;}
#pc-page-roleplay-hub .wg-msgs{flex:1;display:flex;flex-direction:column;justify-content:space-around;margin-top:4px;min-height:0;}
#pc-page-roleplay-hub .wg-msgs > div{display:flex;align-items:center;gap:8px;min-width:0;}
#pc-page-roleplay-hub .wg-av{width:28px;height:28px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:800;background:linear-gradient(160deg,#94a3b8,#475569);}
#pc-page-roleplay-hub .wg-msg-b{flex:1;min-width:0;display:flex;flex-direction:column;}
#pc-page-roleplay-hub .wg-msg-b b{font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-msg-b small{font-size:.62rem;color:rgba(255,255,255,.6);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .wg-msgs .new .wg-msg-b b::after{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#3b82f6;margin-left:5px;vertical-align:middle;}
#pc-page-roleplay-hub .wg-msgs em{font-size:.56rem;color:rgba(255,255,255,.5);font-weight:600;white-space:nowrap;}

/* Écran verrouillé : ligne du haut et rangée de widgets */
#pc-page-roleplay-hub .rph-lock-inl{display:inline-flex;align-items:center;gap:6px;max-width:100%;}
#pc-page-roleplay-hub .rph-lock-inl span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-lock-inl svg{flex-shrink:0;}
#pc-page-roleplay-hub .rph-lock-date{max-width:100%;text-align:center;}
#pc-page-roleplay-hub .rph-lock-wgts{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px;}
#pc-page-roleplay-hub .rph-lock-wgts:empty{display:none;}
#pc-page-roleplay-hub .rph-lock-body.has-wgts .rph-lock-notifs{margin-top:16px;max-height:236px;}
#pc-page-roleplay-hub .rph-lwg{height:60px;min-width:0;border-radius:18px;border:none;padding:6px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#fff;font-family:inherit;text-align:center;background:rgba(255,255,255,.16);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 0 0 .5px rgba(255,255,255,.18) inset;cursor:pointer;position:relative;font-variant-numeric:tabular-nums;overflow:hidden;box-sizing:border-box;}
#pc-page-roleplay-hub .rph-lwg:hover{background:rgba(255,255,255,.24);}
#pc-page-roleplay-hub .rph-lwg:focus-visible{outline:2px solid #fff;outline-offset:1px;}
#pc-page-roleplay-hub .rph-lwg.w1{border-radius:50%;aspect-ratio:1;height:auto;max-height:60px;justify-self:center;width:100%;max-width:60px;}
#pc-page-roleplay-hub .rph-lwg.w2{grid-column:span 2;align-items:flex-start;text-align:left;padding:7px 12px;}
#pc-page-roleplay-hub .rph-lwg b{font-size:.78rem;font-weight:700;line-height:1.15;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-lwg b.xl{font-size:1.05rem;}
#pc-page-roleplay-hub .rph-lwg b.clamp{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.68rem;}
#pc-page-roleplay-hub .rph-lwg small{font-size:.58rem;font-weight:600;color:rgba(255,255,255,.75);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-lwg .lw-ic{display:flex;opacity:.85;}
#pc-page-roleplay-hub .rph-lwg .lw-row{display:flex;align-items:center;gap:6px;}

/* Feuilles (galerie, options) */
#pc-page-roleplay-hub .rph-wsheet{position:absolute;inset:0;z-index:58;display:flex;align-items:flex-end;border-radius:inherit;overflow:hidden;}
#pc-page-roleplay-hub .rph-wsheet-bg{position:absolute;inset:0;background:rgba(0,0,0,0);transition:background .24s;}
#pc-page-roleplay-hub .rph-wsheet.open .rph-wsheet-bg{background:rgba(0,0,0,.45);}
#pc-page-roleplay-hub .rph-wsheet-panel{position:relative;width:100%;max-height:84%;display:flex;flex-direction:column;border-radius:26px 26px 0 0;background:rgba(24,27,38,.97);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 -10px 40px rgba(0,0,0,.45);color:#fff;transform:translateY(100%);transition:transform .28s cubic-bezier(.22,1,.36,1);padding-bottom:18px;}
#pc-page-roleplay-hub .rph-wsheet.open .rph-wsheet-panel{transform:none;}
#pc-page-roleplay-hub .rph-wsheet-grab{width:38px;height:5px;border-radius:5px;background:rgba(255,255,255,.25);margin:8px auto 2px;flex-shrink:0;}
#pc-page-roleplay-hub .rph-wsheet-head{display:flex;align-items:center;gap:8px;padding:6px 14px 8px;flex-shrink:0;}
#pc-page-roleplay-hub .rph-wsheet-head b{flex:1;text-align:center;font-size:.9rem;}
#pc-page-roleplay-hub .rph-wsheet-head button{width:30px;height:30px;border-radius:50%;border:none;background:rgba(255,255,255,.1);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;}
#pc-page-roleplay-hub .rph-wsheet-head button[hidden]{visibility:hidden;display:flex;}
#pc-page-roleplay-hub .rph-wsheet-head button:hover{background:rgba(255,255,255,.2);}
#pc-page-roleplay-hub .rph-wsheet-head button:focus-visible,#pc-page-roleplay-hub .rph-wsheet-body button:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
#pc-page-roleplay-hub .rph-wsheet-body{overflow-y:auto;padding:4px 14px 0;scrollbar-width:none;}
#pc-page-roleplay-hub .rph-wsheet-body::-webkit-scrollbar{display:none;}
#pc-page-roleplay-hub .wg-gal{display:flex;flex-direction:column;gap:7px;}
#pc-page-roleplay-hub .wg-gal-it{display:flex;align-items:center;gap:11px;width:100%;padding:9px 10px;border-radius:14px;border:none;background:rgba(255,255,255,.06);color:#fff;font-family:inherit;text-align:left;cursor:pointer;transition:background .18s;}
#pc-page-roleplay-hub .wg-gal-it:hover:not(:disabled){background:rgba(255,255,255,.12);}
#pc-page-roleplay-hub .wg-gal-it:disabled{opacity:.45;cursor:not-allowed;}
#pc-page-roleplay-hub .wg-gal-ic{width:36px;height:36px;border-radius:11px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(160deg,#64748b,#334155);}
#pc-page-roleplay-hub .wg-gal-ic.t-weather{background:linear-gradient(160deg,#38bdf8,#1d4ed8);} #pc-page-roleplay-hub .wg-gal-ic.t-clock{background:linear-gradient(160deg,#1f2937,#020617);}
#pc-page-roleplay-hub .wg-gal-ic.t-bank{background:linear-gradient(160deg,#60a5fa,#1d4ed8);} #pc-page-roleplay-hub .wg-gal-ic.t-market{background:linear-gradient(160deg,#38bdf8,#0369a1);}
#pc-page-roleplay-hub .wg-gal-ic.t-actus{background:linear-gradient(160deg,#f87171,#dc2626);} #pc-page-roleplay-hub .wg-gal-ic.t-agenda{background:linear-gradient(160deg,#2dd4bf,#0f766e);}
#pc-page-roleplay-hub .wg-gal-ic.t-messages{background:linear-gradient(160deg,#4ade80,#16a34a);}
#pc-page-roleplay-hub .wg-gal-tx{flex:1;min-width:0;display:flex;flex-direction:column;}
#pc-page-roleplay-hub .wg-gal-tx b{font-size:.8rem;} #pc-page-roleplay-hub .wg-gal-tx small{font-size:.64rem;color:rgba(255,255,255,.55);line-height:1.35;}
#pc-page-roleplay-hub .wg-gal-go{display:flex;opacity:.5;}
#pc-page-roleplay-hub .wg-sizes{display:flex;gap:3px;padding:3px;border-radius:11px;background:rgba(255,255,255,.08);margin-bottom:12px;}
#pc-page-roleplay-hub .wg-sizes button{flex:1;border:none;background:transparent;color:rgba(255,255,255,.7);font-family:inherit;font-size:.74rem;font-weight:700;padding:7px 6px;border-radius:9px;cursor:pointer;}
#pc-page-roleplay-hub .wg-sizes button.on{background:rgba(255,255,255,.9);color:#111;}
#pc-page-roleplay-hub .wg-prev-wrap{display:flex;justify-content:center;align-items:center;min-height:150px;padding:6px 0;}
#pc-page-roleplay-hub .wg-prev{position:relative;flex-shrink:0;}
#pc-page-roleplay-hub .wg-prev .rph-wgt-box{position:absolute;top:0;left:0;transform-origin:top left;}
#pc-page-roleplay-hub .wg-note{font-size:.7rem;line-height:1.5;color:rgba(255,255,255,.6);margin:8px 2px 12px;text-align:center;}
#pc-page-roleplay-hub .wg-note.bad{color:#fca5a5;}
#pc-page-roleplay-hub .wg-cta{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;border:none;border-radius:14px;padding:12px;font-family:inherit;font-size:.84rem;font-weight:800;color:#fff;background:#2563eb;cursor:pointer;transition:filter .18s,transform .15s;}
#pc-page-roleplay-hub .wg-cta:hover{filter:brightness(1.12);} #pc-page-roleplay-hub .wg-cta:active{transform:scale(.98);}
#pc-page-roleplay-hub .wg-cta.danger{background:rgba(239,68,68,.16);color:#fca5a5;margin-top:4px;}

/* Réglages › Écran verrouillé */
#pc-page-roleplay-hub .wg-le-mock{position:relative;border-radius:22px;padding:18px 16px 16px;min-height:170px;display:flex;flex-direction:column;align-items:center;box-shadow:0 0 0 1px rgba(255,255,255,.12) inset;overflow:hidden;}
#pc-page-roleplay-hub .wg-le-top{font-size:.74rem;font-weight:600;color:rgba(255,255,255,.92);text-transform:capitalize;max-width:100%;text-align:center;}
#pc-page-roleplay-hub .wg-le-time{font-size:3.1rem;font-weight:600;line-height:1;color:#fff;letter-spacing:-1.5px;margin-top:2px;text-shadow:0 4px 20px rgba(0,0,0,.3);font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .wg-le-row{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:12px;}
#pc-page-roleplay-hub .wg-le-row .rph-lwg{height:52px;cursor:default;overflow:visible;}
#pc-page-roleplay-hub .wg-le-row .rph-lwg.w1{max-width:52px;max-height:52px;}
#pc-page-roleplay-hub .wg-le-x{position:absolute;top:-5px;left:-5px;width:18px;height:18px;border-radius:50%;border:none;background:rgba(40,44,58,.95);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.45);padding:0;}
#pc-page-roleplay-hub .wg-le-x:hover{background:#dc2626;}
#pc-page-roleplay-hub .wg-le-add{border:1.5px dashed rgba(255,255,255,.45) !important;background:rgba(255,255,255,.08) !important;cursor:pointer !important;align-items:center !important;}
#pc-page-roleplay-hub .wg-chips{display:flex;flex-wrap:wrap;gap:6px;}
#pc-page-roleplay-hub .wg-chip{border:none;border-radius:99px;padding:7px 13px;font-family:inherit;font-size:.72rem;font-weight:700;color:#fff;background:rgba(255,255,255,.08);cursor:pointer;}
#pc-page-roleplay-hub .wg-chip.on{background:#2563eb;}
#pc-page-roleplay-hub .wg-le-list{padding:4px 10px;}
#pc-page-roleplay-hub .wg-le-it,#pc-page-roleplay-hub .wg-le-add-it{display:flex;align-items:center;gap:9px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07);}
#pc-page-roleplay-hub .wg-le-it:last-child,#pc-page-roleplay-hub .wg-le-add-it:last-child{border-bottom:none;}
#pc-page-roleplay-hub .wg-le-it .wg-gal-ic,#pc-page-roleplay-hub .wg-le-add-it .wg-gal-ic{width:30px;height:30px;border-radius:9px;}
#pc-page-roleplay-hub .wg-le-it-t{flex:1;min-width:0;display:flex;flex-direction:column;}
#pc-page-roleplay-hub .wg-le-it-t b{font-size:.76rem;} #pc-page-roleplay-hub .wg-le-it-t small{font-size:.62rem;color:rgba(255,255,255,.5);}
#pc-page-roleplay-hub .wg-le-it-a{display:flex;gap:4px;flex-shrink:0;}
#pc-page-roleplay-hub .wg-le-it-a button{min-width:28px;height:28px;border-radius:8px;border:none;background:rgba(255,255,255,.1);color:#fff;display:flex;align-items:center;justify-content:center;gap:3px;cursor:pointer;font-family:inherit;font-size:.64rem;font-weight:700;padding:0 7px;}
#pc-page-roleplay-hub .wg-le-it-a button:hover:not(:disabled){background:rgba(255,255,255,.2);}
#pc-page-roleplay-hub .wg-le-it-a button:disabled{opacity:.3;cursor:not-allowed;}
#pc-page-roleplay-hub .wg-le-it-a button.del{background:rgba(239,68,68,.16);color:#fca5a5;}
#pc-page-roleplay-hub .wg-le-home{width:100%;display:flex;align-items:center;gap:11px;color:#fff;font-family:inherit;text-align:left;cursor:pointer;}
#pc-page-roleplay-hub .wg-le-home span{display:flex;flex-direction:column;} #pc-page-roleplay-hub .wg-le-home b{font-size:.8rem;} #pc-page-roleplay-hub .wg-le-home small{font-size:.64rem;color:rgba(255,255,255,.55);}
@media (prefers-reduced-motion:reduce){#pc-page-roleplay-hub .rph-layer-home.editing .rph-pages .rph-wgt .rph-wgt-box,#pc-page-roleplay-hub .wg-wait i{animation:none;}#pc-page-roleplay-hub .rph-wsheet-panel{transition:none;}}

#pc-page-roleplay-hub .rph-app-ic{
  width:58px;height:58px;border-radius:16px;display:flex;align-items:center;justify-content:center;
  color:#fff;position:relative;background:var(--ic-bg);
  box-shadow:0 6px 16px rgba(0,0,0,.4),0 0 0 .5px rgba(255,255,255,.14) inset;
  transition:transform .3s cubic-bezier(.34,1.4,.5,1),box-shadow .45s ease,background .45s ease;
}
#pc-page-roleplay-hub .rph-app:hover .rph-app-ic{transform:scale(1.09) translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.5);}
/* Applis fermées hors session : surbrillance rouge et cadenas */
#pc-page-roleplay-hub .rph-app.rph-app-off .rph-app-ic{box-shadow:0 0 0 2px rgba(239,68,68,.95),0 0 18px rgba(239,68,68,.55),0 6px 16px rgba(0,0,0,.4);}
#pc-page-roleplay-hub .rph-app.rph-app-off .rph-app-ic::after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(160deg,rgba(239,68,68,.38),rgba(127,29,29,.55));pointer-events:none;}
#pc-page-roleplay-hub .rph-app.rph-app-off .rph-app-ic > svg{opacity:.55;}
#pc-page-roleplay-hub .rph-app.rph-app-off .rph-app-lbl{color:#fca5a5;}
#pc-page-roleplay-hub .rph-app.rph-app-off:hover .rph-app-ic{transform:none;}
#pc-page-roleplay-hub .rph-app-lock{position:absolute;right:-5px;bottom:-5px;z-index:2;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:#dc2626;border:2px solid rgba(15,23,42,.85);box-shadow:0 2px 6px rgba(0,0,0,.45);}
#pc-page-roleplay-hub .rph-app.rph-app-deny .rph-app-ic{animation:rphAppDeny .42s cubic-bezier(.36,.07,.19,.97);}
@keyframes rphAppDeny{10%,90%{transform:translateX(-1px);}20%,80%{transform:translateX(2px);}30%,50%,70%{transform:translateX(-4px);}40%,60%{transform:translateX(4px);}}
#pc-page-roleplay-hub .rph-screen.glass .rph-app.rph-app-off .rph-app-ic{box-shadow:0 0 0 2px rgba(239,68,68,.95),0 0 18px rgba(239,68,68,.55);}
@media (prefers-reduced-motion:reduce){#pc-page-roleplay-hub .rph-app.rph-app-deny .rph-app-ic{animation:none;}}
#pc-page-roleplay-hub .rph-app:active .rph-app-ic{transform:scale(.9);}
#pc-page-roleplay-hub .rph-app-lbl{font-size:.63rem;color:#fff;font-weight:500;text-shadow:0 1px 3px rgba(0,0,0,.6);}
#pc-page-roleplay-hub .rph-app-badge{position:absolute;top:-4px;right:-4px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:#ff3b30;color:#fff;font-size:.62rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.4);}

#pc-page-roleplay-hub .rph-screen.glass .rph-app-ic{
  background:rgba(255,255,255,.13);
  -webkit-backdrop-filter:blur(16px) saturate(1.35);
  backdrop-filter:blur(16px) saturate(1.35);
  box-shadow:0 6px 18px rgba(0,0,0,.3),0 0 0 .5px rgba(255,255,255,.3) inset;
}
#pc-page-roleplay-hub .rph-screen.glass .rph-app:hover .rph-app-ic{
  background:rgba(255,255,255,.2);
  box-shadow:0 12px 26px rgba(0,0,0,.42),0 0 0 .5px rgba(255,255,255,.36) inset;
}
#pc-page-roleplay-hub .rph-screen.glass .rph-dock .rph-app-ic{
  background:rgba(255,255,255,.18);
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
#pc-page-roleplay-hub .rph-screen.glass .rph-dock .rph-app:hover .rph-app-ic{
  background:rgba(255,255,255,.26);
}
#pc-page-roleplay-hub .rph-dots{display:flex;justify-content:center;gap:6px;margin-top:auto;padding:14px 0 10px;}
#pc-page-roleplay-hub .rph-dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.32);transition:background .3s;}
#pc-page-roleplay-hub .rph-dots i.on{background:#fff;}
#pc-page-roleplay-hub .rph-pages{display:flex;margin:0 -22px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
#pc-page-roleplay-hub .rph-pages::-webkit-scrollbar{display:none;}
#pc-page-roleplay-hub .rph-pages.drag{scroll-snap-type:none;cursor:grabbing;user-select:none;}
#pc-page-roleplay-hub .rph-pages.drag .rph-app{pointer-events:none;}
#pc-page-roleplay-hub .rph-page{flex:0 0 100%;min-width:0;box-sizing:border-box;padding:0 22px;scroll-snap-align:start;scroll-snap-stop:always;}
#pc-page-roleplay-hub .rph-page .rph-apps{grid-template-columns:repeat(4,minmax(0,1fr));padding-bottom:4px;}
#pc-page-roleplay-hub .rph-page .rph-app{min-width:0;}
#pc-page-roleplay-hub .rph-page .rph-app-lbl{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-dots{gap:0;}
#pc-page-roleplay-hub .rph-dots button{width:18px;height:18px;padding:0;border:none;background:none;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%;}
#pc-page-roleplay-hub .rph-dots button::before{content:'';width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.32);transition:background .25s,transform .25s;}
#pc-page-roleplay-hub .rph-dots button:hover::before{background:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .rph-dots button.on::before{background:#fff;transform:scale(1.05);}
#pc-page-roleplay-hub .rph-dots button:focus-visible{outline:2px solid rgba(255,255,255,.7);outline-offset:1px;}
#pc-page-roleplay-hub .rph-dock{
  margin:0 14px 26px;padding:12px 14px;border-radius:28px;
  background:rgba(255,255,255,.13);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);
  border:1px solid rgba(255,255,255,.08);
  display:grid;grid-template-columns:repeat(4,1fr);gap:12px;position:relative;z-index:10;
  transition:background .45s ease,box-shadow .45s ease,border-color .45s ease;
}

#pc-page-roleplay-hub .rph-app-head{display:flex;align-items:center;gap:12px;padding:64px 20px 14px;flex-shrink:0;}
#pc-page-roleplay-hub .rph-app-head b{font-size:1.15rem;font-weight:800;color:#fff;letter-spacing:-.01em;}
#pc-page-roleplay-hub .rph-app-content{flex:1;overflow-y:auto;padding:0 20px 20px;color:#fff;}
#pc-page-roleplay-hub .rph-app-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;border-radius:15px;background:rgba(255,255,255,.07);margin-bottom:9px;font-size:.82rem;animation:rphNotifIn .45s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-app-row b{color:#fff;font-weight:700;}
#pc-page-roleplay-hub .rph-app-row small{display:block;color:rgba(255,255,255,.5);font-size:.7rem;margin-top:2px;}

#pc-page-roleplay-hub .rph-app-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:0 18px 22px;color:#fff;-webkit-overflow-scrolling:touch;}
#pc-page-roleplay-hub .rph-app-scroll::-webkit-scrollbar{width:0;height:0;}

/* ── Barre d'appli en verre liquide (écran Météo) ── */
#pc-page-roleplay-hub .rph-layer-app.rph-glass{background:var(--glass-bg,linear-gradient(180deg,#2372c9,#63aef0));}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .rph-app-head{position:absolute;top:0;left:0;right:0;z-index:4;
  background:linear-gradient(180deg,rgba(96,165,250,.42) 0%,rgba(37,99,235,.30) 55%,rgba(30,64,175,.22) 100%);
  -webkit-backdrop-filter:blur(22px) saturate(1.9) brightness(1.05);backdrop-filter:blur(22px) saturate(1.9) brightness(1.05);
  border-bottom:1px solid rgba(255,255,255,.30);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -12px 20px -14px rgba(255,255,255,.35),0 10px 26px -12px rgba(8,20,60,.55);}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .rph-app-head::before{content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(120% 70% at 18% 0%,rgba(255,255,255,.34),rgba(255,255,255,0) 60%),linear-gradient(100deg,rgba(255,255,255,0) 40%,rgba(255,255,255,.12) 55%,rgba(255,255,255,0) 70%);}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .rph-app-head > *{position:relative;}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .rph-app-head b{text-shadow:0 1px 8px rgba(8,20,60,.35);}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .rph-app-back{width:34px;height:34px;justify-content:center;border-radius:50% !important;color:#fff !important;
  background:rgba(255,255,255,.18) !important;border:1px solid rgba(255,255,255,.38) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 4px 12px rgba(8,20,60,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .18s,transform .18s;}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .rph-app-back:hover{background:rgba(255,255,255,.28) !important;}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .rph-app-back:active{transform:scale(.92);}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .rph-app-scroll{padding-top:var(--glass-head,108px);}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .wx-root{background:transparent !important;}
/* ── Barre d'appli : plus de bandeau, dans toutes les applis. Le bouton retour flotte seul
      par-dessus le contenu ; le titre n'apparaît qu'en haut de page et s'efface dès qu'on descend. ── */
#pc-page-roleplay-hub .rph-layer-app .rph-app-head{position:absolute!important;top:0;left:0;right:0;z-index:4;pointer-events:none;
  background:none!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;}
#pc-page-roleplay-hub .rph-layer-app .rph-app-head::before,#pc-page-roleplay-hub .rph-layer-app .rph-app-head::after{display:none!important;}
#pc-page-roleplay-hub .rph-layer-app .rph-app-head > *{position:relative;pointer-events:auto;}
#pc-page-roleplay-hub .rph-layer-app .rph-app-head b{transition:opacity .2s ease,transform .2s ease;}
#pc-page-roleplay-hub .rph-layer-app.rph-glass-scrolled .rph-app-head b{opacity:0;transform:translateY(-6px);pointer-events:none;}
#pc-page-roleplay-hub .rph-layer-app .rph-app-scroll{padding-top:var(--app-head,112px)!important;}
#pc-page-roleplay-hub .rph-layer-app .rph-app-back{width:34px;height:34px;justify-content:center;border-radius:50%!important;color:#fff!important;
  background:rgba(var(--rph-b3-rgb),.55)!important;border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 4px 14px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .18s,transform .18s;}
#pc-page-roleplay-hub .rph-layer-app .rph-app-back:hover{background:rgba(var(--rph-a3-rgb),.35)!important;}
#pc-page-roleplay-hub .rph-layer-app .rph-app-back:active{transform:scale(.92);}
#pc-page-roleplay-hub .rph-screen,#pc-page-roleplay-hub .rph-screen *{scrollbar-width:none;-ms-overflow-style:none;}
#pc-page-roleplay-hub .rph-screen::-webkit-scrollbar,#pc-page-roleplay-hub .rph-screen *::-webkit-scrollbar{width:0;height:0;}
#pc-page-roleplay-hub .rph-sect{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.42);margin:18px 0 8px;}
/* Le bouton « Ouvrir un ticket » est ajouté en fin de page, après les scripts : on le masque en CSS
   dès que la carte de résident ou le panel RP est ouvert, y compris après un rafraîchissement. */
body:has(#pc-page-roleplay.open) .pc-ticket-fab,body:has(#pc-page-roleplay-hub.open) .pc-ticket-fab{display:none!important;}
#pc-page-roleplay-hub .rph-card2{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.06);border-radius:17px;padding:14px 16px;margin-bottom:10px;animation:rphNotifIn .45s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-balance{background:linear-gradient(150deg,rgba(var(--rph-a2-rgb),.35),rgba(var(--rph-b3-rgb),.6));border:1px solid rgba(var(--rph-a4-rgb),.22);border-radius:20px;padding:18px;margin-bottom:12px;}
#pc-page-roleplay-hub .rph-balance .lbl{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:800;}
#pc-page-roleplay-hub .rph-balance .val{font-size:1.9rem;font-weight:800;letter-spacing:-.02em;margin-top:3px;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-chips{display:flex;gap:8px;margin-top:14px;}
#pc-page-roleplay-hub .rph-chip{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;padding:11px 4px;border-radius:14px;border:none;background:rgba(255,255,255,.1);color:#fff;font-size:.62rem;font-weight:700;cursor:pointer;transition:transform .25s cubic-bezier(.34,1.4,.5,1),background .2s;}
#pc-page-roleplay-hub .rph-chip:hover{background:rgba(255,255,255,.19);transform:translateY(-2px);}
#pc-page-roleplay-hub .rph-chip:active{transform:scale(.94);}
#pc-page-roleplay-hub .rph-mini-card{border-radius:16px;padding:15px 16px;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.4);margin-bottom:10px;}
#pc-page-roleplay-hub .rph-mini-card .num{font-family:'Courier New',monospace;font-size:.98rem;font-weight:700;letter-spacing:.1em;margin-top:22px;}
#pc-page-roleplay-hub .rph-mini-card .bot{display:flex;justify-content:space-between;font-size:.6rem;margin-top:8px;opacity:.85;font-weight:700;letter-spacing:.06em;text-transform:uppercase;}
#pc-page-roleplay-hub .rph-tx{display:flex;justify-content:space-between;gap:10px;padding:11px 2px;border-bottom:1px solid rgba(255,255,255,.05);font-size:.79rem;}
#pc-page-roleplay-hub .rph-tx:last-child{border-bottom:none;}
#pc-page-roleplay-hub .rph-tx small{display:block;color:rgba(255,255,255,.45);font-size:.68rem;margin-top:2px;}
#pc-page-roleplay-hub .rph-in{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:13px;padding:11px 13px;color:#fff;font-family:inherit;font-size:.84rem;margin-top:8px;outline:none;transition:border-color .2s,background .2s;}
#pc-page-roleplay-hub .rph-in:focus{border-color:rgba(var(--rph-a4-rgb),.65);background:rgba(255,255,255,.12);}
#pc-page-roleplay-hub .rph-in::placeholder{color:rgba(255,255,255,.35);}
#pc-page-roleplay-hub .rph-go{width:100%;margin-top:11px;padding:13px;border-radius:14px;border:none;background:var(--rph-a2);color:#fff;font-family:inherit;font-weight:800;font-size:.84rem;cursor:pointer;transition:transform .2s cubic-bezier(.34,1.4,.5,1),background .2s;}
#pc-page-roleplay-hub .rph-go:hover{background:var(--rph-a1);}
#pc-page-roleplay-hub .rph-go:active{transform:scale(.97);}
#pc-page-roleplay-hub .rph-go.ghost{background:rgba(255,255,255,.1);}
#pc-page-roleplay-hub .rph-note{font-size:.72rem;color:rgba(255,255,255,.45);line-height:1.5;margin-top:8px;}
/* ── Météo de Sarasota ── */
#pc-page-roleplay-hub .wx-root{margin:0 -18px -22px;min-height:100%;padding:8px 14px 22px;color:#fff;transition:background .6s;}
#pc-page-roleplay-hub .wx-empty{padding:60px 20px;text-align:center;font-size:.8rem;color:rgba(255,255,255,.75);}
#pc-page-roleplay-hub .wx-hero{text-align:center;padding:14px 0 18px;text-shadow:0 2px 14px rgba(0,0,0,.25);}
#pc-page-roleplay-hub .wx-city{font-size:1.25rem;font-weight:700;}
#pc-page-roleplay-hub .wx-temp{font-size:4.2rem;font-weight:200;line-height:1;margin:2px 0 2px 18px;letter-spacing:-.03em;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .wx-cond{font-size:.95rem;font-weight:600;color:rgba(255,255,255,.88);}
#pc-page-roleplay-hub .wx-hl{font-size:.86rem;font-weight:600;margin-top:2px;white-space:pre;}
#pc-page-roleplay-hub .wx-card{background:rgba(10,16,32,.22);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:11px 13px;margin-top:10px;}
#pc-page-roleplay-hub .wx-cap{font-size:.66rem;font-weight:700;color:rgba(255,255,255,.62);padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:6px;}
#pc-page-roleplay-hub .wx-hours{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding-top:2px;}
#pc-page-roleplay-hub .wx-hours::-webkit-scrollbar{display:none;}
#pc-page-roleplay-hub .wx-h{flex:0 0 48px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:4px 0;border-radius:12px;}
#pc-page-roleplay-hub .wx-h small{font-size:.66rem;font-weight:700;color:rgba(255,255,255,.85);}
#pc-page-roleplay-hub .wx-h b{font-size:.86rem;font-weight:700;}
#pc-page-roleplay-hub .wx-h i{font-style:normal;font-size:.56rem;font-weight:800;color:#fecaca;}
#pc-page-roleplay-hub .wx-h.al{background:rgba(239,68,68,.16);}
#pc-page-roleplay-hub .wx-hbar{position:relative;height:16px;margin:8px 2px 0;cursor:pointer;touch-action:none;outline:none;}
#pc-page-roleplay-hub .wx-hbar::before{content:'';position:absolute;left:0;right:0;top:6px;height:4px;border-radius:4px;background:rgba(255,255,255,.16);box-shadow:inset 0 1px 1px rgba(0,0,0,.18);}
#pc-page-roleplay-hub .wx-hbar i{position:absolute;top:3px;height:10px;border-radius:10px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(219,234,254,.8));box-shadow:0 1px 4px rgba(8,20,60,.35),inset 0 1px 0 #fff;cursor:grab;transition:height .15s,top .15s;}
#pc-page-roleplay-hub .wx-hbar:hover i,#pc-page-roleplay-hub .wx-hbar.drag i{top:2px;height:12px;}
#pc-page-roleplay-hub .wx-hbar.drag i{cursor:grabbing;}
#pc-page-roleplay-hub .wx-hbar:focus-visible::before{box-shadow:0 0 0 2px rgba(255,255,255,.55);}
#pc-page-roleplay-hub .wx-hbar.none{display:none;}
/* ── Actus : le journal de Sarasota (couleurs PalmCrest : bleus du thème) ── */
#pc-page-roleplay-hub .rph-layer-app.rph-glass .ac-root{background:transparent;}
#pc-page-roleplay-hub .ac-root{margin:0 -18px -22px;min-height:100%;padding:6px 16px 46px;color:#fff;background:linear-gradient(180deg,var(--rph-b2),var(--rph-b4));}
#pc-page-roleplay-hub .ac-mast{text-align:center;padding:8px 0 12px;border-bottom:1px solid rgba(255,255,255,.12);}
#pc-page-roleplay-hub .ac-mast small{display:block;font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5);}
#pc-page-roleplay-hub .ac-mast b{display:block;margin:4px 0 2px;font-family:Georgia,'Times New Roman',serif;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;}
#pc-page-roleplay-hub .ac-mast span{font-size:.6rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--rph-a4);}
#pc-page-roleplay-hub .ac-chips{display:flex;gap:6px;overflow-x:auto;padding:12px 16px;margin:0 -16px;scrollbar-width:none;
  -webkit-mask:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 22px),transparent 100%);mask:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 22px),transparent 100%);}
#pc-page-roleplay-hub .ac-chips::-webkit-scrollbar{display:none;}
#pc-page-roleplay-hub .ac-chip{flex:0 0 auto;padding:7px 13px;border-radius:99px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:rgba(255,255,255,.75);font-family:inherit;font-size:.68rem;font-weight:700;cursor:pointer;white-space:nowrap;}
#pc-page-roleplay-hub .ac-chip.on{background:linear-gradient(160deg,var(--rph-a3),var(--rph-a1));border-color:transparent;color:#fff;box-shadow:0 6px 16px -6px rgba(var(--rph-a2-rgb),.8);}
#pc-page-roleplay-hub .ac-alert{display:block;width:100%;text-align:left;margin:2px 0 12px;padding:12px 13px;border-radius:16px;border:1px solid color-mix(in srgb,var(--ac-c) 55%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--ac-c) 28%,transparent),rgba(255,255,255,.03));color:#fff;font-family:inherit;cursor:pointer;}
#pc-page-roleplay-hub .ac-alert-tag{display:inline-block;padding:3px 8px;border-radius:99px;background:var(--ac-c);font-size:.56rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
#pc-page-roleplay-hub .ac-alert b{display:block;margin-top:7px;font-size:.9rem;}
#pc-page-roleplay-hub .ac-alert small{display:block;margin-top:3px;font-size:.68rem;line-height:1.45;color:rgba(255,255,255,.78);}
#pc-page-roleplay-hub .ac-alert small.ac-alert-src{margin-top:7px;color:rgba(255,255,255,.55);font-weight:700;}
#pc-page-roleplay-hub .ac-cat{display:inline-block;margin-right:5px;padding:2px 7px;border-radius:6px;background:rgba(var(--rph-a3-rgb),.25);color:var(--rph-a5);font-size:.55rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;font-style:normal;}
#pc-page-roleplay-hub .ac-cat.bad{background:rgba(239,68,68,.22);color:#fca5a5;}
#pc-page-roleplay-hub .ac-cat.wx{background:rgba(245,158,11,.22);color:#fcd34d;}
#pc-page-roleplay-hub .ac-tag{display:inline-block;margin-right:5px;padding:2px 7px;border-radius:6px;background:rgba(255,255,255,.12);color:rgba(255,255,255,.85);font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
#pc-page-roleplay-hub .ac-tag.hot{background:#dc2626;color:#fff;}
#pc-page-roleplay-hub .ac-tag.mk{text-transform:none;letter-spacing:.02em;}
#pc-page-roleplay-hub .ac-tag.mk.up{background:rgba(34,197,94,.22);color:#86efac;}
#pc-page-roleplay-hub .ac-tag.mk.down{background:rgba(239,68,68,.22);color:#fca5a5;}
#pc-page-roleplay-hub .ac-mkgo{margin-top:14px;}
#pc-page-roleplay-hub .ac-tag.bad{background:rgba(239,68,68,.22);color:#fca5a5;}
#pc-page-roleplay-hub .ac-tag.ok{background:rgba(34,197,94,.2);color:#86efac;}
#pc-page-roleplay-hub .ac-hero{display:block;width:100%;text-align:left;padding:0;margin:0 0 10px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;cursor:pointer;}
#pc-page-roleplay-hub .ac-hero-img{display:block;aspect-ratio:16/10;background:#0b1220 center/cover no-repeat;}
#pc-page-roleplay-hub .ac-hero-txt{display:block;padding:12px 13px 13px;}
#pc-page-roleplay-hub .ac-hero b{display:block;margin-top:7px;font-family:Georgia,'Times New Roman',serif;font-size:1.08rem;line-height:1.28;}
#pc-page-roleplay-hub .ac-hero small{display:block;margin-top:5px;font-size:.72rem;line-height:1.45;color:rgba(255,255,255,.72);}
#pc-page-roleplay-hub .ac-hero em,#pc-page-roleplay-hub .ac-row em{display:block;margin-top:7px;font-style:normal;font-size:.6rem;font-weight:700;color:rgba(255,255,255,.45);}
#pc-page-roleplay-hub .ac-row{display:flex;gap:11px;align-items:center;width:100%;text-align:left;padding:11px 0;border:none;border-top:1px solid rgba(255,255,255,.08);background:none;color:#fff;font-family:inherit;cursor:pointer;}
#pc-page-roleplay-hub .ac-row-txt{flex:1;min-width:0;}
#pc-page-roleplay-hub .ac-row b{display:block;margin-top:5px;font-size:.8rem;line-height:1.35;}
#pc-page-roleplay-hub .ac-thumb{flex:0 0 68px;height:68px;border-radius:12px;background:#0b1220 center/cover no-repeat;}
#pc-page-roleplay-hub .ac-empty{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:22px;padding:22px 16px;border-radius:16px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.12);text-align:center;}
#pc-page-roleplay-hub .ac-empty b{font-size:.84rem;}
#pc-page-roleplay-hub .ac-empty small{font-size:.68rem;line-height:1.5;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .ac-log{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.07);}
#pc-page-roleplay-hub .ac-log b{display:block;font-size:.78rem;font-weight:700;line-height:1.4;}
#pc-page-roleplay-hub .ac-log small{font-size:.62rem;color:rgba(255,255,255,.45);}
#pc-page-roleplay-hub .ac-read{padding-top:0;}
#pc-page-roleplay-hub .ac-cover{margin:0 -16px 14px;aspect-ratio:16/11;background:#0b1220 center/cover no-repeat;-webkit-mask:linear-gradient(180deg,#000 70%,transparent);mask:linear-gradient(180deg,#000 70%,transparent);}
#pc-page-roleplay-hub .ac-read .ac-meta{padding-top:6px;}
#pc-page-roleplay-hub .ac-title{margin:9px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:1.32rem;line-height:1.25;font-weight:700;}
#pc-page-roleplay-hub .ac-lead{margin:9px 0 0;font-size:.84rem;line-height:1.55;font-weight:600;color:rgba(255,255,255,.85);}
#pc-page-roleplay-hub .ac-by{margin:12px 0 4px;padding:9px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);font-size:.68rem;font-weight:800;color:var(--rph-a5);}
#pc-page-roleplay-hub .ac-by span{font-weight:600;color:rgba(255,255,255,.5);}
#pc-page-roleplay-hub .ac-body p{margin:12px 0 0;font-size:.82rem;line-height:1.65;color:rgba(255,255,255,.88);}
#pc-page-roleplay-hub .ac-gallery{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:14px;}
#pc-page-roleplay-hub .ac-gallery span{aspect-ratio:1;border-radius:12px;background:#0b1220 center/cover no-repeat;}
#pc-page-roleplay-hub .ac-wanted{margin-top:12px;padding:14px;border-radius:16px;text-align:center;background:linear-gradient(180deg,rgba(239,68,68,.2),rgba(127,29,29,.12));border:1px solid rgba(248,113,113,.4);}
#pc-page-roleplay-hub .ac-wanted.off{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12);}
#pc-page-roleplay-hub .ac-wanted-h{font-size:.62rem;font-weight:900;letter-spacing:.3em;color:#fca5a5;}
#pc-page-roleplay-hub .ac-wanted.off .ac-wanted-h{color:#86efac;}
#pc-page-roleplay-hub .ac-wanted b{display:block;margin-top:6px;font-family:Georgia,'Times New Roman',serif;font-size:1.2rem;}
#pc-page-roleplay-hub .ac-wanted small{display:block;margin-top:6px;font-size:.72rem;line-height:1.5;color:rgba(255,255,255,.78);}
#pc-page-roleplay-hub .ac-plate{display:inline-block;margin-top:6px;padding:3px 10px;border-radius:6px;background:#f8fafc;color:#0f172a;font-family:monospace;font-weight:800;letter-spacing:.12em;font-size:.8rem;}
#pc-page-roleplay-hub .ac-danger{margin-top:9px;font-size:.66rem;font-weight:900;color:#fecaca;text-transform:uppercase;letter-spacing:.06em;}
#pc-page-roleplay-hub .ac-reward{margin-top:8px;font-size:.78rem;font-weight:800;color:#fcd34d;}
#pc-page-roleplay-hub .ac-wanted .mc-btn{margin-top:11px;}
/* Rédaction (fiche de l'entreprise de presse) */
#pc-page-roleplay-hub .acd-imgs{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
#pc-page-roleplay-hub .acd-img{position:relative;width:92px;height:70px;border-radius:10px;background:#0b1220 center/cover no-repeat;border:1px solid rgba(148,163,184,.25);}
#pc-page-roleplay-hub .acd-img.cover{outline:2px solid #60a5fa;outline-offset:1px;}
#pc-page-roleplay-hub .acd-img i{position:absolute;left:4px;bottom:4px;padding:1px 5px;border-radius:5px;background:#2563eb;color:#fff;font-style:normal;font-size:.5rem;font-weight:800;text-transform:uppercase;}
#pc-page-roleplay-hub .acd-img button{position:absolute;top:3px;padding:0 6px;height:18px;border-radius:6px;border:none;background:rgba(2,6,23,.8);color:#fff;font-size:.6rem;font-weight:800;cursor:pointer;}
#pc-page-roleplay-hub .acd-img button.x{right:3px;}
#pc-page-roleplay-hub .acd-img button.up{left:3px;}
#pc-page-roleplay-hub .acd-art{display:flex;gap:12px;align-items:center;padding:10px 0;border-top:1px solid rgba(148,163,184,.12);}
#pc-page-roleplay-hub .acd-market{margin-top:10px;padding:12px;border-radius:12px;border:1px solid rgba(56,189,248,.3);background:rgba(14,165,233,.06);}
#pc-page-roleplay-hub .acd-market-h{font-size:.64rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#7dd3fc;margin-bottom:6px;}
#pc-page-roleplay-hub .acd-market-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-top:8px;}
#pc-page-roleplay-hub .acd-mkdir{display:inline-flex;gap:4px;padding:3px;border-radius:11px;background:rgba(148,163,184,.1);}
#pc-page-roleplay-hub .acd-mkdir button{border:none;background:transparent;color:rgba(226,232,240,.7);font-family:inherit;font-size:.74rem;font-weight:800;padding:8px 12px;border-radius:9px;cursor:pointer;transition:background .18s,color .18s;}
#pc-page-roleplay-hub .acd-mkdir button.up.on{background:rgba(34,197,94,.22);color:#86efac;}
#pc-page-roleplay-hub .acd-mkdir button.down.on{background:rgba(239,68,68,.22);color:#fca5a5;}
#pc-page-roleplay-hub .acd-mkdir button:focus-visible{outline:2px solid #7dd3fc;outline-offset:1px;}
#pc-page-roleplay-hub .acd-market-note{margin:8px 0 0;font-size:.72rem;line-height:1.5;color:rgba(148,163,184,.8);}
#pc-page-roleplay-hub .acd-art .th{flex:0 0 58px;height:44px;border-radius:8px;background:#0b1220 center/cover no-repeat;border:1px solid rgba(148,163,184,.2);}
#pc-page-roleplay-hub .acd-art b{display:block;font-size:.84rem;color:#fff;}
#pc-page-roleplay-hub .acd-art small{display:block;margin-top:2px;font-size:.7rem;color:rgba(148,163,184,.8);}
/* ── Agenda (couleurs PalmCrest : bleus du thème) ── */
/* Fond des applis Agenda et Mon Code : la lueur bleue du thème. */
#pc-page-roleplay-hub .rph-layer-app.rph-glass-pc{background:radial-gradient(120% 55% at 50% -8%,rgba(var(--rph-a3-rgb),.42),transparent 62%),linear-gradient(180deg,var(--rph-b2) 0%,var(--rph-b4) 58%,#03060d 100%);}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .ag-root{background:transparent;}
#pc-page-roleplay-hub .ag-root{margin:0 -18px -22px;min-height:100%;padding:6px 16px 46px;color:#fff;background:linear-gradient(180deg,var(--rph-b2),var(--rph-b4));}
#pc-page-roleplay-hub .ag-strip{display:flex;gap:6px;overflow-x:auto;padding:12px 16px 16px;margin:0 -16px 0;scrollbar-width:none;
  -webkit-mask:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 22px),transparent 100%);mask:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 22px),transparent 100%);}
#pc-page-roleplay-hub .ag-strip::-webkit-scrollbar{display:none;}
#pc-page-roleplay-hub .ag-day{position:relative;flex:0 0 44px;display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 0 9px;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:rgba(255,255,255,.65);font-family:inherit;cursor:pointer;}
#pc-page-roleplay-hub .ag-day small{font-size:.56rem;font-weight:700;text-transform:capitalize;}
#pc-page-roleplay-hub .ag-day b{font-size:.9rem;color:#fff;}
#pc-page-roleplay-hub .ag-day i{position:absolute;bottom:4px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--rph-a4);}
#pc-page-roleplay-hub .ag-day.all{flex-basis:50px;}
#pc-page-roleplay-hub .ag-day.on{background:linear-gradient(160deg,var(--rph-a3),var(--rph-a1));border-color:transparent;color:#fff;box-shadow:0 6px 16px -6px rgba(var(--rph-a2-rgb),.8);}
#pc-page-roleplay-hub .ag-day.on i{background:#fff;}
#pc-page-roleplay-hub .ag-new{margin-top:2px!important;}
#pc-page-roleplay-hub .ag-ev{display:flex;gap:10px;margin-top:7px;padding:11px 12px 11px 0;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden;}
#pc-page-roleplay-hub .ag-ev::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ag-c);}
#pc-page-roleplay-hub .ag-time{flex:0 0 56px;text-align:center;padding-top:1px;}
#pc-page-roleplay-hub .ag-time b{font-size:.8rem;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .ag-body{flex:1;min-width:0;}
#pc-page-roleplay-hub .ag-top{display:flex;align-items:center;gap:7px;}
#pc-page-roleplay-hub .ag-top b{font-size:.8rem;line-height:1.3;}
#pc-page-roleplay-hub .ag-ic{display:flex;color:var(--ag-c);flex-shrink:0;}
#pc-page-roleplay-hub .ag-body small{display:block;margin-top:3px;font-size:.66rem;line-height:1.45;color:rgba(255,255,255,.62);}
#pc-page-roleplay-hub .ag-body small.ag-place{color:rgba(var(--rph-a4-rgb),.9);}
#pc-page-roleplay-hub .ag-body small.ag-raw{font-style:italic;}
#pc-page-roleplay-hub .ag-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;}
#pc-page-roleplay-hub .ag-pill{padding:3px 8px;border-radius:99px;font-size:.6rem;font-weight:800;background:rgba(255,255,255,.1);color:rgba(255,255,255,.8);}
#pc-page-roleplay-hub .ag-pill.ok{background:rgba(34,197,94,.18);color:#86efac;}
#pc-page-roleplay-hub .ag-pill.ko{background:rgba(248,113,113,.16);color:#fca5a5;}
#pc-page-roleplay-hub .ag-pill.warn{background:rgba(245,158,11,.18);color:#fcd34d;}
#pc-page-roleplay-hub .ag-go{margin-left:auto;padding:5px 11px;border-radius:9px;border:1px solid rgba(var(--rph-a4-rgb),.45);background:rgba(var(--rph-a3-rgb),.18);color:#fff;font-family:inherit;font-size:.64rem;font-weight:800;cursor:pointer;}
#pc-page-roleplay-hub .ag-go.del{border-color:rgba(248,113,113,.35);background:rgba(248,113,113,.1);color:#fca5a5;}
#pc-page-roleplay-hub .ag-empty{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:22px;padding:22px 16px;border-radius:16px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.12);text-align:center;color:rgba(var(--rph-a4-rgb),.8);}
#pc-page-roleplay-hub .ag-empty b{font-size:.84rem;color:#fff;}
#pc-page-roleplay-hub .ag-empty small{font-size:.68rem;line-height:1.5;color:rgba(255,255,255,.55);}
/* ── Mon Code : code de la route (couleurs PalmCrest : bleus du thème) ── */
#pc-page-roleplay-hub .rph-layer-app.rph-glass .mc-root{background:transparent;}
#pc-page-roleplay-hub .mc-root{margin:0 -18px -22px;min-height:100%;padding:6px 16px 46px;color:#fff;background:linear-gradient(180deg,var(--rph-b2),var(--rph-b4));}
#pc-page-roleplay-hub .mc-empty{padding:60px 20px;text-align:center;font-size:.8rem;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .mc-hero{text-align:center;padding:10px 0 4px;}
#pc-page-roleplay-hub .mc-brand{display:inline-flex;align-items:center;gap:7px;font-size:.66rem;font-weight:800;color:var(--rph-a5);padding:5px 11px;border-radius:99px;background:rgba(var(--rph-a3-rgb),.12);border:1px solid rgba(var(--rph-a4-rgb),.28);}
#pc-page-roleplay-hub .mc-brand svg{color:var(--rph-a4);}
#pc-page-roleplay-hub .mc-card{display:flex;align-items:center;gap:12px;margin-top:12px;padding:13px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);text-align:left;}
#pc-page-roleplay-hub .mc-card b{display:block;font-size:.9rem;font-weight:800;}
#pc-page-roleplay-hub .mc-card small{display:block;font-size:.68rem;line-height:1.5;color:rgba(255,255,255,.68);margin-top:2px;}
#pc-page-roleplay-hub .mc-card.mc-stat{background:linear-gradient(135deg,rgba(var(--rph-a3-rgb),.22),rgba(var(--rph-a1-rgb),.08));color:var(--rph-a4);}
#pc-page-roleplay-hub .mc-card.mc-stat b{color:#fff;}
#pc-page-roleplay-hub .mc-card.mc-ok{background:linear-gradient(135deg,rgba(74,222,128,.2),rgba(22,101,52,.12));border-color:rgba(74,222,128,.35);}
#pc-page-roleplay-hub .mc-card.mc-info{display:block;}
#pc-page-roleplay-hub .mc-card small b{display:inline;font-size:inherit;font-weight:800;color:#fff;}
#pc-page-roleplay-hub .mc-card.mc-invite{justify-content:space-between;border-color:rgba(var(--rph-a4-rgb),.5);background:rgba(var(--rph-a3-rgb),.16);}
#pc-page-roleplay-hub .mc-seal{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;background:#22c55e;color:#fff;box-shadow:0 6px 18px -6px rgba(34,197,94,.9);}
#pc-page-roleplay-hub .mc-seal svg{width:22px;height:22px;}
#pc-page-roleplay-hub .mc-ring{flex-shrink:0;display:block;}
#pc-page-roleplay-hub .mc-sec{display:flex;justify-content:space-between;align-items:baseline;margin:18px 2px 8px;font-size:.7rem;font-weight:800;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .mc-sec em{font-style:normal;color:var(--rph-a4);}
#pc-page-roleplay-hub .mc-lead{margin:8px 2px 12px;font-size:.76rem;line-height:1.55;color:rgba(255,255,255,.78);}
#pc-page-roleplay-hub .mc-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
#pc-page-roleplay-hub .mc-tile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 10px;border-radius:16px;border:1px solid rgba(var(--rph-a4-rgb),.25);background:linear-gradient(160deg,rgba(var(--rph-a3-rgb),.2),rgba(var(--rph-b1-rgb),.25));color:#fff;font-family:inherit;text-align:left;cursor:pointer;transition:transform .16s,background .16s;}
#pc-page-roleplay-hub .mc-tile svg{color:var(--rph-a4);}
#pc-page-roleplay-hub .mc-tile b{font-size:.74rem;font-weight:800;line-height:1.2;}
#pc-page-roleplay-hub .mc-tile small{font-size:.6rem;color:rgba(255,255,255,.6);line-height:1.35;}
#pc-page-roleplay-hub .mc-tile:hover{transform:translateY(-1px);background:linear-gradient(160deg,rgba(var(--rph-a3-rgb),.3),rgba(var(--rph-b1-rgb),.3));}
#pc-page-roleplay-hub .mc-cats{display:grid;gap:6px;}
#pc-page-roleplay-hub .mc-cat{display:grid;gap:7px;padding:10px 12px;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;text-align:left;cursor:pointer;}
#pc-page-roleplay-hub .mc-cat:hover{background:rgba(255,255,255,.09);}
#pc-page-roleplay-hub .mc-cat[disabled]{opacity:.45;cursor:default;}
#pc-page-roleplay-hub .mc-cat-t{display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
#pc-page-roleplay-hub .mc-cat b{font-size:.78rem;}
#pc-page-roleplay-hub .mc-cat small{font-size:.62rem;color:rgba(255,255,255,.55);white-space:nowrap;}
#pc-page-roleplay-hub .mc-bar{display:block;height:4px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden;}
#pc-page-roleplay-hub .mc-bar i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--rph-a3),var(--rph-a5));}
#pc-page-roleplay-hub .mc-facts{display:flex;gap:6px;margin-bottom:10px;}
#pc-page-roleplay-hub .mc-facts span{flex:1;min-width:0;padding:8px 4px;border-radius:12px;background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.07);text-align:center;font-size:.58rem;color:rgba(255,255,255,.58);}
#pc-page-roleplay-hub .mc-facts b{display:block;font-size:.8rem;color:#fff;margin-bottom:1px;}
#pc-page-roleplay-hub .mc-lbl{display:block;margin:4px 2px 5px;font-size:.64rem;font-weight:700;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .mc-input{width:100%;box-sizing:border-box;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.25);color:#fff;font-family:inherit;font-size:.78rem;outline:none;}
#pc-page-roleplay-hub .mc-input:focus{border-color:rgba(var(--rph-a4-rgb),.7);box-shadow:0 0 0 3px rgba(var(--rph-a3-rgb),.2);}
#pc-page-roleplay-hub .mc-join{display:flex;gap:8px;margin-top:12px;}
#pc-page-roleplay-hub .mc-join .mc-input{flex:1;min-width:0;}
#pc-page-roleplay-hub .mc-code-in{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:1rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;text-align:center;}
#pc-page-roleplay-hub .mc-hint{display:block;margin:7px 2px 0;font-size:.62rem;line-height:1.5;color:rgba(255,255,255,.5);}
#pc-page-roleplay-hub .mc-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:12px;border:none;background:linear-gradient(135deg,var(--rph-a3),var(--rph-a1));color:#fff;font-family:inherit;font-weight:800;font-size:.76rem;cursor:pointer;white-space:nowrap;box-shadow:0 6px 18px -6px rgba(var(--rph-a2-rgb,37,99,235),.8),inset 0 1px 0 rgba(255,255,255,.22);transition:filter .16s,transform .16s;}
#pc-page-roleplay-hub .mc-btn:hover{filter:brightness(1.1);}
#pc-page-roleplay-hub .mc-btn[disabled]{opacity:.45;cursor:not-allowed;filter:none;}
#pc-page-roleplay-hub .mc-btn.wide,#pc-page-roleplay-hub .mc-ghost.wide{display:flex;width:100%;margin-top:12px;padding:13px 14px;font-size:.82rem;}
#pc-page-roleplay-hub .mc-btn.warn{background:linear-gradient(135deg,#f59e0b,#b45309);box-shadow:0 6px 18px -6px rgba(245,158,11,.8);}
#pc-page-roleplay-hub .mc-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;font-weight:800;font-size:.74rem;cursor:pointer;}
#pc-page-roleplay-hub .mc-ghost:hover{background:rgba(255,255,255,.1);}
#pc-page-roleplay-hub .mc-ghost[disabled]{opacity:.35;cursor:default;}
#pc-page-roleplay-hub .mc-duo{display:flex;gap:8px;margin-top:12px;}
#pc-page-roleplay-hub .mc-duo > *{flex:1;}
#pc-page-roleplay-hub .mc-row-sp{display:flex;align-items:center;justify-content:space-between;gap:10px;}
#pc-page-roleplay-hub .mc-msg{margin-top:10px;padding:10px 12px;border-radius:12px;font-size:.72rem;font-weight:700;line-height:1.45;}
#pc-page-roleplay-hub .mc-msg.ok{background:rgba(var(--rph-a3-rgb),.14);color:var(--rph-a5);border:1px solid rgba(var(--rph-a4-rgb),.35);}
#pc-page-roleplay-hub .mc-msg.err{background:rgba(248,113,113,.13);color:#fecaca;border:1px solid rgba(248,113,113,.35);}
#pc-page-roleplay-hub .mc-line{display:flex;align-items:center;gap:11px;width:100%;margin-top:6px;padding:11px 12px;border-radius:13px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;text-align:left;cursor:pointer;}
#pc-page-roleplay-hub .mc-line:hover{background:rgba(255,255,255,.09);}
#pc-page-roleplay-hub .mc-line.static{cursor:default;}
#pc-page-roleplay-hub .mc-line.static:hover{background:rgba(255,255,255,.05);}
#pc-page-roleplay-hub .mc-line.exm{border-color:rgba(var(--rph-a4-rgb),.35);background:rgba(var(--rph-a3-rgb),.12);}
#pc-page-roleplay-hub .mc-line.exm > svg:first-child{color:var(--rph-a4);flex-shrink:0;}
#pc-page-roleplay-hub .mc-line > span:not(.mc-pill){flex:1;min-width:0;}
#pc-page-roleplay-hub .mc-line b{display:block;font-size:.78rem;}
#pc-page-roleplay-hub .mc-line small{display:block;font-size:.63rem;color:rgba(255,255,255,.55);line-height:1.4;margin-top:1px;}
#pc-page-roleplay-hub .mc-line > svg:last-child{color:rgba(255,255,255,.4);flex-shrink:0;}
#pc-page-roleplay-hub .mc-badge{font-style:normal;min-width:20px;height:20px;padding:0 6px;box-sizing:border-box;border-radius:10px;background:#ef4444;color:#fff;font-size:.66rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;}
#pc-page-roleplay-hub .mc-pill{display:inline-flex;align-items:center;padding:3px 8px;border-radius:99px;font-size:.62rem;font-weight:800;white-space:nowrap;background:rgba(255,255,255,.1);color:rgba(255,255,255,.8);}
#pc-page-roleplay-hub .mc-pill.ok{background:rgba(34,197,94,.18);color:#86efac;}
#pc-page-roleplay-hub .mc-pill.ko{background:rgba(248,113,113,.16);color:#fca5a5;}
#pc-page-roleplay-hub .mc-banner{display:flex;align-items:center;gap:11px;width:100%;margin-top:12px;padding:12px;border-radius:15px;border:1px solid rgba(var(--rph-a4-rgb),.45);background:rgba(var(--rph-a3-rgb),.18);color:#fff;font-family:inherit;text-align:left;cursor:pointer;}
#pc-page-roleplay-hub .mc-banner.live{border-color:rgba(245,158,11,.55);background:rgba(245,158,11,.14);}
#pc-page-roleplay-hub .mc-banner > span:nth-child(2){flex:1;}
#pc-page-roleplay-hub .mc-banner b{display:block;font-size:.8rem;}
#pc-page-roleplay-hub .mc-banner small{display:block;font-size:.66rem;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .mc-dot{width:9px;height:9px;flex-shrink:0;border-radius:50%;background:var(--rph-a4);animation:mc-pulse 1.4s infinite;}
#pc-page-roleplay-hub .mc-banner.live .mc-dot{background:#f59e0b;}
@keyframes mc-pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.55);}70%{box-shadow:0 0 0 8px rgba(255,255,255,0);}100%{box-shadow:0 0 0 0 rgba(255,255,255,0);}}
#pc-page-roleplay-hub .mc-points{margin:0;padding:0;list-style:none;counter-reset:mc;display:grid;gap:7px;}
#pc-page-roleplay-hub .mc-points li{counter-increment:mc;position:relative;padding:10px 12px 10px 40px;border-radius:13px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.07);font-size:.74rem;line-height:1.5;color:rgba(255,255,255,.88);}
#pc-page-roleplay-hub .mc-points li::before{content:counter(mc);position:absolute;left:11px;top:10px;width:20px;height:20px;border-radius:50%;background:rgba(var(--rph-a3-rgb),.3);color:var(--rph-a5);font-size:.64rem;font-weight:800;display:flex;align-items:center;justify-content:center;}
#pc-page-roleplay-hub .mc-qhead{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:.7rem;color:rgba(255,255,255,.65);}
#pc-page-roleplay-hub .mc-qhead b{color:#fff;}
#pc-page-roleplay-hub .mc-timer{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:99px;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.1);color:var(--rph-a4);}
#pc-page-roleplay-hub .mc-timer b{font-variant-numeric:tabular-nums;font-size:.78rem;}
#pc-page-roleplay-hub .mc-timer.big b{font-size:.9rem;}
#pc-page-roleplay-hub .mc-timer b.low{color:#f87171;}
#pc-page-roleplay-hub .mc-prog{height:4px;margin-top:9px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden;}
#pc-page-roleplay-hub .mc-prog i{display:block;height:100%;background:linear-gradient(90deg,var(--rph-a3),var(--rph-a5));transition:width .3s;}
#pc-page-roleplay-hub .mc-tag{display:inline-block;margin-top:14px;padding:3px 9px;border-radius:99px;background:rgba(var(--rph-a3-rgb),.16);color:var(--rph-a5);font-size:.6rem;font-weight:800;}
#pc-page-roleplay-hub .mc-q{margin:12px 2px 14px;font-size:.95rem;font-weight:700;line-height:1.45;}
#pc-page-roleplay-hub .mc-choices{display:grid;gap:7px;}
#pc-page-roleplay-hub .mc-choice{display:flex;align-items:flex-start;gap:10px;width:100%;padding:11px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;font-size:.78rem;line-height:1.45;text-align:left;cursor:pointer;transition:background .15s,border-color .15s;}
#pc-page-roleplay-hub .mc-choice:hover:not([disabled]){background:rgba(255,255,255,.09);}
#pc-page-roleplay-hub .mc-choice[disabled]{cursor:default;}
#pc-page-roleplay-hub .mc-letter{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:7px;background:rgba(255,255,255,.1);font-size:.66rem;font-weight:800;}
#pc-page-roleplay-hub .mc-choice.on{border-color:rgba(var(--rph-a4-rgb),.8);background:rgba(var(--rph-a3-rgb),.22);}
#pc-page-roleplay-hub .mc-choice.on .mc-letter{background:var(--rph-a3);}
#pc-page-roleplay-hub .mc-choice.good{border-color:rgba(74,222,128,.7);background:rgba(34,197,94,.16);}
#pc-page-roleplay-hub .mc-choice.good .mc-letter{background:#22c55e;}
#pc-page-roleplay-hub .mc-choice.bad{border-color:rgba(248,113,113,.7);background:rgba(239,68,68,.14);}
#pc-page-roleplay-hub .mc-choice.bad .mc-letter{background:#ef4444;}
#pc-page-roleplay-hub .mc-feedback{margin-top:12px;padding:11px 12px;border-radius:13px;}
#pc-page-roleplay-hub .mc-feedback.ok{background:rgba(34,197,94,.13);border:1px solid rgba(74,222,128,.35);}
#pc-page-roleplay-hub .mc-feedback.ko{background:rgba(239,68,68,.12);border:1px solid rgba(248,113,113,.35);}
#pc-page-roleplay-hub .mc-feedback b{display:block;font-size:.78rem;}
#pc-page-roleplay-hub .mc-feedback small{display:block;margin-top:3px;font-size:.7rem;line-height:1.5;color:rgba(255,255,255,.8);}
#pc-page-roleplay-hub .mc-nav{display:flex;justify-content:space-between;gap:8px;margin-top:14px;}
#pc-page-roleplay-hub .mc-dots{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px;}
#pc-page-roleplay-hub .mc-dotq{width:28px;height:28px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:rgba(255,255,255,.6);font-family:inherit;font-size:.64rem;font-weight:800;cursor:pointer;padding:0;}
#pc-page-roleplay-hub .mc-dotq.on{background:rgba(var(--rph-a3-rgb),.35);color:#fff;border-color:rgba(var(--rph-a4-rgb),.4);}
#pc-page-roleplay-hub .mc-dotq.cur{box-shadow:0 0 0 2px var(--rph-a4);color:#fff;}
#pc-page-roleplay-hub .mc-result{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:14px;padding:18px 14px;border-radius:20px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);text-align:center;color:var(--rph-a4);}
#pc-page-roleplay-hub .mc-result .mc-ring{width:92px;height:92px;margin-bottom:6px;}
#pc-page-roleplay-hub .mc-result.ok{color:#4ade80;border-color:rgba(74,222,128,.35);background:rgba(34,197,94,.1);}
#pc-page-roleplay-hub .mc-result.ko{color:#f87171;border-color:rgba(248,113,113,.3);background:rgba(239,68,68,.08);}
#pc-page-roleplay-hub .mc-result b{font-size:1.02rem;color:#fff;}
#pc-page-roleplay-hub .mc-result small{font-size:.7rem;line-height:1.5;color:rgba(255,255,255,.68);}
#pc-page-roleplay-hub .mc-rev{margin-top:7px;padding:11px 12px;border-radius:13px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);}
#pc-page-roleplay-hub .mc-rev > b{display:block;font-size:.76rem;line-height:1.45;margin-bottom:6px;}
#pc-page-roleplay-hub .mc-rev small{display:block;margin-top:6px;font-size:.66rem;line-height:1.5;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .mc-rev-l{display:flex;align-items:flex-start;gap:6px;margin-top:3px;font-size:.72rem;line-height:1.4;}
#pc-page-roleplay-hub .mc-rev-l svg{flex-shrink:0;margin-top:1px;}
#pc-page-roleplay-hub .mc-rev-l.good{color:#86efac;}
#pc-page-roleplay-hub .mc-rev-l.bad{color:#fca5a5;}
#pc-page-roleplay-hub .mc-wait{margin-top:14px;padding:18px 14px;border-radius:20px;border:1px solid rgba(var(--rph-a4-rgb),.3);background:rgba(var(--rph-a3-rgb),.12);text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;}
#pc-page-roleplay-hub .mc-wait > small{font-size:.66rem;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .mc-wait > b{font-size:.8rem;}
#pc-page-roleplay-hub .mc-code{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:1.9rem;font-weight:700;letter-spacing:.22em;color:#fff;text-shadow:0 4px 18px rgba(var(--rph-a3-rgb),.6);}
#pc-page-roleplay-hub .mc-code.sm{font-size:1.25rem;letter-spacing:.18em;}
#pc-page-roleplay-hub .mc-code-s{font-family:'IBM Plex Mono',ui-monospace,monospace;font-weight:700;letter-spacing:.14em;color:#fff;}
#pc-page-roleplay-hub .mc-pulse{display:flex;align-items:center;gap:8px;margin:6px 0 2px;font-size:.72rem;font-weight:700;color:var(--rph-a5);}
#pc-page-roleplay-hub .mc-pulse span{width:9px;height:9px;border-radius:50%;background:var(--rph-a4);animation:mc-pulse 1.4s infinite;}
#pc-page-roleplay-hub .mc-req{display:flex;align-items:flex-start;gap:8px;margin-top:6px;padding:10px 12px;border-radius:13px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);}
#pc-page-roleplay-hub .mc-chk{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0;cursor:pointer;}
#pc-page-roleplay-hub .mc-chk input{margin:3px 0 0;width:16px;height:16px;accent-color:var(--rph-a3);flex-shrink:0;}
#pc-page-roleplay-hub .mc-chk b{display:block;font-size:.78rem;}
#pc-page-roleplay-hub .mc-chk small{display:block;font-size:.62rem;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .mc-chk em{display:block;margin-top:3px;font-size:.68rem;color:rgba(255,255,255,.75);}
#pc-page-roleplay-hub .mc-x{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 6px;border-radius:9px;border:1px solid rgba(248,113,113,.3);background:rgba(248,113,113,.08);color:#fca5a5;font-family:inherit;font-size:.62rem;font-weight:800;cursor:pointer;}
#pc-page-roleplay-hub .mc-sess{margin-top:8px;padding:12px;border-radius:16px;border:1px solid rgba(var(--rph-a4-rgb),.3);background:rgba(var(--rph-a3-rgb),.1);}
#pc-page-roleplay-hub .mc-sess.live{border-color:rgba(245,158,11,.45);background:rgba(245,158,11,.08);}
#pc-page-roleplay-hub .mc-sess-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;}
#pc-page-roleplay-hub .mc-sess-top small{font-size:.62rem;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .mc-sess-top small b{color:#fff;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .mc-sess-top small b.low{color:#f87171;}
#pc-page-roleplay-hub .mc-cand{display:flex;align-items:center;gap:8px;padding:7px 0;border-top:1px solid rgba(255,255,255,.07);font-size:.74rem;}
#pc-page-roleplay-hub .mc-cand > span:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .mc-mini{padding:4px 9px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);color:rgba(255,255,255,.8);font-family:inherit;font-size:.62rem;font-weight:800;cursor:pointer;}
#pc-page-roleplay-hub .mc-card.mc-lic{background:linear-gradient(135deg,rgba(var(--rph-a3-rgb),.28),rgba(var(--rph-b1-rgb),.35));border-color:rgba(var(--rph-a4-rgb),.4);color:var(--rph-a4);}
#pc-page-roleplay-hub .mc-card.mc-lic b{color:#fff;}
#pc-page-roleplay-hub .mc-card.mc-void{background:linear-gradient(135deg,rgba(239,68,68,.2),rgba(127,29,29,.12));border-color:rgba(248,113,113,.4);color:#f87171;}
#pc-page-roleplay-hub .mc-card.mc-void b{color:#fecaca;}
#pc-page-roleplay-hub .mc-step{display:flex;align-items:center;gap:11px;margin:10px 0;}
#pc-page-roleplay-hub .mc-step + .mc-step{margin-top:14px;}
#pc-page-roleplay-hub .mc-step-n{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border-radius:50%;background:rgba(var(--rph-a3-rgb),.3);border:1px solid rgba(var(--rph-a4-rgb),.5);color:#fff;font-size:.74rem;font-weight:800;}
#pc-page-roleplay-hub .mc-step.done .mc-step-n{background:#22c55e;border-color:#22c55e;}
#pc-page-roleplay-hub .mc-step.locked{opacity:.6;}
#pc-page-roleplay-hub .mc-step b{display:block;font-size:.82rem;}
#pc-page-roleplay-hub .mc-step small{display:block;font-size:.64rem;line-height:1.45;color:rgba(255,255,255,.58);}
#pc-page-roleplay-hub .mc-banner.static{cursor:default;}
#pc-page-roleplay-hub .mc-dname{display:block;font-size:.95rem;margin-top:2px;}
#pc-page-roleplay-hub .mc-mini.go{border-color:rgba(var(--rph-a4-rgb),.6);background:rgba(var(--rph-a3-rgb),.25);color:#fff;align-self:center;}
#pc-page-roleplay-hub .mc-req .mc-mini{align-self:center;}
#pc-page-roleplay-hub .mc-pill.warn{background:rgba(245,158,11,.18);color:#fcd34d;}
#pc-page-roleplay-hub .mc-seal.big{width:64px;height:64px;margin-bottom:6px;}
#pc-page-roleplay-hub .mc-seal.big svg{width:30px;height:30px;}
#pc-page-roleplay-hub .mc-seal.ko{background:#ef4444;box-shadow:0 6px 18px -6px rgba(239,68,68,.9);}
#pc-page-roleplay-hub .mc-crit{margin-top:7px;padding:10px 12px;border-radius:13px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);}
#pc-page-roleplay-hub .mc-crit.ok{border-color:rgba(74,222,128,.35);}
#pc-page-roleplay-hub .mc-crit.minor{border-color:rgba(245,158,11,.45);}
#pc-page-roleplay-hub .mc-crit.major{border-color:rgba(248,113,113,.55);background:rgba(239,68,68,.08);}
#pc-page-roleplay-hub .mc-crit-t b{display:block;font-size:.78rem;}
#pc-page-roleplay-hub .mc-crit-t small{display:block;font-size:.62rem;line-height:1.4;color:rgba(255,255,255,.55);margin-top:1px;}
#pc-page-roleplay-hub .mc-seg{display:flex;gap:4px;margin-top:8px;padding:3px;border-radius:11px;background:rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.07);}
#pc-page-roleplay-hub .mc-seg button{flex:1;padding:7px 4px;border-radius:8px;border:none;background:none;color:rgba(255,255,255,.6);font-family:inherit;font-size:.68rem;font-weight:800;cursor:pointer;}
#pc-page-roleplay-hub .mc-seg button.on{color:#fff;background:rgba(var(--rph-a3-rgb),.35);}
#pc-page-roleplay-hub .mc-seg button.ok.on{background:#16a34a;}
#pc-page-roleplay-hub .mc-seg button.minor.on{background:#d97706;}
#pc-page-roleplay-hub .mc-seg button.major.on{background:#dc2626;}
#pc-page-roleplay-hub .mc-seg.cats{flex-wrap:wrap;margin-top:0;}
#pc-page-roleplay-hub .mc-verdict{margin-top:12px;padding:10px 12px;border-radius:12px;font-size:.74rem;font-weight:800;text-align:center;background:rgba(255,255,255,.06);color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .mc-verdict.ok{background:rgba(34,197,94,.15);color:#86efac;}
#pc-page-roleplay-hub .mc-verdict.ko{background:rgba(239,68,68,.14);color:#fca5a5;}
#pc-page-roleplay-hub textarea.mc-input{resize:vertical;min-height:54px;}
#pc-page-roleplay-hub .mc-qimg{display:flex;justify-content:center;align-items:center;margin:14px 0 2px;padding:12px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);}
#pc-page-roleplay-hub .mc-qimg .mc-sign{width:128px;height:128px;display:block;filter:drop-shadow(0 6px 14px rgba(0,0,0,.45));}
#pc-page-roleplay-hub .mc-qimg.photo{padding:0;overflow:hidden;}
#pc-page-roleplay-hub .mc-qimg.photo img{display:block;width:100%;max-height:200px;object-fit:cover;}
#pc-page-roleplay-hub .mc-qimg.sm{float:right;margin:0 0 6px 10px;padding:6px;border-radius:11px;}
#pc-page-roleplay-hub .mc-qimg.sm .mc-sign{width:54px;height:54px;}
#pc-page-roleplay-hub .mc-qimg.sm.photo img{width:88px;height:60px;}
#pc-page-roleplay-hub .mc-rev::after{content:'';display:block;clear:both;}
#pc-page-roleplay-hub .mc-blink{animation:mc-blink 1s steps(2,start) infinite;}
@keyframes mc-blink{to{opacity:.35;}}
#pc-page-roleplay-hub .mc-daily{display:flex;align-items:center;gap:12px;padding:12px;border-radius:16px;border:1px solid rgba(251,146,60,.4);background:linear-gradient(135deg,rgba(251,146,60,.18),rgba(var(--rph-b1-rgb),.2));}
#pc-page-roleplay-hub .mc-daily.done{border-color:rgba(74,222,128,.35);background:linear-gradient(135deg,rgba(34,197,94,.14),rgba(var(--rph-b1-rgb),.2));}
#pc-page-roleplay-hub .mc-daily > span:nth-child(2){flex:1;min-width:0;}
#pc-page-roleplay-hub .mc-daily b{display:block;font-size:.82rem;}
#pc-page-roleplay-hub .mc-daily small{display:block;font-size:.64rem;line-height:1.45;color:rgba(255,255,255,.65);}
#pc-page-roleplay-hub .mc-daily > svg{color:#4ade80;flex-shrink:0;}
#pc-page-roleplay-hub .mc-flame{display:flex;flex-direction:column;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border-radius:13px;background:rgba(0,0,0,.25);color:#fb923c;}
#pc-page-roleplay-hub .mc-flame b{font-size:.74rem;color:#fff;line-height:1;margin-top:1px;}
#pc-page-roleplay-hub .mc-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;}
#pc-page-roleplay-hub .mc-bdg{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);text-align:center;opacity:.5;}
#pc-page-roleplay-hub .mc-bdg.on{opacity:1;border-color:rgba(251,191,36,.45);background:linear-gradient(160deg,rgba(251,191,36,.16),rgba(var(--rph-b1-rgb),.2));}
#pc-page-roleplay-hub .mc-bdg-ic{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .mc-bdg.on .mc-bdg-ic{background:linear-gradient(160deg,#fde68a,#f59e0b);color:#422006;box-shadow:0 4px 14px -4px rgba(245,158,11,.8);}
#pc-page-roleplay-hub .mc-bdg b{font-size:.64rem;line-height:1.2;}
#pc-page-roleplay-hub .mc-bdg small{font-size:.55rem;line-height:1.3;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .mc-ment{display:flex;align-items:center;gap:10px;margin-top:6px;padding:10px 12px;border-radius:13px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);}
#pc-page-roleplay-hub .mc-ment > span:nth-child(2){flex:1;min-width:0;}
#pc-page-roleplay-hub .mc-ment b{display:block;font-size:.78rem;}
#pc-page-roleplay-hub .mc-ment small{display:block;font-size:.6rem;line-height:1.4;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .mc-ment-ic .mc-sign{width:40px;height:40px;display:block;border-radius:10px;}
#pc-page-roleplay-hub .mc-link{padding:0;margin-top:3px;border:none;background:none;color:var(--rph-a4);font-family:inherit;font-size:.62rem;font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:2px;}
#pc-page-roleplay-hub .mc-cat.spec{border-color:rgba(245,158,11,.3);}
@media (prefers-reduced-motion:reduce){#pc-page-roleplay-hub .mc-dot,#pc-page-roleplay-hub .mc-pulse span,#pc-page-roleplay-hub .mc-blink{animation:none;}}
/* ── Florida Lottery (couleurs PalmCrest : bleus du thème) ── */
#pc-page-roleplay-hub .rph-layer-app.rph-glass-lt{background:radial-gradient(120% 55% at 50% -8%,rgba(var(--rph-a3-rgb),.42),transparent 62%),linear-gradient(180deg,var(--rph-b2) 0%,var(--rph-b4) 58%,#03060d 100%);}
#pc-page-roleplay-hub .rph-layer-app.rph-glass-lt .rph-app-head{background:rgba(255,255,255,.02);border-bottom:1px solid rgba(255,255,255,.07);box-shadow:none;-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5);}
#pc-page-roleplay-hub .rph-layer-app.rph-glass-lt .rph-app-head::before{display:none;}
#pc-page-roleplay-hub .rph-layer-app.rph-glass .lt-root{background:transparent;}
#pc-page-roleplay-hub .lt-root{margin:0 -18px -22px;min-height:100%;padding:6px 16px 46px;color:#fff;background:linear-gradient(180deg,var(--rph-b2),var(--rph-b4));position:relative;}
#pc-page-roleplay-hub .lt-sym{display:block;flex-shrink:0;}
#pc-page-roleplay-hub .lt-empty{padding:60px 20px;text-align:center;font-size:.8rem;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .lt-hero{text-align:center;padding:14px 6px 16px;}
#pc-page-roleplay-hub .lt-brand{display:inline-flex;align-items:center;gap:7px;font-size:.66rem;font-weight:800;letter-spacing:.02em;color:var(--rph-a5);padding:5px 11px;border-radius:99px;background:rgba(var(--rph-a3-rgb),.12);border:1px solid rgba(var(--rph-a4-rgb),.28);}
#pc-page-roleplay-hub .lt-brand svg{color:var(--rph-a4);}
#pc-page-roleplay-hub .lt-jlbl{margin-top:14px;font-size:.74rem;font-weight:700;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .lt-jackpot{font-size:2.35rem;font-weight:900;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,#fff 0%,var(--rph-a5) 50%,var(--rph-a3) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 16px rgba(var(--rph-a3-rgb),.45));}
#pc-page-roleplay-hub .lt-cd{margin-top:6px;font-size:.72rem;color:rgba(255,255,255,.62);line-height:1.5;}
#pc-page-roleplay-hub .lt-cd b{font-size:.95rem;color:var(--rph-a4);font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .lt-pay{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border-radius:15px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.07);}
#pc-page-roleplay-hub .lt-pay button{padding:8px 6px;border-radius:11px;border:none;background:none;color:rgba(255,255,255,.58);font-family:inherit;cursor:pointer;text-align:center;transition:background .18s,color .18s;}
#pc-page-roleplay-hub .lt-pay button small{display:block;font-size:.6rem;font-weight:700;}
#pc-page-roleplay-hub .lt-pay button b{display:block;font-size:.8rem;font-weight:800;margin-top:1px;}
#pc-page-roleplay-hub .lt-pay button.on{background:rgba(var(--rph-a3-rgb),.2);color:#fff;box-shadow:inset 0 0 0 1px rgba(var(--rph-a4-rgb),.55);}
#pc-page-roleplay-hub .lt-pay button[disabled]{opacity:.4;cursor:not-allowed;}
#pc-page-roleplay-hub .lt-msg{margin-top:10px;padding:10px 12px;border-radius:12px;font-size:.74rem;font-weight:700;line-height:1.45;}
#pc-page-roleplay-hub .lt-msg.ok{background:rgba(var(--rph-a3-rgb),.14);color:var(--rph-a5);border:1px solid rgba(var(--rph-a4-rgb),.35);}
#pc-page-roleplay-hub .lt-msg.err{background:rgba(248,113,113,.13);color:#fecaca;border:1px solid rgba(248,113,113,.35);}
#pc-page-roleplay-hub .lt-games{display:grid;gap:10px;margin-top:12px;}
#pc-page-roleplay-hub .lt-game{display:grid;grid-template-columns:74px 1fr;gap:4px 12px;align-items:center;padding:13px;border-radius:18px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
#pc-page-roleplay-hub .lt-game.scratch{background:linear-gradient(135deg,rgba(var(--rph-a3-rgb),.26),rgba(var(--rph-a1-rgb),.1));}
#pc-page-roleplay-hub .lt-game.loto{background:linear-gradient(135deg,rgba(var(--rph-a4-rgb),.16),rgba(var(--rph-b1-rgb),.35));}
#pc-page-roleplay-hub .lt-game.off{opacity:.55;}
#pc-page-roleplay-hub .lt-game-art{grid-row:span 2;height:74px;border-radius:14px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;gap:2px;overflow:hidden;}
#pc-page-roleplay-hub .lt-mini{display:grid;grid-template-columns:1fr 1fr;gap:4px;}
#pc-page-roleplay-hub .lt-game-art .lt-ball{width:24px;height:24px;font-size:.66rem;margin:0 -3px;}
#pc-page-roleplay-hub .lt-game-txt b{display:block;font-size:.9rem;font-weight:800;}
#pc-page-roleplay-hub .lt-game-txt small{display:block;font-size:.66rem;color:rgba(255,255,255,.7);line-height:1.4;margin-top:2px;}
#pc-page-roleplay-hub .lt-buy{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:12px;border:none;background:linear-gradient(135deg,var(--rph-a3),var(--rph-a1));color:#fff;font-family:inherit;font-weight:800;font-size:.78rem;cursor:pointer;box-shadow:0 6px 18px -6px rgba(var(--rph-a2-rgb,37,99,235),.8),inset 0 1px 0 rgba(255,255,255,.22);transition:transform .16s,filter .16s;}
#pc-page-roleplay-hub .lt-buy span{padding:3px 8px;border-radius:8px;background:rgba(255,255,255,.18);font-size:.72rem;}
#pc-page-roleplay-hub .lt-buy:hover{filter:brightness(1.1);transform:translateY(-1px);}
#pc-page-roleplay-hub .lt-buy[disabled]{opacity:.45;cursor:not-allowed;transform:none;}
#pc-page-roleplay-hub .lt-buy.wide{width:100%;margin-top:12px;padding:13px 14px;font-size:.84rem;}
#pc-page-roleplay-hub .lt-closed{font-size:.7rem;font-weight:800;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .lt-ghost{padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;font-weight:800;font-size:.74rem;cursor:pointer;}
#pc-page-roleplay-hub .lt-ghost:hover{background:rgba(255,255,255,.1);}
#pc-page-roleplay-hub .lt-ghost[disabled]{opacity:.45;cursor:default;}
#pc-page-roleplay-hub .lt-sec{display:flex;justify-content:space-between;align-items:baseline;margin:18px 2px 8px;font-size:.7rem;font-weight:800;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .lt-sec em{font-style:normal;color:var(--rph-a4);}
#pc-page-roleplay-hub .lt-row{display:flex;align-items:center;gap:11px;width:100%;margin-top:6px;padding:10px 12px;border-radius:13px;border:1px solid rgba(var(--rph-a4-rgb),.3);background:rgba(var(--rph-a3-rgb),.1);color:#fff;font-family:inherit;text-align:left;cursor:pointer;}
#pc-page-roleplay-hub .lt-row > span:nth-child(2){flex:1;}
#pc-page-roleplay-hub .lt-row b{display:block;font-size:.78rem;}
#pc-page-roleplay-hub .lt-row small{display:block;font-size:.64rem;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .lt-row em{font-style:normal;font-size:.7rem;font-weight:800;color:var(--rph-a4);}
#pc-page-roleplay-hub .lt-row-ic{display:flex;color:var(--rph-a4);}
#pc-page-roleplay-hub .lt-ball{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;flex-shrink:0;font-weight:900;font-size:.82rem;color:var(--rph-b1);
  background:radial-gradient(circle at 34% 28%,#fff 0%,#eef4ff 40%,#c7d6ee 100%);box-shadow:inset 0 -3px 6px rgba(15,23,42,.25),0 3px 8px rgba(0,0,0,.35);}
#pc-page-roleplay-hub .lt-ball b{font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .lt-ball.palm{color:#fff;background:radial-gradient(circle at 34% 28%,var(--rph-a5) 0%,var(--rph-a3) 45%,var(--rph-a1) 100%);}
#pc-page-roleplay-hub .lt-ball.sm{width:27px;height:27px;font-size:.68rem;}
#pc-page-roleplay-hub .lt-ball.hit{box-shadow:0 0 0 2px var(--rph-a4),0 0 14px rgba(var(--rph-a4-rgb),.8),inset 0 -3px 6px rgba(15,23,42,.25);}
#pc-page-roleplay-hub .lt-grid-row{display:flex;align-items:center;gap:5px;padding:7px 10px;margin-top:5px;border-radius:12px;background:rgba(255,255,255,.05);}
#pc-page-roleplay-hub .lt-grid-row em{margin-left:auto;font-style:normal;font-size:.74rem;font-weight:800;color:rgba(255,255,255,.45);}
#pc-page-roleplay-hub .lt-grid-row.win{background:rgba(var(--rph-a3-rgb),.16);box-shadow:inset 0 0 0 1px rgba(var(--rph-a4-rgb),.45);}
#pc-page-roleplay-hub .lt-grid-row.win em{color:#fff;}
#pc-page-roleplay-hub .lt-last{display:block;width:100%;padding:12px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;text-align:left;cursor:pointer;}
#pc-page-roleplay-hub .lt-last:hover{background:rgba(255,255,255,.09);}
#pc-page-roleplay-hub .lt-last-top{display:flex;justify-content:space-between;align-items:baseline;}
#pc-page-roleplay-hub .lt-last-top b{font-size:.8rem;}
#pc-page-roleplay-hub .lt-last-top small{font-size:.64rem;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .lt-last-balls{display:flex;gap:4px;margin:10px 0;}
#pc-page-roleplay-hub .lt-last-me{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;}
#pc-page-roleplay-hub .lt-last-me i{font-style:normal;color:rgba(255,255,255,.65);}
#pc-page-roleplay-hub .lt-last-me i.win{color:#fff;font-weight:800;}
#pc-page-roleplay-hub .lt-last-me em{font-style:normal;font-weight:800;color:var(--rph-a4);}
#pc-page-roleplay-hub .lt-foot{margin-top:16px;font-size:.62rem;line-height:1.5;color:rgba(255,255,255,.4);text-align:center;}
/* Ticket à gratter */
#pc-page-roleplay-hub .lt-scr-root{padding-top:14px;}
#pc-page-roleplay-hub .lt-ticket{position:relative;border-radius:18px;padding:14px 14px 10px;color:#1e3a8a;background:linear-gradient(180deg,#f8fbff,#e6efff);box-shadow:0 18px 40px -16px rgba(0,0,0,.65);
  -webkit-mask:radial-gradient(circle 8px at 0 50%,transparent 97%,#000) left/51% 100% no-repeat,radial-gradient(circle 8px at 100% 50%,transparent 97%,#000) right/51% 100% no-repeat;
  mask:radial-gradient(circle 8px at 0 50%,transparent 97%,#000) left/51% 100% no-repeat,radial-gradient(circle 8px at 100% 50%,transparent 97%,#000) right/51% 100% no-repeat;}
#pc-page-roleplay-hub .lt-ticket.won{animation:ltWin 1.2s ease-in-out 2;}
@keyframes ltWin{0%,100%{box-shadow:0 18px 40px -16px rgba(0,0,0,.65)}50%{box-shadow:0 0 0 4px var(--rph-a4),0 0 42px rgba(var(--rph-a4-rgb),.85)}}
#pc-page-roleplay-hub .lt-tk-head{text-align:center;padding:4px 0 8px;margin:-14px -14px 0;border-radius:18px 18px 0 0;background:linear-gradient(135deg,var(--rph-a3),var(--rph-a1));color:#fff;}
#pc-page-roleplay-hub .lt-tk-head b{display:block;font-size:1.15rem;font-weight:900;font-style:italic;letter-spacing:-.01em;padding-top:8px;}
#pc-page-roleplay-hub .lt-tk-head small{display:block;font-size:.6rem;font-weight:700;opacity:.9;}
#pc-page-roleplay-hub .lt-tk-rule{margin-top:10px;text-align:center;font-size:.66rem;font-weight:800;color:#1e40af;}
#pc-page-roleplay-hub .lt-tk-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 10px;margin-top:6px;font-size:.62rem;font-weight:800;color:#1e3a8a;}
#pc-page-roleplay-hub .lt-tk-legend span{display:inline-flex;align-items:center;gap:4px;}
#pc-page-roleplay-hub .lt-tk-grid .lt-sym{filter:drop-shadow(0 3px 5px rgba(15,23,42,.28));}
#pc-page-roleplay-hub .lt-tk-zone{position:relative;margin-top:10px;border-radius:14px;overflow:hidden;background:#fff;border:2px dashed rgba(37,99,235,.35);}
#pc-page-roleplay-hub .lt-tk-grid{display:grid;grid-template-columns:repeat(3,1fr);}
#pc-page-roleplay-hub .lt-tk-grid span{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border:1px solid rgba(37,99,235,.1);transition:background .3s;}
#pc-page-roleplay-hub .lt-tk-grid span.hit{background:radial-gradient(circle,rgba(96,165,250,.5),rgba(96,165,250,.06) 70%);animation:ltHit .6s ease-out 3;}
@keyframes ltHit{50%{transform:scale(1.16)}}
#pc-page-roleplay-hub #lt-canvas{position:absolute;inset:0;cursor:crosshair;touch-action:none;transition:opacity .4s;}
#pc-page-roleplay-hub #lt-canvas.gone{opacity:0;pointer-events:none;}
#pc-page-roleplay-hub .lt-tk-foot{display:flex;justify-content:space-between;margin-top:9px;font-size:.6rem;font-weight:800;color:#1e40af;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .lt-hint{margin-top:12px;text-align:center;font-size:.72rem;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .lt-scr-root > .lt-ghost{display:block;width:100%;margin-top:10px;}
#pc-page-roleplay-hub .lt-result{margin-top:14px;padding:14px;border-radius:16px;text-align:center;animation:rphFriskIn .35s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .lt-result b{display:block;font-size:1.25rem;font-weight:900;}
#pc-page-roleplay-hub .lt-result small{display:block;font-size:.7rem;margin-top:3px;opacity:.85;}
#pc-page-roleplay-hub .lt-result.win{background:linear-gradient(135deg,rgba(var(--rph-a3-rgb),.35),rgba(var(--rph-a1-rgb),.25));border:1px solid rgba(var(--rph-a4-rgb),.6);color:#fff;box-shadow:0 0 30px -8px rgba(var(--rph-a4-rgb),.6);}
#pc-page-roleplay-hub .lt-result.lose{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);}
/* Grille */
#pc-page-roleplay-hub .lt-pickhead{text-align:center;padding:12px 0 2px;}
#pc-page-roleplay-hub .lt-pickhead b{display:block;font-size:.95rem;}
#pc-page-roleplay-hub .lt-pickhead small{display:block;font-size:.66rem;color:rgba(255,255,255,.6);margin-top:2px;}
#pc-page-roleplay-hub .lt-nums{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;}
#pc-page-roleplay-hub .lt-num{aspect-ratio:1/1;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;font-weight:800;font-size:.84rem;cursor:pointer;transition:transform .15s,background .15s,box-shadow .15s;}
#pc-page-roleplay-hub .lt-num:hover{background:rgba(255,255,255,.1);}
#pc-page-roleplay-hub .lt-num.on{border-color:transparent;color:var(--rph-b1);background:radial-gradient(circle at 34% 28%,#fff,#dbeafe 45%,var(--rph-a5));box-shadow:0 4px 14px rgba(var(--rph-a3-rgb),.5);transform:scale(1.06);}
#pc-page-roleplay-hub .lt-num.palm.on{color:#fff;background:radial-gradient(circle at 34% 28%,var(--rph-a5),var(--rph-a3) 45%,var(--rph-a1));box-shadow:0 4px 14px rgba(var(--rph-a3-rgb),.6);}
#pc-page-roleplay-hub .lt-num:focus-visible,#pc-page-roleplay-hub .lt-pay button:focus-visible,#pc-page-roleplay-hub .lt-buy:focus-visible{outline:2px solid var(--rph-a4);outline-offset:2px;}
#pc-page-roleplay-hub .lt-pickacts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0;}
#pc-page-roleplay-hub .lt-prizes{display:grid;grid-template-columns:1fr 1fr;gap:5px;}
#pc-page-roleplay-hub .lt-prizes span{display:flex;justify-content:space-between;gap:6px;padding:7px 9px;border-radius:10px;background:rgba(255,255,255,.05);font-size:.64rem;}
#pc-page-roleplay-hub .lt-prizes b{font-weight:700;color:rgba(255,255,255,.72);}
#pc-page-roleplay-hub .lt-prizes em{font-style:normal;font-weight:800;color:var(--rph-a5);}
/* Tirage */
#pc-page-roleplay-hub .lt-machine{position:relative;margin-top:12px;padding:16px 12px 18px;border-radius:20px;overflow:hidden;text-align:center;background:radial-gradient(90% 70% at 50% 0%,rgba(var(--rph-a4-rgb),.24),transparent 70%),linear-gradient(180deg,var(--rph-b3),var(--rph-b1));border:1px solid rgba(var(--rph-a4-rgb),.25);}
#pc-page-roleplay-hub .lt-drum{position:relative;width:84px;height:84px;margin:0 auto 10px;border-radius:50%;background:radial-gradient(circle at 40% 30%,rgba(255,255,255,.28),rgba(255,255,255,.05) 60%);border:2px solid rgba(255,255,255,.3);box-shadow:inset 0 0 20px rgba(0,0,0,.4);}
#pc-page-roleplay-hub .lt-drum i{position:absolute;width:15px;height:15px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff,#c7d6ee);left:34px;top:34px;}
#pc-page-roleplay-hub .lt-machine.live .lt-drum i{animation:ltSpin 1.1s linear infinite;}
#pc-page-roleplay-hub .lt-drum i:nth-child(2){animation-delay:-.15s !important;background:radial-gradient(circle at 34% 28%,var(--rph-a5),var(--rph-a2));}
#pc-page-roleplay-hub .lt-drum i:nth-child(3){animation-delay:-.3s !important;}
#pc-page-roleplay-hub .lt-drum i:nth-child(4){animation-delay:-.45s !important;background:radial-gradient(circle at 34% 28%,#fff,var(--rph-a4));}
#pc-page-roleplay-hub .lt-drum i:nth-child(5){animation-delay:-.6s !important;}
#pc-page-roleplay-hub .lt-drum i:nth-child(6){animation-delay:-.75s !important;background:radial-gradient(circle at 34% 28%,#dbeafe,var(--rph-a3));}
#pc-page-roleplay-hub .lt-drum i:nth-child(7){animation-delay:-.9s !important;}
#pc-page-roleplay-hub .lt-drum i:nth-child(odd){transform:translate(-14px,10px);}
@keyframes ltSpin{0%{transform:rotate(0deg) translateX(24px) rotate(0deg)}100%{transform:rotate(360deg) translateX(24px) rotate(-360deg)}}
#pc-page-roleplay-hub .lt-mach-title b{display:block;font-size:.92rem;}
#pc-page-roleplay-hub .lt-mach-title small{display:block;font-size:.64rem;color:rgba(255,255,255,.6);margin-top:1px;}
#pc-page-roleplay-hub .lt-track{display:flex;justify-content:center;gap:6px;margin-top:14px;min-height:40px;}
#pc-page-roleplay-hub .lt-track .lt-ball{width:38px;height:38px;font-size:.92rem;}
#pc-page-roleplay-hub .lt-ball.drop{opacity:0;animation:ltDrop .75s cubic-bezier(.3,1.4,.5,1) both;}
@keyframes ltDrop{0%{opacity:0;transform:translateY(-70px) scale(.5) rotate(-180deg)}60%{opacity:1}100%{opacity:1;transform:none}}
#pc-page-roleplay-hub .lt-after.wait{opacity:0;animation:ltFade .5s ease-out both;}
@keyframes ltFade{to{opacity:1}}
#pc-page-roleplay-hub .lt-jres{margin-top:12px;padding:12px;border-radius:14px;text-align:center;background:rgba(255,255,255,.05);}
#pc-page-roleplay-hub .lt-jres b{display:block;font-size:.84rem;}
#pc-page-roleplay-hub .lt-jres small{display:block;font-size:.68rem;color:rgba(255,255,255,.6);margin-top:3px;}
#pc-page-roleplay-hub .lt-jres.won{background:linear-gradient(135deg,rgba(var(--rph-a3-rgb),.35),rgba(var(--rph-a1-rgb),.25));}
#pc-page-roleplay-hub .lt-total{margin-top:8px;padding:10px 12px;border-radius:12px;font-size:.76rem;font-weight:800;text-align:center;background:rgba(255,255,255,.05);color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .lt-total.win{background:rgba(var(--rph-a3-rgb),.2);color:#fff;}
#pc-page-roleplay-hub .lt-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:9;}
#pc-page-roleplay-hub .lt-confetti i{position:absolute;top:-12px;width:7px;height:12px;border-radius:2px;animation:ltFall linear forwards;}
@keyframes ltFall{to{top:105%;transform:translateX(30px) rotate(540deg)}}
@media (prefers-reduced-motion:reduce){#pc-page-roleplay-hub .lt-ball.drop,#pc-page-roleplay-hub .lt-after.wait{animation:none;opacity:1;}#pc-page-roleplay-hub .lt-machine.live .lt-drum i,#pc-page-roleplay-hub .lt-ticket.won,#pc-page-roleplay-hub .lt-tk-grid span.hit{animation:none;}#pc-page-roleplay-hub .lt-confetti{display:none;}}
#pc-page-roleplay-hub .wx-d{display:grid;grid-template-columns:40px 30px 30px 1fr 30px;align-items:center;gap:8px;padding:6px 0;border-top:1px solid rgba(255,255,255,.1);font-size:.84rem;font-weight:600;}
#pc-page-roleplay-hub .wx-d:first-of-type{border-top:none;}
#pc-page-roleplay-hub .wx-d.al b{color:#fecaca;}
#pc-page-roleplay-hub .wx-d .lo{color:rgba(255,255,255,.55);text-align:right;}
#pc-page-roleplay-hub .wx-d .hi{text-align:right;}
#pc-page-roleplay-hub .wx-d .bar{position:relative;height:5px;border-radius:5px;background:rgba(0,0,0,.25);}
#pc-page-roleplay-hub .wx-d .bar i{position:absolute;top:0;bottom:0;border-radius:5px;background:linear-gradient(90deg,#86efac,#fde047,#fb923c);}
#pc-page-roleplay-hub .wx-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
#pc-page-roleplay-hub .wx-grid .wx-card{margin-top:10px;}
#pc-page-roleplay-hub .wx-mini .wx-cap{border-bottom:none;padding-bottom:2px;}
#pc-page-roleplay-hub .wx-mini b{display:block;font-size:1.5rem;font-weight:500;}
#pc-page-roleplay-hub .wx-mini small{display:block;font-size:.66rem;color:rgba(255,255,255,.75);line-height:1.4;margin-top:6px;}
#pc-page-roleplay-hub .wx-al{margin-top:4px;padding:12px 13px;border-radius:16px;color:#fff;border:1px solid rgba(255,255,255,.2);}
#pc-page-roleplay-hub .wx-al.lvl-vigilance{background:linear-gradient(160deg,rgba(202,138,4,.88),rgba(161,98,7,.88));}
#pc-page-roleplay-hub .wx-al.lvl-alerte{background:linear-gradient(160deg,rgba(234,88,12,.9),rgba(194,65,12,.9));}
#pc-page-roleplay-hub .wx-al.lvl-urgence{background:linear-gradient(160deg,rgba(220,38,38,.92),rgba(153,27,27,.92));}
#pc-page-roleplay-hub .wx-al-top{display:flex;align-items:center;gap:9px;}
#pc-page-roleplay-hub .wx-al-top b{display:block;font-size:.8rem;font-weight:800;}
#pc-page-roleplay-hub .wx-al-top small{display:block;font-size:.64rem;opacity:.85;}
#pc-page-roleplay-hub .wx-al-title{font-size:.98rem;font-weight:800;margin-top:9px;line-height:1.3;}
#pc-page-roleplay-hub .wx-al-wind{font-size:.76rem;font-weight:700;margin-top:3px;}
#pc-page-roleplay-hub .wx-al-line{font-size:.74rem;margin-top:7px;line-height:1.45;}
#pc-page-roleplay-hub .wx-al-line b{font-weight:800;margin-right:4px;}
#pc-page-roleplay-hub .wx-al-msg{font-size:.76rem;line-height:1.5;margin-top:7px;white-space:pre-wrap;}
#pc-page-roleplay-hub .wx-al-until{font-size:.66rem;font-weight:700;opacity:.85;margin-top:9px;}
#pc-page-roleplay-hub .wx-mng{display:flex;align-items:center;gap:11px;width:100%;margin-top:14px;padding:12px 14px;border-radius:14px;border:1px solid rgba(248,113,113,.45);background:rgba(127,29,29,.45);color:#fff;font-family:inherit;text-align:left;cursor:pointer;transition:background .18s;}
#pc-page-roleplay-hub .wx-mng:hover{background:rgba(153,27,27,.6);}
#pc-page-roleplay-hub .wx-mng b{display:block;font-size:.82rem;}
#pc-page-roleplay-hub .wx-mng small{display:block;font-size:.66rem;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .wx-mng .wx-siren{color:#fca5a5;flex-shrink:0;}
#pc-page-roleplay-hub .wx-types{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;}
#pc-page-roleplay-hub .wx-type{display:flex;flex-direction:column;align-items:center;gap:4px;padding:11px 6px 10px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:#fff;font-family:inherit;cursor:pointer;text-align:center;transition:background .18s,border-color .18s,transform .18s;}
#pc-page-roleplay-hub .wx-type:hover{background:rgba(255,255,255,.1);}
#pc-page-roleplay-hub .wx-type b{font-size:.74rem;font-weight:800;}
#pc-page-roleplay-hub .wx-type small{font-size:.58rem;color:rgba(255,255,255,.55);line-height:1.3;}
#pc-page-roleplay-hub .wx-type.on{border-color:#f87171;background:rgba(220,38,38,.22);box-shadow:0 0 0 2px rgba(248,113,113,.25);}
#pc-page-roleplay-hub .wx-pills{display:flex;flex-wrap:wrap;gap:6px;}
#pc-page-roleplay-hub .wx-pill{padding:8px 13px;border-radius:99px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;font-family:inherit;font-weight:700;font-size:.74rem;cursor:pointer;transition:background .18s,border-color .18s;}
#pc-page-roleplay-hub .wx-pill:hover{background:rgba(255,255,255,.11);}
#pc-page-roleplay-hub .wx-pill.on{background:#dc2626;border-color:#dc2626;}
#pc-page-roleplay-hub .wx-type:focus-visible,#pc-page-roleplay-hub .wx-pill:focus-visible,#pc-page-roleplay-hub .wx-mng:focus-visible{outline:2px solid #fff;outline-offset:2px;}
#pc-page-roleplay-hub .wx-btn{padding:11px 14px;border-radius:13px;border:none;color:#fff;font-family:inherit;font-weight:800;font-size:.8rem;cursor:pointer;}
#pc-page-roleplay-hub .wx-btn.ghost{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);}
#pc-page-roleplay-hub .wx-btn.red{background:#dc2626;}
#pc-page-roleplay-hub .wx-btn[disabled]{opacity:.5;cursor:default;}
#pc-page-roleplay-hub .wx-confirm{margin-top:8px;padding:12px 13px;border-radius:13px;background:rgba(220,38,38,.12);border:1px solid rgba(248,113,113,.35);}
#pc-page-roleplay-hub .wx-confirm b{display:block;font-size:.8rem;}
#pc-page-roleplay-hub .wx-confirm span{display:block;font-size:.7rem;color:rgba(255,255,255,.65);margin-top:3px;line-height:1.45;}
#pc-page-roleplay-hub .wx-row{display:flex;gap:7px;margin-top:10px;}
#pc-page-roleplay-hub .wx-row .wx-btn{flex:1;}
#pc-page-roleplay-hub .wx-hist{padding:9px 0;border-top:1px solid rgba(255,255,255,.08);}
#pc-page-roleplay-hub .wx-hist b{display:block;font-size:.78rem;}
#pc-page-roleplay-hub .wx-hist small{display:block;font-size:.66rem;color:rgba(255,255,255,.5);margin-top:1px;}

/* Alerte plein écran façon FR-Alert, sur tout le panel */
.wx-ov{position:fixed;inset:0;z-index:100095;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(20,2,4,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-family:'Montserrat',system-ui,sans-serif;}
.wx-ov.open{display:flex;}
.wx-ov.lvl-urgence.ringing{animation:wxFlash 1.1s ease-in-out infinite;}
@keyframes wxFlash{0%,100%{background:rgba(20,2,4,.78);box-shadow:inset 0 0 0 0 rgba(239,68,68,0)}50%{background:rgba(90,6,10,.82);box-shadow:inset 0 0 120px 30px rgba(239,68,68,.55)}}
.wx-ov-card{width:min(460px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:24px;padding:20px 22px 16px;color:#fff;box-shadow:0 30px 90px rgba(0,0,0,.65);border:1px solid rgba(255,255,255,.22);animation:wxIn .35s cubic-bezier(.22,1,.36,1) both;}
.wx-ov.ringing .wx-ov-card{animation:wxIn .35s cubic-bezier(.22,1,.36,1) both,wxShake .5s .35s ease-in-out 3;}
.wx-ov-card.lvl-vigilance{background:linear-gradient(165deg,#a16207,#713f12);}
.wx-ov-card.lvl-alerte{background:linear-gradient(165deg,#c2410c,#7c2d12);}
.wx-ov-card.lvl-urgence{background:linear-gradient(165deg,#dc2626,#7f1d1d);}
@keyframes wxIn{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
@keyframes wxShake{0%,100%{transform:none}20%{transform:translateX(-6px) rotate(-.6deg)}40%{transform:translateX(6px) rotate(.6deg)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}
@keyframes wxBlink{to{opacity:.35}}
.wx-ov-brand{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.wx-ov-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 11px 5px 8px;border-radius:99px;background:rgba(0,0,0,.28);font-size:.76rem;font-weight:800;letter-spacing:.01em;}
.wx-ov-chip .wx-siren{width:18px;height:18px;}
.wx-ov.ringing .wx-ov-chip .wx-siren{animation:wxBlink .55s steps(2,start) infinite;}
.wx-ov-time{font-size:.74rem;font-weight:700;opacity:.8;font-variant-numeric:tabular-nums;}
.wx-ov-lvl{margin-top:16px;font-size:1.65rem;font-weight:900;line-height:1.1;letter-spacing:-.01em;}
.wx-ov-src{margin-top:4px;font-size:.74rem;font-weight:600;opacity:.85;}
.wx-ov-card h3{margin:14px 0 0;font-size:1.12rem;font-weight:800;line-height:1.3;}
.wx-ov-wind{margin-top:4px;font-size:.86rem;font-weight:700;}
.wx-ov-zones{margin:12px 0 0;font-size:.84rem;line-height:1.5;}
.wx-ov-zones b{display:block;font-size:.72rem;font-weight:800;opacity:.85;margin-bottom:2px;}
.wx-ov-msg{margin:12px 0 0;padding:12px 14px;border-radius:13px;background:rgba(0,0,0,.22);font-size:.88rem;line-height:1.55;white-space:pre-wrap;}
.wx-ov-until{margin-top:12px;font-size:.72rem;font-weight:700;opacity:.85;}
.wx-ov-card #wx-ov-ok{width:100%;margin-top:16px;padding:15px;border-radius:15px;border:none;background:#fff;color:#7f1d1d;font:800 .95rem 'Montserrat',system-ui,sans-serif;cursor:pointer;transition:transform .16s;}
.wx-ov-card #wx-ov-ok:hover{transform:translateY(-2px);}
.wx-ov-sub{display:block;width:100%;margin-top:8px;padding:10px;border-radius:12px;border:1px solid rgba(255,255,255,.28);background:rgba(0,0,0,.18);color:#fff;font:700 .76rem 'Montserrat',system-ui,sans-serif;cursor:pointer;}
.wx-ov-sub:hover{background:rgba(0,0,0,.3);}
.wx-ov-sub[disabled]{opacity:.75;cursor:default;}
.wx-ov:not(.ringing) #wx-ov-mute{display:none;}
.wx-ov-card button:focus-visible{outline:3px solid rgba(255,255,255,.7);outline-offset:3px;}
.rph-notif-item.wx-pin{border:1px solid rgba(248,113,113,.55);background:linear-gradient(160deg,rgba(185,28,28,.55),rgba(127,29,29,.45));}
.rph-notif-item.wx-pin.lvl-alerte{border-color:rgba(251,146,60,.55);background:linear-gradient(160deg,rgba(194,65,12,.55),rgba(124,45,18,.45));}
.rph-notif-item.wx-pin.lvl-vigilance{border-color:rgba(250,204,21,.5);background:linear-gradient(160deg,rgba(161,98,7,.55),rgba(113,63,18,.45));}
.rph-notif-item.wx-pin .rph-notif-ic{color:#fff;display:inline-flex;}
.rph-notif-item.wx-pin .rph-notif-ic svg{width:18px;height:18px;}
.wx-pin-title{font-size:.9rem;font-weight:800;color:#fff;margin:6px 0 2px;}
.wx-pin-until{font-size:.68rem;font-weight:700;color:rgba(255,255,255,.75);margin-top:6px;}
@media (prefers-reduced-motion:reduce){.wx-ov-card,.wx-ov.ringing .wx-ov-card{animation:none;}.wx-ov.lvl-urgence.ringing{animation:none;}.wx-ov.ringing .wx-ov-chip .wx-siren{animation:none;}}
#pc-page-roleplay-hub .rph-ok{color:#4ade80;font-size:.76rem;font-weight:700;margin-top:9px;}
#pc-page-roleplay-hub .rph-ko{color:#f87171;font-size:.76rem;font-weight:700;margin-top:9px;}

#pc-page-roleplay-hub .rph-mk-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin:18px 0 16px;}
#pc-page-roleplay-hub .rph-mk-state{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font-size:.76rem;font-weight:800;background:rgba(74,222,128,.14);color:#4ade80;border:1px solid rgba(74,222,128,.3);}
#pc-page-roleplay-hub .rph-mk-state.shut{background:rgba(248,113,113,.14);color:#f87171;border-color:rgba(248,113,113,.3);}
#pc-page-roleplay-hub .rph-mk-state i{width:7px;height:7px;border-radius:50%;background:currentColor;display:block;}
#pc-page-roleplay-hub .rph-mk-state.calm{background:rgba(251,191,36,.12);color:#fbbf24;border-color:rgba(251,191,36,.3);}
#pc-page-roleplay-hub .rph-mk-bidask{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 14px;}
#pc-page-roleplay-hub .rph-mk-bidask span{background:rgba(148,163,184,.08);border:1px solid rgba(148,163,184,.14);border-radius:11px;padding:8px 11px;min-width:0;}
#pc-page-roleplay-hub .rph-mk-bidask i{display:block;font-style:normal;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(148,163,184,.7);font-weight:800;}
#pc-page-roleplay-hub .rph-mk-bidask b{display:block;color:#fff;font-size:.86rem;font-variant-numeric:tabular-nums;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-mk-bidask.sm{gap:6px;margin:0 0 10px;}
#pc-page-roleplay-hub .rph-mk-bidask.sm span{padding:6px 8px;border-radius:10px;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.08);}
#pc-page-roleplay-hub .rph-mk-bidask.sm i{font-size:.55rem;}
#pc-page-roleplay-hub .rph-mk-bidask.sm b{font-size:.74rem;}
#pc-page-roleplay-hub .rph-mk-est.sm{font-size:.68rem;margin-top:8px;line-height:1.55;}
#pc-page-roleplay-hub .rph-mk-est.sm:empty{display:none;}
#pc-page-roleplay-hub .rph-mk-impact{display:inline-block;margin-top:3px;color:#fbbf24;font-weight:700;}
#pc-page-roleplay-hub .rph-mk-impact.big{color:#fb923c;}
#pc-page-roleplay-hub .rph-mk-live{display:inline-flex;align-items:center;gap:3px;vertical-align:middle;margin-left:4px;padding:1px 6px;border-radius:6px;font-size:.6rem;font-weight:800;letter-spacing:.03em;color:#fca5a5;background:rgba(248,113,113,.14);}
#pc-page-roleplay-hub .rph-mk-feed{display:flex;flex-direction:column;gap:8px;}
#pc-page-roleplay-hub .rph-mk-news{display:flex;gap:11px;align-items:flex-start;padding:11px 13px;border-radius:13px;background:rgba(148,163,184,.06);border:1px solid rgba(148,163,184,.12);}
#pc-page-roleplay-hub .rph-mk-news.compact{padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.06);border:none;margin-bottom:7px;gap:9px;}
#pc-page-roleplay-hub .rph-mk-news-tag{flex-shrink:0;min-width:38px;height:24px;padding:0 6px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:900;color:#fff;}
#pc-page-roleplay-hub .rph-mk-news-txt{flex:1;min-width:0;}
#pc-page-roleplay-hub .rph-mk-news-txt b{display:block;color:#fff;font-size:.8rem;line-height:1.35;}
#pc-page-roleplay-hub .rph-mk-news.compact .rph-mk-news-txt b{font-size:.72rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
#pc-page-roleplay-hub .rph-mk-news-txt span{display:block;color:rgba(226,232,240,.7);font-size:.74rem;line-height:1.5;margin-top:3px;}
#pc-page-roleplay-hub .rph-mk-news-txt small{display:block;color:rgba(148,163,184,.65);font-size:.64rem;margin-top:4px;}
#pc-page-roleplay-hub .rph-mk-news-txt em{font-style:normal;color:#fca5a5;font-weight:700;}
#pc-page-roleplay-hub .rph-mkp-seat{display:inline-flex;align-items:center;gap:5px;margin-top:3px;font-size:.66rem;font-weight:700;color:#4ade80;}
#pc-page-roleplay-hub .rph-mkp-seat i{width:6px;height:6px;border-radius:50%;background:currentColor;}
#pc-page-roleplay-hub .rph-mkp-seat.calm{color:#fbbf24;}
#pc-page-roleplay-hub .rph-mkp-seat.shut{color:#f87171;}
#pc-page-roleplay-hub .rph-mk-tick{font-size:.74rem;color:rgba(148,163,184,.8);font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-mk-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px;}
#pc-page-roleplay-hub .rph-mk-sum > div{background:rgba(148,163,184,.07);border:1px solid rgba(148,163,184,.13);border-radius:14px;padding:13px 15px;}
#pc-page-roleplay-hub .rph-mk-sum span{display:block;font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:rgba(148,163,184,.7);margin-bottom:5px;}
#pc-page-roleplay-hub .rph-mk-sum b{font-size:1.12rem;color:#fff;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-mk-group{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(148,163,184,.62);margin:20px 0 9px;font-weight:800;}
#pc-page-roleplay-hub .rph-mk-row{display:flex;align-items:center;gap:14px;padding:13px 15px;margin-bottom:10px;border-radius:15px;background:rgba(148,163,184,.06);border:1px solid rgba(148,163,184,.12);cursor:pointer;transition:border-color .2s,background .2s;}
#pc-page-roleplay-hub .rph-mk-row:hover{background:rgba(148,163,184,.1);border-color:rgba(148,163,184,.24);}
#pc-page-roleplay-hub .rph-mk-row.on{border-color:rgba(var(--rph-a4-rgb),.55);background:rgba(var(--rph-a2-rgb),.12);margin-bottom:0;border-radius:15px 15px 0 0;}
#pc-page-roleplay-hub .rph-mk-tag{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.72rem;color:#fff;flex-shrink:0;letter-spacing:.02em;}
#pc-page-roleplay-hub .rph-mk-id{flex:1;min-width:0;}
#pc-page-roleplay-hub .rph-mk-id b{display:block;color:#fff;font-size:.88rem;}
#pc-page-roleplay-hub .rph-mk-id small{display:block;color:rgba(148,163,184,.7);font-size:.72rem;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-mk-spark{flex-shrink:0;opacity:.9;}
#pc-page-roleplay-hub .rph-mk-quote{text-align:right;flex-shrink:0;min-width:96px;}
#pc-page-roleplay-hub .rph-mk-quote b{display:block;color:#fff;font-size:.94rem;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-mk-var{display:block;font-size:.74rem;font-weight:800;font-variant-numeric:tabular-nums;margin-top:2px;}
#pc-page-roleplay-hub .rph-mk-var.up{color:#4ade80;}
#pc-page-roleplay-hub .rph-mk-var.down{color:#f87171;}
#pc-page-roleplay-hub .rph-mk-var.flat{color:rgba(148,163,184,.7);}
#pc-page-roleplay-hub .rph-mk-hold{display:inline-block;margin-top:4px;font-size:.66rem;font-weight:800;color:var(--rph-a5);background:rgba(var(--rph-a3-rgb),.16);border-radius:6px;padding:2px 7px;}
#pc-page-roleplay-hub .rph-mk-deal{margin:0 0 10px;padding:16px;border-radius:0 0 15px 15px;background:rgba(var(--rph-b3-rgb),.75);border:1px solid rgba(var(--rph-a4-rgb),.3);border-top:none;}
#pc-page-roleplay-hub .rph-mk-deal .rph-in{margin-top:0;}
#pc-page-roleplay-hub .rph-mk-quick{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px;}
#pc-page-roleplay-hub .rph-mk-quick button{background:rgba(148,163,184,.14);border:none;border-radius:9px;padding:6px 12px;color:#e2e8f0;font-family:inherit;font-size:.72rem;font-weight:700;cursor:pointer;}
#pc-page-roleplay-hub .rph-mk-quick button:hover{background:rgba(148,163,184,.26);}
#pc-page-roleplay-hub .rph-mk-est{margin-top:11px;font-size:.76rem;color:rgba(226,232,240,.8);line-height:1.65;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-mk-est b{color:#fff;}
#pc-page-roleplay-hub .rph-mk-acts{display:flex;gap:9px;margin-top:12px;}
#pc-page-roleplay-hub .rph-mk-acts button{flex:1;border:none;border-radius:12px;padding:12px;font-family:inherit;font-weight:800;font-size:.82rem;color:#fff;cursor:pointer;transition:filter .2s,transform .15s;}
#pc-page-roleplay-hub .rph-mk-acts button:active{transform:scale(.97);}
#pc-page-roleplay-hub .rph-mk-acts button:disabled{opacity:.4;cursor:not-allowed;}
#pc-page-roleplay-hub .rph-mk-buy{background:#16a34a;}
#pc-page-roleplay-hub .rph-mk-buy:hover:not(:disabled){filter:brightness(1.12);}
#pc-page-roleplay-hub .rph-mk-sellb{background:#dc2626;}
#pc-page-roleplay-hub .rph-mk-sellb:hover:not(:disabled){filter:brightness(1.12);}
#pc-page-roleplay-hub .rph-mk-ord{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(148,163,184,.1);font-size:.78rem;}
#pc-page-roleplay-hub .rph-mk-ord:last-child{border-bottom:none;}
#pc-page-roleplay-hub .rph-mk-ord small{display:block;color:rgba(148,163,184,.6);font-size:.68rem;margin-top:2px;}

#pc-page-roleplay-hub .rph-ch-wrap{margin:0 0 14px;}
#pc-page-roleplay-hub .rph-ch{display:block;width:100%;height:auto;touch-action:pan-y;overflow:visible;}
#pc-page-roleplay-hub .rph-ch-empty{display:flex;align-items:center;justify-content:center;text-align:center;padding:0 18px;font-size:.76rem;color:rgba(148,163,184,.6);background:rgba(148,163,184,.05);border-radius:12px;margin-bottom:12px;line-height:1.5;}
#pc-page-roleplay-hub .rph-ch-grid{stroke:rgba(148,163,184,.14);stroke-width:1;}
#pc-page-roleplay-hub .rph-ch-grid.v{stroke:rgba(148,163,184,.08);}
#pc-page-roleplay-hub .rph-ch-axis{fill:rgba(148,163,184,.62);font-size:9px;font-family:inherit;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-ch-body.up{fill:#22c55e;}
#pc-page-roleplay-hub .rph-ch-body.down{fill:#ef4444;}
#pc-page-roleplay-hub .rph-ch-wick{stroke-width:1;}
#pc-page-roleplay-hub .rph-ch-wick.up{stroke:#22c55e;}
#pc-page-roleplay-hub .rph-ch-wick.down{stroke:#ef4444;}
#pc-page-roleplay-hub .rph-ch-vol.up{fill:rgba(34,197,94,.4);}
#pc-page-roleplay-hub .rph-ch-vol.down{fill:rgba(239,68,68,.4);}
#pc-page-roleplay-hub .rph-ch-last{stroke-dasharray:3 3;stroke-width:1;opacity:.85;}
#pc-page-roleplay-hub .rph-ch-last.up{stroke:#22c55e;}
#pc-page-roleplay-hub .rph-ch-last.down{stroke:#ef4444;}
#pc-page-roleplay-hub .rph-ch-lastbg.up{fill:#16a34a;}
#pc-page-roleplay-hub .rph-ch-lastbg.down{fill:#dc2626;}
#pc-page-roleplay-hub .rph-ch-lastlbl{fill:#fff;font-size:9px;font-weight:800;font-family:inherit;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-ch-cross{stroke:rgba(226,232,240,.55);stroke-width:1;stroke-dasharray:2 3;}
#pc-page-roleplay-hub .rph-ch-dot{fill:#fff;stroke:rgba(var(--rph-b3-rgb),.8);stroke-width:1.4;}

#pc-page-roleplay-hub .rph-ch-read{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;font-size:.72rem;color:rgba(226,232,240,.85);font-variant-numeric:tabular-nums;margin:0 0 6px;min-height:17px;}
#pc-page-roleplay-hub .rph-ch-read i{font-style:normal;color:rgba(148,163,184,.6);margin-right:4px;font-size:.66rem;font-weight:800;letter-spacing:.05em;}
#pc-page-roleplay-hub .rph-ch-when{color:rgba(148,163,184,.7);font-weight:700;}
#pc-page-roleplay-hub .rph-ch-chg{font-weight:800;}
#pc-page-roleplay-hub .rph-ch-chg.up{color:#4ade80;}
#pc-page-roleplay-hub .rph-ch-chg.down{color:#f87171;}
#pc-page-roleplay-hub .rph-ch-chg.flat{color:rgba(148,163,184,.75);}

#pc-page-roleplay-hub .rph-ch-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;flex-wrap:wrap;}
#pc-page-roleplay-hub .rph-ch-ranges,#pc-page-roleplay-hub .rph-ch-modes{display:inline-flex;gap:3px;background:rgba(148,163,184,.1);border-radius:9px;padding:3px;}
#pc-page-roleplay-hub .rph-ch-bar button{border:none;background:transparent;color:rgba(226,232,240,.65);font-family:inherit;font-size:.7rem;font-weight:700;padding:5px 10px;border-radius:7px;cursor:pointer;line-height:1;transition:background .18s,color .18s;}
#pc-page-roleplay-hub .rph-ch-bar button:hover{color:#fff;}
#pc-page-roleplay-hub .rph-ch-bar button.on{background:rgba(var(--rph-a2-rgb),.85);color:#fff;}
#pc-page-roleplay-hub .rph-ch-modes button{display:flex;align-items:center;padding:5px 8px;}
/* ═══════════ Bourse (panel) — cartes, panneaux et lignes alignés sur Portefeuille / Banque ═══════════ */
#pc-page-roleplay-hub .rph-bx-status{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:22px;animation:rphFadeUp .45s .1s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-bx-seat{display:inline-flex;align-items:center;gap:9px;height:36px;padding:0 16px;border-radius:999px;font-size:.74rem;font-weight:800;letter-spacing:.02em;color:#86efac;background:rgba(34,197,94,.1);box-shadow:inset 0 0 0 1px rgba(74,222,128,.3);}
#pc-page-roleplay-hub .rph-bx-seat i{position:relative;width:8px;height:8px;border-radius:50%;background:currentColor;}
#pc-page-roleplay-hub .rph-bx-seat i::after{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid currentColor;opacity:0;animation:rphBxPing 1.8s ease-out infinite;}
#pc-page-roleplay-hub .rph-bx-seat.calm{color:#fcd34d;background:rgba(251,191,36,.1);box-shadow:inset 0 0 0 1px rgba(251,191,36,.3);}
#pc-page-roleplay-hub .rph-bx-seat.shut{color:#fca5a5;background:rgba(239,68,68,.1);box-shadow:inset 0 0 0 1px rgba(248,113,113,.3);}
#pc-page-roleplay-hub .rph-bx-seat.shut i::after,#pc-page-roleplay-hub .rph-bx-seat.calm i::after{animation:none;}
@keyframes rphBxPing{0%{transform:scale(.6);opacity:.7;}100%{transform:scale(1.8);opacity:0;}}
#pc-page-roleplay-hub .rph-bx-tick{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 15px;border-radius:999px;font-size:.74rem;font-weight:700;color:rgba(203,213,225,.85);font-variant-numeric:tabular-nums;background:rgba(var(--rph-b3-rgb),.8);box-shadow:inset 0 0 0 1px rgba(148,163,184,.16);}
#pc-page-roleplay-hub .rph-bx-tick svg{color:var(--rph-a4);flex:none;}
#pc-page-roleplay-hub .rph-bx-tickbar{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(148,163,184,.1);}
#pc-page-roleplay-hub .rph-bx-tickbar em{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--rph-a2),var(--rph-a4));transition:width 1s linear;}
#pc-page-roleplay-hub .rph-bx-banner{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:13px 16px;border-radius:14px;font-size:.82rem;line-height:1.5;color:#fde68a;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.25);}
#pc-page-roleplay-hub .rph-bx-banner svg{flex:none;margin-top:3px;}

#pc-page-roleplay-hub .rph-bx-cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:22px;}
#pc-page-roleplay-hub .rph-bx-cards .rph-card{padding:20px 22px;}
#pc-page-roleplay-hub .rph-bx-cards .rph-card .val{font-size:1.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-bx-cards .rph-bx-pnl.up .val{color:#4ade80;}
#pc-page-roleplay-hub .rph-bx-cards .rph-bx-pnl.down .val{color:#f87171;}
#pc-page-roleplay-hub .rph-bx-chip{position:absolute;top:18px;right:18px;z-index:1;padding:4px 10px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.02em;color:var(--rph-a5);background:rgba(var(--rph-a3-rgb),.16);box-shadow:inset 0 0 0 1px rgba(var(--rph-a4-rgb),.28);font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-bx-chip.up{color:#86efac;background:rgba(34,197,94,.12);box-shadow:inset 0 0 0 1px rgba(74,222,128,.3);}
#pc-page-roleplay-hub .rph-bx-chip.down{color:#fca5a5;background:rgba(239,68,68,.12);box-shadow:inset 0 0 0 1px rgba(248,113,113,.3);}
#pc-page-roleplay-hub .rph-bx-chip.flat{color:rgba(203,213,225,.8);background:rgba(148,163,184,.12);box-shadow:none;}

#pc-page-roleplay-hub .rph-bx-box{margin-top:22px;padding:20px 22px;border-radius:18px;background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.95),rgba(var(--rph-b2-rgb),.95));border:1px solid rgba(148,163,184,.14);min-width:0;animation:rphFadeUp .5s .15s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-bx-head{display:flex;justify-content:space-between;align-items:center;gap:12px 16px;flex-wrap:wrap;}
#pc-page-roleplay-hub .rph-bx-title{display:flex;align-items:center;gap:9px;font-size:1rem;font-weight:800;color:#fff;}
#pc-page-roleplay-hub .rph-bx-title svg{color:var(--rph-a4);flex:none;}
#pc-page-roleplay-hub .rph-bx-sub{margin-top:4px;font-size:.78rem;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .rph-bx-tabs{margin-top:0;}
#pc-page-roleplay-hub .rph-bx-tabs button i{background:rgba(var(--rph-a3-rgb),.5);}
#pc-page-roleplay-hub .rph-bx-cols{display:grid;grid-template-columns:minmax(0,1fr) 110px 150px 16px;gap:16px;padding:16px 16px 8px 74px;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.55);}
#pc-page-roleplay-hub .rph-bx-cols span:nth-child(3){text-align:right;}
#pc-page-roleplay-hub .rph-bx-list{display:flex;flex-direction:column;gap:8px;margin-top:12px;}
#pc-page-roleplay-hub .rph-bx-cols+.rph-bx-list{margin-top:0;}
#pc-page-roleplay-hub .rph-bx-sep{margin:10px 2px 0;font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.6);}
#pc-page-roleplay-hub .rph-bx-sep:first-child{margin-top:4px;}

#pc-page-roleplay-hub .rph-bx-item{border-radius:15px;background:rgba(255,255,255,.035);border:1px solid rgba(148,163,184,.12);transition:border-color .22s,background .22s,box-shadow .22s;}
#pc-page-roleplay-hub .rph-bx-item:hover{border-color:rgba(var(--rph-a3-rgb),.4);background:rgba(var(--rph-a3-rgb),.05);}
#pc-page-roleplay-hub .rph-bx-item.on{border-color:rgba(var(--rph-a4-rgb),.5);background:rgba(var(--rph-a2-rgb),.08);box-shadow:0 18px 40px rgba(var(--rph-b1-rgb),.55);}
#pc-page-roleplay-hub .rph-bx-row{display:grid;grid-template-columns:44px minmax(0,1fr) 110px 150px 16px;align-items:center;gap:16px;width:100%;padding:13px 16px;border:none;background:none;color:inherit;font-family:inherit;text-align:left;cursor:pointer;border-radius:15px;}
#pc-page-roleplay-hub .rph-bx-row:focus-visible{outline:2px solid var(--rph-a4);outline-offset:-2px;}
#pc-page-roleplay-hub .rph-bx-tag{--c:#2563eb;position:relative;overflow:hidden;width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.7rem;letter-spacing:.02em;color:#fff;background:var(--c);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 8px 18px rgba(0,0,0,.28);text-shadow:0 1px 2px rgba(0,0,0,.35);}
#pc-page-roleplay-hub .rph-bx-tag::after{content:'';position:absolute;inset:0;background:linear-gradient(160deg,rgba(255,255,255,.22),transparent 55%);}
#pc-page-roleplay-hub .rph-bx-id{display:flex;flex-direction:column;gap:2px;min-width:0;}
#pc-page-roleplay-hub .rph-bx-id b{color:#fff;font-size:.9rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-bx-id small{color:rgba(148,163,184,.75);font-size:.74rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-bx-hold{align-self:flex-start;margin-top:4px;padding:2px 8px;border-radius:7px;font-size:.66rem;font-weight:800;color:var(--rph-a5);background:rgba(var(--rph-a3-rgb),.16);font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-bx-spark{display:flex;justify-content:center;}
#pc-page-roleplay-hub .rph-bx-spark svg{max-width:100%;}
#pc-page-roleplay-hub .rph-bx-px{display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:0;}
#pc-page-roleplay-hub .rph-bx-px b{color:#fff;font-size:.95rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;}
#pc-page-roleplay-hub .rph-bx-var{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:999px;font-size:.68rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;}
#pc-page-roleplay-hub .rph-bx-var svg{width:11px;height:11px;}
#pc-page-roleplay-hub .rph-bx-var.up{color:#86efac;background:rgba(34,197,94,.13);}
#pc-page-roleplay-hub .rph-bx-var.down{color:#fca5a5;background:rgba(239,68,68,.13);}
#pc-page-roleplay-hub .rph-bx-var.flat{color:rgba(203,213,225,.8);background:rgba(148,163,184,.12);}
#pc-page-roleplay-hub .rph-bx-chev{display:flex;color:rgba(148,163,184,.6);transition:transform .3s cubic-bezier(.22,1,.36,1),color .2s;}
#pc-page-roleplay-hub .rph-bx-item.on .rph-bx-chev{transform:rotate(180deg);color:var(--rph-a4);}

#pc-page-roleplay-hub .rph-bx-deal{padding:4px 16px 16px;animation:rphFadeUp .35s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-bx-chart{padding:14px 14px 4px;border-radius:14px;background:rgba(var(--rph-b1-rgb),.55);border:1px solid rgba(148,163,184,.1);}
#pc-page-roleplay-hub .rph-bx-chart .rph-ch-ranges,#pc-page-roleplay-hub .rph-bx-chart .rph-ch-modes{background:rgba(var(--rph-b1-rgb),.7);border:1px solid rgba(148,163,184,.14);border-radius:10px;}
#pc-page-roleplay-hub .rph-bx-chart .rph-ch-bar button.on{background:rgba(var(--rph-a3-rgb),.28);box-shadow:inset 0 0 0 1px rgba(var(--rph-a4-rgb),.45);}
#pc-page-roleplay-hub .rph-bx-trade{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;margin-top:14px;}
#pc-page-roleplay-hub .rph-bx-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start;}
#pc-page-roleplay-hub .rph-bx-stat{padding:11px 13px;border-radius:12px;background:rgba(var(--rph-b1-rgb),.5);border:1px solid rgba(148,163,184,.12);min-width:0;}
#pc-page-roleplay-hub .rph-bx-stat i{display:block;font-style:normal;font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(148,163,184,.65);}
#pc-page-roleplay-hub .rph-bx-stat b{display:block;margin-top:4px;color:#fff;font-size:.88rem;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-bx-stat.wide{grid-column:1 / -1;}
#pc-page-roleplay-hub .rph-bx-stat.up b{color:#4ade80;}
#pc-page-roleplay-hub .rph-bx-stat.down b{color:#f87171;}
#pc-page-roleplay-hub .rph-bx-order{padding:14px 16px 16px;border-radius:14px;background:rgba(var(--rph-b1-rgb),.5);border:1px solid rgba(148,163,184,.12);min-width:0;}
#pc-page-roleplay-hub .rph-bx-lbl{display:block;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.7);}
#pc-page-roleplay-hub .rph-bx-order .rph-input{margin-top:8px;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-bx-quick{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px;}
#pc-page-roleplay-hub .rph-bx-quick button{padding:6px 12px;border-radius:9px;border:1px solid rgba(148,163,184,.18);background:rgba(var(--rph-b3-rgb),.7);color:rgba(226,232,240,.9);font-family:inherit;font-size:.72rem;font-weight:800;cursor:pointer;transition:border-color .18s,background .18s,color .18s;}
#pc-page-roleplay-hub .rph-bx-quick button:hover{border-color:rgba(var(--rph-a4-rgb),.5);color:#fff;}
#pc-page-roleplay-hub .rph-bx-quick button.all{color:var(--rph-a5);border-color:rgba(var(--rph-a4-rgb),.35);}
#pc-page-roleplay-hub .rph-bx-est{margin-top:12px;padding:10px 12px;border-radius:11px;background:rgba(148,163,184,.06);font-size:.76rem;}
#pc-page-roleplay-hub .rph-bx-acts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;}
#pc-page-roleplay-hub .rph-bx-acts button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:12px;border:none;border-radius:12px;font-family:inherit;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;cursor:pointer;transition:transform .2s,box-shadow .2s,filter .2s;}
#pc-page-roleplay-hub .rph-bx-buy{background:linear-gradient(135deg,#15803d,#22c55e);}
#pc-page-roleplay-hub .rph-bx-sell{background:linear-gradient(135deg,#b91c1c,#ef4444);}
#pc-page-roleplay-hub .rph-bx-buy:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 26px rgba(34,197,94,.3);}
#pc-page-roleplay-hub .rph-bx-sell:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 26px rgba(239,68,68,.3);}
#pc-page-roleplay-hub .rph-bx-acts button:active:not(:disabled){transform:scale(.97);}
#pc-page-roleplay-hub .rph-bx-acts button:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.4);}
#pc-page-roleplay-hub .rph-bx-terms{display:flex;gap:8px;align-items:flex-start;margin-top:12px;font-size:.72rem;line-height:1.5;color:rgba(148,163,184,.7);}
#pc-page-roleplay-hub .rph-bx-terms svg{flex:none;margin-top:2px;color:var(--rph-a4);}
#pc-page-roleplay-hub .rph-bx-warn{margin-top:10px;padding:10px 13px;border-radius:12px;font-size:.76rem;font-weight:700;color:#fca5a5;background:rgba(239,68,68,.1);border:1px solid rgba(248,113,113,.28);}
#pc-page-roleplay-hub .rph-bx-msg:empty{display:none;}
#pc-page-roleplay-hub .rph-bx-msg .rph-ok,#pc-page-roleplay-hub .rph-bx-msg .rph-ko{margin-top:10px;padding:10px 13px;border-radius:12px;font-size:.78rem;font-weight:700;}
#pc-page-roleplay-hub .rph-bx-msg .rph-ok{color:#6ee7b7;background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.28);}
#pc-page-roleplay-hub .rph-bx-msg .rph-ko{color:#fca5a5;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.28);}

#pc-page-roleplay-hub .rph-bx-empty{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:16px;padding:40px 20px;border-radius:14px;border:1px dashed rgba(148,163,184,.2);text-align:center;}
#pc-page-roleplay-hub .rph-bx-empty svg{width:34px;height:34px;padding:10px;box-sizing:content-box;border-radius:14px;color:var(--rph-a4);background:rgba(var(--rph-a3-rgb),.12);margin-bottom:4px;}
#pc-page-roleplay-hub .rph-bx-empty b{color:#fff;font-size:.9rem;}
#pc-page-roleplay-hub .rph-bx-empty small{max-width:380px;font-size:.78rem;line-height:1.5;color:rgba(148,163,184,.75);}

#pc-page-roleplay-hub .rph-bx-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;}
#pc-page-roleplay-hub .rph-bx-feed{margin-top:12px;}
#pc-page-roleplay-hub .rph-bx-feed .rph-mk-news{background:rgba(255,255,255,.035);border-radius:14px;}
#pc-page-roleplay-hub .rph-bx-ord{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(148,163,184,.12);}
#pc-page-roleplay-hub .rph-bx-ord-ic{flex:none;width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;}
#pc-page-roleplay-hub .rph-bx-ord.buy .rph-bx-ord-ic{color:#86efac;background:rgba(34,197,94,.13);}
#pc-page-roleplay-hub .rph-bx-ord.sell .rph-bx-ord-ic{color:#fca5a5;background:rgba(239,68,68,.13);}
#pc-page-roleplay-hub .rph-bx-ord-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
#pc-page-roleplay-hub .rph-bx-ord-txt b{color:#fff;font-size:.86rem;}
#pc-page-roleplay-hub .rph-bx-ord-txt small{font-size:.72rem;color:rgba(148,163,184,.7);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-bx-ord-amt{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:none;}
#pc-page-roleplay-hub .rph-bx-ord-amt b{font-size:.92rem;font-variant-numeric:tabular-nums;white-space:nowrap;}
#pc-page-roleplay-hub .rph-bx-ord.buy .rph-bx-ord-amt b{color:#f87171;}
#pc-page-roleplay-hub .rph-bx-ord.sell .rph-bx-ord-amt b{color:#4ade80;}
#pc-page-roleplay-hub .rph-bx-ord-amt em{font-style:normal;font-size:.6rem;font-weight:800;padding:2px 8px;border-radius:99px;color:rgba(203,213,225,.8);background:rgba(148,163,184,.12);}

@media(max-width:1100px){
  #pc-page-roleplay-hub .rph-bx-duo{grid-template-columns:minmax(0,1fr);gap:0;}
}
@media(max-width:820px){
  #pc-page-roleplay-hub .rph-bx-trade{grid-template-columns:minmax(0,1fr);}
}
@media(max-width:700px){
  #pc-page-roleplay-hub .rph-bx-cols{display:none;}
  #pc-page-roleplay-hub .rph-bx-cols+.rph-bx-list{margin-top:12px;}
  #pc-page-roleplay-hub .rph-bx-row{grid-template-columns:40px minmax(0,1fr) auto;gap:12px;padding:12px;}
  #pc-page-roleplay-hub .rph-bx-tag{width:40px;height:40px;border-radius:12px;}
  #pc-page-roleplay-hub .rph-bx-spark,#pc-page-roleplay-hub .rph-bx-chev{display:none;}
  #pc-page-roleplay-hub .rph-bx-box{padding:16px;}
  #pc-page-roleplay-hub .rph-bx-deal{padding:2px 10px 12px;}
  #pc-page-roleplay-hub .rph-bx-chart{padding:10px 8px 2px;}
  #pc-page-roleplay-hub .rph-bx-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  #pc-page-roleplay-hub .rph-bx-cards .rph-card{padding:16px;}
  #pc-page-roleplay-hub .rph-bx-cards .rph-card .val{font-size:1.15rem;}
  #pc-page-roleplay-hub .rph-bx-chip{top:13px;right:12px;padding:3px 8px;font-size:.6rem;}
  #pc-page-roleplay-hub .rph-bx-head>div:first-child{width:100%;}
  #pc-page-roleplay-hub .rph-bx-tabs{display:flex;width:100%;}
  #pc-page-roleplay-hub .rph-bx-tabs button{flex:1;justify-content:center;white-space:nowrap;padding:8px 6px;font-size:.72rem;}
  #pc-page-roleplay-hub .rph-bx-tick{flex:1;justify-content:center;}
}
@media(prefers-reduced-motion:reduce){#pc-page-roleplay-hub .rph-bx-seat i::after{animation:none;}}

#pc-page-roleplay-hub .rph-layer-app .rph-ch-read{font-size:.66rem;gap:3px 9px;}
#pc-page-roleplay-hub .rph-layer-app .rph-ch-bar button{font-size:.64rem;padding:4px 8px;}
#pc-page-roleplay-hub .rph-layer-app .rph-ch-wrap{margin-bottom:2px;}

#pc-page-roleplay-hub .rph-mkp-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.06);margin-bottom:8px;cursor:pointer;width:100%;border:none;font-family:inherit;text-align:left;color:#fff;}
#pc-page-roleplay-hub .rph-mkp-row:active{background:rgba(255,255,255,.12);}
#pc-page-roleplay-hub .rph-mkp-tag{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.6rem;flex-shrink:0;}
#pc-page-roleplay-hub .rph-mkp-id{flex:1;min-width:0;}
#pc-page-roleplay-hub .rph-mkp-id b{display:block;font-size:.8rem;}
#pc-page-roleplay-hub .rph-mkp-id small{display:block;font-size:.66rem;color:rgba(255,255,255,.45);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-mkp-q{text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-mkp-q b{display:block;font-size:.8rem;}
#pc-page-roleplay-hub .rph-mkp-q span{display:block;font-size:.68rem;font-weight:800;}

#pc-page-roleplay-hub .rph-card-mini .rph-bcard{box-sizing:border-box;max-width:100%;border-radius:15px;padding:14px 15px;box-shadow:0 12px 28px rgba(0,0,0,.5);}
#pc-page-roleplay-hub .rph-card-mini .rph-bcard-bank{font-size:.82rem;}
#pc-page-roleplay-hub .rph-card-mini .rph-bcard-net{font-size:.55rem;letter-spacing:.16em;}
#pc-page-roleplay-hub .rph-card-mini .rph-bcard-chip{width:34px;height:25px;border-radius:5px;}
#pc-page-roleplay-hub .rph-card-mini .rph-bcard-num{font-size:.95rem;letter-spacing:.08em;}
#pc-page-roleplay-hub .rph-card-mini .rph-bcard-bot .k{font-size:.5rem;}
#pc-page-roleplay-hub .rph-card-mini .rph-bcard-bot .v{font-size:.72rem;}

#pc-page-roleplay-hub .rph-line{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;transition:background .2s;border-radius:12px;}
#pc-page-roleplay-hub .rph-line:hover{background:rgba(255,255,255,.06);}
#pc-page-roleplay-hub .rph-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.86rem;color:#fff;background:linear-gradient(150deg,#475569,var(--rph-b3));}
#pc-page-roleplay-hub .rph-line-txt{min-width:0;flex:1;}
#pc-page-roleplay-hub .rph-line-txt b{display:block;font-size:.85rem;font-weight:700;}
#pc-page-roleplay-hub .rph-line-txt span{display:block;font-size:.73rem;color:rgba(255,255,255,.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px;}
#pc-page-roleplay-hub .rph-pill{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--rph-a2);color:#fff;font-size:.64rem;font-weight:800;display:flex;align-items:center;justify-content:center;}

#pc-page-roleplay-hub .rph-chat{display:flex;flex-direction:column;gap:7px;padding:6px 0 4px;}
#pc-page-roleplay-hub .rph-bub{max-width:78%;padding:9px 13px;border-radius:18px;font-size:.82rem;line-height:1.4;animation:rphNotifIn .35s cubic-bezier(.22,1,.36,1) both;word-break:break-word;}
#pc-page-roleplay-hub .rph-bub.me{align-self:flex-end;background:linear-gradient(160deg,var(--rph-a3),var(--rph-a2));border-bottom-right-radius:6px;}
#pc-page-roleplay-hub .rph-bub.them{align-self:flex-start;background:rgba(255,255,255,.13);border-bottom-left-radius:6px;}
#pc-page-roleplay-hub .rph-bub time{display:block;font-size:.6rem;opacity:.55;margin-top:3px;}
#pc-page-roleplay-hub .rph-seen{align-self:flex-end;font-size:.6rem;font-weight:800;letter-spacing:.03em;color:rgba(255,255,255,.38);margin:-3px 6px 0;}
#pc-page-roleplay-hub .rph-seen.on{color:#4ade80;}
#pc-page-roleplay-hub .rph-composer{display:flex;gap:8px;padding:10px 18px 16px;flex-shrink:0;align-items:flex-end;}
#pc-page-roleplay-hub .rph-composer .rph-in{margin-top:0;border-radius:20px;}
#pc-page-roleplay-hub .rph-send{width:38px;height:38px;flex-shrink:0;border-radius:50%;border:none;background:var(--rph-a2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s cubic-bezier(.34,1.4,.5,1);}
#pc-page-roleplay-hub .rph-send:active{transform:scale(.88);}

#pc-page-roleplay-hub .rph-homebar{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);width:132px;height:5px;border-radius:3px;background:rgba(255,255,255,.85);z-index:35;cursor:pointer;transition:opacity .3s,width .3s;}
#pc-page-roleplay-hub .rph-screen.off .rph-homebar{opacity:0;}

#pc-page-roleplay-hub .rph-poweroff{position:absolute;inset:0;z-index:45;background:rgba(0,0,0,.92);backdrop-filter:blur(20px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:40px;padding:40px 28px;opacity:0;pointer-events:none;transition:opacity .4s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-poweroff.open{opacity:1;pointer-events:auto;}
#pc-page-roleplay-hub .rph-slider{width:100%;height:62px;border-radius:31px;background:rgba(255,255,255,.14);position:relative;overflow:hidden;}
#pc-page-roleplay-hub .rph-slider-lbl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.65);font-size:.82rem;font-weight:600;animation:rphShimmer 2.6s linear infinite;background:linear-gradient(90deg,rgba(255,255,255,.3) 20%,#fff 50%,rgba(255,255,255,.3) 80%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
@keyframes rphShimmer{to{background-position:-200% 0;}}
#pc-page-roleplay-hub .rph-slider-knob{position:absolute;left:4px;top:4px;width:54px;height:54px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;color:#ff3b30;cursor:grab;transition:left .25s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-slider-knob:active{cursor:grabbing;transition:none;}
#pc-page-roleplay-hub .rph-poweroff-cancel{background:none;border:none;color:rgba(255,255,255,.6);font-size:.86rem;font-weight:600;cursor:pointer;}

#pc-page-roleplay-hub .rph-boot{position:absolute;inset:0;z-index:44;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;opacity:0;pointer-events:none;transition:opacity .5s;}
#pc-page-roleplay-hub .rph-boot.on{opacity:1;}
#pc-page-roleplay-hub .rph-boot-logo{color:#fff;animation:rphBootPulse 2s ease-in-out infinite;}
@keyframes rphBootPulse{0%,100%{opacity:.55;transform:scale(.97);}50%{opacity:1;transform:scale(1);}}
#pc-page-roleplay-hub .rph-boot-bar{width:150px;height:4px;border-radius:2px;background:rgba(255,255,255,.18);overflow:hidden;}
#pc-page-roleplay-hub .rph-boot-bar i{display:block;height:100%;width:0;background:#fff;border-radius:2px;transition:width .25s linear;}

#pc-page-roleplay-hub .rph-help-wrap{display:flex;align-items:center;align-self:stretch;gap:10px;max-width:290px;margin-left:34px;overflow:hidden;}
#pc-page-roleplay-hub .rph-help-toggle{flex-shrink:0;width:26px;height:26px;border-radius:50%;border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.06);color:rgba(226,232,240,.8);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .4s cubic-bezier(.34,1.4,.5,1),background .2s,border-color .2s,color .2s;}
#pc-page-roleplay-hub .rph-help-toggle:hover{background:rgba(255,255,255,.14);border-color:rgba(148,163,184,.45);color:#fff;}
#pc-page-roleplay-hub .rph-phone-help{flex:0 0 250px;width:250px;color:rgba(148,163,184,.75);font-size:.78rem;line-height:1.6;opacity:1;transition:opacity .3s ease .12s,margin-right .45s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-phone-help b{display:block;color:#fff;font-size:.9rem;margin-bottom:10px;letter-spacing:.02em;}
#pc-page-roleplay-hub .rph-phone-help kbd{display:inline-block;background:rgba(148,163,184,.16);border-radius:6px;padding:2px 7px;font-size:.72rem;color:#e2e8f0;font-family:inherit;font-weight:700;}
#pc-page-roleplay-hub .rph-help-wrap.rph-help-collapsed .rph-phone-help{opacity:0;pointer-events:none;margin-right:-260px;transition:opacity .18s ease,margin-right .45s cubic-bezier(.22,1,.36,1) .05s;}
#pc-page-roleplay-hub .rph-help-wrap.rph-help-collapsed .rph-help-toggle{transform:rotate(180deg);}
@media(max-width:900px){#pc-page-roleplay-hub .rph-help-wrap{display:none;}}

#pc-page-roleplay-hub .rph-phone-stage{--rph-k:1;align-items:flex-start;}
@media(max-width:900px){#pc-page-roleplay-hub .rph-phone-stage{--rph-k:.9;}}
@media(max-width:520px){#pc-page-roleplay-hub .rph-phone-stage{--rph-k:.82;}}
@media(max-width:400px){#pc-page-roleplay-hub .rph-phone-stage{--rph-k:.72;}}
@media(max-width:340px){#pc-page-roleplay-hub .rph-phone-stage{--rph-k:.64;}}
@media(max-width:900px){
  #pc-page-roleplay-hub .rph-phone-stage{
    height:calc(718px * var(--rph-k) + 46px);padding:14px 0 0;overflow:visible;
  }
  #pc-page-roleplay-hub .rph-phone{transform:scale(var(--rph-k));transform-origin:top center;}
  #pc-page-roleplay-hub .rph-screen{touch-action:manipulation;}
}

#pc-page-roleplay-hub.rph-pip-out{animation:none!important;transform:none!important;}
#pc-page-roleplay-hub.rph-pip-out:not(.open){
  display:block!important;position:fixed;inset:0;z-index:99990;
  background:none!important;overflow:visible!important;animation:none!important;
  opacity:1!important;transform:none!important;pointer-events:none;
}
#pc-page-roleplay-hub.rph-pip-out:not(.open) > *:not(#rph-pip){display:none!important;}
#pc-page-roleplay-hub #rph-pip{
  position:fixed;left:26px;top:26px;z-index:100000;--rph-k:.62;
  width:calc(342px * var(--rph-k));pointer-events:auto;
  animation:rphPipIn .32s cubic-bezier(.22,1,.36,1) both;
}
@keyframes rphPipIn{from{opacity:0;transform:scale(.94) translateY(10px);}to{opacity:1;transform:none;}}
#pc-page-roleplay-hub .rph-phone-grab{
  position:absolute;top:4px;left:50%;transform:translateX(-50%);
  width:46px;height:3px;border-radius:2px;background:rgba(255,255,255,.28);
  opacity:0;pointer-events:none;z-index:7;transition:opacity .25s,background .25s;
}
#pc-page-roleplay-hub .rph-phone:hover .rph-phone-grab{opacity:.6;}
#pc-page-roleplay-hub .rph-phone.rph-grab .rph-phone-grab{opacity:1;background:rgba(255,255,255,.75);}
#pc-page-roleplay-hub .rph-phone.rph-grab,
#pc-page-roleplay-hub .rph-phone.rph-grab *{cursor:grab!important;}
#pc-page-roleplay-hub .rph-phone.rph-dragging,
#pc-page-roleplay-hub .rph-phone.rph-dragging *{cursor:grabbing!important;}
#pc-page-roleplay-hub .rph-phone.rph-dragging{touch-action:none;-webkit-user-select:none;user-select:none;}
#pc-page-roleplay-hub .rph-phone{-webkit-touch-callout:none;}
#pc-page-roleplay-hub .rph-pip-body{position:relative;width:100%;height:calc(718px * var(--rph-k));}
#pc-page-roleplay-hub #rph-pip{transition:width .3s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub #rph-pip .rph-pip-body{transition:height .3s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub #rph-pip.rph-pip-busy,
#pc-page-roleplay-hub #rph-pip.rph-pip-busy .rph-pip-body{transition:none;}
#pc-page-roleplay-hub #rph-pip .rph-phone{
  position:absolute;left:0;top:0;transform:scale(var(--rph-k));transform-origin:top left;
  transition:transform .3s cubic-bezier(.22,1,.36,1);
}
#pc-page-roleplay-hub #rph-pip.rph-pip-busy .rph-phone{transition:none;}
#pc-page-roleplay-hub #rph-pip.rph-pip-busy{animation:none;}
#pc-page-roleplay-hub.rph-pip-doc{position:static;display:block;width:100%;height:100%;background:#05070f;overflow:hidden;}
#pc-page-roleplay-hub #rph-pip.rph-pip-win{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  animation:none;transition:none;
}
#pc-page-roleplay-hub #rph-pip.rph-pip-win .rph-pip-body{transition:none;}
#pc-page-roleplay-hub #rph-pip.rph-pip-win .rph-phone{transition:none;box-shadow:0 0 0 1px rgba(255,255,255,.07) inset;}
#pc-page-roleplay-hub .rph-pip-grip{
  position:absolute;right:-7px;bottom:-7px;width:26px;height:26px;border-radius:9px;
  border:1px solid rgba(148,163,184,.3);background:rgba(9,14,28,.92);color:rgba(226,232,240,.75);
  display:flex;align-items:center;justify-content:center;cursor:nwse-resize;touch-action:none;
  box-shadow:0 10px 24px rgba(var(--rph-b1-rgb),.55);opacity:.4;
  transition:opacity .2s,color .2s,border-color .2s;z-index:3;
}
#pc-page-roleplay-hub #rph-pip:hover .rph-pip-grip{opacity:1;}
#pc-page-roleplay-hub .rph-pip-grip:hover{color:#fff;border-color:rgba(var(--rph-a3-rgb),.65);}

#pc-page-roleplay-hub .rph-pip-btn{
  display:inline-flex;align-items:center;gap:8px;padding:9px 17px;border-radius:999px;
  border:1px solid rgba(var(--rph-a3-rgb),.4);background:rgba(var(--rph-a2-rgb),.16);color:var(--rph-a5);
  font-family:inherit;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s;
}
#pc-page-roleplay-hub .rph-pip-btn:hover{background:rgba(var(--rph-a2-rgb),.42);color:#fff;border-color:rgba(var(--rph-a3-rgb),.75);transform:translateY(-1px);}

#pc-page-roleplay-hub .rph-detach-bar{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0 -4px;}
#pc-page-roleplay-hub .rph-detach-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;border:1px solid rgba(148,163,184,.22);background:rgba(var(--rph-b3-rgb),.55);color:rgba(226,232,240,.78);font-family:inherit;font-size:.62rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s;}
#pc-page-roleplay-hub .rph-detach-btn:hover{background:rgba(var(--rph-a2-rgb),.3);border-color:rgba(var(--rph-a3-rgb),.6);color:#fff;transform:translateY(-1px);}
#pc-page-roleplay-hub .rph-detach-btn.on{background:rgba(var(--rph-a2-rgb),.42);border-color:rgba(var(--rph-a3-rgb),.75);color:#fff;}
#pc-page-roleplay-hub .rph-detach-btn[disabled]{opacity:.38;cursor:not-allowed;transform:none;}
#pc-page-roleplay-hub .rph-detach-btn[disabled]:hover{background:rgba(var(--rph-b3-rgb),.55);border-color:rgba(148,163,184,.22);color:rgba(226,232,240,.78);}
#pc-page-roleplay-hub .rph-detach-btn svg{flex:0 0 auto;}
@media(max-width:520px){#pc-page-roleplay-hub .rph-detach-btn{padding:7px 11px;font-size:.58rem;letter-spacing:.06em;}}

#pc-page-roleplay-hub .rph-phone-stage.rph-stage-empty{height:auto!important;padding:18px 0 40px;}
#pc-page-roleplay-hub .rph-pip-slot{
  width:342px;max-width:100%;min-height:420px;border-radius:44px;
  border:2px dashed rgba(148,163,184,.25);background:rgba(var(--rph-b1-rgb),.5);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;
  padding:30px 26px;text-align:center;color:rgba(148,163,184,.8);
}
#pc-page-roleplay-hub .rph-pip-slot-ic{color:rgba(148,163,184,.35);display:flex;}
#pc-page-roleplay-hub .rph-pip-slot-ic svg{width:40px;height:40px;}
#pc-page-roleplay-hub .rph-pip-slot b{color:#fff;font-size:.98rem;}
#pc-page-roleplay-hub .rph-pip-slot p{margin:0;font-size:.8rem;line-height:1.65;max-width:255px;}
@media(max-width:640px){
  #pc-page-roleplay-hub .rph-pip-slot{min-height:280px;border-radius:26px;}
}

#pc-page-roleplay-hub .rph-bcard{position:relative;width:430px;margin:0 auto;aspect-ratio:1.585;border-radius:18px;padding:22px 24px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;color:#fff;filter:drop-shadow(0 22px 50px rgba(0,0,0,.55));-webkit-mask-image:-webkit-radial-gradient(circle,#fff 100%,#000 100%);mask-image:radial-gradient(circle,#fff 100%,#000 100%);}
#pc-page-roleplay-hub .rph-bcard::after{content:'';position:absolute;inset:0;background:radial-gradient(120% 90% at 85% 10%,rgba(255,255,255,.22),transparent 60%);pointer-events:none;}
#pc-page-roleplay-hub .rph-bcard-top{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:2;}
#pc-page-roleplay-hub .rph-bcard-bank{font-size:1rem;font-weight:900;letter-spacing:.02em;}
#pc-page-roleplay-hub .rph-bcard-net{font-size:.66rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;opacity:.85;}
#pc-page-roleplay-hub .rph-bcard-chip{width:46px;height:34px;border-radius:7px;background:linear-gradient(150deg,#e7c766,#b98f2f);position:relative;z-index:2;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);}
#pc-page-roleplay-hub .rph-bcard-chip::before{content:'';position:absolute;inset:6px 4px;border:1px solid rgba(0,0,0,.28);border-radius:3px;}
#pc-page-roleplay-hub .rph-bcard-num{position:relative;z-index:2;font-family:'Courier New',Courier,monospace;font-size:1.28rem;font-weight:700;letter-spacing:.12em;text-shadow:0 1px 2px rgba(0,0,0,.35);}
#pc-page-roleplay-hub .rph-bcard-bot{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;position:relative;z-index:2;}
/* Numéro de carte masqué : points ⇄ chiffres */
#pc-page-roleplay-hub .rph-bcard-mid{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;}
#pc-page-roleplay-hub .rph-bcard-num{white-space:nowrap;overflow:hidden;padding:2px 0;}
#pc-page-roleplay-hub .rph-cg{display:inline-grid;vertical-align:middle;}
#pc-page-roleplay-hub .rph-cg > .d,#pc-page-roleplay-hub .rph-cg > .m{grid-area:1/1;display:inline-flex;align-items:center;}
#pc-page-roleplay-hub .rph-cg .d b{display:inline-block;font-weight:inherit;opacity:0;transform:translateY(.45em) rotateX(70deg);filter:blur(5px);transition:opacity .28s ease,transform .38s cubic-bezier(.34,1.45,.5,1),filter .3s ease;transition-delay:calc(var(--g,0) * 70ms + var(--c,0) * 22ms);}
#pc-page-roleplay-hub .rph-cg .m i{display:inline-flex;align-items:center;justify-content:center;width:1ch;margin-right:.12em;height:1em;transition:opacity .22s ease,transform .32s cubic-bezier(.34,1.6,.5,1);transition-delay:calc(var(--g,0) * 55ms + var(--c,0) * 18ms);}
#pc-page-roleplay-hub .rph-cg .m i::before{content:'';width:.42em;height:.42em;border-radius:50%;background:currentColor;box-shadow:0 1px 2px rgba(0,0,0,.35);}
#pc-page-roleplay-hub .rph-bcard.shown .rph-cg .d b{opacity:1;transform:none;filter:none;}
#pc-page-roleplay-hub .rph-bcard.shown .rph-cg .m i{opacity:0;transform:scale(0);transition-delay:calc(var(--g,0) * 55ms + var(--c,0) * 14ms);}
#pc-page-roleplay-hub .rph-bcard:not(.shown) .rph-cg .d b{transition-duration:.18s,.2s,.18s;transition-delay:calc(var(--g,0) * 30ms);}
#pc-page-roleplay-hub .rph-bcard:not(.shown) .rph-cg .m i{transition-delay:calc(90ms + var(--g,0) * 60ms + var(--c,0) * 22ms);}
#pc-page-roleplay-hub .rph-bcard-num.sweep::after{content:'';position:absolute;top:0;bottom:0;left:-40%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-18deg);animation:rphCardSweep .7s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none;}
@keyframes rphCardSweep{to{left:120%;}}
#pc-page-roleplay-hub .rph-bcard-eye{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px 0 6px;border-radius:99px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-family:inherit;font-size:.64rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .2s,transform .15s,border-color .2s;}
#pc-page-roleplay-hub .rph-bcard-eye:hover{background:rgba(255,255,255,.24);border-color:rgba(255,255,255,.45);}
#pc-page-roleplay-hub .rph-bcard-eye:active{transform:scale(.94);}
#pc-page-roleplay-hub .rph-bcard-eye:focus-visible{outline:2px solid #fff;outline-offset:2px;}
#pc-page-roleplay-hub .rph-bcard-eye .ic{position:relative;width:22px;height:22px;display:flex;align-items:center;justify-content:center;}
#pc-page-roleplay-hub .rph-bcard-eye .ic > svg:not(.ringbox){position:absolute;transition:opacity .22s,transform .3s cubic-bezier(.34,1.5,.5,1);}
#pc-page-roleplay-hub .rph-bcard-eye .eye-off{opacity:0;transform:scale(.5) rotate(-30deg);}
#pc-page-roleplay-hub .rph-bcard.shown .rph-bcard-eye .eye-on{opacity:0;transform:scale(.5) rotate(30deg);}
#pc-page-roleplay-hub .rph-bcard.shown .rph-bcard-eye .eye-off{opacity:1;transform:none;}
#pc-page-roleplay-hub .rph-bcard-eye .ringbox{position:absolute;inset:0;width:22px;height:22px;transform:rotate(-90deg);}
#pc-page-roleplay-hub .rph-bcard-eye .ring{fill:none;stroke:rgba(255,255,255,.85);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:69.1;stroke-dashoffset:69.1;opacity:0;transition:opacity .2s;}
#pc-page-roleplay-hub .rph-bcard.shown .rph-bcard-eye .ring{opacity:1;}
@keyframes rphCardRing{from{stroke-dashoffset:0;}to{stroke-dashoffset:69.1;}}
#pc-page-roleplay-hub .rph-bcard-eye .rph-eye-lbl{display:inline-block;min-width:4.6em;text-align:left;color:inherit;}
#pc-page-roleplay-hub .rph-card-mini .rph-bcard-eye{height:26px;padding:0 3px;gap:0;}
#pc-page-roleplay-hub .rph-card-mini .rph-bcard-eye .rph-eye-lbl{display:none;}

@media (prefers-reduced-motion:reduce){
  #pc-page-roleplay-hub .rph-cg .d b,#pc-page-roleplay-hub .rph-cg .m i{transition-duration:.01s!important;transition-delay:0s!important;transform:none;filter:none;}
  #pc-page-roleplay-hub .rph-bcard-num.sweep::after{display:none;}
}
#pc-page-roleplay-hub .rph-bcard-bot .k{display:block;font-size:.54rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7;font-weight:800;}
#pc-page-roleplay-hub .rph-bcard-bot .v{display:block;font-size:.86rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;}

#pc-page-roleplay-hub .rph-ct-body{position:relative;padding:26px 34px 8px;}
#pc-page-roleplay-hub .rph-ct-title{text-align:center;font-size:1.28rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#16324a;}
#pc-page-roleplay-hub .rph-ct-sub{text-align:center;margin-top:5px;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#6b7f8c;}
#pc-page-roleplay-hub .rph-ct-num{text-align:center;margin-top:9px;font-family:'Courier New',Courier,monospace;font-size:.76rem;font-weight:800;letter-spacing:.1em;color:#e8722a;}
#pc-page-roleplay-hub .rph-ct-parties{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px;}
#pc-page-roleplay-hub .rph-ct-party{background:rgba(42,127,140,.07);border:1px solid rgba(42,127,140,.16);border-radius:10px;padding:13px 15px;}
#pc-page-roleplay-hub .rph-ct-party .k{display:block;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#3a6d84;margin-bottom:5px;}
#pc-page-roleplay-hub .rph-ct-party .v{display:block;font-size:.98rem;font-weight:800;color:#16324a;line-height:1.35;}
#pc-page-roleplay-hub .rph-ct-party .s{display:block;margin-top:3px;font-size:.74rem;font-weight:600;color:#5a6b76;}
#pc-page-roleplay-hub .rph-ct-arts{margin-top:20px;}
#pc-page-roleplay-hub .rph-ct-art{margin-top:11px;font-size:.82rem;line-height:1.55;color:#26445c;}
#pc-page-roleplay-hub .rph-ct-art b{color:#16324a;font-weight:800;}
#pc-page-roleplay-hub .rph-ct-sigs{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:26px;}
#pc-page-roleplay-hub .rph-ct-sig{padding-top:6px;}
#pc-page-roleplay-hub .rph-ct-sig .n{font-family:'Dancing Script',cursive;font-size:1.42rem;font-weight:600;color:#1c3d55;line-height:1.2;padding-bottom:4px;border-bottom:1px solid rgba(20,50,70,.3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#pc-page-roleplay-hub .rph-ct-sig .l{margin-top:6px;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#6b7f8c;}

#pc-page-roleplay-hub .rph-capture-holder,.rph-capture-holder{position:absolute;top:0;left:0;z-index:-9999;opacity:0;pointer-events:none;}
#pc-page-roleplay-hub .rph-capture-holder,#pc-page-roleplay-hub .rph-capture-holder *,
.rph-capture-holder,.rph-capture-holder *{animation:none!important;transition:none!important;}

#pc-page-roleplay-hub .rph-usa-card-scale{margin:0 auto;overflow:hidden;}
#pc-page-roleplay-hub .rph-bcard-inline-scale{overflow:hidden;}
#pc-page-roleplay-hub .rph-empty{margin-top:26px;border:1px dashed rgba(148,163,184,.22);border-radius:18px;padding:48px;text-align:center;color:rgba(148,163,184,.75);font-size:.88rem;font-weight:600;transition:all .3s;}
#pc-page-roleplay-hub .rph-empty:hover{border-color:rgba(var(--rph-a3-rgb),.45);background:rgba(var(--rph-b3-rgb),.5);}

#pc-page-roleplay-hub .rph-weightbar{height:8px;border-radius:999px;background:rgba(148,163,184,.14);overflow:hidden;margin-top:14px;}
#pc-page-roleplay-hub .rph-weightbar > i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--rph-a1),var(--rph-a3),var(--rph-a4));background-size:200% 100%;animation:rphShimmer 2.4s linear infinite;transition:width .7s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-inv{margin-top:22px;background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.95),rgba(var(--rph-b2-rgb),.95));border:1px solid rgba(148,163,184,.14);border-radius:18px;padding:24px;animation:rphFadeUp .5s .15s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-inv-send{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(var(--rph-a4-rgb),.45);background:rgba(var(--rph-a3-rgb),.16);color:var(--rph-a5);font-family:inherit;font-size:.64rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:7px 13px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,border-color .2s;}
#pc-page-roleplay-hub .rph-inv-send:hover{background:rgba(var(--rph-a2-rgb),.45);color:#fff;border-color:rgba(var(--rph-a4-rgb),.75);box-shadow:0 8px 20px rgba(var(--rph-a2-rgb),.3);}
#pc-page-roleplay-hub .rph-inv-send[disabled]{opacity:.5;cursor:not-allowed;}
#pc-page-roleplay-hub input[type="checkbox"]{-webkit-appearance:none;appearance:none;position:relative;display:inline-grid;place-content:center;flex:0 0 auto;width:18px;height:18px;margin:0;border-radius:6px;border:1.5px solid rgba(148,163,184,.45);background:rgba(2,6,16,.5);cursor:pointer;vertical-align:middle;transition:background .18s,border-color .18s,box-shadow .18s;}
#pc-page-roleplay-hub input[type="checkbox"]::before{content:'';width:4px;height:8px;margin-top:-2px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .18s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub input[type="checkbox"]:checked{background:linear-gradient(135deg,var(--rph-a1),var(--rph-a2));border-color:transparent;box-shadow:0 0 0 3px rgba(var(--rph-a2-rgb),.2);}
#pc-page-roleplay-hub input[type="checkbox"]:checked::before{transform:rotate(45deg) scale(1);}
#pc-page-roleplay-hub input[type="checkbox"]:hover:not(:disabled){border-color:rgba(var(--rph-a4-rgb),.7);}
#pc-page-roleplay-hub input[type="checkbox"]:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--rph-a4-rgb),.45);}
#pc-page-roleplay-hub input[type="checkbox"]:disabled{opacity:.45;cursor:not-allowed;}
#pc-page-roleplay-hub .rph-sf-check input[type="checkbox"]{position:absolute;opacity:0;width:0;height:0;pointer-events:none;}
#pc-page-roleplay-hub .rph-pay-sum{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:6px;padding:14px 16px;border-radius:14px;background:rgba(var(--rph-b1-rgb),.55);border:1px solid rgba(148,163,184,.14);}
#pc-page-roleplay-hub .rph-pay-sum span{font-size:.84rem;font-weight:700;color:#e2e8f0;line-height:1.4;}
#pc-page-roleplay-hub .rph-pay-sum b{font-size:1.35rem;font-weight:900;color:#fff;white-space:nowrap;}
#pc-page-roleplay-hub .rph-pay-note{margin-top:10px;font-size:.74rem;line-height:1.5;color:rgba(148,163,184,.8);}
#pc-page-roleplay-hub .rph-pay-only{display:flex;align-items:center;gap:10px;margin-top:14px;padding:11px 14px;border-radius:12px;background:rgba(var(--rph-a2-rgb),.14);border:1px solid rgba(var(--rph-a4-rgb),.3);font-size:.8rem;color:#dbeafe;}
#pc-page-roleplay-hub .rph-paycards{display:flex;flex-direction:column;gap:8px;}
#pc-page-roleplay-hub .rph-paycard{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 12px;border-radius:14px;border:1px solid rgba(148,163,184,.16);background:rgba(var(--rph-b1-rgb),.55);color:#e2e8f0;font-family:inherit;cursor:pointer;transition:border-color .18s,background .18s;}
#pc-page-roleplay-hub .rph-paycard:hover{border-color:rgba(var(--rph-a4-rgb),.45);}
#pc-page-roleplay-hub .rph-paycard.on{background:rgba(var(--rph-a2-rgb),.2);border-color:rgba(var(--rph-a4-rgb),.6);}
#pc-page-roleplay-hub .rph-paycard.dead{opacity:.45;cursor:not-allowed;}
#pc-page-roleplay-hub .rph-paycard .sw{position:relative;flex:0 0 auto;width:54px;height:35px;border-radius:7px;box-shadow:0 4px 12px rgba(0,0,0,.35);overflow:hidden;}
#pc-page-roleplay-hub .rph-paycard .sw i{position:absolute;left:7px;top:11px;width:11px;height:9px;border-radius:2px;background:linear-gradient(135deg,#fde68a,#d4a017);}
#pc-page-roleplay-hub .rph-paycard .sw.add{display:flex;align-items:center;justify-content:center;background:rgba(148,163,184,.12);box-shadow:inset 0 0 0 1.5px rgba(148,163,184,.35);font-size:1.2rem;font-weight:700;color:rgba(226,232,240,.8);}
#pc-page-roleplay-hub .rph-paycard .t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
#pc-page-roleplay-hub .rph-paycard .t b{font-size:.82rem;font-weight:800;color:#fff;}
#pc-page-roleplay-hub .rph-paycard .t small{font-size:.7rem;color:rgba(148,163,184,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#pc-page-roleplay-hub .rph-paycard .tick{position:relative;flex:0 0 auto;width:18px;height:18px;border-radius:50%;border:1.5px solid rgba(148,163,184,.45);transition:all .18s;}
#pc-page-roleplay-hub .rph-paycard.on .tick{border-color:transparent;background:linear-gradient(135deg,var(--rph-a1),var(--rph-a2));box-shadow:0 0 0 3px rgba(var(--rph-a2-rgb),.22);}
#pc-page-roleplay-hub .rph-paycard.on .tick::after{content:'';position:absolute;left:5.5px;top:2.5px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
#pc-page-roleplay-hub .rph-pay-new{margin-top:10px;padding:12px;border-radius:14px;background:rgba(2,6,16,.35);border:1px dashed rgba(148,163,184,.25);}
#pc-page-roleplay-hub .rph-pay-hint{font-size:.74rem;line-height:1.5;color:rgba(148,163,184,.75);padding:2px 2px 0;}
#pc-page-roleplay-hub .rph-th-pay{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:9px 12px;border-radius:12px;background:rgba(var(--rph-b1-rgb),.5);border:1px solid rgba(148,163,184,.14);font-size:.76rem;color:rgba(226,232,240,.8);}
#pc-page-roleplay-hub .rph-th-pay b{color:#fff;}
#pc-page-roleplay-hub .rph-blanch-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:14px;}
#pc-page-roleplay-hub .rph-blanch-stat{padding:14px 16px;border-radius:14px;background:rgba(var(--rph-b1-rgb),.55);border:1px solid rgba(148,163,184,.14);}
#pc-page-roleplay-hub .rph-blanch-stat span{display:block;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.75);}
#pc-page-roleplay-hub .rph-blanch-stat b{display:block;margin-top:5px;font-size:1.15rem;font-weight:900;color:#fff;}
#pc-page-roleplay-hub .rph-blanch-stat b small{font-size:.72rem;color:rgba(148,163,184,.8);font-weight:700;}
#pc-page-roleplay-hub .rph-blanch-stat > small{display:block;margin-top:6px;font-size:.66rem;color:rgba(148,163,184,.65);}
#pc-page-roleplay-hub .rph-blanch-net{font-size:.72rem;font-weight:800;color:#4ade80;min-height:1em;}
#pc-page-roleplay-hub .rph-blanch-note{margin-top:14px;font-size:.76rem;line-height:1.55;color:rgba(148,163,184,.8);}
#pc-page-roleplay-hub [data-blanch-start].armed{background:linear-gradient(135deg,#b45309,#f59e0b);}
#pc-page-roleplay-hub .rph-card-act{position:absolute;top:18px;right:18px;z-index:1;}
#pc-page-roleplay-hub .rph-sendpick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;}
#pc-page-roleplay-hub .rph-sendopt{display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;padding:14px 15px;border-radius:14px;border:1px solid rgba(148,163,184,.16);background:rgba(var(--rph-b1-rgb),.55);color:#e2e8f0;font-family:inherit;cursor:pointer;transition:all .18s;}
#pc-page-roleplay-hub .rph-sendopt b{font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
#pc-page-roleplay-hub .rph-sendopt span{font-size:.74rem;line-height:1.4;color:rgba(148,163,184,.8);}
#pc-page-roleplay-hub .rph-sendopt:hover{border-color:rgba(var(--rph-a4-rgb),.4);}
#pc-page-roleplay-hub .rph-sendopt.on{background:rgba(var(--rph-a2-rgb),.24);border-color:rgba(var(--rph-a4-rgb),.55);color:#fff;}
#pc-page-roleplay-hub .rph-sendopt.off,#pc-page-roleplay-hub .rph-sendopt[disabled]{opacity:.45;cursor:not-allowed;}
@media (max-width:480px){#pc-page-roleplay-hub .rph-sendpick{grid-template-columns:1fr;}}
#pc-page-roleplay-hub .rph-inv-send.done{background:rgba(74,222,128,.2);border-color:rgba(74,222,128,.5);color:#4ade80;}
#pc-page-roleplay-hub .rph-inv-msg{margin-top:10px;font-size:.78rem;font-weight:700;min-height:1em;}
#pc-page-roleplay-hub .rph-inv-msg.ok{color:#4ade80;}
#pc-page-roleplay-hub .rph-inv-msg.err{color:#f87171;}
#pc-page-roleplay-hub .rph-inv-sheet{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid rgba(148,163,184,.16);}
#pc-page-roleplay-hub .rph-inv-sheet b{font-size:1.1rem;font-weight:900;color:#fff;letter-spacing:-.01em;}
#pc-page-roleplay-hub .rph-inv-sheet span{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:rgba(148,163,184,.75);}
#pc-page-roleplay-hub .rph-inv-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(148,163,184,.75);font-weight:800;}
#pc-page-roleplay-hub .rph-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;}
@media(max-width:640px){#pc-page-roleplay-hub .rph-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
#pc-page-roleplay-hub .rph-slot{position:relative;min-width:0;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:18px 6px 8px;border-radius:14px;border:1px dashed rgba(148,163,184,.18);background:rgba(var(--rph-b1-rgb),.6);overflow:hidden;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s,opacity .2s;}
#pc-page-roleplay-hub .rph-slot.filled{border-style:solid;border-color:rgba(var(--rph-a3-rgb),.35);background:rgba(var(--rph-t1-rgb),.28);cursor:pointer;}
@media(hover:hover){
  #pc-page-roleplay-hub .rph-slot.filled:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(var(--rph-b1-rgb),.6);border-color:var(--rph-a3);}
  #pc-page-roleplay-hub .rph-slot.filled:hover .rph-slot-ico{transform:scale(1.1);}
}
#pc-page-roleplay-hub .rph-slot.filled.locked{border-color:rgba(74,222,128,.4);background:linear-gradient(160deg,rgba(20,52,38,.85),rgba(11,26,20,.9));}
#pc-page-roleplay-hub .rph-slot.filled.holding{border-color:rgba(251,191,36,.55);background:linear-gradient(160deg,rgba(69,52,12,.82),rgba(28,21,6,.9));}
#pc-page-roleplay-hub .rph-slot:focus{outline:none;}
#pc-page-roleplay-hub .rph-slot:focus-visible{outline:2px solid var(--rph-a4);outline-offset:2px;}
#pc-page-roleplay-hub .rph-slot.menu-open{border-color:var(--rph-a4);box-shadow:0 0 0 3px rgba(var(--rph-a3-rgb),.25);}
#pc-page-roleplay-hub .rph-slot.pressing{transform:scale(.95);}
#pc-page-roleplay-hub .rph-slot.pressing::after{content:'';position:absolute;inset:-1px;border-radius:inherit;border:2px solid var(--rph-a4);opacity:0;pointer-events:none;animation:rphSlotArm .26s .12s ease-out forwards;}
@keyframes rphSlotArm{from{opacity:0;transform:scale(1.1);}to{opacity:1;transform:scale(1);}}
#pc-page-roleplay-hub .rph-slot.dragging{opacity:.3;transform:scale(.94);}
#pc-page-roleplay-hub .rph-slot.dragover{border-style:solid;border-color:var(--rph-a4);background:rgba(var(--rph-a2-rgb),.22);transform:scale(1.05);}
#pc-page-roleplay-hub .rph-slot.dragdeny{border-style:solid;border-color:rgba(248,113,113,.6);background:rgba(127,29,29,.22);}
#pc-page-roleplay-hub .rph-slot.rph-drag-ghost{position:fixed;top:0;left:0;z-index:100080;margin:0;pointer-events:none;opacity:.96;border-style:solid;border-color:var(--rph-a4);box-shadow:0 22px 44px rgba(0,0,0,.55),0 0 0 3px rgba(var(--rph-a3-rgb),.25);transition:none;will-change:transform;}
#pc-page-roleplay-hub .rph-slot .num{position:absolute;top:6px;left:8px;font-size:.58rem;line-height:1;color:rgba(148,163,184,.45);font-weight:700;}
#pc-page-roleplay-hub .rph-slot .qty{position:absolute;top:4px;right:4px;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 6px;border-radius:999px;font-size:.6rem;line-height:1;font-weight:800;color:var(--rph-a5);background:rgba(var(--rph-a2-rgb),.2);border:1px solid rgba(var(--rph-a4-rgb),.3);}
#pc-page-roleplay-hub .rph-slot-ico{display:flex;align-items:center;justify-content:center;flex:0 0 auto;height:50px;max-width:100%;pointer-events:none;transition:transform .2s;}
#pc-page-roleplay-hub .rph-slot-ico .ico{color:rgba(203,213,225,.9);font-size:2.2rem;line-height:1;}
#pc-page-roleplay-hub .rph-slot-ico svg{width:42px;height:42px;}
#pc-page-roleplay-hub .rph-slot-ico img{width:52px;height:52px;object-fit:contain;-webkit-user-drag:none;user-select:none;}
#pc-page-roleplay-hub .rph-slot .nm{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;font-size:.6rem;line-height:1.2;text-align:center;color:rgba(226,232,240,.85);font-weight:700;overflow-wrap:break-word;hyphens:auto;pointer-events:none;}
@media(max-width:640px){
  #pc-page-roleplay-hub .rph-slot{aspect-ratio:4/5;padding:17px 4px 7px;gap:4px;border-radius:12px;}
  #pc-page-roleplay-hub .rph-slot-ico{height:38px;}
  #pc-page-roleplay-hub .rph-slot-ico svg{width:32px;height:32px;}
  #pc-page-roleplay-hub .rph-slot-ico img{width:38px;height:38px;}
  #pc-page-roleplay-hub .rph-slot-ico .ico{font-size:1.75rem;}
  #pc-page-roleplay-hub .rph-slot .nm{font-size:.56rem;}
  #pc-page-roleplay-hub .rph-slot .qty{font-size:.56rem;padding:3px 5px;}
}
#pc-page-roleplay-hub .rph-dragdock{box-sizing:border-box;position:fixed;left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:100075;display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:520px;margin:0 auto;animation:rphDockIn .18s ease-out;}
#pc-page-roleplay-hub .rph-dragdock > div{display:flex;align-items:center;justify-content:center;gap:9px;padding:20px 12px;border-radius:16px;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 18px 40px rgba(0,0,0,.45);transition:transform .15s,background .15s,border-color .15s;}
#pc-page-roleplay-hub .rph-dragdock > div > span{display:flex;pointer-events:none;}
#pc-page-roleplay-hub .rph-dragdock .rph-dock-give{border:1.5px dashed rgba(var(--rph-a4-rgb),.55);background:rgba(12,24,58,.92);color:#bfdbfe;}
#pc-page-roleplay-hub .rph-dragdock .rph-dock-trash{border:1.5px dashed rgba(248,113,113,.55);background:rgba(54,12,12,.92);color:#fecaca;}
#pc-page-roleplay-hub .rph-dragdock .rph-dock-give.dragover{border-style:solid;background:rgba(var(--rph-a2-rgb),.6);color:#fff;transform:scale(1.04);}
#pc-page-roleplay-hub .rph-dragdock .rph-dock-trash.dragover{border-style:solid;background:rgba(185,28,28,.75);color:#fff;transform:scale(1.04);}
@keyframes rphDockIn{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}
#pc-page-roleplay-hub .rph-slotmenu-thumb{width:44px;height:44px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(var(--rph-t1-rgb),.32);border:1px solid rgba(var(--rph-a3-rgb),.28);}
#pc-page-roleplay-hub .rph-slotmenu-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px;}
#pc-page-roleplay-hub .rph-slotmenu .rph-slotmenu-row .rph-slotmenu-btn{margin-top:0;justify-content:center;}
#pc-page-roleplay-hub .rph-slotmenu-tip{margin-top:10px;padding:0 4px;font-size:.68rem;line-height:1.4;color:rgba(148,163,184,.7);font-weight:600;text-align:center;}
#pc-page-roleplay-hub .rph-slotmenu-btn:focus{outline:none;}
#pc-page-roleplay-hub .rph-slotmenu-btn:focus-visible{outline:2px solid var(--rph-a4);outline-offset:2px;}
@media(prefers-reduced-motion:reduce){
  #pc-page-roleplay-hub .rph-slotpop,#pc-page-roleplay-hub .rph-slotmenu.pop,#pc-page-roleplay-hub .rph-dragdock,#pc-page-roleplay-hub .rph-slot.pressing::after{animation:none;}
  #pc-page-roleplay-hub .rph-slot.pressing::after{opacity:1;}
}
#pc-page-roleplay-hub .rph-dropzones{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
#pc-page-roleplay-hub .rph-give{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;border-radius:14px;border:1px dashed rgba(var(--rph-a4-rgb),.35);background:rgba(30,58,138,.14);color:rgba(191,219,254,.85);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:all .2s;}
#pc-page-roleplay-hub .rph-give-ic{display:flex;color:rgba(191,219,254,.85);transition:transform .2s;}
#pc-page-roleplay-hub .rph-give.dragover{border-color:var(--rph-a4);background:rgba(var(--rph-a2-rgb),.24);color:var(--rph-a5);transform:scale(1.015);}
#pc-page-roleplay-hub .rph-give.dragover .rph-give-ic{transform:scale(1.15);color:var(--rph-a5);}
@media(max-width:560px){#pc-page-roleplay-hub .rph-dropzones{grid-template-columns:1fr;}}
#pc-page-roleplay-hub .rph-trash{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;border-radius:14px;border:1px dashed rgba(248,113,113,.35);background:rgba(127,29,29,.12);color:rgba(252,165,165,.85);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:all .2s;}
#pc-page-roleplay-hub .rph-trash-ic{display:flex;color:rgba(252,165,165,.85);transition:transform .2s;}
#pc-page-roleplay-hub .rph-trash.dragover{border-color:#f87171;background:rgba(239,68,68,.22);color:#fecaca;transform:scale(1.015);}
#pc-page-roleplay-hub .rph-trash.dragover .rph-trash-ic{transform:scale(1.15) rotate(-8deg);color:#fecaca;}
#pc-page-roleplay-hub .rph-slotmenu{position:fixed;z-index:100070;min-width:206px;padding:8px;border-radius:15px;border:1px solid rgba(148,163,184,.22);background:rgba(9,14,25,.97);box-shadow:0 24px 52px rgba(0,0,0,.6);animation:rphSlotMenuIn .14s ease;}
@keyframes rphSlotMenuIn{from{opacity:0;transform:translateY(-6px) scale(.96);}to{opacity:1;transform:none;}}
#pc-page-roleplay-hub .rph-slotpop{position:fixed;inset:0;z-index:100069;display:flex;align-items:center;justify-content:center;padding:20px 16px calc(20px + env(safe-area-inset-bottom,0px));background:rgba(2,6,15,.62);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:contain;touch-action:none;animation:rphPopBd .18s ease;}
#pc-page-roleplay-hub .rph-slotmenu.pop{position:relative;left:auto;top:auto;z-index:auto;box-sizing:border-box;width:100%;max-width:360px;min-width:0;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;padding:16px;border-radius:20px;touch-action:auto;animation:rphPopIn .22s cubic-bezier(.22,1,.36,1);}
#pc-page-roleplay-hub .rph-slotmenu.pop .rph-slotmenu-head{gap:14px;padding:2px 2px 14px;margin-bottom:12px;}
#pc-page-roleplay-hub .rph-slotmenu.pop .rph-slotmenu-thumb{width:58px;height:58px;border-radius:15px;}
#pc-page-roleplay-hub .rph-slotmenu.pop .rph-slotmenu-thumb img{width:42px !important;height:42px !important;}
#pc-page-roleplay-hub .rph-slotmenu.pop .rph-slotmenu-thumb svg{width:36px;height:36px;}
#pc-page-roleplay-hub .rph-slotmenu.pop .rph-slotmenu-btn{padding:14px;font-size:.86rem;border-radius:13px;}
#pc-page-roleplay-hub .rph-slotmenu.pop .rph-slotmenu-btn + .rph-slotmenu-btn{margin-top:8px;}
#pc-page-roleplay-hub .rph-slotmenu.pop .rph-slotmenu-row{gap:8px;margin-top:8px;}
#pc-page-roleplay-hub .rph-slotmenu.pop .rph-slotmenu-row .rph-slotmenu-btn{margin-top:0;}
#pc-page-roleplay-hub .rph-slotmenu-close{display:block;width:100%;margin-top:10px;padding:12px;border-radius:13px;border:1px solid rgba(148,163,184,.16);background:transparent;color:rgba(203,213,225,.8);font-family:inherit;font-size:.8rem;font-weight:700;cursor:pointer;transition:background .18s,color .18s;}
#pc-page-roleplay-hub .rph-slotmenu-close:hover{background:rgba(148,163,184,.08);color:#fff;}
@keyframes rphPopBd{from{opacity:0;}to{opacity:1;}}
@keyframes rphPopIn{from{opacity:0;transform:translateY(10px) scale(.95);}to{opacity:1;transform:none;}}
#pc-page-roleplay-hub .rph-slotmenu-head{display:flex;align-items:center;gap:10px;padding:6px 8px 10px;border-bottom:1px solid rgba(148,163,184,.14);margin-bottom:7px;}
#pc-page-roleplay-hub .rph-slotmenu-btn{width:100%;display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:11px;border:1px solid rgba(148,163,184,.14);background:rgba(148,163,184,.07);color:#e2e8f0;font-family:inherit;font-size:.82rem;font-weight:800;letter-spacing:.04em;cursor:pointer;transition:all .18s;}
#pc-page-roleplay-hub .rph-slotmenu-btn + .rph-slotmenu-btn{margin-top:6px;}
#pc-page-roleplay-hub .rph-slotmenu-btn:hover{background:rgba(var(--rph-a2-rgb),.2);border-color:rgba(var(--rph-a4-rgb),.5);color:#fff;transform:translateX(2px);}
#pc-page-roleplay-hub .rph-slotmenu-btn.danger{color:#fca5a5;}
#pc-page-roleplay-hub .rph-slotmenu-btn.danger:hover{background:rgba(239,68,68,.18);border-color:rgba(248,113,113,.55);color:#fecaca;}
#pc-page-roleplay-hub .rph-slotmenu-btn.ok{color:#a7f3d0;border-color:rgba(52,211,153,.3);background:rgba(16,185,129,.12);}
#pc-page-roleplay-hub .rph-slotmenu-btn.ok:hover{background:rgba(16,185,129,.24);border-color:rgba(52,211,153,.6);color:#d1fae5;}
#pc-page-roleplay-hub .rph-mdtpass{display:flex;align-items:center;gap:12px;margin-top:18px;padding:14px 16px;border-radius:14px;border:1px solid rgba(52,211,153,.35);background:linear-gradient(135deg,rgba(16,185,129,.16),rgba(16,185,129,.06));color:#d1fae5;font-size:.84rem;line-height:1.5;}
#pc-page-roleplay-hub .rph-mdtpass svg{flex:none;width:22px;height:22px;color:#6ee7b7;}
#pc-page-roleplay-hub .rph-tab.rph-adminbtn{border:1px solid rgba(251,191,36,.45);color:#fcd34d;background:rgba(251,191,36,.07);}
#pc-page-roleplay-hub .rph-tab.rph-adminbtn:hover{background:rgba(251,191,36,.16);color:#fde68a;border-color:rgba(251,191,36,.7);}
#pc-page-roleplay-hub .rph-mobnav .rph-tab.rph-adminbtn{display:inline-flex;align-items:center;gap:8px;}
/* ── Factures ── */
#pc-page-roleplay-hub .rph-bill-box{margin-top:22px;padding:20px 22px;border-radius:18px;background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.95),rgba(var(--rph-b2-rgb),.95));border:1px solid rgba(148,163,184,.14);}
#pc-page-roleplay-hub .rph-bill-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;}
#pc-page-roleplay-hub .rph-bill-head .rph-btn{margin:0;}
#pc-page-roleplay-hub .rph-bill-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:800;color:#fff;}
#pc-page-roleplay-hub .rph-bill-title svg{color:var(--rph-a4);}
#pc-page-roleplay-hub .rph-bill-sub{margin-top:4px;font-size:.78rem;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .rph-bill-tabs{display:inline-flex;gap:4px;margin-top:14px;padding:4px;border-radius:12px;border:1px solid rgba(148,163,184,.16);background:rgba(var(--rph-b1-rgb),.55);}
#pc-page-roleplay-hub .rph-bill-tabs button{padding:8px 16px;border-radius:9px;border:none;background:none;color:rgba(148,163,184,.85);font-family:inherit;font-weight:800;font-size:.76rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;}
#pc-page-roleplay-hub .rph-bill-tabs button.on{background:rgba(var(--rph-a3-rgb),.25);color:#fff;box-shadow:inset 0 0 0 1px rgba(var(--rph-a4-rgb),.45);}
#pc-page-roleplay-hub .rph-bill-tabs button i{font-style:normal;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:.62rem;display:inline-flex;align-items:center;justify-content:center;}
#pc-page-roleplay-hub .rph-bill-list{margin-top:12px;display:flex;flex-direction:column;gap:8px;}
#pc-page-roleplay-hub .rph-bill-row{padding:13px 14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(148,163,184,.12);}
#pc-page-roleplay-hub .rph-bill-row.due{border-color:rgba(var(--rph-a4-rgb),.35);background:rgba(var(--rph-a3-rgb),.07);}
#pc-page-roleplay-hub .rph-bill-main{display:flex;align-items:flex-start;gap:12px;}
#pc-page-roleplay-hub .rph-bill-ic{flex-shrink:0;width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(var(--rph-a3-rgb),.15);color:var(--rph-a4);}
#pc-page-roleplay-hub .rph-bill-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
#pc-page-roleplay-hub .rph-bill-txt b{color:#fff;font-size:.88rem;}
#pc-page-roleplay-hub .rph-bill-txt small{font-size:.8rem;color:rgba(255,255,255,.78);}
#pc-page-roleplay-hub .rph-bill-txt em{font-style:normal;font-size:.7rem;color:rgba(148,163,184,.7);}
#pc-page-roleplay-hub .rph-bill-det{margin-top:5px;font-size:.74rem;line-height:1.45;color:rgba(255,255,255,.6);white-space:pre-wrap;}
#pc-page-roleplay-hub .rph-bill-amt{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0;}
#pc-page-roleplay-hub .rph-bill-amt b{font-size:1rem;color:#fff;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-bill-pill{font-size:.62rem;font-weight:800;padding:3px 8px;border-radius:99px;}
#pc-page-roleplay-hub .rph-bill-pill.wait{background:rgba(251,191,36,.14);color:#fcd34d;}
#pc-page-roleplay-hub .rph-bill-pill.ok{background:rgba(74,222,128,.14);color:#86efac;}
#pc-page-roleplay-hub .rph-bill-pill.bad{background:rgba(248,113,113,.14);color:#fca5a5;}
#pc-page-roleplay-hub .rph-bill-pill.mute{background:rgba(148,163,184,.14);color:rgba(203,213,225,.8);}
#pc-page-roleplay-hub .rph-bill-acts{display:flex;justify-content:flex-end;gap:8px;margin-top:12px;flex-wrap:wrap;}
#pc-page-roleplay-hub .rph-bill-acts .rph-btn,#pc-page-roleplay-hub .rph-bill-refuse .rph-btn{margin:0;padding:9px 14px;font-size:.76rem;}
#pc-page-roleplay-hub .rph-bill-refuse{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;}
#pc-page-roleplay-hub .rph-bill-refuse .rph-input{margin:0;flex:1;min-width:160px;}
#pc-page-roleplay-hub .rph-bill-empty{padding:18px;text-align:center;font-size:.8rem;color:rgba(148,163,184,.7);}
#pc-page-roleplay-hub .rph-bill-sep{margin:8px 2px 0;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(148,163,184,.6);}
#pc-page-roleplay-hub .rph-bill-from{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;}
#pc-page-roleplay-hub .rph-bill-from button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 13px;border-radius:12px;border:1px solid rgba(148,163,184,.18);background:rgba(var(--rph-b1-rgb),.55);color:#fff;font-family:inherit;text-align:left;cursor:pointer;transition:border-color .18s,background .18s;}
#pc-page-roleplay-hub .rph-bill-from button b{font-size:.84rem;}
#pc-page-roleplay-hub .rph-bill-from button span{font-size:.68rem;color:rgba(148,163,184,.8);}
#pc-page-roleplay-hub .rph-bill-from button.on{border-color:var(--rph-a4);background:rgba(var(--rph-a3-rgb),.16);}
#pc-page-roleplay-hub .rph-bill-from button:focus-visible,#pc-page-roleplay-hub .rph-bill-tabs button:focus-visible{outline:2px solid var(--rph-a4);outline-offset:2px;}
#pc-page-roleplay-hub .rph-bill-payee{margin-top:8px;font-size:.82rem;color:rgba(191,219,254,.85);}
#pc-page-roleplay-hub .rph-bill-payee:empty{display:none;}
#pc-page-roleplay-hub .rph-bill-payee b{color:#fff;}
#pc-page-roleplay-hub .rph-bill-payee span{color:rgba(148,163,184,.8);}
@media (max-width:560px){#pc-page-roleplay-hub .rph-bill-main{flex-wrap:wrap;}#pc-page-roleplay-hub .rph-bill-amt{flex-direction:row;align-items:center;width:100%;justify-content:space-between;}}
#pc-page-roleplay-hub .rph-due-box{margin-top:22px;}
#pc-page-roleplay-hub .rph-due-box .rph-bill-list{margin-top:14px;}
#pc-page-roleplay-hub .rph-due-total{font-size:1.25rem;font-weight:900;color:#f87171;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-due-row.due{border-color:rgba(248,113,113,.32);background:rgba(239,68,68,.06);}
#pc-page-roleplay-hub .rph-due-ic{background:rgba(239,68,68,.13);color:#fca5a5;}
#pc-page-roleplay-hub .rph-due-amt{color:#fca5a5 !important;}
#pc-page-roleplay-hub .rph-due-items{display:flex;flex-direction:column;gap:3px;margin:6px 0 4px;padding:8px 10px;border-radius:10px;background:rgba(0,0,0,.18);max-width:360px;}
#pc-page-roleplay-hub .rph-due-items span{display:flex;justify-content:space-between;gap:14px;font-size:.76rem;}
#pc-page-roleplay-hub .rph-due-items i{font-style:normal;color:rgba(255,255,255,.72);}
#pc-page-roleplay-hub .rph-due-items em{font-style:normal;color:#fff;font-weight:700;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-due-permit{margin-top:14px;padding:13px 14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(148,163,184,.12);}
#pc-page-roleplay-hub .rph-due-permit-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:.82rem;color:rgba(255,255,255,.75);}
#pc-page-roleplay-hub .rph-due-permit-top b{font-size:.95rem;}
#pc-page-roleplay-hub .rph-due-bar{margin-top:9px;height:7px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;}
#pc-page-roleplay-hub .rph-due-bar i{display:block;height:100%;border-radius:99px;transition:width .4s;}
#pc-page-roleplay-hub .rph-due-warn{margin-top:8px;font-size:.78rem;}
#pc-page-roleplay-hub .rph-due-paid{display:flex;flex-direction:column;margin-top:6px;}
#pc-page-roleplay-hub .rph-due-paidrow{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 2px;border-top:1px solid rgba(255,255,255,.07);font-size:.82rem;}
#pc-page-roleplay-hub .rph-due-paidrow:first-child{border-top:none;}
#pc-page-roleplay-hub .rph-due-paidlbl{flex:1;min-width:150px;color:rgba(255,255,255,.8);word-break:break-word;}
#pc-page-roleplay-hub .rph-due-paidr{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.7);white-space:nowrap;}
#pc-page-roleplay-hub .rph-due-paidr .rph-btn{margin:0;padding:6px 12px;font-size:.62rem;color:#f87171;}
#pc-page-roleplay-hub .rph-giftmode{display:flex;gap:6px;padding:4px;border-radius:12px;border:1px solid rgba(148,163,184,.16);background:rgba(var(--rph-b1-rgb),.55);}
#pc-page-roleplay-hub .rph-giftmode-btn{flex:1;padding:9px 10px;border-radius:9px;border:1px solid transparent;background:transparent;color:rgba(148,163,184,.8);font-family:inherit;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .18s;}
#pc-page-roleplay-hub .rph-giftmode-btn:hover{color:#e2e8f0;}
#pc-page-roleplay-hub .rph-giftmode-btn.on{background:rgba(var(--rph-a2-rgb),.24);border-color:rgba(var(--rph-a4-rgb),.45);color:#fff;}
@media(max-width:640px){
  #pc-page-roleplay-hub .rph-inv{padding:18px 16px;}
  #pc-page-roleplay-hub .rph-inv-head{flex-wrap:wrap;row-gap:10px;}
  #pc-page-roleplay-hub .rph-grid{gap:8px;}
}

#pc-page-roleplay-hub .rph-input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(148,163,184,.18);background:rgba(var(--rph-b1-rgb),.7);color:#fff;font-family:inherit;font-size:.95rem;margin-top:10px;transition:border-color .2s,box-shadow .2s;}
#pc-page-roleplay-hub .rph-input:focus{outline:none;border-color:var(--rph-a3);box-shadow:0 0 0 3px rgba(var(--rph-a3-rgb),.18);}
#pc-page-roleplay-hub .rph-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:12px;border:none;background:linear-gradient(135deg,var(--rph-a1),var(--rph-a2));color:#fff;font-family:inherit;font-weight:800;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:12px;}
#pc-page-roleplay-hub .rph-btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(var(--rph-a2-rgb),.4);}
#pc-page-roleplay-hub .rph-btn.ghost{background:transparent;box-shadow:inset 0 0 0 1px rgba(148,163,184,.25);}
#pc-page-roleplay-hub .rph-btn.ghost:hover{box-shadow:inset 0 0 0 1px rgba(var(--rph-a3-rgb),.5);}
#pc-page-roleplay-hub .rph-btn.danger{background:transparent;color:#fca5a5;box-shadow:inset 0 0 0 1px rgba(248,113,113,.35);}
#pc-page-roleplay-hub .rph-btn.danger:hover{color:#fff;background:linear-gradient(135deg,#b91c1c,#dc2626);box-shadow:0 12px 28px rgba(220,38,38,.35);}
#pc-page-roleplay-hub .rph-btn.danger.armed{color:#fff;background:linear-gradient(135deg,#b91c1c,#dc2626);box-shadow:0 0 0 1px rgba(248,113,113,.55);animation:rphArmPulse 1.1s ease-in-out infinite;}
@keyframes rphArmPulse{0%,100%{opacity:1;}50%{opacity:.72;}}
#pc-page-roleplay-hub .rph-act-btns{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
#pc-page-roleplay-hub .rph-msg{margin-top:12px;font-size:.82rem;display:none;padding:10px 14px;border-radius:12px;font-weight:600;}
#pc-page-roleplay-hub .rph-msg.err{display:block;background:rgba(239,68,68,.12);color:#fca5a5;border:1px solid rgba(239,68,68,.28);}
#pc-page-roleplay-hub .rph-msg.ok{display:block;background:rgba(52,211,153,.1);color:#6ee7b7;border:1px solid rgba(52,211,153,.28);}
#pc-page-roleplay-hub .rph-action-overlay{position:fixed;top:18px;left:50%;z-index:100050;width:min(420px,92vw);background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.97),rgba(var(--rph-b2-rgb),.97));border:1px solid rgba(var(--rph-a3-rgb),.35);border-radius:16px;padding:14px 18px 16px;box-shadow:0 20px 50px rgba(var(--rph-b1-rgb),.65);display:flex;flex-direction:column;gap:9px;cursor:grab;-webkit-user-select:none;user-select:none;opacity:0;pointer-events:none;transform:translate(-50%,-140%);transition:transform .35s cubic-bezier(.22,1,.36,1),opacity .3s;}
#pc-page-roleplay-hub .rph-action-overlay.dragging{cursor:grabbing;box-shadow:0 26px 60px rgba(var(--rph-b1-rgb),.8);}
#pc-page-roleplay-hub .rph-action-overlay.show{opacity:1;pointer-events:auto;transform:translate(-50%,0);}
#pc-page-roleplay-hub .rph-action-overlay:hover{border-color:rgba(var(--rph-a3-rgb),.6);}
#pc-page-roleplay-hub .rph-action-overlay.ready{border-color:rgba(74,222,128,.55);}
#pc-page-roleplay-hub .rph-action-overlay .rph-braq-ov-top{display:flex;align-items:center;justify-content:space-between;gap:10px;}
#pc-page-roleplay-hub .rph-action-overlay .rph-braq-ov-title{display:flex;align-items:center;gap:8px;color:#fff;font-weight:800;font-size:.82rem;min-width:0;}
#pc-page-roleplay-hub .rph-action-overlay .rph-braq-ov-title svg{flex:0 0 auto;color:var(--rph-a4);}
#pc-page-roleplay-hub .rph-action-overlay .rph-braq-ov-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#pc-page-roleplay-hub .rph-action-overlay.ready .rph-braq-ov-title svg{color:#4ade80;}
#pc-page-roleplay-hub .rph-action-overlay .rph-braq-ov-cd{flex:0 0 auto;color:var(--rph-a4);font-weight:800;font-size:.82rem;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .rph-action-overlay.ready .rph-braq-ov-cd{color:#4ade80;}
#pc-page-roleplay-hub .rph-action-overlay .rph-weightbar{margin-top:0;}
#pc-page-roleplay-hub .rph-action-overlay .rph-braq-ov-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.7rem;font-weight:700;}
#pc-page-roleplay-hub .rph-action-overlay .rph-braq-ov-pct{color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .rph-action-overlay .rph-braq-ov-hint{color:rgba(148,163,184,.65);letter-spacing:.03em;}
#pc-page-roleplay-hub .rph-action-overlay.ready .rph-braq-ov-hint{color:#4ade80;}
#pc-page-roleplay-hub .rph-action-overlay .rph-ov-stop{flex:0 0 auto;border:none;background:transparent;color:#fca5a5;font-family:inherit;font-weight:800;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;padding:5px 11px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(248,113,113,.35);cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;}
#pc-page-roleplay-hub .rph-action-overlay .rph-ov-stop:hover{background:linear-gradient(135deg,#b91c1c,#dc2626);color:#fff;box-shadow:0 8px 20px rgba(220,38,38,.35);}
#pc-page-roleplay-hub .rph-action-overlay .rph-ov-stop.armed{background:linear-gradient(135deg,#b91c1c,#dc2626);color:#fff;animation:rphArmPulse 1.1s ease-in-out infinite;}
#pc-page-roleplay-hub .rph-action-overlay .rph-ov-stop[disabled]{opacity:.5;cursor:not-allowed;}
#pc-page-roleplay-hub .rph-action-overlay.ready .rph-ov-stop{display:none;}
@media(max-width:640px){#pc-page-roleplay-hub .rph-action-overlay{top:10px;width:94vw;padding:12px 14px 14px;}}
#pc-page-roleplay-hub .rph-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border:1px solid rgba(148,163,184,.12);border-radius:14px;background:rgba(var(--rph-b3-rgb),.7);font-size:.88rem;font-weight:600;color:rgba(226,232,240,.9);margin-top:10px;transition:border-color .2s,transform .2s;animation:rphFadeUp .4s both;}
#pc-page-roleplay-hub .rph-row:hover{border-color:rgba(var(--rph-a3-rgb),.35);transform:translateX(3px);}

#pc-page-roleplay-hub .rph-log-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:34px;animation:rphFadeUp .45s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-log-head-label{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(148,163,184,.7);font-weight:800;}
#pc-page-roleplay-hub .rph-log-toggle{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:999px;border:1px solid rgba(148,163,184,.2);background:rgba(var(--rph-b3-rgb),.75);color:rgba(226,232,240,.85);font-family:inherit;font-weight:700;font-size:.72rem;letter-spacing:.04em;cursor:pointer;transition:border-color .25s,background .25s,transform .2s,color .25s,box-shadow .25s;}
#pc-page-roleplay-hub .rph-log-toggle:hover{border-color:rgba(var(--rph-a3-rgb),.5);background:rgba(var(--rph-t1-rgb),.4);color:#fff;transform:translateY(-2px);box-shadow:0 10px 22px rgba(var(--rph-b1-rgb),.5);}
#pc-page-roleplay-hub .rph-log-toggle:active{transform:translateY(0) scale(.95);}
#pc-page-roleplay-hub .rph-log-toggle svg{width:13px;height:13px;flex-shrink:0;transition:transform .4s cubic-bezier(.34,1.56,.64,1);}
#pc-page-roleplay-hub .rph-log-toggle.collapsed{border-color:rgba(var(--rph-a3-rgb),.35);background:rgba(var(--rph-a2-rgb),.14);color:var(--rph-a5);}
#pc-page-roleplay-hub .rph-log-toggle.collapsed svg{transform:rotate(-90deg);}
#pc-page-roleplay-hub .rph-log-wrap{display:grid;grid-template-rows:1fr;transition:grid-template-rows .5s cubic-bezier(.22,1,.36,1),opacity .4s ease,margin-top .4s ease,filter .4s ease;opacity:1;filter:blur(0);margin-top:2px;}
#pc-page-roleplay-hub .rph-log-wrap > div{overflow:hidden;min-height:0;}
#pc-page-roleplay-hub .rph-log-wrap.collapsed{grid-template-rows:0fr;opacity:0;margin-top:0;filter:blur(2px);pointer-events:none;}
#pc-page-roleplay-hub .rph-loading{padding:60px;text-align:center;color:rgba(148,163,184,.7);font-size:.9rem;font-weight:600;}
#pc-page-roleplay-hub .rph-mobbar{display:none;align-items:center;gap:10px;padding:10px 12px;padding-top:calc(10px + env(safe-area-inset-top,0px));background:var(--rph-b2);border-bottom:1px solid rgba(148,163,184,.12);}
#pc-page-roleplay-hub .rph-mobbar-btn{display:inline-flex;align-items:center;gap:7px;flex:none;padding:9px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.04);color:rgba(226,232,240,.85);font-family:inherit;font-weight:800;font-size:.72rem;letter-spacing:.02em;cursor:pointer;transition:background .2s,border-color .2s,color .2s;}
#pc-page-roleplay-hub .rph-mobbar-btn:hover,#pc-page-roleplay-hub .rph-mobbar-btn:active{background:rgba(var(--rph-a2-rgb),.2);border-color:rgba(var(--rph-a4-rgb),.5);color:#fff;}
#pc-page-roleplay-hub .rph-mobbar-mid{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;line-height:1.2;}
#pc-page-roleplay-hub .rph-mobbar-mid b{font-size:.8rem;font-weight:900;color:#fff;}
#pc-page-roleplay-hub .rph-mobbar-mid span{max-width:100%;font-size:.66rem;font-weight:700;color:rgba(148,163,184,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media(max-width:480px){#pc-page-roleplay-hub .rph-mobbar-btn span{display:none;}#pc-page-roleplay-hub .rph-mobbar-btn{padding:10px;}}
@media(max-width:900px){
  #pc-page-roleplay-hub .rph-side{display:none;}
  #pc-page-roleplay-hub .rph-mobbar{display:flex;}
  #pc-page-roleplay-hub .rph-mobnav{display:flex;}
  #pc-page-roleplay-hub .rph-wrap{padding:26px 20px 80px;}
  #pc-page-roleplay-hub .rph-title{font-size:1.6rem;}
}
@keyframes rphFadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
/* ═══════════ Annonce banderole du panel RP (aussi utilisée pour l'aperçu du panel admin) ═══════════ */
.rph-ann{--ann:var(--rph-a3-rgb);--ann-c:var(--rph-a4);position:relative;overflow:hidden;border-bottom:1px solid rgba(var(--ann),.35);background:linear-gradient(100deg,rgba(var(--ann),.22),rgba(var(--ann),.08) 45%,rgba(var(--rph-b2-rgb),.85) 100%),var(--rph-b2);font-family:inherit;}
.rph-ann[hidden]{display:none!important;}
.rph-ann.lvl-important{--ann:245,158,11;--ann-c:#fbbf24;}
.rph-ann.lvl-urgent{--ann:239,68,68;--ann-c:#f87171;}
.rph-ann::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--ann-c),rgba(var(--ann),.35));}
.rph-ann::after{content:'';position:absolute;top:0;bottom:0;left:-40%;width:35%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.07),transparent);transform:skewX(-18deg);animation:rphAnnSheen 1.6s .3s cubic-bezier(.22,1,.36,1) both;pointer-events:none;}
.rph-ann.in{animation:rphAnnIn .55s cubic-bezier(.22,1,.36,1) both;}
@keyframes rphAnnIn{from{opacity:0;transform:translateY(-100%);}to{opacity:1;transform:translateY(0);}}
@keyframes rphAnnSheen{from{left:-40%;}to{left:120%;}}
.rph-ann-in{position:relative;z-index:1;display:flex;align-items:flex-start;gap:16px;max-width:1120px;margin:0 auto;padding:16px 40px;}
.rph-ann-ic{position:relative;flex:none;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;color:var(--ann-c);background:rgba(var(--ann),.16);box-shadow:inset 0 0 0 1px rgba(var(--ann),.4);}
.rph-ann.lvl-urgent .rph-ann-ic::after{content:'';position:absolute;inset:-1px;border-radius:inherit;box-shadow:0 0 0 0 rgba(var(--ann),.55);animation:rphAnnPulse 1.8s ease-out infinite;}
@keyframes rphAnnPulse{0%{box-shadow:0 0 0 0 rgba(var(--ann),.55);}100%{box-shadow:0 0 0 12px rgba(var(--ann),0);}}
.rph-ann-txt{flex:1;min-width:0;}
.rph-ann-kick{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.62rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:rgba(203,213,225,.7);}
.rph-ann-kick b{color:var(--ann-c);font-weight:900;}
.rph-ann-kick i{width:3px;height:3px;border-radius:50%;background:rgba(148,163,184,.55);}
.rph-ann-title{margin-top:4px;font-size:1.02rem;font-weight:900;letter-spacing:-.01em;color:#fff;line-height:1.3;overflow-wrap:anywhere;}
.rph-ann-msg{margin-top:4px;font-size:.84rem;font-weight:600;line-height:1.55;color:rgba(226,232,240,.8);white-space:pre-line;overflow-wrap:anywhere;}
.rph-ann-msg:empty{display:none;}
.rph-ann-x{flex:none;width:34px;height:34px;margin-top:5px;border:none;border-radius:11px;display:grid;place-items:center;cursor:pointer;color:rgba(203,213,225,.75);background:rgba(var(--rph-b1-rgb),.45);box-shadow:inset 0 0 0 1px rgba(148,163,184,.18);transition:color .2s,background .2s,box-shadow .2s;}
.rph-ann-x:hover{color:#fff;background:rgba(var(--ann),.25);box-shadow:inset 0 0 0 1px rgba(var(--ann),.5);}
.rph-ann-x:focus-visible{outline:2px solid var(--ann-c);outline-offset:2px;}
#pc-page-roleplay-hub .rph-ann-in{padding-right:84px;}
@media(max-width:900px){
  #pc-page-roleplay-hub .rph-ann-in{padding:13px 16px;gap:12px;}
  .rph-ann-ic{width:38px;height:38px;border-radius:12px;}
  .rph-ann-title{font-size:.94rem;}
  .rph-ann-msg{font-size:.8rem;}
}
@media(prefers-reduced-motion:reduce){.rph-ann.in,.rph-ann::after,.rph-ann.lvl-urgent .rph-ann-ic::after{animation:none;}}
:root[data-rph-motion="0"] .rph-ann.in,:root[data-rph-motion="0"] .rph-ann::after,:root[data-rph-motion="0"] .rph-ann .rph-ann-ic::after{animation:none;}
@keyframes rphShimmer{0%{background-position:-200% 0;}100%{background-position:200% 0;}}
@keyframes rphSlideIn{from{opacity:0;transform:translateX(-10px);}to{opacity:1;transform:translateX(0);}}

#pc-page-roleplay-hub .rph-notif-fab{position:fixed;top:16px;right:16px;z-index:40;flex:none;width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,var(--rph-a1),var(--rph-a2));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(var(--rph-a2-rgb),.4);transition:transform .2s,box-shadow .2s;}
#pc-page-roleplay-hub .rph-notif-fab:hover{background:linear-gradient(135deg,var(--rph-a2),var(--rph-a3));transform:translateY(-2px);box-shadow:0 10px 24px rgba(var(--rph-a2-rgb),.5);}
#pc-page-roleplay-hub .rph-notif-fab svg{width:19px;height:19px;}
#pc-page-roleplay-hub .rph-notif-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;background:#ef4444;color:#fff;border:2px solid var(--rph-b1);border-radius:10px;font:700 10.5px/16px 'Montserrat',system-ui;display:none;align-items:center;justify-content:center;animation:rphArmPulse 1.6s ease-in-out infinite;}
#pc-page-roleplay-hub .rph-notif-badge.on{display:flex;}
@media(max-width:900px){#pc-page-roleplay-hub .rph-notif-fab{top:calc(13px + env(safe-area-inset-top,0px));right:12px;width:36px;height:36px;}#pc-page-roleplay-hub .rph-mobbar{padding-right:60px;}#pc-page-roleplay-hub .rph-notif-fab svg{width:17px;height:17px;}}
#pc-page-roleplay-hub .rph-notif-overlay{position:fixed;inset:0;z-index:9999;background:rgba(5,8,20,.75);backdrop-filter:blur(6px);display:none;align-items:flex-start;justify-content:flex-end;padding:70px 18px 18px;}
#pc-page-roleplay-hub .rph-notif-overlay.open{display:flex;}
#pc-page-roleplay-hub .rph-notif-panel{width:min(400px,100%);max-height:75vh;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--rph-b3),var(--rph-b4));color:#e5edff;border:1px solid rgba(var(--rph-a2-rgb),.35);border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.6);overflow:hidden;font-family:'Montserrat',system-ui,sans-serif;animation:rphFadeUp .22s cubic-bezier(.22,1,.36,1) both;}
#pc-page-roleplay-hub .rph-notif-head{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.08);}
#pc-page-roleplay-hub .rph-notif-head h3{margin:0;font-size:1rem;font-weight:700;flex:1;}
#pc-page-roleplay-hub .rph-notif-head button{background:transparent;border:1px solid rgba(255,255,255,.15);color:#e5edff;padding:5px 10px;border-radius:8px;font:600 .74rem system-ui;cursor:pointer;white-space:nowrap;}
#pc-page-roleplay-hub .rph-notif-head button:hover{background:rgba(255,255,255,.08);}
#pc-page-roleplay-hub .rph-notif-list{flex:1;overflow:auto;padding:10px;}
#pc-page-roleplay-hub .rph-notif-empty{padding:50px 18px;text-align:center;color:#93a4c9;font-size:.88rem;}
#pc-page-roleplay-hub .rph-notif-item{border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:12px 14px;margin-bottom:8px;background:rgba(255,255,255,.03);cursor:pointer;transition:background .15s,border-color .15s;}
#pc-page-roleplay-hub .rph-notif-item:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);}
#pc-page-roleplay-hub .rph-notif-item.unread{border-left:3px solid var(--rph-a4);background:rgba(var(--rph-a2-rgb),.08);}
#pc-page-roleplay-hub .rph-notif-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;}
#pc-page-roleplay-hub .rph-notif-ic{flex:none;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.95rem;}
#pc-page-roleplay-hub .rph-notif-title{font-weight:700;font-size:.88rem;flex:1;}
#pc-page-roleplay-hub .rph-notif-time{font:500 .7rem system-ui;color:#93a4c9;white-space:nowrap;}
#pc-page-roleplay-hub .rph-notif-msg{color:#c2cee7;font-size:.8rem;line-height:1.45;padding-left:30px;}
#pc-page-roleplay-hub .rph-notif-kill{flex:none;width:20px;height:20px;border-radius:50%;border:none;background:rgba(255,255,255,.08);color:#93a4c9;font:700 13px/1 system-ui;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;}
#pc-page-roleplay-hub .rph-notif-kill:hover{background:#ef4444;color:#fff;}

/* ───── bloc sans id ───── */
/* ═══ Tutoriel du panel RP ═══ */
.rtu-root{position:fixed;inset:0;z-index:2147483000;pointer-events:none;font-family:Montserrat,system-ui,-apple-system,Segoe UI,sans-serif;color:#e2e8f0;animation:rtuIn .3s ease both;}
.rtu-root.out{animation:rtuOut .25s ease both;}
@keyframes rtuIn{from{opacity:0}to{opacity:1}}
@keyframes rtuOut{from{opacity:1}to{opacity:0}}
.rtu-veil{position:fixed;left:0;top:0;width:0;height:0;background:rgba(2,6,18,.66);-webkit-backdrop-filter:blur(7px) saturate(.75);backdrop-filter:blur(7px) saturate(.75);transition:left .38s cubic-bezier(.22,1,.36,1),top .38s cubic-bezier(.22,1,.36,1),width .38s cubic-bezier(.22,1,.36,1),height .38s cubic-bezier(.22,1,.36,1);}
.rtu-veil,.rtu-block,.rtu-card{pointer-events:auto;}
.rtu-simtag{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 10px;padding:9px 12px;border-radius:12px;background:repeating-linear-gradient(135deg,rgba(245,158,11,.14) 0 10px,rgba(245,158,11,.07) 10px 20px);border:1px dashed rgba(245,158,11,.55);font-size:.74rem;font-weight:700;color:#fde68a;line-height:1.4;}
.rtu-simtag span{flex:none;font-size:.6rem;font-weight:900;letter-spacing:.16em;padding:4px 8px;border-radius:999px;background:#f59e0b;color:#1c1003;}
.rtu-simnote{margin-top:10px;font-size:.78rem;line-height:1.55;color:rgba(226,232,240,.75);}
.rtu-proof-demo{margin:4px auto 0;max-width:460px;max-height:none;overflow:visible;animation:none;box-shadow:0 14px 40px rgba(0,0,0,.45);padding:20px 20px 18px;}
.rtu-proof-demo .rph-proof-drop{cursor:default;}
.rtu-proof-demo .rph-proof-acts button{cursor:default;}
.rtu-proof-demo .rph-proof-acts button:hover{transform:none;filter:none;}
.rph-proof-drop .rtu-proof-cap{position:absolute;left:10px;bottom:10px;padding:5px 10px;border-radius:9px;background:rgba(3,6,14,.72);backdrop-filter:blur(6px);font-size:.7rem;font-weight:800;color:#fff;}
.rtu-simblock{margin-bottom:14px;}
.rtu-root,.rtu-root *{cursor:none!important;}
.rtu-block{position:fixed;display:none;cursor:not-allowed;background:transparent;transition:all .38s cubic-bezier(.22,1,.36,1);}
.rtu-ring{position:fixed;pointer-events:none;border-radius:14px;box-shadow:0 0 0 2px #60a5fa,0 0 0 7px rgba(96,165,250,.18),0 0 46px rgba(96,165,250,.45);transition:left .38s cubic-bezier(.22,1,.36,1),top .38s cubic-bezier(.22,1,.36,1),width .38s cubic-bezier(.22,1,.36,1),height .38s cubic-bezier(.22,1,.36,1),opacity .25s;animation:rtuPulse 2s ease-in-out infinite;}
@keyframes rtuPulse{0%,100%{box-shadow:0 0 0 2px #60a5fa,0 0 0 7px rgba(96,165,250,.18),0 0 46px rgba(96,165,250,.45);}50%{box-shadow:0 0 0 2px #93c5fd,0 0 0 12px rgba(96,165,250,.08),0 0 64px rgba(96,165,250,.6);}}
.rtu-ring i{position:absolute;width:18px;height:18px;border:3px solid #bfdbfe;filter:drop-shadow(0 0 6px rgba(96,165,250,.9));}
.rtu-ring .c1{left:-7px;top:-7px;border-right:0;border-bottom:0;border-top-left-radius:9px;}
.rtu-ring .c2{right:-7px;top:-7px;border-left:0;border-bottom:0;border-top-right-radius:9px;}
.rtu-ring .c3{left:-7px;bottom:-7px;border-right:0;border-top:0;border-bottom-left-radius:9px;}
.rtu-ring .c4{right:-7px;bottom:-7px;border-left:0;border-top:0;border-bottom-right-radius:9px;}
.rtu-arrow{position:fixed;left:0;top:0;pointer-events:none;overflow:visible;transition:opacity .25s;}
.rtu-arrow-line{fill:none;stroke:#60a5fa;stroke-width:3;stroke-linecap:round;stroke-dasharray:9 8;animation:rtuDash .9s linear infinite;}
.rtu-arrow-glow{fill:none;stroke:rgba(96,165,250,.25);stroke-width:10;stroke-linecap:round;filter:blur(3px);}
@keyframes rtuDash{to{stroke-dashoffset:-17}}
.rtu-card{position:fixed;left:50%;top:50%;width:min(380px,calc(100vw - 24px));box-sizing:border-box;padding:16px 18px 14px;border-radius:18px;
  background:linear-gradient(160deg,rgba(17,27,51,.97),rgba(8,13,27,.98));border:1px solid rgba(96,165,250,.38);
  box-shadow:0 30px 80px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.04) inset,0 0 40px rgba(59,130,246,.18);
  transition:left .38s cubic-bezier(.22,1,.36,1),top .38s cubic-bezier(.22,1,.36,1);}
.rtu-card::before{content:'';position:absolute;left:18px;right:18px;top:0;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#60a5fa,transparent);}
.rtu-card.pop{animation:rtuPop .4s cubic-bezier(.22,1.3,.36,1) both;}
@keyframes rtuPop{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
.rtu-top{display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.rtu-chip{font-size:.6rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:rgba(59,130,246,.2);color:#bfdbfe;box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}
.rtu-count{font-size:.66rem;font-weight:800;letter-spacing:.06em;color:rgba(148,163,184,.8);}
.rtu-x{margin-left:auto;width:28px;height:28px;border-radius:50%;border:1px solid rgba(148,163,184,.25);background:rgba(255,255,255,.04);color:#cbd5e1;font-size:.8rem;cursor:pointer;transition:background .2s,color .2s;}
.rtu-x:hover{background:#ef4444;color:#fff;border-color:transparent;}
.rtu-title{font-size:1.12rem;font-weight:900;color:#fff;letter-spacing:.01em;line-height:1.25;margin-bottom:8px;}
.rtu-text{font-size:.84rem;line-height:1.62;color:rgba(226,232,240,.88);max-height:min(46vh,340px);overflow-y:auto;}
.rtu-text b{color:#fff;}
.rtu-note{display:block;font-size:.76rem;color:rgba(148,163,184,.85);}
.rtu-hint{display:flex;align-items:center;gap:8px;margin-top:12px;padding:9px 12px;border-radius:12px;background:rgba(250,204,21,.1);border:1px solid rgba(250,204,21,.3);font-size:.76rem;font-weight:800;color:#fde68a;}
.rtu-hint-dot{width:9px;height:9px;border-radius:50%;background:#facc15;box-shadow:0 0 0 0 rgba(250,204,21,.6);animation:rtuPing 1.4s infinite;}
@keyframes rtuPing{0%{box-shadow:0 0 0 0 rgba(250,204,21,.6)}100%{box-shadow:0 0 0 10px rgba(250,204,21,0)}}
.rtu-chapters{display:flex;gap:4px;margin-top:14px;}
.rtu-chapters i{flex:1;height:4px;border-radius:4px;background:rgba(148,163,184,.2);transition:background .3s;}
.rtu-chapters i.done{background:rgba(96,165,250,.55);}
.rtu-chapters i.on{background:linear-gradient(90deg,#3b82f6,#93c5fd);box-shadow:0 0 10px rgba(96,165,250,.6);}
.rtu-actions{display:flex;align-items:center;gap:8px;margin-top:14px;}
.rtu-btn{padding:9px 14px;border-radius:11px;border:1px solid transparent;font-family:inherit;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .15s,background .2s,border-color .2s,box-shadow .2s;}
.rtu-btn:active{transform:scale(.96);}
.rph-gender-pick{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;}
.rph-gender-pick button{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 12px;border-radius:16px;border:1px solid rgba(148,163,184,.25);background:rgba(255,255,255,.04);color:#cbd5e1;font-family:inherit;cursor:pointer;transition:border-color .18s,background .18s,color .18s,transform .18s;}
.rph-gender-pick button b{font-size:.95rem;font-weight:800;color:#fff;}
.rph-gender-pick button:hover{border-color:rgba(96,165,250,.65);background:rgba(59,130,246,.12);color:#93c5fd;transform:translateY(-2px);}
.rph-gender-pick button.on{border-color:#60a5fa;background:rgba(59,130,246,.22);color:#bfdbfe;}
.rph-gender-pick button:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.rph-gender-pick button[disabled]{cursor:default;transform:none;}
.rph-gender-pick button[disabled]:not(.on){opacity:.45;}
.rph-gender-err{min-height:1em;margin-top:10px;font-size:.78rem;font-weight:700;color:#fca5a5;text-align:center;}
.rph-gender-err:empty{display:none;}
.rtu-btn.ghost{background:transparent;border-color:rgba(148,163,184,.28);color:#cbd5e1;}
.rtu-btn.ghost:hover{border-color:rgba(148,163,184,.55);color:#fff;}
.rtu-btn.skip{background:rgba(245,158,11,.14);border-color:rgba(245,158,11,.45);color:#fcd34d;}
.rtu-btn.skip:hover{background:rgba(245,158,11,.26);}
.rtu-btn.primary{background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;box-shadow:0 8px 20px rgba(37,99,235,.35);}
.rtu-btn.primary:hover{box-shadow:0 10px 26px rgba(37,99,235,.5);}
@media (max-width:560px){.rtu-card{padding:14px;}.rtu-text{font-size:.8rem;max-height:34vh;}.rtu-btn{padding:8px 11px;font-size:.64rem;}}
@media (prefers-reduced-motion:reduce){.rtu-ring,.rtu-arrow-line,.rtu-hint-dot{animation:none;}}

/* ───── bloc sans id ───── */
#pc-page-roleplay-hub a.rph-mdt{text-decoration:none;}
#pc-page-roleplay-hub a.rph-mdt .rph-mdt-dot{flex:none;width:18px;height:18px;border-radius:6px;display:grid;place-items:center;background:var(--mdt);box-shadow:0 0 12px var(--mdt);}
#pc-page-roleplay-hub a.rph-mdt .rph-mdt-dot svg{width:11px;height:11px;color:#fff;}
#pc-page-roleplay-hub a.rph-mdt .rph-mdt-go{margin-left:auto;opacity:.45;font-size:.8rem;}
#pc-page-roleplay-hub a.rph-mdt:hover{box-shadow:inset 0 0 0 1px var(--mdt);}
#pc-page-roleplay-hub .rph-mobnav a.rph-mdt{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--mdt);}

/* ───── bloc sans id ───── */
#pc-admin{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;background:rgba(5,8,14,.82);backdrop-filter:blur(8px);font-family:'Montserrat',sans-serif;cursor:auto;}
#pc-admin.open{display:flex;}
#pc-admin *{cursor:auto;box-sizing:border-box;}
#pc-admin a,#pc-admin button{cursor:pointer;}
.pca-box{width:min(860px,94vw);max-height:90vh;overflow-y:auto;background:#0E1422;border:1px solid rgba(59,130,246,.35);border-radius:16px;box-shadow:0 40px 120px rgba(0,0,0,.6);padding:0;}
.pca-head{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;background:#0E1422;z-index:2;}
.pca-head h3{font-size:1rem;letter-spacing:.18em;text-transform:uppercase;color:#fff;display:flex;align-items:center;gap:10px;}
.pca-head h3 .pca-badge{width:28px;height:28px;flex:0 0 28px;border-radius:7px;background:linear-gradient(135deg,#1a3a6e,#2563eb);display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:900;}
#pca-title{white-space:nowrap;}
@media(max-width:520px){.pca-head h3{font-size:.82rem;letter-spacing:.12em;}}
.pca-close{background:none;border:none;color:rgba(255,255,255,.6);font-size:1.4rem;line-height:1;padding:4px 8px;}
.pca-close:hover{color:#fff;}
.pca-body{padding:24px;}
.pca-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px;}
.pca-tab{padding:9px 18px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:transparent;color:rgba(255,255,255,.65);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:all .2s;}
.pca-tab.active{background:#2563eb;border-color:#2563eb;color:#fff;}
.pca-pane{display:none;}
.pca-pane.active{display:block;}
.pca-label{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);margin:14px 0 6px;}
.pca-input,.pca-select{width:100%;padding:12px 14px;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:#101a2e;color:#fff;font-family:inherit;font-size:.9rem;}
@media(max-width:640px){.pca-input,.pca-select{font-size:16px;}}
.pca-input:focus,.pca-select:focus{outline:none;border-color:#2563eb;}
.pca-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:8px;border:none;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;font-weight:600;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;transition:transform .2s,box-shadow .2s;margin-top:14px;}
.pca-btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(37,99,235,.4);}
.pca-btn.danger{background:linear-gradient(135deg,#b91c1c,#ef4444);}
.pca-btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.2);}
.pca-btn:disabled{opacity:.5;pointer-events:none;}
.pca-msg{margin-top:12px;font-size:.82rem;padding:10px 14px;border-radius:8px;display:none;}
.pca-msg.err{display:block;background:rgba(239,68,68,.12);color:#fca5a5;border:1px solid rgba(239,68,68,.3);}
.pca-msg.ok{display:block;background:rgba(52,211,153,.1);color:#6ee7b7;border:1px solid rgba(52,211,153,.3);}
.pca-list{display:flex;flex-direction:column;gap:8px;margin-top:8px;}
.pca-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#101a2e;font-size:.88rem;color:rgba(255,255,255,.85);}
.pca-row .del{background:none;border:none;color:#f87171;font-size:.78rem;font-weight:600;letter-spacing:.06em;}
.pca-row .del:hover{color:#ef4444;text-decoration:underline;}
.pca-row .faq-edit{background:none;border:none;color:#60a5fa;font-size:.78rem;font-weight:600;letter-spacing:.06em;cursor:pointer;}
.pca-row .faq-edit:hover{color:#93c5fd;text-decoration:underline;}
.pca-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-top:10px;}
.pca-thumb{position:relative;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.1);aspect-ratio:16/10;background:#000;}
.pca-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.pca-thumb .del{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:6px;border:none;background:rgba(0,0,0,.65);color:#f87171;font-size:.85rem;line-height:1;}
.pca-thumb .del:hover{background:#b91c1c;color:#fff;}
.pca-hr{border:none;border-top:1px solid rgba(255,255,255,.08);margin:24px 0;}
.pca-flex{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;}
.pca-flex>div{flex:1;min-width:180px;}
.pca-note{font-size:.74rem;color:rgba(255,255,255,.4);margin-top:8px;}
/* ── Visuel d'un objet RP + catalogue de logos ── */
.pca-vis{display:flex;align-items:center;gap:16px;padding:14px;border-radius:12px;background:#101a2e;border:1px solid rgba(255,255,255,.08);}
.pca-vis-tile{flex:none;width:76px;height:76px;border-radius:12px;display:grid;place-items:center;background:radial-gradient(120% 120% at 30% 20%,rgba(59,130,246,.22),rgba(8,13,26,.9));box-shadow:inset 0 0 0 1px rgba(148,163,184,.18);color:#fff;overflow:hidden;}
.pca-vis-tile svg{width:52px;height:52px;display:block;}
.pca-vis-tile img{width:60px;height:60px;object-fit:contain;display:block;}
.pca-vis-tile .ph{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.35);text-align:center;padding:6px;}
.pca-vis-side{min-width:0;flex:1;}
.pca-vis-name{font-weight:700;color:#fff;font-size:.92rem;}
.pca-vis-name small{display:block;font-weight:500;font-size:.72rem;color:rgba(255,255,255,.45);margin-top:2px;}
.pca-vis-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.pca-vis-actions .pca-btn{margin:0;padding:9px 14px;font-size:.7rem;cursor:pointer;}
.pca-vis-actions label.pca-btn:focus-visible,.pca-vis-actions .pca-btn:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.pca-vis-actions [hidden]{display:none!important;}
#pca-logo-cat{position:fixed;inset:0;z-index:100002;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(3,6,12,.72);backdrop-filter:blur(6px);font-family:'Montserrat',sans-serif;}
#pca-logo-cat.open{display:flex;animation:plcIn .22s ease both;}
@keyframes plcIn{from{opacity:0;}to{opacity:1;}}
.plc-box{width:min(920px,100%);height:min(760px,100%);display:flex;flex-direction:column;border-radius:18px;background:#0b1326;border:1px solid rgba(148,163,184,.14);box-shadow:0 30px 80px rgba(0,0,0,.6);overflow:hidden;animation:plcBox .28s cubic-bezier(.2,.9,.3,1) both;}
@keyframes plcBox{from{transform:translateY(14px) scale(.98);}to{transform:none;}}
.plc-head{display:flex;align-items:center;gap:14px;padding:18px 20px 14px;}
.plc-head h3{margin:0;font-size:1.05rem;font-weight:800;color:#fff;flex:1;}
.plc-head h3 small{display:block;font-size:.72rem;font-weight:500;color:rgba(255,255,255,.45);margin-top:3px;}
.plc-x{flex:none;width:36px;height:36px;border-radius:10px;border:none;background:rgba(255,255,255,.06);color:#fff;font-size:1.1rem;cursor:pointer;display:grid;place-items:center;}
.plc-x:hover{background:rgba(255,255,255,.12);}
.plc-search{position:relative;margin:0 20px;}
.plc-search svg{position:absolute;left:13px;top:50%;width:17px;height:17px;transform:translateY(-50%);color:rgba(255,255,255,.4);pointer-events:none;}
.plc-search input{width:100%;box-sizing:border-box;padding:12px 14px 12px 40px;border-radius:11px;border:1px solid rgba(148,163,184,.2);background:#070d1b;color:#fff;font:600 .9rem 'Montserrat',sans-serif;outline:none;}
.plc-search input:focus{border-color:rgba(96,165,250,.7);box-shadow:0 0 0 3px rgba(59,130,246,.18);}
.plc-cats{display:flex;gap:6px;overflow-x:auto;padding:12px 20px;scrollbar-width:thin;}
.plc-cat{flex:none;padding:7px 12px;border-radius:999px;border:1px solid rgba(148,163,184,.2);background:transparent;color:rgba(226,232,240,.75);font:600 .74rem 'Montserrat',sans-serif;cursor:pointer;white-space:nowrap;}
.plc-cat span{opacity:.5;margin-left:5px;font-weight:500;}
.plc-cat:hover{color:#fff;border-color:rgba(148,163,184,.4);}
.plc-cat[aria-pressed="true"]{background:linear-gradient(135deg,#1d4ed8,#3b82f6);border-color:transparent;color:#fff;}
.plc-cat[aria-pressed="true"] span{opacity:.8;}
.plc-grid{flex:1;overflow-y:auto;padding:4px 20px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;align-content:start;}
.plc-sec{grid-column:1/-1;font-size:.7rem;font-weight:700;letter-spacing:.06em;color:rgba(255,255,255,.4);margin:12px 2px 2px;}
.plc-it{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 6px 10px;border-radius:12px;border:1px solid rgba(148,163,184,.1);background:#0f1a31;color:#fff;cursor:pointer;transition:transform .15s,background .15s,border-color .15s;}
.plc-it svg{width:38px;height:38px;display:block;}
.plc-it b{font:600 .68rem/1.25 'Montserrat',sans-serif;color:rgba(226,232,240,.8);text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em;}
.plc-it:hover{transform:translateY(-2px);background:#15244a;border-color:rgba(96,165,250,.45);}
.plc-it:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.plc-it.sel{border-color:#3b82f6;background:rgba(37,99,235,.2);box-shadow:0 0 0 2px rgba(59,130,246,.35);}
.plc-empty{grid-column:1/-1;padding:50px 10px;text-align:center;color:rgba(255,255,255,.5);font-size:.86rem;line-height:1.6;}
@media (max-width:560px){.plc-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));}.pca-vis{flex-direction:column;align-items:flex-start;}}
@media (prefers-reduced-motion:reduce){#pca-logo-cat.open,.plc-box{animation:none;}.plc-it{transition:none;}}

/* ── Panel RP : Mon Code (code de la route) ── */
.pcd-imgf{display:flex;gap:12px;align-items:flex-end;}
.pcd-imgprev{width:84px;height:84px;flex-shrink:0;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(148,163,184,.16);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.pcd-imgprev span{font-size:.62rem;color:rgba(255,255,255,.4);text-align:center;}
.pcd-img{width:40px;height:40px;display:block;object-fit:cover;border-radius:6px;}
.pcd-img.big{width:76px;height:76px;}
.pcd-thumb{flex-shrink:0;display:flex;}
.pcd-roles{display:grid;gap:8px;margin-top:10px;}
.pcd-role{display:grid;grid-template-columns:1.4fr 1fr 34px;gap:8px;align-items:center;}
.pcd-role .pca-input{margin:0;}
.pcd-qs{display:grid;gap:6px;margin-top:12px;max-height:620px;overflow:auto;padding-right:4px;}
.pcd-q{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(148,163,184,.12);}
.pcd-q.off{opacity:.55;}
.pcd-q.open{opacity:1;border-color:rgba(56,189,248,.45);background:rgba(56,189,248,.05);}
.pcd-q-top{display:flex;align-items:center;gap:12px;}
.pcd-q-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.pcd-q-t small{font-size:.66rem;font-weight:700;color:#7dd3fc;}
.pcd-q-t b{font-size:.8rem;font-weight:600;color:#fff;line-height:1.4;}
.pcd-q-t em{font-style:normal;font-size:.72rem;color:#86efac;}
.pcd-q-t em::before{content:'✓ ';}
.pca-btn.pcd-mini{margin-top:0;padding:7px 12px;font-size:.66rem;letter-spacing:.04em;white-space:nowrap;}
.pcd-edit{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);}
.pcd-edit .pca-input,.pcd-edit .pca-select{margin:0;}
.pcd-choice{display:grid;grid-template-columns:22px 1fr 34px;gap:8px;align-items:center;}
.pcd-choice input[type=radio]{width:18px;height:18px;accent-color:#22c55e;margin:0;}
.pcd-tag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:99px;font-size:.62rem;font-weight:800;vertical-align:middle;background:rgba(56,189,248,.18);color:#7dd3fc;}
.pcd-tag.live{background:rgba(245,158,11,.2);color:#fcd34d;}
.pcd-tag.off{background:rgba(255,255,255,.08);color:rgba(255,255,255,.55);}
.pcd-code{font-family:'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.12em;}
@media (max-width:640px){.pcd-role{grid-template-columns:1fr 34px;}.pcd-role .pca-input[data-k="label"]{grid-column:1;}.pcd-q-top{flex-wrap:wrap;}}
/* ── Panel RP : Florida Lottery ── */
.plt-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;}
.plt-card{padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(148,163,184,.16);display:flex;flex-direction:column;gap:3px;}
.plt-card small{font-size:.7rem;font-weight:700;color:rgba(255,255,255,.5);}
.plt-card b{font-size:1.3rem;font-weight:900;color:#fff;}
.plt-card span{font-size:.74rem;color:rgba(255,255,255,.65);}
.plt-card.jack{background:linear-gradient(160deg,rgba(251,191,36,.16),rgba(249,115,22,.08));border-color:rgba(251,191,36,.35);}
.plt-card.jack b{color:#fde68a;}
.plt-inline{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap;}
.plt-inline .pca-input{margin:0;flex:1;min-width:120px;}
.plt-inline .pca-btn{padding:9px 14px;font-size:.74rem;}
.plt-block{margin-top:18px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(148,163,184,.14);}
.plt-bh{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.plt-bh h4,.plt-h{margin:0;font-size:.95rem;font-weight:800;color:#fff;}
.plt-h{margin-bottom:10px;}
.plt-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:12px;}
.plt-f{display:flex;flex-direction:column;gap:5px;}
.plt-f > span:first-child{font-size:.7rem;font-weight:700;color:rgba(255,255,255,.55);}
.plt-in{position:relative;display:block;}
.plt-in .pca-input{margin:0;width:100%;padding-right:34px;}
.plt-in em{position:absolute;right:11px;top:50%;transform:translateY(-50%);font-style:normal;font-size:.72rem;color:rgba(255,255,255,.4);pointer-events:none;}
.plt-lbl{font-size:.7rem;font-weight:700;color:rgba(255,255,255,.55);margin:14px 0 7px;}
.plt-days{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-end;}
.plt-day{padding:9px 13px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:rgba(255,255,255,.8);font-family:inherit;font-weight:700;font-size:.76rem;cursor:pointer;}
.plt-day.on{background:rgba(56,189,248,.2);border-color:#38bdf8;color:#fff;}
.plt-time{margin-left:8px;}
.plt-time .pca-input{margin:0;width:150px;}
.plt-ranks{display:grid;gap:6px;}
.plt-rank{display:grid;grid-template-columns:1.3fr 1fr 110px;align-items:center;gap:10px;padding:6px 10px;border-radius:10px;background:rgba(255,255,255,.03);font-size:.78rem;color:rgba(255,255,255,.8);}
.plt-rank > b{color:#fde68a;font-size:.8rem;}
.plt-rank > em{font-style:normal;font-size:.7rem;color:rgba(255,255,255,.45);text-align:right;}
.plt-calc{margin-top:10px;font-size:.74rem;color:rgba(255,255,255,.6);}
.plt-calc b{color:#fff;}
.plt-tiers{display:grid;gap:6px;}
.plt-tier{display:grid;grid-template-columns:36px 1fr 1fr 34px;align-items:center;gap:8px;}
.plt-sym{display:flex;justify-content:center;}
.plt-x{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;border:1px solid rgba(248,113,113,.35);background:rgba(248,113,113,.08);color:#fca5a5;cursor:pointer;font-weight:800;}
.plt-sw{width:46px;height:26px;border-radius:99px;border:none;background:rgba(255,255,255,.18);position:relative;cursor:pointer;flex-shrink:0;transition:background .25s;}
.plt-sw i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .25s cubic-bezier(.34,1.4,.5,1);}
.plt-sw.on{background:#16a34a;}
.plt-sw.on i{transform:translateX(20px);}
.plt-sw:focus-visible,.plt-day:focus-visible{outline:2px solid #38bdf8;outline-offset:2px;}
.plt-hist{padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(148,163,184,.12);margin-top:8px;}
.plt-hist-top{display:flex;justify-content:space-between;align-items:baseline;}
.plt-hist-top b{font-size:.86rem;color:#fff;}
.plt-hist-top small{font-size:.7rem;color:rgba(255,255,255,.5);}
.plt-balls{display:flex;gap:5px;margin:8px 0;}
.plt-balls i{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-weight:900;font-size:.7rem;color:#0b2530;background:radial-gradient(circle at 34% 28%,#fff,#cbd5e1);}
.plt-balls i.p{color:#fff;background:radial-gradient(circle at 34% 28%,#99f6e4,#0f766e);}
.plt-hist-sub{font-size:.72rem;color:rgba(255,255,255,.6);line-height:1.5;}
.plt-win{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px;}
.plt-win span{font-size:.7rem;padding:4px 9px;border-radius:99px;background:rgba(251,191,36,.1);color:rgba(255,255,255,.85);}
.plt-win em{font-style:normal;font-weight:800;color:#fde68a;}

/* ── Panel RP : programmation de la météo ── */
.pwx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px;}
.pwx-day{padding:16px 16px 14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(148,163,184,.16);}
.pwx-day.planned{border-color:rgba(56,189,248,.45);background:linear-gradient(170deg,rgba(14,116,144,.14),rgba(255,255,255,.03));}
.pwx-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.pwx-head > div > b{display:block;font-size:1rem;font-weight:800;color:#fff;}
.pwx-head > div > small{display:block;font-size:.72rem;color:rgba(255,255,255,.5);margin-top:2px;}
.pwx-final{display:flex;align-items:center;gap:8px;text-align:right;}
.pwx-final b{display:block;font-size:.9rem;color:#fff;}
.pwx-final small{display:block;font-size:.66rem;color:rgba(255,255,255,.55);}
.pwx-auto{margin-top:10px;font-size:.72rem;line-height:1.5;color:rgba(255,255,255,.55);}
.pwx-tag{display:inline-block;font-style:normal;font-size:.62rem;font-weight:800;padding:2px 8px;border-radius:99px;margin-right:7px;background:rgba(56,189,248,.18);color:#7dd3fc;}
.pwx-tag.auto{background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);}
.pwx-lbl{font-size:.7rem;font-weight:700;color:rgba(255,255,255,.55);margin:14px 0 7px;}
.pwx-conds{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:5px;}
.pwx-cond{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 2px 7px;border-radius:11px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:rgba(255,255,255,.8);font-family:inherit;font-weight:700;font-size:.6rem;cursor:pointer;transition:background .16s,border-color .16s;}
.pwx-cond:hover{background:rgba(255,255,255,.09);}
.pwx-cond.on{border-color:#38bdf8;background:rgba(56,189,248,.18);color:#fff;}
.pwx-cond:focus-visible{outline:2px solid #38bdf8;outline-offset:2px;}
.pwx-autoic{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:.62rem;font-weight:900;background:rgba(255,255,255,.14);}
.pwx-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;}
.pwx-nums label{display:flex;flex-direction:column;gap:4px;position:relative;}
.pwx-nums label > span{font-size:.66rem;font-weight:700;color:rgba(255,255,255,.55);}
.pwx-nums .pca-input{margin:0;padding-right:40px;}
.pwx-nums em{position:absolute;right:10px;bottom:11px;font-style:normal;font-size:.66rem;color:rgba(255,255,255,.4);pointer-events:none;}
.pwx-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.pwx-acts .pca-btn{padding:9px 16px;font-size:.76rem;}
.pwx-alert{margin-bottom:14px;padding:12px 14px;border-radius:12px;background:rgba(220,38,38,.14);border:1px solid rgba(248,113,113,.4);}
.pwx-alert b{display:block;font-size:.84rem;color:#fecaca;}
.pwx-alert span{display:block;font-size:.72rem;color:rgba(255,255,255,.6);margin-top:3px;}
.pca-switch{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:.86rem;color:rgba(255,255,255,.8);}
.pca-switch input{-webkit-appearance:none;appearance:none;position:relative;display:inline-grid;place-content:center;flex:none;width:18px;height:18px;margin:0;border-radius:6px;border:1.5px solid rgba(148,163,184,.45);background:rgba(0,0,0,.3);cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s;}
.pca-switch input::before{content:'';width:4px;height:8px;margin-top:-2px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .18s cubic-bezier(.22,1,.36,1);}
.pca-switch input:checked{background:linear-gradient(135deg,#1d4ed8,#3b82f6);border-color:transparent;box-shadow:0 0 0 3px rgba(37,99,235,.22);}
.pca-switch input:checked::before{transform:rotate(45deg) scale(1);}
.pca-switch input:disabled{opacity:.45;cursor:not-allowed;}
/* ── Annonce banderole : formulaire du panel admin ── */
.pca-ann-lbl{display:flex;justify-content:space-between;align-items:baseline;gap:10px;}
.pca-ann-lbl span{font-weight:700;letter-spacing:.04em;color:rgba(148,163,184,.55);font-variant-numeric:tabular-nums;text-transform:none;}
.pca-ann-lbl span.max{color:#fbbf24;}
.pca-ann-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.pca-ann-level{--lv:var(--rph-a3-rgb);display:flex;align-items:flex-start;gap:11px;padding:13px 14px;border-radius:14px;border:1px solid rgba(148,163,184,.16);background:rgba(var(--rph-b1-rgb),.5);color:#fff;font-family:inherit;text-align:left;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s;}
.pca-ann-level[data-level="important"]{--lv:245,158,11;}
.pca-ann-level[data-level="urgent"]{--lv:239,68,68;}
.pca-ann-level i{flex:none;width:12px;height:12px;margin-top:3px;border-radius:50%;background:rgb(var(--lv));box-shadow:0 0 0 3px rgba(var(--lv),.18);}
.pca-ann-level span{display:flex;flex-direction:column;gap:2px;min-width:0;}
.pca-ann-level b{font-size:.84rem;}
.pca-ann-level small{font-size:.7rem;color:rgba(148,163,184,.75);}
.pca-ann-level:hover{border-color:rgba(var(--lv),.45);}
.pca-ann-level.on{border-color:rgba(var(--lv),.7);background:rgba(var(--lv),.12);box-shadow:0 10px 26px rgba(var(--lv),.16);}
.pca-ann-level:focus-visible,.pca-ann-durs button:focus-visible{outline:2px solid rgba(var(--rph-a4-rgb),.8);outline-offset:2px;}
.pca-ann-durs{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:12px;border:1px solid rgba(148,163,184,.16);background:rgba(var(--rph-b1-rgb),.55);}
.pca-ann-durs button{padding:8px 14px;border:none;border-radius:9px;background:none;color:rgba(148,163,184,.85);font-family:inherit;font-size:.76rem;font-weight:800;cursor:pointer;transition:background .18s,color .18s;}
.pca-ann-durs button:hover{color:#fff;}
.pca-ann-durs button.on{background:rgba(var(--rph-a3-rgb),.25);color:#fff;box-shadow:inset 0 0 0 1px rgba(var(--rph-a4-rgb),.45);}
.pca-ann-preview{border-radius:16px;overflow:hidden;border:1px solid rgba(148,163,184,.14);background:var(--rph-b1);}
.pca-ann-preview .rph-ann{border-bottom:none;}
.pca-ann-preview .rph-ann-in{padding:16px 20px;}
.pca-ann-cur{border-radius:16px;overflow:hidden;border:1px solid rgba(148,163,184,.14);background:rgba(var(--rph-b3-rgb),.6);}
.pca-ann-cur .rph-ann{border-bottom:1px solid rgba(148,163,184,.12);}
.pca-ann-cur .rph-ann-in{padding:16px 20px;}
.pca-ann-cur-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;padding:12px 16px;font-size:.74rem;color:rgba(148,163,184,.8);}
.pca-ann-cur-foot b{color:rgba(226,232,240,.92);}
.pca-ann-cur-foot .pca-btn{margin:0;}
.pca-ann-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
.pca-ann-pill::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor;}
.pca-ann-pill.live{color:#86efac;background:rgba(34,197,94,.12);box-shadow:inset 0 0 0 1px rgba(74,222,128,.3);}
.pca-ann-pill.off{color:rgba(203,213,225,.8);background:rgba(148,163,184,.12);}
.pca-ann-empty{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:16px;border:1px dashed rgba(148,163,184,.22);color:rgba(148,163,184,.8);font-size:.82rem;}
.pca-ann-empty span{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:rgba(148,163,184,.7);background:rgba(148,163,184,.1);}
@media(max-width:620px){.pca-ann-levels{grid-template-columns:1fr;}}
/* ── Accès Publique du Roleplay : carte + interrupteur designés ── */
.pca-pub{--pub:148,163,184;position:relative;overflow:hidden;border-radius:20px;padding:24px 24px 18px;border:1px solid rgba(var(--pub),.28);background:radial-gradient(520px 200px at 100% 0,rgba(var(--pub),.14),transparent 70%),rgba(var(--rph-b3-rgb),.72);transition:border-color .35s,background .35s;}
.pca-pub[data-on="1"]{--pub:34,197,94;}
.pca-pub[data-on="0"]{--pub:var(--rph-a3-rgb);}
.pca-pub-top{display:flex;align-items:center;gap:16px;}
.pca-pub-ico{position:relative;width:54px;height:54px;flex:0 0 54px;border-radius:16px;display:grid;place-items:center;color:rgb(var(--pub));background:rgba(var(--pub),.13);box-shadow:inset 0 0 0 1px rgba(var(--pub),.32);transition:all .35s;}
.pca-pub-ico svg{position:absolute;transition:opacity .3s,transform .4s cubic-bezier(.22,1,.36,1);}
.pca-pub[data-on="1"] .pca-pub-ico .off,.pca-pub[data-on="0"] .pca-pub-ico .on{opacity:0;transform:scale(.6) rotate(-20deg);}
.pca-pub-txt{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;}
.pca-pub-kicker{font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:rgba(148,163,184,.75);}
.pca-pub-txt b{font-size:1.15rem;font-weight:900;color:#fff;letter-spacing:-.01em;}
.pca-pub-txt small{font-size:.8rem;line-height:1.5;color:rgba(148,163,184,.8);}
.pca-pub-switch{position:relative;flex:0 0 auto;width:66px;height:36px;padding:0;border:none;border-radius:999px;background:rgba(148,163,184,.2);box-shadow:inset 0 0 0 1px rgba(148,163,184,.3);cursor:pointer;transition:background .3s,box-shadow .3s;}
.pca-pub-switch .knob{position:absolute;top:4px;left:4px;width:28px;height:28px;border-radius:50%;background:#e2e8f0;box-shadow:0 4px 12px rgba(0,0,0,.35);transition:transform .35s cubic-bezier(.22,1,.36,1),background .3s;}
.pca-pub-switch[aria-checked="true"]{background:linear-gradient(135deg,#16a34a,#22c55e);box-shadow:0 8px 22px rgba(34,197,94,.35);}
.pca-pub-switch[aria-checked="true"] .knob{transform:translateX(30px);background:#fff;}
.pca-pub-switch:focus-visible{outline:3px solid rgba(var(--pub),.6);outline-offset:3px;}
.pca-pub-switch:disabled{opacity:.5;cursor:wait;}
.pca-pub-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;}
.pca-pub-mode{display:flex;gap:11px;align-items:flex-start;padding:13px 14px;border-radius:14px;border:1px solid rgba(148,163,184,.12);background:rgba(var(--rph-b1-rgb),.45);opacity:.5;transition:opacity .3s,border-color .3s,background .3s;cursor:pointer;}
.pca-pub-mode i{width:10px;height:10px;flex:0 0 10px;margin-top:4px;border-radius:50%;background:rgba(148,163,184,.5);transition:background .3s,box-shadow .3s;}
.pca-pub-mode span{display:flex;flex-direction:column;gap:3px;}
.pca-pub-mode b{font-size:.85rem;color:#fff;}
.pca-pub-mode small{font-size:.74rem;line-height:1.5;color:rgba(148,163,184,.8);}
.pca-pub-mode small b{font-size:inherit;}
.pca-pub[data-on="0"] .pca-pub-mode[data-mode="0"],.pca-pub[data-on="1"] .pca-pub-mode[data-mode="1"]{opacity:1;border-color:rgba(var(--pub),.4);background:rgba(var(--pub),.08);}
.pca-pub[data-on="0"] .pca-pub-mode[data-mode="0"] i,.pca-pub[data-on="1"] .pca-pub-mode[data-mode="1"] i{background:rgb(var(--pub));box-shadow:0 0 0 4px rgba(var(--pub),.2);}
.pca-pub-foot{margin-top:14px;font-size:.72rem;color:rgba(148,163,184,.65);}
.pca-pub-foot:empty{display:none;}
.pca-pub-foot b{color:rgba(226,232,240,.9);}
@media(max-width:620px){.pca-pub-modes{grid-template-columns:1fr;}.pca-pub-top{flex-wrap:wrap;}}
.pca-user{font-size:.74rem;color:rgba(255,255,255,.45);}
.pca-user b{color:#60a5fa;}
@media(max-width:560px){.pca-body{padding:16px;}.pca-grid{grid-template-columns:repeat(2,1fr);}}
/* ── Panel RP : l'administration s'ouvre en pleine page, comme le hub ── */
#pc-admin.pca-rp{background:var(--rph-b1);backdrop-filter:none;display:none;align-items:stretch;justify-content:flex-start;overflow-y:auto;overflow-x:hidden;}
#pc-admin.pca-rp.open{display:block;}
#pc-admin.pca-rp::-webkit-scrollbar{width:10px;}
#pc-admin.pca-rp::-webkit-scrollbar-track{background:transparent;}
#pc-admin.pca-rp::-webkit-scrollbar-thumb{background:rgba(var(--rph-a3-rgb),.32);border-radius:999px;}
#pc-admin.pca-rp .pca-box{width:100%;max-width:none;min-height:100vh;max-height:none;overflow:visible;border:0;border-radius:0;box-shadow:none;background:radial-gradient(1200px 600px at 70% -10%,rgba(var(--rph-a2-rgb),.10),transparent 60%),var(--rph-b1);}
#pc-admin.pca-rp .pca-head{height:76px;padding:0 26px;border-radius:0;border-bottom:1px solid rgba(148,163,184,.12);background:linear-gradient(180deg,rgba(var(--rph-b3-rgb),.98),rgba(var(--rph-b2-rgb),.96));position:sticky;top:0;z-index:6;}
#pc-admin.pca-rp .pca-head h3{font-size:1.1rem;font-weight:900;letter-spacing:-.01em;text-transform:none;gap:13px;}
#pc-admin.pca-rp .pca-head h3 .pca-badge{width:34px;height:34px;flex:0 0 34px;border-radius:11px;font-size:.72rem;background:linear-gradient(135deg,var(--rph-a1),var(--rph-a3));box-shadow:0 10px 24px rgba(var(--rph-a2-rgb),.38);}
#pc-admin.pca-rp .pca-user{font-size:.72rem;font-weight:700;letter-spacing:.04em;color:rgba(148,163,184,.7);}
#pc-admin.pca-rp .pca-user b{color:var(--rph-a4);}
#pc-admin.pca-rp .pca-close{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:11px;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:rgba(148,163,184,.85);background:rgba(var(--rph-b1-rgb),.6);box-shadow:inset 0 0 0 1px rgba(148,163,184,.16);transition:all .2s;}
#pc-admin.pca-rp .pca-close:hover{color:#fff;background:rgba(var(--rph-a2-rgb),.3);box-shadow:inset 0 0 0 1px rgba(var(--rph-a3-rgb),.5);}
#pc-admin.pca-rp .pca-close svg{flex:0 0 auto;transition:transform .2s;}
#pc-admin.pca-rp .pca-close:hover svg{transform:translateX(-3px);}
#pc-admin.pca-rp .pca-body{padding:0;}
#pc-admin.pca-rp #pca-auth{padding:46px 26px;max-width:520px;margin:0 auto;}

/* La navigation reprend la barre latérale du panel joueur : icône et libellé. */
#pca-panel{display:block;}
#pc-admin.pca-rp #pca-panel{display:grid;grid-template-columns:248px minmax(0,1fr);align-items:start;}
#pc-admin.pca-rp .pca-tabs{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:2px;margin:0;padding:0 12px 24px;background:var(--rph-b2);border-right:1px solid rgba(148,163,184,.12);position:sticky;top:76px;min-height:calc(100vh - 76px);max-height:calc(100vh - 76px);overflow-y:auto;}
#pc-admin.pca-rp .pca-tabs::before{content:'Gestion';display:block;padding:18px 8px 8px;font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:rgba(148,163,184,.6);}
#pc-admin.pca-rp .pca-tab{position:static;overflow:visible;display:flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;padding:11px 14px;border:none;border-radius:11px;background:transparent;color:rgba(203,213,225,.72);font-family:inherit;font-size:.9rem;font-weight:700;letter-spacing:0;text-transform:none;text-align:left;line-height:1.25;box-shadow:none;transition:all .2s cubic-bezier(.22,1,.36,1);}
#pc-admin.pca-rp .pca-tab svg{flex:0 0 auto;transition:transform .2s;}
#pc-admin.pca-rp .pca-tab:hover{background:rgba(148,163,184,.08);color:#fff;transform:translateX(3px);box-shadow:none;}
#pc-admin.pca-rp .pca-tab:hover svg{transform:scale(1.12);}
#pc-admin.pca-rp .pca-tab.active{background:rgba(var(--rph-a2-rgb),.16);color:#fff;box-shadow:inset 0 0 0 1px rgba(var(--rph-a3-rgb),.25);transform:none;}
#pc-admin.pca-rp .pca-pane{grid-column:2;grid-row:1;padding:34px 36px 80px;}
@media(max-width:900px){
#pc-admin.pca-rp #pca-panel{grid-template-columns:minmax(0,1fr);}
#pc-admin.pca-rp .pca-tabs{grid-column:1;grid-row:1;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;min-height:0;max-height:none;padding:12px 16px;border-right:0;border-bottom:1px solid rgba(148,163,184,.12);}
#pc-admin.pca-rp .pca-tabs::before{display:none;}
#pc-admin.pca-rp .pca-tab{width:auto;white-space:nowrap;padding:9px 14px;font-size:.8rem;}
#pc-admin.pca-rp .pca-pane{grid-column:1;grid-row:2;padding:24px 18px 70px;}
}
#pc-admin.pca-rp .pca-pane.active{animation:rphFadeUp .42s cubic-bezier(.22,1,.36,1) both;}

/* Titres, textes et champs alignés sur le panel joueur. */
#pc-admin.pca-rp .pca-body h4{font-size:.7rem!important;letter-spacing:.18em!important;text-transform:uppercase!important;font-weight:800!important;color:rgba(148,163,184,.75)!important;margin:30px 0 12px!important;}
#pc-admin.pca-rp .pca-pane>h4:first-child{margin-top:0!important;}
#pc-admin.pca-rp .pca-note{font-size:.82rem;line-height:1.65;color:rgba(148,163,184,.72);}
#pc-admin.pca-rp .pca-note b{color:rgba(226,232,240,.92);}
#pc-admin.pca-rp .pca-label{font-size:.66rem;letter-spacing:.14em;font-weight:800;color:rgba(148,163,184,.75);margin:18px 0 7px;}
#pc-admin.pca-rp .pca-input,#pc-admin.pca-rp .pca-select{border-radius:12px;border:1px solid rgba(148,163,184,.18);background:rgba(var(--rph-b1-rgb),.72);font-size:.92rem;padding:12px 15px;transition:border-color .2s,box-shadow .2s;}
#pc-admin.pca-rp .pca-input:focus,#pc-admin.pca-rp .pca-select:focus{border-color:rgba(var(--rph-a3-rgb),.6);box-shadow:0 0 0 3px rgba(var(--rph-a2-rgb),.18);}
#pc-admin.pca-rp .pca-switch{font-size:.85rem;color:rgba(226,232,240,.85);}
#pc-admin.pca-rp .pca-switch input{accent-color:var(--rph-a2);}
#pc-admin.pca-rp .pca-hr{border-top:1px solid rgba(148,163,184,.12);margin:30px 0;}
#pc-admin.pca-rp .pca-msg{border-radius:12px;font-weight:600;padding:11px 15px;}

/* Lignes de liste : mêmes cartes que les listes du panel joueur. */
#pc-admin.pca-rp .pca-list{gap:10px;margin-top:12px;}
#pc-admin.pca-rp .pca-row{padding:14px 18px;border-radius:14px;border:1px solid rgba(148,163,184,.12);background:rgba(var(--rph-b3-rgb),.7);font-size:.88rem;font-weight:600;color:rgba(226,232,240,.9);transition:border-color .2s,transform .2s;}
#pc-admin.pca-rp .pca-row:hover{border-color:rgba(var(--rph-a3-rgb),.35);transform:translateX(3px);}
#pc-admin.pca-rp .pca-row b{color:#fff;}
#pc-admin.pca-rp .pca-row small{color:rgba(148,163,184,.7);}
#pc-admin.pca-rp .pca-row .del{padding:7px 14px;border-radius:999px;font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fca5a5;box-shadow:inset 0 0 0 1px rgba(248,113,113,.32);transition:all .2s;}
#pc-admin.pca-rp .pca-row .del:hover{color:#fff;text-decoration:none;background:linear-gradient(135deg,#b91c1c,#dc2626);box-shadow:0 10px 24px rgba(220,38,38,.32);}
#pc-admin.pca-rp .pca-row .faq-edit{color:var(--rph-a4);font-weight:800;letter-spacing:.08em;}

/* Boutons. */
#pc-admin.pca-rp .pca-btn{border-radius:12px;padding:12px 22px;font-weight:800;font-size:.72rem;letter-spacing:.09em;background:linear-gradient(135deg,var(--rph-a1),var(--rph-a2));transition:transform .2s,box-shadow .2s,color .2s,background .2s;}
#pc-admin.pca-rp .pca-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(var(--rph-a2-rgb),.4);}
#pc-admin.pca-rp .pca-btn.ghost{background:transparent;border:none;color:rgba(226,232,240,.85);box-shadow:inset 0 0 0 1px rgba(148,163,184,.25);}
#pc-admin.pca-rp .pca-btn.ghost:hover{color:#fff;box-shadow:inset 0 0 0 1px rgba(var(--rph-a3-rgb),.55);}
#pc-admin.pca-rp .pca-btn.danger{background:transparent;color:#fca5a5;box-shadow:inset 0 0 0 1px rgba(248,113,113,.35);}
#pc-admin.pca-rp .pca-btn.danger:hover{color:#fff;background:linear-gradient(135deg,#b91c1c,#dc2626);box-shadow:0 12px 28px rgba(220,38,38,.35);}
#pc-admin.pca-rp .pca-grid{gap:14px;}
#pc-admin.pca-rp .pca-thumb{border-radius:14px;border-color:rgba(148,163,184,.16);}

/* Fiche personnage 3D ouverte depuis le panel RP. */
#pca-chars.pca-rp{background:rgba(var(--rph-b1-rgb),.93);}
#pca-chars.pca-rp .pcg-box{border-radius:24px;border:1px solid rgba(var(--rph-a3-rgb),.22);background:linear-gradient(170deg,rgba(var(--rph-b2-rgb),.99),rgba(var(--rph-b1-rgb),.99));box-shadow:0 50px 130px rgba(0,0,0,.68);}
#pca-chars.pca-rp .pcg-card{border-radius:18px;border:1px solid rgba(148,163,184,.14);background:linear-gradient(160deg,rgba(var(--rph-b3-rgb),.95),rgba(var(--rph-b2-rgb),.95));transition:transform .28s cubic-bezier(.22,1,.36,1),border-color .28s,box-shadow .28s;}
#pca-chars.pca-rp .pcg-card:hover{transform:translateY(-4px);border-color:rgba(var(--rph-a3-rgb),.45);box-shadow:0 22px 48px rgba(var(--rph-b1-rgb),.7);}

@media(max-width:640px){
  #pc-admin.pca-rp .pca-box{width:100vw;max-height:100vh;border-radius:0;}
  #pc-admin.pca-rp .pca-head{border-radius:0;padding:16px 18px;}
  #pc-admin.pca-rp .pca-body{padding:18px 18px 28px;}
  #pc-admin.pca-rp .pca-tabs{grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:9px;}
  #pc-admin.pca-rp .pca-tab{padding:13px 10px;font-size:.62rem;letter-spacing:.07em;}
}
#pca-chars{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;background:rgba(5,8,14,.88);backdrop-filter:blur(10px);font-family:'Montserrat',sans-serif;cursor:auto;}
#pca-chars.open{display:flex;}
#pca-chars *{cursor:auto;box-sizing:border-box;}
#pca-chars button{cursor:pointer;}
.pcg-box{width:min(1500px,96vw);height:94vh;display:flex;flex-direction:column;background:#0E1422;border:1px solid rgba(59,130,246,.35);border-radius:16px;box-shadow:0 40px 120px rgba(0,0,0,.6);overflow:hidden;}
.pcg-bar{display:flex;gap:10px;align-items:center;padding:16px 24px 0;flex-wrap:wrap;}
.pcg-bar .pca-input{flex:1;min-width:220px;}
.pcg-body{flex:1;overflow-y:auto;padding:16px 24px 24px;}
.pcg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:start;}
.pcg-card{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02);transition:border-color .2s,transform .2s;}
.pcg-card:hover{border-color:rgba(59,130,246,.5);transform:translateY(-2px);}
.pcg-card h5{font-size:1rem;color:#fff;font-weight:700;line-height:1.25;word-break:break-word;}
.pcg-meta{font-size:.74rem;color:rgba(255,255,255,.5);line-height:1.6;}
.pcg-meta b{color:rgba(255,255,255,.75);font-weight:600;}
.pcg-docs{font-size:1.05rem;letter-spacing:2px;margin-top:2px;}
.pcg-card .pca-btn{margin-top:6px;width:100%;justify-content:center;}
.pcg-empty{grid-column:1/-1;text-align:center;color:rgba(255,255,255,.4);padding:40px 0;}
@media(max-width:1100px){.pcg-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:700px){.pcg-grid{grid-template-columns:1fr;}.pcg-box{width:100vw;height:100vh;border-radius:0;}}

/* ───── bloc sans id ───── */
#dw-transition{position:fixed;inset:0;background:#000;opacity:0;pointer-events:none;z-index:999999;transition:opacity .6s ease;}
#dw-transition.dw-active{opacity:1;}
#dw-transition-scan{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0px,rgba(255,255,255,.05) 1px,transparent 1px,transparent 3px);opacity:0;mix-blend-mode:overlay;}
#dw-transition.dw-active #dw-transition-scan{opacity:1;animation:dwScan .6s linear;}
@keyframes dwScan{from{transform:translateY(-100%);}to{transform:translateY(100%);}}

/* ───── bloc sans id ───── */
.pcm-fab{position:relative;flex:none;z-index:5;width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(37,99,235,.35);transition:transform .2s,box-shadow .2s;}
.pcm-fab:hover{background:linear-gradient(135deg,#2563eb,#3b82f6);transform:translateY(-2px);box-shadow:0 10px 22px rgba(37,99,235,.45);}
.pcm-fab svg{width:18px;height:18px;}
@media(max-width:780px){.pcm-fab{width:34px;height:34px;}.pcm-fab svg{width:16px;height:16px;}}
@media(max-width:640px){.pcm-fab{width:28px;height:28px;}.pcm-fab svg{width:14px;height:14px;}.pcm-badge{min-width:16px;height:16px;font-size:9px;line-height:14px;top:-2px;right:-2px;}}
.pcm-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;background:#ef4444;color:#fff;border:2px solid #0a1a33;border-radius:11px;font:700 11px/18px system-ui;display:none;align-items:center;justify-content:center;}
.pcm-badge.on{display:flex;}
/* ═══ Boîte mail (page d'accueil) ═══ */
.pcm-overlay{position:fixed;inset:0;z-index:9999;background:rgba(3,6,16,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px;transition:background .2s ease;cursor:default;}
.pcm-overlay.open{display:flex;}
.pcm-overlay.closing{background:rgba(3,6,16,0);}
.pcm-modal{position:relative;width:min(760px,100%);max-height:88vh;display:flex;flex-direction:column;overflow:hidden;border-radius:24px;color:#e5edff;font-family:'Montserrat',system-ui,sans-serif;
  background:radial-gradient(600px 220px at 0% 0%,rgba(37,99,235,.18),transparent 70%),linear-gradient(180deg,rgba(14,22,44,.97),rgba(8,13,28,.98));
  border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 100px -20px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.06);animation:pcModalIn .3s cubic-bezier(.16,1,.3,1);}
.pcm-overlay.closing .pcm-modal{animation:pcModalOut .2s ease forwards;}
.pcm-head{display:flex;align-items:center;gap:14px;padding:22px 24px 16px;}
.pcm-hic{flex:none;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 10px 24px -6px rgba(37,99,235,.7),inset 0 1px 0 rgba(255,255,255,.2);}
.pcm-htxt{flex:1;min-width:0;}
.pcm-head h3{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:-.01em;color:#fff;}
.pcm-hsub{margin-top:3px;font-size:.76rem;font-weight:600;color:rgba(148,163,184,.85);}
.pcm-hsub b{color:#93c5fd;}
.pcm-hbtn{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 14px;border-radius:999px;border:none;cursor:pointer;font-family:inherit;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:rgba(226,232,240,.9);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:background .2s,color .2s,box-shadow .2s;}
.pcm-hbtn:hover{color:#fff;background:rgba(37,99,235,.22);box-shadow:inset 0 0 0 1px rgba(96,165,250,.5);}
.pcm-hbtn:disabled{opacity:.4;cursor:default;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.pcm-x{flex:none;width:36px;height:36px;border-radius:50%;border:none;cursor:pointer;display:grid;place-items:center;color:rgba(226,232,240,.7);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:color .2s,background .2s,transform .25s cubic-bezier(.16,1,.3,1);}
.pcm-x:hover{color:#fff;background:rgba(255,255,255,.12);transform:rotate(90deg);}
.pcm-hbtn:focus-visible,.pcm-x:focus-visible,.pcm-tabs button:focus-visible,.pcm-actions a:focus-visible,.pcm-actions button:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}
.pcm-tabs{display:flex;gap:4px;margin:0 24px 14px;padding:4px;width:max-content;max-width:calc(100% - 48px);border-radius:14px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);}
.pcm-tabs button{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border:none;border-radius:10px;background:none;cursor:pointer;font-family:inherit;font-size:.76rem;font-weight:800;color:rgba(148,163,184,.9);transition:background .2s,color .2s;}
.pcm-tabs button:hover{color:#fff;}
.pcm-tabs button.on{color:#fff;background:rgba(37,99,235,.28);box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}
.pcm-tabs button i{font-style:normal;min-width:18px;height:18px;padding:0 5px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;background:#ef4444;color:#fff;}
.pcm-list{flex:1;overflow:auto;padding:4px 24px 24px;border-top:1px solid rgba(255,255,255,.06);padding-top:16px;scrollbar-width:thin;scrollbar-color:rgba(96,165,250,.35) transparent;}
.pcm-list::-webkit-scrollbar{width:8px;}
.pcm-list::-webkit-scrollbar-thumb{background:rgba(96,165,250,.3);border-radius:99px;}
.pcm-list::-webkit-scrollbar-track{background:transparent;}
.pcm-empty,.pcm-login{display:flex;flex-direction:column;align-items:center;gap:10px;padding:56px 20px;text-align:center;color:rgba(148,163,184,.85);font-size:.86rem;font-weight:600;}
.pcm-empty svg,.pcm-login svg{width:30px;height:30px;padding:13px;box-sizing:content-box;border-radius:18px;color:#60a5fa;background:rgba(37,99,235,.12);box-shadow:inset 0 0 0 1px rgba(96,165,250,.25);}
.pcm-empty b,.pcm-login b{color:#fff;font-size:.95rem;}
.pcm-item{--c:96,165,250;position:relative;display:flex;gap:14px;padding:16px 18px;margin-bottom:10px;border-radius:18px;cursor:pointer;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);transition:background .2s,border-color .2s,transform .25s cubic-bezier(.16,1,.3,1),opacity .25s;}
.pcm-item:hover{background:rgba(255,255,255,.05);border-color:rgba(var(--c),.3);}
.pcm-item.unread{background:linear-gradient(90deg,rgba(var(--c),.1),rgba(255,255,255,.03) 60%);border-color:rgba(var(--c),.35);}
.pcm-item.unread::before{content:'';position:absolute;left:-1px;top:16px;bottom:16px;width:3px;border-radius:0 3px 3px 0;background:rgb(var(--c));box-shadow:0 0 12px rgba(var(--c),.8);}
.pcm-item.gone{opacity:0;transform:translateX(24px);}
.pcm-ic{flex:none;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.14);box-shadow:inset 0 0 0 1px rgba(var(--c),.3);}
.pcm-main{flex:1;min-width:0;}
.pcm-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px;}
.pcm-cat{font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:4px 9px;border-radius:999px;color:rgb(var(--c));background:rgba(var(--c),.13);}
.pcm-perso{font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:999px;color:#e9d5ff;background:rgba(168,85,247,.16);}
.pcm-time{margin-left:auto;font-size:.72rem;font-weight:600;color:rgba(148,163,184,.75);white-space:nowrap;}
.pcm-subj{display:flex;align-items:center;gap:8px;font-weight:800;font-size:.98rem;line-height:1.35;color:#fff;overflow-wrap:anywhere;}
.pcm-new{flex:none;width:7px;height:7px;border-radius:50%;background:rgb(var(--c));box-shadow:0 0 8px rgba(var(--c),.9);}
.pcm-body{margin-top:5px;color:rgba(203,213,225,.8);font-size:.86rem;font-weight:500;white-space:pre-wrap;line-height:1.6;overflow-wrap:anywhere;}
.pcm-body.clamp{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}
.pcm-img{display:block;max-width:100%;max-height:220px;margin-top:10px;border-radius:12px;border:1px solid rgba(255,255,255,.08);object-fit:cover;}
.pcm-actions{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.pcm-actions a,.pcm-actions button{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 13px;border-radius:999px;border:none;cursor:pointer;font-family:inherit;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;transition:background .2s,color .2s,box-shadow .2s,transform .2s;}
.pcm-actions .pcm-link{color:#fff;background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 8px 18px -6px rgba(37,99,235,.8);}
.pcm-actions .pcm-link:hover{transform:translateY(-1px);box-shadow:0 12px 24px -6px rgba(37,99,235,.95);}
.pcm-actions .pcm-more{color:#93c5fd;background:rgba(37,99,235,.12);box-shadow:inset 0 0 0 1px rgba(96,165,250,.3);}
.pcm-actions .pcm-more:hover{background:rgba(37,99,235,.22);}
.pcm-actions .pcm-del{margin-left:auto;color:rgba(203,213,225,.7);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);}
.pcm-actions .pcm-del:hover{color:#fecaca;background:rgba(239,68,68,.15);box-shadow:inset 0 0 0 1px rgba(248,113,113,.45);}
.pcm-c-session{--c:96,165,250;}.pcm-c-event{--c:52,211,153;}.pcm-c-poll{--c:251,191,36;}.pcm-c-live{--c:248,113,113;}
.pcm-c-reminder{--c:167,139,250;}.pcm-c-admin{--c:148,163,184;}.pcm-c-giveaway{--c:244,114,182;}.pcm-c-news{--c:56,189,248;}.pcm-c-ticket{--c:45,212,191;}
@media(max-width:640px){
  .pcm-overlay{padding:0;align-items:flex-end;}
  .pcm-modal{width:100%;max-height:92vh;border-radius:24px 24px 0 0;}
  .pcm-head{padding:18px 16px 14px;gap:12px;}
  .pcm-hic{width:40px;height:40px;border-radius:13px;}
  .pcm-hbtn span{display:none;}
  .pcm-hbtn{width:36px;padding:0;justify-content:center;}
  .pcm-tabs{margin:0 16px 12px;max-width:calc(100% - 32px);}
  .pcm-list{padding:14px 12px 20px;}
  .pcm-item{padding:14px;gap:12px;}
  .pcm-ic{width:36px;height:36px;border-radius:11px;}
  .pcm-ic svg{width:17px;height:17px;}
  .pcm-actions .pcm-del{width:32px;padding:0;justify-content:center;}
  .pcm-actions .pcm-del span{display:none;}
}

/* ───── bloc sans id ───── */
/* ═══════════ Recherche : palette plein écran (même habillage que le panel Tickets) ═══════════ */
.pc-search{position:relative;display:flex;align-items:center;flex-shrink:0;}
.pc-search-icon-btn{width:38px;height:38px;padding:0;border:none;border-radius:12px;cursor:pointer;display:grid;place-items:center;color:rgba(226,232,240,.85);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:color .2s,background .2s,box-shadow .2s;}
.pc-search-icon-btn svg{width:17px;height:17px;transition:transform .35s cubic-bezier(.34,1.56,.64,1);}
.pc-search-icon-btn:hover{color:#fff;background:rgba(37,99,235,.2);box-shadow:inset 0 0 0 1px rgba(96,165,250,.45);}
.pc-search-icon-btn:hover svg{transform:scale(1.12) rotate(-12deg);}
.pc-search-icon-btn:focus-visible{outline:2px solid #60a5fa;outline-offset:2px;}

.pk-overlay{position:fixed;inset:0;z-index:10060;display:none;align-items:flex-start;justify-content:center;padding:12vh 16px 20px;background:rgba(3,6,16,.66);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:'Montserrat',system-ui,sans-serif;}
.pk-overlay.open{display:flex;animation:pkFade .2s ease;}
.pk-overlay.closing{animation:pkFadeOut .2s ease forwards;}
@keyframes pkFade{from{opacity:0;}to{opacity:1;}}
@keyframes pkFadeOut{to{opacity:0;}}
.pk-box{width:min(640px,100%);max-height:72vh;display:flex;flex-direction:column;overflow:hidden;border-radius:24px;
  background:radial-gradient(600px 200px at 0% 0%,rgba(37,99,235,.18),transparent 70%),linear-gradient(180deg,rgba(14,22,44,.98),rgba(8,13,28,.99));
  border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 100px -20px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.06);
  animation:pkIn .35s cubic-bezier(.16,1,.3,1);}
.pk-overlay.closing .pk-box{animation:pkOut .2s ease forwards;}
@keyframes pkIn{from{opacity:0;transform:translateY(-14px) scale(.97);}to{opacity:1;transform:none;}}
@keyframes pkOut{to{opacity:0;transform:translateY(-10px) scale(.97);}}
.pk-bar{display:flex;align-items:center;gap:12px;padding:14px 16px 14px 18px;border-bottom:1px solid rgba(255,255,255,.07);}
.pk-bar>svg{flex:none;width:20px;height:20px;color:#60a5fa;}
.pc-search-input{flex:1;min-width:0;height:40px;padding:0;border:none;outline:none;background:none;color:#fff;font-family:inherit;font-size:1.02rem;font-weight:600;}
.pc-search-input::placeholder{color:rgba(148,163,184,.55);font-weight:500;}
.pk-kbd{flex:none;font-family:inherit;font-size:.6rem;font-weight:800;letter-spacing:.04em;padding:4px 7px;border-radius:7px;color:rgba(226,232,240,.8);background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 2px 0 rgba(0,0,0,.4);}
.pc-search-close{flex:none;width:34px;height:34px;padding:0;border:none;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:rgba(226,232,240,.7);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);transition:color .2s,background .2s,transform .25s cubic-bezier(.16,1,.3,1);}
.pc-search-close svg{width:13px;height:13px;}
.pc-search-close:hover{color:#fff;background:rgba(255,255,255,.12);transform:rotate(90deg);}
.pc-search-results{flex:1;min-height:0;overflow-y:auto;padding:10px;scrollbar-width:thin;scrollbar-color:rgba(96,165,250,.35) transparent;}
.pk-group{padding:8px 10px 6px;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(148,163,184,.7);}
.pc-search-item{--c:96,165,250;display:flex;align-items:center;gap:12px;width:100%;padding:9px 10px;border:none;border-radius:14px;background:none;cursor:pointer;text-align:left;font-family:inherit;color:#fff;transition:background .15s;}
.pc-search-item .ic{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:rgb(var(--c));background:rgba(var(--c),.13);box-shadow:inset 0 0 0 1px rgba(var(--c),.28);}
.pc-search-item .ic svg{width:18px;height:18px;}
.pc-search-item .tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.pc-search-item-title{font-size:.9rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-search-item-title mark{color:#fff;background:rgba(37,99,235,.45);border-radius:4px;padding:0 1px;}
.pc-search-item-snip{font-size:.74rem;font-weight:500;color:rgba(148,163,184,.85);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-search-item-tag{flex:none;font-size:.56rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:0 8px;height:20px;display:inline-flex;align-items:center;border-radius:999px;color:rgb(var(--c));background:rgba(var(--c),.12);}
.pc-search-item .go{flex:none;width:16px;height:16px;color:rgba(148,163,184,.4);transition:transform .25s cubic-bezier(.16,1,.3,1),color .2s;}
.pc-search-item:hover,.pc-search-item.active{background:rgba(var(--c),.12);}
.pc-search-item.active .go{color:#fff;transform:translateX(3px);}
.pc-search-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:34px 16px;text-align:center;font-size:.84rem;font-weight:600;color:rgba(148,163,184,.85);}
.pc-search-empty b{color:#fff;font-size:.95rem;font-weight:800;}
.pc-search-empty .ic{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;color:#60a5fa;background:rgba(37,99,235,.12);box-shadow:inset 0 0 0 1px rgba(96,165,250,.28);margin-bottom:4px;}
.pc-search-empty .ic svg{width:24px;height:24px;}
.pk-foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:10px 16px;border-top:1px solid rgba(255,255,255,.07);font-size:.66rem;font-weight:700;color:rgba(148,163,184,.75);}
.pk-foot span{display:inline-flex;align-items:center;gap:5px;}
.pk-foot .pk-kbd{padding:2px 6px;}
@keyframes pcSearchHit{0%{box-shadow:0 0 0 0 rgba(37,99,235,.65);}70%{box-shadow:0 0 0 16px rgba(37,99,235,0);}100%{box-shadow:0 0 0 0 rgba(37,99,235,0);}}
.pc-search-hit{animation:pcSearchHit 1.1s ease-out;border-radius:14px;}
@media(max-width:640px){
  .pk-overlay{padding:0;align-items:flex-start;}
  .pk-box{width:100%;max-height:100vh;height:100%;border-radius:0;}
  .pk-bar .pk-kbd,.pk-foot{display:none;}
}
@media(prefers-reduced-motion:reduce){.pk-overlay.open,.pk-box,.pk-overlay.closing,.pk-overlay.closing .pk-box{animation:none;}}

/* ══════════ Appli « Élections » du téléphone (rp-election.php) ══════════ */
#pc-page-roleplay-hub .rph-layer-app.rph-glass .vt-root{background:transparent;}
#pc-page-roleplay-hub .vt-root{margin:0 -18px -22px;min-height:100%;padding:6px 16px 46px;color:#fff;background:linear-gradient(180deg,var(--rph-b2),var(--rph-b4));}
#pc-page-roleplay-hub .vt-empty{padding:50px 20px;text-align:center;font-size:.8rem;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .vt-empty.small{padding:18px 14px;margin-top:10px;border-radius:14px;border:1px dashed rgba(255,255,255,.12);font-size:.72rem;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .vt-card{display:flex;align-items:center;gap:12px;margin-top:12px;padding:13px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);}
#pc-page-roleplay-hub .vt-card b{display:block;font-size:.9rem;font-weight:800;}
#pc-page-roleplay-hub .vt-card small{display:block;font-size:.68rem;line-height:1.5;color:rgba(255,255,255,.65);margin-top:2px;}
#pc-page-roleplay-hub .vt-card.vt-info{display:block;}
#pc-page-roleplay-hub .vt-card.vt-mayor{background:linear-gradient(135deg,rgba(var(--rph-a3-rgb),.2),rgba(var(--rph-a1-rgb),.07));border-color:rgba(var(--rph-a4-rgb),.3);}
#pc-page-roleplay-hub .vt-card.vt-mayor small:first-child{margin:0 0 2px;font-weight:700;color:var(--rph-a5);}
#pc-page-roleplay-hub .vt-card.vt-approved{border-color:rgba(74,222,128,.35);}
#pc-page-roleplay-hub .vt-card.vt-rejected{border-color:rgba(248,113,113,.4);}
#pc-page-roleplay-hub .vt-card.vt-voted{border-color:rgba(74,222,128,.35);background:rgba(74,222,128,.08);}
#pc-page-roleplay-hub .vt-seal{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;border-radius:14px;background:rgba(var(--rph-a3-rgb),.25);color:var(--rph-a5);}
#pc-page-roleplay-hub .vt-seal.ok{border-radius:50%;background:#22c55e;color:#fff;}
#pc-page-roleplay-hub .vt-banner{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding:12px 13px;border-radius:16px;border:1px solid rgba(var(--rph-a4-rgb),.3);background:rgba(var(--rph-a3-rgb),.12);}
#pc-page-roleplay-hub .vt-banner b{display:block;font-size:.82rem;}
#pc-page-roleplay-hub .vt-banner small{display:block;margin-top:2px;font-size:.66rem;line-height:1.5;color:rgba(255,255,255,.7);}
#pc-page-roleplay-hub .vt-dot{width:8px;height:8px;margin-top:5px;flex-shrink:0;border-radius:50%;background:var(--rph-a4);}
#pc-page-roleplay-hub .vt-banner.live{border-color:rgba(74,222,128,.4);background:rgba(74,222,128,.09);}
#pc-page-roleplay-hub .vt-banner.live .vt-dot{background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.2);}
#pc-page-roleplay-hub .vt-sec{display:flex;justify-content:space-between;align-items:baseline;margin:18px 2px 8px;font-size:.7rem;font-weight:800;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .vt-sec em{font-style:normal;color:var(--rph-a4);}
#pc-page-roleplay-hub .vt-line{display:flex;align-items:center;gap:11px;width:100%;margin-top:6px;padding:10px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.05);color:#fff;font-family:inherit;text-align:left;cursor:pointer;}
#pc-page-roleplay-hub .vt-line:hover{background:rgba(255,255,255,.09);}
#pc-page-roleplay-hub .vt-line > svg{flex-shrink:0;color:rgba(255,255,255,.4);}
#pc-page-roleplay-hub .vt-line-t{flex:1;min-width:0;}
#pc-page-roleplay-hub .vt-line-t b{display:block;font-size:.8rem;}
#pc-page-roleplay-hub .vt-line-t small{display:block;margin-top:1px;font-size:.64rem;color:rgba(255,255,255,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#pc-page-roleplay-hub .vt-av{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border-radius:50%;font-weight:800;font-size:.84rem;text-transform:uppercase;background:rgba(var(--rph-a3-rgb),.3);color:#fff;}
#pc-page-roleplay-hub .vt-av.big{width:62px;height:62px;font-size:1.4rem;margin:0 auto 8px;}
#pc-page-roleplay-hub .vt-cand-h{text-align:center;padding:14px 0 4px;}
#pc-page-roleplay-hub .vt-cand-h b{display:block;font-size:1.02rem;}
#pc-page-roleplay-hub .vt-cand-h small{display:block;margin-top:4px;font-size:.72rem;color:rgba(255,255,255,.7);font-style:italic;}
#pc-page-roleplay-hub .vt-prog{padding:12px 13px;border-radius:14px;background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.07);font-size:.76rem;line-height:1.6;color:rgba(255,255,255,.85);white-space:pre-wrap;word-break:break-word;}
#pc-page-roleplay-hub .vt-bars{display:grid;gap:9px;}
#pc-page-roleplay-hub .vt-bar-t{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:.72rem;}
#pc-page-roleplay-hub .vt-bar-t span{color:rgba(255,255,255,.6);white-space:nowrap;font-variant-numeric:tabular-nums;}
#pc-page-roleplay-hub .vt-track{display:block;height:6px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden;}
#pc-page-roleplay-hub .vt-track i{display:block;height:100%;border-radius:9px;background:rgba(255,255,255,.35);}
#pc-page-roleplay-hub .vt-bar.lead .vt-track i{background:linear-gradient(90deg,var(--rph-a3),var(--rph-a5));}
#pc-page-roleplay-hub .vt-note{margin:9px 2px 0;font-size:.64rem;line-height:1.5;color:rgba(255,255,255,.55);}
#pc-page-roleplay-hub .vt-lead{margin:8px 2px 12px;font-size:.76rem;line-height:1.55;color:rgba(255,255,255,.78);}
#pc-page-roleplay-hub .vt-lbl{display:block;margin:12px 2px 5px;font-size:.64rem;font-weight:700;color:rgba(255,255,255,.6);}
#pc-page-roleplay-hub .vt-input{width:100%;box-sizing:border-box;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.25);color:#fff;font-family:inherit;font-size:.78rem;outline:none;}
#pc-page-roleplay-hub .vt-input:focus{border-color:rgba(var(--rph-a4-rgb),.7);box-shadow:0 0 0 3px rgba(var(--rph-a3-rgb),.2);}
#pc-page-roleplay-hub .vt-ta{min-height:150px;resize:vertical;line-height:1.55;}
#pc-page-roleplay-hub .vt-hint{display:block;margin:5px 2px 0;font-size:.6rem;text-align:right;color:rgba(255,255,255,.45);}
#pc-page-roleplay-hub .vt-btn,#pc-page-roleplay-hub .vt-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:12px;font-family:inherit;font-weight:800;font-size:.76rem;cursor:pointer;color:#fff;}
#pc-page-roleplay-hub .vt-btn{border:none;background:linear-gradient(135deg,var(--rph-a3),var(--rph-a1));}
#pc-page-roleplay-hub .vt-btn:hover{filter:brightness(1.08);}
#pc-page-roleplay-hub .vt-ghost{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);margin-top:10px;}
#pc-page-roleplay-hub .vt-ghost:hover{background:rgba(255,255,255,.1);}
#pc-page-roleplay-hub .vt-btn.wide,#pc-page-roleplay-hub .vt-ghost.wide{display:flex;width:100%;margin-top:12px;padding:13px 14px;font-size:.8rem;}
#pc-page-roleplay-hub .vt-btn[disabled],#pc-page-roleplay-hub .vt-ghost[disabled]{opacity:.45;cursor:not-allowed;}
#pc-page-roleplay-hub .vt-msg{margin-top:10px;padding:10px 12px;border-radius:12px;font-size:.72rem;font-weight:700;line-height:1.45;}
#pc-page-roleplay-hub .vt-msg.ok{background:rgba(74,222,128,.1);color:#bbf7d0;border:1px solid rgba(74,222,128,.3);}
#pc-page-roleplay-hub .vt-msg.err{background:rgba(248,113,113,.13);color:#fecaca;border:1px solid rgba(248,113,113,.35);}

/* ══════════ Administration RP : listes progressives, Élections, Économie ══════════ */
.pca-more{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 0 4px;grid-column:1/-1;}
.pca-more .pca-btn{margin:0;padding:8px 14px;font-size:.72rem;}
.pca-more small{font-size:.7rem;color:rgba(255,255,255,.45);}
.pel-help{margin:8px 0 4px;font-size:.74rem;line-height:1.55;color:rgba(255,255,255,.55);}
.pel-swrow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 0;border-top:1px solid rgba(255,255,255,.06);font-size:.8rem;color:rgba(255,255,255,.82);}
.pel-swrow:first-of-type{border-top:none;}
.pel-phase{padding:4px 10px;border-radius:99px;font-size:.7rem;font-weight:700;color:#bfdbfe;background:rgba(59,130,246,.14);border:1px solid rgba(96,165,250,.3);}
.pel-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:14px;}
.pel-step{position:relative;padding:10px 12px 10px 30px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(148,163,184,.14);}
.pel-step i{position:absolute;left:11px;top:14px;width:9px;height:9px;border-radius:50%;border:2px solid rgba(255,255,255,.3);}
.pel-step.done i{background:#60a5fa;border-color:#60a5fa;}
.pel-step b{display:block;font-size:.74rem;color:#fff;}
.pel-step small{display:block;margin-top:2px;font-size:.7rem;color:rgba(255,255,255,.55);}
.pel-edit{margin-top:14px;}
.pel-edit summary,.pel-prog summary{cursor:pointer;font-size:.74rem;font-weight:700;color:#93c5fd;list-style:none;}
.pel-edit summary::-webkit-details-marker,.pel-prog summary::-webkit-details-marker{display:none;}
.pel-edit summary::before,.pel-prog summary::before{content:'+ ';}
.pel-edit[open] summary::before,.pel-prog[open] summary::before{content:'− ';}
.pel-edit > .plt-f{margin-top:10px;}
.pel-cand{padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(148,163,184,.12);margin-top:8px;}
.pel-cand-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;}
.pel-cand-top b{display:block;font-size:.86rem;color:#fff;}
.pel-cand-top small{display:block;font-size:.68rem;color:rgba(255,255,255,.45);font-family:ui-monospace,monospace;}
.pel-tag{flex-shrink:0;padding:3px 9px;border-radius:99px;font-size:.66rem;font-weight:700;border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.7);}
.pel-tag.approved{color:#86efac;border-color:rgba(74,222,128,.35);background:rgba(74,222,128,.08);}
.pel-tag.pending{color:#fde68a;border-color:rgba(251,191,36,.35);background:rgba(251,191,36,.07);}
.pel-tag.rejected{color:#fca5a5;border-color:rgba(248,113,113,.35);background:rgba(248,113,113,.07);}
.pel-slogan{margin-top:6px;font-size:.76rem;font-style:italic;color:rgba(255,255,255,.75);}
.pel-prog{margin-top:8px;}
.pel-prog > div{margin-top:6px;padding:10px 12px;border-radius:10px;background:rgba(0,0,0,.2);font-size:.76rem;line-height:1.6;color:rgba(255,255,255,.8);white-space:pre-wrap;word-break:break-word;}
.pel-sub{margin-top:8px;font-size:.72rem;color:rgba(255,255,255,.55);}
.pel-empty{padding:14px;border-radius:12px;border:1px dashed rgba(255,255,255,.12);font-size:.76rem;color:rgba(255,255,255,.5);text-align:center;}
.pel-bars{display:grid;gap:10px;margin-top:6px;}
.pel-bar-t{display:flex;justify-content:space-between;gap:10px;margin-bottom:5px;font-size:.78rem;color:#fff;}
.pel-bar-t span{color:rgba(255,255,255,.6);font-variant-numeric:tabular-nums;white-space:nowrap;}
.pel-track{display:block;height:7px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden;}
.pel-track i{display:block;height:100%;border-radius:9px;background:rgba(255,255,255,.35);}
.pel-bar.lead .pel-track i{background:#60a5fa;}
.pel-warn{margin-bottom:10px;padding:10px 12px;border-radius:10px;font-size:.76rem;color:#fde68a;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.3);}
.pel-proclaim{border-color:rgba(96,165,250,.35);}
.pel-proclaim .pel-swrow{margin-top:10px;border-top:1px solid rgba(255,255,255,.06);}
.pe-d{display:block;font-size:.72rem;color:rgba(255,255,255,.55);}
.pe-d.up{color:#86efac;}
.pe-d.down{color:#fca5a5;}
.pe-alerts{display:grid;gap:8px;margin-bottom:14px;}
.pe-alert{padding:10px 13px;border-radius:12px;font-size:.78rem;line-height:1.45;}
.pe-alert.warn{color:#fde68a;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.3);}
.pe-alert.info{color:#bfdbfe;background:rgba(59,130,246,.08);border:1px solid rgba(96,165,250,.28);}
.pe-chart{margin-top:10px;}
.pe-chart svg{display:block;width:100%;height:170px;border-radius:12px;background:rgba(0,0,0,.18);}
.pe-axis{display:flex;justify-content:space-between;gap:10px;margin-top:6px;font-size:.68rem;color:rgba(255,255,255,.45);}
.pe-table{display:grid;gap:4px;}
.pe-tr{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:8px 10px;border-radius:9px;background:rgba(255,255,255,.03);font-size:.76rem;color:rgba(255,255,255,.82);}
.pe-tr span{min-width:0;}
.pe-tr span b{display:block;color:#fff;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pe-tr span small{display:block;font-size:.66rem;color:rgba(255,255,255,.45);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pe-tr .in{color:#86efac;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
.pe-tr .out{color:#fca5a5;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
.pe-tr .n{color:rgba(255,255,255,.45);text-align:right;font-variant-numeric:tabular-nums;}
.pe-table .pe-tr:has(> span:nth-child(3)){grid-template-columns:1fr auto auto;}
.pe-table .pe-tr:has(> span:nth-child(4)){grid-template-columns:1fr 130px 130px 50px;}
.pe-th{grid-template-columns:1fr 130px 130px 50px;margin-top:6px;background:transparent;font-size:.66rem;font-weight:700;color:rgba(255,255,255,.45);}
.pe-th span:not(:first-child){text-align:right;}
.pe-2col{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0 14px;}
.pe-2col > .plt-block{margin-top:18px;}
.pe-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;}
.pe-facts span{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.03);font-size:.7rem;color:rgba(255,255,255,.55);}
.pe-facts b{display:block;margin-top:2px;font-size:.84rem;color:#fff;}
@media(max-width:600px){.pe-table .pe-tr:has(> span:nth-child(4)),.pe-th{grid-template-columns:1fr 90px 90px 34px;}}
