/* ═══════════════════════════════════════════════════════════
   LELEVATOR CONNECT v4 — Design System complet
   ═══════════════════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,600&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap');

:root {
  --blue:        #1B3A5C;
  --blue-mid:    #2E6DA4;
  --blue-bright: #4A90D9;
  --blue-glow:   rgba(46,109,164,0.22);
  --gold:        #C9A84C;
  --dark-bg:     #0F1623;
  --dark-card:   #161E2E;
  --dark-card-2: #1C2537;
  --dark-border: rgba(46,109,164,0.18);
  --dark-b2:     rgba(255,255,255,0.06);
  --text:        #E8EFF8;
  --text-mid:    #94A3B8;
  --text-dim:    #64748B;
  --success:     #10B981;
  --radius-sm:   8px;
  --radius:      14px;
  --radius-lg:   18px;
  --shadow:      0 4px 24px rgba(0,0,0,0.3);
  --shadow-lg:   0 8px 48px rgba(0,0,0,0.4);
  --font-d:      'Playfair Display',Georgia,serif;
  --font-b:      'Plus Jakarta Sans',system-ui,sans-serif;
  --ease:        cubic-bezier(0.4,0,0.2,1);
}

/* ── Reset ─────────────────────────────────────────────────── */
.llc-page *,.llc-card *,.llc-filters *,
.llc-single *,.llc-interest-wrapper *,
.llc-auth-wrap *,.llc-mag-card *{ box-sizing:border-box;margin:0;padding:0; }

/* ── Page wrapper ──────────────────────────────────────────── */
.llc-page{ font-family:var(--font-b);color:var(--text);max-width:1180px;margin:0 auto;padding:40px 20px 80px; }

/* ══════════════════════════════════════════════════════════════
   GUEST BANNER
   ══════════════════════════════════════════════════════════════ */
.llc-guest-banner{ background:linear-gradient(135deg,var(--blue) 0%,#0d2640 100%);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:18px 24px;margin-bottom:28px; }
.llc-guest-banner-inner{ display:flex;align-items:center;gap:14px;flex-wrap:wrap; }
.llc-guest-banner-inner>svg{ color:var(--gold);flex-shrink:0; }
.llc-guest-banner-inner>span{ flex:1;font-size:14px;font-weight:500;color:var(--text);min-width:200px; }
.llc-guest-actions{ display:flex;gap:10px;flex-shrink:0; }
.llc-btn-banner{ display:inline-flex;align-items:center;padding:9px 20px;background:var(--gold);color:#000;border-radius:50px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s var(--ease); }
.llc-btn-banner:hover{ background:#dbb85a;transform:translateY(-1px); }
.llc-btn-banner-outline{ display:inline-flex;align-items:center;padding:9px 20px;background:transparent;color:var(--text);border:1px solid rgba(255,255,255,0.2);border-radius:50px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s var(--ease); }
.llc-btn-banner-outline:hover{ border-color:rgba(255,255,255,0.5);color:white; }

/* ══════════════════════════════════════════════════════════════
   FILTRES
   ══════════════════════════════════════════════════════════════ */
.llc-filters{ background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:32px;display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;box-shadow:var(--shadow); }
.llc-filter-group{ display:flex;flex-direction:column;gap:6px;flex:1;min-width:150px; }
.llc-filter-label{ display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim); }
.llc-filter-label svg{ color:var(--blue-mid);flex-shrink:0; }
.llc-filters input[type="text"],.llc-filters select{ width:100%;padding:10px 14px;border:1px solid var(--dark-b2);border-radius:var(--radius-sm);font-family:var(--font-b);font-size:13px;color:var(--text);background:var(--dark-bg);transition:all .2s var(--ease);outline:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px; }
.llc-filters input[type="text"]{ background-image:none;padding-right:14px; }
.llc-filters input::placeholder{ color:var(--text-dim); }
.llc-filters option{ background:var(--dark-card-2);color:var(--text); }
.llc-filters input:focus,.llc-filters select:focus{ border-color:var(--blue-mid);box-shadow:0 0 0 3px var(--blue-glow); }
.llc-filter-actions{ display:flex;gap:10px;align-items:flex-end;flex-shrink:0; }
.llc-btn-filter{ display:inline-flex;align-items:center;gap:8px;background:var(--blue-mid);color:#fff;border:none;padding:10px 22px;border-radius:var(--radius-sm);font-family:var(--font-b);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s var(--ease);white-space:nowrap; }
.llc-btn-filter:hover{ background:var(--blue-bright);transform:translateY(-1px);box-shadow:0 4px 16px var(--blue-glow); }
.llc-btn-reset{ display:inline-flex;align-items:center;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-mid);text-decoration:none;border:1px solid var(--dark-b2);background:transparent;transition:all .2s var(--ease);white-space:nowrap; }
.llc-btn-reset:hover{ color:#f87171;border-color:rgba(248,113,113,0.3);background:rgba(248,113,113,0.05); }
.llc-count{ font-size:13px;font-weight:500;color:var(--text-dim);margin-bottom:20px; }

/* ══════════════════════════════════════════════════════════════
   CARDS GRILLE
   ══════════════════════════════════════════════════════════════ */
.llc-grid{ display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:40px; }
.llc-card{ background:var(--dark-card);border:1px solid var(--dark-b2);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:14px;transition:all .22s var(--ease);position:relative;overflow:hidden; }
.llc-card::after{ content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--blue),var(--blue-bright));opacity:0;transition:all .22s var(--ease); }
.llc-card:hover{ border-color:var(--dark-border);box-shadow:var(--shadow-lg);transform:translateY(-4px);background:var(--dark-card-2); }
.llc-card:hover::after{ opacity:1; }

/* Blur card */
.llc-card-blurred{ position:relative;overflow:hidden; }
.llc-card-blurred>*:not(.llc-blur-overlay){ filter:blur(5px);user-select:none;pointer-events:none; }
.llc-blur-overlay{ position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(15,22,35,0.75);backdrop-filter:blur(2px);z-index:10;border-radius:var(--radius-lg); }
.llc-blur-content{ text-align:center;padding:20px; }
.llc-blur-content svg{ color:var(--blue-mid);margin-bottom:12px; }
.llc-blur-content p{ font-size:14px;font-weight:600;color:var(--text);margin-bottom:16px;line-height:1.4; }
.llc-btn-unlock{ display:inline-flex;align-items:center;padding:10px 22px;background:var(--blue-mid);color:#fff;border-radius:50px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s var(--ease); }
.llc-btn-unlock:hover{ background:var(--blue-bright);transform:translateY(-1px);color:white; }

.llc-card-top{ display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
.llc-badge-secteur{ display:inline-block;padding:4px 10px;background:rgba(46,109,164,0.15);color:var(--blue-bright);border:1px solid rgba(46,109,164,0.3);border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.6px; }
.llc-badge-av{ display:inline-block;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.6px; }
.llc-card-author{ display:flex;align-items:center;gap:10px; }
.llc-card-avatar{ width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--dark-border);flex-shrink:0; }
.llc-author-name{ display:block;font-size:14px;font-weight:700;color:#ffffff !important;line-height:1.2; }
.llc-author-sub{ display:block;font-size:12px;color:var(--text-dim);margin-top:2px; }
.llc-card-title{ font-family:var(--font-d);font-size:17px;font-weight:600;line-height:1.3;color:var(--text); }
.llc-card-title a{ color:inherit;text-decoration:none;transition:all .2s var(--ease); }
.llc-card-title a:hover{ color:var(--blue-bright); }
.llc-card-desc{ font-size:13px;line-height:1.65;color:var(--text-mid);flex-grow:1; }
.llc-tags{ display:flex;flex-wrap:wrap;gap:6px; }
.llc-tag{ display:inline-block;padding:4px 10px;background:rgba(255,255,255,0.05);border:1px solid var(--dark-b2);border-radius:20px;font-size:11px;font-weight:500;color:var(--text-mid);transition:all .2s var(--ease); }
.llc-tag:hover{ background:rgba(46,109,164,0.15);border-color:var(--blue-mid);color:var(--blue-bright); }
.llc-card-footer{ display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:14px;border-top:1px solid var(--dark-b2); }
.llc-card-info{ display:flex;flex-wrap:wrap;gap:10px; }
.llc-info-item{ display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-mid);font-weight:500; }
.llc-info-item svg{ color:var(--blue-mid);flex-shrink:0; }
.llc-info-item.llc-invest{ color:var(--gold); }
.llc-info-item.llc-invest svg{ color:var(--gold); }
.llc-card-link{ display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--blue-bright);text-decoration:none;white-space:nowrap;transition:all .2s var(--ease); }
.llc-card-link:hover{ color:#fff;gap:10px; }

/* CTA non-connecté */
.llc-cta-section{ margin-top:40px; }
.llc-cta-box{ background:linear-gradient(135deg,var(--blue) 0%,#0d2640 100%);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:48px 40px;text-align:center;max-width:540px;margin:0 auto; }
.llc-cta-box h3{ font-family:var(--font-d);font-size:26px;font-weight:700;color:var(--text);margin-bottom:12px; }
.llc-cta-box p{ font-size:15px;color:var(--text-mid);margin-bottom:28px;line-height:1.6; }

.llc-empty{ text-align:center;padding:80px 24px;color:var(--text-dim); }
.llc-empty svg{ margin-bottom:16px;opacity:0.3; }
.llc-empty p{ font-size:16px;margin-bottom:24px;color:var(--text-mid); }

.llc-pagination{ display:flex;justify-content:center;gap:8px;margin-top:40px; }
.llc-pagination .page-numbers{ display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-sm);border:1px solid var(--dark-b2);font-family:var(--font-b);font-size:13px;font-weight:600;color:var(--text-mid);text-decoration:none;transition:all .2s var(--ease); }
.llc-pagination .page-numbers:hover,.llc-pagination .page-numbers.current{ background:var(--blue-mid);border-color:var(--blue-mid);color:#fff; }

/* ══════════════════════════════════════════════════════════════
   MAGAZINE
   ══════════════════════════════════════════════════════════════ */
.llc-magazine-intro{ display:flex;align-items:flex-start;gap:20px;background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:28px 32px;margin-bottom:40px; }
.llc-magazine-intro-icon{ width:56px;height:56px;background:rgba(46,109,164,0.15);border:1px solid var(--dark-border);border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--blue-bright); }
.llc-magazine-intro-title{ font-family:var(--font-d);font-size:22px;font-weight:700;color:var(--text);margin-bottom:8px; }
.llc-magazine-intro-text{ font-size:14px;line-height:1.7;color:var(--text-mid); }
.llc-magazine-grid{ display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px; }
.llc-mag-card{ background:var(--dark-card);border:1px solid var(--dark-b2);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:all .22s var(--ease); }
.llc-mag-card:hover{ border-color:var(--dark-border);transform:translateY(-4px);box-shadow:var(--shadow-lg); }
.llc-mag-cover{ position:relative;height:220px;overflow:hidden;background:var(--dark-card-2); }
.llc-mag-cover img{ width:100%;height:100%;object-fit:cover;transition:transform .4s ease; }
.llc-mag-card:hover .llc-mag-cover img{ transform:scale(1.05); }
.llc-mag-cover-placeholder{ width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--dark-card-2),var(--blue) 200%);color:rgba(255,255,255,0.2); }
.llc-mag-numero{ position:absolute;top:14px;left:14px;background:var(--blue-mid);color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700; }
.llc-mag-info{ padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1; }
.llc-mag-date{ display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:0.5px; }
.llc-mag-date svg{ color:var(--blue-mid); }
.llc-mag-title{ font-family:var(--font-d);font-size:18px;font-weight:700;color:var(--text);line-height:1.3; }
.llc-mag-theme{ font-size:13px;color:var(--text-mid);line-height:1.5;flex:1; }
.llc-mag-cta{ display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--blue-bright);margin-top:8px;transition:all .2s var(--ease); }
.llc-mag-card:hover .llc-mag-cta{ gap:10px;color:#fff; }

/* ══════════════════════════════════════════════════════════════
   SINGLE MAGAZINE — Design retravaillé
   ══════════════════════════════════════════════════════════════ */
.llc-single{ font-family:var(--font-b);max-width:860px;margin:0 auto;padding:48px 24px 80px;color:var(--text); }

.llc-mag-back{ display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--text-mid);text-decoration:none;margin-bottom:32px;padding:8px 16px;background:var(--dark-card);border:1px solid var(--dark-b2);border-radius:50px;transition:all .2s var(--ease); }
.llc-mag-back:hover{ color:var(--blue-bright);border-color:var(--dark-border);background:var(--dark-card-2); }

.llc-mag-single-header{ margin-bottom:32px; }
.llc-mag-meta-row{ display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px; }
.llc-mag-date-badge{ display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-dim);background:var(--dark-card);border:1px solid var(--dark-b2);padding:5px 12px;border-radius:20px; }
.llc-mag-date-badge svg{ color:var(--blue-mid); }

