/* ===========================================================================
   Crimzie · /compte — dashboard viewer (DA hero). S'appuie sur legal.css.
   =========================================================================== */
:root{ --crimzie-blue:59,134,255; --dc:120,135,255; }

/* header nav */
.site-header nav{display:flex;align-items:center;gap:clamp(12px,1.6vw,24px)}
.hnav{display:flex;align-items:center;gap:clamp(12px,1.6vw,26px)}
.hnav a{font-family:var(--font-ui);font-size:.8rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:rgba(241,241,241,.7);text-decoration:none;white-space:nowrap;transition:color .2s}
.hnav a:hover,.hnav a.is-active{color:#fff}
@media(max-width:760px){.hnav{display:none}}

main.acc{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:clamp(24px,4vh,48px) 0 24px}

/* ---------- HERO invité ---------- */
.guest-hero{text-align:center;padding:clamp(40px,8vh,86px) 0}
.guest-hero h1{margin:0 0 14px;font-family:var(--font-display);font-size:clamp(2.4rem,5.6vw,4.2rem);
  font-weight:800;line-height:.94;text-transform:uppercase;letter-spacing:-.025em;color:#fff;
  text-shadow:0 18px 60px rgba(0,0,0,.6)}
.guest-hero h1 .dot{color:var(--red)}
.guest-hero p{margin:0 auto 26px;max-width:50ch;color:rgba(241,241,241,.78);
  font-size:clamp(1rem,1.4vw,1.2rem);font-weight:500;line-height:1.6}
.btn-discord{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:56px;
  padding:0 30px;border-radius:var(--r-pill);text-decoration:none;color:#fff;
  font-family:var(--font-display);font-size:.86rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  border:1px solid rgba(var(--dc),.62);background:linear-gradient(180deg,rgb(88,101,242),#3d4bcc);
  box-shadow:0 14px 34px rgba(var(--dc),.3),inset 0 1px 0 rgba(255,255,255,.3);
  transition:transform .2s,box-shadow .2s,filter .2s}
.btn-discord:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 0 44px rgba(var(--dc),.5)}
.btn-discord svg{width:20px;height:20px;fill:#fff;flex:0 0 auto}

/* ---------- HERO connecté ---------- */
.acc-hero{display:flex;align-items:center;gap:clamp(18px,2.4vw,28px);flex-wrap:wrap;
  padding:clamp(22px,3vw,34px);border:1px solid var(--glass-brd);border-radius:var(--r-lg);
  background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  box-shadow:var(--shadow-glass);position:relative;overflow:hidden}
.acc-hero::before{content:"";position:absolute;inset:1px 1px auto 1px;height:100px;border-radius:inherit;
  pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.1),transparent)}
.acc-hero>*{position:relative}
.acc-avatar{width:84px;height:84px;border-radius:50%;object-fit:cover;flex:0 0 auto;
  border:2px solid rgba(var(--red-soft),.6);box-shadow:0 0 30px rgba(var(--red-soft),.25)}
.acc-avatar-fb{width:84px;height:84px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;
  border:2px solid rgba(var(--red-soft),.6);background:rgba(var(--red-soft),.14);
  font-family:var(--font-display);font-weight:800;font-size:1.6rem;color:#fff}
.acc-id{display:grid;gap:4px}
.acc-id h1{margin:0;font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.3rem);font-weight:800;
  line-height:1;color:#fff;letter-spacing:-.01em}
.acc-id .tag{color:rgba(241,241,241,.55);font-size:.92rem;font-weight:600}
.acc-status{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-size:.7rem;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;color:rgb(124,223,118)}
.acc-status::before{content:"";width:7px;height:7px;border-radius:50%;background:rgb(124,223,118);
  box-shadow:0 0 10px rgba(124,223,118,.8)}
.acc-hero .sub{flex-basis:100%;margin:4px 0 0;color:rgba(241,241,241,.6);font-size:.9rem;font-weight:500}

/* ---------- STATS ---------- */
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,18px);
  margin-top:clamp(18px,2.6vh,26px)}
.stat{padding:clamp(16px,2vw,22px);border:1px solid var(--glass-brd);border-radius:var(--r-md);
  background:var(--glass-soft);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  box-shadow:0 14px 34px rgba(0,0,0,.35),inset 0 1px 0 var(--glass-hi);
  transition:transform .3s cubic-bezier(.16,.84,.24,1),border-color .3s}
.stat:hover{transform:translateY(-3px);border-color:rgba(var(--red-soft),.4)}
.stat .st-k{font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(241,241,241,.5);margin:0 0 8px}
.stat .st-v{font-family:var(--font-display);font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:800;color:#fff;
  line-height:1;font-variant-numeric:tabular-nums}
.stat.hi .st-v{color:rgb(var(--red-soft));text-shadow:0 0 24px rgba(var(--red-soft),.3)}
@media(max-width:760px){.stats-grid{grid-template-columns:repeat(2,1fr)}}

/* ---------- GRILLE PRINCIPALE ---------- */
.acc-cols{display:grid;grid-template-columns:1.15fr .9fr;gap:clamp(14px,2vw,22px);
  margin-top:clamp(18px,2.6vh,26px);align-items:start}
@media(max-width:900px){.acc-cols{grid-template-columns:1fr}}
.acc-col{display:grid;gap:clamp(14px,2vw,22px)}

.acc-card{padding:clamp(20px,2.4vw,28px);border:1px solid var(--glass-brd);border-radius:var(--r-lg);
  background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  box-shadow:0 18px 44px rgba(0,0,0,.4),inset 0 1px 0 var(--glass-hi)}
.acc-card h2{margin:0 0 16px;font-family:var(--font-display);font-size:1.06rem;font-weight:700;color:#fff;
  text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:10px}
.acc-card h2 .hdot{width:7px;height:7px;border-radius:2px;background:rgb(var(--red-soft));
  box-shadow:0 0 10px rgba(var(--red-soft),.6);transform:rotate(45deg)}

.acc-empty{margin:0;color:rgba(241,241,241,.45);font-size:.92rem;font-weight:500}
.acc-note{margin:10px 0 0;color:rgba(241,241,241,.6);font-size:.86rem;font-weight:500}
.acc-note b{color:#fff}

/* Rumble */
.rumble-linked{display:grid;gap:8px}
.rumble-linked .ru{font-family:var(--font-display);font-size:1.3rem;font-weight:800;color:rgb(124,223,118)}
.rumble-linked p{margin:0;color:rgba(241,241,241,.7);font-size:.92rem;font-weight:500;line-height:1.5}
.btn-red-sm{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;
  padding:0 22px;border-radius:var(--r-pill);border:1px solid rgba(var(--red-soft),.7);color:#fff;
  font-family:var(--font-display);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  background:linear-gradient(180deg,rgb(var(--red-soft)),#b51c10);cursor:pointer;text-decoration:none;
  box-shadow:0 12px 28px rgba(var(--red-soft),.28),inset 0 1px 0 rgba(255,255,255,.3);
  transition:transform .2s,filter .2s,box-shadow .2s,opacity .2s}
.btn-red-sm:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.07);
  box-shadow:0 0 38px rgba(var(--red-soft),.45)}
.btn-red-sm:disabled{opacity:.5;cursor:not-allowed}
.link-code{margin-top:14px;padding:16px 18px;border-radius:var(--r-md);border:1px dashed rgba(var(--red-soft),.5);
  background:rgba(8,9,13,.5);display:grid;gap:6px}
.link-code code{font-family:ui-monospace,Menlo,monospace;font-size:1.3rem;font-weight:700;color:#fff;
  letter-spacing:.06em}
.link-code span{color:rgba(241,241,241,.6);font-size:.84rem;font-weight:500}
#rumbleMsg{margin:10px 0 0;min-height:18px;color:#ff8e79;font-size:.86rem;font-weight:600}
#rumbleMsg.ok{color:rgb(124,223,118)}