.llc-mag-single-title{ font-family:var(--font-d);font-size:clamp(30px,5vw,52px);font-weight:700;line-height:1.15;color:var(--text);margin-bottom:24px;letter-spacing:-.5px; }

.llc-mag-theme-block{ background:linear-gradient(135deg,rgba(46,109,164,0.12) 0%,rgba(27,58,92,0.08) 100%);border:1px solid rgba(46,109,164,0.2);border-left:3px solid var(--blue-mid);border-radius:0 var(--radius) var(--radius) 0;padding:18px 24px; }
.llc-mag-theme-label{ font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--blue-bright);display:block;margin-bottom:6px; }
.llc-mag-theme-text{ font-family:var(--font-d);font-size:20px;font-weight:600;color:var(--text);line-height:1.3; }

.llc-mag-cover-full{ border-radius:var(--radius-lg);overflow:hidden;margin-bottom:40px;box-shadow:var(--shadow-lg); }
.llc-mag-cover-full img{ width:100%;max-height:500px;object-fit:cover;display:block; }

/* Rich text content styling */
.llc-mag-content{ font-size:16px;line-height:1.85;color:var(--text-mid);margin-bottom:40px; }
.llc-mag-content p{ margin-bottom:20px; }
.llc-mag-content h2{ font-family:var(--font-d);font-size:28px;font-weight:700;color:var(--text);margin:36px 0 16px;line-height:1.2; }
.llc-mag-content h3{ font-family:var(--font-d);font-size:22px;font-weight:600;color:var(--text);margin:28px 0 12px; }
.llc-mag-content h4{ font-size:18px;font-weight:700;color:var(--text);margin:24px 0 10px; }
.llc-mag-content strong{ color:var(--text);font-weight:700; }
.llc-mag-content em{ color:var(--text-mid);font-style:italic; }
.llc-mag-content a{ color:var(--blue-bright);text-decoration:underline;text-decoration-color:rgba(74,144,217,0.4);transition:all .2s; }
.llc-mag-content a:hover{ color:#fff;text-decoration-color:var(--blue-bright); }
.llc-mag-content ul,.llc-mag-content ol{ padding-left:24px;margin-bottom:20px; }
.llc-mag-content li{ margin-bottom:8px;color:var(--text-mid); }
.llc-mag-content blockquote{ border-left:3px solid var(--blue-mid);padding:16px 24px;margin:28px 0;background:rgba(46,109,164,0.08);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic;font-size:18px;color:var(--text); }
.llc-mag-content img{ width:100%;border-radius:var(--radius);margin:24px 0;box-shadow:var(--shadow); }
.llc-mag-content hr{ border:none;border-top:1px solid var(--dark-b2);margin:32px 0; }

.llc-mag-pdf-cta{ background:linear-gradient(135deg,var(--blue) 0%,#0d2640 100%);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:32px; }
.llc-mag-pdf-inner{ display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap; }
.llc-mag-pdf-title{ font-size:16px;font-weight:700;color:var(--text);margin-bottom:4px; }
.llc-mag-pdf-sub{ font-size:13px;color:var(--text-mid); }
.llc-mag-bottom-nav{ margin-top:48px;padding-top:28px;border-top:1px solid var(--dark-b2); }

/* ══════════════════════════════════════════════════════════════
   SINGLE PROJECT / PROFILE
   ══════════════════════════════════════════════════════════════ */
.llc-single-header{ margin-bottom:32px;padding-bottom:28px;border-bottom:1px solid var(--dark-b2); }
.llc-single-badges{ display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px; }
.llc-single-title{ font-family:var(--font-d);font-size:clamp(26px,5vw,40px);font-weight:700;color:var(--text);line-height:1.2;margin-bottom:20px; }
.llc-single-meta{ display:flex;flex-wrap:wrap;gap:18px; }
.llc-meta-item{ display:flex;align-items:center;gap:7px;font-size:13px;color:var(--text-mid);font-weight:500; }
.llc-meta-item svg{ color:var(--blue-mid);flex-shrink:0; }
.llc-meta-item strong{ color:var(--text);font-weight:600; }
.llc-info-grid{ display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;background:var(--dark-card);border:1px solid var(--dark-b2);border-radius:var(--radius-lg);padding:22px;margin-bottom:32px; }
.llc-info-box{ display:flex;flex-direction:column;gap:5px; }
.llc-info-box-label{ display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;color:var(--text-dim); }
.llc-info-box-label svg{ color:var(--blue-mid); }
.llc-info-box-value{ font-size:14px;font-weight:600;color:var(--text); }
.llc-section-title{ font-family:var(--font-d);font-size:19px;font-weight:600;color:var(--text);margin-bottom:14px;display:flex;align-items:center;gap:12px; }
.llc-section-title::after{ content:'';flex:1;height:1px;background:var(--dark-b2); }
.llc-single-body{ font-size:15px;line-height:1.8;color:var(--text-mid);margin-bottom:32px; }
.llc-single-body p{ margin-bottom:14px; }

/* ══════════════════════════════════════════════════════════════
   FORMULAIRES AUTH — Login & Register
   ══════════════════════════════════════════════════════════════ */
.llc-auth-wrap{ font-family:var(--font-b);max-width:520px;margin:40px auto 80px;padding:0 20px; }
.llc-auth-box{ background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:40px;box-shadow:var(--shadow-lg); }
.llc-auth-box-wide{ max-width:640px; }

.llc-auth-header{ text-align:center;margin-bottom:32px; }
.llc-auth-icon{ width:64px;height:64px;background:rgba(46,109,164,0.15);border:1px solid var(--dark-border);border-radius:18px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:var(--blue-bright); }
.llc-auth-title{ font-family:var(--font-d);font-size:28px;font-weight:700;color:var(--text);margin-bottom:8px; }
.llc-auth-sub{ font-size:14px;color:var(--text-mid);line-height:1.5; }

.llc-form-error{ display:flex;align-items:center;gap:10px;background:rgba(239,68,68,0.1);border:1px solid rgba(239,68,68,0.25);color:#f87171;padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:20px;font-size:14px;font-weight:500; }

.llc-auth-form{ display:flex;flex-direction:column;gap:18px; }
.llc-form-grid{ display:grid;grid-template-columns:1fr 1fr;gap:16px; }
.llc-form-field{ display:flex;flex-direction:column;gap:7px; }
.llc-field-full{ grid-column:1/-1; }

.llc-form-field label{ font-size:12px;font-weight:700;color:var(--text-mid);text-transform:uppercase;letter-spacing:0.8px;display:flex;align-items:center;gap:6px; }
.llc-form-field label svg{ color:var(--blue-mid); }
.llc-form-field label .req{ color:#ef4444;margin-left:2px; }

.llc-form-field input[type=text],
.llc-form-field input[type=email],
.llc-form-field input[type=password]{ width:100%;padding:13px 16px;background:var(--dark-bg);border:1.5px solid var(--dark-b2);border-radius:var(--radius-sm);font-family:var(--font-b);font-size:14px;color:var(--text);transition:all .2s var(--ease);outline:none; }
.llc-form-field input::placeholder{ color:var(--text-dim); }
.llc-form-field input:focus{ border-color:var(--blue-mid);box-shadow:0 0 0 3px var(--blue-glow); }

.llc-input-wrap{ position:relative; }
.llc-input-wrap input{ padding-right:48px; }
.llc-eye-btn{ position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-dim);cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .2s; }
.llc-eye-btn:hover{ color:var(--blue-bright); }

.llc-form-row{ display:flex;align-items:center;justify-content:space-between;gap:12px; }
.llc-checkbox-label{ display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13px;color:var(--text-mid); }
.llc-checkbox-label input[type=checkbox]{ width:16px;height:16px;accent-color:var(--blue-mid);cursor:pointer; }
.llc-forgot-link{ font-size:13px;color:var(--blue-bright);text-decoration:none;font-weight:600;white-space:nowrap; }
.llc-forgot-link:hover{ color:#fff; }

/* Photo upload */
.llc-photo-upload{ display:flex;align-items:center;gap:20px;padding:20px;background:var(--dark-bg);border:1.5px dashed var(--dark-border);border-radius:var(--radius);margin-bottom:4px; }
.llc-photo-preview{ width:72px;height:72px;border-radius:50%;background:var(--dark-card-2);border:2px solid var(--dark-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;color:var(--text-dim); }
.llc-photo-info{ display:flex;flex-direction:column;gap:6px; }
.llc-photo-btn{ display:inline-flex;align-items:center;gap:7px;padding:8px 18px;background:rgba(46,109,164,0.15);border:1px solid var(--dark-border);border-radius:50px;font-size:13px;font-weight:700;color:var(--blue-bright);cursor:pointer;transition:all .2s var(--ease); }
.llc-photo-btn:hover{ background:rgba(46,109,164,0.25);color:#fff; }
.llc-photo-hint{ font-size:12px;color:var(--text-dim); }

/* Rôle cards */
.llc-role-cards{ display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.llc-role-card{ cursor:pointer; }
.llc-role-card input{ display:none; }
.llc-role-inner{ display:flex;flex-direction:column;gap:6px;padding:18px;background:var(--dark-bg);border:1.5px solid var(--dark-b2);border-radius:var(--radius);transition:all .2s var(--ease);text-align:center; }
.llc-role-card:hover .llc-role-inner{ border-color:var(--dark-border); }
.llc-role-card.active .llc-role-inner{ border-color:var(--blue-mid);background:rgba(46,109,164,0.1);box-shadow:0 0 0 3px var(--blue-glow); }
.llc-role-icon{ width:44px;height:44px;background:rgba(46,109,164,0.12);border-radius:12px;display:flex;align-items:center;justify-content:center;margin:0 auto 4px;color:var(--blue-bright);transition:all .2s; }
.llc-role-card.active .llc-role-icon{ background:rgba(46,109,164,0.25);color:#fff; }
.llc-role-inner strong{ font-size:14px;font-weight:700;color:var(--text);display:block; }
.llc-role-inner span{ font-size:12px;color:var(--text-dim);line-height:1.4;display:block; }

/* Bouton submit */
.llc-btn-submit{ display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px 28px;background:var(--blue-mid);color:#fff;border:none;border-radius:50px;font-family:var(--font-b);font-size:15px;font-weight:700;cursor:pointer;transition:all .22s var(--ease);box-shadow:0 4px 20px var(--blue-glow);text-decoration:none; }
.llc-btn-submit:hover{ background:var(--blue-bright);transform:translateY(-2px);box-shadow:0 8px 30px var(--blue-glow);color:#fff; }

/* Bouton principal */
.llc-btn-primary{ display:inline-flex;align-items:center;gap:10px;background:var(--blue-mid);color:#fff;padding:13px 28px;border-radius:50px;font-family:var(--font-b);font-size:14px;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:all .22s var(--ease);box-shadow:0 4px 20px var(--blue-glow); }
.llc-btn-primary:hover{ background:var(--blue-bright);transform:translateY(-2px);box-shadow:0 8px 30px var(--blue-glow);color:white; }
.llc-btn-outline{ display:inline-flex;align-items:center;gap:8px;padding:10px 22px;background:transparent;color:var(--text-mid);border:1px solid var(--dark-b2);border-radius:50px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s var(--ease); }
.llc-btn-outline:hover{ border-color:var(--dark-border);color:var(--text);color:white; }

/* Auth footer */
.llc-auth-footer{ text-align:center;margin-top:24px;font-size:14px;color:var(--text-dim); }
.llc-auth-footer a{ color:var(--blue-bright);text-decoration:none;font-weight:600; }
.llc-auth-footer a:hover{ color:#fff; }

/* Already logged */
.llc-already-logged{ text-align:center;padding:32px; }
.llc-logged-avatar{ margin-bottom:16px; }
.llc-logged-avatar img,.llc-user-avatar{ width:72px;height:72px;border-radius:50%;border:3px solid var(--dark-border); }
.llc-already-logged p{ font-size:16px;color:var(--text-mid);margin-bottom:20px; }
.llc-already-logged strong{ color:var(--text); }

/* Success box */
.llc-success-box{ text-align:center;padding:40px; }
.llc-success-icon{ color:var(--success);margin-bottom:20px; }
.llc-success-box h3{ font-family:var(--font-d);font-size:24px;font-weight:700;color:var(--text);margin-bottom:12px; }
.llc-success-box p{ font-size:15px;color:var(--text-mid);line-height:1.6; }

/* Intérêt */
.llc-interest-wrapper{ margin-top:36px; }
.llc-interest-form{ background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:28px;margin-top:18px; }
.llc-interest-form h4{ font-family:var(--font-d);font-size:20px;font-weight:600;margin-bottom:22px;color:var(--text); }
.llc-field{ margin-bottom:18px; }
.llc-field label{ display:block;font-size:12px;font-weight:700;color:var(--text-mid);margin-bottom:7px;letter-spacing:0.3px;text-transform:uppercase; }
.llc-field textarea{ width:100%;padding:12px 16px;border:1.5px solid var(--dark-b2);border-radius:var(--radius-sm);font-family:var(--font-b);font-size:14px;color:var(--text);background:var(--dark-bg);resize:vertical;transition:all .2s var(--ease);outline:none; }
.llc-field textarea::placeholder{ color:var(--text-dim); }
.llc-field textarea:focus{ border-color:var(--blue-mid);box-shadow:0 0 0 3px var(--blue-glow); }
.llc-interest-sent{ display:inline-flex;align-items:center;gap:10px;background:rgba(16,185,129,0.1);color:var(--success);border:1px solid rgba(16,185,129,0.3);padding:13px 22px;border-radius:50px;font-weight:600;font-size:14px;margin-top:20px; }
.llc-success-notice{ display:flex;align-items:center;gap:12px;background:rgba(16,185,129,0.1);border:1px solid rgba(16,185,129,0.25);color:var(--success);padding:16px 22px;border-radius:var(--radius);margin-bottom:24px;font-weight:600;font-size:14px; }

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════════ */
@media(max-width:768px){
  .llc-page{ padding:20px 14px 60px; }
  .llc-single{ padding:24px 14px 60px; }
  .llc-filters{ padding:16px; }
  .llc-filter-group{ min-width:100%; }
  .llc-filter-actions{ width:100%; }
  .llc-btn-filter{ width:100%;justify-content:center; }
  .llc-grid{ grid-template-columns:1fr;gap:14px; }
  .llc-card{ padding:18px; }
  .llc-magazine-grid{ grid-template-columns:1fr; }
  .llc-magazine-intro{ flex-direction:column;padding:20px; }
  .llc-guest-banner-inner{ flex-direction:column;align-items:flex-start; }
  .llc-guest-actions{ width:100%; }
  .llc-btn-banner,.llc-btn-banner-outline{ flex:1;justify-content:center;text-align:center; }
  .llc-auth-box{ padding:24px 20px; }
  .llc-form-grid{ grid-template-columns:1fr; }
  .llc-role-cards{ grid-template-columns:1fr; }
  .llc-field-full{ grid-column:1; }
  .llc-mag-pdf-inner{ flex-direction:column;text-align:center; }
  .llc-mag-pdf-inner .llc-btn-primary{ width:100%;justify-content:center; }
  .llc-form-row{ flex-direction:column;align-items:flex-start;gap:8px; }
  .llc-auth-wrap{ padding:0 14px; }
}
@media(max-width:480px){
  .llc-auth-box{ padding:20px 16px; }
  .llc-btn-primary,.llc-btn-submit{ font-size:14px;padding:13px 20px; }
  .llc-mag-single-title{ font-size:26px; }
}

/* ══════════════════════════════════════════════════════════════
   ACCOUNT NAV MENU
   ══════════════════════════════════════════════════════════════ */
.llc-nav-guest{display:flex;align-items:center;gap:10px}
.llc-nav-login{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-b);font-size:13px;font-weight:600;color:var(--text-mid);text-decoration:none;padding:8px 14px;border:1px solid var(--dark-b2);border-radius:50px;transition:all .2s var(--ease)}
.llc-nav-login:hover{color:var(--blue-bright);border-color:var(--dark-border)}
.llc-nav-register{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-b);font-size:13px;font-weight:700;color:#fff;text-decoration:none;padding:8px 18px;background:var(--blue-mid);border-radius:50px;transition:all .2s var(--ease)}
.llc-nav-register:hover{background:var(--blue-bright);transform:translateY(-1px);color:#fff}

.llc-nav-user{position:relative}
.llc-nav-user-trigger{display:flex;align-items:center;gap:8px;cursor:pointer;padding:6px 12px;border-radius:50px;border:1px solid var(--dark-b2);background:var(--dark-card);transition:all .2s var(--ease);font-family:var(--font-b)}
.llc-nav-user-trigger:hover{border-color:var(--dark-border)}
.llc-nav-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;border:2px solid var(--dark-border)}
.llc-nav-username{font-size:13px;font-weight:600;color:var(--text);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.llc-nav-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius);padding:8px;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transform:translateY(-6px);transition:all .2s var(--ease);z-index:999}
.llc-nav-user.open .llc-nav-dropdown{opacity:1;pointer-events:all;transform:translateY(0)}
.llc-nav-drop-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);font-family:var(--font-b);font-size:13px;font-weight:500;color:var(--text-mid);text-decoration:none;transition:all .2s var(--ease)}
.llc-nav-drop-item:hover{background:rgba(255,255,255,0.05);color:var(--text)}
.llc-nav-drop-item svg{color:var(--blue-mid);flex-shrink:0}
.llc-nav-drop-divider{height:1px;background:var(--dark-b2);margin:6px 0}
.llc-nav-logout:hover{background:rgba(239,68,68,0.08);color:#f87171}
.llc-nav-logout:hover svg{color:#f87171}

/* ══════════════════════════════════════════════════════════════
   DASHBOARD
   ══════════════════════════════════════════════════════════════ */
.llc-dashboard{font-family:var(--font-b);color:var(--text);max-width:960px;margin:0 auto;padding:32px 20px 80px}
.llc-dash-header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:24px 28px;margin-bottom:24px}
.llc-dash-user{display:flex;align-items:center;gap:16px}
.llc-dash-avatar{width:60px;height:60px;border-radius:50%;object-fit:cover;border:3px solid var(--dark-border);flex-shrink:0}
.llc-dash-name{font-family:var(--font-d);font-size:22px;font-weight:700;color:var(--text);margin-bottom:4px}
.llc-dash-email{font-size:13px;color:var(--text-dim)}
.llc-dash-actions{display:flex;gap:12px;flex-wrap:wrap}

.llc-dash-tabs{display:flex;gap:4px;background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:6px;margin-bottom:24px;overflow-x:auto}
.llc-dash-tab{display:inline-flex;align-items:center;padding:9px 18px;border-radius:var(--radius-sm);font-family:var(--font-b);font-size:13px;font-weight:600;color:var(--text-dim);text-decoration:none;transition:all .2s var(--ease);white-space:nowrap}
.llc-dash-tab:hover{color:var(--text);background:rgba(255,255,255,0.04)}
.llc-dash-tab.active{background:var(--blue-mid);color:#fff}

.llc-dash-content{min-height:300px}
.llc-dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:32px}
.llc-dash-stat{background:var(--dark-card);border:1px solid var(--dark-b2);border-radius:var(--radius-lg);padding:20px;text-align:center}
.llc-dash-stat-num{font-family:var(--font-d);font-size:36px;font-weight:700;color:var(--blue-bright);line-height:1}
.llc-dash-stat-label{font-size:12px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.8px;margin-top:6px}

.llc-dash-section-title{font-family:var(--font-d);font-size:18px;font-weight:600;color:var(--text);margin-bottom:14px;display:flex;align-items:center;gap:12px}
.llc-dash-section-title::after{content:'';flex:1;height:1px;background:var(--dark-b2)}
.llc-dash-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}

.llc-dash-list{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.llc-dash-item{display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--dark-card);border:1px solid var(--dark-b2);border-radius:var(--radius);padding:16px 20px;transition:all .2s var(--ease)}
.llc-dash-item:hover{border-color:var(--dark-border);background:var(--dark-card-2)}
.llc-dash-item-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.llc-dash-item-title{font-size:15px;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.llc-dash-item-meta{font-size:12px;color:var(--text-dim)}
.llc-dash-item-right{display:flex;align-items:center;gap:10px;flex-shrink:0;flex-wrap:wrap}
.llc-dash-item-btns{display:flex;gap:8px}
.llc-dash-edit-btn{display:inline-flex;align-items:center;padding:6px 14px;background:rgba(46,109,164,0.15);border:1px solid var(--dark-border);color:var(--blue-bright);border-radius:50px;font-size:12px;font-weight:700;text-decoration:none;transition:all .2s var(--ease)}
.llc-dash-edit-btn:hover{background:var(--blue-mid);color:#fff;border-color:var(--blue-mid)}
.llc-dash-view-btn{display:inline-flex;align-items:center;padding:6px 14px;background:transparent;border:1px solid var(--dark-b2);color:var(--text-mid);border-radius:50px;font-size:12px;font-weight:600;text-decoration:none;transition:all .2s var(--ease)}
.llc-dash-view-btn:hover{color:var(--text);border-color:var(--dark-border)}

.llc-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap}
.llc-status-success{background:rgba(16,185,129,0.12);color:var(--success);border:1px solid rgba(16,185,129,0.25)}
.llc-status-pending{background:rgba(201,168,76,0.12);color:var(--gold);border:1px solid rgba(201,168,76,0.25)}
.llc-status-rejected{background:rgba(239,68,68,0.1);color:#f87171;border:1px solid rgba(239,68,68,0.2)}

.llc-dash-empty{text-align:center;padding:60px 20px;background:var(--dark-card);border:1px dashed var(--dark-border);border-radius:var(--radius-lg)}
.llc-dash-empty svg{color:var(--text-dim);opacity:.4;margin-bottom:14px}
.llc-dash-empty p{font-size:15px;color:var(--text-mid);margin-bottom:20px}

.llc-btn-sm{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;background:rgba(46,109,164,0.15);border:1px solid var(--dark-border);color:var(--blue-bright);border-radius:50px;font-size:12px;font-weight:700;text-decoration:none;transition:all .2s var(--ease)}
.llc-btn-sm:hover{background:var(--blue-mid);color:#fff;border-color:var(--blue-mid)}

/* Edit account */
.llc-edit-account-wrap{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:var(--radius-lg);padding:28px}
.llc-edit-photo-row{display:flex;align-items:center;gap:20px;padding:18px;background:var(--dark-bg);border:1.5px dashed var(--dark-border);border-radius:var(--radius);margin-bottom:24px}
.llc-edit-avatar-preview{width:72px;height:72px;border-radius:50%;overflow:hidden;border:3px solid var(--dark-border);flex-shrink:0}
.llc-edit-avatar-preview img{width:100%;height:100%;object-fit:cover}
.llc-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.llc-edit-form .llc-form-field input[type=text],
.llc-edit-form .llc-form-field input[type=email],
.llc-edit-form .llc-form-field input[type=url],
.llc-edit-form .llc-form-field textarea{width:100%;padding:12px 16px;background:var(--dark-bg);border:1.5px solid var(--dark-b2);border-radius:var(--radius-sm);font-family:var(--font-b);font-size:14px;color:var(--text);transition:all .2s var(--ease);outline:none}
.llc-edit-form .llc-form-field input:focus,
.llc-edit-form .llc-form-field textarea:focus{border-color:var(--blue-mid);box-shadow:0 0 0 3px var(--blue-glow)}
.llc-edit-form .llc-form-field input::placeholder,
.llc-edit-form .llc-form-field textarea::placeholder{color:var(--text-dim)}
.llc-edit-form .llc-form-field label{font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;display:block}

/* Auth required */
.llc-auth-required{text-align:center;padding:60px 20px;background:var(--dark-card);border:1px solid var(--dark-b2);border-radius:var(--radius-lg)}
.llc-auth-required svg{color:var(--blue-mid);margin-bottom:14px;opacity:.6}
.llc-auth-required p{font-size:15px;color:var(--text-mid);margin-bottom:20px}

/* Register form wider on desktop */
.llc-auth-wrap-wide{max-width:620px}
.llc-submit-form .llc-form-field input[type=text],
.llc-submit-form .llc-form-field input[type=email],
.llc-submit-form .llc-form-field select,
.llc-submit-form .llc-form-field textarea{width:100%;padding:12px 16px;background:var(--dark-bg);border:1.5px solid var(--dark-b2);border-radius:var(--radius-sm);font-family:var(--font-b);font-size:14px;color:var(--text);transition:all .2s var(--ease);outline:none;appearance:none}
.llc-submit-form .llc-form-field input:focus,
.llc-submit-form .llc-form-field select:focus,
.llc-submit-form .llc-form-field textarea:focus{border-color:var(--blue-mid);box-shadow:0 0 0 3px var(--blue-glow)}
.llc-submit-form .llc-form-field label{font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;display:block}
.llc-submit-form .llc-form-field select option{background:var(--dark-card-2);color:var(--text)}
.req{color:#ef4444;margin-left:2px}

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE DASHBOARD + FORM MOBILE FIXES
   ══════════════════════════════════════════════════════════════ */
@media(max-width:768px){
  /* Dashboard */
  .llc-dashboard{padding:16px 12px 60px}
  .llc-dash-header{padding:16px;flex-direction:column;align-items:flex-start}
  .llc-dash-actions{width:100%}
  .llc-dash-actions .llc-btn-primary,.llc-dash-actions .llc-btn-outline{flex:1;justify-content:center;font-size:13px;padding:11px 16px}
  .llc-dash-stats{grid-template-columns:1fr 1fr;gap:10px}
  .llc-dash-stat{padding:14px 10px}
  .llc-dash-stat-num{font-size:26px}
  .llc-dash-tabs{gap:2px;padding:4px}
  .llc-dash-tab{padding:8px 12px;font-size:12px}
  .llc-dash-item{flex-direction:column;align-items:flex-start}
  .llc-dash-item-right{width:100%;justify-content:space-between}
  .llc-edit-grid{grid-template-columns:1fr}
  .llc-edit-account-wrap{padding:16px}

  /* Auth forms — supprime les marges latérales */
  .llc-auth-wrap,.llc-auth-wrap-wide{
    max-width:100%;
    padding:0;
    margin:16px 0 40px;
  }
  .llc-auth-box{
    padding:20px 16px;
    border-radius:var(--radius);
  }
  .llc-form-grid{grid-template-columns:1fr}
  .llc-field-full{grid-column:1}
  .llc-role-cards{grid-template-columns:1fr}
  .llc-form-row{flex-direction:column;align-items:flex-start;gap:8px}
  .llc-submit-form .llc-form-grid{grid-template-columns:1fr}
  .llc-submit-form .llc-field-full{grid-column:1}
  .llc-auth-title{font-size:22px}
  .llc-photo-upload{padding:14px;gap:14px}
  .llc-nav-username{display:none}
}

@media(max-width:480px){
  .llc-auth-box{padding:16px 12px;border-radius:10px}
  .llc-auth-icon{width:52px;height:52px}
  .llc-auth-title{font-size:20px}
  .llc-dash-stats{grid-template-columns:1fr 1fr}
}

/* Fix titres magazine sur fond clair */
.llc-mag-content h2{color:#1B3A5C!important;font-size:26px!important}
.llc-mag-content h3{color:#2E6DA4!important;font-size:21px!important}
.llc-mag-content h4{color:#1B3A5C!important}
.llc-mag-single-title{color:#1B3A5C!important}
.llc-mag-theme-text{color:#1B3A5C!important}
.llc-mag-content img,.llc-mag-cover-full img{box-shadow:none!important}

/* ══════════════════════════════════════════════════════════════
   LELEVATOR CONNECT v6 — Nouveaux styles
   ══════════════════════════════════════════════════════════════ */

/* ── Avatar circulaire dans les cards ─────────────────────── */
.llc-card-avatar-circle {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 2.5px solid rgba(46,109,164,0.3) !important;
  flex-shrink: 0 !important;
  display: block !important;
}

/* ── Load More Button ──────────────────────────────────────── */
.llc-load-more-wrap {
  display: flex;
  justify-content: center;
  margin: 32px 0 20px;
}

.llc-load-more-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 32px;
  background: var(--dark-card);
  border: 1.5px solid var(--dark-border);
  border-radius: 50px;
  font-family: var(--font-b);
  font-size: 15px;
  font-weight: 700;
  color: var(--blue-bright);
  text-decoration: none !important;
  transition: var(--transition);
}
.llc-load-more-btn:hover {
  background: var(--blue-mid);
  border-color: var(--blue-mid);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px var(--blue-glow);
}

/* ── Section Homepage ──────────────────────────────────────── */
.llc-home-section {
  padding: 20px 0 40px !important;
}

/* ══════════════════════════════════════════════════════════════
   SINGLE PAGE — Layout Desktop (sidebar + main)
   ══════════════════════════════════════════════════════════════ */
.llc-single-wide {
  max-width: 1100px !important;
  padding: 48px 32px 80px !important;
}

.llc-single-layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 40px;
  align-items: start;
  margin-top: 8px;
}

.llc-single-main {
  min-width: 0;
}

/* Profile hero avec grande photo */
.llc-profile-hero {
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 16px 0 24px;
  flex-wrap: wrap;
}
.llc-profile-hero-photo {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid rgba(46,109,164,0.3);
  flex-shrink: 0;
}

/* Meta author row */
.llc-meta-author {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}
.llc-meta-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(46,109,164,0.3);
  flex-shrink: 0;
}
.llc-meta-name {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
}
.llc-meta-date {
  display: block;
  font-size: 12px;
  color: var(--text-dim);
  margin-top: 2px;
}

/* ── Sidebar ───────────────────────────────────────────────── */
.llc-single-sidebar {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: sticky;
  top: 100px;
}

.llc-sidebar-box {
  background: var(--dark-card);
  border: 1px solid var(--dark-border);
  border-radius: var(--radius-lg);
  padding: 20px;
}

.llc-sidebar-title {
  font-family: var(--font-d);
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--dark-b2);
}

.llc-sidebar-item {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 10px 0;
  border-bottom: 1px solid var(--dark-b2);
}
.llc-sidebar-item:last-child { border-bottom: none; }

.llc-sidebar-label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--text-dim);
}
.llc-sidebar-label svg { color: var(--blue-mid); }

.llc-sidebar-value {
  font-size: 14px;
  font-weight: 600;
  color: var(--text);
  padding-left: 20px;
}

/* ── Contact Box ───────────────────────────────────────────── */
.llc-contact-box {
  border-color: rgba(46,109,164,0.3) !important;
  background: linear-gradient(135deg, rgba(46,109,164,0.08), rgba(15,22,35,0.5)) !important;
}

.llc-contact-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: var(--radius-sm);
  font-size: 14px;
  font-weight: 600;
  color: var(--blue-bright) !important;
  text-decoration: none !important;
  background: rgba(46,109,164,0.08);
  border: 1px solid rgba(46,109,164,0.15);
  margin-bottom: 8px;
  transition: var(--transition);
  word-break: break-all;
}
.llc-contact-item:last-child { margin-bottom: 0; }
.llc-contact-item:hover {
  background: rgba(46,109,164,0.2);
  border-color: var(--blue-mid);
  color: #fff !important;
}
.llc-contact-item svg { color: var(--blue-mid); flex-shrink: 0; }

/* ── PDF Viewer ────────────────────────────────────────────── */
.llc-pdf-viewer-section {
  margin-top: 40px;
}

.llc-pdf-actions {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.llc-pdf-embed {
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: var(--dark-card);
  border: 1px solid var(--dark-border);
}

.llc-pdf-embed iframe {
  display: block;
  width: 100%;
  border: none !important;
  border-radius: 0 !important;
}

/* Fix titres magazine lisibles */
.llc-mag-content h2 { color: #1B3A5C !important; font-size: 26px !important; }
.llc-mag-content h3 { color: #2E6DA4 !important; font-size: 21px !important; }
.llc-mag-content h4 { color: #1B3A5C !important; }
.llc-mag-single-title { color: #1B3A5C !important; }
.llc-mag-theme-text { color: #1B3A5C !important; }
.llc-mag-content img, .llc-mag-cover-full img { box-shadow: none !important; }
.llc-mag-content, .llc-mag-content p { color: #334155 !important; }

/* Fix textes single project/profile lisibles */
.llc-single-title { color: #1B3A5C !important; }
.llc-single-body, .llc-single-body p { color: #334155 !important; }
.llc-section-title { color: #1B3A5C !important; }
.llc-meta-name { color: #1B3A5C !important; }

/* Sidebar sur fond clair */
.llc-sidebar-box { background: #F8FAFC !important; border-color: #E2E8F0 !important; }
.llc-sidebar-title { color: #1B3A5C !important; border-color: #E2E8F0 !important; }
.llc-sidebar-label { color: #64748b !important; }
.llc-sidebar-value { color: #1B3A5C !important; }
.llc-sidebar-item { border-color: #E2E8F0 !important; }

/* Contact sur fond clair */
.llc-contact-box { background: #EBF3FB !important; border-color: rgba(27,58,92,0.2) !important; }
.llc-contact-item { background: #fff !important; border-color: rgba(27,58,92,0.15) !important; color: #1B3A5C !important; }
.llc-contact-item:hover { background: #1B3A5C !important; color: #fff !important; }

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE SINGLE PAGES
   ══════════════════════════════════════════════════════════════ */
@media(max-width: 900px) {
  .llc-single-layout {
    grid-template-columns: 1fr !important;
  }
  .llc-single-sidebar {
    position: static !important;
    order: -1;
  }
  .llc-single-wide {
    padding: 24px 16px 60px !important;
  }
}

@media(max-width: 768px) {
  .llc-load-more-btn {
    padding: 12px 24px !important;
    font-size: 14px !important;
  }
  .llc-pdf-actions {
    flex-direction: column;
  }
  .llc-pdf-actions .llc-btn-primary,
  .llc-pdf-actions .llc-btn-outline {
    width: 100%;
    justify-content: center;
  }
  .llc-profile-hero { gap: 14px; }
  .llc-profile-hero-photo { width: 64px !important; height: 64px !important; }
}

/* ══════════════════════════════════════════════════════════════
   v7 — Nouvelles fonctionnalités
   ══════════════════════════════════════════════════════════════ */

/* Load More */
.llc-load-more-wrap{display:flex;justify-content:center;margin:32px 0 20px}
.llc-load-more-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;background:var(--dark-card);border:1.5px solid var(--dark-border);border-radius:50px;font-family:var(--font-b);font-size:15px;font-weight:700;color:var(--blue-bright);text-decoration:none!important;transition:var(--transition)}
.llc-load-more-btn:hover{background:var(--blue-mid);border-color:var(--blue-mid);color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px var(--blue-glow)}
.llc-home-section{padding:20px 0 40px!important}

/* Avatar circulaire cards */
.llc-card-avatar-circle{width:44px!important;height:44px!important;border-radius:50%!important;object-fit:cover!important;border:2.5px solid rgba(46,109,164,.3)!important;flex-shrink:0!important;display:block!important}

/* Bio trigger */
.llc-bio-btn{display:inline-flex;align-items:center;margin-top:4px;font-size:11px;font-weight:700;color:var(--blue-bright);background:rgba(46,109,164,.12);border:1px solid rgba(46,109,164,.2);padding:2px 8px;border-radius:20px;cursor:pointer;transition:all .2s}
.llc-bio-btn:hover{background:var(--blue-mid);color:#fff}

/* Message compléter profil */
.llc-dash-complete-msg{display:inline-flex;align-items:center;gap:7px;background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3);color:var(--gold);padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600;margin-top:8px}
.llc-dash-complete-msg svg{flex-shrink:0}

/* Stats titre dashboard */
.llc-dash-stats-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);margin-bottom:12px}

/* Alerte pending admin */
.llc-dash-pending-alert{display:flex;align-items:center;gap:10px;background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.25);color:var(--gold);padding:12px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;margin:12px 0 20px}
.llc-dash-pending-alert svg{flex-shrink:0}
.llc-dash-pending-alert a{color:var(--gold);font-weight:700;text-decoration:underline}

/* Email hint */
.llc-field-hint{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-dim);margin-top:5px}
.llc-field-hint svg{color:var(--gold);flex-shrink:0}

/* Corrections couleurs fond clair */
.llc-dash-stats-title{color:#64748b!important}
.llc-mag-content h2{color:#1B3A5C!important;font-size:26px!important}
.llc-mag-content h3{color:#2E6DA4!important;font-size:21px!important}
.llc-mag-content h4{color:#1B3A5C!important}
.llc-mag-single-title,.llc-mag-theme-text{color:#1B3A5C!important}
.llc-mag-content,.llc-mag-content p{color:#334155!important}
.llc-mag-content img,.llc-mag-cover-full img{box-shadow:none!important}
.llc-single-title{color:#1B3A5C!important}
.llc-single-body,.llc-single-body p{color:#334155!important}
.llc-section-title{color:#1B3A5C!important}
.llc-meta-name{color:#1B3A5C!important}
.llc-sidebar-box{background:#F8FAFC!important;border-color:#E2E8F0!important}
.llc-sidebar-title{color:#1B3A5C!important;border-color:#E2E8F0!important}
.llc-sidebar-label{color:#64748b!important}
.llc-sidebar-value{color:#1B3A5C!important}
.llc-contact-box{background:#EBF3FB!important;border-color:rgba(27,58,92,.2)!important}
.llc-contact-item{background:#fff!important;border-color:rgba(27,58,92,.15)!important;color:#1B3A5C!important}
.llc-contact-item:hover{background:#1B3A5C!important;color:#fff!important}
.llc-dash-section-title{color:#1B3A5C!important}
.llc-card-title,.llc-card-title a,.llc-card-desc{color:#ffffff!important}
.llc-mag-card,.llc-mag-card *,.llc-mag-cta,.llc-mag-title,.llc-mag-date,.llc-dash-tab,.llc-dashboard a,.llc-card-link,.llc-btn-banner,.llc-btn-banner-outline{text-decoration:none!important}

/* ══════════════════════════════════════════════════════════════
   v9 — Magazine couleurs logo + Animations cards
   Logo : Teal #3D7A8A | Orange #E8612A
   ══════════════════════════════════════════════════════════════ */

:root {
  --mag-teal:      #3D7A8A;
  --mag-teal-dark: #2C5F6E;
  --mag-teal-light:#EBF4F6;
  --mag-orange:    #E8612A;
  --mag-orange-dk: #C44E1F;
  --mag-orange-lt: #FDF0EB;
}

/* ── Onglet Magazine dans les tabs dashboard ─────────────────── */
.llc-dash-tab[href*="magazine"],
.llc-dash-tab.llc-tab-magazine {
  color: var(--mag-teal) !important;
  border-bottom: 2px solid var(--mag-teal) !important;
}
.llc-dash-tab[href*="magazine"].active {
  background: var(--mag-teal) !important;
  color: #fff !important;
  border-bottom: none !important;
}

/* ── Magazine page intro section ────────────────────────────── */
.llc-magazine-intro {
  background: linear-gradient(135deg, var(--mag-teal-dark) 0%, var(--mag-teal) 100%) !important;
  border-color: var(--mag-teal) !important;
}
.llc-magazine-intro-icon {
  background: rgba(255,255,255,0.15) !important;
  border-color: rgba(255,255,255,0.2) !important;
  color: #fff !important;
}
.llc-magazine-intro-title { color: #fff !important; }
.llc-magazine-intro-text  { color: rgba(255,255,255,0.85) !important; }

/* ── Magazine cards ──────────────────────────────────────────── */
.llc-mag-card {
  border-color: rgba(61,122,138,0.2) !important;
}
.llc-mag-card:hover {
  border-color: var(--mag-teal) !important;
  box-shadow: 0 8px 40px rgba(61,122,138,0.2) !important;
}
.llc-mag-card::after {
  background: linear-gradient(90deg, var(--mag-teal), var(--mag-orange)) !important;
}
.llc-mag-numero {
  background: var(--mag-teal) !important;
  color: #fff !important;
}
.llc-mag-date svg { color: var(--mag-teal) !important; }
.llc-mag-date { color: var(--mag-teal) !important; font-weight: 700 !important; }
.llc-mag-title { color: #1a2332 !important; }
.llc-mag-theme { color: #64748b !important; }
.llc-mag-cta {
  color: var(--mag-orange) !important;
  font-weight: 700 !important;
}
.llc-mag-card:hover .llc-mag-cta { color: var(--mag-teal) !important; }
.llc-mag-info { background: #fff; }
.llc-mag-card { background: #fff !important; }
.llc-mag-cover-placeholder {
  background: linear-gradient(135deg, var(--mag-teal-dark), var(--mag-teal)) !important;
}

/* ── Single Magazine ────────────────────────────────────────── */
.llc-mag-back {
  color: var(--mag-teal) !important;
  border-color: rgba(61,122,138,0.3) !important;
  background: var(--mag-teal-light) !important;
}
.llc-mag-back:hover {
  background: var(--mag-teal) !important;
  color: #fff !important;
}
.llc-mag-single-title { color: var(--mag-teal-dark) !important; }
.llc-mag-theme-block {
  border-left-color: var(--mag-orange) !important;
  background: linear-gradient(135deg, var(--mag-teal-light), #fff) !important;
}
.llc-mag-theme-label { color: var(--mag-orange) !important; }
.llc-mag-theme-text  { color: var(--mag-teal-dark) !important; }
.llc-mag-date-badge {
  color: var(--mag-teal) !important;
  border-color: rgba(61,122,138,0.2) !important;
  background: var(--mag-teal-light) !important;
}
.llc-mag-date-badge svg { color: var(--mag-teal) !important; }
.llc-mag-content h2 { color: var(--mag-teal-dark) !important; }
.llc-mag-content h3 { color: var(--mag-teal) !important; }
.llc-mag-content h4 { color: var(--mag-teal-dark) !important; }
.llc-mag-content blockquote {
  border-left-color: var(--mag-orange) !important;
  background: var(--mag-teal-light) !important;
}
.llc-mag-content a { color: var(--mag-orange) !important; }
.llc-mag-content a:hover { color: var(--mag-teal) !important; }
.llc-pdf-viewer-section .llc-section-title {
  color: var(--mag-teal-dark) !important;
}
.llc-pdf-viewer-section .llc-btn-primary {
  background: var(--mag-teal) !important;
  box-shadow: 0 4px 20px rgba(61,122,138,0.3) !important;
}
.llc-pdf-viewer-section .llc-btn-primary:hover {
  background: var(--mag-teal-dark) !important;
}
.llc-mag-bottom-nav { border-color: rgba(61,122,138,0.15) !important; }

/* ══════════════════════════════════════════════════════════════
   ANIMATIONS CARDS — Apparition smooth & scroll
   ══════════════════════════════════════════════════════════════ */

/* Keyframe d'entrée */
@keyframes llcFadeUp {
  from {
    opacity: 0;
    transform: translateY(28px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes llcFadeIn {
  from { opacity: 0; transform: scale(0.97); }
  to   { opacity: 1; transform: scale(1); }
}

/* Cards projets & profils — animation au chargement */
.llc-grid .llc-card {
  opacity: 0;
  animation: llcFadeUp 0.6s cubic-bezier(0.22,1,0.36,1) forwards;
}

/* Délai progressif pour effet cascade */
.llc-grid .llc-card:nth-child(1)  { animation-delay: 0.05s; }
.llc-grid .llc-card:nth-child(2)  { animation-delay: 0.12s; }
.llc-grid .llc-card:nth-child(3)  { animation-delay: 0.19s; }
.llc-grid .llc-card:nth-child(4)  { animation-delay: 0.26s; }
.llc-grid .llc-card:nth-child(5)  { animation-delay: 0.33s; }
.llc-grid .llc-card:nth-child(6)  { animation-delay: 0.40s; }
.llc-grid .llc-card:nth-child(7)  { animation-delay: 0.47s; }
.llc-grid .llc-card:nth-child(8)  { animation-delay: 0.54s; }
.llc-grid .llc-card:nth-child(9)  { animation-delay: 0.61s; }
.llc-grid .llc-card:nth-child(10) { animation-delay: 0.68s; }

/* Cards Magazine */
.llc-magazine-grid .llc-mag-card {
  opacity: 0;
  animation: llcFadeUp 0.65s cubic-bezier(0.22,1,0.36,1) forwards;
}
.llc-magazine-grid .llc-mag-card:nth-child(1) { animation-delay: 0.05s; }
.llc-magazine-grid .llc-mag-card:nth-child(2) { animation-delay: 0.15s; }
.llc-magazine-grid .llc-mag-card:nth-child(3) { animation-delay: 0.25s; }
.llc-magazine-grid .llc-mag-card:nth-child(4) { animation-delay: 0.35s; }
.llc-magazine-grid .llc-mag-card:nth-child(5) { animation-delay: 0.45s; }
.llc-magazine-grid .llc-mag-card:nth-child(6) { animation-delay: 0.55s; }

/* Scroll observer — classe ajoutée via JS */
.llc-card.llc-visible,
.llc-mag-card.llc-visible {
  animation: llcFadeUp 0.6s cubic-bezier(0.22,1,0.36,1) forwards !important;
}

/* Stats dashboard */
.llc-dash-stat {
  animation: llcFadeIn 0.5s ease forwards;
}
.llc-dash-stat:nth-child(1) { animation-delay: 0.05s; }
.llc-dash-stat:nth-child(2) { animation-delay: 0.12s; }
.llc-dash-stat:nth-child(3) { animation-delay: 0.19s; }
.llc-dash-stat:nth-child(4) { animation-delay: 0.26s; }

/* ── Magazine v9 — Orange sur tous les éléments clés ────────── */

/* Grand titre au-dessus du thème */
.llc-mag-single-title {
  color: var(--mag-orange) !important;
}

/* Bande thème — fond orange */
.llc-mag-theme-block {
  background: var(--mag-orange) !important;
  border-left-color: var(--mag-orange-dk) !important;
}
.llc-mag-theme-label {
  color: rgba(255,255,255,0.8) !important;
}
.llc-mag-theme-text {
  color: #fff !important;
}

/* Bouton Retour — fond orange */
.llc-mag-back {
  background: var(--mag-orange) !important;
  color: #fff !important;
  border-color: var(--mag-orange-dk) !important;
}
.llc-mag-back:hover {
  background: var(--mag-orange-dk) !important;
  color: #fff !important;
}
.llc-mag-back svg { stroke: #fff !important; }

/* Badge Numéro — fond orange */
.llc-mag-numero {
  background: var(--mag-orange) !important;
  color: #fff !important;
}

/* Badge Date — fond orange */
.llc-mag-date-badge {
  background: var(--mag-orange) !important;
  color: #fff !important;
  border-color: var(--mag-orange-dk) !important;
}
.llc-mag-date-badge svg { stroke: #fff !important; }

/* ── v11 — Bouton Voir le profil ──────────────────────────── */
.llc-voir-bio-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 18px;
  background: rgba(46,109,164,0.12);
  border: 1.5px solid rgba(46,109,164,0.3);
  border-radius: 50px;
  font-family: var(--font-b);
  font-size: 13px;
  font-weight: 700;
  color: #2E6DA4;
  cursor: pointer;
  transition: all .2s ease;
  margin-top: 8px;
}
.llc-voir-bio-btn:hover {
  background: #2E6DA4;
  color: #fff;
  border-color: #2E6DA4;
  transform: translateY(-1px);
}
.llc-voir-bio-btn svg { flex-shrink: 0; }

/* ══ v12 — FIX FINAL Magazine bande orange ══════════════════ */
.llc-mag-theme-block {
  background: #E8612A !important;
  border-left: 4px solid #C44E1F !important;
  border-radius: 12px !important;
  padding: 20px 24px !important;
  box-shadow: 0 4px 20px rgba(232,97,42,0.25) !important;
}
.llc-mag-theme-block .llc-mag-theme-label,
.llc-mag-theme-label {
  color: rgba(255,255,255,0.85) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  display: block !important;
  margin-bottom: 8px !important;
}
.llc-mag-theme-block .llc-mag-theme-text,
.llc-mag-theme-text {
  color: #ffffff !important;
  font-family: Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin: 0 !important;
}

/* Bouton Voir le profil visible */
.llc-voir-bio-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 8px 18px !important;
  background: rgba(46,109,164,0.12) !important;
  border: 1.5px solid rgba(46,109,164,0.3) !important;
  border-radius: 50px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #2E6DA4 !important;
  cursor: pointer !important;
  transition: all .2s ease !important;
  margin-top: 8px !important;
}
.llc-voir-bio-btn:hover {
  background: #2E6DA4 !important;
  color: #fff !important;
  border-color: #2E6DA4 !important;
}

/* Popup - forcer le display */
#llc-bio-popup {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
}
#llc-bio-popup[style*="display:flex"],
#llc-bio-popup.llc-show {
  display: flex !important;
}

@media (max-width: 768px) {
    .llc-nav-account-item {
        margin-bottom: 24px !important;
    }
}

/* ── Magazine vidéo YouTube ── */
.llc-yt-section { margin: 40px 0; }
.llc-yt-frame {
    position: relative;
    padding-bottom: 56.25%; /* ratio 16:9 */
    height: 0;
    overflow: hidden;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0,0,0,.15);
}
.llc-yt-frame iframe {
    position: absolute;
    top: 0; left: 0;
    width: 100% !important;
    height: 100% !important;
    border-radius: 16px;
}