/* rewards */
.rw-cost{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;
  border-radius:var(--r-md);border:1px solid rgba(255,255,255,.1);background:rgba(8,9,13,.4);margin:0 0 12px}
.rw-cost span{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(241,241,241,.6)}
.rw-cost b{font-family:var(--font-display);font-size:1.1rem;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}
.rw-list{display:grid;gap:8px}
.rw-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;
  border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.08);background:rgba(8,9,13,.4)}
.rw-row .rw-item{color:#fff;font-size:.9rem;font-weight:600}
.rw-row .rw-when{color:rgba(241,241,241,.45);font-size:.8rem;font-weight:600}
.acc-card .cta-row{margin-top:16px}

/* calls viewers */
.call-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.call-stats-grid div{display:grid;gap:5px;padding:11px 12px;border-radius:var(--r-sm);
  border:1px solid rgba(255,255,255,.08);background:rgba(8,9,13,.42)}
.call-stats-grid span{font-size:.56rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(241,241,241,.52)}
.call-stats-grid b{font-family:var(--font-display);font-size:1.05rem;font-weight:850;color:#fff}
.viewer-call-history{display:grid;gap:8px}
.viewer-call-row{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 12px;border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.08);background:rgba(8,9,13,.38)}
.viewer-call-row span{min-width:0}
.viewer-call-row strong{display:block;color:#fff;font-size:.88rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.viewer-call-row em{display:block;margin-top:2px;color:rgba(241,241,241,.45);font-style:normal;font-size:.76rem;font-weight:650}
.viewer-call-row b{flex:0 0 auto;color:#fff;font-family:var(--font-display);font-size:.84rem;font-weight:850}
@media(max-width:560px){.call-stats-grid{grid-template-columns:1fr}}

/* live */
.lv-head{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.lv-dot{width:9px;height:9px;border-radius:50%;background:rgba(241,241,241,.35);flex:0 0 auto}
.lv-dot.on{background:var(--red);box-shadow:0 0 12px rgba(var(--red-soft),.9);animation:pulse 1.6s ease-in-out infinite}
.lv-state{font-family:var(--font-display);font-size:.92rem;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:#fff}
.lv-title{margin:0 0 14px;color:rgba(241,241,241,.72);font-size:.94rem;font-weight:500;line-height:1.45}
.lv-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 16px}
.lv-m{padding:10px 12px;border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.08);background:rgba(8,9,13,.4)}
.lv-m .k{font-size:.58rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:rgba(241,241,241,.5);margin:0 0 4px}
.lv-m .v{font-family:var(--font-display);font-size:1rem;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* communauté */
.comm-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.comm-btn{--bc:120,135,255;display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:14px 16px;border-radius:var(--r-md);text-decoration:none;
  border:1px solid var(--glass-brd);background:var(--glass-soft);
  transition:transform .25s,border-color .25s,box-shadow .25s}
.comm-btn:hover{transform:translateY(-3px);border-color:rgba(var(--bc),.55);
  box-shadow:0 14px 34px rgba(0,0,0,.4),0 0 26px rgba(var(--bc),.2)}
.comm-btn .cn{font-family:var(--font-display);font-size:.86rem;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:#fff}
.comm-btn .ar{color:rgba(var(--bc),.95);font-weight:800}

@media(max-width:520px){
  main.acc{width:calc(100% - 28px)}
  .lv-meta{grid-template-columns:1fr 1fr}
  .comm-row{grid-template-columns:1fr}
}

/* révélations */
@media (prefers-reduced-motion:no-preference){
  html.reveal-on .rv{opacity:0;transform:translateY(32px) scale(.97);filter:blur(5px);
    transition:opacity .6s cubic-bezier(.16,.84,.24,1),transform .75s cubic-bezier(.16,.84,.24,1),filter .55s ease;
    transition-delay:calc(var(--rvi,0) * 70ms)}
  html.reveal-on .rv.is-in{opacity:1;transform:none;filter:none}
}
